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

ワームホールの作成

webapp_banner.jpg

ワームホールとは?​

ワームホールは、ポータルからポータルへの非常に効率的なテレポートシステムの一種です。ポータルは視覚エフェクトでマークされています。

ワームホールの仕組み

ワームホールは次のことができます:

  • 一方のポータルを通って目的地のポータルに到達し、目的地のポータルから最初のポータルへ戻る。
  • プレイヤーが通り抜けるときにサウンドを再生する
  • 遷移をスムーズにするため、通り抜ける間プレイヤーを一時的に盲目にする
  • ループを防ぐため、5 秒を超える時間が経過し、かつ到着先ポータルから 1.5 × sizeMultiplier + 2 ブロックより遠くに離れるまで、次のテレポートを禁止する
  • プレイヤーがテレポートするときに飛行モードを自動的に無効化する
  • 手の込んだ視覚エフェクトを再生する
  • ワームホールの使用にパーミッションを要求する
  • ワームホールの使用に通貨の使用を要求する
  • 目的地のポータルが利用できないときにプレイヤーと管理者に通知する

プレイヤーがワームホールと照合されるのは 5 ティック(0.25 秒)ごと、かつワームホールから 30 ブロック以内にいる間だけです。

ワールドを変更すると到着先のポータルの範囲から離れたものとして扱われるため、ワールド変更後に残る条件は 5 秒の待ち時間だけです。再接続するとクールダウンは解除されます。

ワームホールを作る

設定ファイルを plugins/EliteMobs/wormholes に追加します。plugins/EliteMobs/wormholes/dungeonName/dungeonName_identifier.yml のようなサブフォルダも使えます。

ゲーム内でワームホールを設置する​

座標を手書きする代わりに、ポータルを置きたい場所に立って次を実行できます。

/em place wormhole <filename> <1/2>

1 は location1 を、2 は location2 を設定します。このコマンドには elitemobs.place.admin 権限が必要でプレイヤーが実行する必要があり、新しい座標をワームホールの設定ファイルへ直接書き込みます。ポータルは立っていた位置の 1 ブロック(× sizeMultiplier)上にアンカーされるため、そこから到着したプレイヤーは立っていたブロックの上に降ります。

到着時の向き​

location1 および location2 の Yaw と Pitch(座標の最後の 2 つの数字)は、そのワームホールの側に到着したときにプレイヤーが向く方向を設定します。次の例を見てみましょう:

location1: my_world,20,10,20,180,20

Yaw が 180 に設定されているとプレイヤーは北を向いて到着します。Pitch は Minecraft の慣例に従い、正の値が下、負の値が上を向くため、Pitch 20 はプレイヤーがわずかに下を向いて到着することを意味します。

なお、ワームホールがプレイヤーをどこかへ押し出すことはありません。到着位置は単純に反対側の座標であり、その yaw と pitch も含まれます。

ワームホール設定​

以下は有効なワームホール設定の例です:

isEnabled: true
location1: em_primis,1288.5,19,452.5,135,-23
location2: em_primis,1288.5,-39,451.5,180,-1

isEnabled​

ワームホールが有効かどうかを設定します。

KeyValuesDefault
isEnabledBooleantrue
例
isEnabled: true

location1​

ワームホールの最初の位置を指定します。両方の位置フィールドで world,x,y,z,yaw,pitch、または adventurers_guild_hub.yml のようなダンジョンパッケージのファイル名を使えます。パッケージ参照は、そのパッケージに設定されたテレポート先を使用します。利用前にパッケージをインストールし、ワールドを読み込んでください。テレポート処理は解決された位置とワールドの読み込み状態を確認しますが、パッケージのインストールフラグを別途必須条件にはしていません。新しいダンジョンインスタンスは作成しません。

KeyValuesDefault
location1Stringnone
例
location1: world_one,50,100,50,0,0

location2​

ワームホールの 2 番目の位置を指定します。

KeyValuesDefault
location2Stringnone
例
location2: world_two,100,33,100,0,0

location1Text​

最初の位置の表示テキストを設定します。

KeyValuesDefault
location1TextStringnone
例
location1Text: Awesome Wormhole In World One

create_wormhole_location1text.jpg


location2Text​

2 番目の位置の表示テキストを設定します。

KeyValuesDefault
location2TextStringnone
例
location2Text: Awesome Wormhole In World Two

create_wormhole_location2text.jpg


permission​

両方向の移動に必要な権限を設定します。/em quest bypass を有効にしたプレイヤーはこの権限確認を省略しますが、料金とクールダウンの確認は受けます。

KeyValuesDefault
permissionStringnone
例
permission: elitemobs.mypermission

coinCost​

ワームホールの利用料金を設定します。通常はエリートコインを使い、Vault の経済連携が有効な場合はサーバー通貨を使います。

料金は、権限・クールダウン・移動先のチェックを通過した後にのみ請求され、どちらの方向にも同じ料金が適用されます。支払えないプレイヤーには Wormholes.yml の insufficientCurrencyForWormholeMessage が送られ、テレポートしません。テレポートがキャンセルされた場合や到着しなかった場合、料金は返金されます。

経済プラグインが引き落としや返金を確認できない場合、EliteMobs はプレイヤーに管理者へ連絡するよう伝え、手動で精算できるよう金額をログに記録し、サーバーが再起動するまでそのプレイヤーのすべてのワームホールの利用をブロックします。負の値または有限でない coinCost を指定すると警告がログに出力され、そのワームホールは誰もテレポートさせません。

KeyValuesDefault
coinCostDouble0
例
coinCost: 0

style​

ワームホールの視覚的な形状を設定します。

形状は、ブロックディスプレイで作られた回転するワイヤーフレームとして描画され、その上に 5 ティックごとに少量のパーティクルが加えられます。style を NONE にすると形状自体がスキップされます。

これらの効果は一部のクライアントでラグの原因になります。Wormholes.yml で noParticlesMode: true にすると、ワイヤーフレームとそのパーティクルを無効にできます。ポータルのテキスト、カスタムモデル、独立した Bedrock マーカーは残ります。

KeyValuesDefault
styleNONE / CRYSTAL / ICOSAHEDRON / CUBECUBE
例
style: CRYSTAL

create_wormhole_style.jpg


particleColor​

style 設定で使用されるパーティクルの色を設定します。ワイヤーフレームのブロックは正確な色を使うわけではなく、EliteMobs は設定した色に最も近いコンクリートブロックを選びます。

デフォルトの 0 は黒なので、作成するすべてのワームホールで設定する価値があります。

KeyValuesDefault
particleColor0x に続けて 16 進コード0
例
particleColor: 0x9f5cdd

create_wormhole_particlecolor.jpg


blindPlayer​

テレポート時に 40 ティック、約 2 秒間の盲目効果を適用するかを設定します。

KeyValuesDefault
blindPlayerBooleanfalse
例
blindPlayer: true

create_wormhole_blind.jpg


sizeMultiplier​

style の形状を拡大・縮小し、発動半径を 1.5 × sizeMultiplier ブロックにします。距離には高さも含まれ、別途行われる 30 ブロック以内のプレイヤー検索も発動範囲を制限します。有限の正の数を指定してください。設置時の高さやテキストの高さにも影響しますが、FreeMinecraftModels のモデルサイズは変更しません。

KeyValuesDefault
sizeMultiplierMultiplier1
例
sizeMultiplier: 3

サイズ倍率を適用した後は、ワームホールの Y 座標を調整する必要があることを覚えておいてください。

create_wormhole_size.jpg


customModel1​

最初の位置のワームホール表示に使用するカスタムモデルを設定します。モデル識別子の文字列を使用します。これは location 1 の style で定義された形状を上書きします。

ワームホールのカスタムモデルには FreeMinecraftModels が必要です。モデルが存在しない場合は style のワイヤーフレームを使います。モデルは装飾用で、クリックには反応しません。テレポートは引き続き距離で判定します。

KeyValuesDefault
customModel1Stringnone
例
customModel1: my_custom_wormhole_model

customModel2​

2 番目の位置のワームホール表示に使用するカスタムモデルを設定します。モデル識別子の文字列を使用します。これは location 2 の style で定義された形状を上書きします。customModel1 と同じ FreeMinecraftModels の要件が適用されます。

KeyValuesDefault
customModel2Stringnone
例
customModel2: my_custom_wormhole_model

ワームホール設定の例

この例では、あるワールドから別のワールドへ移動するシンプルなワームホールを作成します。ワームホールは同じワールド内の別の場所へプレイヤーをテレポートさせることもできることを忘れないでください。

isEnabled: true #We enable the worm by setting this value to true
location1: my_world,1.5,11.0,1.5,108.0,5.0 #this is where the wormhole will appear in my_world
location2: my_other_world,766.5,29.0,517.5,-136.0,5.0 #this is where the wormhole will appear in my_other_world
location1Text: "&aGo to My World" #makes a nice display text above wormhole location1
location2Text: "&aGo to My Other World" #makes a nice display text above wormhole location2
permission: eliteperm.coolplayers #only players with this permission will be able to use the wormhole, both for location1 and location2
coinCost: 0 #free to use; a positive value charges elite coins, or Vault currency when Vault is enabled
style: CRYSTAL #this wormhole will be in the shape of a crystal
particleColor: 0x00ff00 #this will set the wormhole particles to green
blindPlayer: true #the wormhole teleport will blind the player for a short duration to make the transition less jarring
sizeMultiplier: 1.0 #sets how big the shape of the wormhole should be

パフォーマンスの問題​

ワームホールの効果は Bedrock クライアントの動作を重くすることがあります。plugins/EliteMobs/Wormholes.yml で設定できます。

  • reducedParticlesMode: true(デフォルト)は、形状に沿って生成する点を減らします。
  • noParticlesMode: false(デフォルト) - true にすると、ワームホールの形状とパーティクルを完全に無効化します

どちらかのオプションが有効で、サーバーの Bedrock カスタムエンティティ連携が利用できる場合、Bedrock プレイヤーには簡単なマーカーも表示できます。色は particleColor、倍率は最低 0.5 です。カスタムモデルを正常に読み込めた場合は、そのモデルがマーカーに代わります。Java プレイヤーには表示されません。

ワイヤーフレームは 30 ブロック以内のプレイヤーからポータルまで視線が通る間だけ更新されます。視線が通らない状態が約 5 秒続くか、近くにプレイヤーがいなくなると消えます。この表示条件は、距離によるテレポートや別途表示されるカスタムモデルには影響しません。