[RPG Maker MZ プラグイン] Battlepass System v1.2.0 — 最大限の自由度、ビジュアルエディタ、日次/週次クエスト
by Rpx & Just Dev
ギャラリー
RPG Maker MZ 用の商業グレードのバトルパスシステム。最大限の自由度を提供:あらゆる報酬タイプ、柔軟なプレミアムコスト、シーズン日程、そして完全なビジュアルエディタを搭載しています。
これは何ですか?
このプラグインは、RPG Maker MZ のゲームを フォートナイト、ブロルハル、または季節進行システムを備えたAAAタイトルのようなモダンなバトルパス体験 に変換します。プレイヤーはゲームプレイを通じて バトルポイント (BP) を獲得し、ティアをレベルアップして、無料 および プレミアム トラックの報酬をアンロックします。
機能概要
- 最大 999 レベル、各レベルの BP 要件には JS 数式を使用可能
- 2つのトラック: 無料 + プレミアム、報酬は完全にカスタマイズ可能
- MZ がサポートするあらゆる報酬タイプ:
- ゴールド、アイテム、武器、防具、スキル
- 変数、スイッチ、アクター、クラス
- 経験値、レベル、ステート
- BGM/BGS/ME/SE、コモンイベント
- カスタムスクリプト (JS 実行)
- 1レベルあたり複数の報酬
- 完全なビジュアルエディタ — 報酬ティア、日次/週次ミッションは構造テーブルで、行をクリックして編集可能(もはや一行の JSON は不要!)
- 柔軟なプレミアムコスト — ゴールド、変数、スイッチ、レベル、アイテム/武器/防具の組み合わせ(AND条件)
- シーズンシステム — START/END 日付 + カウントダウン(自動/日/週/両方/時分秒形式)
- 日次および週次ミッション — 自動リセット、それぞれが BP を付与
- ポップアップ通知、オプションでメインメニュー統合
- プラグインコマンド +
$gameBattlepassAPI
動画チュートリアル
YouTube で完全なセットアップガイドをご覧ください:
youtu be / YOUR_VIDEO_ID (スペースを削除してください)
クイックセットアップ
BattlepassSystem.jsをjs/plugins/フォルダにコピー- プラグインマネージャーで有効化
MaxLevel、BPFormula、RewardDataを設定- (オプション)
PremiumCost/PremiumItemIdを設定 - メニューに自動追加するか、プラグインコマンドで呼び出し:
Battlepass OpenBattlepass - イベントから BP を付与:
Battlepass AddBP 100
パラメータ概要
| パラメータ | 説明 | デフォルト |
|---|---|---|
| MaxLevel | 到達可能な最大レベル | 50 |
| BPFormula | level を使用する JS 式 |
100 * level |
| BattlepassName | ヘッダータイトル | Battlepass |
| MenuIcon / AddToMenu | メニュー統合 | 0 / true |
| PremiumCost | ゴールド価格 | 1000 |
| PremiumItemId | 代替通貨 | 0 (無効) |
| GainBPOnVictory | 勝利時に自動 BP 付与 | false |
| BPAwardPerVictory | 数値または数式 | 15 |
| RewardData / RewardTiers | 視覚的ティアエディタ | [] |
| SeasonDurationDays | シーズンの長さ | 60 |
| SeasonCountdownFormat | タイマー表示形式 | auto |
| SeasonStartDate | 固定開始日 | 空 |
| SeasonExpireBehavior | なし / リセット通知 | none |
| DailyMissions / WeeklyMissions | 視覚的ミッションエディタ | (例) |
| DailyResetHour | 日次リセット時刻 | 5 |
| WeeklyResetWeekday | 週次リセット曜日 | 1 |
| NotificationDuration | ポップアップのフレーム数 | 120 |
| SoundEffectClaim / LevelUp | SE 名 | Item3 / Up4 |
報酬データの例
[
{"level":1, "free":[{"type":"gold","value":300}], "premium":[{"type":"item","id":5,"amount":2}]},
{"level":2, "free":[{"type":"weapon","id":3}], "premium":[{"type":"skill","id":10}]},
{"level":3, "free":[{"type":"variable","id":10,"value":1,"mode":"add"}], "premium":[{"type":"switch","id":5,"value":true}]},
{"level":5, "free":[{"type":"commonEvent","id":3}], "premium":[{"type":"script","value":"$gameVariables.setValue(20, 999)"}]},
{"level":10,"free":[{"type":"armor","id":4,"amount":1}],"premium":[{"type":"gold","value":1500},{"type":"item","id":1,"amount":5}]}
]
サポートされている報酬タイプと必須フィールド:
| タイプ | 必須フィールド | 備考 |
|---|---|---|
gold |
value: number |
ゴールドの量 |
item |
id: number, amount?: number |
アイテムデータベースID |
weapon |
id: number, amount?: number |
武器データベースID |
armor |
id: number, amount?: number |
防具データベースID |
skill |
id: number |
部隊リーダーに習得 |
variable |
id: number, value: any, `mode?: “set” |
“add”` |
switch |
id: number, value?: boolean |
デフォルト: true |
commonEvent |
id: number |
“common_event” / “event” も可 |
script |
value: string |
JS 実行; a=リーダー, v=変数, s=スイッチ |
actor |
id: number |
アクターを部隊に追加 |
class |
actorId: number, classId: number, keepExp?: boolean |
デフォルト keepExp: true |
exp |
value: number, actorId?: number |
0 = 部隊全員 |
level |
value: number, actorId?: number |
0 = 部隊全員 |
state |
id: number, actorId?: number |
0 = 部隊全員 |
bgm / bgs / me / se |
name: string |
オーディオファイル名 |
ミッションの例
日次ミッション:
[
{"id":"d1","name":"戦士の義務","desc":"3戦勝利","type":"win_battle","target":3,"bp":30,"icon":76},
{"id":"d2","name":"宝探し","desc":"500ゴールド獲得","type":"earn_gold","target":500,"bp":25,"icon":314},
{"id":"d3","name":"スレイヤー","desc":"10体の敵を倒す","type":"kill_enemies","target":10,"bp":40,"icon":16}
]
週次ミッション:
[
{"id":"w1","name":"ベテラン","desc":"15戦勝利","type":"win_battle","target":15,"bp":120,"icon":160},
{"id":"w2","name":"金持ちで有名に","desc":"5000ゴールド獲得","type":"earn_gold","target":5000,"bp":150,"icon":314}
]
ミッションタイプ:
win_battle— X 戦勝利kill_enemies— X 体の敵を倒すearn_gold— X ゴールド獲得gain_item— X 個のアイテムを取得use_item— X 個のアイテムを使用gain_bp— X BP 獲得custom— プラグインコマンドまたはスクリプトコールを使用
プラグインコマンド (MZ 1.5+)
| コマンド | 例 | 説明 |
|---|---|---|
Battlepass AddBP |
Battlepass AddBP 100 |
BP を追加 |
Battlepass RemoveBP |
Battlepass RemoveBP 20 |
BP を削除(下限あり) |
Battlepass SetBP |
Battlepass SetBP 350 |
BP を絶対値に設定 |
Battlepass SetLevel |
Battlepass SetLevel 10 |
レベルにジャンプ |
Battlepass AddLevel |
Battlepass AddLevel 5 |
レベルを追加(負の値で減算) |
Battlepass SubtractLevel |
Battlepass SubtractLevel 3 |
レベルを減算 |
Battlepass UnlockPremium |
— | プレミアムを即時付与 |
Battlepass SetPremium |
Battlepass SetPremium true/false |
プレミアムを有効/無効化 |
Battlepass ResetBattlepass |
— | 進行状況を消去(テスト用) |
Battlepass OpenBattlepass |
— | Scene_Battlepass を開く |
Battlepass OpenMissions |
— | ミッションシーンを開く |
Battlepass AddMissionProgress |
Battlepass AddMissionProgress kill_enemies 5 |
ミッションタイプを進める |
Battlepass ClaimMission |
Battlepass ClaimMission d1 |
ID でミッションを報酬受け取り |
Battlepass ResetDaily |
— | 日次ミッションを強制リセット |
Battlepass ResetWeekly |
— | 週次ミッションを強制リセット |
Battlepass SetSeasonDays |
Battlepass SetSeasonDays 30 |
シーズン日数を上書き |
Battlepass AddSeasonDays |
Battlepass AddSeasonDays 7 |
シーズン日数を追加/減算 |
スクリプトコール
$gameBattlepass.addBP(100)
$gameBattlepass.removeBP(20)
$gameBattlepass.setBP(350)
$gameBattlepass.setLevel(10)
$gameBattlepass.addLevel(5)
$gameBattlepass.subtractLevel(3)
$gameBattlepass.isPremium() // boolean
$gameBattlepass.getLevel() // number
$gameBattlepass.getBP() // number
$gameBattlepass.getProgress() // {level, bp, need, ratio, nextLevel}
$gameBattlepass.claim(level, track, index) // track "free"|"premium"
$gameBattlepass.claimAll() // 現在利用可能なすべての報酬を受け取り
$gameBattlepass.reset() // ResetBattlepass と同じ
$gameBattlepass.getSeasonInfo() // {days, weeks, remainingMs, isExpired, ...}
$gameBattlepass.getDailyMissions() // ミッションオブジェクトの配列
$gameBattlepass.getWeeklyMissions() // ミッションオブジェクトの配列
$gameBattlepass.addMissionProgress(type, amount, extra)
$gameBattlepass.claimMission(id)
$gameBattlepass.resetDaily()
$gameBattlepass.resetWeekly()
// エイリアス
BattlepassSystem.isPremium()
BattlepassSystem.open() // OpenBattlepass
BattlepassSystem.openMissions()
戦闘数式の注意
BPAwardPerVictory は固定数値または JS 数式にできます:
利用可能な変数:
enemyLevel— 敵のレベル(敵のメタデータまたはデフォルト 1)level— enemyLevel のエイリアスa—$gameParty.leader()b— 敵バトラーtroop— 部隊配列
例:
"12"— 敵ごとに固定 12 BP"enemyLevel * 5 + 10"— 敵のレベルに比例"Math.floor(a.level * 0.5) + troop.length * 2"— リーダーのレベルと部隊サイズに基づく
キーボードショートカット
| キー | アクション | パラメータ |
|---|---|---|
Shift |
すべての報酬を受け取り | KeyClaimAll |
P |
プレミアムを購入 | KeyBuyPremium |
M |
ミッションを開く | KeyOpenMissions |
Q / W |
タブの切り替え(左/右) | KeyTabLeft / KeyTabRight |
Space / Enter |
決定 / 報酬受け取り | KeyConfirm |
Esc |
キャンセル / 閉じる | KeyCancel |
すべてのキーはプラグインパラメータを通じて完全にカスタマイズ可能です。
テーマ
プラグインには 8 つの組み込みテーマが含まれています:
- Default Dark
- Light
- Midnight Blue
- Royal Purple
- Emerald
- Crimson
- Gold
- Cyan Neon
- Minimalist
VisualConfig.json を介して独自の色で Custom テーマを作成することもできます。
パラメータリファレンス
(プラグインヘルプからの完全なパラメータリスト)
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
| MaxLevel | number | 50 | 最高バトルパスレベル |
| BPFormula | string | 100 * level | BP 要件の JS 式 |
| BattlepassName | string | Battlepass | ヘッダータイトル |
| MenuIcon | number | 0 | メニュー項目のアイコン |
| AddToMenu | boolean | true | メインメニューにコマンドを追加 |
| MenuText | string | Battlepass | メニューラベル |
| MenuPosition | number | 4 | メニューコマンドの位置 |
| PremiumCost | number | 1000 | ゴールドコスト |
| PremiumItemId | number | 0 | 代替通貨アイテムID |
| PremiumItemAmount | number | 1 | 必要な数量 |
| GainBPOnVictory | boolean | false | 戦闘後に自動 BP 付与 |
| BPAwardPerVictory | string | 15 | 数値または JS 数式 |
| RewardData / RewardTiers | struct | 視覚的ティアエディタ | |
| NotifyOnLevelUp | boolean | true | レベルアップポップアップを表示 |
| NotifyOnRewardUnlock | boolean | true | 報酬ポップアップを表示 |
| NotificationDuration | number | 120 | ポップアップの表示フレーム数 |
| NotificationPosition | select | top | top / bottom / center |
| SoundEffectClaim | string | Item3 | 報酬受け取り SE |
| SoundEffectLevelUp | string | Up4 | レベルアップ SE |
| LevelUpCommonEvent | number | 0 | レベルアップ時のイベント |
| SeasonDurationDays | number | 60 | シーズンの長さ |
| SeasonCountdownFormat | select | auto | auto / days / weeks / both / hms |
| SeasonStartDate | string | (空) | YYYY-MM-DD |
| SeasonEndDate | string | (空) | YYYY-MM-DD |
| SeasonExpireBehavior | select | none | none / reset_notify |
| PremiumCosts | struct | 柔軟なコストリスト | |
| DailyMissions / WeeklyMissions | struct | (例) | 視覚的ミッションエディタ |
| DailyMissionsData / WeeklyMissionsData | struct | 追加ミッション | |
| DailyResetHour | number | 5 | 0-23 |
| WeeklyResetWeekday | number | 1 | 0=日..6=土 |
| MissionCompleteSE | string | Item2 | ミッション完了時の SE |
| ConfirmTitle / Desc / Yes / No | string | (各種) | ダイアログのカスタマイズ |
| KeyClaimAll / BuyPremium / etc. | string | (各種) | キーボードキー |
トラブルシューティング
AddBP で何も起こらない:
MaxLevel がすでに到達しているか、BPFormula が 0/NaN を返していないか確認してください — コンソールに警告が表示され、100*levelにフォールバックします。
報酬が表示されない:
オンラインバリデータで RewardData JSON を検証してください — コンソールには不正なエントリごとに警告が表示されますが、クラッシュすることはありません。
バトルパスのない古いセーブデータ:
初回ロード時にデフォルト値に自動移行します。
アイコン/サウンドがない:
0 / 無音にグラシフルフォールバックします。
ウルトラワイドでのビジュアルグリッチ:
シーンはGraphics.boxWidth/Heightを動的に使用します。
ダウンロード
ダウンロード: (説明欄 / 添付ファイルにリンクあり)
作者ウェブサイト: rpxgames.win
クレジット
作成者: Rpx & Just Dev
ウェブサイト:rpxgames.win
利用規約:
- 商業および非商業プロジェクトで無料
- クレジット表示必須
- 再配布または再販売禁止
リンク
プラグインウェブサイト: rpxgames.win/
YouTube チュートリアル: https://www.youtube.com/watch?v=XYFTDyimx4c
itchio https://r-px.itch.io/battlepass-system-for-rpg-maker-mz
Battlepass System をご利用いただきありがとうございます!問題が発生した場合やご提案がある場合は、ぜひお知らせください。 ![]()



