HIMEシリーズ

日本語版 HIME Battle Action Exp プラグイン Ver1.1

こちらは「戦闘終了時ではなく、アクションを実行した直後に経験値を獲得できるプラグイン」です。

最新版は HimeWorks 様のサイトで英語版で配布されています。

MV Plugins

どなたかのお役に立てば幸いです。


/*:ja
----------------------------------------------------------------------------
@title Battle Action Exp
@author Hime --> HimeWorks (http://himeworks.com)
@version 1.1
@date Feb 25, 2016
@filename HIME_BattleActionExp.js
@url http://himeworks.com/2016/02/battle-action-exp/

あなたが私の仕事を楽しんでいるなら、
パトレオンで私への支援を検討してください!

* https://www.patreon.com/himeworks

ご質問や懸念がある場合、
次のサイトのいずれかで私に連絡できます。

* Main Website: http://himeworks.com
* Facebook: https://www.facebook.com/himeworkscom/
* Twitter: https://twitter.com/HimeWorks
* Youtube: https://www.youtube.com/c/HimeWorks
* Tumblr: http://himeworks.tumblr.com/

----------------------------------------------------------------------------
@plugindesc v1.1 - 戦闘終了時ではなく、アクションを実行した直後に経験値を獲得します。
@help
翻訳:ムノクラ
Galv系プラグインの和訳済リンク
https://twitter.com/munokura/ ---------------------------------------------------------------------------- == 説明 == RPGツクールMVでは、 アクターは戦闘で敵を倒すことで経験値を得ることができます。 全ての敵を倒すと、勝利の処理が行われ、 アクターは戦闘結果から経験値を受け取ります。 戦闘が終わる前に脱出した場合、 アクターは敵を倒しても経験値を受け取れないことを意味します。 このプラグインは、経験値の取得方法を変更します。 戦闘終了時だけでなく、アクションを実行する度に経験値が受け取られます。 例えば、アクターが敵を倒した時点で経験値の計算が行われ、 その場でレベルアップする可能性があります。 アクションの経験値は、経験値の計算用に設定したルールに応じて、 戦闘以外でも取得できます。 このプラグインを使用すると、 アクターはそのアクションに対して即座に報酬を受け取ります。 使用できる追加のメカニズムが提供されます。 == 利用規約 == - クレジットを表示する非営利プロジェクトでの使用は無料 - 商用プロジェクトでの使用は無料ですが、連絡してください - クレジット表示をHimeWorksにしてください == Change Log == 1.1 - Feb 25, 2016 * added support for receiving action exp outside of battle 1.0 - Feb 24, 2016 * initial release == 使用法 == プラグインのパラメーターで、 使用するデフォルトのアクション経験値式を設定します。 デフォルトでは、敵を倒した時のみ経験値を受け取ります。 下記がデフォルトの式です。 b.isEnemy() && b.isDead() ? b.exp() : 0 下記を意味します。 アクションの対象が敵で行動の結果、対象が死んでいる場合、 その後、敵の経験値に等しい経験値を獲得します。 それ以外の場合、経験値なし。 これは、アクターが別のアクターをターゲットにした場合、 経験値は得られないことを意味します。 特定の状況では、 対象がアクターであるか敵であるかを確認することが重要です。 特定のプロパティが全ての戦闘に存在しない場合があるためです。 次の数式変数を使用できます。 a - アクションの使用者 b - アクションの対象 v - ゲーム変数 s - ゲームスイッチ -- 例 -- 敵を倒した時だけ、経験値を受け取るのではなく、 敵の経験値の割合として、 与えたダメージの量に基づいて経験値を受け取りたいとしましょう。 つまり、敵のHPが100であり、合計で100の経験値を与え、 20のダメージを与えた場合、敵から20%の経験値、 つまり20の経験値を受け取ります。 これを達成するために、 対象のアクション結果オブジェクトから与えられたダメージを取得できます。 b.result() そこから、HPダメージを要求できます。 b.result().hpDamage 比率を取得するには、それを取得して対象の最大HPで除算します。 b.result().hpDamage / b.mhp 対象の合計HPに対するダメージの割合がわかります。 最後に、この割合に敵の合計経験値を掛けて、 攻撃者が受け取る経験値の割合を決定できます。 (b.result().hpDamage / b.mhp) * b.exp() 繰り返しになりますが、デフォルトでは敵のみが経験値を持っているため、 対象が実際に敵かどうかを確認する必要があります。 b.isEnemy() ? (b.result().hpDamage / b.mhp) * b.exp() : 0 つまり、アクターを対象にした場合、経験値は得られません。 与えたダメージの量が敵が残したHPの量よりも大きい場合はどうなるでしょう? 例えば、HPが100のみの敵に200ダメージを与えた場合。 残念ながら、このプラグインだけでは、 アクションが実行される前に敵のHPにアクセスすることはできませんが、 そのようなプラグインがあり、 アクション結果の'oldHp'というプロパティにこの情報が保存されている場合、 下記を使ってください。 b.isEnemy() ? (Math.min(b.result().hpDamage, b.result().oldHp) / b.mhp) * b.exp() : 0 ---------------------------------------------------------------------------- @param Default Action Exp Formula @desc アクションから得られる経験値を計算する時、使用する数式 @default b.isEnemy() && b.isDead() ? b.exp() : 0 ---------------------------------------------------------------------------- */

スポンサードリンク

スポンサードリンク

-HIMEシリーズ

Copyright© RPGツクールMV初心者的備忘録 , 2020 All Rights Reserved.