restart awoken_minigames and the change is live.
config.lua at a glance
config.lua
Per-game defaults
Each category has one file, and each game is a labelled section inside it:config/games/reaction.lua
Reaction & Precision
11 games - Skill Check, Circle Click, Hold Zone, Aim Test, Balance, Rhythm, Firewall Pulse, Safe Crack, Lockpick, Osu, Slider
Input & Sequence
4 games - Keymash, Keys, Number Up, Backdoor
Memory
12 games - Simon Says, Memory, Memory Colors, Verbal Memory, Numbered Sequence, Var Hack, Pairs, Recall, Observe, Tally, Chroma Lock, Pitch Lock
Logic & Hacking
19 games - Lights Out, Hex Breach, Code Crack, Fingerprint, Word Crack, Symbol Search, Pipe Pressure, Untangle, Minefield, Jigsaw, Wires, Tower of Hanoi, Math Rush, 2048, Splice, Current, Data Stream, Collapse, Arrow Maze
Arcade
11 games - Snake, Flappy, Stack, Pong, Invaders, Crossy, Ascent, Slipstream, Breakout, Stick It, Match It
Precision
7 games - Track, Trace, Cut, Calibrate, Waveform, Thread, Reach
Dexterity
4 games - Shake, Cascade, Fishing, Cooldown
Language
Translate or reword every string - 11 languages built in
Theming
Recolour the whole UI by editing a file - no build step
Shared options
On top of its own options, every game accepts these. Set them globally inconfig.lua, per game in its config block, or per call:
Multi-stage games
Five games can run several rounds back-to-back in one call: Simon Says, Memory, Lights Out, Hex Breach and Code Crack. The player clears one round, gets a quick “Stage X cleared” beat, then goes straight into the next. You still get one result at the end - a win only if every round was cleared. Passstages in one of two forms.
- An integer
- An array (per-stage)
Repeat the same config N times:
gridSize / rounds for Simon Says, daemons / bufferSize for Hex Breach, and so on); anything else falls back to the parent config. Stages are capped at 10. Omitting stages - or passing 1 - is a single play.
stages repeats the same game. To chain different games into one call - lockpick, then breach, then wires - use Sequences instead.Starting a game
Every game has a “press to start” gate and anautoStart toggle to skip it:
autoStart = false- the game shows a start gate and stays completely frozen until the player clicks it or presses a key. No clock ticks, no pattern flashes, nothing moves.autoStart = true- the game begins the moment it appears.
config/games/arcade.lua
The clock only starts when the player does - time spent on the start screen never counts against them. A gate is worth keeping on for anything fast or mouse-driven, so they’re ready before it begins.
Mistakes and difficulty
Most games take amistakesAllowed option - how many wrong inputs are allowed before the game fails:
mistakesAllowed = 0- one mistake and it’s over.mistakesAllowed = 2- the third mistake fails it.
Minimal mode
Every game takesminimal. It tidies the card down to just the game, so it sits on the screen like a HUD prompt rather than a big pop-up the player is pulled into.
- Set it server-wide with
minimalinconfig.lua, or per call like any shared option. - ESC still cancels. It just isn’t advertised, because the footer that advertised it is part of the chrome you removed.
The dev menu
WithenableDevMenu = true, the /awoken_minigames command opens an in-game browser of every game grouped by category. Pick a game, pick a difficulty variation, and it runs right there - then drops you back to the menu with the result.
Close it with ESC, or by running /awoken_minigames again.
Games launched from the dev menu run in the UI only and report their result to nothing - opening the menu can never fire your heist logic or pay anyone out. It’s purely a viewer.