Supports: Fire Emblem Style

BloodletterQ

Chaotic Neutral Assassin
Veteran
Joined
Aug 15, 2012
Messages
1,534
Reaction score
1,177
First Language
English
Primarily Uses
N/A
This is something I'll have to get creative with, possibly using Yanfly's Common Event Menus, but let's assume that I wanted to create something similar to Fire Emblem's Support system wherein fighting close to each other (in this case, the same party being that this is turn-based) would then enable a conversation between the two characters who have fought together. I'd think that a variable could go up a certain level until I have in the Support option (which would be done through the aforementioned plugin) 


Here is what I think I'll need.

  • Yanfly Common Event Menu
  • Variables for each support level (IE. Harold x Therese)
  • Variable for battles each character fights together (IE. Harold x Therese gain a point after each battle in another variable)
  • Variables for the amount of supports reached should I decide to cap the amount of support levels



Here are some questions.

  • Would I create a status effect for each type of support and level?
  • Should I ask on the support forum (more below) if there's a way to check for active battlers in the same party so that after battle the support rank can go up as well as enable the respective status effects that would be the result of being with an ally?



Oh and mods forgive me, but if you feel that this is more of a request for help, would you kindly notify me if I'm in the wrong spot? I feel like I might be asking for help instead of just theory crafting. I'm having doubts as to whether I'm in the right forum.
 
Last edited by a moderator:

DreamX

Veteran
Veteran
Joined
May 30, 2015
Messages
816
Reaction score
826
First Language
English
Primarily Uses
I would suggest using Yanfly's auto passive states with a script condition like this for a state:


<Custom Passive Condition>
if ($gameParty.battleMembers().length >= 2 && $gameParty.battleMembers().contains($gameActors.actor(w))
&& $gameParty.battleMembers().contains($gameActors.actor(x))
&& $gameVariables.value(y) === z) {
condition = true;
}
else {
condition = false;
}
</Custom Passive Condition>


w being the id of the one of the actors, x being the id of the other actor, y being the associated variable for relationship level, and z being the required relationship level. Do for both actors and every relationship level.


In this example, if they are both battle members (party members who are set to fight in battles) then they will both get the state. If you need the state to only appear in battle you can check that with $gameParty.inBattle()


As for gaining relationship experience for fighting in battles together, the best way is to do so with a script that is performed as battle victory.


If you're using my Victory Aftermath Extension, you can put in this script condition in a conditional branch of the common event you call


$gameParty.battleMembers().contains($gameActors.actor(w))
&& $gameParty.battleMembers().contains($gameActors.actor(x))


If this evaluates true you perform the necessary operations like increasing one or more associated variables.
 

BloodletterQ

Chaotic Neutral Assassin
Veteran
Joined
Aug 15, 2012
Messages
1,534
Reaction score
1,177
First Language
English
Primarily Uses
N/A
I would suggest using Yanfly's auto passive states with a script condition like this for a state:



<Custom Passive Condition>
if ($gameParty.battleMembers().length >= 2 && $gameParty.battleMembers().contains($gameActors.actor(w))
&& $gameParty.battleMembers().contains($gameActors.actor(x))
&& $gameVariables.value(y) === z) {
condition = true;
}
else {
condition = false;
}
</Custom Passive Condition>


w being the id of the one of the actors, x being the id of the other actor, y being the associated variable for relationship level, and z being the required relationship level. Do for both actors and every relationship level.


In this example, if they are both battle members (party members who are set to fight in battles) then they will both get the state. If you need the state to only appear in battle you can check that with $gameParty.inBattle()


As for gaining relationship experience for fighting in battles together, the best way is to do so with a script that is performed as battle victory.


If you're using my Victory Aftermath Extension, you can put in this script condition in a conditional branch of the common event you call



$gameParty.battleMembers().contains($gameActors.actor(w))
&& $gameParty.battleMembers().contains($gameActors.actor(x))


If this evaluates true you perform the necessary operations like increasing one or more associated variables.
I think I posted in the wrong board but then I'm also theory crafting. I'm gonna report myself but that's another fine point you made.
 
Last edited by a moderator:

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Couple hours of work. Might use in my game as a secret find or something. Not sure. Fancy though no? :D
Holy stink, where have I been? Well, I started my temporary job this week. So less time to spend on game design... :(
Cartoonier cloud cover that better fits the art style, as well as (slightly) improved blending/fading... fading clouds when there are larger patterns is still somewhat abrupt for some reason.
Do you Find Tilesetting or Looking for Tilesets/Plugins more fun? Personally I like making my tileset for my Game (Cretaceous Park TM) xD
How many parameters is 'too many'??

Forum statistics

Threads
105,867
Messages
1,017,061
Members
137,575
Latest member
akekaphol101
Top