This repository has been archived by the owner on Sep 28, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
Transports
Matt Greer edited this page Apr 20, 2021
·
10 revisions
The transport data in the level file tells the game how to move mario after going down a pipe, through a door, etc
header -- first two bytes, number of transports in the room. transports are not 0xff terminated. crazy that it's two bytes, will one room ever have more than 255 transports?? so it's possible the second byte actually means something else
from there, each transport is ten bytes
byte | meaning |
---|---|
0 | source Y (note this is backwards from all other info out there, but verified this is correct!) |
1 | source X |
2 | dest room number |
3 | an unknown byte |
4 | dest Y (similarly backwards as source y/x) |
5 | dest X |
6 | center screen Y (also backwards) |
7 | center screen X |
8 | an unknown byte |
9 | exit type |
In general, Y comes before X, all previous docs had this the other way around.
in level mushroom04, room 1, there are many doors. They all are of the form 0 y x 0
. It seems like in ghost house rooms, doors have id 0.
But even the locked door is of the form 0 y x 0
. So I believe the transport specifies the door is locked.