Register | Login | Logout | Edit profile
Views: 1397612
Main | Memberlist | Calendar | Online users
Ranks | FAQ | Search | Photo album
11-13-07 11:42 PM
rustedmagick forums - The ROM Hacking Data Repository - The Bugs Bunny Crazy Castle (NES) (Updated 10/11/02) |
Next newer thread | Next older thread
Guardian of Blobaria
Not Scoutboy
Level: 46

Posts: 117/602
EXP: 671678
For next: 40096

Since: 03-17-02
From: Spokane, WA

Since last post: 24 days
Last activity: 0 sec.
Posted on 10-10-02 02:03 AMQuote
UPDATED 10/11/02

- Sprite data

(All addresses relative to .NES file unless otherwise noted - subtract $10 for real ROM address)

Level data

The format is extremely simple...

$0010-$800F: Level data
Each byte represents one block (2x2 tiles), starting from the upper-left corner of the room and wrapping to the next line every 32 bytes (for horizontal levels) or 16 bytes (for vertical levels). Each level is 480 bytes in size. There is no break between levels.

Doors need no special pointers to work. The block type used for the bottom half of the door determines where Bugs will go when he enters the door:

50: Up 3 blocks and right 1 block
51: Up 3 blocks and left 1 block
52: Down 3 blocks and right 1 block
53: Down 3 blocks and left 1 block

There need not be a door at the other end - Bugs will simply come out of the wall. This might make a good trap...

Sprite data

Each level's sprite data block is 50 bytes long; there are 64 blocks total (3200 bytes). Each sprite occupies two bytes, excluding the special items, which are 4 bytes. All X/Y coordinates are in blocks (16x16 pixels).

The following data is for level 1.

$B390: Level "header"
Byte #1: Scrolling
00=horizontal scrolling (32x15 blocks)
01=vertical scrolling (16x30 blocks)
Byte #2: Palette and music
00=blue/brown, tune #1
01=green/blue/purple, tune #2
02=brown/grey, tune #3

$B392: Bugs' starting location
Byte #1: X position
Byte #2: Y position

Enemy and item X/Y coordinates
Every level has X/Y coordinates for 7 enemies, 8 carrots, and 4 special items. To prevent an enemy or item from appearing in a level, set its location to 00 00.

$B394: Grey Sylvester #1
$B396: Green Sylvester
$B398: Orange Sylvester
$B39A: Grey Sylvester #2
$B39C: Yosemite Sam
$B39E: Daffy Duck
$B3A0: Wile E. Coyote
$B3A2-$B3B1: Carrots (8)
$B3B6-$B3BE: Special items (4 bytes each)

Byte #1: X location
Byte #2: Y location
Byte #3: Item type
03=ink bottle
04=punching glove
05=10 ton weight
06="bonus" level 3 (return to level 42 if not passed)
07="bonus" level 2 (return to level 38 if not passed)
08="bonus" level 4 (return to level 57 if not passed)
09="bonus" level 1 (return to level 27 if not passed)
Byte #4: Unused? (00)

Assorted data

$9E10: Music/SFX pointers
23 16-bit pointers that point to the data for each song and sound effect. Changing a pointer will change that song/SFX throughout the entire game.

(raw ROM addresses - no header)
$AEB3: Title
$ADB4: Menu/intermission
$A2A6: Level #1
$9E2E: Level #2
$AABA: Level #3
$ABF2: Clear #1
$AD1B: Clear #2
$AE5A: Game Over
$AC7B: Continue
$A6CD: The End
$EA34: Lose a life
$EA97: Grab carrot
$EAB0: "Thud"
$EAC4: Kill enemy
$EAF5: Unknown (beep)
$EB07: Grab item
$EB1B: Toss punching glove

Hey! That tickles!

(edited by BMF54123 on 10-11-02 08:28 AM)
Bag of Stinky Weeds
Level: 3

Posts: 2/2
EXP: 121
For next: 7

Since: 10-20-02
From: New Orleans

Since last post: 1797 days
Last activity: 1796 days
Posted on 12-12-02 11:12 PMQuote

1CF10 stores which palette each enemy uses when walking or standing still, in order, grey Sylvester #1, green Sylvester, pink Sylvester, grey Sylvester #2, Yosemite Sam, Daffy Duck, Wile E. Coyote.

1D33C stores which palette each enemy uses when going up a pipe or door, or dying, in the same order, grey Sylvester #1, green Sylvester, pink Sylvester, grey Sylvester #2, Yosemite Sam, Daffy Duck, Wile E. Coyote. Generally, the 7 bytes at 1CF10 should match the 7 bytes at 1D33C.

00 is to make an enemy grey, 01 to make an enemy green, and 03 to make an enemy pink. Information on using 02 below. Perhaps useful, as you can make all 4 Sylvesters look identical, or you can make the 2 grey Sylvesters different colors, and hopefully at that point someone will believe me that the 2 grey cats do behave differently!

00 will not make Yosemite Sam, Daffy Duck, or Wile E. Coyote grey, but instead, causes them to use their "special palette", which activates when they're placed in a level. If you put all 3 in the same level, all 3 will use Wile E. Coyote's palette. If you place only Yosemite Sam and Daffy Duck, without Wile E. Coyote in the level, they will both use Daffy Duck's palette. 01, however, will still make any of these guys green, and 03 will still make them pink, however--00 must be used to activate their special palette.

Putting 02 for any of the Sylvesters will give them the "special" palette used for the level, depending on whether Yosemite Sam, Daffy Duck, and/or Wile E. Coyote is also in the level, or a fourth special palette if none of them are in the level.

(edited by Frank15 on 12-13-02 02:14 AM)
Next newer thread | Next older thread
rustedmagick forums - The ROM Hacking Data Repository - The Bugs Bunny Crazy Castle (NES) (Updated 10/11/02) |

AcmlmBoard v1.8a BMF Hax0r Special™
© 2000-2002 Acmlm
Board additions/modifications by:

Page rendered in 0.014 seconds.