攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

メルサイア
記事: 109
登録日時: 2016年2月22日(月) 10:35
お住まい: 大阪府
連絡を取る:

攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

投稿記事by メルサイア » 2016年12月08日(木) 21:30

ツイッターなどで探しても見つからなかったため、ツクマテに投稿いたします。
もし既出でしたら、教えていただけると幸いです。

どなたか、攻撃力などのパラメータを「絶対値」で増減させるプラグイン
をご存じないですか?
できればメモ欄でできるとありがたいです。

■問題
ツクールデフォルトの%で指定する方法だと、元々攻撃力が弱いキャラはさほど強くなりません。
能力強化ステートをかけても、強キャラとの差が更に開いてしまいます…
(これだと効率重視の人は、弱キャラを愛せなくなります)

■詳細 (能力「%上昇」だと何が困るか)
例えば、攻撃力20の弱キャラと、攻撃力100の強キャラが居た場合、
    「攻撃力200%」のステートを付与すると、弱キャラは攻撃力40、強キャラは攻撃力200となり、
    差が、付与前:100-20=80から、付与後:200-40=160と、更に攻撃力に差が開いてしまいます。

%強化しか出来ないRPGではよくある話ですが、このような大味な戦闘バランスだと
「攻撃力が強いキャラだけを%上昇させて、物理で殴れば良い」という認識がユーザに付いてしまい、
「能力が弱いキャラは使えない」となってしまい、弱いキャラを愛さなくなります。

■解決策
家庭用RPGツクール2の頃のように、例えば「攻撃力を100増加」するステートやスキルが作れれば、
攻撃力の差を埋めて、ユーザが弱キャラを愛しやすくなります。
(それでも差が開く場合は、ダメージ計算式の最終値に0.8~0.9などをべき乗すると、いい感じになるかもです)

■その他
自分では、トリアコンタンさんの動的データベースプラグインを使った(能力を変数値で変動させる)方法や、
装備の強制付けはずしする方法を考えましたが、コモンイベントが非常にややこしくなるので、挫折しました…。

どなたか、ご協力いただけると助かります。
よろしくお願いいたします。
最後に編集したユーザー メルサイア on 2016年12月08日(木) 22:11 [ 編集 4 回目 ]

メルサイア
記事: 109
登録日時: 2016年2月22日(月) 10:35
お住まい: 大阪府
連絡を取る:

Re: 攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

投稿記事by メルサイア » 2016年12月08日(木) 21:30

■想定しているプラグインの例
仕様を書き出してみましたが、いろんな実装方法が考えられるため、かなり迷いました。。。
難しく考えすぎかも……。
あくまで一例ですので、これに限らず、どんなものでも構いません。

(共通の仕様): 「アクターや敵キャラの能力を、絶対値で上昇させる」 という目的を達成できれば、なんでもいいです。
・メモ欄に「<hoge攻撃力ほげほげ…」などと、記述できると助かります。
  → ※hogeは他のプラグインとの競合を避けるための、そのプラグインの識別子(英字3文字など)です。
    ※ほげほげ…はなんでもOKです。

  → 攻撃力、防御力、魔法力、魔法防御力、素早さ、運の6種パラメータに対応していただけると、うれしいです。
    最大HP、最大MPはどちらでも構いません。厳しいようなら除外してください。

  → 「○○の攻撃力が10上がった!」などメッセージは、無くても構いません。
    無くとも、ステートにアイコンを付ければわかりますし、スキルも説明文でわかるようにすれば問題ないです。

  → %ステートと同時に付与された場合、「(基本値 + 絶対値)×%」でお願いします。 でないと弱いキャラは弱いままです。
    プラグインのパラメータをON/OFFすることで、「(基本値×%)+絶対値」の優先順にする機能があってもいいです。

実装が簡単そうなものから、3案あげます。

(A案)ステート付与方式
・ステートのメモ欄に「<hoge攻撃力UP:100>」と書くと、対象バトラーの攻撃力が、そのステート継続中、+100される。
  → 重ねがけは不可     (違うステートIDとの重ねがけはOK。あくまでステートの仕様そのまま)
  → DOWNは実装しなくてもよい (攻撃力1%である程度は代用可。攻撃力0以下の例外処理がめんどくさそうなので割愛)

(B案)スキル付与方式
・スキルのメモ欄に「<hoge攻撃力UP:100>」と書くと、対象バトラーの攻撃力が、戦闘終了後まで、+100される。
  → スキルとして実装するので、100%発動になります。 (ツクール2方式)
  → 重ねがけ可                  (ステートを使わないため)
  → DOWNは実装しなくてもよい

(C案)カスタマイズ方式: プラグイン使用者にがんばってもらって、A案とB案を両方満たす方法?
・ステートのメモ欄に「<hoge攻撃力:\V[n]>」と書くと、対象となるバトラーの攻撃力が、そのステート継続中、変数値に上書き。
  → ツクラーが、スキル発動時に任意のコモンイベントを呼び出し、その中で変数 \V[n] を触ることで、好きな数値に代入
  → 重ねがけ可能   ( \V[n] の工夫次第でなんとかなる。でも、他の%上昇ステートとの競合が大変そう…)
  → DOWNも可能    (コモンイベントの工夫次第。例: 条件分岐:攻撃力<0 なら 攻撃力=1 とすればよい)

個人的には、A案のステート付与方式が、一番簡単そうで、使いやすいと思います。
なお、デフォルトでも、以下のことは出来ます。 他の実装方法を考える際の、参考になれば幸いです。
  ・敵キャラだけなら、B案は行動パターン 「特定ステートのとき、違う行動を取る」 の工夫次第で、
   半永久的に能力を%上昇させるスキルで、擬似的には作れそうです。
  ・アクターの絶対値による増減は、強化用の空欄装備スロットを空けて、強制装備などで擬似的に作れそうです。
   ただ、コモンイベントを使う以外で、重ねがけ可能なスキルを作るのは、厳しそうです…。

その他、これらにとらわれない発想で、いい方法があれば、それでOKです。
アバター
まっつUP
記事: 520
登録日時: 2016年8月11日(木) 15:38
お住まい: タケノコ王国

Re: 攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

投稿記事by まっつUP » 2016年12月09日(金) 01:17

メルサイア様
お世話になります。
プラグインを作成いたしましたのでお試しください。

このプラグインを利用する場合は
readmeなどに「まっつUP」の名を入れてください。
また、素材のみの販売はダメです。
上記以外の規約等はございません。
もちろんツクールMVで使用する前提です。
何か不具合ありましたら気軽にどうぞ。
添付ファイル
BordSkin.js
(2.06 KiB) ダウンロード数: 36 回
RPGで笑顔を・・・

拙作「Dragon Claw」
http://www.freem.ne.jp/win/game/12816

おまえもタケノコにしてやろうか
https://twitter.com/mattuup
メルサイア
記事: 109
登録日時: 2016年2月22日(月) 10:35
お住まい: 大阪府
連絡を取る:

Re: 攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

投稿記事by メルサイア » 2016年12月11日(日) 08:05

まっUP様

ありがとうございます!
ウォッチリスト追加を忘れてしまっており、気づくのが遅くなり、申し訳ありません。

ソースを拝見しました。 …こ、こんなに簡単にできるものなのですか?!
驚きました。
ありがたく使わせていただきます。

ただ、this.paramPlus2の追加順序を調べてみると、
「基本値×乗算値%+絶対値paramPlus2」と、さきに掛け算の方が優先になっていて、想定と違っていました。
また、私のゲームではプラグインが競合が発生して使えなくなってしまっています。

これ以上お手をわずらわせるのは恐縮なので、
もしよろしければ、こちら側で自分のゲームで想定通りに動くように、ソースを変更したいと思うのですが、
かまいませんでしょうか?

もちろん、著作表示はそのままにして、改変者として私の名前を添える形とし、
改変後のソースもここに公開いたします。
添付ファイル
0341e7d8d968e06201f470d92dba5225.png
アバター
まっつUP
記事: 520
登録日時: 2016年8月11日(木) 15:38
お住まい: タケノコ王国

Re: 攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

投稿記事by まっつUP » 2016年12月11日(日) 11:46

メルサイア様
お世話になります。

プラグインの内容の内、コードの改変についてはご自由にしていただいて構いません。

「まっつUP」の名はreadmeに、分かるように書いていただければ大丈夫です。

あと、そのコードは改変前のコードに見えますが。
まあ競合するのは他にGame_BattlerBase.prototype.paramが
書き換えられているプラグインがある場合でしょう。
RPGで笑顔を・・・

拙作「Dragon Claw」
http://www.freem.ne.jp/win/game/12816

おまえもタケノコにしてやろうか
https://twitter.com/mattuup
メルサイア
記事: 109
登録日時: 2016年2月22日(月) 10:35
お住まい: 大阪府
連絡を取る:

Re: 攻撃力などのパラメータを「絶対値」で上昇させるプラグイン

投稿記事by メルサイア » 2016年12月11日(日) 22:14

まっつUP様

改変の承諾をいただき、ありがとうございます。

すみません、前の投稿の画像は、改変前のものです。
私はスクリプトはかなり苦手な方なので、少しの改変にも、少々お時間がかかってしまうと思います。
プラグインを多用しているため、Game_BattlerBase.prototype.paramが使用されているプラグインが複数あったので、
追加定義して、値だけ上書きするなど、ちょっとやり方を考えます。

以下が改変中のソースの画像です。まだ作成途中ですので、もう少しお待ち下さい。
b13c48e347e53f0ada326e14a77d85fe.png
少し整理してから、また後日、改変後のソースをお送りしたいと思います。

なお、「まっつUP」の名はreadmeに記載させていただきます。

“MV:プラグイン素材のリクエスト” へ戻る