Unity RareIcon
Overview
Section titled “Overview”RareIcon Unity client. Source: apps/rareicon/unity-rareicon. ECS DOTS world (Hex / Items / Logistics / Buildings / Units / Combat / Professions / Quests).
Pipeline
Section titled “Pipeline”pipeline: unity → dispatched by ci-main.yml to ci-unity.yml whenever version here outpaces version.toml. Standard manifest-driven flow, no bespoke workflow.
Build matrix
Section titled “Build matrix”engine.build_targets:
StandaloneLinux64StandaloneWindows64StandaloneOSX
WebGL deliberately omitted — DOTS hybrid renderer + Burst aren’t WebGL-friendly.
External publish
Section titled “External publish”Two destinations from one build:
Itch (external_publish.itch_user / itch_game):
kbve/rareicon:linux-x86_64kbve/rareicon:windows-x86_64kbve/rareicon:osx-universal
Build runs with DISABLESTEAMWORKS scripting define so SteamManager auto-no-ops when launched outside Steam.
Steam (external_publish.steam_app_id):
- AppID 2238370 (registered)
external_publish.steam_branch = demo- Build keeps
steam_appid.txt+ Steamworks.NET enabled
The same ci-unity.yml run can target either route — the workflow reads external_publish to pick which post-build deploy fires.
Secrets required
Section titled “Secrets required”UNITY_LICENSE(Personal/Professional auth artifact, GameCI flow)UNITY_EMAIL,UNITY_PASSWORD(Personal license)BUTLER_API_KEY(itch.io upload)STEAM_USERNAME,STEAM_CONFIG_VDF(Steam Guard mobile auth, encoded)
Trigger
Section titled “Trigger”Tag-driven via the standard manifest dispatch. Bump version here, run npx nx run astro-kbve:sync:ci-manifest, commit, the next push fans ci-main.yml → ci-unity.yml for this entry.