Skip to content
DealTimeWorldsDealTimeWorlds
Our games

Eight worlds, one obsession

Deep strategy and in-house simulation. Every game is designed for long sessions and stories worth telling.

Fantasy Sports Manager
Game platform

Fantasy Sports Manager

Multi-sport fantasy platform, hockey first.

Fantasy league management app with a deterministic match engine, private leagues, public spectator mode, real-time watch party and animated 3D rink. The multi-sport foundation is live: each sport inherits the same league / team / player mechanics. Only one sport is open to play today: the other four stay closed until they are good enough.

Hockey is the open one (Beta 0.4): season playable end-to-end. The others move at their own pace behind a "Work In Progress" status and will only open by decision, never by a deployment — Basketball (Pre-Alpha 0.4), which received a complete mechanics overhaul: calibrated match engine, salary cap and CBA, draft, playoffs, standings, team AI, trophies and stats; Soccer (Pre-Alpha 0.3); American Football (Pre-Alpha 0.2), drive-and-down engine (run/pass, special teams, game clock), 17-week season with a bye week, 14-team playoff bracket, quarter-by-quarter live and animated replay on the field view; Baseball not started yet. 100% in-house simulation engine, deterministic, validated by golden-master tests — every match can be replayed and debugged bit-for-bit.

Status

In active development — v0.1: Hockey (Beta 0.4) open to play; Basketball, Soccer, Football and Baseball are Work In Progress

Features

  • Hockey open to play (Beta 0.4) — Basketball (Pre-Alpha 0.4), Soccer (Pre-Alpha 0.3), Football (Pre-Alpha 0.2) and Baseball share the same core, closed until they are good enough
  • Deterministic simulation engine (golden-master tests), calibrated sport by sport against real-world targets
  • Animated 3D rink and fields (R3F) + live replay with Piper FR/EN announcers
  • Built-in Discord bot (DMs + per-league channels: live, news, trades, injuries)
  • Installable PWA + push notifications (VAPID)
  • Public spectator mode without account
  • Security hygiene (JWT, DRF throttling, self-hosted captcha, Secure cookies)

Stack

Django 6PostgreSQLDRFReact + TSTailwind v4shadcn/uiWhiteNoisePiper TTSDiscord botPWA + VAPIDCaddy HTTPS
Organized Crime — The American Dream
Strategy game

Organized Crime — The American Dream

Faithful web remake of Gangsters: Organized Crime (1998). A personal, non-commercial remake: the project is not affiliated with the rights holders of the original and redistributes none of it.

Turn-based strategy set during American Prohibition. Rebuilt from the original 100-page manual: 8 lieutenants, 11 skills per crook, bootleg market, accountant and lawyer, mayoral elections, incorruptible FBI.

Architecture: 100% Python-authoritative simulation (deterministic, seeded RNG), result replayed and animated by the 3D front-end. Dominant UI = The Organizer, a sepia art-deco journal with 8 tabs, full screen; switches to the 3D city for the week’s replay.

The game is playable end-to-end, and the second client — Unity 6 on WebGL — is now fully ported from the web client: same screens, same order loop, same organizer, sound included, on the same Python simulation server-side. The port audit is closed (41 gaps found, 41 cleared, 0 open) and the aim is a Steam release.

New development now happens on the Unity side. The audit backlog (fidelity to the 1998 game + code quality) grew from 129 to 217 entries, all closed; a 30-item UX audit dedicated to the Unity client drives the polish week after week.

Status

Playable and winnable — Unity WebGL client at full parity with the web client; aiming at a Steam release

Features

  • Isometric 3D city (R3F) — 81 blocks, 4 gangs, BFS street-pawn animations
  • 3 paths to victory: Domination / Legitimate / Mayor
  • Pre-built scenarios (4 fixed-seed challenges) + Hall of Fame for won games
  • Full economy: extortion, bootleg, robbery, exports through docks/station, counterfeit press
  • Rival AI respecting diplomacy (5 levels + double arrows)
  • Accountant + Lawyer: tax evasion, DA/mayor bribes, witnesses, trials, FBI
  • Turf system, per-block public opinion, 4 competing newspapers
  • Second client on Unity 6 / WebGL, ported at full parity (41 gaps cleared, 0 open) — same server, aiming at a Steam release
  • 217-entry audit backlog, all closed (1998 fidelity + code quality)
  • Bilingual in-game release notes — the game moves forward every week

Stack

Django + DRFSQLiteReact + TSViteTailwind v4shadcn/uithree.js + R3FUnity 6 (WebGL, URP)ZustandTanStack Query
Kingdoms of Kings
Idle 4X

Kingdoms of Kings

Medieval-fantasy idle 4X: a kingdom that lives while you sleep.

An idle 4X sitting at the crossroads of Melvor Idle (skill-based progression), Ultima Online (skills that rise through use), Kenshi (a band of heroes to lead, not a single avatar) and classic 4X: build, explore, trade, wage war.

The engine is deterministic and computed on read: no tick loop spinning in the background — the kingdom’s state is recomputed the moment you come back. Offline progress is therefore exact, not estimated. Every inhabitant — peasant, artisan, hero — is a fully simulated character, and rival kingdoms run on exactly the same rules as yours.

The web client stays playable, but new development has moved to Unity 6, aiming at a Steam release: the rules are ported to C# phase by phase, each one locked down by a golden test that demands the exact same result as the Python engine. Home-world genesis, fog of war, hex map, hamlet markers and the mission framework are ported; the pan/zoom camera is what remains to close the current phase.

Status

In active development — playable pre-alpha; Unity port under way for the Steam build (phases P0 to P4 shipped)

Features

  • Exact offline progress: deterministic engine recomputed on read, no tick loop
  • 49 skills that rise through use (gathering, crafting, terrain, governance)
  • Every inhabitant is a fully simulated character — not a villager counter
  • Procedural hex map: exploration, terrain, rumours and expeditions
  • Rival kingdoms played by the same simulation as the player (war, peace, alliance, trade)
  • Research tree, production chains, market and edicts (taxes, rations, doctrine)
  • Unity 6 port under golden tests: the C# engine must return exactly what the Python one does
  • Bilingual FR/EN, 3,118 automated tests on the engine

Stack

FastAPISQLiteReact 19 + TSViteTailwind v4Canvas 2DUnity 6 (URP, Steam)
Imperium Universe
Strategy MMOOn hold

Imperium Universe

Grand strategy space MMO (EU3 style).

Remake of a browser MMO where you grow your empire across 10,000 galaxies, each containing 400 systems and up to 12 planets. The Python server is 100% authoritative — real-time engine with lazy resource accrual, idempotent jobs, WebSockets via Channels and Redis for cross-process notifications.

Massive universe, but navigable: 3-level R3F 3D view (Universe → Galaxy → System), seeded fog of war, probe scanning, espionage with 5 info tiers. 510-step plan across 20 phases. Solo first, MMO later.

Status

On hold — the studio is focused on Fantasy Sports Manager

Features

  • 10,000 galaxies × 400 systems × 12 planets — 3-level 3D view (R3F)
  • Fog of war + comm radius + probe scanning
  • Lazy time engine: resources accrued on demand, never in a loop
  • Deterministic round-based combat + recyclable debris fields
  • NPC AI with 5 profiles (aggressive / passive / merchant / pirate / neutral)
  • WebSockets via Channels + Redis PubSub (publish post-commit)
  • Quests, leaderboards, barter market, planetary defenses

Stack

Django 6DRFChannels (ASGI/daphne)Redis (PubSub)SQLite (WAL)React + TSViteTailwind v4shadcn (new-york)three.js + R3FJWT
Cartel: Plaza Wars
Management / strategyOn hold

Cartel: Plaza Wars

One side builds the cartel, the other takes it apart — one engine, two camps.

A management game set in Mexico, playable from both sides: the organisation that produces, moves and launders, or the agency that climbs the org chart one case file at a time. Both camps run on the same rules engine; what changes is the view, filtered by faction, not the simulation.

A run plays out across the plazas — Tijuana, Ciudad Juárez, Culiacán, Matamoros and the rest — each with its own population, wealth, building slots and local police heat, on top of a national heat track. Around that: monthly lieutenant hiring, a production and shipping pipeline, bought officials and police commanders, a rival AI, diplomacy and plaza wars, succession when the boss falls, generated identities so the same lieutenant never comes back twice. Three playable eras — 1980, 1985, 1995 — and the whole game runs in French or English.

Status

In development, slowed down — Fantasy Sports Manager comes first; all 27 planned milestones are closed and the Unity WebGL client is playable

Features

  • Two campaigns on one engine: the organisation, or the agency investigating it
  • Real plazas, local and national heat, a production → shipping → market pipeline
  • Rival AI (utility AI), diplomacy, plaza warfare, succession and fragmentation
  • Buyable politics: commanders and officials, with priced effects and monthly upkeep
  • Unity 6 client built to WebGL (IL2CPP), served from the same host as the FastAPI API
  • 775 Unity EditMode tests plus 20 server-side tests

Stack

Unity 6C#UI ToolkitIL2CPP WebGLFastAPISQLitePython
Closed Circle
Mystery / narrativeOn hold

Closed Circle

A murder, a circle of suspects, and nobody leaves the island until you name the killer.

A locked-circle investigation set in a resort hotel on an isolated island. The case file — culprit, weapon, place, motive — is drawn at random and lives on the server only: it is never sent to the client, in any form. You question, you search, you accuse.

The suspects are played by a language model, under a hard constraint: each character only ever receives ITS own sheet. An innocent cannot reveal the culprit because they do not know who it is; the culprit lies and never confesses. The accusation itself is not judged by the AI — it is compared against the case file deterministically. The island is canonical: the same locations every run, one bedroom per person of interest, and the bedroom clue is found by searching like any other. The client renders in low-density isometric 3D under an orthographic camera.

Status

In development, slowed down — Fantasy Sports Manager comes first; a full run is playable end to end

Features

  • Server-side truth file, never exposed to the client
  • AI-played suspects, each walled off to its own sheet — the culprit lies, innocents cannot leak
  • Accusations judged by deterministic comparison, not by the AI
  • Canonical island: fixed locations, one bedroom per person of interest, clues found by searching
  • Case notebook: clues linkable to suspects, dossiers, free notes, all persisted
  • Low-density isometric 3D rendering under an orthographic camera

Stack

FastAPISQLiteReact 19 + TSViteTailwind v4three.js + R3FAPI Claude
SWAT 2 — web remake
Real-time tacticsOn hold

SWAT 2 — web remake

Real-time isometric tactics where the force you use counts as much as the objective.

A personal, non-commercial browser remake of a 1998 isometric police tactics game. The project is not affiliated with the rights holders of the original and redistributes none of it: it is a technical testbed for a mechanic no modern game has picked back up.

Mission simulation runs at ~20 Hz in Python, server-side and authoritative — the client only renders and sends orders. What was kept from the original is what set it apart: you do not win by shooting, you win by using the right amount of force. Every shot is judged (threatening or not, in policy or not, avoidable or not) and paid for in suspensions, commendations and budget. Less-lethal weapons, negotiators, and suspect AI driven by fuzzy traits rather than a script.

Status

In development, slowed down — Fantasy Sports Manager comes first; a mission is winnable end to end

Features

  • Server-authoritative simulation at ~20 Hz, render-only client
  • Use-of-force scoring: every shot judged, with career and budget consequences
  • Less-lethal options and negotiation before the entry
  • 8-direction line of sight, fog of war and ghost contacts
  • Map editor and local-network play
  • 171-point audit derived from the original’s 205-page manual

Stack

DjangoDRFChannels (ASGI/daphne)RedisSQLiteReact + TSViteTailwind v4PixiJS
Pathfinder VTT
Virtual tabletopOn hold

Pathfinder VTT

A virtual tabletop for Pathfinder 1st edition, sized for a game among friends. A personal, non-commercial project, not affiliated with Paizo; rules content is not redistributed.

A virtual tabletop for pen-and-paper role-playing: one game master, up to five players, a map, a grid, tokens, fog, dice and character sheets. Deliberately sized for a session among friends on the local network rather than for hosting strangers — a single process, no message queue, no distributed cache.

The server broadcasts the full table state on every join and every change, which removes the whole class of bugs where two screens drift apart and nobody notices. The roadmap runs from a strict visual aid — map, grid, tokens, with the rules staying in the GM’s head — toward progressive rule automation. The fallback is stated up front: if full automation never lands, an existing tool already does the job.

Status

In development, slowed down — Fantasy Sports Manager comes first; 2 of 10 phases delivered

Features

  • One GM and up to five players per table, joined by code
  • Full state broadcast over WebSocket on every join and every change
  • Canvas map view: grid, panning, scroll-wheel zoom
  • Local network only, firewall closed to the subnet
  • Three stated tiers: visual aid, then assisted rules, then automation

Stack

FastAPIWebSocketSQLiteReact + TSViteTailwind v4PixiJS

Want to try?

Demos, alphas, partnerships — reach out.

Get in touch