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


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Thu Apr 01, 2010 6:06 am Post subject: |
 |
|
Hooray! Update!
This update includes:
- Documentation on the explosion and smoke entry formats. 21 different explosions, 11 types of smoke.
- Annotated dASM for player control routine. Controller configs are handled messily here.
- Bugger that handles when explosive objects detonate. Didn't bother with the smoke or explosion code itself yet.
- About a dozen different controller pak access routines, including some to pull mempak blocks 1 and 7 for no obvious reason.
- Shifted around a bunch of docs. The "addresses" doc now contains all the address indexes originally found in the "editor WIP".
- Bunch of stuff on controller pak access and support.
Now for some neat explosion tidbits. 80052A94 is the proximity detection range, squared. This saves them using an expensive SQRT command on the distance. You can set the smoke colour to any crazy thing, even yellow or red. If you set bitflag 10000000 in the first bitfield of a ammo clip, it will explode!
Remote mines detonate differently in Cuba than every other stage. Ever wonder why they didn't have pickups for remote mines, etc outside of ammo boxes? Player 1 can detonate them at any time, which was fixed in later releases. Also interesting is that only in NGEE can you detonate a mine before it has "activated" and after it has detonated.
Oh, incidentally, there's a patch to correct this. It's part one of a patch to update stuff in NGEE bugfixed in later versions. I don't have it reading the timer--the timers are nominal anyway--but it doesn't re-detonate any mine with a timer at -1.
Somewhat important to modders:
Plastique, when it explodes, sets a unique lock bit on the on-screen clock. In other words, if you ever destroy plastique, it will automatically trigger explosions around the player at a 2 second delay, then immediately remove the on-screen clock in a way you have to manually recover.
As far as strange controller pak stuff, rumble support should be pretty well documented in the TLB index and address file. There's about 20 different registers for it, each player-specific: one to denote if you have a rumble pak, another to say how many milliseconds you'll rumble for, and another to tell the strobe state.
Don't know why, but when a mempak is first discovered it pulls block 1 and 7. These are saved and apparently never used. Other devices aren't caught.
-Zoinkity _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
EternallyAries 007

Joined: 05 Oct 2009 Posts: 1943 Location: Las Vegas  |
Posted: Thu Apr 01, 2010 7:19 pm Post subject: |
 |
|
Wow good job zoinkity. But i can find the download link? _________________ There totally nothing to read here. |
|
|
|
|
|
 |
 |
 |
 |
 |
SubDrag Administrator

Joined: 16 Aug 2006 Posts: 6179
 |
Posted: Fri Apr 02, 2010 4:59 am Post subject: |
 |
|
It's on page 1 of this |
|
|
|
|
|
 |
 |
 |
 |
 |
EternallyAries 007

Joined: 05 Oct 2009 Posts: 1943 Location: Las Vegas  |
Posted: Fri Apr 02, 2010 11:56 am Post subject: |
 |
|
Ok thanks SubDrag _________________ There totally nothing to read here. |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Sat Sep 25, 2010 8:26 am Post subject: Xthost ate some sharapnel. Xthost is no more. |
 |
|
This is the new link.
http://www.mediafire.com/?dxvz2ygi675i22f
I'm not certain if that's the most current file, but I'll update it at the next opportunity. _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Tue Dec 28, 2010 9:06 am Post subject: |
 |
|
Hooray! Update! About time...
New link:
http://www.mediafire.com/?755zss9i33d75qi
Sadly it looks like I'll have to use new links all the time...
This update includes:
- Documentation on how the C0- pseudomicrocode command is processed. The basic format was updated at the bottom of image declarations.txt in the images text and font folder. Also look for the posts around this board.
- A little on how "joy2 detail edit" works, which was again summed up in a thread on this board.
- A tiny amount of work on how certain images are caught as "light fixtures", as well as the special microcode linked to lights and basic water textures.
Light textures--as in the ones on walls you can shoot and they shatter, dulling the texture--are believe it or not a special case. 80082660 is an index of all detected instances of certain images set as lights. 7F0BB630 sorts that out, and currently that's hardcoded to accept only the following images: 0C9, 0CB, 0CD, 0FC, 0FE, 0FF, 100, 1AC, 3D6, and 567. Naturally, this is going to change in the future. In actual fact you can set any image to be detected as a light, including new ones.
As mentioned above two other textures are linked to special case microcode. Textures 5E4 and 5E7 both link special microcode after loading the texture to handle the special nature of enviroment textures. When 5E4 is used 7F09343C will either DL branch to the code at 8003FCC0 or directly copy data, and if 5E7 is used 7F09365C does the same with 8003FD28. Of course, the irony is via enviroment blocks (fog stuff) you can swap the default texture IDs here with other ones, but then they never used anything but defaults. _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Sat Mar 03, 2012 6:15 pm Post subject: Two years since last update!? |
 |
|
http://www.mediafire.com/download.php?755zss9i33d75qi
Hopefully nothing was retro'd or necro'd. Can't keep anything straight anymore.
Most things are reorgainized and there's a few new annotated disassemblies. Tried to make NSNA's document tree roughly the same as the uneditted tree. Have half a mind to place all uneditted in a single folder. I'm still sorting through other documents to fit them in and need to put the big annotation of the 70- TLB segment in there.
Aegh...
Still many more files to split and others to update. Eventually want only uneditted code in the normal segment.
Oh, if you're into forbidden knowledge there's a couple workpads in there for unreleased patches in alpha state. _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
Trevor 007


Joined: 15 Jan 2010 Posts: 926 Location: UK, Friockheim OS:Win11-Dev PerfectGold:Latest  |
Posted: Sun Mar 04, 2012 6:29 am Post subject: |
 |
|
"21 different explosions, 11 types of smoke"
Wow, I wounder if we can mod one to look real for a Frag Grenade.
In reality Frags dont 'fireball' :lol
Trev
P.S. Actually what we also need is a different sound for the last round of the M1 Garand in the Goldfinger Project.
As many are aware the Garand makes a identifiably Unique sound on its last shot as it also ejects the clip that held the 8 cartriges together on insert.
The Garand is currently (Unlikly to change due to all slots being filled) in the GoldenGun Slot.
Thanks, heh, I only ask here incase Sub forgets to ask  _________________
   |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Sun Mar 04, 2012 5:08 pm Post subject: |
 |
|
Also, 20 scorches, 100 bullet impacts, and a player-dependant number of casings (200/#players, except Depot and Streets that halve that) despite it not using casings in MP...
Concidering you have to hack it so it can't be reloaded (only autoreloaded) you might as well just trigger the sound within the reload routine. Granted, technically you can wedge a key or piece of metal to trigger the release and eject it early (or use one of several questionable field modifications) but hey, that's cheating. Oh, and you'll need to dedicate a register for the current remaining shots in each player's rifle.
The only issue with a frag is that GE handles explosion damage dealt using the explosion itself. Interestingly, only explosions above a certain size cause damage. This is essential, since gunfire impacts generate both the impact image and a small explosion, in turn generating smoke.
Best bet would be to make a throwable item with a time-delay remove + proximity injury + sharapnel effect, maybe a little smoke too. In other words, do a search for an actor within a given radius and do random damage to them multiplied against their distance from source. Not really accurate, since a real frag should simulate sharapnel damage as a ray-projection. You could make a random ray-projector...
As for a smoke grenade (as useless as that would be without an AI overhaul) that's remarkably simple. Take the hardcoded explosion register and funnel it into the smokegen instead. Heck, you can do random colors as well for signal flares. _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
Last edited by zoinkity on Wed Mar 28, 2012 11:14 am; edited 1 time in total |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Wed Mar 28, 2012 7:53 am Post subject: |
 |
|
Updated again. Contains some Spectrum stuff now ;*) _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
SubDrag Administrator

Joined: 16 Aug 2006 Posts: 6179
 |
Posted: Wed Mar 28, 2012 8:31 am Post subject: |
 |
|
Sweet, which folder held Spectrum stuff? Didn't see it offhand. |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Wed Mar 28, 2012 11:12 am Post subject: |
 |
|
Mostly Gameplay and Misc\System. That's the big partial disassembly. Also, the TLB index was revised to have links to each of the JR'd subroutines for the opcodes. 21990 index labels some of the reserved and dependant data.
Main Menus\Main and Misc\menu 19 - Spectrum emulator (removed) contains disassembled samples of the menu used to load the thing.
Some of the other files that test or initialize variables now are properly labeled. Main program loop is one of them.
After all those projects are done I'll come back and really, properly annotate the snot out of the thing. Want to know precisely how it works and how it can be made better! Wouldn't it be awesome to have a 128x emu as well?
[edit]
Completely forgot to drop the changed data file in there someplace. Aegh... I'll catch it in the next iteration. _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
zoinkity 007


Joined: 24 Nov 2005 Posts: 1736
 |
Posted: Mon May 21, 2012 7:38 pm Post subject: |
 |
|
http://www.mediafire.com/download.php?755zss9i33d75qi
Biggest addition is the partially-annotated 70000400 NGEE.txt. Still need to crossreference everything with the TLB index, and there's still a whole stack of work to do.
Note the amazing 64DD initialization routine. Before anyone gets too bent out of shape they never intended to use it. It's just a fluke of being compiled with some of the debug libraries. Could be hijacked to use FLASHram though, saving replays and other cool stuff like that.
Anyone who wants to figure out the specifics behind the thread system are more than welcome to do that. Please, please do.
Oh, the address ranges doc finally has all the same references as the 21990 offset table.
Also, Background File Data\Global Visibility Microcode\commands.txt is a complete list of all the global visibility commands. It should even be accurate ;*) I'll be making an update to visiscript to account for the better info. Last couple types just fell into place suddenly. Most commands aren't used, but you can totally make some trippy custom multi-conditional tests with the thing. _________________ (\_/) Beware
(O.o) ze
(> <) Hoppentruppen! |
|
|
|
|
|
 |
 |
 |
 |
 |
|
 |
 |
 |
 |
|
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
|
|
|
 |