Author tools (F12)
While you are writing, the author player includes a debug overlay. Use it to inspect the running story, jump around, edit flags, validate the project, and open Build.
Player builds you ship do not include this overlay (and they strip the F1–F12 author shortcuts).
Open and close
Press F12 (default; remappable in keybindings.json as the debug toggle action).
Prefs and Build choices are remembered in vn-mikro-debug.cfg next to the player.
Quick keys outside the overlay: How you work (F5 / F6 / F2).
Tabs
Meta
Current node summary, optional raw JSON, and quick controls. The compact status line starts with vn-mikro and the runtime version (separate from your project’s game.json → version).
| Control | What it does |
|---|---|
| Prev / Next | Rollback one history step / leave this node like normal play |
| Force prev | Jump to the previous node in the graph, ignoring play history |
| Advance | Same as Continue (finish typing or a pause tag) |
Nodes
List of story nodes. Sort by story order or id. Jump with:
| Mode | Behaviour |
|---|---|
| simulate | Walk a path to the target and rebuild flags/visuals along the way. Falls back to force if no path is found |
| force | Reconstruct along a path when possible; otherwise enter the node on a blank slate |
You can seed flags before a jump. Jump history backs and forwards through recent targets.
Vars
Live flags: sort by name, type, or recent change. Set, add, remove, or reset values while playing.
Validation
Run project checks and browse warnings/errors with detail text. Useful before a build. Refresh includes broken links, flag-aware reachability (branches that can never run), and missing character / background / screen / sprite refs for the active story pack. Activate a row with a node id to jump there.
When a check fails, the Validation tab label turns red and shows the error count, so you can spot a broken project without opening the tab. F5 re-reads your project files and reruns the checks — fix a missing comma or bracket, press F5, and the error and the red label clear. The Refresh button reruns the same checks without reloading gameplay.
Prefs
| Option | Effect |
|---|---|
| Pause while open | Freeze gameplay while the overlay is open |
| Show FPS | FPS readout |
| Perf log | Performance logging |
| Sprite Tracer | Draw outlines on sprites, character slots, choices, and screen sprites. Kind filters (Sprites / Chars / Choices / Screen sprites) sit under this toggle. Outlines stay on; labels appear on hover. Overlapping same-size layers (for example expression sheets) list under the pointer, top layer first. A sprite or object with shader.margin shows the authored rect solid and the padded glow area dashed |
| Composition Layers | Extra composition-layer outlines on the tracer (needs Sprite Tracer on) |
| Switch Project | Open the project picker (F2 by default) |
| Author Refresh | Reload story/assets and restore current play state (F5). Also reloads declared native extensions in author mode |
| UI Refresh Only | Reload themes/screens/panel without rebuilding gameplay (F6) |
| Width / Dock | Narrow or normal (default); dock left or right |
While the overlay is open, the software cursor is suppressed so the OS pointer stays usable on the tools.
Build
Visible only in the author player. Packaging steps, modes, and what to ship: Build and hand off.
Author vs player
| Author player | Player build | |
|---|---|---|
| Open any project folder | Yes (picker) | No — ships with one game |
| Debug overlay (F12) | Yes | No |
| Hot reload (F5 / F6) | Yes | No |
| Build tab | Yes | No |
You write and test in the author player. When the story is ready, build from the Build tab and distribute that output.