いのすけのウディタ改造録

ウディタの基本システムを改造してみた記録です。

【ウディタ】固定ダメージの防御コマンドによるダメージ軽減とフバーハを作ってみる

こんにちは、いのすけです。

今回は、「基本システムのままだと、固定ダメージの技能のダメージは防御コマンドでもダメージが減らないという点」が気になったので、それを改造するのと、そのついでに固定ダメージ特技にも種類を付けて、ブレス攻撃という種類を作ってそのダメージを減らすような技能(ドラクエでいうフバーハですね。)を作っていきたいと思います!

 

①もろもろのDBいじり

いろいろとDBをいじって技能の種類やその被ダメ割合などの情報を格納する場所を作ってやらなくてはいけません。

まずはわかりやすいユーザーDBからいきましょう!!

技能の種類を入れる欄を作りましょう。

タイプの内容設定というところから、欄は増やせます!

f:id:inosukeT:20220323221135p:plain

タイプの内容設定は、左の真ん中あたりです。

f:id:inosukeT:20220323221255p:plain

このように特技の種類を決めました。攻撃力依存の技能が物理、精神攻撃依存の技能が呪文、固定ダメージの技能うち、ブレスっぽくないやつを体技、ブレスっぽいやつを息としました。

それから状態設定(状態異常の性質を決めるところ)にも同じように欄を増やします。

こちらには受けるダメージ量を設定します。

f:id:inosukeT:20220323221843p:plain

受ける体技ダメージと受ける息ダメージです。選択肢は受ける攻撃ダメージの選択肢をコピペするといいですよ

f:id:inosukeT:20220323222124p:plain

これを固定ダメージ技能の2種類(体技・息)に設定するんです。防御コマンドで固定ダメージを減らす作戦はもう見えますかね…。

ユーザーDBをいじるのはこんなもんで、続いては可変DBの方をいじりましょう。
前の記事でも軽く触れたのですが、戦闘時は可変データベースというところに敵味方の情報を読み込んで計算の処理のための数値としているので、こちらにも、ユーザーDBで設定した情報を入れる欄を作る必要があります。

inosuket.hatenablog.com

具体的には、可変DBの戦闘一時ステータスというところです。

f:id:inosukeT:20220323222626p:plain

可変DBの戦闘一時ステータスです。

ここでも先ほど同様にタイプの内容設定で、受ける体技ダメージ率と受ける息ダメージ率の欄を作ります。ここはただ数字を読み込んで代入するだけの場所なので、ユーザーDBのように選択肢を作る必要はありません。初期値100にしておくだけで大丈夫です。

f:id:inosukeT:20220324074308p:plain

ユーザーDBと同じように名前を【】でくくっておくとわかりやすいです。右のところで初期値を100に設定しておきましょう

DBいじりは以上です。

 

②コモン146、148(一時ステ計算)の改造

続いては、コモン146と148を改造します。このコモンはざっくりいうと、146はバトル開始時に敵味方の情報を可変DBに代入するコモンで、148は、状態変化を受けた場合に敵味方の情報を改めて代入するコモンです。要するにここをどういじるのかというと、ここにさきほど作った、ユーザーDBの【受ける体技ダメージ率】・【受ける息ダメージ率】を可変DBの方の【受ける体技ダメージ率】・【受ける息ダメージ率】の方に代入させるようにする、というわけです!

基本的に【受ける攻撃ダメージ率】・【受ける精神攻撃ダメージ率】と並べるように内容を追加していくだけです。これは画像見てもらった方が早いかと思います。

f:id:inosukeT:20220324075448p:plain

146の攻撃・精神攻撃の下に体技・息の項目を追加しています。【受ける攻撃力ダメージ率】をコピペでいいのですが、DB書き込み位置を体技なら体技、息なら息にしておいてください。コモンの番号違うのは気にしないでください💦

こうすることで、デフォルトではユーザーDB既定のダメージ量をそのまま受けるようになります。146は以上です。148も同じようにやっていきます。

 

f:id:inosukeT:20220324080103p:plain

空いているセルフ変数を二つ用意して、100を代入させます。【受ける攻撃力ダメージ率】と同じです。

f:id:inosukeT:20220324125851p:plain

可変DBに読み込んだ値を代入させます。これも上の【受ける攻撃力ダメージ率】のコピペでOKです。

f:id:inosukeT:20220324130101p:plain

一時変数に状態異常で補正された値が格納されているので、これを再び可変DBに入れ直します。これもすぐ上のコピペです。

これで、コモン146、148の改造は終了です。

③コモン165(単体処理)の改造

このコモンはダメージ量の計算を行う、一番重要なコモンです。これも画像で示していきます。

f:id:inosukeT:20220324131146p:plain

戦闘一時ステータスの【受ける体技ダメージ率】、【受ける息ダメージ率】を空いているコモン変数に取得させます。これも上のコピペです。特技種類の判定というのは、ユーザーDBで追加した、技能の種類(物理、呪文、体技、息)のやつです。

f:id:inosukeT:20220324131506p:plain

ここが一番大きくいじるところです。改造前のコモンでは受ける攻撃力ダメージ率を攻撃力ダメージにかける処理をしていますが、これを特技判定を取得し、それぞれの特技ごとにその特技ダメージ率をかける処理に変えています。


コモンの改造は以上です。

 

④状態異常の「防御」の仕様を変えて、さらにフバーハを実装

あとは、ユーザーDBをいじって、防御の仕様を変更して、さらにフバーハを作りましょう。

<防御の仕様変更>

状態設定の防御のページを開きましょう。

f:id:inosukeT:20220324175153p:plain

防御のページです。受ける攻撃力ダメージ率などはもともと入っていましたね。私は好みでダメージ半減に変えています。

f:id:inosukeT:20220324175324p:plain

さらに、後ろの受ける体技ダメージ率と、受ける体技ダメージ率も半減にしておきましょう。これで防御によって固定ダメージも半減します。

これで、防御の仕様変更は完了です。続いて、フバーハも作りましょう。

 

フバーハの実装>

まずは状態設定で「息軽減状態」を作りましょう。

f:id:inosukeT:20220324180018p:plain

息ダメージを半減する状態を作ります。これも好みで1/4に設定してもOKです。

そして技能です。

f:id:inosukeT:20220324180453p:plain

味方全体で回復、「何に影響する?は」なしに設定しておきましょう。名前はブレスガード(そのままですね💦)にしました。

f:id:inosukeT:20220324180727p:plain

そして付与する状態異常は「息軽減」にしましょう。

設定は以上です。

 

さて、うまく動くか見てみましょう。

以下の技能で実践したいと思います。

f:id:inosukeT:20220324191743p:plain

息の技能です。炎属性で敵一体に200ダメージ前後与える攻撃です。

まずは普通にダメージを受けてみます。

f:id:inosukeT:20220324191928p:plain

受ける側は炎耐性は等倍(そのままダメージを受ける)です。技能で設定した通りのダメージを受けています。

次に、防御をしてみます。

f:id:inosukeT:20220324192112p:plain

防御をするとダメージが半分に減りましたね。

続いて、先ほど作った息被ダメを軽減する技能を使用してダメージを受けてみましょう。

f:id:inosukeT:20220324192244p:plain

技能仕様で「息軽減」のポップアップが出ていますね。

f:id:inosukeT:20220324192341p:plain

確かにダメージが半分になっていますね。

最後に、息軽減状態で防御するとどうなるでしょうか?

f:id:inosukeT:20220324192511p:plain

息軽減で半減、防御で半減で、被ダメが1/4まで減っていますね!

というように固定ダメージ技能のダメージを軽減することに成功しました。

 

これを応用して、息をすいこむ(敵に与えるダメージを2倍にする、要するにちからためのブレスバージョン)なども実装できます。私はもうすでに実装していて、画像にもところどころ映ってたと思います。ぜひやってみてください!

 

では今回はこの辺で。