EmeraldHorse(育成馬)― OP・運営ガイド¶
CasinoPlugin の育成馬モジュール(emhorse)の看板・コマンド・config・権限をまとめます。
基本情報¶
| 項目 | 値 |
|---|---|
| モジュール ID | emhorse(CasinoPlugin 内) |
| メインコマンド | /emhorse(OP / emhorse.admin) |
| 前提モジュール | bank(必須・EmeraldAPI)、horse(出走連携) |
| 設定ファイル | modules/emhorse.yml(数値設定)、emhorse_data.yml(馬データ・自動保存) |
| 所有頭数 | 1人最大 max_horses 頭(既定5。複数頭所有・厩舎で選択中を切り替え) |
モジュールの有効化
emhorse は CasinoPlugin の config.yml の modules.emhorse.enabled で ON/OFF します。modules に項目が無い場合は既定で有効 として起動します。無効化したいときのみ modules.emhorse.enabled: false を手動追記してください。
看板の設置¶
プレイヤーの操作導線は3種類の看板です。看板を設置し、看板を見ながら(6ブロック以内)以下を実行すると自動整形されます(emhorse.admin 権限が必要)。
看板1行目に [馬ショップ] / [厩舎] / [出走受付] と手書きしても、権限者のみ設置できます。/emhorse setsign remove で視線先の看板設定を解除できます。
管理コマンド¶
join のみ全プレイヤーが使用でき、それ以外は /emhorse <sub>(OP または emhorse.admin)です。
| コマンド | 説明 |
|---|---|
/emhorse join |
全員可。[厩舎] 看板と同等に厩舎を開く(2頭以上なら所有馬一覧、1頭なら厩舎GUI、未所有ならメッセージ) |
/emhorse setsign <shop\|stable\|entry\|remove> |
視線先の看板を各種看板に設定/解除する |
/emhorse givefoal <player> [bronze\|silver\|gold] [個数] |
子馬券を付与(既定 bronze・1個) |
/emhorse givewhistle <player> |
呼び笛を付与 |
/emhorse givefeed <player> <feedId> [個数] |
エサを付与(feedId: hay / carrot / goldcarrot / sugar / apple / goldapple) |
/emhorse give <player> [grade] |
全素質一律グレード(既定C)の馬を 1頭追加 付与し、追加した馬を選択中にする(最初の1頭目のみ呼び笛も付与) |
/emhorse setcondition <player> <値> |
選択中の馬の体調を直接設定(0〜100) |
/emhorse setrating <player> <値> |
選択中の馬のレーティングを直接設定 |
/emhorse setlevel <player> <stat> <Lv> |
選択中の馬の指定ステータス(SPEED/ACCEL/STAMINA/BURST/GUTS)のレベルを設定 |
/emhorse reload |
modules/emhorse.yml を再読み込み |
/emhorse status [player] |
馬の状態を確認(自分対象なら厩舎GUI、他者なら選択中の馬をテキスト表示) |
/emhorse give は所有上限を無視して追加します
give は対象がすでに馬を持っていても 上書きせず新しい1頭を追加 し、その馬を選択中にします。max_horses(既定5)を超えても付与できるため、配りすぎに注意してください。setcondition / setrating / setlevel はいずれも 選択中の馬 に作用します。
権限ノード¶
| 権限 | 既定 | 用途 |
|---|---|---|
emhorse.admin |
OP | /emhorse 各サブコマンド(join を除く)・看板設置 |
プレイヤー向けの専用権限はありません(看板・アイテム操作で遊びます)。/emhorse join のみ権限を問わず全プレイヤーが使用できます。
modules/emhorse.yml 主要項目¶
| キー | 既定値 | 説明 |
|---|---|---|
max_horses |
5 | 1人が所有できる馬の最大数(子馬券の引き換え上限) |
naming.max_length |
16 | 馬名の最大文字数(厩舎GUIの命名/改名で適用) |
naming.rename_cost |
1000 | 改名費用。初回命名は無料、2回目以降にこの額をエメラルドバンクから消費 |
naming.ng_words |
[運営, admin, 管理者] |
命名に使えないNGワード(部分一致・大文字小文字無視。運用しながら追記可) |
train.levels_per_grade |
5 | グレード1段あたりの育成レベル上限(S=rank8なら×5でLv40) |
train.base_exp |
100 | レベルアップ必要経験値の基準(Lv N→N+1 は base_exp×(N+1)) |
mount.base_speed / speed_per_level / speed_cap |
0.20 / 0.0015 / 0.32 | 騎乗速度(速度Lvで上昇・上限あり) |
mount.jump_base / jump_per_level / jump_cap |
0.7 / 0.004 / 1.0 | ジャンプ力 |
mount.despawn_seconds |
30 | 降車後の自動収納までの秒数 |
condition.decay_per_hour |
5.0 | 体調の1時間あたり減少量(オフライン中も経過) |
foal.price.{bronze/silver/gold} |
5000 / 15000 / 50000 | 子馬券の価格 |
foal.tiers.* |
(素質抽選の重み) | 各tierのS〜Gグレード出現重み |
feed.price/exp/condition.* |
(エサ表) | エサごとの価格・経験値・体調回復量 |
race.max_entries |
4 | 1レースの育成馬の最大出走数 |
race.condition_consume |
15 | 1出走あたりの体調消費 |
race.class_thresholds |
[0,100,250,500,1000,2000] |
クラス(新馬〜G1)のレーティング下限 |
race.prize_pool |
[500,1500,4000,10000,30000,100000] |
クラス別の賞金プール総額 |
race.distribution |
[0.5,0.25,0.15,0.07,0.03] |
着順別の賞金配分率 |
race.exp_finish / exp_win |
15 / 25 | 完走/勝利時の育成経験値 |
race.rating.{first/second/third/other/dnf} |
30/15/5/-10/-15 | 着順別レーティング増減 |
既存サーバーは config が自動追記されません
modules/emhorse.yml はファイルが無ければ自動生成されますが、既存ファイルがある場合は新しいキーが自動追記されません(コード側に既定値があるため動作はします)。値を調整したい場合は手動追記、または yml を退避して再生成し /emhorse reload してください。
注意・既知の制限¶
実装状況・留意点
- 馬は永続データ(
emhorse_data.yml)で管理され、召喚馬が消えても育成内容は失われません。複数頭所有に対応し、所有者ごとに「馬の一覧」と「選択中の馬」を保存します。旧フォーマット(1人1頭)のデータは初回ロード時に自動で新フォーマットへ移行されます。 - 召喚・給餌・出走・各種変更はつねに 選択中の馬 が対象です。同時に召喚できる馬は1体まで。
- 脚質(逃げ/先行/差し/追込)と天候は現状フレーバー で、レースの計算にはほぼ反映されません(専門化=距離適性と馬場適性は反映)。
- 出走登録は最大
race.max_entries(既定4)まで。超過分は先着順で、落選通知はありません。 - 競馬(horse)モジュールが無効なときは通常の自動生成馬レースにフォールバックします。
- 子馬券・エサ・呼び笛は PDC タグ付きアイテムで、外部の取引・露店プラグインで売買・流通させる運用も可能です。