the cutting room mirror

Donkey Kong Land 2

This article has a talk page!
view on tcrf.net

Unused Music#

Boss Bossanova#

Here is an unused piece of music in DKL2: it's the Boss Bossanova theme, but in 8-bit! Anybody who has played DKC2 should be able to recognize this music: there, it's played in all boss stages, except for the fights against K. Rool, which use the Crocodile Cacophony music. In the final version of DKL2, all boss stages use the Crocodile Cacophony music instead. It's unclear why the Boss Bossanova theme isn't used at all in DKL2.

To hear the music, change ROM offsets 0x4037D, 0x40391, 0x403A5, and 0x403B9 to 19. This will cause the Boss Bossanova music to be played in Krow's Nest, Kleaver's Kiln, King Zing Sting, and Kreepy Krow, respectively.

Alternatively, it is possible to change the music for Klubba's Kiosk by using the Game Genie code 195-FF9-91A.

(Source: Blaziken257)

Unused Sound Effect#

To do:
can we hear it?

By going to ROM offset 20B0 (or 20C1 in the Japanese version) and changing its value, the sound effect that is heard from collecting all the stars in any Collect the Stars bonus stage is changed. If this is changed to 02, the Kong Token sound effect from Donkey Kong Land can be heard.

Unused Graphics#

Unused Sprites#

To do:
Document ROM offsets for these graphics.

Several unused sprites exist in this game. Some of these sprites even remained unused in Donkey Kong Land III. These sprites can be viewed by using any of the following GameShark codes:

  • 01xx0FC1 (Current sprite #1)
  • 01xx2FC1 (Current sprite #2)
  • 01xx4FC1 (Current sprite #3)
  • 01xx6FC1 (Current sprite #4)
  • 01xx8FC1 (Current sprite #5)
  • 01xxAFC1 (Current sprite #6)
  • 01xxCFC1 (Current sprite #7)
  • 01xxEFC1 (Current sprite #8)
  • 01xx0BDF (Player sprite)

The xx should be replaced with the unused sprite's ID. Note that by using these codes, the animation cycle will be based on the sprite that is being replaced.

Unused Rambi Sprite#

To do:
There are other frames here as well; rip the entire animated sprite.

Sprite ID: 54

Rambi getting hurt.

Like other Donkey Kong games, Rambi has a sprite for when he gets hurt. However, under normal conditions, it is impossible for Rambi to take damage in this game.

However, the GameShark code 010200DF will allow Rambi to appear in any level. For this code to work properly, it must be used just before entering or exiting a bonus level to properly refresh the sprite (and therefore, its behavior). If Rambi is brought into levels with certain stage hazards, you can see Rambi getting hurt if he touches these hazards. Some of these include:

  • The brambles in bramble levels (Bramble Blast, Bramble Scramble, Screech's Sprint).
  • The roller coaster tracks in roller coaster levels (Target Terror, Rickety Race, Krazy Koaster).
  • The toxic water in Slime Climb and Toxic Tower.
  • The lava in Lava Lagoon.
  • The water in Clapper's Cavern.
  • The spikes in jungle levels (Jungle Jinx, Klobber Karnage, Animal Antics).

Minus Barrel#

Sprite ID: 70
Frame: 02

Unused Minus Barrel.

There is a sprite for a Minus Barrel in Donkey Kong Land 2, but it is unused. In Donkey Kong Country 2, Minus and Plus Barrels were used in the level Haunted Hall, which was replaced with Krazy Koaster in this game. Despite that there is a Minus Barrel sprite in this game, there is no corresponding Plus Barrel sprite.

Flame#

Sprite ID: 7C

DKL2_flame_frame_01.png DKL2_flame_frame_02.png DKL2_flame_frame_03.png DKL2_flame_frame_04.png An unused sprite for a flame. It is unknown what this would have been used for.

Hole#

Sprite ID: 6F

DKL2_hole.png

An odd oval-shaped sprite which resembles a hole. This may have been intended for breakable walls -- in Donkey Kong Country, Donkey Kong Land, and Donkey Kong Country 2, certain walls could be broken to reveal bonus stages, but no such thing is possible in Donkey Kong Land 2 or in subsequent Donkey Kong games.

Early Kremkoin Sprite#

Sprite ID: 39

DKL2_early_Kremkoin_frame_01.png DKL2_early_Kremkoin_frame_02.png DKL2_early_Kremkoin_frame_03.png DKL2_early_Kremkoin_frame_04.png DKL2_early_Kremkoin_frame_05.png DKL2_early_Kremkoin_frame_06.png DKL2_early_Kremkoin_frame_07.png DKL2_early_Kremkoin_frame_08.png An early Kremkoin sprite. This is noticeably smaller than the final Kremkoin sprite. Also, this curiously has the design of King K. Rool instead of Kaptain K. Rool.

Spiky Kannonball Frames#

Sprite ID: 75
Frames: 02 and 03

DKL2_Kannonball_frame_02.png DKL2_Kannonball_frame_03.png Unused frames for a spiky Kannonball sprite. While Kannonballs, normal and spiky, are used in Donkey Kong Land 2, these frames are not. In Donkey Kong Country 2, in the level K. Rool Duel, K. Rool would sometimes fire Kannonballs that would grow spikes afterwards. These unused frames suggest that the same thing was considered for DKL2 as well, but was later scrapped.

Unused Water Tiles#

To do:
The ice stages also have unused water tiles, which are more subtle than the ship hold ones -- upload them here.

Early water tiles for the ship hold stages.What Lockjaw's Locker would have looked like with the original water tiles. The ship hold stages (Lockjaw's Locker, Lava Lagoon, and Glimmer's Galleon) were originally going to use different tiles from what the final game uses. These tiles are initially loaded into VRAM at 8DE0-8DFF when first entering these levels, but they are instantly replaced by the animated water tiles, which the ice stages (Arctic Abyss and Clapper's Cavern) also use. (The animated water tiles are uncompressed, and are located at 7C30D-7C38C in the ROM.) Going to offset 7CF21 and changing the value from 01 to 00 will prevent the original water tiles from being overwritten in the ship hold stages; therefore, this restores the unused tiles, as seen on the right.

There are a few possibilities as to why these tiles are never used. The first possibility is that all animated tiles appear in ROM bank 1F, but there is no room in this bank for any more animated tiles (partially due to other data in this bank as well), making it impossible to create additional animated tiles without getting rid of existing ones. The second possibility is that these tiles do not look good with the shading layer that occurs in the lava in Lava Lagoon, since the layer is too low compared to the waves. Finally, it is possible that the early water graphics were considered inconsistent with that of the ice stages, so the developers may have decided to use consistent graphics for the water across all levels.

Placeholder/Unused Bonus Rooms#

Watch on YouTubeUnused bonus room in DKL2, with hexadecimal ID 0x24. Various placeholder bonus rooms exist in Donkey Kong Land 2, suggesting that more bonus levels were planned in the game. These have the IDs of 04, 09, 0E, 13, 18, 1D, 21, 22, 24, 27, and 2C. All of these rooms, except for bonus room ID 24, are copies of the warp room in Pirate Panic and Gangplank Galley with corrupted tiles and sprites.

Bonus room ID 24 takes place in a roller coaster setting, suggesting that it was meant to be used in either Target Terror, Rickety Race (which has no bonus stages), or Krazy Koaster. ROM offset 40222 determines the destination of the first bonus stage in Target Terror, so changing the value of this offset to 24 will make this stage playable. Alternately, the GameShark code 0124AAC5 will change the destination of the first bonus stage of the current level to this unused map, although it only loads properly when the main stage is a roller coaster stage.

The stage itself is a Collect the Stars bonus stage, where 20 stars need to be collected in 25 seconds. Like the Collect the Stars bonus stage that is used in Krazy Koaster, there are more stars than necessary. The bonus stage also involves bouncing over holes in the track by jumping on Flitters.

Likely the reason that this bonus stage ended up unused is because the counter for collecting stars (or bananas) is shared with the counter for defeating enemies (stored at RAM address C5F9). This counter always decrements unless it is already 0 or RAM address C5F7 (which keeps track of the current level type, i.e. one of the bonus room types or a normal room) is set to FF, which is a non-bonus room. Due to this, a bug exists where defeating Flitters actually counts as collecting a star in this bonus stage. Not surprisingly, none of the used Collect the Stars stages have enemies, and none of the used Destroy them All stages have bananas or stars.

In Donkey Kong Land III, the coding for this was altered slightly so that the current level type is checked differently when defeating enemies or collecting bananas/stars, allowing for Collect the Stars stages to have enemies, and for Bash the Baddies stages to have bananas.

Unused Save Data#

Banana Coins#

This game saves the player's current Banana Coins whenever the game is saved. However, this data is not actually used in Donkey Kong Land 2. Upon loading a save file, the Banana Coin count is read from SRAM address A009 (File 1), A059 (File 2), or A0A9 (File 3), and then stored to HRAM address FFB3... however, when entering the world map screen, this byte (FFB3) is set to 0, which causes the player to lose all their Banana Coins each time a save file is loaded.

Curiously, even though the feature of saving Banana Coins went unused in this game, similar features later appeared in the GBA version of Donkey Kong Country 2, as well as both the SNES and GBA versions of Donkey Kong Country 3, where it was possible to retain Banana Coins or Bear Coins upon loading a save file. However, this feature remains unused in Donkey Kong Land III, due to a similar game engine to that of DKL2.

To prevent the Banana Coin count from being reset to 0, go to ROM offset 14097, and change the two bytes to 00 00. This will prevent the value 00 from being written to FFB3, and will allow the player to keep their Banana Coins across play sessions.

Last Saved Location#

Donkey Kong Land 2 keeps track of the location where the player last saved, including both the world and location on the submap. The game keeps track of the world at SRAM offset A004 (File 1), A054 (File 2), and A0A4 (File 3). In addition, the game keeps track of the submap location (Wrinkly Refuge) at SRAM offset A005 (File 1), A055 (File 2), and A0A5 (File 3). This is consistent with the Donkey Kong Country games. Eventually after loading a file and selecting it, the world location is loaded into HRAM offset FFAE, and the submap location into HRAM offset FFAF.

However, after loading the data into HRAM, the submap location ends up unused, and the player always starts on the main Crocodile Isle map when loading a saved file! The HRAM byte for the world location (FFAE) is read, and if the value is not 00 (Crocodile Isle), it gets decremented by 1 and copied to the HRAM byte for the submap location FFAF. Afterwards, the world location is overwritten with the value 00 (the main Crocodile Isle map).

For example, if the player saves in the Kong Kollege location in Gangplank Galleon, initially when loading the save, the world map location is 01 (Gangplank Galleon) and the submap location is 03 (Kong Kollege). However, afterwards, the world map location is read, is decremented from 01 to 00, and is copied to the submap location (Gangplank Galleon). The world map location is then set to 00 to make the Kongs start on Crocodile Isle. In this example, instead of placing the Kongs in Kong Kollege within Gangplank Galleon, they start out on the main Northern Kremisphere map, placed on Crocodile Isle.

ASM code for this behavior exists in the following locations:

  • International version: 2:6277-6280
  • Japanese version: 2:6265-626E

Filling these regions with zeros makes the behavior match the DKC games.

References#


  1. ="Nintendo Brasil Wiki">1↩︎