ROM Hacking

Art Editing

From what I understand about this game, all of the art in this game is uncompressed. I have created a list of the locations needed for a basic art hack.

This compilation of art locations is nowhere near complete, but the locations listed will allow for a basic art hack of this game. All locations were based on a US Sonic Advance ROM. I'm not sure if the other versions will have the same locations.

Due to not knowing where the mappings for the levels are, level art edits have to be kept to the basic shape of the current art.

Description

Offset

Main Art

Sega screen art

$000D655

Sonic's game play art

$0011E254

Tails' game play art:

$0018F614

Knuckles' game play art

$0021D374

Amy's game play art

$00296A34

Super Sonic art

$00316554

Coconuts Badnik art

$0031DE54

Buzz Bomber art

$0031F4D4

Crabmeat art

$00320154

Weird Green Badnik

$00321294

Frog Art

$00322194

Cloud / Explosion art

$00322E14

Projectiles

$00323614

Pufferfish-like badnik

$003237B4

Firework-launching snake

$00323DB4

Penguin badnik

$003283D4

Chameleon badnik

$003288F4

Weird Round Thing

$00329C14

Weird 3D object. Looks like a D&D 8 sided die

$00329D94

Another weird 3Dish object

$0032A394

Gun turret from Egg Rocket

$0032A894

Oil Drum

$0032AD94

Animals

Gorilla

$0032B594

Turkey

$0032B714

Lion

$0032B894

Purple Sea Lion

$0032BA14

Flicky

$0032BB94

Penguin

$0032BD14

Rabbit

$0032BE94

I dunno what this animal is

$0032C014

Deer/goat/four legged hoofed mammal

$0032C194

Skunk

$0032C314

Bird

$0032C494

Kangaroo

$0032C614

Koala Bear

$0032C794

Elephant

$0032C914

General

Star Poll

$0032CA94

Sign post

$0032D714

Spikes

$0032ED14

Springs

$0032F294

Level Specific

Boulder

$00331314

Rock

$00331B14

Trampoline

$00331EB4

Bouncing wood block

$00332FF4

Bendy speed flags

$00334574

Speed Boosters

$00335B74

Fire? Water? Can't tell

$00336B74

Casino Night styled Triangle bumpers

$00338214

Pinball Flippers

$00338994

Balloons, the explosions, and bits left over

$00339954

Hexagon bumper

$0033D234

Round bumper

$0033D5F4

Spinning bowl thing

$0033D7F4

Thing Sonic grabs and spins around/spinning elevator

$0033E6F4

Swinging Boat

$0033F5F4

Large light up letters that spell out SONIC and SEGA(letter S is shared)

$0033FCF4

Floating star drum

$00344CF4

Large moving block from the Casino Level

$00344F74

Rotating door from the casino level

$00345634

I dunno, it's stripy

$00346234

Hook from Secret Base

$00347ED4

I dunno. A platform?

$003481F4

Bouncing block from Secret Base

$003493F4

Conveyor belt

$00349574

Egg Prison

$00360AD4

Metal Knuckles

$00391074

Unused(?) Chao sprites. looks to be gameplay styled

$00391074

Item Box(monitor) and contents

$003BFC54

Rings, sparkles, points, emeralds, HUD ring

$003C06D4

Sonic's character selection

$003C6274

Tails' character selection

$003C8A34

Knuckles' character selection

$003CBA94

Amy's character selection

$003CEF14

BG Art from the character selection

$003D33B4

Level Select "Zone,Act,Number" Art

$003E54B4

Level Select Icons

$003E9F34

Sparkles from ending sequence(?)

$003EB334

Ending Sequence

$003EBD34

Gigantic Sonic art(showing his face)

$003EED34

Back view of the Tornado, followed by side view

$003F1D34

Eggman when you don't have all the emeralds in the credits

$003F4734

More level select icons

$003F86B4

Spin Dash Dust

$003F97F4

Normal Green Shield

$003FBC54

Magnet Shield

$003FD754

Invincibility Star thingie

$003FFB54

Emerald that falls into Eggman's hand in the intro

$0040E134

Unused Title Card Names(Forest Chao, or something)

$004620B4

Art for some gigantic wheel of some sort

$00486660

Foreground Art

Neo Green Hill Act 1 Art

$004A7670

NGHZ Act 1 Animated Flowers

$004AF130

Neo Green Hill Act 2 Art

$004BF418

NGHZ Act 2 Animated Flowers

$004C6ED8

Secret Base Act 1 Art

$004D66D0

Secret Base Act 2 Art

$004EF514

Casino Level Art (Acts 1 and 2 use same art)

$00507188

Ice Mountain Act 1 Art

$0053D93C

Ice Mountain Act 2 Art

$0055B370

Angel Island Act 1 Art

$00578028

Angel Island Act 2 Art

$005952E8

Egg Rocket Art

$005B1E40

Cosmic Angel Art

$005D0210

X Zone Art

$005EA710

Moon Zone Art

$005F2158

Background Art

Neo Green Hill Background

$0062D274

Secret Base Background

$0062F490

Casino Paradise Background

$006318AC

Ice Mountain Background

$006332C8

Angel Island Background

$006382E4

Egg Rocket Backgrounds

$0063ABD0

Cosmic Angel Background

$00641BCC

X Zone Background

$00645268

Moon Zone Background

$0064A92C

Then after that, the "unused" level BGsthat are only accessible by cheating

Level Specific Editing

Neo Green Hill Zone

I don't think they exist, as 96x96 mappings are made up by individual 8x8 tiles.

Object positions

Haven't found them yet.

Palette

The palette is easy to edit. 2 bytes for every color entry. These bytes are in little endian format, meaning the bytes are swapped. For example, 7FFF(which is white) would = FF7F. Sonic Advance Pal Tool is excellent for finding out the color coding for your appropriate color.

Foreground Art

The foreground art is uncompressed, meaning you can open it in any tile editor that supports GBA 4BPP, or 4 bits per pixel. 8BPP is optional, if you want to edit the Title Screen art.

Collision

I'm not exactly sure how this works. But this is uncompressed. Anyways, since nobody knows how it works yet, or what the collision definitions are, editing this will be a bitch.

96x96 mappings

Sonic Advance is strange compared to the Gen/MD Sonic games in that it uses 96x96 metablocks, instead of the 256x256 or 128x128 in Sonic 1 or Sonic 2.
The 96x96 mappings are built up from 8x8 tiles, and not 16x16 as in the Gen/MD Sonic games. Each definition of an 8x8 tile is 2 bytes in little endian format(swapped). For example, if you wanted the right petal of the animated flower, it would be 0100, instead of 0001. I'm not sure how palette switching/flip/mirroring works yet.

Level Layout

The level layout is extremely similar to Sonic 1, where the layout goes horizontally until it ends that row, then starts the next row. The difference between Sonic 1 is that it doesn't appear to have a 'limit' on the tiles for each row, that I can find at least. The layout starts off with BG 1(as labeled in VBA), then goes to BG 2, which I call the scenery layer. This layer isn't solid at all. Then it comes to BG 3, which I call the solid layer, as every collision here is, well, solid. Well, here's a tile list. If the list does not interest you, click on the image next to this section.

00 - Blank

01 - Top of a wooden railing

02 - Top of a grind railing

03 - Another piece of the grind railing

04 - Top of a palm tree

05 - Full wooden railing

06 - Left piece of a wooden support beam

07 - Right piece of a wooden support beam

08 - Blank

09 - Blank

0A - Blank

0B - Top right corner of a loop

0C - Piece of a grind railing that connects it to the ground

0D - Continuance of a grind railing

0E - Palm tree stem with a coconut next to it

0F - Palm tree stem without a coconut next to it

10 - A support beam that sticks out of the sand(left)

11 - Blank

12 - Blank

13 - A support beam that sticks out of the sand(right)

14 - Blank

15 - Blank

...

34 - Straight Sand

35 - Sand that slopes up going to the right

36 - Top of the slope

Miscellaneous

Offset $4BF1B0-4BF1B4 appears to load the 96x96 mappings. Offset $4BF1B4-4BF1C0 appears to be coding regarding animated art. A few bytes control which tiles are loaded, and a few control the speed of the animations.

Start of Solid Layer in NGHZ 1(that's where you start at least): 004BEB68

Title screen art Part 1: $BF948-C7C88 - This is a bitch. The title screen takes advantage of a 256 color palette, meaning that editing this in TLP will be extremely difficult. To effectively edit this, open up Visual Boy Advance's palette viewer, count to the color you want(horizontally and in hex values) and type that byte in. 1 byte is one pixel. Also, the title screen does bother with mappings, so that could get in your way. Or, if you want the easy way, download TilEd 2002, or something similar.

RAM Editing

In my effort to find objects, and possibly start locations for Sonic/characters, I've looked into memory.

Around $A00 in WRAM, things change when you jump.
Around $2510 in WRAM, things change when you bring up the insta-shield
Around $2580 in WRAM, things change for jumping as well as somersaulting.

Note: I did a search for start positions based off of the ram variables. I found nothing in the rom.

This 'guide' is no guide at all. In fact, it's barely got any info in it. If you'd like to hunt for other level specific info, such as layouts for another layout, locate the foreground art for that level/act, and after that, the data should be there in the following order: foreground art, collision, 96x96 mappings, and the level layout. After level layout, some stuff regarding animated patterns may be present.