スラッシュコマンド
スラッシュコマンドは /
から始まる文字列です。
コメント欄にスラッシュコマンドを入力することで様々な機能を実行できます。
送信したスラッシュコマンドやその結果は他のユーザーからは見えません。
スラッシュコマンドはデベロッパーメニューから有効化することができます。
スラッシュコマンド一覧
スラッシュコマンドにはパラメータを指定するものがあります。 コマンドとパラメータの間は半角スペースで区切る必要があります。
一部のコマンドは空間やアイテムの内部データ($.stateなど)を読み書きできます。 このようなコマンドを実行できるのはコンテンツの作者のみです。
ワールドの作者は基本的には空間内の全アイテムにアクセスできます。
しかし、ワールド内に存在する作者の異なるクラフトアイテムの内部にはアクセスできません。
全員が使えるコマンド
/help
- スラッシュコマンドの一覧を表示します。
ワールドの作者のみが実行できるコマンド
/getmyposition
- 自身の現在座標を表示します。
- 省略形:
/getmypos
/item destroy itemID
- itemID で表されるアイテムを削除します。ワールド設置アイテムは削除できません。
/item owner itemID
- itemID で表されるアイテムの現在のオーナーのユーザーIDをコンソールに表示します。
/items
- 空間内のScriptable Item コンポーネントを持つアイテムのID一覧をコンソールに表示します。 表示されるIDはItemHandle.idで取得できるものと同等です。
/respawn
- 自身をリスポーンさせます。
/users
- 空間内のユーザーのID一覧をコンソールに表示します。 表示されるIDはPlayerHandle.idで取得できるものと同等です。
/warp x y z
- 自身を(x y z)で指定する座標にワープさせます。
アイテムの作者のみが実行できるコマンド
/item state itemID
- itemID で表されるアイテムのステートに設定されている一覧をコンソールに表示します。
/item state itemID key
- itemID で表されるアイテムのステートに設定されている、
key
で取得できる値をコンソールに表示します。
- itemID で表されるアイテムのステートに設定されている、
/item state itemID key type value
- itemID で表されるアイテムのステートに、プロパティ名がkeyで型がtypeの値valueを書き込みます。
typeには各Sendable型に対応する以下の文字列、およびnullのいずれかを指定できます。
- number: 数値に対応します
- string: 文字列に対応します
- bool: booleanに対応します
- vec2: Vector2に対応します
- vec3: Vector3に対応します
- quaternion: Quaternionに対応します
- playerHandle: PlayerHandleに対応します
- itemHandle: ItemHandleに対応します
- array: 配列に対応します
- object: objectに対応します
- itemID で表されるアイテムのステートに、プロパティ名がkeyで型がtypeの値valueを書き込みます。
typeには各Sendable型に対応する以下の文字列、およびnullのいずれかを指定できます。
valueの文法
/item
コマンドなどで指定するvalueの文法の生成規則は以下の通りです。
<value>
-><null>
|<number>
|<bool>
|<string>
|<vec2>
|<vec3>
|<quaternion>
|<itemHandle>
|<playerHandle>
|<array>
|<object>
<null>
-> null<number>
-> 数値 | NaN | Infinity | -Infinity<bool>
-> true | false<string>
-> “<string_element>
”<string_element>
-> 文字列
<vec2>
-> (<number>
<number>
)<vec3>
-> (<number>
<number>
<number>
)<quaternion>
-> (<number>
<number>
<number>
<number>
)<itemHandle>
-> item-<itemId>
<itemId>
-> ItemHandle.idで取得できるものと同等の文字列
<playerHandle>
-> player-<playerId>
<playerId>
-> PlayerHandle.idで取得できるものと同等の文字列
<array>
-> [<array_element>
]<array_element>
-> ε |<value>
|<value>
<array_element>
<object>
-> {<object_element>
}<object_element>
-> ε |<object_key>
:<value>
|<object_key>
:<value>
<object_element>
<object_key>
-> 空白を含まない文字列
記述例
{targetPlayer:player-a0a-b1b-c2c-d3d-e4e playerName:"player01" position:(1.5 0 -2.5) equipments:[item-12345 item-67890]}
以下の4つのプロパティを持つオブジェクトです。
- key:
targetPlayer
, value: IDがa0a-b1b-c2c-d3d-e4e
であるプレイヤーのPlayerHandle - key:
playerName
, value:player01
という文字列 - key:
position
, value:(1.5, 0, -2.5)
のVector3 - key:
equipments
, value: 要素が「IDが12345
であるアイテムのItemHandle, IDが67890
であるアイテムのItemHandle」の2つである配列