ページ 11

【解決済み】パラメータ補正の仕様について

Posted: 2017年5月13日(土) 21:35
by にいやん
武器や防具の特徴でパラメータに最大HP×110%と付けた場合、それを複数装備したときには、上がった最大HPに対して更に最大HP×110%という仕様になっているのですが、これを何もアイテムを付けていない元のHPに対して最大HP×110%としたいです。
詳しく説明しますと最大HPが1000のとき、最大HP×110%の装備をした場合は1100になり二つ目の最大HP×110%の補正がかかる装備をした場合、この1100に対して×110%の補正がかかり1210になってしまいます。仮に10個の×110%の装備をつけた場合には2594になってしまいます。これを10個付けた場合は元のステータスから×200%(最大HPが2000)にしたいと考えております。既存の設定項目からこれは可能でしょうか?もしくはそのような修正ができるプラグインはあるのでしょうか?

Re: パラメータ補正の仕様について

Posted: 2017年5月13日(土) 23:06
by フトコロ
こんにちは。

残念ながらご希望の仕様は、プラグインの改造が必要です。

特徴欄の通常能力値の処理は、rpg_objects.js内の2444くらいのparamRate()で実行しています。
それを以下のように修正すると、合計値に変更します。

コード: 全て選択

Game_BattlerBase.prototype.paramRate = function(paramId) {
//    return this.traitsPi(Game_BattlerBase.TRAIT_PARAM, paramId);//コメントアウト
    return 1 + this.traitsSum(Game_BattlerBase.TRAIT_PARAM, paramId);
};
なお、この記述は武器や防具だけでなく、アクターやクラスなどすべての特徴欄の通常能力値が対象です。

また、HPを 10%増やしたい場合は、10%と設定する必要があります。
(110%と設定すると、100% + 110%で 210%になります)


コアスクリプトを修正したくない場合は、以下をコピーしてJavaScriptファイル(***.js)を作成し、プラグイン管理に追加してください

コード: 全て選択

(function() {

Game_BattlerBase.prototype.paramRate = function(paramId) {
    return 1 + this.traitsSum(Game_BattlerBase.TRAIT_PARAM, paramId);
};

})();

Re: パラメータ補正の仕様について

Posted: 2017年5月13日(土) 23:58
by にいやん
フトコロさんありがとうございました。
想定通りの表示になりました。