Skip to content

Development options

tukkek edited this page Oct 27, 2020 · 22 revisions

By pressing o outside of combat, you'll be able to edit some user options and also enable cheats to help with testing the game. Although these test options can be used for cheating, doing so indiscriminately can cause problems and generally break normal game flow.

Each line contains a option.name=value pair and can be disabled by putting a hash character (#) at the very beginning. To re-enable that line just remove the hash.

Most of these should work by configuring them via the in-game options configuration, without restarting the game (though in some cases you may need to press a key for the screen to update or move once for the game world to update). If that doesn't work you may need to restart the application or start a whole new game (which should be fixed at some point).

Note that since this page is used for team coordination it may refer to some options that are already in the game, but on a version that hasn't yet been released to the public.

Debug mode

There are other tools that are not options but can help in testing the game. For this you need to add -Ddebug=true to your javelin.bat or command line when launching the game. Note that debug mode is intended for developing the game, not just testing so other behaviors may change as well and the game is going to be slower because more information is gathered, more sanity checks are made, etc.

  1. If you try to withdraw from battle while engaged with an opponent you can just automatically end the battle.

  2. You are always able to work (world action) even if you don't have Workers in your squad. This can help by letting you build inns for example to rest anywhere on the map.

Options list

cheat.combat=false
cheat.xp=9000
cheat.gold=9000
cheat.labor=false
cheat.world=show
cheat.period=noon
cheat.weather=storm
cheat.season=summer
cheat.doors=unlock

Below are descriptions for the less intuitive options:

cheat.combat: if present, will disable combat in the game, often assuming a victory instead.

Resources: cheat.gold gives that amount gold to player Squads, cheat.xp does the same with experience points and cheat.labor will result in Town projects being completed as soon as they are manually started.

cheat.world: when active will show the entire world screen.

cheat.period: will force a certain time of day during battles. Possible values are: morning, noon, evening, night.

cheat.weather: determines amount of rain. Possible values are: dry, rain and storm.

cheat.season: accepts spring, summer, autumn and winter (obviously).

cheat.doors: bypasses hidden doors, door traps, locked and heavy doors.

Advanced debugging

These options cover basic testing scenarios. If you are working on the code, the class javelin.Debug facilitates a lot of more advanced debugging work: including hooks to game events and common operations.