GoldenEye Character Editor
The GoldenEye Character Editor edits the 64 different selectable characters in the multiplayer character select menu. After editting, it generates a codelist used with either a GameShark or any emulator with cheat support. It also allows you to save and load records of your favorite changes.
You select one of the 64 characters from the Character drop-down menu at the top of the window. You can change the character's body with the Costume menu, and if the body does not have a head attached you can also select one from the Head menu. The character's gender is set with the Voice menu, and the player's perspective can be set with one of the options in Height.
The menu option itself can also be editted. The character photo that appears on the select menu can be changed from the Photo box. Altering the text requires two boxes. The upper Name box allows you to select a text bank to draw text from. Although all of the valid text banks in the game are listed, it should be noted that not all will necessarily work in-game. The only ones guaranteed to function correctly are:
- Multiplayer Menus
- Weapon Set
- Cheat Options
Once the text bank is chosen, select the specific line of text from the lower Name menu.
When you have finished editting, press the Generate Code! button to create the codelist to affect the changes in the game. You can also save the current modification using the Save button. Manage and use saved heads using the Load menu.
The various data fields use information stored in the dataCE.ini file. You can edit this file in any text editor to add, remove, or edit entries. The various data fields are explored below. A semicolon (;) can be used to comment out a line of text in the file.
- This corresponds to the address 8002B198 in the N64's memory at runtime. It is the address that the multiplayer character select menu starts at. Under normal circumstances, you wil never need to edit this address.
This lists the 64 (0-63) entries that appear in the Character to be editted menu. Take care editting this table, as it assigns the values that appear in the other drop down boxes when a character slot is selected.
- The value before the equal (=) sign is the entry number in the menu, spanning from 0-63. The text must match an entry in brackets  in the character data section below this table.
Character Data TableEdit
These entries set the default values for each entry when selected from the Character' list. The name in brackets  should match the name in the [Characters] section.
- This name matches one in the [Characters] table to recall the data when an option is selected.
- This is the text string displayed on the menu. It matches the text found in the text tables later in the file.
- Use 01 for a male voice, 00 for a female one. Matches entries in the [Voices] section.
- This is the image used on the character select menu. The value matches that in the [Photos] section.
- This sets the character's body to an entry found in the [Constumes] table.
- This sets the character's head to an entry in the [Heads] table. Even if the body has its own head, this entry is required.
- The character's point-of-view, sometimes called perspective or height. This is a floating point number, broken into two-byte clumps to be easier divided into codes. If you make a unique value in this area, add it to the [PoV] section as well.
This table lists all the entries found in the upper Name menu, and links them to the internal code used to recall specific text banks. These are staticly set in the 21990 primary compressed file, but missing entries can be added, text can be manipulated, and with the use of additional codes new text banks can be assigned.
- The value before the equal (=) sign is the internal text bank number and should not be editted. The text afterward is used to link each text bank to its text values listed below this table. It also acts as a description of each text bank in the editor's drop-down menu.
These list all the text that appears in each text bank. Each text bank uses the name of an entry from the [NameCatagories] table above followed by the word Names. So, for the entry in [NameCatagories] 08=Archives, there is an entry in the text bank reading [ArchivesNames]. The text itself is for display-purposes only. Editting it does not affect the code lists created. If you create a custom text table, it can be handy adding it here.
0800=Captured by the Russians...
- The value before the equal (=) sign is the text ID for a string of text. You use this ID to display the text after the equal (=) sign. You can edit the display text as you please.
These are the options in the Voice menu. There are only two valid options, 01=Male and 00=Female, but you can edit the text displayed in the menu.
- The value on the left is the code to set the voice, and the text on the right is displayed in the editor's menu.
This composes the list of character select images. The only way to alter the images themselves is through ROM hacking, but the text labels can be editted from this menu. It should be noted that options 10, 11, 12, and 13 are not stage select images but the effect of two tables being set one after the other in memory.
- The value before the equal (=) sign is the internal value for the image and should not be changed. The text afterward is only used in the editor and can be editted to suit your aestetics.
This sets the bodies that are selectable from the Costume menu. In addition, each costume can be followed with the string ,yes to indicate that the body also contains a head. This will grey out the Head option. Additional entries can be added if new bodies are added internally to the game. The All Bonds patch does this, for instance.
- The value before the equal (=) sign is the internal value for the body. This typically shouldn't be editted. The name following the equal sign can be set to whatever you desire. If the body contains its own head, ,yes follows the name.
This is a list of all the heads that will appear in the Head menu. New entries can be added as well. In particular, an entry for a random head can be appended to the end of the list.
- The value before the equal (=) sign is the internal code for the head, or FFFF (-1) if a random head is used. Typically, these should not be altered unless internal changes have been made. The text following the equal sign is the description in the editor and can be changed at-will.
This lists all the entries in the Height menu. It sets the point of view for the character, also known as perspective or height. In order to use a certain value, it must be added manually to this list. Each is a floating-point number.
3F80 0000=Average Height
- The value on the left is a floating-point number with a space between the second and third byte. You can convert these values using any float calculator, such as the one contained in the GoldenEye Setup Editor. Remove the space, then copy the value into the hex field.
- The text on the right can eb set to whatever you desire. It only appears in the drop-down menu.