ショップシステム
EliteMobsには、プレイヤーがEliteMobsの装備や矢に対してエリートコイン(EliteMobsの通貨)を使ったり稼いだりできる、組み込みのショップシステムが付属しています。ショップは通常、冒険者ギルドの鍛冶屋や商人NPCを通じてアクセスしますが、コマンドで開くこともできます。
ショップは、EliteMobsの経済システムがオンになっている(EconomySettings.ymlでenableEconomy: true)場合にのみ機能します。Vault連携を有効にしている場合、EliteMobsは独自の通貨データベースの代わりにVault経済を通じて残高の読み書きを行います。
通貨
デフォルトの通貨はエリートコイン(EconomySettings.ymlのcurrencyName)と呼ばれます。プレイヤーは主にエリートを倒すこと(通貨のシャワー)と、EliteMobsのルートを売却することで獲得します。残高の確認や支払いは、標準のマネーコマンドで行えます。
/em wallet//em money check– 自分の残高を確認する/em pay <player> <amount>– 他のプレイヤーに支払う(playerToPlayerPaymentTaxesの対象)
管理者は/em money add|remove|setなどで残高を管理できます。
ショップ
ダイナミックショップ(プロシージャル生成の装備)
/em shop dynamicを実行するか、鍛冶屋NPC(elitemobs.shop.dynamic.npc)と話して開きます。
ダイナミックショップは、54スロットのメニューをプロシージャル生成されたEliteMobsの武器と防具で埋めます。提供されるアイテムのレベルはそのアイテム種別に対応するあなたのスキルレベルにスケーリングされ、各アイテムは該当する武器/防具スキル(対応するスキルがないアイテムの場合は平均スキルレベル)を用いて(skillLevel - 5)からskillLevelの間(1〜100にクランプ)でロールされます。これにより、ショップには現在の進行度に見合った装備が常に並びます。
- アイテムをクリックすると購入できます。価格はそのアイテムの算出された価値であり、所持金が足りない場合、インベントリが満杯の場合、またはアイテムを装備するスキル要件を満たしていない場合は購入がブロックされます。
- リロールボタンを使うと、提供される在庫を更新できます(2秒の短いクールダウンあり)。
カスタムショップ(特別なアイテム)
/em shop customを実行するか、スペシャル鍛冶屋NPC(elitemobs.shop.custom.npc)と話して開きます。
カスタムショップは、ショップ表示用にフラグが立てられた手作りのカスタムアイテムを販売します。ここに表示されるアイテムは、ショップに並ぶよう設定されたカスタムアイテムのプールから引き出され、購入者に自動的にソウルバインドされます。ダイナミックショップと同様にリロールボタン(2秒のクールダウン)があり、購入ルール(価格、インベントリの空き、所持金のチェック)も同じです。
アイテムの売却
売却は、(ダイナミックショップまたはカスタムショップを開いたあとの)購入/売却メニューの売却オプションから行うか、管理者が/em shop sell <player>(elitemobs.shop.sell.other)で直接開きます。アイテムを売却する鍛冶屋NPCはelitemobs.shop.sell.npc権限を使用します。
売却メニューでは次のように操作します。
- インベントリのEliteMobsアイテムを売却スロットにドラッグします。売却できるのはあなたにソウルバインドされたEliteMobsアイテムのみです。バニラアイテムや他人にソウルバインドされたアイテムはメッセージとともに拒否されます。
- 確認ボタンには現在の合計が表示されます。クリックするとすべて売却してエリートコインを受け取ります。
- 再販価値はアイテムの全価値の一部であり、
EconomySettings.ymlのitemResaleValueで設定します(デフォルト5%)。
矢ショップ
矢ショップNPC(elitemobs.shop.arrow.npc)と話して開きます。
矢ショップはエリートコインで弾薬を販売します。デフォルトの在庫には次のものが含まれます。
- 通常の矢(小さなスタックと大きなスタック)
- 分光の矢
- 毒、鈍化、弱化、負傷、治癒の効果の矢
各項目の数量と価格は、矢ショップのメニュー設定で構成できます。矢をクリックすると購入できます(所持金が足りない場合やインベントリが満杯の場合はブロックされます)。
コマンドと権限
| コマンド | 権限 | デフォルト | 説明 |
|---|---|---|---|
/em shop dynamic | elitemobs.shop.dynamic | true | ダイナミック(プロシージャル)装備ショップを開く |
/em shop procedural <player> | elitemobs.* | op | 他のプレイヤーのためにダイナミック(プロシージャル)ショップを開く |
/em shop custom | elitemobs.shop.command | true | カスタムアイテムショップを開く |
/em shop custom <player> | elitemobs.shop.custom.other | op | 他のプレイヤーのためにカスタムショップを開く |
/em shop sell <player> | elitemobs.shop.sell.other | op | 他のプレイヤーのために売却メニューを開く |
NPCインタラクション権限(elitemobs.userバンドルを通じてデフォルトでプレイヤーに付与):
| 権限 | NPC |
|---|---|
elitemobs.shop.dynamic.npc | 鍛冶屋(ダイナミックショップ) |
elitemobs.shop.custom.npc | スペシャル鍛冶屋(カスタムショップ) |
elitemobs.shop.sell.npc | アイテムの売却 |
elitemobs.shop.arrow.npc | 矢ショップ |
設定
ショップ経済はEconomySettings.ymlで設定します。主なキー:
| キー | デフォルト | 効果 |
|---|---|---|
enableEconomy | true | ショップ/経済システム全体のマスタースイッチ |
currencyName | Elite Coins | 通貨の表示名 |
useVault | false | EliteMobsのデータベースの代わりにVaultを通じて残高をやり取りする |
itemResaleValue | 5 | 売却時に支払われる、アイテムの全価値に対する割合 |
playerToPlayerPaymentTaxes | 0.2 | /em payの送金に適用される税率(0.0〜1.0、0.2 = 20%) |
materialWorth.defaultMaterialWorth | 1 | 明示的な価格が設定されていない素材のフォールバック価値 |
各ショップのメニューレイアウト(スロット、アイテムアイコン、名前、メッセージ)は、EliteMobsのメニュー設定ファイル(例えば購入/売却、カスタムショップ、プロシージャルショップ、売却、矢ショップの各メニュー設定)にあります。
関連ページ
- 冒険者ギルドワールド — ショップNPCがいる場所
- ソウルバインド — 売却するアイテムが自分のものでなければならない理由
- スキルシステム — スキルレベルが装備を制限し、ダイナミックショップをスケーリングする仕組み
- Vault連携 — サーバー全体の経済を使う
- アイテムの作成 — カスタムショップへのカスタムアイテムの追加