Skip to content
This repository has been archived by the owner on Sep 28, 2024. It is now read-only.

In game level object header

Matt Greer edited this page Feb 10, 2022 · 7 revisions

The info on the level/object header in existing documents is not proving to be correct. Here is what I have found so far

This table based on one found in devtronic's doc

AA AA BB BB CD EE FG HH IJ KL MM

Block Description Notes
AA AA Level ID of the next area. (Big Endian) untested
BB BB Opponent ID of the next area. (Big Endian) untested
C Start position Y see below
D Map length, a nibble corresponds to a block of 256px, i.e. 0 = 256px, 1 = 512px etc ... confirmed
EE Start position X see below
F Scroll type untested
G Object set of this area confirmed
HH GFX confirmed, but only the bottom 5 bits
I Object set of the next area untested
J Music untested
K "Extra" color untested
L "Extra" type untested
MM Background confirmed

start y position

this is not pixels or tiles, and totally different from start y position in e-reader levels

according to SMA4Notes.txt (author unknown), the values map to this

0 = vertical position 18 adds another 0F to the level. 1 = vertical position 18 2 = vertical position 5 3 = vertical position 5 4 = vertical position 0 5 = vertical position 0 6 = vertical position 16 7 = vertical position 16 8 = vertical position 4 9 = vertical position 4 A = vertical position 8 B = vertical position 8 C = vertical position 12 D = vertical position 12 E = vertical position 19 F = vertical position 19

but I have not tested this yet

start x position

this is not pixels or tiles, and is totally different from e-reader start x position

SMA4Notes.txt says

00 - 1F, 80 - 9F starting x = 01 20 - 3F, A0 - BF starting x = 07 40 - 5F, C0 - DF starting x = 0D 60 - 7F, E0 - FF starting x = 0

but I have not tested this yet