Difference between revisions of "Super Mario Kart:RAM map"

From Data Crystal
Jump to navigation Jump to search
m
(more/better info)
Line 68: Line 68:
 
mud puddle = 94
 
mud puddle = 94
  
lap number, unsigned byte: 7E022E
+
Lap number, two variables, both unsigned bytes:
lap 0/1 = 74
+
byte 7E10C1 = lap you're currently on
lap 2 = 163
+
byte 7E10F9 = maximum lap you've reached
lap 3 = 164
+
0 = 127
lap 4 = 165
+
1 = 128
lap 5 = 174
+
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
 
Gopher attatched to kart, unsigned byte: 7E1061

Revision as of 13:52, 13 July 2006

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:
7E1058 = 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

Player kart facing angle, 2 unsigned bytes: 7E0095
north = 0
east = 64
south = 128
west = 192

Player kart speed, 2 signed bytes each:
speed to the east = 7E1022
speed to the south = 7E1024

Skidding/spin out of control, 2 signed bytes: 7E10AA
Not skidding = 0
Skidding a little to the right = -1 to about -12000
Skidding a little to the left = 1 to about 12000
Spinning out of control = more than about +/- 16500
(eg hit a bananna skin, shell, etc)

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,?)

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