Register - Login
Views: 99822638
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
05-03-22 07:21:23 PM
Jul - NO! GO TO STAR! - What Now? A pickable Peach Object? New poll - New thread - Thread closed
Next newer thread | Next older thread
Mega Mario XD
80
Level: 22


Posts: 56/81
EXP: 53089
For next: 5261

Since: 10-26-07

From: Australia

Since last post: 13.8 years
Last activity: 13.8 years

Posted on 12-18-07 06:10:04 AM (last edited by Metal_Man88 at 12-24-07 02:30 AM) Link
What Matthew Coburn has to say on this topic...
****
Go to the Editing RAM objects thread to see more about this kind of stuff. -Metal_Man88

Yes, it's possible. I captured a screenshot of a code that I was using to experiment with. And the result?

Image Hosted by ImageShack.us

That's the result. Animated 100% Correctly at well. No stuffed up body parts. So, yeah. Peach can be worth 3 coins. Seriously, you kick her, and she'll explode into 3 coins.

Freaky, but nifty, eh?

____________________
Matthew Coburn
Member of the Peachy64 Hacking Team
World 9 - Hacking Forums
Sig Banner
****
THIS POST IS TOTALLY ORIGINAL
UNAUTHORISED DUPLICIATION PROHIBITED
Xkeeper

Level: 263


Posts: 3976/25353
EXP: 297155089
For next: 1805364

Since: 07-03-07

Pronouns: they/them/????????

Since last post: 3 days
Last activity: 12 hours

Posted on 12-18-07 06:19:37 AM Link
Thank you for providing nothing but a screenshot! Way to make sure nobody else can do this.



____________________

+c0

Level: 11


Posts: 4/17
EXP: 5143
For next: 842

Since: 08-05-07

From: Nowhere.

Since last post: 11.0 years
Last activity: 11.0 years

Posted on 12-18-07 10:14:03 AM Link
Eh
I just spent about an hour or two yesterday trying to do that..
But i kept either geting an invisible peach or her neck being broken
Do tell how to do it

____________________
Teconmoon
Catgirl
User 275
Level: 84


Posts: 59/1772
EXP: 5452254
For next: 209698

Since: 09-17-07

From: Edmonds, WA

Since last post: 12.5 years
Last activity: 12.5 years

Posted on 12-18-07 12:40:46 PM Link
If this is legit, why not provide an ips patch?
Mega Mario XD
80
Level: 22


Posts: 57/81
EXP: 53089
For next: 5261

Since: 10-26-07

From: Australia

Since last post: 13.8 years
Last activity: 13.8 years

Posted on 12-18-07 10:22:05 PM Link
What Matthew Coburn has to say on this topic...
****
@Xkeeper: I was in a rush to post it, so I'll post the code now.

The code for the pickable Peach object:



Start a file and when the game begins outside the castle turn the codes off by accessing your cheat devices' in-game menu (or deactivate the codes in your emulator's menu). Go to the castle front doors and you should bump into something invisible. Pick it up and it will turn into Peach (she will do a short animation). Now you can place her where you want but as she's actually a breakable box take care of her!

NTSC
81341C68: C216
81341C6C: 444A
81341C70: C52B
80341BDD: 0019
81341BDE: 4690
81341C04: 8013
81341C06: 9360
80341D47: 00FF
80341CF9: 0000
80341CFB: 0002
81341D96: F3B4
81341D9E: F3B4
80341D9B: 0001



There's more on http://james.boshikoopa.googlepages.com/game_codes .

____________________
Matthew Coburn
Member of the Peachy64 Hacking Team
World 9 - Hacking Forums
Sig Banner
****
THIS POST IS TOTALLY ORIGINAL
UNAUTHORISED DUPLICIATION PROHIBITED
KINGDUDE139

I Don't post as much as I should....
Level: 13


Posts: 22/26
EXP: 9728
For next: 539

Since: 08-05-07

From: Youtube

Since last post: 14.2 years
Last activity: 13.9 years

Posted on 12-20-07 04:59:33 PM Link


Originally posted by Matthew Coburn
So, yeah. Peach can be worth 3 coins. Seriously, you kick her, and she'll explode into 3 coins.


That is the best part of that post that would be good for me to try and do! Thanks for the cool find


____________________
WOOT! DANCING FROGGY MARIO!WOOT! DANCING FROGGY MARIO! Needs members... Lots of 'em! <img src=images/smilies/biggrin.gif align=absmiddle>
Deleted User
Collection of nobodies
Posted on 12-20-07 10:25:25 PM Link
Too bad this isn't an actual hack though....

____________________


===================
[Posted by NightKev]
Stevoisiak
Member
Level: 38


Posts: 10/283
EXP: 345799
For next: 24648

Since: 11-22-07

From: New York, Long Island

Since last post: 12.4 years
Last activity: 5.6 years

Posted on 12-21-07 06:45:02 PM Link
Hmmm.

1. Can you show a video?
2. This is a custom code? In gameshark? This just supports my "level editing, WITH GAMESHARK!?!" topic even more.
3. So this is to help with your "Peachy 64" hack?
4. Does peach move at all?
5. What is her behavior based on?
6. Can this be done in Toads Tool?

I'm VERRY curious about this. It seems interesting.
yoshiman
Member
Level: 23


Posts: 1/95
EXP: 67071
For next: 652

Since: 12-21-07

From: London, England

Since last post: 13.2 years
Last activity: 12.9 years

Posted on 12-21-07 09:47:02 PM Link
It was me who created the pick up Peach code as can be viewed on YouTube (search for yoshielectron). The reason why Peach appears as she should is because I've bothered to include her animation pointer.

One pointer indicates which gfx structure the object uses. And for animated objects you use the animation pointer otherwise you get a messed up object.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 144/621
EXP: 1136541
For next: 20578

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 7 days

Posted on 12-22-07 06:15:22 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by yoshiman
It was me who created the pick up Peach code as can be viewed on YouTube (search for yoshielectron). The reason why Peach appears as she should is because I've bothered to include her animation pointer.

One pointer indicates which gfx structure the object uses. And for animated objects you use the animation pointer otherwise you get a messed up object.


Oh, so you're that legendary James guy? Welcome to the forum!

I've known about your site since quite a while, there are many very interesting discoveries on it. I've been thinking of emailing you, but then the laziness bug bit me (it wouldn't be the first time...).

As I understand it, you're specialized in the RAM hacking side of Super Mario 64. Using the Equalizer, which is a super powerful GameShark-type device, you've reverse-engineered some of the mechanics behind the SM64 engine.

But what you've been stumbling on is different from what's edited by TT64, and it's actually a part I don't know much about (except from reading your info). While TT64 edits the level commands in the ROM that place objects in levels, what you've been editing is the "live" variables and parameters in RAM of the objects that are currently in the game as you play it. (You may already know that, but I'm explaining it for everyone else)

The 608 bytes data structures you're talking about on your site don't exist in the ROM as is.

The 0x24, 0x42 and 0x43 commands that TT64 can edit are the macro commands that initialize these data structures as the level is created.

For example, a 0x24 command may place an object at an X, Y and Z position which is essentially, its starting pos. When the level is initialized a 608 bytes structure is created in one of the 240 slots in RAM . Then, the X, Y and Z variables in that RAM structure may change according to the behavior assigned to the object. Note that a level command may create more than one structure thus using more than one slot, for example: the cannon base will spawn the cannon itself as another RAM object, which will itself spawn a bubble object if it's a bubble cannon.

You end up having more control over objects when you edit these RAM variables, because more parameters are available to be modified. For example, the 0x24, 0x42 and 0x43 commands don't include variables for size, but the 608 bytes RAM objects have width, height and depth variables.

While there are ways to edit some geometry layout commands in ROM to change the global size of an object, not all models include a size command, and changes will affect ALL objects of this type. If you changed the Flyguy enemy model to be 10x bigger by editing a geometry layout command in ROM (or scaling vertices), every Flyguy would appear this size in the game. On the other hand, changing the w, h and d variables in the RAM structure can be done on individual objects in the current level, so you could have Flyguys of various sizes.

So the thing is, many of your codes can't be easily transformed into an .IPS (or .PSF) patch, because the ROM level commands are not powerful enough to control all of the same variables, which are generally controlled by ASM functions called by the behavior code.

With some recent discoveries in animation command hacking tough, I could recreate the pickable Peach object mod as a ROM hack.

Still, there are tons of things you've discovered that can be useful to ROM editing and the advancement of SM64 hacking. As we'll begin to understand the mechanism that go from a level command in ROM to a 608 bytes data structure in RAM, it may eventually be possible to create a new "super" level command that can directly set all of these parameters, so we could set up levels with objects like boxes of different width, height and depth, much like the GoldenEye engine is able to do. That will require some ASM hacking for sure, but it would be worth it.

Anyway, maybe a whole thread could be created about hacking these RAM objects, and obviously you're welcome to participate in it

____________________
Ratchetfan19
Member
Level: 18


Posts: 12/50
EXP: 25685
For next: 4212

Since: 11-20-07


Since last post: 9.0 years
Last activity: 8.7 years

Posted on 12-22-07 12:35:20 PM Link
My guess is that there are 2 Peach models: 1 for fading into the visible model at the end of the game and the other being the visible model that the invisible model fades to.

There's a lot more about transparency in objects I'd like to talk about, but I'd be going off-topic here. I might create a thread later, depends...
yoshiman
Member
Level: 23


Posts: 2/95
EXP: 67071
For next: 652

Since: 12-21-07

From: London, England

Since last post: 13.2 years
Last activity: 12.9 years

Posted on 12-22-07 10:03:10 PM Link
Hello everyone, James here!

Actually, I do ROM hacking including swapping Mario's gfx for Peach, though that's may be too difficult...

Anyway, there aren't two Peach models. Within an object structure you can set the level of transparency an object uses, though it doesn't affect all object graphics. So, after the end of the opening sequence, Peach's behaviour coding causes her to fade to completely transparent. But it's a simple matter of changing that value within the object structure so that Peach can be seen.

RAM hacking does have big advantages including the use of gameshark like codes, however, ROM hacking is better in some ways. I find the N64 MIPS ASM 'easy' so that's still something I need to look at in SM64. But if you're interested, within every object structure there is a pointer to the behaviour coding, change that pointer and te object becomes something totally different. For e.g., I changed a Goomba into a chain chomp!
Rena
I had one (1) message in Discord deleted and proceeded to make a huge, huge mess about how it was a violation of free speech and how moderators are supposed to be spam janitors and nobody should have the right to tell me not to talk about school shootings
Level: 135


Posts: 1879/5390
EXP: 29076934
For next: 258071

Since: 07-22-07

Pronouns: he/him/whatever
From: RSP Segment 6

Since last post: 342 days
Last activity: 342 days

Posted on 12-22-07 10:03:45 PM (last edited by HyperHacker at 12-22-07 07:04 PM) Link
Jul - Post #1879 - 12-22-07 05:03:45pm
Possibly a third for the letter opening sequence. It fades into the outside-castle stage, so that model might be loaded there too.
Originally posted by VL-Tone
As we'll begin to understand the mechanism that go from a level command in ROM to a 608 bytes data structure in RAM, it may eventually be possible to create a new "super" level command that can directly set all of these parameters
Perhaps such a command already exists, or one that could achieve the same effect? (E.g. one that writes a raw RSP command - I think there are RSP commands that can write to RAM - or runs arbitrary code.) I haven't kept up with SM64 so I don't know if you've exhausted that possibility already.

____________________
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 147/621
EXP: 1136541
For next: 20578

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 7 days

Posted on 12-24-07 03:53:42 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
There is only one Peach model, but in the geometry layout commands, there are two Peach body part hierarchies. One for the starting sequence where she fades out, and one for the end.

Please refer to this document: http://homepage.mac.com/qubedstudios/PeachGeo.txt and this post: http://jul.rustedlogic.net/thread.php?pid=15523&r=1#15523 for a more detailed description and instruction to make Peach always visible.

There are commands that can write to arbitrary parts of RAM, but they wouldn't be useful for the intended purpose, because we need something that works with the slot allocation system for RAM objects.

For sure there are ASM functions used by the behavior ASM code to set parameters of the RAM objects, that's how for example, the squished Goomba animation can be performed by changing the height parameter of the RAM object. I'm not sure though if these commands can be used.

Yoshiman, when you're talking about the pointer to the behavior coding, are you talking about a pointer that starts with "13" (which is the bank number for behavior scripts)? If so, then this is one of the things that TT64 can edit. You can get a list of most of the behaviors in this doc: http://homepage.mac.com/qubedstudios/SM64Behaviors.txt

Anyway, let's move the rest of the discussion in the "Editing RAM objects" thread.


____________________
Next newer thread | Next older thread
Jul - NO! GO TO STAR! - What Now? A pickable Peach Object? New poll - New thread - Thread closed


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

32 database queries, 2 query cache hits.
Query execution time: 0.082272 seconds
Script execution time: 0.029105 seconds
Total render time: 0.111377 seconds