Mario Kart: Double Dash!!
Mario Kart: Double Dash!! |
---|
Developer: Nintendo EAD This game has unused code. This game has a prototype article This game has a prerelease article This game has a notes page |
Adding two characters on one kart, double item boxes and two exclamation marks for its title, Mario Kart: Double Dash!! spices up the Mario Kart thrill by adding brand new courses, characters (marking Toadette's first appearance) and mechanics to keep you on your toes - most of which would be discarded and wouldn't return in new entries, at least not until Mario Kart 8 Deluxe.
Contents
Sub-Pages
Build Changes
Prototype Info |
Prerelease Info |
Notes |
July 5th, 2004 Debug Build A post-release build with debugging features. |
Regional Differences Personally, I'm a km/h type of guy. |
Unused & Hidden Content
Unused Modes & Features Hold that B button, it's time to start driving reverse. |
Disabled Objects Unseen objects whose functionalities remained. |
Unused Graphics Banners and textures burried deep within the game's files. |
Out Of Bounds Oddities Not every game is perfect. |
Debug Content They tried, but not every developer tool was scrubbed. |
Stages
Unused Stage Files
The Course directory contains the main files for all of the race courses, battle stages and even the files for the Award Ceremony and the credits sequence, since those modes use game logic shared with races and battles. Each stage file has an L variant, for example there exists Wario.arc and WarioL.arc in the Course directory for Wario Colosseum.
The following rules are used to load the course files:
- For offline race courses, the regular stage file is loaded when the game displays one viewport and the L stage file is intended for multiple viewports.
- This logic is also used in the map select screen of the debug menu for both race courses and battle stages.
- For offline battle stages, the regular stage file is always loaded.
- For LAN mode, the L stage is always loaded for races and battles.
- The Award Ceremony and the credits sequence load the regular stage file.
This leaves AwardL.arc and EndingL.arc unused, which are never explicitly loaded; the only difference in AwardL.arc is found in sea2_tex.bmd, which for its lower quality model doesn't have a noise texture, and Ending.arc has differences in car_item1.bmd and car_item1.btk, which is a lower quality model of the item box. Neither objects display any visual differences when loaded in-game.
Unused Mini Stages
The internal course folders for the battle stages are marked as Mini#.arc, where # is the battle stage number. These numbers range from 1 to 8, meaning that there were originally going to be 8 stages, but in the final game there's only 6. The 2 stage IDs that are not used in the final are Mini4 and Mini6, and are also referenced in the debug menu. The music track IDs further supports this, where the id ID Mini3 (Block City) is 0x36, the ID of Mini5 (Tilt-A-Kart) is 0x38, and the ID of Mini7 is 0x3A; thus, rendering 0x37 and 0x39 unused.
Unassigned Stage ID
Tilt-A-Kart has a quirk where its visual model is set 10,000 units higher compared to its collision data. The part of code that sets this value is in the function Course::reset and does the following (note the variable names are not official):
if (this.courseID == 0x38 || this.courseID == 0x12) { this.courseVisualModelX = 0.0f; this.courseVisualModelY = 100000.0f; this.courseVisualModelZ = 0.0f; }
What makes this interesting is that the game checks for the ID 0x12 (18 in numbers) as well, which is not assigned to any stages in the final game. In the course selection debug menu, this corresponds to the deleted course Test 18. This function can be found at the following addresses:
USA Virtual Address | Europe / Australia Virtual Address | Japan Virtual Address |
---|---|---|
0x80178fb0 | 0x80177e54 | 0x80178fb0 |
Unused Stage Strings
ResMgr::getCrsArcName is the name of the used function that maps the course ID to the extensionless course filename. Since its implementation is identical across the kiosk demos, retail and debug builds, this means that there are string references to otherwise unused stages such as Mini4, Dekoboko and Reverse1. These are the same unused stages as seen in the course selection debug menu. This function can be found at the following addresses:
USA Virtual Address | Europe / Australia Virtual Address | Japan Virtual Address |
---|---|---|
0x801ce3c0 | 0x801ce300 | 0x801ce3c0 |
Objects
Unused Item Box Toggle
Item box objects (GeoItemBox) have a check for an unused toggle that is disabled for every item box in the game. When this toggle is set to 0x01, a random special item will always appear in the item slot, regardless of the selected character or if another character already has a special item. This toggle is a leftover from earlier in development when special items were tied to item boxes, and not players. A brief clip of this functionality happening in game can be seen in some of the b-roll spread during E3 2003. Note that in the actual E3 demo, special items already behave like they do in the final game.
Unused Bowser's Castle Laugh Trigger
In Bowser's Castle, if a cannon object (GeoCannon) is placed on the course and come in contact with, an evil laugh sound effect will play, which is heard across the track when taking damage. For track specific sound effects, the game checks a variable in memory (GameAudio::Parameters::sRaceCourse) to determine what track the player is on. If the player is playing on Bowser's Castle, this variable is set to 0x2F and the evil laughter is set to play when taking damage. However, this laughter is for some reason also set to play if the player is in a state of flying, which can only happen if the player is set to come in contact with a cannon, none of which exist in the track's files, leaving this functionality unused. It's possible a cannon was once considered to appear in Bowser's Castle.
Item Slot Lists
Item slot lists are lists keeping track of item probabilities, which determine in which scenarios the player should be given an item.
Duplicate Lists
Item slot lists are spread across three different files in MRAM.arc/item: itemslotlist.dat, itemslotlist1.dat and itemslotlist2.dat. The first list is used during normal gameplay and during VS. races with item boxes set to "recommended", wheras the second lists are used exclusively for either "basic" or "frantic" item box modes. As such, the last two files are only used for VS. races. Despite this, both files have item probability lists for Grand Prix and Battle Modes, even though neither of them are used in those scenarios. Both lists are identical to that of itemslotlist.dat, making these duplications.
Unused 13th List
A 13th table is present in all three of the listed files. It contains probabilities for 1st, 2nd and 3rd place for Green Shells (0x00), Red Shells (0x01) and Spiny Shells (0x02), all with a zero probability rate. It's unknown was this was meant for.
Audio
Unused Sound Effects
To do: Try to get them to play and record them |
Boo's Kart Horn
In the file /AudioRes/GCKart.bstn, there is a filename JA_SE_TR_HORN_TERESA where TERESA is the Japanese name for Boo. It happens to have the same data as JA_SE_TR_HORN_KINGTERESA which is used by King Boo's kart (Boo Pipes).
Empty Sequences
The final three sequences that are present in the game's audio banks in AudioRes/Seqs/JaiSeqs.arc go unused. These sequences, according to GCKart.bstn and GCKart.daa are titled as follows:
- JA_BGM_STAR (sequence 10) which would've played while using a Star item.
- JA_BGM_FINALLAP_FANFARE (sequence 11) which would've played when the player reaches the final lap.
- JA_BGM_WANWAN (sequence 12) which would've played when using a Chain Chomp item.
In the final game, all three of these sequences are streamed audio instead. Additionally, all three of these sequences were scrubbed, only leaving placeholder sequence files that are 96 bytes each.
Uncompiled Audio Bank Instructions
Present only in the European release (and kiosk demos compiled in September) are 163 lines of source code for the game's audio bank initialization in AudioRes/GCKart.daa. According to information displayed at the start of the source code, the project file was created on May 8th, 2003 by Yoji Inagaki, who is credited for sound programming. The US and Japanese releases removed this file altogether.
//*********************************************************** // オーディオアーカイブ・初期化用(for New JAudio) // Project: GC KART // Author: Yoji Inagaki // Date: 2003.5.8(THU) //*********************************************************** #define baac 'b', 'a', 'a', 'c', long, long #include"GCKart.def" //オーディオアーカイブの先頭にこれを書いてください begin_audio_arc //サウンドテーブルをロードします bst, _BEGIN_BST, _END_BST //サウンドネームテーブルをロードします // bstn, _BEGIN_BSTN, _END_BSTN //波形をテーブルの0番にロードします ws, 0, NINTENDO_LOGO_MARIO_WS_START, 0xffffffff ws, 1, SE_WS_START, 0 //0xffffffff ws, 5, TANAKA_BGM_WS_START, 0 //0xffffffff //バンクをロードし、波形テーブルの0番にアサインします bnk, 1, SE_BANK_START bnk, 0, NINTENDO_LOGO_MARIO_BANK_START bnk, 5, TANAKA_BGM_BANK_START //ストリームファイルネームテーブルのロード(破棄可能・プログラムを通じて一つのみ) bsft, _BEGIN_SFT //シーケンスコレクションのロード(破棄不可能) //bsc ファイルの先頭のオフセット, ファイルの末端のオフセット bsc, _BEGIN_BSC, _END_BSC //シーケンスのロード(破棄不可能) //bms サウンドID, ファイルの先頭のオフセット, ファイルの末端のオフセット bms, JA_BGM_TITLE, _BEGIN_BMS_0001, _END_BMS_0001 bms, JA_BGM_SELECT, _BEGIN_BMS_0002, _END_BMS_0002 bms, JA_BGM_OPTION, _BEGIN_BMS_0003, _END_BMS_0003 bms, JA_BGM_RECORD, _BEGIN_BMS_0004, _END_BMS_0004 bms, JA_BGM_START_FANFARE, _BEGIN_BMS_0005, _END_BMS_0005 bms, JA_BGM_START_FANFARE2, _BEGIN_BMS_0006, _END_BMS_0006 bms, JA_BGM_START_FANFARE4, _BEGIN_BMS_0008, _END_BMS_0008 bms, JA_BGM_START_FANFARE5, _BEGIN_BMS_0009, _END_BMS_0009 bms, JA_BGM_START_FANFARE6, _BEGIN_BMS_0010, _END_BMS_0010 bms, JA_BGM_STAR, _BEGIN_BMS_0011, _END_BMS_0011 bms, JA_BGM_FINALLAP_FANFARE, _BEGIN_BMS_0012, _END_BMS_0012 bms, JA_BGM_WANWAN, _BEGIN_BMS_0013, _END_BMS_0013 //カートカスタムのBAACのデータ baac, _BEGIN_BAAC, _END_BAAC //オーディオアーカイブのコマンドの終了を表します end_audio_arc //ここのあとにデータの内容を置きます。 //#incbinの対象となるファイルが必要です //サウンドテーブルファイル _BEGIN_BST #incbin "GCKart.bst" _END_BST //サウンドネームテーブルファイル //_BEGIN_BSTN //#incbin "GCKart.bstn" //_END_BSTN //ストリームファイルネームテーブル _BEGIN_SFT #incbin "GCKart.bsft" _END_SFT SE_BANK_START #incbin"SE/Banks/se00.bnk" #evencl SE_BANK_END SE_WS_START #incbin"SE/Banks/se00.ws" #evencl SE_WS_END TANAKA_BGM_BANK_START #incbin"BGM/Tanaka/Banks/bgm.bnk" #evencl TANAKA_BGM_BANK_END TANAKA_BGM_WS_START #incbin"BGM/Tanaka/Banks/bgm.ws" #evencl TANAKA_BGM_WS_END NINTENDO_LOGO_MARIO_BANK_START #incbin"SE/Banks/NintendoLogoMario.bnk" #evencl NINTENDO_LOGO_MARIO_BANK_END NINTENDO_LOGO_MARIO_WS_START #incbin"SE/Banks/NintendoLogoMario.ws" #evencl NINTENDO_LOGO_MARIO_WS_END _BEGIN_BSC #incbin "SE/Seqs/GCKartSe.bsc" _END_BSC _BEGIN_BAAC #incbin "SceneJPN.baac" _END_BAAC _BEGIN_BMS_0001 #incbin "Bms/0001.bms" _END_BMS_0001 _BEGIN_BMS_0002 #incbin "Bms/0002.bms" _END_BMS_0002 _BEGIN_BMS_0003 #incbin "Bms/0003.bms" _END_BMS_0003 _BEGIN_BMS_0004 #incbin "Bms/0004.bms" _END_BMS_0004 _BEGIN_BMS_0005 #incbin "Bms/0005.bms" _END_BMS_0005 _BEGIN_BMS_0006 #incbin "Bms/0006.bms" _END_BMS_0006 _BEGIN_BMS_0008 #incbin "Bms/0008.bms" _END_BMS_0008 _BEGIN_BMS_0009 #incbin "Bms/0009.bms" _END_BMS_0009 _BEGIN_BMS_0010 #incbin "Bms/0010.bms" _END_BMS_0010 _BEGIN_BMS_0011 #incbin "Bms/0011.bms" _END_BMS_0011 _BEGIN_BMS_0012 #incbin "Bms/0012.bms" _END_BMS_0012 _BEGIN_BMS_0013 #incbin "Bms/0013.bms" _END_BMS_0013
Missing Sequence
AudioRes/Seqs/JaiSeqs.arc has .bms files from 0001.bms to 0013.bms, except for 0007.bms. This is also reflected in AudioRes/GCKart.daa where the name JA_BGM_START_FANFARE3 is skipped.
Duplicate Sequenced Menu Music
The Options and Records screens use their own sequence files found in AudioRes/Seqs/JaiSeqs.arc: 0003.bms and 0004.bms, instead of reusing 0002.bms sequence from the main menu and LAN menus. Despite this, all 3 files are byte-for-byte identical to each other.
Streamed Battle Results Music Copy
When a track is completed on Time Trials and there is a new track record but no new lap record, the same theme as the battle results is played. Instead of playing the GOAL4_0.x.32.c4.ast streamed file, GOAL6_0.x.32.c4.ast is played instead which is not an identical file however the stream data is very similar.
Interestingly, in the US demo, the GOAL4_0.x.32.c4.ast streamed file is reused for this purpose, before it was changed to GOAL6_0.x.32.c4.ast in the EU demo.
Strings
Build Dates
Build dates for the different regions are present among the game's executable files. The debug build would display these dates on the Nintendo screen.
Offset | Build Date | |
---|---|---|
USA (Kiosk) | 0x30AAE0 | Wed Sep 10 15:29:41 2003 |
Europe / Australia (Kiosk) | 0x339F80 | Mon Sep 15 17:05:55 2003 |
Europe / Australia | 0x329BC0 | Fri Oct 3 00:41:20 2003 |
Japan (Kiosk) | 0x32E920 | Mon Oct 6 13:28:37 2003 |
USA / Korea | 0x31FD80 | Mon Oct 6 18:03:54 2003 |
Japan | 0x33A3A0 | Thu Oct 9 18:35:51 2003 |
USA (Debug) | 0x35D8E0 | Mon Jul 5 13:04:10 2004 |
The build date for the European version was referenced in an interview with the game's producers in Nintendo Official Magazine Issue 137.
Of all the different international versions of Mario Kart Double Dash, we completed the European version first. We really wanted the European fans to play with the game as soon as possible.
―Kiyoshi Mizuki[4]
Course Dedications
Internal file names for the courses, which give the theme or character the track is dedicated to, indicate that some of the otherwise-neutral tracks were actually dedicated to certain characters. Note that, while Baby Park shows it's dedicated to both Baby characters from the game's debug course select, the file name shows it's dedicated to Baby Luigi specifically.
Course | File name | Debug name | Dedicated to |
---|---|---|---|
Baby Park | BabyLuigi(L).arc | Baby | Baby Luigi |
Mushroom Bridge | Nokonoko(L).arc | Nokonoko | Koopa Troopa |
Mushroom City | Patapata(L).arc | Patapata | Paratroopa |
Dino Dino Jungle | Diddy(L).arc | Diddy | Diddy Kong |
Texture File Dates
A couple of textures in the course's files have a month and day noted in their filename to indicate when the texture was last modified. Three regular courses and one Battle Mode course have these dates.
Course | File name | Date |
---|---|---|
Baby Park | bb_iro_0808 | August 8th |
bb_kanban0905 | September 5th | |
bb_kanban0710 | July 10th | |
Mushroom City | pt_kinokoueyou0820 | August 20th |
pt_road_konkri0907 | September 7th | |
pt_douro_kousoku_tougou0806 | August 6th | |
pt_kanban_tougou_karidatra_0818 | August 18th | |
pt_tuki_hikari0907 | September 7th | |
Rainbow Road | RR_yakei0916 | September 16th |
Luigi's Mansion | lm_komono0919 | September 19th |
Staff Ghost Initials
Despite never being shown in-game, all Staff Ghosts do have three letter initials present in its .ght file. Only three initials are ever used: "AAA", "XYZ" and "EAD", the last of which being a reference to Nintendo EAD.
Course | Initials |
---|---|
Luigi Circuit | AAA |
Peach Beach | AAA |
Baby Park | AAA |
Dry Dry Desert | XYZ |
Mushroom Bridge | AAA |
Mario Circuit | AAA |
Daisy Cruise | AAA |
Waluigi Stadium | XYZ |
Sherbet Land | EAD |
Mushroom City | XYZ |
Yoshi Circuit | EAD |
DK Mountain | EAD |
Wario Colosseum | XYZ |
Dino Dino Jungle | XYZ |
Bowser's Castle | EAD |
Rainbow Road | EAD |
File Names
Spiny Shell Internal Name
In MRAM.arc, the spiny shell's file name is titled item_koura_yellow, referring to a Yellow Shell. Either the Spiny Shell was going to be yellow instead of blue, or at some point it was a normal Yellow Shell.
Diddy Kong's Internal Name
Several files refer to Diddy Kong as dk_jr. An unused character portrait found in the files of the North American and European kiosk demos indicates that Donkey Kong Jr. was a playable character before being replaced by Diddy. It's possible the developers either forgot to replace some of these internal names, or it was easier to continue using these names than replace them entirely.
Contest Code
After completing a Time Trial, press L, R, L, R, X, Y, X, Y, Z in order to reveal a string of 16 characters on the bottom of the screen. This string of characters is a code used for contests to check a person's Time Trial run. The code contains information for what track was raced on, the amount of laps, the karts and drivers used, the total time to complete the course and the best lap time. Note that the code will not be displayed when the total time exceeds 8:44.288, or the best lap time exceeds 4:22.144. This fan-made decoder can decode this string to view the Time Trials' contents.
Despite this code working in any version of the game, the only instance where this code was referenced by Nintendo was in a Japanese Club Nintendo Time Trial contest. Participants were asked to press the button combination to reveal their code for the contest. After that, they would've had to submit their code in a registration form, with the selected winners having to send their Memory Card with a copy of their Ghost Data to Nintendo for confirmation. The contest had the participants race for the best times on Luigi Circuit, Baby Park, Mario Circuit and Yoshi Circuit on any possible kart or character combination. Everyone who attended the contest got 5 free Club Nintendo points (which would be given out somewhere near the beginning of February), with the top three winners getting their times displayed on the official website once the contest concluded, and the top player having their run as a downloadable recording.
The contest was open from Thursday January 15th, 2004 to Sunday February 1st, 2004. Despite there being a possibility to have several winners for each track, Takagi Nobuo (高木伸夫) won the contest for all four tracks. Other contest winners are as follows:
Track | Time | Winner |
---|---|---|
Luigi Circuit | 1:16.910 | Takagi Nobuo (高木伸夫) |
1:17.263 | Maruyama Tsuyoshi (丸山 剛) | |
1:17.594 | Hikari (ヒカリ) | |
Baby Park | 1:05.963 | Takagi Nobuo (高木伸夫) |
1:06.374 | BOM | |
1:06.400 | Hikari (ヒカリ) | |
Mario Circuit | 1:29.317 | Takagi Nobuo (高木伸夫) |
1:30.795 | Hikari (ヒカリ) | |
1:31.672 | Ma ̄-kun (まーくん) | |
Yoshi Circuit | 1:44.323 | Takagi Nobuo (高木伸夫) |
1:45.614 | Take (《茸》) | |
1:45.880 | FANTM |
References
- ↑ 1.0 1.1 1.2 Consolidated Financial Statements (January 29th, 2004) (Nintendo)
- ↑ News from Nintendo (November 14th, 2003) (Nintendo) (Archive)
- ↑ 제품 상세 보기: 마리오카트 더블대시!! (Daiwon) (Archive)
- ↑ Nintendo Official Magazine Issue 137, Page 25
- Good articles
- Good main articles
- Pages missing developer references
- Games developed by Nintendo EAD
- Pages missing publisher references
- Games published by Nintendo
- Games published by Daiwon C&A
- GameCube games
- Pages missing date references
- Games released in 2003
- Games released in November
- Games released on November 7
- Games released on November 17
- Games released on November 14
- Games released in December
- Games released on December 20
- Games with unused code
- Games with uncompiled source code
- Games with hidden development-related text
- Games with unused objects
- Games with unused game types
- Games with unused graphics
- Games with unused models
- Games with unused sounds
- Games with unused text
- Games with debugging functions
- Games with regional differences
- To do
- Mario series
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Cleanup > To do
Games > Games by content > Games with debugging functions
Games > Games by content > Games with hidden development-related text
Games > Games by content > Games with regional differences
Games > Games by content > Games with uncompiled source code
Games > Games by content > Games with unused code
Games > Games by content > Games with unused game types
Games > Games by content > Games with unused graphics
Games > Games by content > Games with unused models
Games > Games by content > Games with unused objects
Games > Games by content > Games with unused sounds
Games > Games by content > Games with unused text
Games > Games by developer > Games developed by Nintendo > Games developed by Nintendo EPD > Games developed by Nintendo EAD
Games > Games by platform > GameCube games
Games > Games by publisher > Games published by Daewon Media > Games published by Daiwon C&A
Games > Games by publisher > Games published by Nintendo
Games > Games by release date > Games released in 2003
Games > Games by release date > Games released in December
Games > Games by release date > Games released in December > Games released on December 20
Games > Games by release date > Games released in November
Games > Games by release date > Games released in November > Games released on November 14
Games > Games by release date > Games released in November > Games released on November 17
Games > Games by release date > Games released in November > Games released on November 7
Games > Games by series > Mario series
The Cutting Room Floor > Good articles
The Cutting Room Floor > Good articles > Good main articles