Filesystem/Race/Common.szs/GeoHitTableKart.bin
GeoHitTableKart.bin is a sub file of /Race/Common.szs. It contains a list of player interaction parameters with objects.
File Format
This file shares a table-based format also used in GeoHitTableItem.bin, GeoHitTableItemObj.bin, GeoHitTableKartObj.bin and ObjFlow.bin; which is divided in a header and two sections.
Header
Offset | Type | Description |
---|---|---|
0x00 | u16 | Number of objects. |
0x02 | u16 | Number of fields in section 1, excluding the Object ID. 0x4 for this file. |
0x04 | End of header, start of section 1 |
Section 1
This section contains the main table with hit parameters for each object.
Offset | Type | Description |
---|---|---|
0x00 | u16 | Object ID. |
0x02 | u16 | Interaction type without any power-up status. |
0x04 | u16 | Interaction type with Star power-up. |
0x06 | u16 | Interaction type with Mega Mushroom power-up. |
0x08 | u16 | Interaction type with Bullet Bill power-up. |
Note: the invincibility state of power-ups ignore damage hit interactions.
Interaction types
The main difference between GeoHitTableKartObj.bin and this file is that the first one contains the interaction types that affect the objects, and the second one the interaction types that affect the players. This table represents all possible interaction types:
ID | Description |
---|---|
0x01-0x06 | Constant wall at any speed, only if the object has collision (unused). |
0x07 | Clip through the object at any speed (unused). |
0x08 | Object acts like a wall at any speed, only spark and sound at certain speed. |
0x09 | Spin hit at any speed, don't lose item (unused). |
0x0A | Spin hit only at certain speed, wall without spark/sound if moving slow/without moving, don't lose item. |
0x0B | Fire spin hit at any speed, don't lose item. |
0x0C | Clip through the object at certain speed, wall without spark/sound if moving slow/without moving (unused). |
0x0D | Small launch up hit at any speed, don't lose item. |
0x0E | Knockback hit at certain speed and if static, wall without spark/sound if not static, lose item. |
0x0F | Launch up hit and bump once in the ground at any speed, glitchy spin in mid air on certain objects, lose item (unused). |
0x10 | Knockback hit and bump once in the ground at any speed, lose item. |
0x11 | Crush hit at any speed (lasts longer than 0x1E), lose item. |
0x12 | Small bump towards the player, it's possible to clip through object at certain speed. |
0x13 | Big bump towards the player at any speed. |
0x14 | Spin hit, bumps and shrinks the player at any speed. |
0x15 | High launch up hit at any speed, lose item. |
0x16 | Spin hit at certain speed. |
0x17 | Constant weak wall at any speed, only if the object has collision. |
0x18 | Constant wall at any speed, only if the object has collision. |
0x19 | Launch up hit at any speed, glitchy spin in mid air on certain objects, don't lose item. |
0x1A | Object acts like a wall at any speed, only spark and sound at certain speed. |
0x1B | Object acts like a rubber wall. |
0x1C | Constant wall at any speed, only if the object has collision. |
0x1D | Untrickable jump pad at any speed (unused). |
0x1E | Crush hit at any speed (lasts shorter than 0x11), lose item. |
0x1F | Crush hit at any speed, then respawn, lose item (unused). |
0x20 | Explosion launch up hit at any speed, lose item. |
0x100 | Knockback hit at any speed, lose item (unused). |
Any other value is ignored by the game, and hence will have no effect or a random effect on the object, or it will freeze the game.
Section 2
The second part consists of an object usage table. It lists the indexes of all object slot IDs in Section 1. This section is exactly the same in GeoHitTableItem.bin, GeoHitTableItemObj.bin, GeoHitTableKart.bin, GeoHitTableKartObj.bin and ObjFlow.bin.
Offset | Type | Description |
---|---|---|
0x00 | u16[N] | List of N object slot IDs indexes, relative to Section 1 objects. N = Number of object slot IDs, 0x2F4 total slots in Mario Kart Wii for object IDs 0-0x2F3. Value 0xFFFF (-1) for undefined objects (no slot). |
Object Groups
All 316 objects are divided into 8 groups and the hundreds-digit (from 0 to 7) is the group number. Each group starts with object 01, there are no gaps. The idea behind the groups is unknown.
Hex range | Decimal range | Number of objects |
Details |
---|---|---|---|
0x001-0x018 | 1– 24 | 24 | ? |
0x065-0x077 | 101–119 | 19 | ? |
0x0c9-0x0f3 | 201–243 | 43 | ? |
0x12d-0x18f | 301–399 | 99 | ? |
0x191-0x1ac | 401–428 | 28 | ? |
0x1f5-0x21b | 501–539 | 39 | ? |
0x259-0x261 | 601–609 | 9 | ? |
0x2bd-0x2f3 | 701–755 | 55 | ? |
Object List
ID Name No power-up Star Mega Mushroom Bullet Bill ------------------------------------------------------------------------------------------- 001 airblock 8 8 8 8 002 Psea - - - - 003 lensFX - - - - 004 venice_nami - - - - 005 sound_river - - - - 006 sound_water_fall - - - - 007 pocha - - - - 008 sound_lake - - - - 009 sound_big_fall - - - - 00a sound_sea - - - - 00b sound_fountain - - - - 00c sound_volcano - - - - 00d sound_audience - - - - 00e sound_big_river - - - - 00f sound_sand_fall - - - - 010 sound_lift - - - - 011 pochaYogan - - - - 012 entry - - - - 013 pochaMori - - - - 014 eline_control - - - - 015 sound_Mii - - - - 016 begoman_manager - - - - 017 ice - - - - 018 startline2D - - - - 065 itembox - - - - 066 DummyPole 1a 1a 1a 1a 067 flag 8 8 8 8 068 flagBlend 8 8 8 8 069 gnd_sphere - - - - 06a gnd_trapezoid - - - - 06b gnd_wave1 - - - - 06c gnd_wave2 - - - - 06d gnd_wave3 - - - - 06e gnd_wave4 - - - - 06f sun - - - - 070 woodbox 8 - - - 071 KmoonZ - - - - 072 sunDS - - - - 073 coin - - - - 074 ironbox 8 8 8 8 075 ItemDirect - - - - 076 s_itembox - - - - 077 pile_coin - - - - 0c9 f_itembox - - - - 0ca MashBalloonGC - - - - 0cb WLwallGC 8 8 8 8 0cc CarA1 e - - - 0cd basabasa 12 - - - 0ce HeyhoShipGBA - - - - 0cf koopaBall 19 - - - 0d0 kart_truck 1e - 8 - 0d1 car_body 1e - - - 0d2 skyship - - - - 0d3 w_woodbox 8 - - - 0d4 w_itembox - - - - 0d5 w_itemboxline 8 - - - 0d6 VolcanoBall1 b - - - 0d7 penguin_s a - - - 0d8 penguin_m a - - - 0d9 penguin_l - - - - 0da castleballoon1 - - - - 0db dossunc 8 - - - 0dc dossunc_soko 11 - - - 0dd boble b - - - 0de K_bomb_car 20 - - - 0df K_bomb_car_dummy 20 - - - 0e0 car_body_dummy - - - - 0e1 kart_truck_dummy - - - - 0e2 hanachan 1b - - - 0e3 seagull - - - - 0e4 moray - - - - 0e5 crab a - - - 0e6 basabasa_dummy 1c - - - 0e7 CarA2 e - - - 0e8 CarA3 e - - - 0e9 Hwanwan 10 - 8 - 0ea HeyhoBallGBA 20 - - - 0eb Twanwan 1e - 8 - 0ec cruiserR - - - - 0ed bird - - - - 0ee sin_itembox - - - - 0ef Twanwan_ue 10 - 8 - 0f0 BossHanachan 1b - - - 0f1 Kdossunc 8 8 8 8 0f2 BossHanachanHead 1b - - - 0f3 K_bomb_car1 20 - - - 12d dummy - - - - 12e dokan_sfc 1a - - - 12f castletree1 - - - - 130 castletree1c 1a 1a 1a 1a 131 castletree2 - - - - 132 castleflower1 - - - - 133 mariotreeGC - - - - 134 mariotreeGCc 1a 1a 1a 1a 135 donkytree1GC - - - - 136 donkytree2GC 1a 1a 1a 1a 137 peachtreeGC - - - - 138 peachtreeGCc 1a 1a 1a 1a 139 npc_mii_a - - - - 13a npc_mii_b - - - - 13b npc_mii_c - - - - 13c obakeblockSFCc 8 8 8 8 13d WLarrowGC - - - - 13e WLscreenGC - - - - 13f WLdokanGC 1a 1a 1a 1a 140 MarioGo64c 1a 1a 1a 1a 141 PeachHunsuiGC - - - - 142 kinokoT1 8 8 8 8 143 kinokoT2 8 8 8 8 144 pylon01 17 - - - 145 PalmTree 1a 1a 1a 1a 146 parasol 1a 1a 1a 1a 147 cruiser - - - - 148 K_sticklift00 - - - - 149 heyho2 - - - - 14a HeyhoTreeGBAc 1a 1a 1a 1a 14b MFaceBill - - - - 14c truckChimSmk - - - - 14d MiiObj01 - - - - 14e MiiObj02 - - - - 14f MiiObj03 - - - - 150 gardentreeDS - - - - 151 gardentreeDSc - - - - 152 FlagA1 - - - - 153 FlagA2 - - - - 154 FlagB1 - - - - 155 FlagB2 - - - - 156 FlagA3 - - - - 157 DKtreeA64 - - - - 158 DKtreeA64c 1a 1a 1a 1a 159 DKtreeB64 - - - - 15a DKtreeB64c 1a 1a 1a 1a 15b TownTreeDSc 1a 1a 1a 1a 15c Piston - - - - 15d oilSFC 16 - - - 15e DKmarutaGCc - - - - 15f DKropeGCc - - - - 160 mii_balloon - - - - 161 windmill - - - - 162 dossun - - - - 163 TownTreeDS - - - - 164 Ksticketc - - - - 165 monte_a - - - - 166 MiiStatueM1 - - - - 167 ShMiiObj01 - - - - 168 ShMiiObj02 - - - - 169 ShMiiObj03 - - - - 16a Hanabi - - - - 16b miiposter - - - - 16c dk_miiobj00 - - - - 16d light_house - - - - 16e r_parasol 1a - - - 16f obakeblock2SFCc 8 8 8 8 170 obakeblock3SFCc 8 8 8 8 171 koopaFigure 8 8 8 8 172 pukupuku - - - - 173 v_stand1 - - - - 174 v_stand2 - - - - 175 leaf_effect - - - - 176 karehayama - - - - 177 EarthRing - - - - 178 SpaceSun - - - - 179 BlackHole - - - - 17a StarRing - - - - 17b M_obj_kanban - - - - 17c MiiStatueL1 - - - - 17d MiiStatueD1 - - - - 17e MiiSphinxY1 - - - - 17f MiiSphinxY2 - - - - 180 FlagA5 - - - - 181 CarB - - - - 182 FlagA4 - - - - 183 Steam - - - - 184 Alarm - - - - 185 group_monte_a - - - - 186 MiiStatueL2 - - - - 187 MiiStatueD2 - - - - 188 MiiStatueP1 - - - - 189 SentakuDS - - - - 18a fks_screen_wii - - - - 18b KoopaFigure64 b - - - 18c b_teresa - - - - 18d MiiStatueDK1 - - - - 18e MiiKanban - - - - 18f BGteresaSFC - - - - 191 kuribo a - - - 192 choropu d - - - 193 cow e - - - 194 pakkun_f e - - - 195 WLfirebarGC b - - - 196 wanwan 10 - 8 - 197 poihana 15 - - - 198 DKrockGC 19 - - - 199 sanbo a - - - 19a choropu2 d - - - 19b TruckWagon 19 - - - 19c heyho a - - - 19d Press 8 - 8 - 19e Press_soko 11 - 8 - 19f pile 1a 1a 1a 1a 1a0 choropu_ground 18 - - - 1a1 WLfireringGC b - - - 1a2 pakkun_dokan 1a 1a 1a 1a 1a3 begoman_spike 13 13 13 13 1a4 FireSnake b - - - 1a5 koopaFirebar b - - - 1a6 Epropeller 14 - 14 - 1a7 dc_pillar_c 19 8 8 8 1a8 FireSnake_v b - - - 1a9 honeBall b - - - 1aa puchi_pakkun a - - - 1ab sanbo_big 10 - - - 1ac sanbo_big 10 - - - 1f5 kinoko_ud - - - - 1f6 kinoko_bend - - - - 1f7 VolcanoRock1 - - - - 1f8 bulldozer_left - - - - 1f9 bulldozer_right - - - - 1fa kinoko_nm - - - - 1fb Crane - - - - 1fc VolcanoPiece - - - - 1fd FlamePole - - - - 1fe TwistedWay - - - - 1ff TownBridgeDSc - - - - 200 DKship64 8 8 8 8 201 kinoko_kuki 1a 1a 1a 1a 202 DKturibashiGCc - - - - 203 FlamePoleEff d - - - 204 aurora - - - - 205 venice_saku - - - - 206 casino_roulette - - - - 207 BossField01_OBJ1 - - - - 208 dc_pillar - - - - 209 dc_sandcone - - - - 20a venice_hasi - - - - 20b venice_gondola 8 8 8 8 20c quicksand - - - - 20d bblock - - - - 20e ami - - - - 20f M_obj_jump - - - - 210 starGate - - - - 211 RM_ring1 - - - - 212 FlamePole_v d - - - 213 M_obj_s_jump - - - - 214 InsekiA - - - - 215 InsekiB - - - - 216 FlamePole_v_big d - - - 217 Mdush - - - - 218 HP_pipe - - - - 219 DemoCol - - - - 21a M_obj_s_jump2 - - - - 21b M_obj_jump2 - - - - 259 DonkyCannonGC 8 8 8 8 25a BeltEasy - - - - 25b BeltCrossing - - - - 25c BeltCurveA - - - - 25d BeltCurveB - - - - 25e escalator - - - - 25f DonkyCannon_wii 8 8 8 8 260 escalator_group - - - - 261 tree_cannon 8 8 8 8 2bd group_enemy_b - - - - 2be group_enemy_c - - - - 2bf taimatsu - - - - 2c0 truckChimSmkW - - - - 2c1 Mstand - - - - 2c2 dkmonitor - - - - 2c3 group_enemy_a - - - - 2c4 FlagB3 - - - - 2c5 spot - - - - 2c6 group_enemy_d - - - - 2c7 FlagB4 - - - - 2c8 group_enemy_e - - - - 2c9 group_monte_L - - - - 2ca group_enemy_f - - - - 2cb FallBsA - - - - 2cc FallBsB - - - - 2cd FallBsC - - - - 2ce volsmk - - - - 2cf ridgemii00 - - - - 2d0 Flash_L - - - - 2d1 Flash_B - - - - 2d2 Flash_W - - - - 2d3 Flash_M - - - - 2d4 Flash_S - - - - 2d5 MiiSignNoko - - - - 2d6 UtsuboDokan - - - - 2d7 Spot64 - - - - 2d8 DemoEf - - - - 2d9 Fall_MH - - - - 2da Fall_Y - - - - 2db DemoJugemu - - - - 2dc group_enemy_a_demo - - - - 2dd group_monte_a_demo - - - - 2de volfall - - - - 2df MiiStatueM2 - - - - 2e0 RhMiiKanban - - - - 2e1 MiiStatueL3 - - - - 2e2 MiiSignWario - - - - 2e3 MiiStatueBL1 - - - - 2e4 MiiStatueBD1 - - - - 2e5 Kamifubuki - - - - 2e6 Crescent64 - - - - 2e7 MiiSighKino - - - - 2e8 MiiObjD01 - - - - 2e9 MiiObjD02 - - - - 2ea MiiObjD03 - - - - 2eb mare_a - - - - 2ec mare_b - - - - 2ed EnvKareha - - - - 2ee EnvFire - - - - 2ef EnvSnow - - - - 2f0 M_obj_start - - - - 2f1 EnvKarehaUp - - - - 2f2 M_obj_kanban_y - - - - 2f3 DKfalls - - - -
LE-CODE
Track authors can include an own version of GeoHitTableKart.bin in the SZS file of the track. Create a sub-directory ./Common/ and copy the file into the directory.
At the moment, only distributions using LE-CODE recognize this file. See LE-CODE Track FAQ and LE-CODE Distribution FAQ for details.
Tools
The following tools can handle GeoHitTableKart.bin:
- Wiimms SZS Tools, by Wiimm, see wszst text and wszst binary for details.