Swapping Party Formation using Events
Suppose your story is at a point where a particular actor must be the leader. There could be any number of reasons why you’re forcing the leader to be that actor: maybe your game has a mechanic where the leader can use a specific skill on the map, and different actors have different skills available. Maybe you just want that actor to be a leader.
In any case, you want the leader to be a specific actor in the party, so you may need to perform a party formation swap. But how do you do this?
There are several ways to accomplish this.
First, you could prevent the player from moving forward until they change the party formation, as I show in this video
But that might be annoying. Alternatively, you can use script calls.
Game_Party
has a method called swap_order
which takes two indices. When you call this method, the actors at the specified indices will be swapped.
Let’s say our party formation looks like this:
But because we are currently hunting slime, we would like Yuki the Slime Hunter Samurai to take the lead. We will need to know a few pieces of information
- What index if Yuki currently at? Basically, we want to know her position in the party
- Which index will we change it with? The leader.
The leader is easy: it’s index 0.
The less trivial part is to figure out the correct index we want to swap it with. To do this, we will use a method from Game_Actor
called index
, which returns the index of that actor in the party.
Assuming Yuki is actor 2, the script call looks like this:
idx1 = 0 idx2 = $game_actors[2].index $game_party.swap_order(idx1, idx2)
Once you make that script call, the party formation will change as you need.
What can you do with the swap_order
script?
Spread the Word
If you liked the post and feel that others could benefit from it, consider tweeting it or sharing it on whichever social media channels that you use. You can also follow @HimeWorks on Twitter or like my Facebook page to get the latest updates or suggest topics that you would like to read about. I also create videos showcasing various RPG Maker techniques on my Youtube channel.
I tried doing this in MV, but an error pops up saying “$gameParty not defined”.
hello, nice one! what if i want to force the order of the formation with actor 1 being party member 0, actor 2 party member 1, etc?
if use swap i need to know the position of each actor in the formation, i can use $gameParty.leader() === $gameActors.actor(x) to check who is leader, but how to check who is member 1, 2, etc ? thank you
How can I do this with RPG Maker MV?
Try this: https://twitter.com/HimeWorks/status/669977573850349568
Maybe, this is an odd question, but
In the picture above, you managed to hide Shinki’s level, HP, MP, etc, with ???’s
How did you do that. I’ve always wondered how to do that?
I used a script to draw ????’s instead of the actual numbers.