Settings (
// theme of the game, if None, default theme will be used.
// default theme is automatically loaded from <game config>/themes/default_theme.json5,
// which is generated when none is found.
//
// Othwerwise, you can specify your own theme file, which will be loaded
// from the <game config>/themes directory. It can be either .json[5] or .toml format.
// theme: "theme.json",
// logging levels for different logging mechanisms in the game.
// - valid levels:
// - trace
// - debug
// - info
// - warn
// - error
//
// messages in the UI
logging_level: "info",
// messages in the UI if debug mode is enabled
debug_logging_level: "debug",
// messages in the log file
file_logging_level: "info",
// player will move only one space at the time,
// otherwise it will move until other possible move
slow: false,
// slow: true,
// in tower maze, player will automatically move up when possible
disable_tower_auto_up: false,
// disable_tower_auto_up: true,
// when maze cannot fit on the screen
// camera_mode:
// - valid modes
// - CloseFollow - player will always be centered
// - EdgeFollow(horizontal margin, vertical margin)
// player will move on screen, but when he hits margin
// he will be centered on that axis.
// margin can be either relative (0.0 - 0.5 or absolute
// when it's fractional, it's relative to the viewport size
// when it's absolute, it's in characters
camera_mode: CloseFollow,
// camera_mode: EdgeFollow(10, 5),
// camera_mode: EdgeFollow(0.25, 0.25),
// smoothing of the camera movement, values 0.5 - 1.0
camera_smoothing: 0.8,
// player movement smoothing, values 0.5 - 1.0
player_smoothing: 0.5,
// viewport margin, space between edges of the screen and maze/dpad
// value is a tuple of two integeres, horizontal and vertical margin
viewport_margin: (4, 3),
// enable mouse input
enable_mouse: true,
// enable dpad, it is virtual controller for mobile devices
enable_dpad: false,
// default algorithm used for maze generation
default_maze_gen_algo: RandomKruskals,
// default_maze_gen_algo: DepthFirstSearch,
// skip prompt for maze generation algorithm
dont_ask_for_maze_algo: true,
// dont_ask_for_maze_algo: false,
// update check interval
// - valid intervals:
// - Never
// - Daily
// - Weekly
// - Monthly
// - Yearly
// - Always
update_check_interval: Daily,
// display update check errors,
// when false display on successfully found new version
display_update_check_errors: true,
// display_update_check_errors: false,
// enable audio, if false, no audio will be played
enable_audio: true,
// enable_audio: false,
// audio volume, 0.0 - 1.0, value is clamped, must not be NaN
audio_volume: 0.5,
// enable music, needs to have audio enabled
enable_music: true,
// enable_music: false,
// music volume, 0.0 - 1.0, value is clamped, must not be NaN
music_volume: 0.5,
// lists of maze presets
mazes: [
// Maze:
// - title - title of the maze preset
// - width - width of the maze
// - height - height of the maze
// - depth - depth of the maze
// - tower - if true, maze will be a tower (only if depth is >1)
// - default - first maze with "default: true", will be used as default in the menu
MazePreset (
title: "10x5",
width: 10,
height: 5,
default: true,
), MazePreset (
title: "20x10",
width: 20,
height: 10,
), MazePreset (
title: "60x30",
width: 60,
height: 30,
), MazePreset (
title: "200x100",
width: 200,
height: 100,
), MazePreset (
title: "6x3x3",
width: 6,
height: 3,
depth: 3,
), MazePreset (
title: "10x5x5",
width: 10,
height: 5,
depth: 5,
), MazePreset (
title: "10x10x5 Tower",
width: 20,
height: 10,
depth: 5,
tower: true,
), MazePreset (
title: "40x15x10 Tower",
width: 40,
height: 20,
depth: 10,
tower: true,
)
],
)