自分用ウディタまとめ
記事書くの2ヶ月ぶりですね。
ここ最近はウディタを久々に触ってました。
学生時代にRPGエディターを経てウディタに辿り着いた時は、まあ何をどうすればいいやら分からなくて敬遠してたんですが、今触ると結構そこまでフリーダムではないですね。下地を作ってくれてる代わりに変数周りの制限がキツイ感じ。
まあガチのプログラムで1から作る余裕は流石にないので、むしろこれくらいが丁度いい感じします。ある程度制限のある中で作るのも乙なものです。
で、ウディタ触ってると徐々にコモンがカスタムされてきて自分好みな感じになってくるわけですが、もしも何かの拍子にデータ飛んだら戻し作業が地獄みたいなことになりかねない……。なので、基本システムからどういうところ弄ってるか自分用にまとめておきます。コモンイベント配布してもいいんですが、あちこちのコモン調整してあるんで万人向けにはならないかもってことで。あくまで自分用ですね。
大規模改修コモン
技能からイベント呼び出す際に変数読み込むコモン
技能からイベント呼び出すと変数読み込めないので、読み込めるようにする改造。例えば特定のキャラを召喚するギミックなどに。
技能やアイテムでイベント呼び出した際に一旦経由させるコモンを作成して、技能使用者IDと使用技能コードを可変DBの空きタイプ領域に格納させる処理を行う。経由させるコモンへ繋ぐために以下のコモンの微改修必要。
Ev118、Ev119、Ev165、Ev197
高度AI設定コモン
XXターン目からYYターン毎にZZ%の確率で処理、味方の誰かがHP50%以下かつ自分のMPが〇〇以上の時に△△を使用、ターゲットは……みたいなAIを設定できるコモン。
Ev160「AI実行」、味方AIデータベース、敵AIデータベースを根本から差し替える必要あり。
副産物として敵味方の対象を反転させる状態異常も作成可能。その場合はEv192、Ev193の微改修と状態異常の行動制限の項目に「-1」を追加する必要あり。
若干の修正
エンカウントコモンの調整 Ev37
最初がきっかり何歩で出現するようになっているので、完全確率変動に調整。ただ連続エンカウントがストレスになるので、エンカウント直後はエンカウント率を下げる調整を含む。
ダメージ計算式の調整 Ev165
アルテリオス式を若干弄って、ステータスとダメージ量のインフレを抑える調整。
Damage = 3*(ATK+威力)^2 / (10+DEF+ATK/2)
顔グラ位置の調整 Ev63
顔グラ表示すると文字に被って見づらいので、若干Y座標を調整する。
ロード画面の調整 Ev94
顔グラと名前のレイヤー順を調整して、名前が隠れないようにする。また表示間隔も若干広めに調整。
装備によるHPSPの自動回復・戦闘開始時状態異常付与 Ev147,148etc
武器防具の設定項目を増やす必要あり。開始時の状態異常付与はEv204で処理させるといいと思う。
その他
ウディタ上の数値限界に関して
ウディタでは数値の限界は符号付き32bit=+2147483648~-2147483647。約21億。
ただし、いくつかのステータス等に関しては割合計算を挟む際に、%数値を乗算してから100で割る処理をしているため、約2100万が限界値となる。
上限値を21億にしたい場合は、割合を乗算する処理と100で割る処理を1行で済ませる必要がある。ダメージ上限が約21億なのは、ダメージ乱数処理を1行で済ませているため。(何故か攻撃ダメージ周りの計算のみがこの形式の処理になっている)
ただし、割合処理をしているコモンイベントは大量にあるので、それらを全て修正する必要がある。レベルアップ時の必要経験値計算、ステータス欄等のゲージ描画、回復量割合計算、獲得戦利品の割合計算、移動時・戦闘時の一時ステータス計算、敏捷の乱数処理など。
数値上の上限は21億ですが、パラメータとしての上限は最大でも9億程度にした方がオーバーフローの心配がなくて安心です。またDBに格納できる数値は何故かキャップがかけられており、14億を超えると14億に強制修正されてしまいます。見た目的にも9がたくさん並んで綺麗ですしね。
素材関連
とりあえず思いつくのはこんなところでしょうか。最後に私が使ってる素材元をご紹介させていただきますね。
個人的にゲームは統一感とバリエーションが大事だと思っているので、なるべく同カテゴリの素材は同じ作者様から借りられるよう、種類が豊富な作者様を選んでおります。
(以下、敬称略)
BGM・SE素材 魔王魂
SE素材 Onjin
顔グラフィック素材 ゆるドラシル RPGツクール素材提供サイト
敵グラフィック素材 Rド
マップチップ素材&エフェクト素材 ぴぽや倉庫
また思いついたら加筆します。