フェイト・エクストラ的な戦闘システム

月下美人
記事: 31
登録日時: 2018年1月18日(木) 21:52

フェイト・エクストラ的な戦闘システム

投稿記事by 月下美人 » 2018年4月10日(火) 17:06

 いつもお世話になっております。

 フェイト・エクストラというPSPソフトがあります。戦闘システムはジャンケンで、5つほどグー、チョキ、パーから選択し相手の手より強ければダメージが通るというものです。
 このジャンケン式の戦闘システムを取り入れたいのです!
 要望としては少しアレンジを加えて、最初にコマンドを入力してからグー、チョキ、パーを決めて、相手の手に勝てばダメージが通る。あいこの場合は半分のダメージ、負ければノーダメージという形にしたいです。事前に入力する回数は1回のみ。相手の行動ももちろん同じ形式です。

 何卒、よろしくお願いします!
最後に編集したユーザー 月下美人 on 2018年4月10日(火) 17:53 [ 編集 1 回目 ]

ショウ
記事: 109
登録日時: 2016年8月10日(水) 19:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by ショウ » 2018年4月10日(火) 17:45

タイマンのジャンケンバトル自体はバトルイベントとかでどうにでもなるよ、
ジャンケンとは若干違うけど自分も戦艦同士の戦いで似た様な事やってる。
(ミサイルは弾幕で無効化、副砲はバリアで無効化みたいな感じで攻撃ターンと防御ターンを
交互にやってる)
Fateみたいに事前にいくつかコマンド選択ってなると話が変わって来るけど
最後に編集したユーザー ショウ on 2018年4月10日(火) 17:52 [ 編集 1 回目 ]
月下美人
記事: 31
登録日時: 2018年1月18日(木) 21:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by 月下美人 » 2018年4月10日(火) 17:51

 >ショウさん

 おっしゃる通り事前にコマンド入力を必要とするタイプです。
 そして結果によってダメージ値も変化しますので、これはスクリプトでないと無理だと思います。
ショウ
記事: 109
登録日時: 2016年8月10日(水) 19:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by ショウ » 2018年4月10日(火) 18:05

まぁもっと言えば手間や見栄えやらを無視して話すなら選択肢や変数とかを
駆使すれば事前入力も可能と言えば可能。
純粋にあれを再現しようと思ったら多分かなり手間そう。
ダメージも結果に応じて同じ名前のスキルを複数用意すれば通常ダメージ、半減ダメージ、
無効化にする事も出来るしね。(あくまで一例、ダメージ計算式を弄るとかでもよし)
ただバトルイベントでやろうと思ったらすべての敵に設定する必要があるけど、
これに関しては共有イベントのスクリプトで手間が大幅に省ける。
結局の所どこまで再現したいかによって手段が変わって来ると思うよ。
月下美人
記事: 31
登録日時: 2018年1月18日(木) 21:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by 月下美人 » 2018年4月10日(火) 19:41

なるほど。再現というか、やりたいことと言えば、ツクールのデフォ戦闘に三すくみコマンドを追加したいだけなんですよね。コマンド入力➡三すくみの1つを選択➡判定結果。といった形でしょうか。
仮にバトルイベントでやるとしたらどうすればいいですか? 聞いてばかりで申し訳ないですが(汗
ショウ
記事: 109
登録日時: 2016年8月10日(水) 19:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by ショウ » 2018年4月10日(火) 21:40

あくまで一例として

一番単純なのは選択肢でグー・チョキ・パーを選ぶ方法。
1,選択肢でグー・チョキ・パー選べるようにして、
 変数1にグーなら1、チョキなら2、パーなら3が入る様に設定する。

2,選択後変数2(敵のジャンケン用)に1、2、3のどれかが入る様にする。
 確率は例えば乱数と条件分岐を使って、変数3が0~10なら1、11~50なら2、
 51~99なら3みたいにすれば敵毎に選ぶ確立を変えられる。

3,ターン終了のタイミングでバトルイベントが起動するようにして、
 条件分岐にて変数1と変数2の組み合わせで戦闘行動の強制でスキルを使わせる。
 変数1が1(グー)で変数2が2(チョキ)の場合敵に関係度100のスキルで攻撃、
 変数1が1(グー)で変数2も1(グー)の場合敵に関係度50のスキルで攻撃、
 変数1が1(グー)で変数2が3(パー)の場合攻撃に失敗したなどのメッセージを流す。

Fateの様に最初に複数回選ばせたいなら回数分変数を用意して回数分1~3をやる様に
イベントを組めばいい。
例えば1の選択肢を5回分用意して変数1~5に自分が1回目~5回目に出す手をそれぞれ入れて、
敵の手は3の判定時に変数6(敵のジャンケン用)を判定毎に2の方法で入れていけばいい。
攻撃と防御を敵味方交互にやるタイプならこれでいい。

ジャンケンで勝った場合は自分が攻撃、負けた場合は敵が攻撃みたいにしたいなら、
3の判定時に戦闘行動の強制で勝った場合は自分が、負けた場合は敵に攻撃させるとか
すればよし。(Fateはたしかこっちのタイプだった記憶がある)

スクリプト使わずやるなら戦闘を全て選択肢でやるこの方法が一番シンプルな方法だと思う。
なおこの方法だと敵に勝手に動かれたら困るのでステータスだけ設定して行動に関しては
空っぽでいい。

RPGっぽくコマンド選択したいならグー・チョキ・パー判定用のスキルを作ってコモンイベント
でそれぞれ変数を入れればいい。
あとは同じ様に2~3で結果を判定させて攻撃させる。
ただこの場合事前に複数回入力させたい場合の判定がデフォルトでは難しいと思う、
一回だけなら問題なし。

ちょっと読みにくいかもしれないけどこれで出来なくはない。
あとの細かい演出などは自分次第。
月下美人
記事: 31
登録日時: 2018年1月18日(木) 21:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by 月下美人 » 2018年4月10日(火) 23:58

 おお、ご丁寧にありがとうございます!
 まだ初心者なので変数の扱いをマスターしていませんが、頑張って作ります。
 煮詰まったら是非、相談させてください!
月下美人
記事: 31
登録日時: 2018年1月18日(木) 21:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by 月下美人 » 2018年4月11日(水) 11:12

 >ショウさん

 お世話になっております。ちょっと自信がないのですが、1と2はこんな感じで大丈夫でしょうか?
 それと、3がよく分からないです。条件分岐は変数1が変数2と同値?
添付ファイル
SnapCrab_データベース_2018-4-11_11-8-3_No-00.jpg
ショウ
記事: 109
登録日時: 2016年8月10日(水) 19:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by ショウ » 2018年4月11日(水) 14:19

作ってみました。(バトルイベントの組み方はもうちょっとコンパクトにまとめました)
まずは戦闘テストで試してみて下さい。
処理内容はコモンイベントと敵グループのバトルイベントを見てみてください。
あくまで基礎的な感じなのでいろいろいじって試してみて下さい

追記
選択肢式を流用してコマンド式も作ってみました。
ジャンケンシステム的に攻撃と防御が邪魔なので消してます。
その際Window_ActorCommandのコマンドリストの作成の部分を弄っているので覗いてみてください。
(改で検索すればすぐ見つかると思います)
動作は敵グループの2番目で試してみてください。
コマンド式の方はグー・チョキ・パー以外にその他の処理を加えていますが、
こういうのも出来るよという例みたいなものです。
スキルのためるがこれに当たります(こういうのはこっちの方がやりやすいかな)
アイテムコマンドはこのシステムでも利用価値があると思ったので一応残してあります。
いらない場合上記の部分を弄るか、分からなければ言ってください。
添付ファイル
ジャンケン.zip
+コマンド式
(1.34 MiB) ダウンロード数: 16 回
月下美人
記事: 31
登録日時: 2018年1月18日(木) 21:52

Re: フェイト・エクストラ的な戦闘システム

投稿記事by 月下美人 » 2018年4月11日(水) 16:32

 わざわざありがとうございます!
 これを基盤に色々と手を加えてみようと思います!

 追記:
 コマンド式ですと使い勝手が良いですね!
 恐縮なのですが、フェイズを新たに追加することは可能でしょうか?
 コマンド式ですとグーチョキパーがスキルの扱いになっていますが、スキルを選択してからジャンケンの手を選択という形式が取りたいのです。
 なので、イメージとしては「戦う → 攻撃、スキル、アイテム → ジャンケンの手 → 判定」という形ですね。この場合もう1フェイズ新たに追加することになるのでしょうか?

“VX / Ace:スクリプト素材のリクエスト” へ戻る