装備部位の制御とアイテム成長

装備アイテム関連をもう少し、どこかで弄ってみます。

考えている機能は二点ですが、両者を合わせるとファイナルファンタジー7のマテリアっぽいイメージになります。

シナリオで採用しても、プレイヤー側から見たらパラメータが一つ追加されているだけですが、シナリオ制作側から見ると、だいぶ弄りがいのある機能で、たくさんの装備アイテムについて取り組もうとすると結構大変そうです。

装備部位の有効制御

ステートにより装備部位の有効無効を制御しようという機能です。

スロットの増減例

まずはテスト。以下は、武器と防具の二箇所を装備していない状態です。装備欄がスカスカです。

そこに長剣と革鎧を装備し、増えたスロットにいろいろ装備しました。「△ファイア」とかも装備アイテムです。適当に想像してください。

今度は鎚矛と布の服を装備して、もっといろいろ付けてみました。鎚矛と布の服は、なぜか長剣と革鎧より、追加スロットがたくさんあるようです(そういう設定を入力しました)。

Desigeonでは、装備アイテムの着脱によってステートを着脱できますが、それを利用して、装備部位を有効にするステート条件を満たしたり、満たさなくなったりすることで、上のように装備部位が点いたり消えたりできるようにしてみました。

あくまでステートによる制御なので、必ずしも装備アイテムで制御する必要はありません。戦闘中であってもステート条件を満たさなくなると、いきなり装備部位が消えて、そこに装備してあった装備アイテムが外れます。

まあ、戦闘中の装備アイテム着脱機能がまだないので、戦闘で活用する面白みはありませんね。あと、強制で装備解除されると付け直しが面倒くさいので、プレイヤーの愚痴が増えるかもしれません。

装備部位の判定

各種計算手順から、装備部位のアイテム番号を取得できるようにしようと思っています。

例えば、「△ファイア」が武器の下にくっついていれば攻撃に炎攻撃属性を強化、防具の下にくっついていれば炎レジストを強化、といったように、付ける場所によって違う効果を出したい場合に役に立ちます。

といっても、計算手順での制御なので、やりたいと思っても作り込みには時間と頭を使うはずです。FF7のマテリアは、汎用システムで再現しようとすると結構大変ですね。ひょっとしたらDesigeonでは、装備アイテム性能の編集のところで制御できるようにするかもしれません。

2009年5月12日追記:

装備した部位によって性能を切り替えられるよう、部位ごとに性能の有効無効をアイテムの性能に設定できるようにしました(v1.55以降)。ということで、前述の目的のために計算手順から装備中のアイテムを判断する必要はなくなりました。

装備アイテムの成長

装備中の装備アイテムが成長できるようにします。装備アイテムには新たに「アイテムレベル」というパラメータを設置指示できます。

成長の例

アイテムレベルの初期値は、1以上の整数という以外は任意です。以下では「長剣」のレベルを1で始めてみました。

戦闘をこなし、「アイテム経験値」という報酬を貰います。これは成長設定をしてあるアイテムに振り込まれ、ある程度溜まると“レベルアップ”します。「アイテム経験値」はエネミーの特殊能力値として採用します。

アイテム経験値が溜まった装備アイテムは、アイテムレベルが1増えます。

アイテムレベルは、装備アイテムの性能に影響を与えることができます(与えなくても構いません)。以下、レベルアップ後の長剣の性能が上がっているところに注目です。

アイテムレベルは単独のパラメータにしてあります。情報量を増やしたくないので、性能への影響設定はシンプルにしてあります。おかげで微調整ができません。

このほかアイテムレベルは、各種計算手順からも取得できるようにします。

アイテムレベルアップの仕組み

アイテムレベルアップの理屈はキャラクタレベルと同じです。シナリオ編集側から見ると、キャラクタのレベルアップ設定をするのと同じインターフェースになっています。

最高レベルになると変化する

最高レベルに達したアイテムを、別のアイテムに変化させる機能があります。最高レベルと変化後のアイテムは、アイテムごとに指定できます。

性能的に微調整をしたい場合は、レベルアップのみの性能変化を利用するより、アイテム変化を利用した方が便利かもしれません。

参考元のFF7には、マスターレベルに達したマテリアが分裂し、自身のコピーを作るルールがありましたが、Desigeonも分裂についてはできるようにしたいです。