攻撃時のランダムターゲット【解決】

tetu
記事: 57
登録日時: 2019年8月02日(金) 18:25

攻撃時のランダムターゲット【解決】

投稿記事by tetu » 2020年2月07日(金) 19:22

ゲームの性質上全てのスキルをランダムターゲットにしているのですが
ある特定のイベントのみ、その設定を解除したいです
敵の通常攻撃もランダム性を無くし
全てのランダム要素を無くしたいのですが
会心やミス、ダメージのランダムは、省きます
ターゲット選択のみランダムを無くしたいのですが
Game_Unit.prototype.randomTarget = function() {
ココかえる var tgrRand = Math.random() * this.tgrSum();
var target = null;
this.aliveMembers().forEach(function(member) {
tgrRand -= member.tgr;
if (tgrRand <= 0 && !target) {
target = member;
}
});
return target;
}

これをいじってもランダムになってしまいました。
スイッチのONOFFでランダム性を無しにしたいのですが
スクリプトで条件分岐を打ち込む場所をなかなか見つけられません
分かる方お力添えをお願いします

追記、すべてのスキルをランダムじゃないのを作って使い分ける方法は自分のゲームでは難しいです
最後に編集したユーザー tetu on 2020年2月08日(土) 21:21 [ 編集 1 回目 ]

アバター
Plasma Dark
記事: 676
登録日時: 2020年2月08日(土) 02:29
連絡を取る:

Re: 攻撃時のランダムターゲット

投稿記事by Plasma Dark » 2020年2月08日(土) 02:47

まず要件を具体的にしていきましょう。

攻撃時のターゲットについて、より具体的にどうしたいのか書く必要があります。
回答者があなたの意図を正しく理解できるくらい具体的にです。

例えば、

- 特定のスイッチがONである場合のみ
- プレイヤー側の攻撃ターゲットを
- ランダムではなく選択性にする。

のように。

プレイヤーに限って言えば、攻撃対象を選択させるか、固定にしてしまうのかで変わります。
エネミーの攻撃対象はプレイヤーが選択できるシステムとなるとかなり複雑になるかと思いますが、
固定で良い場合は誰をターゲットにしたいかで実装が変わります。

また、ターゲットをランダムにしたいのは攻撃だけですか?
回復や支援スキルについてはランダムのままにしたいのか、
あるいはそれも攻撃同様に選択させたり対象固定にしたいのか、
実際にプレイする時のことを想像して、あなたが思い描いているシステムを具体的に表現してください。

それからこれは老婆心ですが、rpg_object.jsを直接編集することは保守性の観点から推奨しません。
誰かのプラグインを組み込んだり、RPGツクールMV自体をアップデートした際に不具合が生じやすくなり、
また解決が困難になることが予想されるからです。

既存の処理を少し変えたいという場合でも、プラグインを書いて対処するのが良いでしょう。
tetu
記事: 57
登録日時: 2019年8月02日(金) 18:25

Re: 攻撃時のランダムターゲット

投稿記事by tetu » 2020年2月08日(土) 05:41

要件が伝わりにくくすみません
具体的には
当方のゲームは基本の戦闘システムはターゲットを選択しないゲームシステムです
自動戦闘で通常攻撃&スキルなどに全てランダムに1体などをつけて
ランダム性を重視しております。
このシステムをある特定のイベントのみ、スキルに設定したランダム一体というのを
対象一体、等に変更したいです
尚、回復は通常通りなので考えないものとします

要件は、特定のスイッチがONの時敵味方含めて自動戦闘時に一番狙われ率の高いキャラクターが常に攻撃される
状態を作りたいです
アバター
Plasma Dark
記事: 676
登録日時: 2020年2月08日(土) 02:29
連絡を取る:

Re: 攻撃時のランダムターゲット

投稿記事by Plasma Dark » 2020年2月08日(土) 12:35

このシステムをある特定のイベントのみ、スキルに設定したランダム一体というのを
対象一体、等に変更したいです
尚、回復は通常通りなので考えないものとします

要件は、特定のスイッチがONの時敵味方含めて自動戦闘時に一番狙われ率の高いキャラクターが常に攻撃される
状態を作りたいです


回復は通常通り とは、どういうことでしょう。
回復は特定のスイッチがONでもランダム対象なまま、という意味なのか、
回復は対象を指定できるシステムなのか。

一番狙われ率の高いキャラクターが狙われる状態は特に難しくないのですが、
狙われ率が同率首位のキャラクターが2人以上いた場合の処理はどうなる想定でしょうか。
最も狙われ率の高いキャラクターの中でランダムにターゲットを決定するのか、
それとも隊列で先頭の方にいるキャラクターのほうをターゲット固定にするのか。
tetu
記事: 57
登録日時: 2019年8月02日(金) 18:25

Re: 攻撃時のランダムターゲット

投稿記事by tetu » 2020年2月08日(土) 12:51

返信ありがとうございます
回復自体は独自のシステムを組んでおりますので
攻撃のみです
やりたいことは、狙われ率の多いキャラクターを対象にし
同列の場合は、隊列の若い順番を優先にしたいです
敵味方両方に設定できれば、ランダム要素がなくなった状態になりますので
そのようにしたいです
アバター
Plasma Dark
記事: 676
登録日時: 2020年2月08日(土) 02:29
連絡を取る:

Re: 攻撃時のランダムターゲット

投稿記事by Plasma Dark » 2020年2月08日(土) 13:07

https://github.com/elleonard/RPGtkoolMV-Plugins/blob/master/plugins/DarkPlasma_FixRandomTarget.js

スイッチがONのときにランダム対象スキルのターゲットを狙われ率の最も高いキャラクターに固定するプラグインを公開しました。
上記URLからダウンロード可能です。右上のRawボタンからダウンロードしてください。
gitが利用できるならcloneしていただいても構いません。
tetu
記事: 57
登録日時: 2019年8月02日(金) 18:25

Re: 攻撃時のランダムターゲット

投稿記事by tetu » 2020年2月08日(土) 21:21

ブラグインまで作っていただきありがとうございます
何日か考えてた個所が一日で解決しました。

“MV:質問” へ戻る