Diary - 制作日記

★30:戦闘システムの作成 – 計算,AP,演出等2012/12/10 (月)  01:03

慌ただしい日々が続き、制作日記が滞ってしまいました。
どうやら制作時間をコンスタントに確保する事も課題になってきているようです。困った。

今回は主に戦闘システムの中身をガリガリ作成。
細かな部分が多く、独自性の少ない感じですが、
操作性やこれからの作りやすさに大きく影響を与える為地道にしっかりと制作を進めました。


■アイテムリストの作成

戦闘中に参照するアイテムリストを作成しました。

以前、同様のものを作ったのですが、まさかのピクチャ番号計算ミスによって作り直す事に…。
こういうミスはホントに怖いです。注意しないと…(;´Д`)

旧あいてむりすと

Fig.1-1 旧あいてむりすと
新あいてむりすと

Fig.1-2 新あいてむりすと

旧アイテムリストではカテゴリ別にタブ分けしていました。

カテゴライズは要素数が多い場合では有効ですが、逆を言えば操作回数が増えてしまう。
(カテゴリ選択→要素選択…)

要素数が少ないのであればシンプルにした方が使いやすいと自分でも感じたので修正しました。
なるべく操作の煩雑性を抑えたいという事もあります。

ついでなので、アルゴリズムを整えて動作を軽快にしました。

こういうリストの操作時には上手く剰余(割り算の余り)を使ってやる事でコンパクトに書けますね。
可読性を高める練習にもなる気がします。

■戦闘用計算処理色々

次にダメージ演算やその為に必要なパラメータを取ってくる処理など。

意外に手間取ってしまった箇所で、上手く作らないと後々面倒な箇所…という事で、
まとまった時間に一気に作成。

内部的なものなのであまり書く事はありませんが…(´¬`)

余談ですが、戦闘計算式などは一応自分で作っています。

ツクールデフォルトのものだと若干インフレ気味なので、
そこら辺を調整しつつ自分なりにシステムに合わせた感じとなっております。

基本式が出来てしまえば、後はスキル効果等の条件を加えて行くだけなので一安心。

出来たら後は敵さんをサンドバックにしてフルボッコタイム!
応答を見ます。

死亡処理や演出、全滅判定など色々作るところが多いですが、
コアな部分が出来ると案外すんなり作れてしまうものだな、と感じました。

■ターゲット選択処理

攻撃の際などに敵や味方を選択する処理の事です。

敵味方の生存状態チェックをして、選択テーブルを作ってそれに基づいて選択ループ…という安直な発想で実装。

キー処理毎に生存チェックなどをしていると負荷もかかるし、キーイベント毎に処理入れなくちゃならないし…
と面倒なのでこんな感じに。

戦闘不能のキャラのみを対象にする場合(蘇生魔法)等、条件が入る場合はテーブル作成処理を替えてやればOK…と言う感じなのでしょうか。
想像で作ったので一般的なやり方は分からないです。

とにかくきちんと動いているからいいのだよ!><

■行動ゲージ増加,ターン到来処理を修正

所謂、ゲージが溜まったら行動、というルールの戦闘なのですが、
優先度を考慮していなかったので調整。

戦闘ではターン毎にAPという行動ポイントがプラスされ、スキルなどの行動に必要となります。
これらの処理も実装。いよいよ面白くなってきました。

APと行動ゲージ

Fig.2 APと行動ゲージ

また、APが溜まっていると行動速度が若干早くなる仕様もプラス。
通常攻撃等もいかせる仕組み作りをしてあります。

ここら辺も考え方次第で随分スムーズに書けるのだなぁ、と実感しました。

■ボス撃破演出

ボスを倒した時の達成感の一つとして演出は大事な部分と感じます。
…という事で、ボス撃破時はちょっとだけ派手な演出で崩れ去ります。

沈む敵(静止画では分からないけれど…)

Fig.3 沈む敵(静止画では分からないけれど…)

考えてみればデフォルト戦闘ではバトルイベントを組まないと設定できない為、作る価値はあるかなぁと。
バトルイベントで組むにしても結構手間がかかりますしね。複数の画像を用意したり…。

さっさと他を作れよ!と言う部分ではありますが、有ると無いでは少し雰囲気が変わる気がします。
簡単に実装できるのであれば細かな工夫を取り入れる気配りを意識したいところです。
冗長で無い限りですが…。


…と、こんな感じでシステム部分を作りつつ、前項の日記のグラフィック等も並列して制作しております。

自作システム部分で動かせる場所が多くなってきました。
テストプレイも賑やかになってきて着実に前に進んでいる実感があります。

出来るだけペースを維持して制作を進められる様、
頑張って行きたいところですが、さてはてどうなる事か…。