Party Changer Menu Script [RMXP] [RGSS]

When you using RMXP, you’ll notice that when the party is full then you need to take out someone in your party before adding the other character. When you have a small number of available characters, this wouldn’t be a problem as it can be solved using events and conditional branches. But what if you have a large amount of them? Let’s say about a hundred of them or so? The eventing must be soo tiring.

This script will ease you as it gives you a menu where you can change characters inside the party with characters that is available to the player with just a click.

The set up is simple. First, put this script on your game. After that, you just need to specify which characters that player can change in their party using this script call.
$partychange[Character Number In Database – 1] = true
$game_map.refresh

So, if you want to put Character number 3 to be available in the party changer menu, put this on script call.
$partychange[2] = true
$game_map.refresh

Change the value into false if you want to remove them from the menu.

To call the menu, put this on script call.
$scene = Scene_Party.new

And this is the result.

Party ChangerLooks great, isn’t it?

Version 1.2 Onwards.

The menu also has modes called Information Mode. In this mode, instead of having the bottom window full of characters, the script cut about 3/7 of the window and put a new window (I’ll call it Character Information Window) with highlighted character information displayed on it.

To use the Information Mode, simply call the menu using this code on script call:
$scene = Scene_Party.new(0,1)

And this is the result:

Party System 2

The Character Information Window is highly customizable, but I’d suggest if you want to use it to its utmost potential, you should learn on some RGSS basic scripting regarding window content and such. For those who doesn’t have any experience in RGSS scripting, you can use the Normal mode or learn to customize the Information mode a bit from some placeholder script I’ve put in the default script. πŸ™‚

The window is defined on line 435Β  under the name “Window_Profile”. Fell free to edit those if you think you’ve got some grasp of RGSS scripting. πŸ™‚

Version 1.3 Onwards.

For those, that want to have a party that’s larger than 4 people. The script also has a mode that compatible with the script that enabling the game to have a party that’s larger than 4 people.

To enable the Large Party Mode, simply call the menu using this code on script call : $scene = Scene_Party.new(0,2)

And this is the result:

MapNote that I’m not providing you guys with the Large Party Script. You need to find it yourself. πŸ™‚ Anyway, here’s a list of Large Party Script that’s been tested and compatible with this script:

– Dargor’s Large Party Script 1.3

Version 1.4 Onwards.

The script now has a lock character feature. When a character is locked, he/she can’t be added to the party or removed from the party. The locked character will have their sprite a bit transparent on the menu. To lock a character, simply use this script call.
$partylock[Character Number In Database – 1] = true
$game_map.refresh

Change the value to false if you want to unlock the character.

Version 1.5 Onwards.

The script now has a configuration to make reserved party members (the one that’s not on party but exists on party changer menu) gain EXP. Change the Percentage value on the script to determine how much EXP gained for reserved party members.

Note that locked party members aren’t getting any EXP by default. Change Locked value on the script into true, to enable the locked members to gain EXP.

Here’s the script: Party Changer Menu Script

Demo (Using Version 1.1): Party Changer Menu DEMO

Terms of Use:
1. This script can be used for commercial or non-commercial games, only if you credit me (Black Mage) properly.

Optional:
2. Put a link back to my site (burningwizard.worpress.com).
3. Tell me about the game you made. I’ll be happy to play and review your game, assumed I have some times to spare :)

Just in case you’re still wondering, the script is licensed under Attribution 3.0 Unported.

Log Change:

Version 1.7 (20 December 2016) – Bug Fix. Party members will receive the right amount of exp.
Version 1.6
(15 July 2015)
– Fix issue where the party member list is not saved on save file.
Version 1.5 (10 July 2015) – Add a setting so that party members that not included in the main party can gain exp.
Version 1.4 (4 July 2015) – Fix issue when exiting with 0 party member. Introduce Lock Character Feature.
Version 1.3 (28 May 2015) – Add Large Party Script compatibility.
Version 1.2 (19 February 2015) – Add the Information Mode.
Version 1.1 (5 January 2015) – Bug Fix.
Version 1.0 (29 December 2014) – Initial design.

Advertisements

48 thoughts on “Party Changer Menu Script [RMXP] [RGSS]

  1. Pingback: Trail of A Developer | Update for RGSS Party Changer Menu Script

  2. Thank you for this! XD
    more power! XD

  3. Is it possible to define “essential” characters? Kinda like I want the main hero to always stay in the party, but let the player choose which other chars he takes along?

    • Oh, now that I have downloaded it I feel stupid for even asking. ^^

      Great script you have made there, and great you let us use it without much usage restrictions. You are awesome.

  4. Hi, GREAT script, so useful in ts simplicity, u posted this over at GDU.Net.. i left you a message there.. too big to post here.. πŸ™‚

  5. Pingback: Trail of A Developer | RGSS Party Changer Menu Script Updated

  6. Hello, there.

    I stumbled onto your script after feverishly looking around for something that would work well with my current project, which happens to be a tactical-styled game. While this script is fantastic in all ways imaginable, I was a little saddened when I found out that it doesn’t really work well with parties with more than 4 actors.

    I included a large party script, and paired it with this one. When I go to call the script that allows me to add/remove party members, it only displays the first four actors that I added to the party. I know, however, that the other actors are being added to the party (despite the fact that they are not shown in the “current party” box) because I checked my party afterwards in the default window.

    Is there anything little that can be done to this current script so that it supports parties with more than 4 actors? I’m thinking about setting my party cap at 10~15. Fantastic script, though, very simple to use, unlike others that I have found.

    Best regards,
    – Alekian

    • I think I can add a new feature for you. Can you tell me what “large party” script that you used?

      • Thanks for the prompt response! It’s Dargor’s 1.3 Large Party script, I’ve fiddled around with a couple of them, but feel that this one is probably the most suited for what I’m trying to do.

        If you could, that would be fantastic, but only if you have the time. There are other things that need to be done before scripting *needs* to be done, so whenever you get around to it is fine, if you’re up to it. Again, I appreciate the quick response. πŸ™‚

        Best regards,
        – Alekian

    • Done. The version 1.3 is out. You can call Large Party Menu by using this code on script call :

      $scene = Scene_Party.new(0,2)

      I hope you like it. πŸ™‚

      • Wow.

        I must say, I’m –extremely– impressed with everything you have done. You have no idea how much I appreciate your work, as well as your prompt responses.

        For a while, I was floundering around trying to find a script that worked for what I was looking for, and you came to the rescue in a heartbeat.

        Naturally, I will give you credit (and praise!) for your work (as expected), but with your permission, I’d also like to add a link to your work/website in the credits so that players will be able to check out your fantastic work. πŸ™‚

        I can’t express how wonderful this is. This might sound a little corny, but there’s a “Black Mage” sort of class in the game that we are making, and I’d love for you to name a weapon/skill (or both) as an added appreciation for your work. Only if you’re up to it, of course.

        Thanks so much, once again for your professionalism and hard work. πŸ™‚

        Best regards,
        Alekian

      • A link or two to this site won’t hurt, I think. And that’s also applied for a name or two. I’d be honored, even. πŸ™‚

        Thanks for using my script. I’m glad that you like it. πŸ™‚

        Best regards,
        Black Mage.

  7. Excellent, feel free to PM me the ideas you have for names, there will be special weapons/armor/accessories in the game, and I’d love to have you name a skill, too. I’d be happy to dedicate a few names to you. πŸ™‚ You can also contact me at djproulx128@gmail.com. Thanks!

    Best regards,
    Alekian

  8. Wow, I can’t possibly thank you enough for this script! I’m completely ignorant when it comes to scripts and yet I was able to use this one and the script to skip messages with ease.

    With a constantly growing amount of party members in my project (26 at the moment although some are missing their skills and there’s probably 10ish more upcoming characters) this will make recruitment easier and share most events much faster so again, thanks again, I really appreciate it since, along with the ability to skip message, it’ll save me hours of work.

    If you ever wish to take a look, the project is “The Outsider Who Loved Gensokyo”, a pretty(/very) basic RPG fan game about Touhou Project which focuses mainly on the plot.

  9. Hey there! I happen across your script by accident as I was looking at the official RPG Maker site by Enterbrain as I was looking into the potential 2015 RPG Maker (from the RPG Maker 2003 trailer released recently for an official West localization) and decided to look at the script section and saw this.

    I have to say this is a REALLY impressive and simple Party Changer script and I quite like this is something I’ve been looking for, for a long time now and it’s nearly perfect.

    A minor problem I’ve encountered that if you allow every character you want to change in and out of the party you can COMPLETELY remove the entire party and exit the menu and you have no Avatar to move about as the party is empty making you an invisible player.

    You might want to fix that so you have to have at least ONE character in the party before exiting the menu so avoid this problem other than locking the one party member you can’t change out. It would be nice to have a lock icon on the party member you can’t switch out due to events or how you scripted it in.

    Is it possible to have something similar to Tales Of where you can change which character you want as your current Avatar like switching from Lloyd to Kratos while Lloyd is still in the first party member slot. Just curious.

    Anyway keep up the good work! ^_^

    • Right. I was forgetting this 0 party member problem as this is already solved in my other custom party script. Thanks for pointing it up. I made that the player can’t exit the menu if they have 0 party member, and voila, the problem is solved.

      I’ve released version 1.4, where the previous problem is solved, and introducing lock feature.

      About the avatar switching. Yes, it’s possible to write a script that work like that. However, I’m not up to the task yet, as I haven’t found any good use of it yet. :p

      • Oh wow! I wasn’t expecting a respond to that so soon! Any thanks, this is really amazing! I’m loving your script and these extra features are perfect!

        You can toggle Party Member lock on or off for story event purposes by switching the value from True to False, right?

        Anyway thanks for the quick response! I will definitely let everyone know about this amazing script and give you credit for using it if you don’t mind. πŸ™‚

  10. Hey there again! Sorry to bother you on the script again, but a thought occurred to me regarding the party members in the “Reserved” section of the Party Change list.

    They don’t receive EXP, right? Well I was thinking it might be nice if they got like half of the EXP from battles while sitting in the Reserved so you can level up all of your party members (if you have like over 100 party members at the same time) instead of those in the Active Party list.

    Though I suppose you can switch one or two party members around and grind with your two most powerful party members on the high level areas and earn EXP for the Party Members in the Reserved section.

    Just a though like I said, if you could add in the feature to earn half the EXP or a quarter (allowing the person to edit the value as they see fit) that would be great. If not, well no loss really. Thought it would be nice to have for this amazing script already.

    • There. Version 1.5 is coming out. πŸ™‚
      You can set how much the exp that the reserved party members gain by percentages. Note that the final value is rounded down.

      Also, there’s a setting to determine whether locked members gained exp or not.

      • Damn, you work! 0_0

        Oh yeah there was a question I wanted to ask but forgot to mention it. Say if you have two different events that only one of the other occur depending on your party.

        For example; You need to have Mark, Bruce, Hilda, and Mary in your party for Special Cutscene 1 to happen but if you want Special Cutscene 2 to happen you need Mark, Bruce, Hilda, and Georgia in your party.

        Now if you use this script and have them set to “true” in both your Active and Reserve party and Georgia is in your Reserve does Special Cutscene 1 happen without Special Cutscene 2 glitching and vice versa if Mary is in the Reserve seeing as SC1 condition check comes first.

      • The party in reserve are not included in a party that’s recognized by RMXP. To make something like that, you need to check the content of $partychange (and $partylock if necessary) whether the value is true or not and met your criteria for the event to be executed first.

        After you done the above, you just need some understanding about if else condition to make sure that both event aren’t glitching each other.

        tl;dr, yes it’s possible to do that, but you need some understanding about how things work in here.

        If you’re asking how to do that or how to understand how the things work, I’m afraid that I might not the best teacher, as I’m a self-taught programmer myself. You might get a better answer if you ask things like this on the official forums, such like rpgmakerweb.com

  11. *From my previous message asking about Party and Special Cutscenes with them.

    Sorry to constantly bothering you about your Party Change script and with my questions, but I like to know.

    Please and thank you for your time. I’m pretty sure you have many things to do aside from constantly answering a single person’s request.

    • Don’t worry about it. As long as your problems are likely to occur on many other peoples, I’ll do my best to assist that so no one needs to repeat the same question again. πŸ™‚

      • I see, thank you for answering my questions. Sorry if they were a little tough.

        The idea was to have an option to bring up if you want a Specific Party Team or manual make your own and if you pick the Specific Party Team option you’re given a list of who you want and after that you’re locking into that team and then everyone else is excluded from the Reverse Party.

        Until you go back to the Party Change option and it checks to see if you have a Specific Team or not and ask if you wish to remove the specific team and have all your party members back to change again.

        Thus you’re allowed to activate what Cutscenes you want if you have the specific Team to activate it.

        I was doubling back with you to see if the initial script you had recognize the Reverse Party Members are part of the Main Team and if not and only the Main Party Members are then there would be no need to do what I mentioned above.

        Though it sounds like a “no” when you described it above so I have to set up this method to make work. Right? Unless I misunderstood.

      • I’m not quite understand with these specific party and manual party things. However if your question is whether the reserved party are counted in the main party or not, the answer is no. So yeah, you’ll need a certain method to achieve whatever you want to achieve.

  12. OK… wait? Well truth be told I’m helping my friend with his Touhou RPG Project and there’s certain events that play out during who’s in the party.

    One cutscene have Mokou, Kaguya, and Keine appear at Youkai Mountain along with the MC and that’s them in the main party.

    However there’s another event in the same spot that plays the Eientei Trio scene and that event plays if Alice and Mystia or the Tengu Trio are in the party instead.

    So if I have the MC, Kaguya, Mokou, Keine in the “main party” and Alice, Mystia, Momiji, Aya, and Hatate in the Reverse Party… the only event that will play is the “Eientei Trio” even as they’re in the party as well, but in the reverse, and so the other events won’t play as RMXP doesn’t recognize them?

    That’s what I wanted to do, but your last message suggested “No” I don’t need to do anything special and leave the events as is to get the desired result as long as I have the characters in the main party for the event I want. Is that right?

    • The only party members that won’t be recognize by RMXP is the one in reserve. So, yeah, if you’re bringing MC, Kaguya, Mokou, Keine in the β€œmain party”, their respective event will play of course, while the others won’t.

      Hope this clear several things πŸ™‚

      • Thank you! That’s what I wanted to know and I’ll let my friend know about it as well. ^_^

        Though he dislike how his current Party Events are played out (before finding your script) so he might change it into what I suggested with my “Specific Team” method trick using events.

        Once again thank you very much! Sorry to bug you constantly like this. ^^;

  13. Hey there! Sorry to bug you again, but my friend has a little problem using your Party Change script that crashed his game. Wasn’t sure if the loads of events he had or he used the script wrong caused the error, but here’s his quote:

    “Well, let’s see. I put the current script. After wards I used the standard magic circle to allow to swap party members. For that I made an event and put the script: $scene = Scene_Party.new to call the party swapping.

    Each party members when they join has this script put down to make them available in the party menu: “$partychange[54] = true
    $game_map.refresh” whereas the number is the ID of the character.

    Something tells me I’m doing it wrong or a part of the script string doesn’t memorize it or prevents it to load upon leaving the game.”

    “Huh, interesting, it’s possible to combine a string of event long enough with the script that it actually crashes the game lol. I had 4 events in a row and the script and the game crashed. I added a 5 frame wait and it fixed it.”

    “omg and now I can’t work on the project.
    For some the game doesn’t save party members”

    “They’re added but once I quit and restore the game they’re no longer in the menu. Fortunately I have a backup version to restore all events but for the time being I need to figure out the problem.”

    Sorry if it’s not much to go by, but do you think you can help?

    • Ah, right. The party doesn’t get memorized on the game after you save your game and load it back. I forgot to integrate them in the save file. Thanks for letting me know this. I’ll fix them ASAP. πŸ™‚

      About the crashes, I’m not sure what cause it, as I don’t know the main cause of it. I can help if you could tell me how to set the event so that the error can be replicated.

  14. Thank you once again for a quick response and I’m glad to point out a very significant problem with your awesome script early on. Anyway my friend told me this:

    “Oh it’s easy. Just open the script. Write 100% at

    # Get the EXP Value
    exp = 0 <——— (Over here)
    for enemy in $game_troop.enemies
    # If enemy is not hidden
    unless enemy.hidden
    # Add EXP and amount of gold obtained
    exp += enemy.exp
    end
    end

    The script line for this are 573-581. Still I'm 100% sure (pun not intended) it's me who is doing something wrong. I did nothing else under the reserve party exp portion of the script.

    Basically after the fight the game crashed."

    Truth be told you weren't quite clear where to put the % percent chance to allow Reserved Party members EXP. Was it the top one that mentions the percentage or the one on the bottom?

    And to get 50% EXP to Reserve Party you set the value to 50, right? Wasn't sure what really.

    Please respond as soon as you can. I'll let you know if there's anything else you need to know.

    • Actually, there’s no need to put the %. I have them converted into percentage immediately somewhere in the script. Also, the place where you put the percentage is the one at the top. Perhaps I should bold the “Percentage” instead of having it start with capital letter. :p

      Oh, and version 1.6 is up. I’ve fix it so that the party can be loaded. πŸ™‚

  15. Wonderful, everything is working perfectly. A quick CTRL+F allowed me to find where to modify the EXP gain. Amusingly enough, I somehow managed not to spot it while scrolling down the script.

    Thanks a lot for such a quick fix for the party memorization. I’ll definitely remember to give proper credit. I greatly appreciate your hard work and your willingness to communicate to fix lil’ issues like these.

  16. How do I shut off the character info window? I just don’t need it.

    • Use $scene = Scene_Party.new
      instead of $scene = Scene_Party.new(0,1)
      to call the menu.

      • I did figure that out, thanks though. Works like a dream, I originally was only going to let the player choose 4 characters for the whole game cuz all the condition branches take too long but now I can have all of them and force the player to train everybody for a split final battle. Yay :).

  17. I tried using your script but on line 695 it gave me an EOFerror. I’m not sure how to fix this or even if it can be fixed.

    • Is the error happened during loading file? And does the save file already exist before the script was used? If yes, you can’t use those save file, since the script made some alteration on the save file and the old rmxp save file didn’t have them, thus create the error.

      If not, maybe you could put more details regarding the error and give some demo on how to reproduce the error so I can fix it right away. πŸ™‚

  18. Sorry to bug ya, but I have a friend using your code here and he can’t seem to get the code to fully work. The menu works fine, however if he adds a character to add to the menu it gives a “syntax error” on said line(54).
    It’s mind boggling to us, the codes we have been using for line 54:

    $partychange = [009] = true
    or
    $partychange[009] = true
    or
    $partychange = [009] =true$game_map.refresh

    etc.and we have even tried ridding the 00’s entirely.

    Anything you can help us with about this? It will be greatly appreciated, thank you.

    • $partychange[009] = true
      or
      $partychange[9] = true
      should work. Can I have a look at the game’s demo version where the error can be replicated? Upload it on some web storage like mediafire or something. Dropbox works fine too.

      EDIT: Ah, I guess I know what’s going on. You’re changing the line 54 of the script, right? If that’s what happened, return it to its original script, lol. When you want to add character(s), you do it by writing the command in a script call from RMXP event, not from the script editor. I hope this clear your problem. πŸ™‚

  19. Hello! ~

    The script has been working really well ever since I’ve been using it but at recently, someone pointed out that all party members added with the script receives more EXPs than normal. I originally had it so that even reserve characters would get full exp but it turns out that characters in the party gets normal exp + the percentage that has been set.

    I’ve tried tweaking a few things and at some point it seemed that party members were back at getting normal EXP but I noticed the issue went on afterwards.

    I assume I’m doing something wrong here so I was wondering if you could tell me how to solve this issue please.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s