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


Room Pointers

 
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department
View previous topic :: View next topic  
PaD
Agent
Agent


Joined: 20 Dec 2005
Posts: 72
Location: Datteln, Germany

 PostPosted: Thu Apr 20, 2006 4:58 pm    Post subject: Room Pointers Reply with quote Back to top

I tried to figure this myself (I tried 2 years ago already Razz), but now I definitely give it up.

How do room pointers work?
How do I get them?
Something that every (new) GoldenEye hacker wonders...

assuming I want to make a respawn in Room 20, how do I find the correct room pointer?
 
View user's profile Send private message MSN Messenger ICQ Number
kcghost
Hacker
Hacker


Joined: 18 Jan 2006
Posts: 551

 PostPosted: Thu Apr 20, 2006 6:47 pm    Post subject: Reply with quote Back to top

Room Pointers are a pain in the you know what. Forget Room 9, or 23 or whatever, it doesn't go by that at all. There is no possible way to caclulate a Room Pointer based on debug mode. Its what frustrated me at first when I did Archives Fullzone. X, Y, and Z can all be calculated (deimal to IEEE), but Room cannot. You have to get it staright from a coordinate address that changes as you move from room to room. I had Artmoney open as I made coordinates. Another note, Rooms don't mean rooms. The room pointer can change several times in the same literal room, and can cause bad respawns and weapons to not pick up if you assign a wrong room pointer. As far as finding your coordinate, I believe the pointer is (Quote from Wreck):
Here's the data you'll need to easily grab complete coordinates.

Start of player data - Pointer to current coords (Archives Multiplayer)
P1: 800CCB60 - 800CCC08
P2: 800CF5E0 - 800CF688
P3: 800D2060 - 800D2108
P4: 800D4AE0 - 800D4B88

Not sure, that might be level-specific. Of course, you can still find it the way I did. I was stupid at the time and never took any hex dumps, nor looked at any pointers (the concept confused me). Got to an area which Room Pointer you already know (try to be very specific to it, if it was from some weapon coordinate somebody else did, go exactly to it for just-in-case) and pause your emulator. Open up good-ol ArtMoney and Click Search. Open up a Hex Calc, type in the room pointer (8 digits) as Hex, but then change it to decimal (ArtMoney searches in decimal). Go back to ArtMoney, Exact Value, Interger, paste in that decimal value, search. If more than, say ... 4 or 5 show up, or a major amount, use the filter method. I would move around a bit in the game, come back to the smae spot, filter>unknown value>was not chnaged. Then move to a spot in which the room pointer WOULD change, filter>was changed, etc. Once you have the address (or addresses, there was more than one for me for some reason) its pretty easy. Add them to the table with the green or red arrows and it will show the value (you mght wanna got hrough your options to show table values in hex) and move form place to place grabbing rooms and calculating xyz. or grabbing xyz too. Good Luck.
 
View user's profile Send private message Send e-mail
PaD
Agent
Agent


Joined: 20 Dec 2005
Posts: 72
Location: Datteln, Germany

 PostPosted: Fri Apr 21, 2006 1:10 am    Post subject: Reply with quote Back to top

yeah, that method makes sense...

though it confuses me that there isn't any list of pointers to each room or at least a pointer to the start of room data (which would be logical).
I'm searching for that room 14 in Facility and there must be a way to make somebody spawn in it...

thanks for the player data addresses though Smile
the addresses below 80100000 seem all to be non-level-specific (but that's just what I observed).

hm... I remember in some post at GSCentral (the thread in which Citadel was presented, I read it a few days ago) by SubDrag which was about room pointers... I'll try to find it again.
 
View user's profile Send private message MSN Messenger ICQ Number
PaD
Agent
Agent


Joined: 20 Dec 2005
Posts: 72
Location: Datteln, Germany

 PostPosted: Fri Apr 21, 2006 1:48 am    Post subject: Reply with quote Back to top

OK, you can "calculate" your room pointer.

example: Facility, 2P

go to address 8007B12C
that's a pointer to ROOM 1.
the following are pointers to ROOM 2, 3, 4.

so if you want a pointer to room 20 (0x14), substract 1 (because it starts with room 1, not 0!), multiply with 4 (room pointer is 1 word = 4 bytes), add 8007B12C.

pointer to room 20 is at 0x13*4 + 8007B12C = 8007B178.
it says: 801D1BB4.
go there, the 3rd byte from that address says 0x14, which is 20 Wink

EDIT:
8007B12C is a room pointer address for any level.
so this method is the method I think.

ha, finally I got it
 
View user's profile Send private message MSN Messenger ICQ Number
MultiplayerX
007
007


Joined: 29 Jan 2006
Posts: 1210
Location: USA

 PostPosted: Fri Apr 21, 2006 8:06 am    Post subject: Reply with quote Back to top

You can find room pointers much easier than that. Load up a MODDED GE level and use Bond's co-ordinates at 80069C38. Be sure to go to address 80075DOC then go to the address it gives you. Use the memory editor to start an object list block at that address using 30 on the preset TYPE which you will see as 08. After that go to 80069C38 and you will see Bond's co-ordinates. I've included an example below (The VALUES are NOT Runways just examples):

06 04 00 00 80 1D 4A C0
C4 F4 00 00 42 99 00 00
45 6F 00 00 80 1B F8 60 (The 80 1B is your room and F8 60 is your pointer) These numbers will change as you move through the level.

Load up Runway with respawns ONLY and place a block on the preset type (0Cool at preset 3C and set it to 30. When the stage loads up go to 80069C38 in memory editor (emulator) whatever....and find whatever room you need with the formula above.

Runway W Objects (Planes, Helicopters, Tanks)
Gameshark 3.30 NTSC ONLY! (NO Uploader required)
Load: Stack (Press A 3 times at Nintendo logo)
Weapon Set: Rockets
Infinite Ammo Cheat ON
Hacked by: MultiplayerX

Stage load
8002A8F7 0023
81037572 59D0
81063BF0 8009
81063BF2 E360
D102B522 0002
81063BF2 3860
D102B522 0003
81063BF2 0DE0
D102B522 0004
81063BF0 8008
81075D1C 801E
81075D1E 5254
80079C6B 0005
8102A932 0000

5 Respawn locations
811E41A8 460B (Solo start area)
811E41B0 C5AD
811E41D0 801D
811E41D2 39A0

811E41D4 45DA (Mid Runway breezeway)
811E41DC C66C
811E41FC 801D
811E41FE 2638

811E4200 45BA (office building)
811E4208 C5E7
811E4228 801C
811E422A FBE8

811E422C 4678 (Back gate wall)
811E4234 C52C
811E4254 801D
811E4256 1D58

811E4258 4610 (end of Runway)
811E4260 C6C7
811E4280 801D
811E4282 3150
_________________
http://codelegends.proboards.com/
 
View user's profile Send private message Visit poster's website
kcghost
Hacker
Hacker


Joined: 18 Jan 2006
Posts: 551

 PostPosted: Fri Apr 21, 2006 11:09 am    Post subject: Reply with quote Back to top

Heh, to each its own. Or something like that. Ill have to try that calculation method, but I have serious doubts it would work properly. I know for absolute sure that in Archives, there were many Room Pointers inside the literal rooms, and that the debug Room Number really meant nothing. The courtyard in Archives BZ for instance is Room 9. I know that room is spilt up into at least 3 sections, probrobly more. Remember, just because you can see the weapon or respawn in the place you want, doesn't mean its right. Try to Pick up the weapon, and (quote from Wreck) slap the person, if he takes damage its good.
 
View user's profile Send private message Send e-mail
MultiplayerX
007
007


Joined: 29 Jan 2006
Posts: 1210
Location: USA

 PostPosted: Fri Apr 21, 2006 11:30 am    Post subject: Reply with quote Back to top

Just load up a REGULAR multi level and go to 80069C38 and scroll down to 06 04 (or 06 06) should be on the right side for player one then another 06 04 (or 06 06) for player 2. You'll know because the values will change as you move the player. This is how I POSITION objects in my multi stages. Trust me it's the easiest way. The room pointers should be correct. Let me know how it turns out.
_________________
http://codelegends.proboards.com/
 
View user's profile Send private message Visit poster's website
Wreck
Administrator
Administrator


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

 PostPosted: Sat May 06, 2006 4:32 pm    Post subject: Reply with quote Back to top

If I have spare time later tonight, I'll try and find a more practical way of determining where a room is for any stage without needing to pull it directly from your current coordinates. Even though you'll need it in order for it to match up. As KC said, certain rooms are split up into many sections. Just because you've placed it there, doesn't mean that it's perfect. Slapping at an opponent who has spawned there (multiplayer) is the best way of knowing if you've got the right one.
 
View user's profile Send private message Visit poster's website
Wreck
Administrator
Administrator


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

 PostPosted: Sat May 06, 2006 8:59 pm    Post subject: Reply with quote Back to top

The beginning of the room data can be found here: 80040F5C.
You'll find a pointer there that directs to where the information is stored, no matter what level you may be playing. Rooms are stored in reverse order. What that means is the first one is actually the last one. Here is an example from the Complex in 2-Player Mode...

80040F5C: Points to 8018C8FC
8018C8FC: Room Data Storage

Room Data Storage
XX XX XX XX 02 88 12 2C
06 66 30 12 F8 9A 00 00
blah, blah, blah

Don't worry about those "X"s, they're only there to line it up right.
The "02 88 12" is the data used to tie the presets to a room. When converted, this is what we call the "Plinkdata". To learn more about converting, check out Zoinkity's "Object Type Data" thread. The "2C" determines the number of the room. You'll no doubt notice that there can be many pieces to one room. Depending on the size and clipping complexity, there can be anywhere from one to a hundred and up. That's decimal counting, not hex, just so you know. Count up the parts to room "29" (41) to see for yourself. Once you know the room number you need by using the Debug Mode cheat option, scroll through until you find it. Just remember, you'll need to find the correct pointer to get it working perfectly.

The easiest way to get it all in one shot, is to find your current coords. To do that, just stand in the location you like and get into the Memory Editor. Go to the address: 80079EE0 to get the pointers for every player's in-level programming. The first pointer is player one, the second is player two, and so on. To follow the Complex 2-Player Mode instructions, the first pointer should read: 800A7360. From there, add the hex amount "A8" to the address. You should be highlighting the pointer to where your current coordinates are. It may read: 8006A1B4, or it may not. Depending on whether the weapon sets or Flag Tag Token is in the stage, it might be different. When you go to that address, you'll be on top of "06 04" or "06 06". This represents a human controlled character. It contains a pointer to your in-game character, the coordinates, room pointer, plus something else afterwards that may have to do with rotation. The pointer following the Z-Coords is your proper room. Smile

That's a good find there, PaD.
A bit odd that some are missing, though. Confused
 
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department All times are GMT - 8 Hours
Page 1 of 1

 
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 ]