メインコンテンツまでスキップ

FakeBlock

パケットベースの偽ブロックとクライアント側のスケマティック。

プライベートv0.1.0ワールドと建築
必要TypeWriter0.9.0-beta-177 (BTC build)PacketEventsBTC Sky任意Dungeon任意

BornToCraft ネットワーク向けに作られた拡張機能です。参照用にドキュメント化されており、配布されていません。

概要​

FakeBlock は、選択したプレイヤーにだけ、Sponge スキマティック(.schem)を表示します。ブロックはパケットで送信され、実際のワールドが変更されることはないため、同じ場所に立つ 2 人のプレイヤーが、それぞれ別の建築物を見ることができます。スキマティックは、TypeWriter のオーディエンス(クエストのステップ、手に持ったアイテム、リージョン)に追従させたり、シネマティックとして再生したり、プレイヤーが「ストレージブロック」アイテムで設置したりできます。

ブロックは、クライアント側で破壊可能にできます。破壊はサーバーが検証し、ルートをドロップさせたり、アイテムのホワイトリストやブラックリストで制限したりでき、プレイヤーごとにアーティファクトへ保存されるため、再接続後も建築物は壊れたままになります。

機能​

  • プレイヤーごとの建築物 — オーディエンス、シネマティックの視聴者、または設置したプレイヤーに、スキマティックを表示します。
  • 3 種類のアンカー — ワールド内の固定位置、ディメンション内のすべての BTC Sky アイランドで共通のオフセット、または Dungeon インスタンス内の位置。
  • 段階的な設置 — ブロックが LINEAR、HELICAL、RANDOM の順で、設定可能な速度で、またはただちに現れます。
  • 表示距離とフェード距離 — 一定の距離を超えると建築物を非表示にし、段階的にフェードアウトさせます。
  • クライアント側での破壊 — サーバーが検証する破壊。任意のルート、ホワイトリスト、ブラックリストに対応します。
  • 永続的な状態 — 破壊されたブロックと設置されたインスタンスは、プレイヤーごとまたはグループごとに、アーティファクトに保存されます。
  • ストレージブロック — 設置すると、使い切りまたは回収可能なスキマティックとして展開されるアイテムを、プレイヤーに渡します。

インストール​

  1. サーバーに PacketEvents をインストールします。
  2. FakeBlock の JAR を plugins/Typewriter/extensions/ に配置し、サーバーを再起動します。
  3. .schem ファイルを plugins/Typewriter/schematics/ にコピーします。新しいファイルを追加した後は、/fakeblock reload を実行してください。

はじめに​

クエストのステップに到達したプレイヤーに、崩れた橋を表示します。

  1. TypeWriter の Web パネルでマニフェストページを開き、Schematic Audience エントリーを追加します。
  2. schematic にファイル名(たとえば bridge_ruined.schem)を、centerLocation に貼り付けの原点を設定します。
  3. クエストのステップに一致するオーディエンスフィルター(たとえばファクトやクエストのオーディエンス)で包み、該当するプレイヤーにだけ見えるようにします。
  4. プレイヤーが瓦礫を撤去できるようにするには、breakable を有効にし、必要に応じて dropLoot を設定し、破壊されたブロックが記憶されるように、stateArtifact に Schematic State アーティファクトをリンクします。
  5. ページを Publish し、オーディエンスに該当するプレイヤーとその場所まで歩いて行きます。
プレイヤーが設置する場合

プレイヤー自身に建築物を設置させるには、Schematic Block アクションを使用します。このアクションは spawnItem を渡し、そのアイテムを設置するとスキマティックが展開されます。singleUse と ownerOnlyRetrieval により、再び拾い上げられるかどうかが決まります。

仕組み​

コマンド​

すべてのコマンドに typewriter.fakeblock.admin が必要です。エイリアス: /fb、/schematicblock。

コマンド説明
/fakeblock list設置されたすべてのスキマティックインスタンスを一覧表示します。
/fakeblock info <instance-id>1 つのインスタンスの詳細を表示します。
/fakeblock undo <instance-id>設置されたインスタンスを削除します。
/fakeblock count [player]プレイヤーに送信されたフェイクブロックの数を数えます。
/fakeblock reset <player> [entry-id]プレイヤーの本物のブロックを復元します。すべてのエントリー、または 1 つのエントリーが対象です。
/fakeblock reloadディスクからスキマティックを再読み込みします。
/fakeblock debugデバッグ情報を出力します。

パーミッション​

パーミッション許可される内容
typewriter.fakeblock.adminすべての /fakeblock コマンド。

エントリー​

5 件のエントリー(拡張機能のソースから生成)。

アクション1
オーディエンス2
シネマティック1
アーティファクト1

トラブルシューティング​

何も表示されない。 schematic のファイル名(.schem 拡張子付き)と、ファイルが plugins/Typewriter/schematics/ にあることを確認してください。/fakeblock reload を実行し、プレイヤーが viewDistance 以内にいて、オーディエンスに該当していることを確かめてください。

建築物が間違った場所に表示される。 positionMode: ISLAND_DIMENSION では、dimensionOffset は、dimensionTemplateId のディメンションのアイランドを基準とします。INSTANCE_DIMENSION では、建築物は、アクティブな Dungeon インスタンス(instanceId で指定したもの、空の場合はいずれかのインスタンス)の内部にのみ表示され、instanceOffset はインスタンスのワールドでの座標を表します。centerLocation を使用するのは CLASSIC のみです。

再起動後に、破壊したブロックが元に戻る。 stateArtifact(オーディエンス)または position(アクション)に、Schematic State アーティファクトをリンクしてください。ないと、破壊はメモリ上にしか保持されません。

プレイヤーが何も破壊できない。 breakable がオンである必要があります。空でない whitelist は、列挙されたアイテムのみを許可し、blacklist が常に優先されます。

関連エクステンション​

  • BTC Sky — ISLAND_DIMENSION による、アイランド基準の配置。
  • Dungeon — INSTANCE_DIMENSION が使用するダンジョンインスタンス。