人気ブログランキングへ

傭兵システムを作ってみた。自作RPGをツクールその3

RPGツクールMZにて制作中のRPG。

主人公「カイン」は冒頭、毒に侵されたヒロイン「フリージア」を助けるため、ロックマウンテンの薬草を求めて旅立ちます。

戦闘を行ったことが一度もない設定です。

なので傭兵を一人だけ雇い、助太刀してもらうシステムを作ってみようと思います。

やりたいこと

・パーティーの盾となる重装戦士、状態異常を狙える弓使いなど傭兵となって助太刀してくれるNPCを作る。

・町の酒場にて、傭兵を斡旋してくれるNPCイベントを作る。

・傭兵を雇うにはお金が必要。

・傭兵を雇うとタイマーが表示され、時間が過ぎるとさらに追加料金を払うか別れるかを選択できる。

こんなイベントを作ってみようと思います。

まずは酒場の内装を作ってみました。

左上のカウンターにいる人物が傭兵を斡旋してくれる人です。

傭兵を作る

まずは傭兵となるNPCをデータベース(画面上の歯車アイコン)にて作ります。

重装備でカイン君たちを守ってくれる屈強な戦士。

スタンや毒などの状態異常攻撃をしてくれる弓使いなど。

傭兵によって攻撃方法、防御力、回避率など一長一短のあるステータスに振り分け、特徴を出します。

傭兵を斡旋してくれるNPCイベントを作る

傭兵アクターを作ったら、そのアクターを雇うためのイベントを作っていきます。

1,最初に作っておいた酒場マップの左上、カウンターの奥にイベントを配置し、NPCの画像を設定します。

2,文章「よう兄ちゃん!傭兵をお探しかい?」などと入力。

3、イベントコマンド「選択肢」で、はい・いいえ・傭兵って?を入力。

※「はい」を選べば傭兵を雇う選択肢へ、「いいえ」を選べばそこで会話終了、「傭兵って?」を選べば傭兵の説明をしてくれるように設定しました。

4、すると:はいのとき・いいえのとき・傭兵って?のときと3つの分岐を作ることができます。

5、:はいのときの下に「条件分岐:傭兵を雇っている場合がON」を設定し、「もう傭兵は雇われているぜ!」などと入力。

※傭兵は一人しか雇えないという設定にするため、1人雇っている場合2人目を雇えないようにするためのスイッチです。(僕の説明が下手くそで分かりにくいですね。)

6、それ以外のとき(傭兵を1人も雇っていないとき)の下に、「傭兵を雇うには金が必要だぜ!」とか言う文章を入力。

7、メッセージ「選択肢の表示」を選択し、1人目の傭兵と2人目の傭兵を選択。

8、1人目の傭兵を選択した場合のセリフを入力する。(傭兵の特技などの説明文。)

9、メッセージ「選択肢の表示」を選択し、「100ゴールド支払う」と「考え直す」を入力。

10、「100ゴールド支払う」の下にフロー制御「条件分岐」を選択し、下の画像のように設定する。

※この設定は、100ゴールド以上あれば雇うことができ、100ゴールド未満の場合は雇えないという選択肢を作るためのものです。

11、所持金が100ゴールド以上ある場合、「所持金の増減」にて100ゴールド減らし、メンバーの入れ替えにて任意の傭兵をパーティーに加えます。

12、傭兵を雇ったときからタイマーを作動させます。(1時間に設定しました。)

※下の画像ではタイマーが1分となっておりますが、これはテストプレイをしやすいようあえて短めに設定しています。

13、タイマーの時間がなくなると追加料金を払って契約を継続、あるいは別れるイベントを作動させるためのスイッチをONにします。

※このイベントはあとで別に作ります。

14、最初に設定した、2人目の傭兵を雇えなくするスイッチもONにしておきます。

15、それ以外のとき(お金が足りなかった場合)は、「お金が足りない・・・」などのセリフを入力することで、選択肢が終了します。

16、1人目の傭兵を雇う選択肢と同じように、2人目も設定していきます。

タイマーが切れたとき(契約期間終了)のコモンイベントを設定する

次は傭兵はお金を支払い、契約期間が過ぎれば追加料金を払って継続するか、契約を終了させパーティーから離脱するイベントを作りたいです。

データベースから作成することのできるコモン(呼び出す)イベントは、スイッチなどがONになった場合に呼び出すことのできるイベントです。

1、トリガーを「並列処理」に設定し、先ほど作ったイベントにて「 タイマーの時間がなくなると追加料金を払って契約を継続、あるいは別れるイベントを作動させるためのスイッチ」を選択。

2、実行内容にて、「条件分岐」でタイマーが0分0秒になったときに起動するよう設定。

3、「おっと!契約期間が過ぎたぜ!」などと文章を入力。

4、「追加で金を払ってくれれば延長できるぜ!」などと文章を入力。

5、「選択肢の表示」にて、「延長する(100ゴールド)」と「ありがとうございました」(契約を終了)を入力。

6、延長するの下に「条件分岐」にて、100ゴールド以上ある場合は延長、100ゴールド未満の場合は「お金が足りない・・・」などと入力。

※お金が足りなかった場合、傭兵との契約は終了し別れることになります。

7、延長する選択肢の下に、「所持金の増減」にて100ゴールド減らし、タイマーをリセットするため1時間に設定。

8、それ以外場合(お金が足りなかった場合)の選択肢には、「金が足りなかったようだな・・・」「あばよ!またよろしくな!」などと傭兵のセリフを入力。

9、そして「メンバーの入れ替え」にて、該当する傭兵を外します。

10、タイマーを停止させ、スイッチにてこのコモンイベントを実行するためのスイッチをOFFにします。

11、最初の選択肢にて、ありがとうございました(任意で契約を終了させる場合の選択肢)を選んだ場合も、「メンバーの入れ替え」にて該当する傭兵を外し、タイマーの停止、このコモンイベントを実行するためのスイッチをOFFにします。

これにて、傭兵イベントの作成ができました。

複雑な作業なので6時間ほどかかりました・・・。

最後にテストプレイをし、上手く動けば完成です。

しかしこの方法では1点だけ懸念点があり、戦闘中にタイマーが切れた場合、強制的に戦闘が終了してコモンイベントが発動してしまいます。

ザコ敵との戦闘では支障ありませんが、ボスとのイベントバトルなどでは工夫しないと物語が詰んでしまうことになるかもしれません。

配布されているプラグインを利用させてもらえばもっと簡単に作れるかもしれませんが、僕は自分で組んでみたかったためこの方法となりました。