Add a canonical documentation map, modernize the public README, and align milestone, roadmap, architecture, issue, divergence, and session guidance with the July 20 baseline. Correct the far-teleport residual to issue #153, close visually accepted indicator and terrain-tiling work, record the remaining detail-overlay and build-warning debt, and deprecate the duplicate legacy bug ledger. Co-authored-by: OpenAI Codex <codex@openai.com>
74 lines
3.4 KiB
Markdown
74 lines
3.4 KiB
Markdown
# acdream — historical bug snapshot (deprecated)
|
|
|
|
> **Not an active issue tracker.** This file preserves the 2026-04-14 snapshot
|
|
> for archaeology. Several “open” entries below were superseded, narrowed, or
|
|
> fixed by later collision/rendering work. Do not update status here and do not
|
|
> use these BUG numbers for new work. The canonical tactical ledger is
|
|
> [`ISSUES.md`](ISSUES.md); current program navigation is in
|
|
> [`README.md`](README.md).
|
|
|
|
The text below is intentionally retained as historical evidence of what was
|
|
believed at the time.
|
|
|
|
---
|
|
|
|
## Historical open snapshot (not current)
|
|
|
|
### BUG-001: Wrong cloth textures on characters
|
|
- **Observed:** 2026-04-13
|
|
- **Description:** Character clothing renders with incorrect textures.
|
|
ObjDesc Phase 5 (AnimPartChange + TextureChanges + SubPalettes) is
|
|
shipped but something is off — either a texture-swap ordering issue,
|
|
a missing remapping step, or a palette application bug.
|
|
- **Repro:** Connect to ACE server, observe player character or NPCs.
|
|
- **Likely area:** `WorldEntity` ObjDesc application, `TextureCache`,
|
|
or the CreaturePalette pipeline in `InstancedMeshRenderer`.
|
|
- **Phase:** Unassigned (investigate after rendering rebuild Step 5).
|
|
|
|
### BUG-005: Collision penetration — body enters objects before blocking
|
|
- **Observed:** 2026-04-14
|
|
- **Description:** Player walks partway into boulders, trees, and walls
|
|
before collision is detected. Root cause: static overlap detection
|
|
instead of swept-sphere. Retail uses FindTimeOfCollision to compute
|
|
the exact contact point BEFORE moving the sphere. Our system moves
|
|
first, detects overlap, then tries to push out.
|
|
- **Repro:** Walk into a boulder at any speed — body clips into it.
|
|
- **Fix required:** Restructure Transition loop to compute collision
|
|
time before advancing position. Use CollisionPrimitives.FindTimeOfCollision
|
|
(already ported from FUN_00539BA0).
|
|
- **Phase:** B.3 (collision completion)
|
|
|
|
### BUG-006: Getting stuck at object corners and tight spaces
|
|
- **Observed:** 2026-04-14
|
|
- **Description:** Player gets permanently stuck when walking into
|
|
building corners or between objects. The SlideSphere crease projection
|
|
degenerates when two collision normals are nearly parallel or the
|
|
sphere is already penetrating.
|
|
- **Repro:** Run along a building wall and hit a corner.
|
|
- **Fix required:** Pre-move collision prevents penetration (fixes
|
|
BUG-005), which eliminates the degenerate crease case. Also need
|
|
stuck detection + push-out as a safety valve.
|
|
- **Phase:** B.3 (collision completion)
|
|
|
|
### BUG-007: Some trees don't have collision
|
|
- **Observed:** 2026-04-14
|
|
- **Description:** Some scenery trees/objects pass through despite
|
|
CylSphere collision being implemented. Likely missing CylSphere
|
|
data in their Setup, or the Setup isn't cached in PhysicsDataCache.
|
|
- **Repro:** Walk through certain trees near Holtburg.
|
|
- **Phase:** B.3 (collision completion)
|
|
|
|
---
|
|
|
|
## Historical fixed snapshot
|
|
|
|
### BUG-002: Jump not visible from retail client
|
|
- **Fixed:** 5634e71 — Jump packet (opcode 0xF61B) now sent to server.
|
|
|
|
### BUG-003: Facing direction mismatch with server
|
|
- **Fixed:** 6523c71 — YawToAcQuaternion converts from our yaw convention
|
|
to AC heading (0=West, 90=North) using holtburger's from_heading formula.
|
|
|
|
### BUG-004: Run speed not verified working
|
|
- **Fixed:** bb7eced — Server doesn't echo UpdateMotion to sender. Compute
|
|
RunRate locally via PlayerWeenie.InqRunRate (Run skill 200 → 9.5 m/s).
|