(Link to AcmlmWiki) Offline: thank ||bass
Register | Login
Views: 13,040,846
Main | Memberlist | Active users | Calendar | Chat | Online users
Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album
05-07-24 12:55 PM
0 users currently in ROM Hacking.
Acmlm's Board - I3 Archive - ROM Hacking - SMw OW loading code or OW location in ROM New poll | |
Add to favorites | Next newer thread | Next older thread
User Post
Sukasa

Birdo
Not quite as active as before.
Xkeeper supporter
Xk > ||bass
I IP Banned myself! Twice!








Since: 11-17-05
From: Somewhere over there

Last post: 6288 days
Last view: 6287 days
Posted on 12-23-05 01:48 AM Link | Quote
Yeah, as the title suggests, I'm looking for info on where the ASM that loads the OW is located, or if anyone knows where in the ROM the OW data is stored.

The reason for this is:

a) I need to insert a disable ASM into the loading code, so that is a player dies while any special code had my controller override (which I've just deugged ad finished) going, this little hack will disable the override and any controller effects in place.
b) I wanted your attention, so I made a new thread
c) I wanted to fluff my thread count

Any help?


(edited by Sukasa on 12-23-05 12:49 AM)
Kailieann



 





Since: 11-18-05

Last post: 6287 days
Last view: 6287 days
Posted on 12-23-05 09:38 AM Link | Quote
As I understand it, the OW is only loaded to RAM once, at the beginning of the game. That's why you have to dump your SRAM and save states every time you make any changes.

It would be more efficient to look for an overall level exit routine and place the hack there, or simply find a 'Player is in a level' RAM address and change the controller override code so it only works when the address has a 'this is a level and not the overworld' value.

Personally, for the (very short) hack I'm working on, I plan on using 'loading levels' to clean up my custom code in case of something like that, but I can see how that wouldn't help you if the controls were still scrambled on the OW.

However, I have to admit it would be nice to find out more about where in the RAM the OW is stored. If a person were creative enough, they might be able to use that information to edit the OW on the fly.
I'm assuming it's somewhere between $1F49 and $1FD5, since those are the only addresses saved to SRAM when you start a new game.


(edited by Kailieann on 12-23-05 08:57 AM)
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6288 days
Last view: 6288 days
Posted on 12-23-05 12:14 PM Link | Quote
Here's a thought... your disable code runs every frame, right? Add a flag in memory somewhere that disables the code (so that the controller functions normally), and have the code set that flag when it finishes executing. Then add custom block code for block #25, and any other block you can walk through, to clear the flag. When you leave the level, you won't be touching any block, so the code should disable itself.
Sukasa

Birdo
Not quite as active as before.
Xkeeper supporter
Xk > ||bass
I IP Banned myself! Twice!








Since: 11-17-05
From: Somewhere over there

Last post: 6288 days
Last view: 6287 days
Posted on 12-23-05 02:00 PM Link | Quote
Well, I only want the disable code to run when you're on the OW screen, since in a level, you might have spots where you want on custom block's settings to remain active for a while, so I can't put a disable routine into the main level oop, unfortunately.
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6288 days
Last view: 6288 days
Posted on 12-25-05 06:13 AM Link | Quote
I don't think that'd be a problem. Each frame would go something like this:
1) Custom code runs, checks disable flag. Skip to step 3 if it's set.
2) Code does some stuff and sets disable flag.
3) Block code runs, clears disable flag.

Since block 25 is empty space, you'd almost always be touching it, and any other blocks you might be touching exclusively (such as water) can just be modified to clear the flag as well. When you die/exit, the block code won't execute, but the rest will, so it'll stay disabled.
Sukasa

Birdo
Not quite as active as before.
Xkeeper supporter
Xk > ||bass
I IP Banned myself! Twice!








Since: 11-17-05
From: Somewhere over there

Last post: 6288 days
Last view: 6287 days
Posted on 12-26-05 11:44 PM Link | Quote
Well, mr problem there is that I'm using custom blocks to run mario around, so that's a problem.
Sukasa

Birdo
Not quite as active as before.
Xkeeper supporter
Xk > ||bass
I IP Banned myself! Twice!








Since: 11-17-05
From: Somewhere over there

Last post: 6288 days
Last view: 6287 days
Posted on 01-05-06 02:25 AM Link | Quote
Perhaps I should rephrase this: Does anyone know where in SMW the Layer 2 data for the overworld is kept? I know that gets reloaded every time you enter the OW, as I can use savestates, move to a level and back, and have the OW change.
Add to favorites | Next newer thread | Next older thread
Acmlm's Board - I3 Archive - ROM Hacking - SMw OW loading code or OW location in ROM |


ABII

Acmlmboard 1.92.999, 9/17/2006
©2000-2006 Acmlm, Emuz, Blades, Xkeeper

Page rendered in 0.016 seconds; used 380.95 kB (max 463.27 kB)