|More player characters options at game start|
|Click here for more tutorials!|
By default, Pokemon Essentials will ask for the player's gender in the game intro. While this is perfectly functional, it gets very boring to see the same two characters (Red and Leaf). If you only want to replace the existing sprites, it is easy to alter the player character sprites.
Step 1: Sprites
Find or create sprites for the new character. Make sure that you make one of each of the character sprite files, and place them in the same folders where the existing sprites are. If you do not have sprites yet, you can make copies of the existing boy or girl sprites and rename them.
For the purposes of this tutorial, we will be adding "Techno", a character which I have crudely cobbled together from the "boy" sprite and gary's hair. I have deviated from the naming scheme of the existing sprites in order to make the files easy for me to find. All of the files being with "techno_" and with their function ("intro", "walk", "surf_offset", etc.).
Don't forget to put your intro sprite into the Graphics/Pictures folder so that it can be used for the introduction script. You will need to put the trainer card sprite in the Graphics/Character folder and rename it once you know the id for your trainer type.
Step 2: Trainer Type
Define a new Trainer Type using the External Editor or by editing the PBS file trainertypes.txt. Player character trainer types are typically called "Pokemon Trainer" (you will have to set the internal_id property); the first four trainers in the Pokemon Essentials package are trainer types for Red, Leaf, Brandon, and May. If you directly edit trainertypes.txt, don't forget to update the numeric id at the beginning of the line. If you are really patient, you can insert the new pokemon trainer immediately after the existing 4 and update the ids of every other trainer type.
The trainertypes.txt line for Techno looks like this:
Now that we have the trainer id (72), place the trainer card sprite into the Graphics/Characters folder, and rename it to trainer72.png.
Step 3: Metadata
Edit the Metadata for you new player character using the External Editor or by editing the PBS file "metadata.txt". If you plan to add multiple player characters, it may be easier to edit metadata.txt directly so that you can copy and paste lines of text. If you edit the metadata.txt, be sure to add you new trainer immediately after the line starting with PlayerB
The metadata.txt line for Techno looks like this:
Step 4: Editing the intro script
Open RMXP, and open the Intro map. Open the event tile which is located in the upper left corner of the map. Roughly 2/3 of the way through the script, look for this line:
@>Text: \bAre you aboy, or a girl? @>Show Choices: Boy, Girl
Change the first line to something like this:
@>Text: \bWho are you?
The next line will control the choices presented to the player. You can set up to four. When you add options, additional blocks of code will appear below. Each block will start with "When [OPTION]", and be followed by a series of commands to execute if the player makes that selection. The block for "Girl" looks like this:
: When [Girl] @>Comment: initializes player 1 (PlayerB) @>Script: pbChangePlayer(1) @>Show Picture: 3, 'introGirl', Center ....
Since we are adding Techo as PlayerC, we need to change the new block to look like this:
: When [Techno] @>Comment: initializes player 2 (PlayerC) @>Script: pbChangePlayer(2) @>Show Picture: 3, 'techno_intro', Center ....
And that's all! Next time you start a new game, the game will show your new player character options.
More than 4 player characters
If you want to provide more than 4 player character options, you will need to make nested "Show Choices" statements. Let's say, for example, we want to have a section for official male characters, a section for official female characters, and a section for custom characters. You could change the the entire code block to look something like this:
@>Text: \bWho are you? @>Show Choices: Boy, Girl, Custom : When [boy] @Show Choices: Red, Blue, Brandon : When [red] @>pbChangePlayer(0) : When [Blue] @>pbChangePlayer(3) : When [Brandon] @>pbChangePlayer(2) : When [girl] @>Comment: looks the same as [boy], but different contents : When [custom] @>Comment: looks the same as [boy], but different contents : Branch End
Make sure that the numeric id in pbChangePlayer matches up to the correct player option. PlayerA is 0, PlayerB is 1, etc.
More than 8 player characters
By default, you can only define 8 player characters in the scripts. If you want to add more, KitsuneKouta wrote a lovely tutorial on adding more player characters which details how to expand the maximum number of trainers.