Skip to content
in-progress

Tranquil RP

Tranquil RP is the Tranquil Framework: an Enforce Script life gamemode on Takistan Plus, plus an ASP.NET Life API and PostgreSQL. Clients never talk to the database. Shops, jobs, crime, garages, medical, and a phone UI all sit on a trusted game server that calls the API with a shared token.

CategorySystems

Year2026

Statusin-progress

Tranquil RP hero
Arma ReforgerEnforce ScriptASP.NETPostgreSQLDockerJSON configs

Overview

Tranquil RP is a full life-RP stack for Arma Reforger, not a mission file with scripts glued on. Gameplay runs in-engine under the TQ_ namespace; durable state — wallets, characters, shops, vehicles, phone — lives in TQ.Life.Api. The play world is Takistan Plus (Feruz Abad plaza). I built it as an independently maintained framework, with EveronLife as an architectural reference, not a copy.

Problem

Reforger life servers usually either trust the client for money and inventory, or bury economy in the game process where you cannot reason about it. I wanted Altis-Life-style loops — jobs, shops, crime, factions — with a real trust boundary and config that operators can edit without recompiling Enforce.

Solution

A two-process topology: dedicated / Workbench host runs TQ_LifeGameMode; TQ_ApiPersistenceGateway talks HTTP to the Life API; PostgreSQL is loopback-only. The API owns prices, ledgers, gather/process caps, and delivery timers. JSON catalogs drive stores, jobs, licenses, crime, and world POIs. In-world you get character select (three slots), spawn picker, phone (F1), ATM, shops, garage and impound, vehicle keys, seatbelts, bleedout/vitals, ID cards, and police/EMS ranks.

Technical implementation

  • Enforce Script gamemode and UI services (HUD, phone, stores, garage, ATM, spawn, notifications, voice ranges)
  • ASP.NET Life API + EF Core + PostgreSQL; Docker Compose for local and dedicated hosts
  • Server token on every /v1 call — clients never hit Postgres; mutations return canonical wallets/inventory
  • Config-driven economy and world: catalog SKUs, shops, jobs, recipes, deliveries, crime POIs, spawn list
  • Takistan Plus world with MES structures, map pins, and Feruz Abad as the life plaza
  • Medical (vitals, bleedout), vehicle lock/repair/idle, holster, faction whitelist for police and EMS

Challenges

  • Keeping Workbench Play/Edit sessions from leaking script statics, HUD, and inventory across runs
  • Reconciling client-visible inventory with API stock so players cannot invent cash or items
  • Hybrid Workshop maps (paks vs loose worlds) so Takistan Plus stays editable without breaking materials
  • Shipping a life loop that feels like classic Arma RP without copying licensed Altis Life source

Results

  • A playable life world on Takistan Plus with banking, jobs, shops, vehicles, phone, and persistence
  • A trust model operators can actually explain: game server is trusted, player clients are not
  • Day-to-day economy changes live in JSON, not CreateDefault() hardcodes

Future improvements

  • Tighten crime/heist and organization systems as those phases land
  • GPS-backed delivery validation instead of elapsed-time gates only
  • Dedicated-server packaging and operator docs beyond Workbench Play

Explore more work

Back to the full showcase, or reach out if something here overlaps with what you need.