Mario Kart 7
|Mario Kart 7|
Developers: Nintendo EAD,
This game has unused areas.
This game has a prerelease article
This game has a notes page
This game has a bugs page
|This page is loooong...|
Consider grouping related content into additional subpages to ease readability.
Mario Kart 7 is essentially the same thing as Mario Kart Wii but more rocked up and in 3D. Oh, and you can paraglide, drive underwater, play as new characters, use seven items at once, race seven ghosts at once....but other than that, pretty much the same.
- 1 Sub-Pages
- 2 Unused Graphics
- 3 Unused Sounds/Music
- 4 Gctr_MarioCircuit_Divide
- 5 Unused Models
- 6 Unused Car Route in Wii Coconut Mall
- 7 Unused Code
- 8 Unusual Item Boxes
- 9 Unused Battle Mode Item Functions
- 10 Unused "Race Number" Strings
- 11 Unused Lap Setting
- 12 Miscellaneous
- 13 Debug Material
- 14 Unseen Blue Glider Mushroom
- 15 3DS Download Play Icon Oddity
- 16 Regional Differences
- 17 Revisional Differences
- 18 Internal Project Name
| English Translation Differences|
Sigh. Yep. This again.
Two dummy textures for character emblems. They are 32x32 pixels each, whereas the final emblems are 64x64. The first one featuring the letters "L" and "R" can be found in many archives, while the second is only found in a single archive.
Early Mario Emblem
An early version of Mario's emblem can be found in /Kart/Emblem/emblem_mr/emblem_mr.bctex in the RomFS (the final version is in the same directory, albeit named emblem_mr.bcmdl instead). The early version doesn't have the gray ring that surrounds the red "M", and it also doesn't have mipmaps.
Dummy Mario Circuit image
A dummy image that appears in two track archives: Neo Bowser City/Koopa City and N64 Luigi Raceway. This image is used as a placeholder for the giant screens found in those courses, until the game replaces them with other data. The image was originally rotated 90° clockwise, but has been rotated for ease of comparison. The image is from an early version of Mario Circuit, and the differences are as follows:
- Mario is racing against himself, something only possible in local or online multiplayer mode.
- The finish line banner's shadow appears to be glitching the floor texture in the dummy. It appears to have been manually edited out using an image editor.
- The dummy's item boxes are closer to their Mario Kart 64 design.
- There are four item boxes in the dummy and five in the final.
- The coin formation is the same as in the beginning of the credits in the final.
- There are lighting differences on Mario and the pink hill in the background.
In the /UI/Debug directory is a copy of the Japanese title screen, stored into two files for the left and right eye images. The archives are called title_capture_top_l.bclim and title_capture_top_r.bclim.
Test Glideboard Texture
In the files for DK Pass, there is an unused texture called test_glideboard. It is the same as the used texture, but without transparency.
"Press A Button" E3 Demo Leftover
In the same directory there seems to be a layout (bclyt) and animation (bclan) file that use these graphics. Get a preview of these (Switch Toolbox or Every File Explorer should be able to preview them).
Exclusive to the kiosk demo versions of the game are three leftover graphics from the title screen of the E3 demo of the game. These are the graphics for pressing the A button, shown in the bottom screen.
They're located in /UI/menu.szs. When the file is decompressed, they're located in the following addresses within the file (start - end address):
- E3_press.bclim (Press): 0x38000 - 0x3A027
- E3_Abtn_l.bclim (A): 0x66400 - 0x67427
- E3_button.bclim (Button): 0x2B2F00 - 0x2B4F27
Unused Online Community Icon
|Icon||In-game Screenshot (Mockup)|
An unused Earth icon for online communities. It looks very similar to the icon shown in the button for Online mode in the Title screen. It's named com_official_icon.bclim, and it can be found in /UI/menu.szs/. Its ID (UI::CommunityIcon::EIdx) is 0x4B.
Sequenced (MIDI) version of the Time Trials start fanfare
This is a sequenced (MIDI) version of the fanfare that plays when starting a Time Trial. Sequenced starting fanfares are used in Download Play, for the racer who isn't playing with a cartridge. However, Time Trials is not available when playing from Download Play, so this goes unused.
Its filename is SEQ_FANFARE_START_TA.bcseq, and it's located from 0x7683C0 to 0x7687DF in the file /Sound/ctr_dash.bcsar in the RomFS.
Enable the code below and start a Time Trial to hear it:
Unused Battle Mode Frontrunning Beats
Record the songs with these beats.
The songs used in the arenas in Battle mode have frontrunning beats that are never used.
Unused Countdown Sound
There is an unused sound for a countdown starting from 10 seconds (like in Mario Kart Wii) named SE_RC_BTL_CD_10_9_8.bcwav. The sound is identical to the one from Mario Kart Wii, so it was most likely carried over from that game.
In the sound file (/Sound/ctr_dash.bcsar), there are 2 dummy Shy Guy sounds at the very end. All the used character sounds are in the middle of the BCSAR file. It isn't currently known what their names are.
Rainbow Road Sound in Waluigi Pinball's Sound File
Strangely, in Waluigi Pinball's Sound File (GRP_CR_DS_WALUIGI_PINBALL.bcgrp), there is a copy of a sound used in Rainbow Road and SNES Rainbow Road.
|Download Gctr_MarioCircuit_Divide.szs (Restoration)
File: MK7 Gctr MarioCircuit Divide Restoration.zip (1.30 MB) (info)
This is the only unused track in the game. It is essentially an early version of Mario Circuit, with slightly different geometry, collision and parameters. There are no references to this course in the game's code.
Course archive (.szs)
Since the course archive lacks many important files, and the course information (kmp) file is in an early format, the track crashes when trying to load it.
The following files can be found in the course archive:
|Gctr_MarioCircuit_Divide.bclgt||Light information file, similar to the final version found in the Mario Circuit course archive.|
|Gctr_MarioCircuit.bclgt (*)||Another light information file, differs from the previous one and the final version.|
|Gctr_MarioCircuit_Divide_ch0.bclgt||Character light information file, uses different internal names than the ones found in used courses.|
|Gctr_MarioCircuit_Divide.div||Model division file, seems to match the main course model appropriately.|
|Gctr_MarioCircuit_Divide.bcmdl||Main course model file, more info below.|
|Gctr_MarioCircuit_Divide.kcl||Main collision file, matches the main course model appropriately, more info below.|
|Gctr_MarioCircuit.kcl (*)||Another collision file, doesn't match the main course model nor the final Mario Circuit course model, more info below.|
|Gctr_MarioCircuit_Divide.kmp||Course info file, more info below.|
|Gctr_MarioCircuit_Divide_map.bcmdl (**)||3D model of the course minimap.|
(*) This file is a duplicate file and should not belong to this course archive.
(**) This file is unique and cannot be found in any other course archive.
The following files are missing from the course archive:
|UIMapPos.bin||Determines the position offsets for the bottom screen minimaps.|
|Gctr_MarioCircuit_Divide_map.bclim||Bottom screen global minimap (small)|
|Gctr_MarioCircuit_Divide_map2.bclim||Bottom screen global minimap (full)|
|Course Object Models||3D models for the objects defined in the kmp (Skybox variant 1, Goomba, Red Mushroom, Tree Variant 1 and pipe models).|
Course Model (.bcmdl)
The .bcmdl course models are quite similar between the early and final versions, however a few textures are different. The spotlight texture was stretched to double the width and the castle wall texture and shading was slightly modified (matching prerelease footage). The four small trick ramps are missing, so the shadow map lacked shadows for these.
In addition, the early version in general is a bit bigger, there are no trick ramps, and the texture animation for the water doesn't loop, so it will only play once before stopping completely.
Strangely, there are two collisions files Gctr_MarioCircuit.kcl and Gctr_MarioCircuit_Divide.kcl inside the .szs, second concording with the model.
They are almost identical to each other. The only difference seems to be that, in Gctr_MarioCircuit.kcl, when players drive into the flowers located before the entrance of the castle, the tires won't emit a flower graphical effect.
Both collision models don't have a water barrier. This is because the water barrier is actually added as an object in the early version, rather than being part of the collision model. Said object is named internally as WaterFix (ID 0x132).
The glider pad uses the same collision type that is used in the blue glider mushroom from Wii Mushroom Gorge. Mario Circuit originally had a bouncy mushroom instead of a glider pad when exiting the castle.
Interestingly, both collision models show that, originally, the dirt path located after the exit of the castle used to be connected with the castle walls.
Course info (kmp)
The early kmp is partially empty, only global objects, routes and areas exist. Checkpoints, cpu/item routes, respawn points and some other necessary sections to make the course load are missing.
- The course doesn't have any itemboxes or coins.
- There are three large Goombas rather than two normal-sized ones.
- The air flowing from the pipes near the gliding section is missing.
- The course uses Toad Circuit trees in the early version, rather than pink Sakura trees.
- There are no hills in the background of the track when you start the race.
- The course has replay/result cameras that go unseen, as there are no checkpoints defined, so players won't be able to complete the race to see them. Most of them are very different to the cameras in the final version of the course. The one located at the end of the pipe before the finish line seems to be a leftover from the beginning of the game's footage seen at E3 2010. Curiously, there are 3 extra cameras located out of bounds to the east of the finish line. They cannot be activated normally, as the triggers (AREAs) that are used to trigger these are also located out of bounds as well.
Bottom Screen Map
The bottom screen map is stored in a different model (.bcmdl) in the same way as Mario Kart Wii did, instead of an image file (bclim). It even has the two bones that are used to position the map, named exactly how all minimap models from Mario Kart Wii are (posLD and posRU).
An unused blue Koopa shell model, found in /RaceCommon.szs/Item/ (which contains all the item models), and named itemKouraBlue.bcmdl (the final Blue Shell model is named itemTogezo.bcmdl). The texture is slightly different than the one used for the Blue Shell item.
An unused soccer ball model (named F2_Item_Ball_Soccer internally) with a texture and a normal map, likely used for testing purposes, also found in RaceCommon.szs. The model and textures are also in Nintendogs + Cats, indicating this may possibly be a leftover from that game since they were in development around the same time.
A page of Nintendo Company Guide Book 2012 shows this early garage.
The model Garage.bcmdl in /Menu3D/Garage is an early version of the garage that serves as the background for the character/kart select screen (the final version is located in /Menu3D.szs/Menu3D/Garage.bcmdl). Unlike the final garage, the door is on the right-hand side instead of the back, and the only decorations it has are some cables and a set of tires. It has no textures, but the vertex shading still remains.
Unused Banner Model
There's an unused model for the Home Menu banner found in /banner/*/banner.bnr in the RomFS (the final banner model is located in the ExeFS). It features an animated model of Mario driving on his Standard Kart.
The models for both Mario and the Standard Kart, while mostly identical to the final gameplay models, feature slightly different textures. For example, Mario's skin is a bit paler in the unused banner model. In the final game, the banner model is in much higher quality than the models used in gameplay.
The icon stored in banner.icn under the same directory is the same icon that was used for the Download Play version. In addition, the unused banner doesn't have any sound.
Unused Car Route in Wii Coconut Mall
There's an unused route in Wii Coconut Mall that suggests that the third car (which appeared in the Wii version) also appeared here at some point in development. Here, they extended its path so that it goes from wall to wall, rather than from one of the walls to the boost panel like in the Wii version.
Unused Super Thwomps Behaviour
Super Thwomps, the type of Thwomps that appear in SNES Rainbow Road, have unused code that removes the Star item effect from players when they are stomped.
This is impossible to achieve in the normal game, since the Star item makes the player completely invincible to those enemies. In the adjacent video, a cheat code was used to make players vulnerable to Super Thwomps while on a Star, in order to show the unused behaviour.
This behaviour is only found in Super Thwomps, and not regular Thwomps. The function that manages this behaviour is named Kart::VehicleReact::reactStarEnd(), and can be found at RAM address 0x002DF154 (US v1.1 prepatched, aka US Rev1). Said function is only ever called from Field::ObjectStarDossun::doReaction_againstKart + 0x148, at RAM address 0x0038B790 (US v1.1 prepatched, aka US Rev1)
Unusual Item Boxes
Get a better video.
On Rainbow Road. after the first gliding section, there are three Item Boxes hidden under the planet's rings. They can only be collected by flying under the rings and back up onto the course. Unlike the Super Item Box retained in DK Pass (DS), which has a unique item distribution of only speed items and Red Shells, they appear to have no special characteristics.
Unused Battle Mode Item Functions
The Blue Shell, Lightning, and Bullet Bill can't be obtained under normal circumstances. These items will have unusual effects when hacked in.
Acts like a Green Shell but it goes on forever. The game crashes if it goes out of bounds.
Shocks the players but it doesn't always give out a point per player. The players do not shrink, and they keep any items they had.
Follows a route similar to the CPUs, and like the Blue Shell, the effect lasts forever. It performs tricks automatically. After a while it will get stuck in a loop.
Unused "Race Number" Strings
Inside the message file at UI\common-XX.szs\Common.msbt, there are the messages for indicating the race number (1st, 2nd, 3rd, final). However, there are also messages for all the way up to the "31th race", allowing for a maximum of 32 races. It is likely that this would have been used with a feature for customizing the number of races in VS mode or online tournaments, both of which are locked to 4 races at a time.
Unused Lap Setting
Like in Mario Kart Wii, there is an unused value in the track's settings file which controls the number of laps. Modifying it doesn't seem to affect anything in-game, however. The game only has Lakitu signs for three laps, so it would be unable to properly indicate any extra laps.
The game has two different ways of referencing items. The items that appear in the item roulette (item slots or eItemSlot) and the items that appear in the races as 3D models (item types or eItemType).
Unused Item Slots
There are two test item slots referenced as Test3 (ID 0xF) and Test4 (ID 0x10) with zero probability to appear in any game mode. They display in the item roulette as star items, but since the conversion from item slot to item type is stubbed and the game doesn't have any special code for when the player uses them, they do nothing when obtained and used. These two items actually appear in the item roulette spin animation, as the game just takes a random item slot ID in the range 0x0 (Single Banana) and 0x13 (Triple Red Shells), which includes the test item IDs. This has the side effect of making the star graphic appear more often in the spin animation.
Unused Item Types
The game features 3 unused item types. The first of them is the Golden mushroom (KinokoP, ID 0x08) item type. While this item appears in the game, its behaviour is hardcoded and it doesn't have a 3D model, so the item type is stubbed. The other two correspond to the Fake Item Box (FakeBox, ID 0x07) and Mega Mushroom (BigKinoko, ID 0x0B). All the code and assets related to these item types are stubbed or missing, and only a few references remain in a table that determines how items interact with each other (RaceCommon.szs/ItemReactTable.bin).
Inside a file where there are all the kart body model names, there is a reference to a kart body called "std_lod_oneTest", probably for testing. However, there isn't any model or file with that name. "std" means standard, "lod" means the model is used by the other racers, "oneTest" can mean is the first model is for testing.
Check for this content in other regions and versions.
Inside the .code of the European v1.1 ExeFS at 0x4F1A18, there are some references to a debug menu, such as "SndSceneDebug.MapObj", "SndSceneDebug", and "DebugPageList".
There are also a few debug controls:
Also, at 0x37B078, where there are all the options shown when finishing a race, there are debug options such as "Debug_Next", "Debug_Reload" and "Debug_Exit"
After a RAM dump, the following debug tasks can be found:
Note that Shiraiwa, Suzuki, Obayashi and Sakuraba are some of the game's main programmers.
|Download Mario Kart 7 (Download Play Child) Symbol Map
File: MK7 Download Play Child Symbol Maps.zip (234 KB) (info)
In the download play child application (sent by the game to other consoles in Download Play mode) there is a 1.5MB file called CTRDash.xmap which has all of the 21305 function names and their respective addresses in RAM of the download play executable. Since all of the addresses match the assembly code, the file was probably added or updated with the latest compilation of the child app. Here is a portion of it:
... 30d790 Enemy::AIEngine::stateReady() 30d8b8 Enemy::AIEngine::stateInitIdle() 30d8bc Enemy::AIEngine::stateInitStop() 30d8c0 Enemy::AIEngine::stateAfterGoal() 30d918 Enemy::AIEngine::stateGhostIdle() 30d91c Enemy::AIEngine::stateInitReady() 30d968 Enemy::AIEngine::statePlayerIdle() 30da1c Enemy::AIEngine::initAfterPathMgr() 30da48 Enemy::AIEngine::stateInitAfterGoal() 30da78 Enemy::AIEngine::stateInitGhostIdle() 30da7c Enemy::AIEngine::stateInitPlayerIdle() 30dacc Enemy::AIEngine::init() 30dbb4 Enemy::AI::startKiller() 30dbdc Enemy::AIEngine::awake() 30dc88 Enemy::AIEngine::sleep() ...
This file can only be found in the European, American and Japanese builds of the game, indicating that this file might have been kept by mistake and only removed in later builds, such as the Taiwanese, Chinese and Korean releases.
Unseen Blue Glider Mushroom
In the award ceremony track (Gctr_WinningRun.szs), there is an unseen blue glider mushroom (like the one in Mushroom Gorge) near the tunnel section on the right-hand side. It is possible to see the stem of the mushroom by using a hack that increases the speed of the karts. It is possible that the mushroom is simply there to allow the winner to glide in from above, as the mushroom looks out of place in Toad Circuit, which the track is based on.
3DS Download Play Icon Oddity
The icon used in the Download Play app when receiving data is a crude, early version of the one used for the main game. It is located in the banner folder. This discrepancy was fixed in the Chinese version.
Across different regions, certain tracks and vehicles have different names. These are the names that differ between the European and North American releases, along with a direct translation of the Japanese original (not counting retro courses).
Interestingly, unlike a number of other Nintendo games with separate localizations per region, it's the American script that tends to be more literal and the European script that takes more liberties. Go figure.
|Kinopio Circuit||Toad Circuit||Toad Circuit|
|Pukupuku Lagoon||Cheep Cheep Cape||Cheep Cheep Lagoon|
|Heiho Carnival||Shy Guy Bazaar||Shy Guy Bazaar|
|Wuhu Island 1||Wuhu Island Loop||Wuhu Loop|
|Music Park||Melody Motorway||Music Park|
|Rock Rock Mountain||Alpine Pass||Rock Rock Mountain|
|Pakkun Slider||Piranha Plant Pipeway||Piranha Plant Slide|
|Wario Ship||Wario's Galleon||Wario Shipyard|
|Neo Koopa City||Koopa City||Neo Bowser City|
|Wuhu Island 2||Wuhu Mountain Loop||Maka Wuhu|
|Rosetta Planet||Rosalina's Ice World||Rosalina's Ice World|
|Koopa Castle||Bowser's Castle||Bowser's Castle|
|Honeybee House||Honeybee House||Honeybee Hive|
Despite the name change, the Japanese and North American name "Music Park" can still be seen on banners in the level in the European version.
|Gold Kart||Gold Kart||Gold Standard|
|Birthday Girl||Royal Ribbon||Birthday Girl|
|Mach Queen||Bumble V||Bumble V|
|Jet Soda||Soda Jet||Soda Jet|
|B Dash||B Dasher||B Dasher|
|Tarupoppo||Barrel Train||Barrel Train|
|Retromaru||Tiny Tug||Tiny Tug|
|H2O||Cloud 9||Cloud 9|
|Cobalt Seven||Blue Seven||Blue Seven|
|Banana Buggy||Bolt Buggy||Bolt Buggy|
|Skeleton||Pipe Frame||Pipe Frame|
The Japanese version also calls this kart part a frame rather than a body.
|Gold Tire||Gold Wheels||Gold Tires|
|Wild Red||Monster Red||Monster Red|
The European version also calls this kart part a wheel rather than a tire.
|Super Kite||Super Glider||Super Glider|
|Gold Kite||Gold Glider||Gold Glider|
|Flower Kite||Flower Glider||Flower Glider|
|Beast Kite||Ghastly Glider||Beast Glider|
|Basa Basa Kite||Swoop||Swooper|
Swoop is another name for Swooper in some recent games. The names seem to be used interchangeably. Oddly, the North American name for the Parafoil wasn't carried over to Mario Kart 8.
Each update is required to go online.
Version 1.1 was first released on May 15, 2012 as a downloadable patch on the eShop. Other than adding "Ver. 1.1" to the Online Multiplayer tab, this update fixed four respawn glitches that could be used to skip parts of several courses during online play:
- GBA Bowser Castle 1
- DK Jungle
- Wuhu Loop / Wuhu Island Loop / Wuhu Island 1
- Maka Wuhu / Wuhu Mountain Loop / Wuhu Island 2
Note that these glitches were only fixed for online play to avoid exploits; in every other mode, these glitches are still present.
The patch itself actually fixes all the respawn glitches, including the ones that can only be done by hacking. Though they are not included in the patch folder, so its impossible to make them work again online. However, if you were to replace the existing kmp files in the patch with their original kmp, only Maka Wuhu's would work. The Daisy Crusier and Maple Treeway ones were not fixed.
Version 1.2 was released on December 13, 2022 -- over 11 years after the original release. It adds "Ver. 1.2" to the Online Multiplayer tab and fixes a severe vulnerability in the game's network code that would allow remote code execution. This vulnerability is now known as ENLBufferPwn.
Internal Project Name
Mario Kart 7 is referred to as "CTRDash" internally. "CTR" is the product code for the 3DS.