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


Goldeneye GS Code Question
Goto page Previous  1, 2, 3  Next
 
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department
View previous topic :: View next topic  
EternallyAries
007
007


Joined: 05 Oct 2009
Posts: 1943
Location: Las Vegas

 PostPosted: Tue Aug 10, 2010 1:36 pm    Post subject: Reply with quote Back to top

Wow thats cool. So it works just like the one in Silo?
_________________
There totally nothing to read here.
 
View user's profile Send private message
goldengreg007
Agent
Agent


Joined: 04 Mar 2010
Posts: 47

 PostPosted: Wed Aug 11, 2010 4:45 am    Post subject: Reply with quote Back to top

Yeah, I'd say it works similarly to Silo, but instead of the explosion surrounding the person that shot it, it surrounds the spawn point of the plastique that was shot. Perhaps it makes sense from the perspective that since no one had picked up the plastique, it didn't belong to a specific player (or any player), and thus the explosion surrounds the plastique's spawn point. Of course, as Wreck said, whoever shoots it does get credit for all the killing that takes place as a result.

I'm actually glad that it doesn't just surround the players, this way it can actually allow for some sort of strategy..
 
View user's profile Send private message AIM Address
EternallyAries
007
007


Joined: 05 Oct 2009
Posts: 1943
Location: Las Vegas

 PostPosted: Wed Aug 11, 2010 10:04 am    Post subject: Reply with quote Back to top

Wow that is sick goldengreg007. I wish my Gameshark work so i can do this.
_________________
There totally nothing to read here.
 
View user's profile Send private message
goldengreg007
Agent
Agent


Joined: 04 Mar 2010
Posts: 47

 PostPosted: Wed Jun 08, 2011 8:52 pm    Post subject: Reply with quote Back to top

The latest in my quest to find Gameshark codes has lead me to searching for some to help the Elite's annual Virginia GE tournament this August. Historically, we've always done LTK pistols with no radar, no auto aim, etc.. but this year they want to really mix it up and do random spawns, -5 health, and no armor on the maps. They're also going to be splitting the signal to multiple tvs (and blocking off half of it obviously), so there won't be screen peeking. Should be wild. Surprised

Obviously the Dr. No code for the armor is very well known, so that's no problem. The other two I'm thinking may not be possible. I found a code that sets the handicap for the players, but I assume it's just limited to the normal choices of -10, -4, -3, -2, -1, 0 , +1, +2, +3, +4, +10:

Handicap P1 800697AB-000X
Handicap P2 800697AF-000X
(00 - 0A)

Is that the best I can get as far as customizing? I guess -4 is close enough to -5 that it wouldn't be a huge loss if we had to use that instead.

Now the more complicated one, random spawns. I found a code that mixes up the Temple spawns:

80079C2F 0048
80079C33 001C
81079C36 BD2C
81079C3A BC24

I assume this is the closest we can get to randomizing the spawns, which is probably good enough since we all know the normal spawn orders so well that mixing them up would throw us all off some. Are there any similar codes documented for mixing up spawns on other levels? Or any good tips that would help me to find the addresses I would need to change the values for? I did my best to search on BS Free, but this was the only level I found.

Thanks in advance for any information, you guys have always been very helpful to me. Very Happy
 
View user's profile Send private message AIM Address
zoinkity
007
007


Joined: 24 Nov 2005
Posts: 1736

 PostPosted: Thu Jun 09, 2011 7:54 am    Post subject: Reply with quote Back to top

I hate to tell you this, but spawns are randomized. There's a few modifers (#rooms away, then distance, and stage scale screws it up a little thank you very much Stack...)

+_+

Plastique and the "eternal explosion" thing are directly connected. Destroying plastique sets it off. Getting killed by the effect registers a suicide, like any non-player explosive.
However, there's always the obscenely explosive briefcase bomb. The explosion will fill more than one room and be very, very lethal.

+_+

I haven't converted it to codes yet, but did extend the weapon list in multiplayer to accept "gadgets". I'll have to look back through the documentation to really say if it can be converted or not. I'm thinking it would require capturing and altering a TLB-loaded block of code, so it may only be possible by upload.

+_+

Handicap values can be editted by hacking the options already available. (technically you can extend the list, but not without a little ASM work) The values are floating-point numbers, and the table can be found at 8002B498 in memory editor (NGEE). That's +10 through -10, then LtK's setting. First value should be text ID, then the 4-byte float. The values should be something like:
TextID float value float->int setting
9C47 3DCD0000 0.1 +10
9C46 3EB40000 0.35 +4
9C45 3EE90000 0.45 +3
9C44 3F1A0000 0.6 +2
9C43 3F450000 0.77 +1
9C42 3F800000 1.0 +0 normal
9C41 3FA70000 1.3 -1
9C40 3FD80000 1.69 -2
9C3F 400D0000 2.2 -3
9C3E 40360000 2.84 -4
9C3D 41200000 10.0 -10
9C39 43480000 200.0 LtK

By altering the upper half of the floating-point number you can alter the setting. Note the values they use are silly to say the least.

+_+

Doubles in MP crash when it tries to mirror the in-hand model. This also can occur even before drawing a double when models are preloaded. It's a heck of a bug, and fixing it has proven to be tedious. Disabling 1st person models can be done on a per-character basis, but requires either per-level + setup + options codes or some ASM work to target each player's BONDdata.
_________________
(\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
 
View user's profile Send private message Send e-mail
goldengreg007
Agent
Agent


Joined: 04 Mar 2010
Posts: 47

 PostPosted: Thu Jun 09, 2011 9:35 am    Post subject: Reply with quote Back to top

Good information, thank you! I'll look into the handicap stuff some, those are incredibly silly values indeed.

However, I am going to have to dispute the first point you made, about spawns being random. Maybe you're misunderstanding me (or vice versa), but I'll give a brief explanation of why they aren't random. I'm probably going to butcher the order, but if I recall correctly Facility goes something like..

(assuming player gets bathroom first, as initial spawn actually does seem to be random):
Bathroom
(downstairs from bathroom) End of hallway room (the one with no doors)
Room between security door and bulletproof glass (right before locker room)
Room similar to end of hallway room, except with door
Bottom of the stairs that lead up to the bathroom
Top of the other staircase that leads up to the bathroom floor
Back lab
Locker room
and repeat..

I know this, because I've been spawn killed in order on this map, as I've done to others as well. The back lab becomes the only good spawn in that situation. It got so ridiculous in the tournament that they enforce a "stand by the body" rule where you can't run for the next spawn until the person that was just killed presses start. Naturally, if you get too close to one of these spawns, it will push the player to the next spawn in the order. This had actually been used strategically in the same tournaments by some people to push people away from good spawns. Bunker comes to mind as a level where this strategy would be used.

The code that I posted actually does mix up the order on Temple, which is exactly the kind of thing I want for other maps as well. They still cycle in order, but it's a different order than the standard one.
 
View user's profile Send private message AIM Address
zoinkity
007
007


Joined: 24 Nov 2005
Posts: 1736

 PostPosted: Thu Jun 09, 2011 10:21 am    Post subject: Reply with quote Back to top

My disagreement comes from having done the disassembly on the routine. The routine in question is 7F089208, which does several things including handling the kill attributement, triggering the red animation, darkening the screen, resetting BONDdata flags (including invisibility, sadly, used for player fadeout), and selecting the spawn you are moved to. Incidentally, the player is never "reloaded", only made invisible and moved, then the animation is lifted. If you play any accuracy scenarios you'll realize you can shoot the dead for freebie hits.

A random value is used to select one spawn from the list. It tests the number of rooms, via portal connection, between the spawn's current room and any player. It also uses a sort of proximity value multiplied by stage scale to test physical closeness. If the spawn is acceptable you appear there. Otherwise, the spawn is removed from further testing and another is randomly tested. If none is acceptable, you simply appear at the last one tested. There is no registered pattern, or counters to register it.

The issue is that there aren't usually enough spawns to keep this from being exploited, and they tend to be in proximity to each other. Only the largest stages have 8, smallest 5. Basement's are so close a single player can force respawn at a single point.

+_+

First spawn is random from current list, retested if currently in use. If all are in use, you spawn at the last one tested, within that character!
_________________
(\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
 
View user's profile Send private message Send e-mail
goldengreg007
Agent
Agent


Joined: 04 Mar 2010
Posts: 47

 PostPosted: Thu Jun 09, 2011 11:48 am    Post subject: Reply with quote Back to top

Okay, hypothetical scenario here. Say you were playing Facility with a friend. You get the vents spawn, they get the "end of the hallway, with no doors" spawn. They grab a nearby gun, and rush up to the bathroom, naturally. You are just now getting out of the vents, and are rushing to get the gun in the bathroom. Too late, they kill you. Sad They stand on your dead body, and do not move. You hit Start as soon as you are prompted to. Now your respawn could be in the back lab? Assuming my list is exhaustive, you would have a 1/7 chance of getting it at this point in this scenario? I just find it interesting that any time since I've been consciously paying attention to these things, I've never seen that happen. I wager that I could make you a video tonight doing the above scenario 100 times, and it would always give me the same result.

Maybe though there is randomness involved, somehow the routine always comes to the same conclusion (except when a spawn is pushed)?

I am talking about the NTSC version, though I doubt that's relevant.


Edit: Another thought is that since the logic works this way, then there shouldn't be codes that change the order, as there isn't an order. Which is probably exactly the point you're making here. Are you familiar with the Temple code that I posted? How would that play into this? I did try it on my console, and the spawn order that I regularly experience was disrupted by it.
 
View user's profile Send private message AIM Address
Wreck
Administrator
Administrator


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

 PostPosted: Thu Jun 09, 2011 2:54 pm    Post subject: Reply with quote Back to top

As far as I know, the spawns go through the list one-by-one, so long as nothing interferes. In a 2-Player match, if you kill your opponent and stand by their corpse, they'll appear in the next spawn point in the list. If you run over there and kill them at that spot, they'll come back to life in the next spot in the list. This will keep happening, and the cycle will remain the same.

Now, with three or four people playing, this can be much harder to keep track of. If anyone currently alive is within a certain proximity of the location a dead player is supposed to respawn next in the list, they'll be assigned another spot. One that is further away from living players. But that doesn't mean they'll be safe, either. They could end up fairly close to somebody else, depending on the size of the map and where the spawns are setup.

So, from my point of view, it's completely dependent on where the living players are. If in the right places, the respawning players could go through the list in exact order every time. However, if they're in the wrong spots, the next spawn will be selected more randomly.

Using GameShark codes to change the order of the list will have an impact on play. Those used to a certain order will no doubt find that their opponents will keep popping up someplace else than they expect. But if they get accustomed to this new arrangement, look out!

As a side-note, Perfect Dark has a completely randomized spawning order.
(Go GoldenEye: X, go!
_________________

YOUTUBE | TWITTER/X | FACEBOOK | VAULT | MOD DB | RHDN
 
View user's profile Send private message Visit poster's website
goldengreg007
Agent
Agent


Joined: 04 Mar 2010
Posts: 47

 PostPosted: Thu Jun 09, 2011 3:39 pm    Post subject: Reply with quote Back to top

Heh nice plug. Another bonus of GE:X!

That's exactly how I've understood the spawning though. We were thinking that once we had the spawn order codes figured out, we could play around with them and maybe switch them around before a match so that it's a bit of a surprise every time.


Edit: Finally got to play around with handicaps. Your explanation was perfect, I was able to accomplish exactly what I wanted to with it, thank you!
 
View user's profile Send private message AIM Address
zoinkity
007
007


Joined: 24 Nov 2005
Posts: 1736

 PostPosted: Fri Jun 10, 2011 7:45 am    Post subject: Reply with quote Back to top

If those codes for spawn order were in fact pertinent, then the extended spawn number patch should break the game.

Seriously, walk through the disassembly of 7F089208 and you'll clearly see the spawns are in fact randomized. That the system can be exploited can't be helped short of adding more spawns and moving existing ones, which is easy enough even with conditional codes.
The best thing would be to alter the routine to change the distance multiplier values to refelct in-game distances versus the wacky system they use now.
_________________
(\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
 
View user's profile Send private message Send e-mail
Wreck
Administrator
Administrator


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

 PostPosted: Fri Jun 10, 2011 2:04 pm    Post subject: Reply with quote Back to top

I can put together some spawn replacement codes for you to try out, and then you can let me know if it's what you wanted. It'll need to have the code that forces the memory to stay in the same spot for all player amounts in multiplayer, and activators on top to only affect specific levels. Shouldn't break anything that way, and will require less codes and fewer console restarts.
_________________

YOUTUBE | TWITTER/X | FACEBOOK | VAULT | MOD DB | RHDN
 
View user's profile Send private message Visit poster's website
SubDrag
Administrator
Administrator


Joined: 16 Aug 2006
Posts: 6179

 PostPosted: Fri Jun 10, 2011 3:01 pm    Post subject: Reply with quote Back to top

Actually PD also has a limitation on # spawns, I think it was 0x28 before crashing, but it may really be a litle smaller. I disassembled and bit and appears to be because they didn't allocate more memory than that and next item is right afterwards.
 
View user's profile Send private message
goldengreg007
Agent
Agent


Joined: 04 Mar 2010
Posts: 47

 PostPosted: Sat Jun 11, 2011 7:50 pm    Post subject: Reply with quote Back to top

Wreck wrote:
I can put together some spawn replacement codes for you to try out, and then you can let me know if it's what you wanted. It'll need to have the code that forces the memory to stay in the same spot for all player amounts in multiplayer, and activators on top to only affect specific levels. Shouldn't break anything that way, and will require less codes and fewer console restarts.


That would be awesome man, thank you!
 
View user's profile Send private message AIM Address
zoinkity
007
007


Joined: 24 Nov 2005
Posts: 1736

 PostPosted: Sun Jun 12, 2011 5:32 am    Post subject: Reply with quote Back to top

GE's limit is 15 if memory serves. 16 would overwrite the #spawns. However, if you've ever used the editor that should allow something like double that, simply by placing the #spawns first. Can't remember exactly. It was awfully high.

NSNA is a little different. Uses IDs, not pointers, so double the editor number. Also allows any ID type, including 2xxx and the more esoteric "currently set value" types. An experimental feature was using action blocks to set initial spawns, mostly for team scenarios. Another was setting a mask to allow only certain initial spawns.
_________________
(\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
 
View user's profile Send private message Send e-mail
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  Next
Page 2 of 3

 
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 ]