IDApTIK
If you have to ask, you're already compromised.
Invisible Door: Action Point Trauma Inc. Kickers
An asymmetric two-player infiltration game. One of you goes in. The other keeps you alive from a screen. Neither of you is fully in control, and that is the point.
What this is
IDApTIK is a game about infiltration, deception, and trust, usually misplaced.
One player is the infiltrator: moving through the world, dodging obstacles, bypassing security, staying unseen. The other is the hacker: watching remotely, opening doors, timing elevators, rewiring electronics, cutting the lights, and generally trying to keep the infiltrator breathing.
Control is not shared. It is asymmetric. The infiltrator moves; the hacker watches. If they do not work together, someone gets caught. The recurring problem is that the hacker's competence and the infiltrator's survival are loosely correlated at best.
"Breaking in is easy. Getting back out is harder. Especially when your escape route depends on a hacker who swears he knows what he's doing, right up until he accidentally reboots the entire security grid."
How it plays
Underneath the platforming sits a grounded network simulation, so the hacker is solving a real, legible network rather than pressing a "hack" button.
- Grounded access. The hacker starts from a specific device and sees only what is reachable from where they are.
- Real topology. Star networks, subnets, zones (LAN / VLAN / External), routing, DNS resolution, traceroute hop paths.
- Movement through the network. SSH between devices, session chaining, and pivoting so you attack from a compromised machine's perspective.
- Pressure. Active trace timers during intrusions, action-based alerts (failed logins, port scans), and passive logging for post-incident investigation. Bounce through intermediate machines to slow the trace.
- The physical layer bites back. Power grids, signal strength, cut cables, and physical location all affect what the hacker can do, and the infiltrator can open doors the hacker cannot reach remotely.
The two roles share one world. The hacker has a physical presence and real discovery risk; this is not a disembodied support role.
Roadmap
Development runs in vehicle-named phases, smallest viable thing first:
Envelope → Wheel → Skateboard → Bicycle → Chassis → Motorcycle → Computer Game
- Envelope (v0.1) — minimum viable game: core movement, basic hacker interactions (doors, elevators, overrides), first art, documented mechanics.
- Wheel — refined movement and interaction; stealth responsiveness; expanded hacker capabilities (security loop manipulation, timed overrides, sabotage).
- Skateboard — deeper asymmetric multiplayer; multi-phase infiltration; infiltrator/hacker communication.
- Bicycle — strategic depth; AI countermeasures that react to interference.
- Chassis — richer environmental mechanics (terrain, sound sensitivity, misdirection); first non-linear missions.
- Motorcycle — the full experience: adaptive security AI, emergent tension, the complete multiplayer framework.
- Computer Game — beyond proof of concept.
Tech
The Rust era's stack is being pinned as decisions are made, and each decision is recorded as an ADR under docs/adr/ rather than asserted here and quietly contradicted later.
- Gameplay truth: Rust — an engine-agnostic core, with Bevy as the
selected graphical frontend over it (ADR-0008).
- Multiplayer / session: Elixir/OTP — Bandit + Phoenix Channels, not LiveView (ADR-0002).
- FFI / ABI edges: Zig (C ABI, cross-compilation) and Idris2 (modelling the ABI contracts) (ADR-0001).
- Config: Nickel (typed configuration).
- Toolchains: pinned in
mise.toml+rust-toolchain.toml;justruns tasks. Provision withjust setup(orjust bootstrapfor a fast, prebuilt-only bring-up), and check withjust doctor.
Still open: persistence/versioning and the long-term Rust↔Elixir wire encoding.
Layout
crates/idaptik-core engine-agnostic gameplay truth — the network sim + Ghost Lobby scenario, no rendering
crates/idaptik-ffi C-ABI surface for Zig/Idris2 consumers (ADR-0001)
crates/idaptik-tui ratatui/crossterm evaluation frontend + --headless/--replay/--export verifier over core (ADR-0004)
crates/idaptik-bevy selected Bevy rendering frontend (ADR-0008)
server/ Elixir: Bandit + Phoenix Channels (ADR-0002)
config/ Nickel — typed, schema-checked game/network config
docs/adr/ architecture decision records
just runs the common tasks (just doctor, just test, just run-bevy, just server, just config-check); toolchains are pinned in mise.toml + rust-toolchain.toml.
UMS-authored package proof
The game owns the versioned package and gameplay contracts in contracts/idaptik/v1; Universal Modding Studio consumes them without the game depending on the UMS UI. From the sibling UMS repository, run:
just roundtrip-idaptik
That command compiles the UMS Ghost Lobby profile source, hands the exact temporary artifact to IDApTIK's real package loader, executes a grounded camera uplink, snapshots, restores, replays, and fails unless events and final state match.
Status: that recipe is not yet on any main branch. It and the ums-profiles crate it needs currently exist only on the idaptik-ums-canonical branch agent/idaptik-roundtrip, pending the UMS repository consolidation. What is gated here is the game side of the boundary: crates/idaptik-core/src/package.rs loads, validates, runs, snapshots, restores and replay-checks a package under IDApTIK's own cargo test. The cross-repository round trip runs in no CI.
The current Enaction evidence covers extracted interpolation parity; IDApTIK still uses Bevy's fixed-step accumulator, so no broader timing adoption is claimed.
Licensing
IDApTIK is layered, and each layer is licensed for what it is. The whole project is open and is built to stay open.
| Layer | License |
|---|---|
| Engine & code | AGPL-3.0-or-later |
| Game content (art, levels, narrative, character designs, audio) | CC-BY-SA-4.0 |
| Names & marks (IDApTIK, IDApTIK, Moletaire) | Trademark, all rights reserved |
The engine is strong copyleft: anyone who builds on it, including as a hosted service, must share their entire derivative source. The content is free culture: you may use, modify, and even sell derivatives, provided you attribute and keep them under the same share-alike terms.
Contributing
Contributions come in under the Developer Certificate of Origin (DCO 1.1); sign your commits with git commit -s. See CONTRIBUTING.md.
Status
Envelope-stage vertical slice. The deterministic Ghost Lobby simulation, TUI, typed session relay, delay-lockstep netplay, Bevy renderer, and UMS v1 package boundary are implemented and CI-gated. The next milestone is a coherent player-facing Bevy shell with first art, real-window validation, and documented mechanics.
The infiltrator moves. The hacker watches. Try to leave together.