Extractioncraft マッチの流れ
このページでは、マッチが作成された瞬間からインスタンスワールドが削除される瞬間までに実際に何が起きるのかを、タイマー、脱出ルール、プレイヤーが装備を失う仕組みも含めて説明します。
マッチの作成
/exc createMatch <contentPackage.yml> は、パッケージの betterStructuresModulesContainerName をBetterStructuresに渡し、BetterStructuresが真新しいインスタンスワールドを生成します。コマンドはまず、BetterStructures、EliteMobs、FreeMinecraftModelsが読み込まれていること、プレイヤーがすでにマッチに参加していたりマッチを待っていたりしないこと、パッケージとそのモジュールジェネレーターが有効であることを確認します。
ワールドの生成中、プレイヤーはこのマッチ用に確保され、別のマッチに参加したり作成したりすることはできません。生成に15分以上かかった場合、プレイヤーが切断するか /exc leave を実行した場合、または連携プラグインのいずれかが利用できなくなった場合は、生成がキャンセルされ、作りかけのワールドは削除されます。生成が完了すると:
- そのワールド用に
ExtractionMatchが作成され、待機状態で開始します。 - コマンドを実行したプレイヤーがマッチに追加され、次のティックで新しいワールド内のランダムに選ばれたスポーン地点にテレポートされます。スポーン地点のないマップでは、代わりにマッチがキャンセルされます。
マッチに入ったプレイヤーはアドベンチャーモードになります。切り替え前の位置とゲームモードが保存され、退出時に復元されます。プレイヤーはマッチ内でも自分のインベントリをそのまま持ち、別の場所に保管されるものはありません。
キューもマッチメイキングもありません。マッチは誰かが作成したから存在します。
プレイヤーの待機
/exc createMatch は、マッチに入るための唯一の組み込みの方法です。Extractioncraftは join や観戦用のサブコマンドを登録していないため、マッチには通常ちょうど1人 — 作成した本人 — しか存在しません。他のプラグインは開発者APIを通じてプレイヤーや観戦者を受け入れることができ、その場合は以下のルールが適用されます。
マッチが待機中の間:
- パッケージの
maxPlayers(すべてのプリメイドKobold Minesパッケージで8)までのプレイヤーを受け入れ、満員のインスタンスはfailedToJoinOngoingMatchAsPlayerInstanceIsFullで拒否されます。 - マッチがカウントダウン中または進行中になると、他の誰もプレイヤーとして参加できません。遅れて参加しようとしたプレイヤーには
failedToJoinOngoingMatchAsPlayerMessageが表示されます。 - 観戦者は、コンテンツパッケージが
spectatable: trueを設定している場合にのみ受け入れられます。プリメイドのパッケージはすべてfalseのままです。 - 今なら退出は無償です。アイテム消去のルールが適用されるのは、マッチが進行中になってからです。
開始
マッチ内のプレイヤーであれば /exc start を実行できます。
- 参加人数が
minPlayers未満の場合、マッチは開始を拒否し、matchFailedToStartNotEnoughPlayersMessageで全員に通知されます($amountが必要人数に置き換えられます)。 - 条件を満たしている場合は、1秒間隔で
2、1、0と表示されます。3回目の更新、つまり初回から約2秒後にカウントダウンが完了します。 - カウントダウン中にプレイヤー数が
minPlayersを下回ると、マッチは中止されそのまま終了します。 - カウントダウンが始まった後に
/exc startを再度実行しても何も起きません。
カウントダウンが完了すると、マッチが進行中になります。物理的なレッドストーン操作が許可され、マップのインスタンスボスがスポーンし、チェストと樽が配置され、15分のタイマー、縮小するワールドボーダー、コンパスのボスバーが始まります。同時に、装飾用の使用できない脱出ポイントも配置されます。
タイマー
| タイマー | 長さ | 効果 |
|---|---|---|
| マッチタイマー | 15分 | Extractioncraft サイドバースコアボードに Timer MM:SS として表示され、1秒ごとに更新されます。00:00 になるとマッチが終了します。 |
| 脱出ポイントの解禁 | 開始から1分後 | 各脱出ポイントの使用可能なバージョンが、レバー付きで貼り付けられます。 |
| 脱出ウィンドウ | 20秒 | 脱出ポイントのレバーを引くことで開始します。 |
| コンテナを開ける時間 | 3秒 | チェストや樽を略奪するために静止していなければならない時間です。 |
マッチタイマーが 00:00 に達するとマッチは終了し、まだ中にいるプレイヤーは全員、脱出失敗として除外されます。死亡とアイテムの喪失を参照してください。
ワールドボーダー
ボーダーは生成されたマップの中央を中心とし、マップと同じ幅から始まります。BetterStructuresはこの幅をモジュールジェネレーターの値から (2 × radius − 1) × moduleSizeXZ として報告し、プリメイドのKobold Minesマップでは384ブロックになります。ボーダーは1秒に1回、開始時の幅に残り時間の割合を掛けた値に設定されるため、一定のペースで縮小し、15分のタイマーが尽きた時点で1ブロックになります。
ボーダーの警告距離は、その時点のボーダー幅から50を引いた値に設定され、0を下回ることはありません。Minecraftは警告距離を「ボーダーから何ブロック手前で画面が色づき始めるか」として扱うため、ボーダーの幅が100ブロックを下回るまでは赤い警告オーバーレイがマップ全体を覆います。それ以降は端に近づいたときだけ表示されます。
最も難しいゾーンはマップの中央にあるため(モブキルルートを参照)、縮小するボーダーはプレイヤーをより難しく、より実入りの良いエリアへと着実に追い込んでいきます。ボーダーのダメージは引き続き適用され、ボーダーによる致命的なダメージは通常のマッチ内死亡処理でプレイヤーを除外します。
脱出する
- 脱出ポイントを探します。画面上部のボスバーはコンパスのストリップです。視線の向きから90°以内にあるすべての脱出ポイントに対し、1文字あたり約3°の精度で
⦿マーカーを表示します。バーはマッチ開始と同時に現れますが、最初の1分間は空のままです。マーカーは使用可能な脱出ポイントに対してのみ描画され、それらは解禁タイマーが発火するまで設置されないためです。 - 脱出ポイントのレバーを右クリックします。レバーは取り除かれ、10ブロック以内のすべてのプレイヤーに「You have triggered an exit!」と通知され、そのポイントに対して20秒間の脱出ウィンドウが1回だけ開きます。
- 脱出ゾーンの中に立ちます。脱出ポイントのブロックを中心とした7 × 7 × 7ブロックの立方体です。その中にいる間は
Extracting! in N seconds!と表示されます。 - 外に出ると
Extraction cancelled!と表示されますが、ウィンドウ自体は動き続けます。閉じる前に戻れば有効です。 - ウィンドウが閉じると、中にいる全員が同時に脱出します:
Victory / Extraction successful!。彼らはマッチから除外され、所持しているものをすべて保持します。
各脱出ポイントは、1回のマッチにつき1回だけウィンドウを開きます。ハンドラーは、まだ使われていない脱出ポイントから10ブロック以内のレバーを受け付けます。すでに使われたポイントの近くにあるレバーは特別な動作をせず、通常のレバーとして切り替わるだけです。
死亡とアイテムの喪失
Extractioncraftのマッチでは各プレイヤーの命は1つだけで、リスポーンもデスチェストもありません。
- プレイヤーを死亡させるはずのダメージは完全にキャンセルされます。代わりに、そのプレイヤーはマッチから除外されます。進行中のマッチでは、その前にポーション効果、炎上、凍結、落下距離がリセットされます。
- 除外時には保存されていたゲームモードに戻り、参加前に立っていた場所へテレポートされます。体力は回復しませんが、マッチ終了時にまだ中にいたプレイヤーは例外です。
- ワールドの底より下に落ちたプレイヤーは、最後に立っていたブロックの上に戻されます。これは3回連続まで行われ、それ以降は他のダメージと同様に奈落で死亡することがあります。
マッチが進行中になった後は、どのように退出したかによってアイテムの扱いが決まります:
| 退出のしかた | ルートを保持できる? |
|---|---|
| 脱出ポイントで脱出した | はい(ソウルバウンド) |
サーバーのシャットダウンまたは /exc reload | はい(ソウルバウンド) |
進行中のマッチで死亡、/exc leave、/exc quit、または切断した | いいえ(デフォルト設定の場合) |
| 15分のタイマーが尽きたときにまだ中にいた | いいえ(デフォルト設定の場合) |
| マッチが待機中またはカウントダウン中に退出した | はい(変更なし) |
「いいえ」の場合、deleteItemsOnFailToExtract が true(デフォルト)であれば、インベントリ全体、カーソル上のアイテム、クラフトグリッドが消去されます。false に設定すると、これらの退出では代わりにアイテムがソウルバウンドされます。ソウルバウンドでは、EliteMobsのSoulbindエンチャントが有効な間、未結合のアイテムがすべて退出するプレイヤーに結合されます。すでに結合済みのアイテムは元の所有者のままです。
minPlayers 不足でカウントダウンが中止されたときにまだ中にいたプレイヤーは、マッチの終了とともに除外されますが、マッチが本格的に開始されていないため、アイテムはそのまま保持されます。アイテムを失うのは、マッチの開始時点で参加していたプレイヤーだけです。
ワールドの保護
インスタンスのマッチワールドは、その存続期間中ずっと保護されています:
- プレイヤーはブロックを破壊・設置したり、骨粉を使ったり、バケツの中身を出したり、看板を編集したり、地形にダメージを与えたりできません。爆発、炎、液体の流れ、葉の自然消滅、バニラのモブスポーンはブロックされ、エリトラでの滑空も無効です。
- チェスト、樽、その他のコンテナは開けません。マッチのコンテナはコンテナルートで説明する方法で略奪します。ドア、トラップドア、フェンスゲートは使用できません。額縁、防具立て、植木鉢は保護されています。
- 感圧板などの物理的なレッドストーン操作は、マッチが進行中になるまでブロックされます。この設定はあらゆるレッドストーン操作を禁止するものではありません。
- コンテンツパッケージが
pvpEnabled: falseを設定している場合、PvPはブロックされます。 - マッチ内のプレイヤーは、マッチ自身が開始したもの以外のいかなる手段でもテレポートできません。コマンド、エンダーパール、コーラスフルーツも含みます。他のプレイヤーは、
extractioncraft.match.bypass(デフォルト: op)を持っていない限り、マッチワールドにテレポートで入れません。 - マッチがカウントダウン中または進行中の間、
extractioncraft.match.bypassを持たずにマッチワールド内で見つかった他のプレイヤーは、メインワールドのスポーンへ送られます。
管理者は /exc protection bypass で、プレイヤーのバイパス状態を確認するブロック・操作チェックを回避できます。マッチのテレポート制限、PvP禁止、すべてのワールドルールを回避できるわけではありません。
マッチの終了
マッチは、最後のアクティブなプレイヤーが除外されたとき(脱出、死亡、退出、切断のいずれでも)、15分のタイマーが尽きたとき、またはカウントダウン中に最少プレイヤー数を割ったときに終了します。まだ中にいる全員は回復されて除外され、Extractioncraftはそのマッチのボーダー、コンパス、スコアボード、パーティクルのタスクを停止します。バイパス権限を持つスタッフなど、ワールドに残っている他のプレイヤーはメインワールドのスポーンへ送られます。
その後、マッチの終了処理は一時ワールドの完全削除を要求します。ワールドをアンロードできなければ削除は行いません。プラグインが有効な間はフォルダ削除まで5秒待ち、ワールドが再ロードされていないことも確認します。
マッチは、プラグインが無効化されるときにも破棄されます。これには /exc reload とサーバーのシャットダウンが含まれます。生成中のマッチはキャンセルされ、進行中のマッチにいるプレイヤーは上記のとおりアイテムを保持します。