Commit graph

  • fccba8390d refactor(render): one group-creation seam, required foliage key field, first-frame wind snap (Campaign VM VM6 review 3) Erik 2026-08-23 03:03:56 +02:00
  • a82959f1b7 fix(render): production packed classifier carries the foliage flags; deferred-alpha replay keeps them (Campaign VM VM6 review 2) Erik 2026-08-23 02:28:17 +02:00
  • 43e3abed4d fix(render): correct foliage-wind classification, receiver/caster desync, and frame binding (Campaign VM VM6 review) Erik 2026-08-23 01:54:36 +02:00
  • 27a446f05c docs(issues): #423 - ray/shadow/volumetric day-group policy keys on the raw index, not WeatherKind Erik 2026-08-23 01:08:32 +02:00
  • 6cc5e183b9 fix(render): foliage wind keys on the DAT-classified WeatherKind, not the day-group index (Campaign VM VM6) Erik 2026-08-23 01:07:54 +02:00
  • 39e8408c7d feat(render): weather-driven foliage wind for procedural scenery, shadows follow (Campaign VM VM6b) Erik 2026-08-23 00:56:34 +02:00
  • 0930c35d1d feat(render): shader ABI v2 - AtmosphericFrame gains clock/wind blocks; caster pass binds it (Campaign VM VM6a) Erik 2026-08-23 00:30:02 +02:00
  • a0157693ec docs(vm3): closeout - owner gate brief with the measured curve table; #422 filed; tests pin the shipped defaults Erik 2026-08-22 23:53:26 +02:00
  • 51178f7c77 fix(render): VM3 review fixes - pin the filmic decodes, re-derive vignette for linear, name the authored sun colour Erik 2026-08-22 23:40:48 +02:00
  • 87677f9c4f feat(render): Atmospheric post stack runs in linear light; neutral preset is numerically the pack-off image (Campaign VM VM3) Erik 2026-08-22 23:10:57 +02:00
  • b1e9912535 fix(render): jitter the volumetric march per pixel (IGN); file #421 for the shadow transform buffer (Campaign VM VM5) Erik 2026-08-22 22:56:03 +02:00
  • 6e76314b08 docs(vm4): every Campaign AR document says what its evidence shows Erik 2026-08-22 22:51:59 +02:00
  • dcdd102824 docs(vm1): closeout - AP-232 for the translucent detail blend weight; sampler test pins the production constant Erik 2026-08-22 22:50:06 +02:00
  • ae6513126e fix(render): detail overlay is fogged after the combine like retail; VM1 review fixes Erik 2026-08-22 22:39:58 +02:00
  • 388457a735 fix(render): interior shell and detail passes bind their own instance opacity (Campaign VM VM1) Erik 2026-08-22 22:13:33 +02:00
  • 059703066f fix(render): #226 detail overlay uses retail's single-pass combine; drop the dead distance fade (Campaign VM VM1) Erik 2026-08-22 21:58:48 +02:00
  • 30e72a2af8 research(vm0): Campaign AR's pack-off path IS the pre-campaign renderer - PASS Erik 2026-08-22 21:40:40 +02:00
  • 4a69ecd32e docs(plans): Campaign VM carries the VM2 lesson - a branch that exists is not a branch that runs Erik 2026-08-22 18:26:02 +02:00
  • fe085cadaa research(vm2): retail runs SINGLE-PASS detail texturing - the #226 port targets the fallback Erik 2026-08-22 18:23:27 +02:00
  • 4dbbe8fead docs(plans): Campaign VM — VisualMaster plan + the Campaign AR review it closes Erik 2026-08-22 18:17:08 +02:00
  • c51b07ef95 test(gates): sequence the two-client remote-shadow gate with harness signals Erik 2026-08-22 17:44:13 +02:00
  • 8b7b601b32 Fix ambient flyer cadence and rotating shadows Erik 2026-08-22 17:39:38 +02:00
  • 9cd429dd73 docs(render): record secret-safe closeout gate Erik 2026-08-22 14:22:18 +02:00
  • fa3e7978ec fix(gates): require secret-safe observer credentials Erik 2026-08-22 14:20:14 +02:00
  • 772526d0cd docs(render): audit Campaign AR completion evidence Erik 2026-08-22 14:18:21 +02:00
  • d84edf0ceb docs(render): finalize Campaign AR machine-local gate Erik 2026-08-22 14:14:40 +02:00
  • d78ce100d6 test(render): fully warm dense shadow allocation gate Erik 2026-08-22 14:10:53 +02:00
  • a7b18364cd fix(gates): support a second account for remote shadows Erik 2026-08-22 14:06:57 +02:00
  • a861510a37 test(render): add connected remote-player shadow gate Erik 2026-08-22 14:03:50 +02:00
  • e56ac57486 docs(render): record Campaign AR Stage 2 closeout Erik 2026-08-22 14:01:07 +02:00
  • f92479ac3e test(render): add connected package lifecycle gate Erik 2026-08-22 13:53:29 +02:00
  • 1f75ce0505 fix(gates): initialize connected soak artifacts before isolation Erik 2026-08-22 13:34:36 +02:00
  • 0b6c6557a8 fix(gates): select a character in connected graphical runs Erik 2026-08-22 13:24:39 +02:00
  • 7a5f96ede5 feat(render): implement Campaign AR and terrain fidelity Erik 2026-08-22 13:13:29 +02:00
  • 99cf26e00c Merge remote-tracking branch 'origin/main' into codex/atmospheric-rendering-campaign Erik 2026-08-22 13:02:43 +02:00
  • 6c79d35c0b docs(roadmap): H.3's client scope is complete Erik 2026-08-21 18:32:12 +02:00
  • 57084b5372 docs(quest): Campaigns QT and QJ closed user-accepted Erik 2026-08-21 18:31:25 +02:00
  • eadedaea90 fix(journal): the timer's unit labels hide with their boxes Erik 2026-08-21 18:29:58 +02:00
  • e35d9386e4 fix(journal): the location readout is a FIELD, refresh at the click, and Abandon works Erik 2026-08-21 16:19:18 +02:00
  • 0b27c5d0fe test(ui): pin every Journal-panel button as enabled and reachable Erik 2026-08-21 15:59:19 +02:00
  • 73a04244e7 fix(ui): button property 0x0D was never "disabled", and it killed every Journal button Erik 2026-08-21 15:58:03 +02:00
  • c5cc8ae5fc feat(journal): QJ3/QJ4/QJ5 — both remaining tabs are live Erik 2026-08-21 15:42:05 +02:00
  • 536d17456d feat(journal): QJ1/QJ2 — the journal's pages and their file Erik 2026-08-21 15:31:47 +02:00
  • 45c964dbf0 docs(journal): plan Campaign QJ — the two tabs QT deliberately left inert Erik 2026-08-21 15:26:20 +02:00
  • fe1e68e5fe feat(quest): QT6 — plugins can read the contract tracker Erik 2026-08-21 15:22:22 +02:00
  • 56beeb720d fix(quest): QT5 — the rows were unclickable, and nothing showed which was selected Erik 2026-08-21 15:17:14 +02:00
  • ec6eeb120d feat(quest): QT5/QT6 — the Journal panel, and the button that was already there Erik 2026-08-21 15:12:05 +02:00
  • 5ca029d3ea docs(research): terrain detail/normals + atmospheric rendering findings Erik 2026-08-21 15:02:27 +02:00
  • fac2dc7248 docs(quest): QT5 is specified — and it is the Journal panel, not a contract one Erik 2026-08-21 14:56:46 +02:00
  • ef6b7310c5 feat(quest): QT2/QT4 — the contract catalog, and retail's progress column Erik 2026-08-21 14:53:21 +02:00
  • f629ce7f3d feat(quest): QT3 — the contract tracker becomes state, and the events get routed Erik 2026-08-21 14:46:53 +02:00
  • ab3934e21d feat(quest): QT1 — parse the contract-tracker events we have been dropping Erik 2026-08-21 14:38:00 +02:00
  • 730662f819 docs(quest): plan Campaign QT, and add the layout search that found the panel Erik 2026-08-21 14:36:04 +02:00
  • 0e0a77c9b1 feat(chat): CT-B4 — @log, and the research block that was a wrong question Erik 2026-08-21 11:28:20 +02:00
  • 89db9a794c feat(ui): authored state media animates, so the unseen-text indicator blinks Erik 2026-08-21 11:14:53 +02:00
  • f44f7641b1 tools(LayoutDump): --props and --media, for questions the decomp cannot answer Erik 2026-08-21 10:41:54 +02:00
  • a330d50df9 fix(chat): the unseen-text indicator follows its authored per-state visibility Erik 2026-08-21 10:33:26 +02:00
  • 7aae5ba939 chore(chat): CT-D1/D2 — delete the dead ChatPanel, reconcile the stale digest Erik 2026-08-21 10:27:43 +02:00
  • cbab79d70c fix(chat): the unseen-text indicator is state-driven, as retail drives it Erik 2026-08-21 10:23:15 +02:00
  • 111fbba3bb fix(input): free-fly is unreachable, and Escape no longer answers to it Erik 2026-08-21 09:55:16 +02:00
  • 550621efb2 feat(chat): CT-C1 — the unseen-text indicator Erik 2026-08-21 08:31:48 +02:00
  • 9f6d79b7e0 feat(chat): CT-C2 Escape leaves the entry; CT-C3 the timestamp is grey Erik 2026-08-21 08:28:45 +02:00
  • 2f97052e4f docs: CT-B3 dropped by user direction — no chat word filtering Erik 2026-08-21 08:14:02 +02:00
  • e62aaebda0 feat(chat): CT-B2 — "/r " expands to a tell at whoever last told you Erik 2026-08-21 08:10:39 +02:00
  • 0f1660d6ea feat(chat): CT-B1 — bound the transcript by retail's character budget Erik 2026-08-21 08:05:26 +02:00
  • 78bf62c80e fix(chat): the tell prefill leaves the caret after the prefix, not before it Erik 2026-08-21 08:00:43 +02:00
  • d32ef388f0 feat(chat): CT-A5 — clicking a speaker's name opens a tell Erik 2026-08-21 07:34:58 +02:00
  • 53395e4de4 feat(chat): CT-A4 — speaker names render in retail's tag colour Erik 2026-08-21 07:31:20 +02:00
  • 44fb74f8a6 feat(chat): CT-A3 — a chat line keeps the identity of who said it Erik 2026-08-21 07:27:14 +02:00
  • 2621fbf4a7 feat(chat): CT-A2 — parse retail's inline chat tag markup Erik 2026-08-21 07:23:07 +02:00
  • cf41b27c9a feat(ui): CT-A1 — multi-line text elements can carry coloured runs Erik 2026-08-21 07:18:55 +02:00
  • ba6c82af93 docs: Campaign CT rescoped to complete chat parity, system + GUI Erik 2026-08-21 07:13:55 +02:00
  • 663129c340 docs: Campaign CT — chat text tags, researched and planned Erik 2026-08-21 06:52:05 +02:00
  • be324c003c tools(LayoutDump): dump authored colour arrays; measure retail's tag green Erik 2026-08-21 06:49:59 +02:00
  • 3eb28c57f2 fix(chat): the talk-focus button names the focus, not the target Erik 2026-08-21 06:33:48 +02:00
  • 581a61ef0c feat(chat): the talk-focus menu's Tell-to / Squelch entries actually work Erik 2026-08-21 06:23:46 +02:00
  • 10304f6dc2 fix(chat): announce enchantment expiry; stop double-printing tells Erik 2026-08-21 06:11:33 +02:00
  • 80a3a25594 fix(world): rotate the DAT-scenery root too — the flyers actually orbit now Erik 2026-08-21 05:52:44 +02:00
  • 0c552eecac fix(world): honour SetOmega — the birds and butterflies fly again Erik 2026-08-21 05:42:59 +02:00
  • 255b0aaeda fix(magic): the foci map never loaded — casts demanded full components a focus should waive Erik 2026-08-20 21:28:22 +02:00
  • cd6eefd0ba feat(plugins): enforce apiVersion; launcher plugins default ON with "none" opt-out Erik 2026-08-20 21:28:04 +02:00
  • 7e75be23d1 fix(ui): effects list stayed pinned at its authored height in a taller window Erik 2026-08-20 21:00:16 +02:00
  • 6db0d69816 tools(LayoutDump): print the BUILT widget tree beside the authored one Erik 2026-08-20 20:46:34 +02:00
  • 46ce6f238c feat: regen buffs, wand aura, spellbook assess, indicator press flash Erik 2026-08-20 20:38:28 +02:00
  • fe1f124cd8 feat(mosstank): cast buffs in retail's dependency order Erik 2026-08-20 20:07:31 +02:00
  • 81e6a48603 feat(mosstank): banes, protections and weapon auras Erik 2026-08-20 19:49:51 +02:00
  • 5ca4a63272 feat(mosstank): the button is Force Buff — always recast everything Erik 2026-08-20 19:17:32 +02:00
  • 54005a864c feat(mosstank): cast back-to-back, and a settings view for the thresholds Erik 2026-08-20 18:51:15 +02:00
  • 1a7b0ed3d5 fix(mosstank): read the real busy signal, not the last-requested spell Erik 2026-08-20 18:35:37 +02:00
  • b9674b1f1e fix(mosstank): unclickable button, empty skill list, dev font, and chat output Erik 2026-08-20 18:27:28 +02:00
  • 17ebfc434d feat(mosstank): buff trained skills and attributes, pick tiers by skill, manage mana Erik 2026-08-20 18:09:02 +02:00
  • 9d1117b923 feat(plugins): MossTank — a self-buffing plugin, and the automation surface it needed Erik 2026-08-20 16:22:28 +02:00
  • 690f21889e docs: handoff for the VTank-class plugin automation milestone Erik 2026-08-20 15:50:58 +02:00
  • c254fea83d fix(app): apply the window icon from Load, not beside Window.Create Erik 2026-08-20 15:13:29 +02:00
  • 400e7c766f Merge main into acdream-mosswart-icon Erik 2026-08-20 14:46:26 +02:00
  • 48c44abd4a fix(IconForge): point the texture path at the real dump directory Erik 2026-08-20 14:43:37 +02:00
  • a1ffe77af4 feat: mosswart client icon and Asheron's Call-inspired launcher icon Erik 2026-08-20 14:42:10 +02:00
  • 1bd2b30291 fix(ui): restore retail vitals and window interactions Erik 2026-08-20 13:26:35 +02:00
  • 4d84456c21 docs: close Campaign LU with its ledger and the four gate traps Erik 2026-08-20 08:13:29 +02:00
  • 7037681a1f fix: state the verification cache's real limit instead of a claim that is false on ZFS Erik 2026-08-19 22:03:52 +02:00