If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Super Mario Kart/RAM map: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
Lelegofrog (talk | contribs) mNo edit summary |
||
(15 intermediate revisions by 13 users not shown) | |||
Line 1: | Line 1: | ||
{{rammap|game=Super Mario Kart}} | {{rammap|game=Super Mario Kart}} | ||
Locations of variables in RAM, | Locations of variables in RAM, | ||
for the US version of Super Mario Kart for the Super NES. These were ascertained for Player 1 using Bowser on 150cc mode (shouldn't make a difference, though) | for the US version of Super Mario Kart for the Super NES. These were ascertained for Player 1 using Bowser on 150cc mode (shouldn't make a difference, though) | ||
Line 20: | Line 21: | ||
Going a little to the right = -1 to about -12000 | Going a little to the right = -1 to about -12000 | ||
Going a little to the left = 1 to about 12000 | Going a little to the left = 1 to about 12000 | ||
Spinning out of control = more than about | Spinning out of control = more than about /- 16500 | ||
(eg hit a bananna skin, shell, etc) | (eg hit a bananna skin, shell, etc) | ||
Line 26: | Line 27: | ||
speed to the east = 7E1022 | speed to the east = 7E1022 | ||
speed to the south = 7E1024 | speed to the south = 7E1024 | ||
overall speed = 7E10EA | |||
Items, 2 unsigned bytes: (7E0D70, 7E0C69) | Items, 2 unsigned bytes: (7E0D70, 7E0C69) | ||
Line 38: | Line 40: | ||
lightning = (8,56) | lightning = (8,56) | ||
selecting/spinning = (0-8,?) | selecting/spinning = (0-8,?) | ||
7E0D7C (2u) also indicates item, and is set the instant you go over an item square | |||
Height in hop/jump/ramp, 2 unsigned bytes: 7E101F | Height in hop/jump/ramp, 2 unsigned bytes: 7E101F | ||
on ground = 0 | on ground = 0 | ||
above ground = 1 | above ground = 1 | ||
Status, unsigned byte: 7E10A0 | Status, unsigned byte: 7E10A0 | ||
Line 103: | Line 107: | ||
at mini-boost peak = 28 | at mini-boost peak = 28 | ||
hit something (eg a wall) = 18/28 | hit something (eg a wall) = 18/28 | ||
In a mushroom boost or not, unsigned byte: 7E104E | |||
in the boost = 58 | |||
not = 26 | |||
---- | |||
Notes by lytron | |||
$7E/1x14/5 - NPC driver Sprite - #$03C0 Mario, #$??84 Toad, #$0788 DK, #$??8C Bowser | |||
$7E/1x17-B?- NPC driver x-coordinate(?) | |||
$7E/1x1C-F?- NPC driver y-coordinate(?) | |||
</pre> | </pre> | ||
{{Internal Data|game=Super Mario Kart}} |
Latest revision as of 18:10, 10 February 2024
The following article is a RAM map for Super Mario Kart.
Locations of variables in RAM, for the US version of Super Mario Kart for the Super NES. These were ascertained for Player 1 using Bowser on 150cc mode (shouldn't make a difference, though)
Player kart position coordinates, 2 unsigned bytes each: 7E008C = how far south 7E0088 = how far east So the 'origin' of the map is in the North West (top left) How many coins, unsigned byte: 7E0E00 Camera facing angle, 2 unsigned bytes: 7E0095 north = 0 east = 64 south = 128 west = 192 Kart facing angle (note: relative to the camera angle), 2 signed bytes: 7E10AA Going straight = 0 Going a little to the right = -1 to about -12000 Going a little to the left = 1 to about 12000 Spinning out of control = more than about /- 16500 (eg hit a bananna skin, shell, etc) Player kart speed, 2 signed bytes each: speed to the east = 7E1022 speed to the south = 7E1024 overall speed = 7E10EA Items, 2 unsigned bytes: (7E0D70, 7E0C69) nothing = (0,60) mushroom = (0,52) feather = (1,52) star = (2,56) banana = (3,56) green shell = (4,48) red shell = (5,52) coin = (7,56) lightning = (8,56) selecting/spinning = (0-8,?) 7E0D7C (2u) also indicates item, and is set the instant you go over an item square Height in hop/jump/ramp, 2 unsigned bytes: 7E101F on ground = 0 above ground = 1 Status, unsigned byte: 7E10A0 on the ground = 0 jump/hop/ramp = 2 fallen off edge = 4 in lava = 6 in deep water = 8 Surface type, unsigned byte: 7E10AE unused power up square = 20 deep water = 34 mario circuit road / ghost valley road / used power up square / rainbow road = 64 bowser castle = 68 doughnut plains track = 70 koopa beach sand = 74 choco island track = 76 ghost valley rough bit / bowser castle rough bit / ice = 78 choco island bridges = 80 choco island slightly rough bit of track = 82 mario circuit off road = 84 choco island off road = 86 snow = 88 koopa beach bushes / doughnut plains grass = 90 shallow-water = 92 mud puddle = 94 Lap number, two variables, both unsigned bytes: byte 7E10C1 = lap you're currently on byte 7E10F9 = maximum lap you've reached 0 = 127 1 = 128 2 = 129 3 = 130 4 = 131 5 = 132 finished = 133 Collision detection, unsigned byte: 7E1052 not collision = 0 collision = 7, then one less each frame down to 0 Gopher attatched to kart, unsigned byte: 7E1061 no = 0 yes = 152 / 153 Mushroom shrunk, unsigned byte: 7E1030 no = 0 yes = 128 Boost-counter (undocumented feature - see http://tasvideos.org/SuperMarioKartPhysics.html). Two unsigned bytes: 7E10CA Kart skidded out of control, unsigned byte: 7E10A6 normal = 0/2 using a star = 0/2/28 hit a banana-peel = 12 skidded out right = 14 skidded out left = 16 in a mini-boost = 18 at mini-boost peak = 28 hit something (eg a wall) = 18/28 In a mushroom boost or not, unsigned byte: 7E104E in the boost = 58 not = 26 ---- Notes by lytron $7E/1x14/5 - NPC driver Sprite - #$03C0 Mario, #$??84 Toad, #$0788 DK, #$??8C Bowser $7E/1x17-B?- NPC driver x-coordinate(?) $7E/1x1C-F?- NPC driver y-coordinate(?)
Internal Data for Super Mario Kart
| |
---|---|