# visuals.toml # # Rendering-only configuration, loaded once at startup by the UI. # The simulation does not read this file. # # Every BuildingType, ItemType, ship role, and station type must have an # entry here; missing or malformed entries abort startup (see architecture.md # "Visual Parameters"). # # Colors are "#rrggbb" or "#rrggbbaa" (alpha optional, last byte). # ----------------------------------------------------------------------------- # Tile backgrounds # ----------------------------------------------------------------------------- [tiles.asteroid] fill = "#4a4038" [tiles.space] fill = "#0a0a15" # ----------------------------------------------------------------------------- # Buildings # # One section per BuildingType enum value. `fill` colors every footprint tile # of the building; `outline` is drawn around the building's bounding box; # `glyph` is a short label drawn centered on the building. # ----------------------------------------------------------------------------- [buildings.hq] fill = "#2e5fb8" outline = "#ffffff" glyph = "HQ" [buildings.miner] fill = "#6b4a2c" outline = "#ffffff" glyph = "M" [buildings.smelter] fill = "#b85a1e" outline = "#ffffff" glyph = "Sm" [buildings.assembler] fill = "#3a6fa8" outline = "#ffffff" glyph = "A" [buildings.reprocessing_plant] fill = "#6a3a8a" outline = "#ffffff" glyph = "R" [buildings.shipyard] fill = "#385870" outline = "#ffffff" glyph = "Y" [buildings.salvage_bay] fill = "#b8a23a" outline = "#ffffff" glyph = "Sb" [buildings.belt] fill = "#1a1a1a" outline = "#7a7a7a" glyph = "" [buildings.splitter] fill = "#7a7a5a" outline = "#9a9a7a" glyph = "" [buildings.tunnel_entry] fill = "#4a6a5a" outline = "#8aaa9a" glyph = "Te" [buildings.tunnel_exit] fill = "#5a6a4a" outline = "#9aaa8a" glyph = "Tx" # ----------------------------------------------------------------------------- # Stations # # Player and enemy defence stations have their own entries rather than going # through [buildings.*] so the two sides can be color-coded at a glance. # ----------------------------------------------------------------------------- [stations.player] fill = "#2e5fb8" outline = "#ffffff" glyph = "P" [stations.enemy] fill = "#b82e2e" outline = "#ffffff" glyph = "E" # ----------------------------------------------------------------------------- # Items # # Items on belts are 10x10 squares. `fill` is the square color; `outline` is # drawn around it. One section per ItemType. # ----------------------------------------------------------------------------- # --- ores --- [items.iron_ore] fill = "#47271c" outline = "#a65b42" [items.copper_ore] fill = "#deb592" outline = "#826a56" [items.quartz] fill = "#4f3d66" outline = "#9776c4" # --- smelted basics --- [items.iron_ingot] fill = "#535357" outline = "#97979e" [items.copper_ingot] fill = "#663810" outline = "#b07746" [items.silicon] fill = "#737f99" outline = "#373f4f" # --- salvage loop --- [items.scrap] fill = "#998e81" outline = "#574b3d" [items.voidsteel] fill = "#82759c" outline = "#3f374f" # --- basic components --- [items.copper_wire] fill = "#e09a50" outline = "#3a2008" [items.steel_plate] fill = "#202836" outline = "#54698c" [items.copper_coil] fill = "#cca287" outline = "#755d4d" [items.building_block] fill = "#544724" outline = "#a18845" # --- advanced components --- [items.control_chip] fill = "#74b08b" outline = "#42634e" [items.capacitor_bank] fill = "#d0a030" outline = "#302408" [items.hardened_steel] fill = "#818999" outline = "#3e4859" [items.ceramic_plate] fill = "#e0d8c8" outline = "#3a3428" [items.drive_unit] fill = "#92a4de" outline = "#545f80" # --- capital components --- [items.voidsteel_plate] fill = "#9986b5" outline = "#544766" [items.capital_core] fill = "#420c52" outline = "#9444ab" # --- module items --- [items.railgun_s_module] fill = "#bf7e7e" outline = "#664343" [items.railgun_m_module] fill = "#b07474" outline = "#593b3b" [items.railgun_l_module] fill = "#b07474" outline = "#593b3b" [items.salvager_module] fill = "#b2cfdd" outline = "#236137" [items.repair_tool_module] fill = "#0b4347" outline = "#38868c" [items.armor_plates_module] fill = "#999999" outline = "#545454" [items.sensor_booster_module] fill = "#a0c9f2" outline = "#607991" [items.maneuvering_thrusters_module] fill = "#92b4de" outline = "#566982" [items.afterburner_module] fill = "#1d2e52" outline = "#486db5" [items.weapon_upgrade_module] fill = "#ff4040" outline = "#401010" [items.weapon_primer_module] fill = "#e69797" outline = "#855858" [items.weapon_stabilizer_module] fill = "#c78383" outline = "#6e4848" [items.drone_bay_module] fill = "#cc66ff" outline = "#331040" [items.drone_hangar_module] fill = "#8c689e" outline = "#42314a" # --- ship hulls (outline matches the ship's fleet color in [ships.*]) --- [items.drone_hull] fill = "#1b1b1b" outline = "#3366ff" [items.frigate_hull] fill = "#1b1b1b" outline = "#44aaff" [items.destroyer_hull] fill = "#1b1b1b" outline = "#33ccaa" [items.cruiser_hull] fill = "#1b1b1b" outline = "#66cc33" [items.battlecruiser_hull] fill = "#1b1b1b" outline = "#cccc33" [items.battleship_hull] fill = "#1b1b1b" outline = "#ff9933" [items.dreadnought_hull] fill = "#1b1b1b" outline = "#ff5533" [items.carrier_hull] fill = "#310f42" outline = "#8542a6" # ----------------------------------------------------------------------------- # Ships # # Ships are drawn as oriented triangles/arrows. Color is keyed to schematic id. # ----------------------------------------------------------------------------- [ships.drone] fill = "#3366ff" outline = "#ffffff" [ships.frigate] fill = "#44aaff" outline = "#ffffff" [ships.destroyer] fill = "#33ccaa" outline = "#ffffff" [ships.cruiser] fill = "#66cc33" outline = "#ffffff" [ships.battlecruiser] fill = "#cccc33" outline = "#ffffff" [ships.battleship] fill = "#ff9933" outline = "#ffffff" [ships.dreadnought] fill = "#ff5533" outline = "#ffffff" [ships.carrier] fill = "#cc66ff" outline = "#ffffff" # ----------------------------------------------------------------------------- # Laser beams (REQ-SHP-FIRING-BEAM) # ----------------------------------------------------------------------------- [beams] weapon_color = "#ff6600" repair_color = "#33ff66" salvage_color = "#33ccff" width_px = 2 # ----------------------------------------------------------------------------- # Build / deconstruct / selection overlays # # All overlay colors carry an alpha channel so they composite over the # underlying scene. # ----------------------------------------------------------------------------- [overlays] ghost_valid = "#ffffff44" # builder-mode ghost, placement allowed (REQ-BLD-GHOST) ghost_invalid = "#ff000044" # builder-mode ghost, placement invalid (REQ-BLD-PLACE-VALID) deconstruct_tint = "#ff000033" # deconstruct-mode hover tint selection_rect = "#00ff00" # box-drag selection rectangle (REQ-UI-MULTI-SELECT) tile_highlight = "#ffffff22" # tile under cursor selected_outline = "#ffff00" # outline drawn around currently-selected building(s) config_transfer = "#33ccff66" # blueprint ghost over a configuration-transfer target (REQ-UI-BLUEPRINT-TRANSFER) locked_asteroid = "#0000007f" # tint over the asteroid left of the buildable edge (not yet unlocked by expansion) modal_dim = "#00000099" # semi-transparent black dim behind modal dialogs/menus (REQ-UI-MODAL-DIM) tunnel_preview = "#00ff0055" # tunnel connection preview: matched end + tiles between (REQ-BLD-TUNNEL-MODE) # ----------------------------------------------------------------------------- # Schematic-drop toasts (REQ-UI-SCHEMATIC-TOAST) # ----------------------------------------------------------------------------- [toast] bg = "#000000cc" fg = "#ffffff" font_size = 14 # ----------------------------------------------------------------------------- # Building status light (REQ-UI-STATUS-LIGHT) # # Fill color per production state, drawn as a small circle in the building's # upper-right corner, plus the constant outline color. # ----------------------------------------------------------------------------- [status_light] grey = "#808080" # no recipe/schematic selected green = "#33cc33" # producing (Salvage Bay: holding scrap) red = "#cc3333" # idle, input missing (Salvage Bay: empty) yellow = "#e6c619" # idle, output buffer full outline = "#000000"