1. Popis hry
Gunship 2D / Gunship 2K používá jednu společnou canonical simulaci. GS2D a GS2K nejsou dvě rozdílné herní logiky: stejná data, balistika, jednotky, WORLD geografie, damage a mission state se pouze vykreslují dvěma rendererovými cestami.
GS2D a GS2K
- GS2D: top-down taktický renderer nad canonical heightfieldem, vodou, cestami, budovami, foliage a sdíleným simulačním stavem.
- GS2K: GPU/3D renderer nad stejnou WORLD geografií a simulační autoritou; CPU zůstává pro simulation/state/culling a přípravu viditelného datasetu.
Profily a kariéra
GS2D a GS2K mají oddělené mutable save/profile namespaces, vlastní simulated-time snapshot a vlastní persistentní campaign/world state. Jeden USER_PROFILE může obsahovat více PLAYER_PILOT kariér. Aktivní pilot má vlastní kariérní timeline a vlastní roster aktivní pilot + 4 wingmeni; ostatní hráčovi piloti nejsou wingmeni.
Kariéra je časová služební osa, nikoli pevný počet misí. Free Flight je career-neutral sandbox a nemění kariérní ocenění ani persistentní campaign state.
P5.7.110 — player flight a WORLD selection
Player flight má až pět samostatných strojů: leader + FOUR wingmen. Každý člen má vlastní přiřazený vrtulník, loadout, palivo a munici. Flight lze před misí rozdělit na GROUP A / GROUP B / SOLO; skupina sdílí callsign stem a jednotlivé stroje si zachovají pořadové číslo flight slotu. Tactical Map může držet odlišné group waypoint routes a příkaz REGROUP skupiny znovu spojí.
Kliknutí na fyzickou mapu v Command Centeru otevírá samostatný FULL WORLD MAP screen. Teprve zde se vybírá WORLD/theater oblast; nástěnná mapa už neslouží jako přímý AO selector.
P5.7.129 — aktuální systémový stav
Tato revize Bible už není snapshot P5.7.110/111. Dokumentuje současný P5.7.129 kontrakt: force-integrated helicopter flight dynamics, source-aware ballistic/terminal-effect pipeline, WORLD/ERA snapshot architekturu, současný GAME-quality model pipeline a jednotnou orientaci 3D modelů pro Encyclopedia, Hangar/Loadout i gameplay.
Renderer-independent invariants
- GS2D a GS2K používají stejný mission/world/weapon/damage state; renderer nesmí vytvářet druhou gameplay autoritu.
- Canonical osa modelu je
RIGHT=+X, FRONT/nose=+Y, UP=+Z. Heading 0° v letu je +Y. - Encyclopedia FRONT se dívá z +Y na -Y a Hangar/Loadout front-view používá stejnou orientaci; UI nesmí chybný model opravovat per-model otočením.
- TECHREF a explicitní simulation baseline jsou autorita. Neověřená historická čísla zůstávají PENDING místo odhadu.
P5.7.135 — shared flight / AI / NE Bohemia runtime checkpoint
GS2D a GS2K používají společný HelicopterFlightModel pro PLAYER fyziku a waypoint autopilot. Wingman separation/avoidance je renderer-neutral shared guidance; renderer nesmí mít vlastní odlišnou fyziku nebo bezpečnostní AI.
- W/S i A/D cyclic se vyhodnocuje v aktuálním body-frame vrtulníku a používá persistentní incremental trim: release drží dosažený náklon, opačný vstup jej ubírá; setrvačnost patří rychlosti, ne starému směru tahu.
- AP drží rychlost/výšku, brzdí do waypoint capture a terrain-following používá AGL + look-ahead.
- Wingmani průběžně hlídají PLAYER i ostatní wingmany během všech tasků a společný waypoint rozkládají do bezpečných arrival slots.
- GS2D CLASSIC a GPU top-down sdílejí Camera2D zoom autoritu; model sprites používají metrické měřítko místo pevné pixelové velikosti.
P5.7.135 SAVE / PROFILE / ROSTER
GS2D a GS2K používají oddělené strict current-save namespace; runtime migrace a compatibility fallback jsou zakázané. PLAYER portrét je persistentní součást pilotního záznamu (portrait_id + asset reference).
DEVELOPER/test save fixture jsou záměrně různorodé pro QA rosteru: každá ACTIVE čtyřčlenná wingman letka používá čtyři rozdílné hodnosti, čtyři rozdílné portréty a čtyři rozdílné award/ribbon kombinace. Stejný kontrakt platí pro GS2D i GS2K. Nové current profily generují wingmany se stejnou per-flight diverzitou; uzavřené KIA/MIA/RETIRED identity se neregenerují.
P5.7.157 — TRAINING / external operations / runtime hygiene
TRAINING je nyní aktivní Command Center režim nad normálním WORLDem. NE Bohemia poskytuje společný terrain/traffic základ a jednotlivé výcvikové mise přidávají pouze sortie-local person/cargo/mission entity overlay.
- Troops, casualty, flight medic a 0–2 door gunneři jsou persistentní simulační entity. Pokud jsou onboard, nejsou samostatně renderováni, ale jejich hmotnost zůstává součástí aircraft gross mass.
- Sling-load hmotnost se dynamicky přičítá po připojení a odečítá po dropu. HOIST, FAST ROPE a sling hookup používají shared stable-hover gate.
- Door gunner AI je defensive-only: reaguje na skutečný zdroj příchozí palby a spotřebovává aircraft door-gun ammo.
APP_DATAje runtime-only; research/planning/audity jsou mimo runtime jako.json, testy jsou v rootTESTS/.