# Changelog

Versioning applies to the collection as a whole: **adding a game is a minor bump**,
fixes/tuning to existing entries are patch bumps.

## v1.2.0 — Clair Obscur: Expedition 33

- **New game: Clair Obscur: Expedition 33** (Unreal Engine 5, no DRM) — ⚠️ partial support.
  Adds a third install method, `external`: where a good third-party fix already
  exists and its license allows redistribution, it is vendored **unmodified**
  with our tuned config and full credit, rather than reimplemented.
  The fix itself is [ClairObscurFix](https://github.com/Lyall/ClairObscurFix)
  by **Lyall** (MIT).
- Ships a **reduced profile** (only `Center HUD` enabled). Upstream v0.0.10 is
  archived and predates current game builds; with full features it crashed on
  save load. Documented with a revalidation checklist rather than marked working.
- `publish.sh` now cuts **one release for the whole collection**, attaching every
  game's zip, and replaces same-named assets so re-runs are idempotent.

## v1.1.0 — Burglin' Gnomes *(never released; folded into v1.2.0)*

- **New game: Burglin' Gnomes** (Unity 6, Mono) — ✅ confirmed working at 5120×1440.
  Adds the `bepinex` install method and a purpose-built C# plugin.
- Camera deliberately untouched: it is orthographic with a constant
  `orthographicSize`, which is already correct Hor+ at 32:9. The entire problem
  was UI scaling.
- Fixes HUD canvases (`match=1` + raised `referenceResolution.y`) and world-space
  labels (canvas `localScale` — `CanvasScaler.scaleFactor` is overwritten every
  frame for WorldSpace canvases).
- Config reloads live (~2s) without a game restart.

## v1.0.0 — Gundam Breaker 4

- **New game: Gundam Breaker 4** (Unreal Engine 4.27, SteamStub DRM) — ✅ confirmed
  working at 5120×1440.
- Forces Hor+ FOV via `AspectRatioAxisConstraint = MaintainYFOV` and disables
  pillarboxing, patched in decrypted memory at runtime with
  [SUWSF](https://github.com/PhantomGamers/SUWSF) — the exe is DRM-encrypted on
  disk, so static patching is impossible.

---

### Unreleased infrastructure changes

These landed between v1.0.0 and v1.2.0 and are not tied to a single game:

- Restructured from a single-game repo into a multi-game collection
  (`games/<Game>/` + `game.conf`), so `install.sh` is game-agnostic.
  **Note:** `./install.sh` now requires a game name; run it bare to list games.
- Migrated hosting from GitHub to self-hosted Gitea.
- `publish.sh` rewritten for the Gitea API; reads `GITEA_TOKEN` from the
  environment and never stores it.
