1. Introduction

This page explains how to make a level that can be played with KeeperFX. A level consist of a Map, a Script and may come bundled with custom content like configuration files, new creatures or special traps.

2. Making a Map

Making new maps can be done with the Unearth map editor.

3. Making a level script

Each level needs a script to function. A very basic script can be generated from 'Unearth', but to make a fun map you need to write your own script.
Find it on the Script Command page.

4. Map specific content, rules and configurations

Maps can be bundled with translation files, custom configuration files and sprites. These files need to be bundled in the same folder with the other map files and starting with the map number. This means if you have a level with number 707, where you have map00707.txt for your script file, you could have:

  • Language files named map00707.eng.dat for English or map00707.dut.dat for Dutch.
  • Config files like map00707.objects.cfg or map00707.effects.toml.
  • Unit config files like map00707.bile_demon.cfg and map00707.evil_pony.cfg
  • A zip file called map00707.zip holding custom sprites and custom icons needed by map specific content.
5. Testing

Thoroughly test your map. Check keeperfx.log for any script errors. Play test to make sure all your scripts work. Play test to make sure the map is fun. Consider people do not know what you do and might dig in other directions and accomplish goals in a different order from what you'd expect.

Consider having somebody else play test your map too after you are fully convinced that the map completely works and is fun but before you consider sharing your map with a wider public.

6. Upload your map to the workshop

Zip up your map and upload it to the workshop. Make sure the players only need to extract it to their keeperfx directory and do not need to edit files, select folders or put stuff together before they can play.