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

Extractioncraft ルートシステム

Extractioncraftは3つの概念に基づいた階層型ルートシステムを持っています。コンテンツパッケージはルートテーブルを参照し、ルートテーブルはルートプールを参照し、ルートプールはドロップする実際のアイテムを定義します。

概要

Content Package
-> chestLootTables / barrelLootTables (weighted selection)
-> Loot Table
-> lootTable entries (each has a chance to roll)
-> Loot Pool
-> eliteMobsLoot / vanillaLoot (weighted selection of one item)

ルートテーブル

ルートテーブルの設定は loot_tables/ フォルダにあります。各ファイルはルートプールエントリのリストを定義し、各エントリにはアイテムを生成する独立した確率があります。

キーデフォルト説明
isEnabledBooleantrueこのルートテーブルが有効かどうか
spawnPoolsString list[]BetterStructuresのスポーンプール名。一致するスポーンプールに関連付けられたEliteMobが倒されると、このルートテーブルがドロップに使用される。
lootTableList of objects[]各エントリはルートプールのファイル名と chance(0.0〜1.0)を参照

ルートテーブルエントリの形式

lootTable:
- filename: my_loot_pool.yml
chance: 0.5
- filename: another_pool.yml
chance: 0.2

各エントリは独立して判定されます。chance0.5 の場合、このプールがドロップを生成する確率は50%です。

ルートプール

ルートプールの設定は loot_pools/ フォルダにあります。各プールは取得可能なアイテムのセットを定義します。プールが判定されると、重み確率に基づいて1つのアイテムが選択されます。

キーデフォルト説明
isEnabledBooleantrueこのルートプールが有効かどうか
eliteMobsLootList of objects[]ドロップ可能なEliteMobsカスタムアイテム
vanillaLootList of objects[]ドロップ可能なバニラMinecraftアイテム

EliteMobsルートエントリ

eliteMobsLoot:
- filename: my_elite_item.yml
weight: 1.0
- filename: another_item.yml
weight: 0.5

filename はEliteMobsカスタムアイテムの設定を参照します。weight はプール内のすべてのエントリ間でのドロップ確率の相対値を決定します。

バニラルートエントリ

vanillaLoot:
- material: DIAMOND
weight: 1.0
- material: GOLD_INGOT
weight: 2.0

material はBukkitの Material enum名です。weight はエリートルートエントリと同様に機能します。プール内のすべてのエリートおよびバニラエントリは、1回の重み付き選択で競合します。

コンテナルート(チェストと樽)

マッチ中、チェストと樽はBetterStructuresによって配置されます。プレイヤーがチェストまたは樽を右クリックすると:

  1. プレイヤーはコンテナが開くまで3秒間静止する必要があります。
  2. 移動するとインタラクションがキャンセルされます。
  3. 成功すると、コンテンツパッケージの chestLootTables または barrelLootTables リストから1つのルートテーブルが選択されます(重み付き選択)。
  4. 選択されたルートテーブルの各エントリが独立して判定され、結果のアイテムがコンテナの位置にドロップします。
  5. ルーティング後、コンテナは破壊されます(空気に置換)。

マッチ中にアクティブなコンテナは10ティックごとにポータルパーティクルを表示し、プレイヤーが見つけやすくなっています。

モブキルルート

マッチ中にEliteMobが死亡すると、プラグインはそのBetterStructuresスポーンプールをチェックします。spawnPools リストにそのモブのスポーンプールが含まれるルートテーブルが、モブの死亡地点にドロップを生成します。モブのレベルはEliteMobsに渡され、レベルに応じたアイテム生成が行われます。

脱出時のアイテムの挙動

  • 脱出に成功したプレイヤーはすべてのアイテムを保持します。インベントリのアイテムは退出時にソウルバインド(EliteMobsのソウルバインドエンチャント使用)されます。
  • 脱出に失敗したプレイヤー(退出、切断、またはワールドボーダーに捕捉された場合)は、config.ymldeleteItemsOnFailToExtracttrue の場合、すべてのインベントリアイテムを失います。