# Tactical HUD (hud.tactical) ## What it is for Composes an editable tactical HUD: roster, clock, health, equipment, objectives, round results and spectator view, presentation only, with data supplied by the game. It needs `game.engine`; installing it brings them in. ## Turn it on Install the kit in a project, then change a setting (the values shown are its defaults): ```text gripforge_gamekit_install { project_id: "gkp_…", id: "hud.tactical" } gripforge_gamekit_configure { project_id: "gkp_…", id: "hud.tactical", config: { "themeId": "minimal", "document": {} } } ``` ## First example This is the body of the passing test `without_a_document_the_tactical_template_is_served`; the helper functions it calls are defined at the top of the same test file. ```rust #[test] fn without_a_document_the_tactical_template_is_served() { let mut s = hud(json!({})); let doc = document(&mut s); assert_eq!(doc["version"], 2); assert_eq!(doc["name"], "Tactical HUD"); assert_eq!(doc["design"], json!({"w": 1920, "h": 1080})); assert!(!elements(&doc).is_empty()); let kinds: Vec<_> = elements(&doc) .iter() .map(|e| e["kind"].as_str().unwrap()) .collect(); assert!(kinds.contains(&"health_bar"), "{kinds:?}"); // Ids are unique. let mut ids: Vec<_> = elements(&doc) .iter() .map(|e| e["id"].as_str().unwrap().to_string()) .collect(); ids.sort(); ids.dedup(); assert_eq!(ids.len(), elements(&doc).len()); } ``` ## Settings and defaults Descriptions come from the kit manifest and stay in English. | Setting | Type | Default | Range or values | Meaning | |---|---|---|---|---| | `themeId` | string | `"minimal"` | `harbor`, `gothic`, `neon`, `minimal` | | | `document` | object | `{}` | | HUD Studio v2 document. | | `conceptItem` | string | `""` | | | | `conceptHash` | string | `""` | | | | `brief` | string | `""` | | | | `studioHud` | string | `""` | | | ## Services, events, variables - Service `hud.tactical`: document() returns the editable HUD v2 layout; concept() returns its optional per-game visual reference. ## Hooks and modding - Moddable settings: `themeId`, `document` ## Engines Declared targets: `web`, `rust`. `gripforge kit api hud.tactical` lists the exact settings and services of your version. ## Versions Kit version 1.1.0.