Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - Duck tales 2 | |
Pages: 1 2Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
Jigglysaint

Red Cheep-cheep
Level: 24

Posts: 149/215
EXP: 76907
For next: 1218

Since: 03-17-04

Since last post: 7 days
Last activity: 3 days
Posted on 01-30-05 11:51 PM Link | Quote
The levels can't be compressed into 21 bytes. It is just not possible to store than amount of information that way. My guess is that it's just the level headers. Perhaps you need to check the beginning of the ROM for the actual data. I know that some games, level data is stored from the very first offset.
Darth Coby

Vire
Dacht je nou echt dat het over was?
Dacht je nou echt dat ik gebroken was? Nee toch?
Nou kijk eens goed op uit je ogen gast.
zonder clic heb je geen kloten tjap... bitch
Level: 55

Posts: 1087/1371
EXP: 1240774
For next: 73415

Since: 03-15-04
From: Belgium

Since last post: 2 days
Last activity: 9 hours
Posted on 01-31-05 01:44 AM Link | Quote
Hmm, looks like Sapros is pretty buggy, even when I restore a ROM it curropts the old area again when I try to curropt other areas, can anyone recommend any curropter?
Jigglysaint

Red Cheep-cheep
Level: 24

Posts: 150/215
EXP: 76907
For next: 1218

Since: 03-17-04

Since last post: 7 days
Last activity: 3 days
Posted on 01-31-05 08:06 AM Link | Quote
Corruptster. I swear by it.
BMF98567
BLACK HAS BUILT A SILLY DICE-MAZE!
GO!

Current list of BURNING FURY >8( recipients:
- Yiffy Kitten (x2)
- Xkeeper
Level: 53

Posts: 619/1261
EXP: 1094149
For next: 62970

Since: 03-15-04
From: Blobaria
Special Move: Rising Meatloaf Backhand Combo

Since last post: 21 hours
Last activity: 1 hour
Posted on 01-31-05 05:16 PM Link | Quote


OK, I figured out the level data format. It's really easy, but please forgive any errors or wacky grammar, as it's really, really late. Also note that this data only applies to Niagara Falls; I haven't found the pointers to the other levels yet, though everything's stored within the same bank.

Level header: $10010, the second two bytes point to the "screen order table," the rest are probably related to the block mappings (See Coby's post). Everything from $10012-$10025 is copied to $4B-$5E in RAM.

Level layout: The first screen (01) of Niagara Falls starts at $11D5A (note: this is NOT the first screen you start on, that's actually at $120DA). Each screen is comprised of 64 (8 rows x 8 columns) 4x4-tile blocks, similar (IIRC) to Castlevania. The first row is completely obscured by the status bar, the second row is half-visible, and the last row is just barely visible at the bottom of the screen (only 1 row of tiles is shown). Each screen's blocks are stored sequentially, starting from the top-left corner of the screen and ending at the bottom-right corner, running left to right. There is no break between each room's data, and there is no compression.

The "screen order table" starts at $11C3A. Niagara Falls is 8 screens wide x 6 screens tall (this is probably defined in the level header). Each individual screen is assigned a number from 01 to 1F, and this table determines which screen will be loaded where. A visual aid should be more helpful (0F is the starting position, and 0D is the boss room):



This table also defines the level's scrolling boundaries; a value of 00 will stop horizontal scrolling in the current direction. The edges of the level are treated as 00s as well.

I believe there is another table of some kind, separate from the screen order table, that affects how the status bar is handled during vertical scrolling; adding a vertical scroll where there wasn't one before will mess up the status bar (but nothing else). Should be relatively simple to figure out.


(edited by BMF54123 on 01-31-05 01:30 PM)
dan

Snap Dragon
Level: 43

Posts: 383/782
EXP: 534516
For next: 30530

Since: 03-15-04

Since last post: 20 hours
Last activity: 14 hours
Posted on 01-31-05 06:15 PM Link | Quote
Originally posted by Coby
Hmm, looks like Sapros is pretty buggy, even when I restore a ROM it curropts the old area again when I try to curropt other areas, can anyone recommend any curropter?


Yeah, the restore ROM function doesn't reload the ROM in the memory of Sapros. A stupid logic bug. That's been fixed now.
Darth Coby

Vire
Dacht je nou echt dat het over was?
Dacht je nou echt dat ik gebroken was? Nee toch?
Nou kijk eens goed op uit je ogen gast.
zonder clic heb je geen kloten tjap... bitch
Level: 55

Posts: 1088/1371
EXP: 1240774
For next: 73415

Since: 03-15-04
From: Belgium

Since last post: 2 days
Last activity: 9 hours
Posted on 01-31-05 08:48 PM Link | Quote
BMF: Woah :o Now, how did you find that? :O Because now I didn't really learn a lot :o But still thanks!

Dan: Oh so there's a new version? Your site showed 0.1.1 as the latest version and that's also the version I seem to be having. Oh well.
*Coby redownloads
Mega-Dog

Level: 20

Posts: 74/139
EXP: 40051
For next: 2388

Since: 03-15-04
From: Minnesota

Since last post: 8 days
Last activity: 4 days
Posted on 02-14-05 12:29 PM Link | Quote
Originally posted by BMF54123


OK, I figured out the level data format. It's really easy, but please forgive any errors or wacky grammar, as it's really, really late. Also note that this data only applies to Niagara Falls; I haven't found the pointers to the other levels yet, though everything's stored within the same bank.

Level header: $10010, the second two bytes point to the "screen order table," the rest are probably related to the block mappings (See Coby's post). Everything from $10012-$10025 is copied to $4B-$5E in RAM.

Level layout: The first screen (01) of Niagara Falls starts at $11D5A (note: this is NOT the first screen you start on, that's actually at $120DA). Each screen is comprised of 64 (8 rows x 8 columns) 4x4-tile blocks, similar (IIRC) to Castlevania. The first row is completely obscured by the status bar, the second row is half-visible, and the last row is just barely visible at the bottom of the screen (only 1 row of tiles is shown). Each screen's blocks are stored sequentially, starting from the top-left corner of the screen and ending at the bottom-right corner, running left to right. There is no break between each room's data, and there is no compression.

The "screen order table" starts at $11C3A. Niagara Falls is 8 screens wide x 6 screens tall (this is probably defined in the level header). Each individual screen is assigned a number from 01 to 1F, and this table determines which screen will be loaded where. A visual aid should be more helpful (0F is the starting position, and 0D is the boss room):



This table also defines the level's scrolling boundaries; a value of 00 will stop horizontal scrolling in the current direction. The edges of the level are treated as 00s as well.

I believe there is another table of some kind, separate from the screen order table, that affects how the status bar is handled during vertical scrolling; adding a vertical scroll where there wasn't one before will mess up the status bar (but nothing else). Should be relatively simple to figure out.


There is 2 tables if I remember right...the 21 byte table should be for layout of each screen in chuncks of blocks or something and then there is another table which will have TSA in it. It confused me after awhile that is why I discontinued MWOD which was going to edit this game.
Pages: 1 2Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Rom Hacking - Duck tales 2 | |


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.017 seconds.