Skip to content

イベント一覧

ライブラリが発火するイベントの一覧です。パケット自体もイベントとして受信できますが、ここでは プロトコルパケット以外の特殊イベント をまとめます。

パケットイベントについて

パケットは「パケット名から packet_ プレフィックスを除いて小文字化した名前」のイベントで受信できます(例: packet_text'text')。全パケットを網羅的に受け取りたい場合は 'packet' イベントを使います。

Client(クライアント)

js
const client = bedrock.createClient({ /* ... */ })
client.on('join', () => { /* ... */ })
イベント発火タイミング
connect_allowedサーバーへ ping し、バージョン情報を取得した後
statusログインシーケンスの状態が変化したとき
session認証と接続が完了したとき
join認証後、ゲームパケットの受信準備ができたとき
spawnワールドへの出現が完了したとき
kickサーバーからキックされたとき
close接続が閉じたとき
error回復可能な例外が発生したとき。捕捉しない場合はスローされる
heartbeattick_sync(keepalive)が双方向に成功した後
packetすべての受信パケットに対して発火

発火順序の目安: connect_allowed → status/session → join → spawn

Server(サーバー)

js
const server = bedrock.createServer({ /* ... */ })
server.on('connect', player => { /* ... */ })
イベント発火タイミング
connectクライアントが接続を開始し、ハンドシェイク中になったとき。引数は Player インスタンス
errorクライアントに関する捕捉可能な例外(例: 不正な暗号化パケット)

Player(サーバー上のプレイヤー)

イベント発火タイミング
loginID・クライアントデータの検証後。引数 { user, authentication }。オフライン接続は必ず authentication.authenticated === false(XUID は 0 に正規化)
joinハンドシェイク / 暗号化成功後、ゲームパケットを受け取れる状態になったとき
spawnクライアントからスポーン完了の通知後
closeクライアントが退出したとき
packetすべての受信パケットに対して発火

Relay

Relay ガイド のとおり、Server / Player のイベントに加えて以下を持ちます。

イベント発火タイミング
clientbound宛先サーバーからクライアントへ向かうパケットが通過したとき。(packet, des) を受け取る
serverboundクライアントから宛先サーバーへ向かうパケットが通過したとき。(packet, des) を受け取る

ハンドラ内で des.canceled = true を設定すると、そのパケットの転送がキャンセルされます。