Commit graph

  • d86fd08011 feat(net): Phase F.1 GameEvent (0xF7B0) envelope dispatcher Erik 2026-04-18 16:52:46 +02:00
  • d3165f99d7 feat(vfx): Phase E.3 particle system + hook wiring + registry Erik 2026-04-18 16:48:17 +02:00
  • 351723928f feat(audio): Phase E.2 OpenAL engine + SoundTable cookbook + hook wiring Erik 2026-04-18 16:38:26 +02:00
  • b04d393329 feat(anim): Phase E.1 hook router + GameWindow wiring Erik 2026-04-18 16:30:23 +02:00
  • 4db0b2f16c feat(anim): Phase E.1 motion hooks + PosFrames + velocity/omega surfacing Erik 2026-04-18 16:28:15 +02:00
  • d910d570a3 memory: extend 2026-04-17 session handoff with evening bug-bash work Erik 2026-04-18 15:55:31 +02:00
  • 6bce9b8019 fix(anim): jump animation via Falling SubState + kept PlayAction infra for emotes Erik 2026-04-18 15:32:52 +02:00
  • 08ea2c0af8 feat(anim): motion-action-queue infrastructure + retail jump-is-physics-only note Erik 2026-04-18 15:12:12 +02:00
  • 3308cddda7 fix(movement+anim+session): clothing dedup, motion wire format, jump-skill default Erik 2026-04-18 15:01:32 +02:00
  • d951304875 memory: capture full 2026-04-17 session + permanent research index Erik 2026-04-18 13:24:11 +02:00
  • 3f913f1999 docs+feat: 13 retail-AC deep-dives (R1-R13) + C# port scaffolds + roadmap E-H Erik 2026-04-18 10:32:44 +02:00
  • 7230c1590f docs+feat(ui): retail UI deep-dive research + C# port scaffold Erik 2026-04-17 19:13:02 +02:00
  • ff325abd7b feat(ui): debug overlay + refined input controls Erik 2026-04-17 18:45:38 +02:00
  • 6b4e7569a3 fix(physics): transform collision normals/offsets from local→world space Erik 2026-04-14 16:32:41 +02:00
  • 874bcc8690 feat(physics): retail-faithful collision system port from ACE Erik 2026-04-14 16:18:43 +02:00
  • b16a149718 docs: session handoff + collision port mandate in memory Erik 2026-04-14 15:48:21 +02:00
  • 6c618937cb docs: collision port handoff — full retail system needed Erik 2026-04-14 14:04:14 +02:00
  • cadc72ed08 feat(physics): complete retail collision — indoor BSP, dual sphere, step-up, swept-sphere, 6-path dispatcher Erik 2026-04-14 14:00:52 +02:00
  • 1f30fbd2f5 fix(physics): increase contact point safety margin Erik 2026-04-14 13:35:06 +02:00
  • 76cf7a85ec fix(physics): use max(CylSphere.Radius, Setup.Radius) for collision Erik 2026-04-14 13:32:59 +02:00
  • bfe6a49d67 fix(physics): always register CylSphere alongside BSP parts Erik 2026-04-14 13:16:18 +02:00
  • 2ebbfc4864 fix(physics): don't fall back to no-collision resolve on transition fail Erik 2026-04-14 12:58:06 +02:00
  • 08c4f2764c chore: strip collision debug logging Erik 2026-04-14 12:55:18 +02:00
  • 4d335c74da fix(physics): use horizontal distance for cylinder broad-phase Erik 2026-04-14 12:49:04 +02:00
  • efd6a06c7d fix(physics): search adjacent landblocks for collision objects Erik 2026-04-14 12:44:50 +02:00
  • f2548146b5 fix(physics): push-out when spawned inside objects (stuck prevention) Erik 2026-04-14 12:34:29 +02:00
  • 8e1230c53b fix(physics): swept-sphere collision prevents penetration Erik 2026-04-14 12:23:10 +02:00
  • 3997839d1a docs: update bugs.md — close BUG-002/003/004, add BUG-005/006/007 Erik 2026-04-14 12:17:31 +02:00
  • fc96f1b7e3 chore: strip debug logging from collision diagnostics Erik 2026-04-14 12:16:57 +02:00
  • 14b0a6e2b8 feat(physics): CylSphere collision for trees, rocks, NPCs Erik 2026-04-14 12:14:28 +02:00
  • 2a4aaf4db7 feat(physics): port full BSPTree.find_collisions from retail Erik 2026-04-14 12:07:09 +02:00
  • e12d255d2e feat(physics): port full CTransition collision response from pseudocode Erik 2026-04-14 11:17:45 +02:00
  • e2f0c8580e feat(physics): cell-based ShadowObject collision Erik 2026-04-14 11:05:09 +02:00
  • 246713e2cc feat(physics): wire CTransition sphere-sweep into player movement Erik 2026-04-14 10:58:55 +02:00
  • 6523c7199b fix(movement): correct facing direction quaternion convention Erik 2026-04-14 10:42:19 +02:00
  • 5634e7114b feat(movement): send jump packet to server (opcode 0xF61B) Erik 2026-04-14 10:23:52 +02:00
  • bb7eced168 fix(movement): jump works locally (airborne velocity preserved) Erik 2026-04-14 10:17:59 +02:00
  • 31cd5480dc fix(physics): jump apex velocity zeroing bug Erik 2026-04-14 10:13:27 +02:00
  • 157ed9d974 fix(movement): jump works locally (airborne velocity preserved) Erik 2026-04-14 00:12:11 +02:00
  • e08a06ac5b feat(physics): Transition.FindTransitionalPosition core algorithm Erik 2026-04-13 23:52:45 +02:00
  • 9ea8ae5191 feat(physics): Transition system data structures Erik 2026-04-13 23:44:55 +02:00
  • 13f56b62a0 docs(research): collision transition system pseudocode from decompiled + ACE Erik 2026-04-13 23:41:13 +02:00
  • 874d267117 feat(physics): PhysicsDataCache + BSP sphere query Erik 2026-04-13 23:28:39 +02:00
  • 0bec5d5296 feat(movement): spacebar charged jump with skill-based height Erik 2026-04-13 23:20:52 +02:00
  • 5cb14da714 feat(physics): PlayerWeenie with retail Run/Jump formulas Erik 2026-04-13 23:15:25 +02:00
  • c7fa1d36fb feat(movement): wire server RunRate into player MotionInterpreter Erik 2026-04-13 23:11:49 +02:00
  • 4988ea02c0 docs: movement completion implementation plan (7 tasks) Erik 2026-04-13 23:08:48 +02:00
  • b5e21abe1b docs: movement completion design spec (B.2/B.3) Erik 2026-04-13 23:01:18 +02:00
  • cffc3ee343 feat(render): portal-based EnvCell visibility (Step 4) Erik 2026-04-13 22:20:52 +02:00
  • 25090b6fc9 docs: add bugs.md for tracking known visual/gameplay bugs Erik 2026-04-13 22:12:05 +02:00
  • 31d3a4678f fix(lighting): port ACME lighting constants replacing guessed values Erik 2026-04-13 22:01:28 +02:00
  • 1b3387f991 refactor(terrain): chunk-based TerrainChunkRenderer matching ACME architecture Erik 2026-04-13 21:50:40 +02:00
  • d35e4b6de7 perf(terrain): single shared VAO/VBO/EBO for all landblocks Erik 2026-04-13 21:30:43 +02:00
  • 787e0f0aff fix(render): skip empty groups in instanced draw to prevent crash on Tab Erik 2026-04-13 18:55:29 +02:00
  • 6a55838a10 perf(rendering): true DrawElementsInstanced — one draw call per (GfxObj × sub-mesh) Erik 2026-04-13 18:51:49 +02:00
  • b5099e2b21 refactor(rendering): introduce InstancedMeshRenderer with GfxObj grouping Erik 2026-04-13 18:46:20 +02:00
  • 08e309c357 fix(streaming): relocate player entity to current landblock every frame Erik 2026-04-13 15:28:32 +02:00
  • c32cef7e87 fix(streaming): player entity no longer disappears on landblock unload Erik 2026-04-13 15:04:46 +02:00
  • adf626367e docs: comprehensive architecture plan for acdream Erik 2026-04-13 14:23:50 +02:00
  • a722c29759 feat(physics): re-enable indoor transitions with containment validation Erik 2026-04-13 14:05:03 +02:00
  • 4782532c4b research: indoor transition pseudocode from ACE + decompiled analysis Erik 2026-04-13 13:56:16 +02:00
  • 64b1fcb31e docs: update audit — Sprint 1 items verified (sequence counters + scenery LCG) Erik 2026-04-13 13:51:39 +02:00
  • eeee4c5733 chore(scenery): audit SceneryGenerator against decompiled acclient.exe — all MATCH Erik 2026-04-13 13:50:04 +02:00
  • 11974c2099 feat(net): track + echo movement sequence counters Erik 2026-04-13 13:45:39 +02:00
  • 9e5258152d docs: development workflow + phase-by-phase audit Erik 2026-04-13 13:27:08 +02:00
  • 0335e317d2 fix(anim): remove frame swap — cursor now traverses all frames in reverse Erik 2026-04-13 13:15:27 +02:00
  • a57c5ccb76 feat(anim): carefully integrate AnimationSequencer into TickAnimations Erik 2026-04-13 13:02:54 +02:00
  • 78aef6d575 refactor(anim): rewrite AnimationSequencer as faithful decompiled-client port Erik 2026-04-13 12:59:32 +02:00
  • 8402aee703 research: full animation pseudocode from decompiled acclient.exe Erik 2026-04-13 12:43:44 +02:00
  • ca7ae45518 fix(anim): handle reversed frame range in BuildBlendedFrame Erik 2026-04-13 12:31:32 +02:00
  • 67b51a3e6f fix(anim): implement adjust_motion — TurnLeft/SideStepLeft play backward Erik 2026-04-13 12:17:26 +02:00
  • 0e66078e57 chore: leave ANIM-DIAG logging for next session Erik 2026-04-13 00:54:19 +02:00
  • 1b4fdac13c fix(anim): pass resolved command (not original) to sequencer SetCycle Erik 2026-04-13 00:51:39 +02:00
  • 0868849b3d fix(anim): left-side motion fallback to right-side animation Erik 2026-04-13 00:49:47 +02:00
  • e77dc1a0e8 fix(anim): call Sequencer.SetCycle on motion changes Erik 2026-04-13 00:44:38 +02:00
  • ed37f0969b feat(anim): carefully integrate AnimationSequencer into TickAnimations Erik 2026-04-13 00:40:52 +02:00
  • 53a4bf4225 Revert "feat(anim): integrate AnimationSequencer into GameWindow rendering loop" Erik 2026-04-13 00:30:25 +02:00
  • e4dae3d217 feat(anim): integrate AnimationSequencer into GameWindow rendering loop Erik 2026-04-13 00:27:11 +02:00
  • f48f2745c4 feat(anim): AnimationSequencer with transition links + retail slerp Erik 2026-04-13 00:22:42 +02:00
  • 14569558fb refactor(physics): wire PhysicsBody + MotionInterpreter into PlayerMovementController Erik 2026-04-13 00:08:02 +02:00
  • e3f8f95dfc feat(core): port decompiled AC client MotionInterpreter — 10 methods, 45 tests Erik 2026-04-13 00:00:39 +02:00
  • 6a5d8c1580 feat(core): port decompiled AC client physics — CollisionPrimitives + PhysicsBody Erik 2026-04-12 23:54:51 +02:00
  • 21fd550909 feat(physics): port 9 collision primitives from acclient.exe (chunk_00530000.c) Erik 2026-04-12 23:53:47 +02:00
  • 50c0704ada research: complete acclient.exe function map — 70+ identified functions Erik 2026-04-12 23:46:22 +02:00
  • 4d36756b91 research: full acclient.exe decompilation — 22,225 functions, 688K lines Erik 2026-04-12 23:25:51 +02:00
  • 370c6e3133 research: decompile acclient.exe terrain/physics via Ghidra headless Erik 2026-04-12 23:18:27 +02:00
  • 9d4967a461 fix(core): ACME cross-check fixes — normals, placement, scenery Erik 2026-04-12 22:52:08 +02:00
  • 05749f52e0 test: port ACME ClientReference + conformance tests Erik 2026-04-12 22:45:20 +02:00
  • 112aa4a3ae docs(CLAUDE.md): consolidated reference hierarchy + never-guess policy Erik 2026-04-12 22:42:04 +02:00
  • 624f55d60d docs: add WorldBuilder-ACME-Edition to CLAUDE.md reference repos Erik 2026-04-12 22:35:47 +02:00
  • 131594d91b fix(core): correct triangle boundary conditions in TerrainSurface.SampleZ Erik 2026-04-12 22:27:16 +02:00
  • 3ae7f5e7ae fix(physics): correct terrain Z sampling triangle layout in TerrainSurface Erik 2026-04-12 22:25:32 +02:00
  • 78d43a0914 fix(core+app): slope gradient compensation for feet clipping Erik 2026-04-12 22:13:16 +02:00
  • c5de445e5c fix(core): AC2D render split formula + triangle-aware Z sampling Erik 2026-04-12 22:08:42 +02:00
  • 5cd776914a docs: movement deep dive — AC2D + holtburger cross-reference Erik 2026-04-12 21:52:12 +02:00
  • 29fe0c0714 fix(app): terrain cull exempt + yaw preservation on Tab toggle Erik 2026-04-12 21:35:40 +02:00
  • a3b389603d fix(app): multi-point Z sampling + never-cull player landblock Erik 2026-04-12 21:29:54 +02:00
  • 6f05c298cf fix(app+core): Phase B.3 — streaming follows player, AC jump physics Erik 2026-04-12 21:06:42 +02:00
  • 192e066182 fix(app+core): Phase B.3 — player cull-exempt, jump height, slope Z Erik 2026-04-12 19:24:50 +02:00
  • dc0341e85a fix(core): Phase B.3 — add centroid + radius bounds to PortalPlane crossing test Erik 2026-04-12 19:08:46 +02:00