Something went wrong. Try again.
HEXWORK - A Lantern in the Deep: 3D ASCII terminal roguelike RPG in Rust.
Entirely designed and built by Muse Spark 1.3 to evaluate if I like the model.
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364# HEXWORK canonical keymap (docs/01 §7, docs/03 §3.10, docs/04 §4.6).# Parsed by hexwork_term::remap without a general TOML dependency.# Action names correspond to current Input variants; an unbound key is Unknown.
[move]up = ["Up", "w", "k"]down = ["Down", "s", "j"]left = ["Left", "a", "h"]right = ["Right", "d", "l"]# Lowercase q/c belong to Quit/Contracts, so Q/C are deliberately uppercase.up_left = ["Q", "y"]up_right = ["e", "u"]down_left = ["z", "b"]down_right = ["C", "n"]
[step]# Shift + any movement binding advances exactly one tick.pause_step_modifier = "Shift"
[action]look = ["x"]inventory = ["i"]contracts = ["c"]map_tactical = ["m"]chapel = ["p"]camera_toggle = ["Tab"]# Optional camera actions: omitted entries in custom maps stay unbound.tilt_down = ["<"]tilt_up = [">"]slice_up = ["PageUp"]slice_down = ["PageDown"]recenter = ["Home"]look_reset = ["0"]wait = ["Space", "."]quit = ["Esc", "q"]confirm = ["Enter"]# Optional transfer verbs (docs/12 T.2/AC.9): a custom map may omit the# `pickup`/`drop` lines entirely; a missing action stays unbound, defaults# are never injected, and unbound actions are never advertised as usable.# `g` (uppercase `G` also works) picks up a loose item at the player's own# cell; `-` drops the explicitly selected carried item.pickup = ["g"]drop = ["-"]# Optional continuous-travel toggle: press to start walking in the last# direction seen (or the held direction); press again, or `Space`/`Esc`, to stop.# Needed on terminals that do not report key repeats/releases.toggle_walk = ["t"]
[chargen]chargen_pick_1 = ["1"]chargen_pick_2 = ["2"]chargen_pick_3 = ["3"]chargen_pick_4 = ["4"]chargen_pick_5 = ["5"]chargen_pick_6 = ["6"]
[mouse]# Mouse application remains parent-side; each consequential mouse action has# a keyboard twin. These legacy marker strings are validated for compatibility# only: drag_orbit does NOT dispatch CameraToggle; left coordinates reach App.drag_orbit = "CameraToggle"click = "reserved-for-menus"scroll = "reserved-for-z-slider"