好感度システムを作るには

おうどん
記事: 20
登録日時: 2017年7月11日(火) 18:44

好感度システムを作るには

投稿記事by おうどん » 2018年8月31日(金) 20:51

今作っているゲームで、キャラクターの好感度システムを導入したいと考えています。
例えば贈り物をした時にそのキャラクターの変数を操作する設定をする、という所までは理解出来たのですが、キャラクターが複数いる場合、どういったイベント設定をすればいいのかがわかりません。
また、アイデアとしては一緒に戦闘をしたメンバーだけ好感度が上がる、というシステムも考えていたのですが、こちらの設定は難しいでしょうか。もしやり方があれば、教えて頂ければと思います。
よろしくお願いします。

ワタベ
記事: 78
登録日時: 2015年11月11日(水) 14:43

Re: 好感度システムを作るには

投稿記事by ワタベ » 2018年8月31日(金) 23:27

変数は複数設定できるため、
変数01:A子の好感度
変数02:B美の好感度
変数03:C香の好感度
みたいな感じに設定すれば良いと思います。
A子にプレゼントをあげるとA子の好感度が上がり、B美の好感度が下がるとか。

一緒に戦闘をしたヒロインだけ好感度を上げたいという場合は、
 ・シンボルエンカウントにする。
 ・条件分岐を使用する
で可能だと思います。

まずシンボルエンカウントで敵との戦闘処理イベントを作成。
戦闘に勝利すると、パーティーに誰がいるかを条件分岐で判定させ、
 ●A子がパーティーメンバーにいる場合
   変数01:A子の好感度上昇
 ●B美がパーティーメンバーにいる場合
   変数02:B美の好感度上昇
 ●C香がパーティーメンバーにいる場合
   変数03:C香の好感度上昇
という具合に設定します。

この際、上記のような条件分岐イベントはコモンイベントでツクっておくと、
後に変更が必要な場合に一括で処理できるので、とても楽ですよ。

いかがでしょうか?
アバター
まっつUP
記事: 1155
登録日時: 2016年8月11日(木) 15:38
お住まい: タケノコ王国

Re: 好感度システムを作るには

投稿記事by まっつUP » 2018年8月31日(金) 23:39

おうどん様

キャラクターが複数いる場合、どういったイベント設定をすればいいのかがわかりません。

これはキャラクター毎に特定のIDの変数を用意・操作するか、
アクターであれば専用の能力値を設定・操作するのがよいと思います。
追記:能力値は場合によってプラグインが必要です。
一つの変数に配列を代入する方法もありますが参照方法に制限があるのでおすすめできません。
キャラクターの好感度の設定ではなく、贈り物の処理で手詰まりになっている場合は
どういう風に実装したいかで必要な処理が異なります。

アイデアとしては一緒に戦闘をしたメンバーだけ好感度が上がる、というシステムも考えていたのですが、こちらの設定は難しいでしょうか。もしやり方があれば、教えて頂ければと思います。

何かしらの方法で戦闘終了後にコモンイベントを起動することができれば
どのような方法でも大体実装できると思います。(コモンイベントの自動実行設定が役立つかもしれません。)
アクターの能力値として扱う方法を用いている場合はより楽に実装できます。
RPGで笑顔を・・・

ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup

github
https://github.com/mattuup/RPGMakerMZ
おうどん
記事: 20
登録日時: 2017年7月11日(火) 18:44

Re: 好感度システムを作るには

投稿記事by おうどん » 2018年9月01日(土) 19:00

ワタベ様、まっつUP様、ありがとうございます。
なるほど、変数を個別に用意してイベントを作ればいいんですね。
戦闘での好感度上昇についても、教えていただきありがとうございます。コモンイベントで条件分岐をさせておいて、戦闘終了後に自動的に動くようにする、ということで合っているでしょうか。
贈り物の仕方についてですが、会話の選択肢で特定のアイテムを表示し、アイテムと引き換えに好感度を上昇させられたらと思います。
変数はいまだに使いこなせず悩んでいたのですが、お二人のアドバイスで何となくどんなものか分かった気がします。ありがとうございました!
dimholz
記事: 42
登録日時: 2017年10月19日(木) 01:15

Re: 好感度システムを作るには

投稿記事by dimholz » 2018年9月07日(金) 01:57

Moogle_X/Actors Friendship System
https://wikiwiki.jp/doublingc/Moogle_X/ ... p%20System

このプラグインを使えば、おうどん様が思っておられるようなものが作れると思います。
上記のサイトに詳しい使い方の解説があります。
初心者なりにですが手探りでやり方が解った事をざっくり書かせていただきます。


まずは、好感度をの基点となるキャラの登録をします。
例えば主人公のアクター番号が1番だった場合
プラグインコマンドで

AFS Show Leader 1 

と入力する事で基点とすることができます。(下記URL画像でいうアクラという項目)


アクター番号が1番を主人公として、アクター番号2のヒロインの
好感度を見られるように登録したい場合は
プラグインコマンドで以下の命令を入れることで

AFS Show Friend 2 Leader 1 

主人公(アクター番号1番)でヒロイン(アクター番号2番)が
追加されます。

https://imgur.com/a/Akd8FGQ

画像の例で言うと、主人公アクラ(1番)に対して仲間のパーラ(2番)、ククル(3番)、リーザ(4番)
セラーナ(5番)の好感度が見られるようにするには

AFS Show Friend 2 Leader 1
AFS Show Friend 3 Leader 1
AFS Show Friend 4 Leader 1
AFS Show Friend 5 Leader 1

の4つ個別にプラグインコマンドで入力すれば出ます。
また、ククル(2番)に対するリーザ(3番)の好感度を表示したい時は

AFS Show Friend 3 Leader 2
とすれば表示されます。(アクラの下にククルの項目が追加されます) 
このプラグインコマンドは入力した時点で表示されるので
仲間が入ってきた時に入れると良い感じです。
(仲間になっていないのに好感度だけ見える状態を回避するため)
   

主人公(1番)に対するヒロイン(2番)の好感度を100ポイント上げるには
プラグインコマンドに

AFS Gain 100 Friend 2 Leader 1 
とすれば100上がります。-100にすれば100下がります。

好感度にレベルを設定する
アクターのメモ欄に

<AFS Max Level: 10>
と入力することでレベルの設定ができます。
上記はMaxLvは10ですが、200に代えると200になるはずです。
アイテムを渡すイベントでこのコマンドを使うと良さそうです。
あと基点に設定したキャラと好感度が見えるように登録したキャラが
一緒に戦闘することでもポイントが入っていきます。
好感度の増減の処理は内部で行われるため

http://ytomy.sakura.ne.jp/tkool/rpgtech ... ation.html

などのプラグインを使ってプレイヤーに解りやすくすると
良いかもしれないです。


どれくらいのポイントで好感度のLvが上がるか?
同じくキャラクターのメモ欄に

<AFS Exp: 10, 20, 30, 40, 50 ,60, 70, 80, 90, 100>
と入力することで必要経験値が設定できます。
左からLv1だと10~ Lv8なら80という具合だと思います。

かなり長文になりましたが、お役に立てれば幸いです。

“MV:質問” へ戻る