ShootersForever.com Forum Index

GoldenEye 007 Nintendo 64 Community, GoldenEye X, Nintendo 64 Games Discussion
GoldenEye Cheats, GoldenEye X Codes, Tips, Help, Nintendo 64 Gaming Community


Moving + Extending MP / Character Tables...
Goto page Previous  1, 2, 3, 4  Next
 
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department
View previous topic :: View next topic  
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Sun Jul 15, 2018 1:01 pm    Post subject: Reply with quote Back to top

If it can at least look for the important addresses and read from there / export correctly, that would be helpful, at least for me and any potential patch I release. I can help get you the spots, if needed.
 
View user's profile Send private message Visit poster's website
SubDrag
Administrator
Administrator


Joined: 16 Aug 2006
Posts: 6118

 PostPosted: Sun Jul 15, 2018 2:53 pm    Post subject: Reply with quote Back to top

I'll probably need a sample patch PM'd so I can make sure it can do that.
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Sun Jul 15, 2018 3:10 pm    Post subject: Reply with quote Back to top

I will try to make up something tonight. If I can't, it won't be for probably close to a week, unfortunately.
 
View user's profile Send private message Visit poster's website
prtenj
Agent
Agent


Joined: 31 Oct 2019
Posts: 7

 PostPosted: Fri Nov 15, 2019 9:05 pm    Post subject: Reply with quote Back to top

SubDrag wrote:


So the order must be:
WARNING - GUARDS MUST ALWAYS BE MOVED, THEN HEAD/HAT THEN OBJECTS, or ROM is corrupt. You can set things to the original values, they don't need to be extended, but do need to be moved in that order. You cannot just do objects for example.
1) Open 7 meg Zoinkity ROM in Tools->Game Configuration
2) Delete debug data
3) Create the .txt files for the extension, I added 5 of each here and you name them to what you want for the new ones. For now, I repeated existing ones so game loads, but you would want to do new names.
Sample Guard: http://goldeneyevault.com/priv/guardnamesfile.txt
Sample Object: http://goldeneyevault.com/priv/objectnamesfile.txt
4) Open Model Details and set path to local version of the move guard chunk names.
5) Change Move Guard Chunk New Address to be where in ROM you want. If you are using a 16 meg version, you can use B0FFD000, but if 12 meg, you have to set to B0BFD000.
6) In Model Details, set the new count for, so for me, it was 55 for guards.
7) Don't change any options, and Click Move and write new ROM.
8 ) Change the move head-hat address, for 12-meg ROM to B0BF8800 and 16-meg B0FF8800.
9) Change the New End for the Move Head Hats to number of guards, 55, and then click Move and write new ROM.
10) Set path to local version of the move object chunk names.
11) Change the New Address to B0FF0000 for 16-meg ROM and B0BF0000 for 12-meg ROM.
12) Change the New Count to your new amount, 158 here, and click Move and write ROM.
13) Add your new files to the ROM of the new names.
14) Set the object/head-hat guard parameters for each of the new names as well.
15) Write ROM and it should be extended.



Hi SubDrag,

I hope you're still around replying to this forum Smile I've followed your steps on how to extend the slots for guards and heads, and I'm stuck at step 13. Do you add the new guard/head model files by simply going into Tools > Model Editor, then go to the custom slot and click Edit? That does not work for me. Am I missing something?
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Fri Nov 22, 2019 11:29 pm    Post subject: Reply with quote Back to top

I was asked about this on Facebook, and had some time to look into it. I have rewritten SubDrag's steps, with additional details and more info for adding in new files to the ROM. If you have any further trouble, please post here about it.


First of all, your ROM must be using an Expansion Pak mod of some sort. Be it either Zoinkity's 7MB patch, or Carnivorous' Footsteps patch. This is the only way you can use this particular method to extend how many characters and props there are.

Links...
http://n64vault.com/ge-misc:8-meg-goldeneye
https://carnivoroussociety.github.io/patches/FootstepsLatest.zip


1.) Go into Tools -> Game Configuration, and choose your ROM.

2.) Click the "Delete Debug Data (and J text)" button at the bottom.

3.) You'll need the full lists of model names for the C_Z characters and P_Z props. SubDrag has already supplied them at the following links. He has added 5 characters and 5 props at the end of each list. They are currently reusing other model names from the lists, to prevent the game from crashing if it tries to load something that is currently not there. Save these two following .txt files somewhere easily accessible on your computer.

Sample Guard: http://goldeneyevault.com/priv/guardnamesfile.txt
Sample Object: http://goldeneyevault.com/priv/objectnamesfile.txt

*NOTE: If you know ahead of time what you want to call your new C_Z and P_Z files, than it would be wise to use those names in your .txt files before doing the following steps. You can rename later, though. See further notes ahead on how. You can also add more entries to these lists, should 5 not be enough.

4.) Go into the "Model Details" section of the Game Configurations menu. On the right side, you should see a typing box that currently says "C:\temp\guardnamesfile.txt" inside. This is the list of character names for your bodies and heads. Find where you saved the "guardnamesfile.txt" file to on your computer, and put in the exact path location in this box.

*NOTE: You can redo the character names file with updated C_Z names anytime, if you set the new file path and click the "Rename" button. It will ask you to save a new ROM. Once done, it should now use the newer names you put into the file.

5a.) Directly beneath the typing box, you will see another one, with the words "New Address" to the left of it. If you are using a 16-meg version of GoldenEye, you can use B0FFD000. However, if you have a standard 12-meg ROM, set it to B0BFD000.

5b.) This step here depends on which ROM you are using. It affects where in RAM some data gets stored. It is important that it goes to the correct place, or else it could overwrite some very important data. Under the "New Address" typing box you changed in the previous step, you will see "RAM Address". Here is what you need to set...

For Zoinkity's 7MB Expansion: 80700000
For Carnivorous' Footsteps: 80702000

6.) A few lines down, you will see a typing box with the words "New Count" to the left of it. You must update the value to match how many C_Z models you have inside your "guardnamesfile.txt" file. If you are using the sample version from SubDrag, than set this value to 55. If you have more than that, you'll need to count them. Remember, this value is in Hex, and not decimal.

7.) Click the "Move Guard Data (Do First)" button. A window will open asking you to save a new ROM. Save it with a new name.

8a.) Next is the "Move Head Hats" section. First, you'll see a typing box with "New Address" to the left of it. If you have the standard 12-meg ROM size, put in B0BF8800. Should your ROM be 16-meg, than use B0FF8800 instead.

8b.) This step here depends on which ROM you are using. It affects where in RAM some data gets stored. It is important that it goes to the correct place, or else it could overwrite some very important data. Under the "New Address" typing box you changed in the previous step, you will see "RAM Address". Here is what you need to set...

For Zoinkity's 7MB Expansion: 80703000
For Carnivorous' Footsteps: 80705000

9.) You should see a typing box with the words "New End" to the left of it. This value must match the number of C_Z models you are using, in order for them all to be supported. So if it is SubDrag's sample, you'll use 55. If it is your own custom file, than be sure to use the same count you had for the characters earlier. Again, this is a Hex value, and not decimal.

10.) Click the "Move Head/Hat Data" button. Like last time, a window will open, and ask you to save your ROM. Again, save it under a new name.

11.) Now we are onto the props (or objects) section. On the lower right, you'll see a typing box with "C:\temp\objectnamesfile.txt" inside. This is the list of prop names for all the game objects. Find where you saved the "objectnamesfile.txt" file to on your computer, and put in the exact path location in this box.

12a.) Directly beneath that, under "New Address", type in B0FF0000 for a 16-meg ROM. For a 12-meg version, use B0BF0000 instead.

12b.) This step here depends on which ROM you are using. It affects where in RAM some data gets stored. It is important that it goes to the correct place, or else it could overwrite some very important data. Under the "New Address" typing box you changed in the previous step, you will see "RAM Address". Here is what you need to set...

For Zoinkity's 7MB Expansion: 80708000
For Carnivorous' Footsteps: 8070A000

13.) A few lines down, you should see "New Count" with a typing box to the right. Just like with the characters, you need to match how many props are stored in your "objectnamesfile.txt" file. If you are using SubDrag's sample, than put in 159. If you are using your own custom file, make sure to count them. Remember, this value is in Hex, and not decimal.

*NOTE: You can redo the prop names file with updated P_Z names anytime, if you set the new file path and click the "Rename" button. It will ask you to save a new ROM. Once done, it should now use the newer names you put into the file.

14.) Click the "Move Objects" button. As per usual, a window will open up, and you will be asked to save your ROM. Give it a new name.

15.) This is where things get a little more tricky, so I will try and break it down easily. Go into the "Stage Options" section of the Game Configurations menu. On the lower left, you will see the word "Files". To the right of it, is a selection box. We are going to start with characters (C_Z files), for your bodies and heads that your are adding to the ROM...

In the selection box, choose the first file after the last C_Z entry ("CxeniaZ"). Normally, this would be "Gak47Z" in the ROM. Once selected, look over to the right. You can see a typing box with the same file name you have selected. Above it is a button labelled "Rename Current File", and below it another button marked "Add File with Name Above". What you want to do is, type in the name of your new character file. For example, it could be "CsniperZ" or "CheadaaronZ". This will be the internal name for the character. Once you have it typed out, click the "Add File with Name Above" button. A window will open, asking you to find your file. Locate your character file (body or head), and click Open. It will add your new file into the ROM. Do this however many times you need to.

Next, you'll be doing the same thing again, but this time with your props...

In the selection box, choose the first file after the last P_Z entry ("PwppkmagZ"). Normally, this would be "Tbg_ame_all_p_stanZ" in the ROM. Type in the name of your new "P_Z" prop file, and click the "Add File with Name Above" button. Find the file on your computer, and Open it. Your prop will be added to the ROM. Keep this up however many times you need.

When done, click the "Write ROM with 21990 Mods" button to save another new ROM.

16.) You will need to update the data for your new models inside the "Model Details" section. Under "Object #" or "Guard #", scroll down to the bottom to select your newest entries. When selected, you must update the various pieces of information about them. How many images they use, the scale, bounding box volume (draw distance), etc. If this data does not match what the model uses, the game could crash while attempting to load them, or once they are rendered on screen. When done, write your ROM again.

17.) If you have a custom head model and you want to set up the hat positioning and size, choose the model from the "Guard #" list and adjust the data under "Hat Styles". Each head has six hat styles, so be sure to check them all in the list. When finished, save your ROM.

That should be everything. I was having trouble moving things a second time, however. The Editor would close on me when attempting to make some changes, at least when it came to props. There are a lot of unused props already in the ROM, so you can replace quite a few things without needing to extend this list. The characters are more important for this extension, but it really depends on how in-depth your mod is going to be. Just remember, even though you can have more prop models and bodies / heads, there is still a limit to how many files you can have overall. The final entry should be "02DF ob/ob_end.seg". There is no more room in the table or RAM for extras, so plan accordingly, and replace unused files from GoldenEye whenever possible, rather than adding more.



*NOTE: If you are using the custom EEPROM saving function supplied in the Footsteps patch, you may run into a conflict. This feature also reads / writes to the same general area of upper ROM, and problems could occur as a result of the file relocation. If you are not using the new EEPROM function, than no worries.
807000F0 - custom flag 1
807000F4 - custom flag 2
807000F8 - custom flag 3
807000FC - custom flag 4
807000E0 - custom flag 1 - last updated copy
807000E4 - custom flag 2 - last updated copy
807000E8 - custom flag 3 - last updated copy
807000EC - custom flag 4 - last updated copy


Last edited by Wreck on Sat May 29, 2021 3:34 pm; edited 4 times in total
 
View user's profile Send private message Visit poster's website
gc_artuso87
Agent
Agent


Joined: 23 Nov 2019
Posts: 21

 PostPosted: Sat Nov 23, 2019 3:34 am    Post subject: Reply with quote Back to top

This is the procedure we're looking for in the upcoming The Spy Who Loved Me 64 mod. I have tested this on a patched ROM with Carnivorous's Footstep patch and it works. We only need the character guards and heads process only. By the way, does the 2 "Delete Debug" buttons do any harm other than removing footsteps in a modified ROM, such as causing a ROM to crash or destroying any efforts made to the levels?

I also find your 100 MP characters extension useful as well.
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Sat Nov 23, 2019 7:14 pm    Post subject: Reply with quote Back to top

Delete debug is mainly used to clear out data no longer used by the regular game. The J text are the Japanese text files that aren't necessary in the NTSC version. Removing those is what opens vital file entries / space, so new characters or props can be imported. It should not harm levels or menus.

Now, I think the Footsteps patch may utilize something from the debug data, but Carnivorous would really have to be the one to give the details. Or, it might be that the patch repurposes an area of 21990 that had debug data originally, and if you click to delete the debug data in the Editor, it nulls out his new data, thus breaking certain features he has included.
 
View user's profile Send private message Visit poster's website
Carnivorous
Moderator
Moderator


Joined: 15 Oct 2016
Posts: 657
Location: Ukraine

 PostPosted: Sun Nov 24, 2019 12:14 am    Post subject: Reply with quote Back to top

Footsteps patch uses emulator TLB RODATA, do not clear debug data with a footsteps patch based ROM. If you're using the latest editor, the stage dialog will show a warning when it detects a footsteps patch based ROM when attempting to delete debug data.
Quote:
807000F0 - custom flag 1
807000F4 - custom flag 2
807000F8 - custom flag 3
807000FC - custom flag 4
807000E0 - custom flag 1 - last updated copy
807000E4 - custom flag 2 - last updated copy
807000E8 - custom flag 3 - last updated copy
807000EC - custom flag 4 - last updated copy


807000E0-EC are private flags, they should not be changed. Only 807000F0-FC should be changed via custom command 2BFE. For the latest footsteps patch, free RAM starts at 80700120 to 807FFFFF. If the ROM has a expanded animation table, free area is between 80700120 to 807BFFFF.

This may change in the future so be sure to check bunker's setup action blocks for more technical information.
 
View user's profile Send private message
gc_artuso87
Agent
Agent


Joined: 23 Nov 2019
Posts: 21

 PostPosted: Sun Nov 24, 2019 2:01 am    Post subject: Reply with quote Back to top

It would be a good idea to incorporate Wreck's custom MP character slots and weapon set, and SubDrags custom character slot process into an ultimate .xdelta patch. Maybe you could incorporate all this into your footsteps/expansion pak patch Carni Smile

This would be useful for anyone that's going to do an intensive mod.
 
View user's profile Send private message
Carnivorous
Moderator
Moderator


Joined: 15 Oct 2016
Posts: 657
Location: Ukraine

 PostPosted: Sun Nov 24, 2019 4:03 am    Post subject: Reply with quote Back to top

I didn't want the footsteps patch to use up all available space as it would limit some users who wish to reuse those free areas for other things (more commands, bigger sound table, etc). It's only meant to be a retail ROM with new AI commands.

I forgot to mention, when using the expanded animation feature for 7MB based ROMs, it will move over the unused stderr buffer in 21990 (starting at 2988/80023718).
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Sun Nov 24, 2019 7:32 pm    Post subject: Reply with quote Back to top

So if someone is using the newer Footsteps patch, and wants to use the character, hat and prop extension, should they add +120 to each of the listed RAM addresses for the moved tables? Like instead of 80700000, it would be 80700120 instead? So nothing ends up breaking in the Footsteps data? If not, I imagine very bad things can happen. Unless you think go higher, like +400, to be safe?
 
View user's profile Send private message Visit poster's website
Carnivorous
Moderator
Moderator


Joined: 15 Oct 2016
Posts: 657
Location: Ukraine

 PostPosted: Sun Nov 24, 2019 8:12 pm    Post subject: Reply with quote Back to top

As long as the new table is between 80700120-807FFFFF for footsteps based ROMs, or 80700120-807BFFFF for footsteps + animation expanded ROMs.

I sometimes use a few areas for new data positions, so I say 80700200-807BFFFF is a good range leaving 80700120-80700200 for custom data.
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Sun Nov 24, 2019 9:28 pm    Post subject: Reply with quote Back to top

Sounds good, thanks for the details. I will need to add some more info to the steps about the RAM locations, for when using the Footsteps patch.
 
View user's profile Send private message Visit poster's website
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Mon Nov 25, 2019 8:36 pm    Post subject: Reply with quote Back to top

OK, so I added three steps: 5b, 8b, and 12b. These are for the RAM addresses of the moved tables. There are two options, depending on which ROM you are using. The default values listed inside the Editor should be fine for Zoinkity's 7MB expansion ROM. However, should you be using Carnivorous' Footsteps patch, than you will need to add +200 to each of the RAM addresses. I have the addresses listed in the steps.
 
View user's profile Send private message Visit poster's website
gc_artuso87
Agent
Agent


Joined: 23 Nov 2019
Posts: 21

 PostPosted: Tue Nov 26, 2019 2:25 am    Post subject: Reply with quote Back to top

Hi Wreck,

I have successfully created new custom slots for 25 male heads, and added 4 heads using templates to the first 4 custom slots for the upcoming TSWLM as a test run. However, ever since this happened some levels crashed (Frigate, Streets, Train, Control, Caverns and Cradle). I wonder if this is where we hit the nail on memory issues when an Expansion Pak is not present yet. I have mentioned this on the N64vault channel via Discord and Carni refer me to ask you.

Here's a Beta testing only .xdelta patch for checking.

-link removed-
 
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department All times are GMT - 8 Hours
Goto page Previous  1, 2, 3, 4  Next
Page 2 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Cobalt 2.0 BB theme/template by Jakob Persson.
Copyright © 2002-2004 Jakob Persson


Powered by BB © 01, 02 BB Group

 


Please Visit My Other Sites: GoldenEyeForever.com | GrandTheftAutoForever.com

Got kids? Check out my Dora The Explorer site with games and coloring pages!

Our forums feature Nintendo 64 games, GoldenEye 007 N64 New Maps and Missions, GoldenEye Cheats, N64 Emulator, Gameshark, GoldenEye Multiplayer and more!

[ Privacy Policy ]