Knytt Stories DS

From GameBrew - a wiki dedicated to Video Game Homebrew.

Knytt Stories DS
Author(s)Rodrigo Roman
Version1.0a Full
[1.0a Full and Level Expansion Pack Download]

Knytt Stories is a freeware platform game made by Nicklas Nygren (aka Nifflas). The game includes several short levels (stories), and there are many new stories created by the community that anyone can play.

As Nifflas released a level editor with the original game, many fans created (and are creating) levels as of 2010. Some of them have commercial-like quality. Community stories can be downloaded at Nifflas Forum and


Copy the data folder to the root of your homebrew device (flashcart).

At this point, you will have a /data/ folder located in the root of your flashcart, which contains a dsknytt folder.

DLDI patch the KSDS.nds ROM and install the ROM in your homebrew device.

Note: Some flashcarts (such as the CycloDS Evolution) do not require to patch the game. The KSDS.nds file can be directly copied into the flashcart.

Install a story

Install the story in a local copy of Knytt Stories.

Copy the folder of the story. Story folders are located in <KNYTT FOLDER>/Worlds <KNYTT FOLDER> is the folder where Knytt Stories is installed.

Paste the folder of the story in the /data/dsknytt/Worlds/ folder of your flashcart.

If a story has custom music and ambiance tracks, those tracks will not work, as KSDS do not play .ogg files. Refer to the next section in order to know how to convert those files so the DS can be able to play them)

Converting music tracks

Download the Open Source Audacity tool and launch Audacity. For every .ogg file in the music folder:

  • Load the Song<NUM>.ogg file (example: Song1.ogg).
  • Tracks -> Stereo to Mono.
  • Tracks -> Resample (change to 22050).
  • Project Rate [toolbar located in the bottom-left part of the application] (change to 22050).
  • Use Effect> Amplify to increase the volume if needed (the volume of the DS is lower than PC, so in most cases it is better to increase the volume of a track).
  • File -> Export... -> Save as: Mp3 -> Options: Bit Rate (select Constant), Quality (select 48 kbps), Channel Mode (select Stereo), to file Song<NUM>.mp3 (example: Song1.mp3) in the same directory of the Song<NUM>.ogg file (Note that the Metadata can be maintained. Select OK if the Metadata Screen appears).

Note: mp3s with a size bigger than 1MB will probably not work due to memory restrictions. In this case, lower the qualiy of the music at step 5: 16kbps (example: sky flower or 24kbps (example: don't eat the mushroom).

User guide


Q. I have a DS/DSi and I cannot play the game in my flashcart!

First, check that you have a /data/dsknytt/ folder in your flashcart that contains the system folders (_RAW, Ambiance, Gradients, etc) of KSDS.

If everything is fine but the game does not load, use the Compatibility-ROM included in the .zip file of the game.

Q. Sometimes, when playing a story, if I enter in a new screen the game freezes!

That's a problem in the underlying mp3 libraries. You will probably not find this error, but if you do, you have three options:

  • Reboot the DS and play again. In most cases the error will not happen anymore.
  • If the game keeps on hanging, disable the music on the Options Menu.
  • If everything else fails, use the Compatibility-ROM.

Q. What is this Compatibility-ROM?

A version of the game compiled with older libraries.

There will be some visual glitches, but the game should be playable in all flashcarts.

Q. Some big stories take a lot of time to load!

The game needs to parse the map in order to optimize the game.

You can disable the optimizations in the Options menu, but the transition between screens will be much slower.

Q. Help! The game crashed and a red screen appeared!

That's the Juni's Screen of Death (JSoD), and appears when an error forces the engine to shut down.

In most cases the error will happen because of installation problems or memory problems (the story requires too much resources).


knyttstoriesds5.png knyttstoriesds3.png

knyttstoriesds4.png knyttstoriesds6.png

Known issues

Juni's movement is not per-pixel. As a result, Juni's speed is different than in the original Knytt Stories.

Dialog traslucency does not work, left as an opaque window.

Management of the minimap and exceptionally big COs.

In extraordinary cases, the game will hang when trying to play a mp3 track. This problem usually happens with mp3 that are not encoded to 48kbps.

Due to a design decision, the hologram is activated only by pressing a DS button, not by pressing "down" twice in a row.


V1.0a 2010/04/08

  • Solved some issues (lasers, juni's movements) that allow players to play/finish certain stories (Gaia, A Knytt in Time...). Also, expanded some internal structures that allow to play certain levels (The Great Race).

V1.0 2010/02

  • Initial Release.

External links