50 lines
1.6 KiB
Markdown
50 lines
1.6 KiB
Markdown
# Project map
|
|
|
|
## Reference client
|
|
|
|
- Root: `../40250/Server Client TMP4/ClientVS22/source`
|
|
- High-level game and packet flow: `UserInterface`
|
|
- actors, motion, maps, flying objects: `GameLib`
|
|
- rendering, input, collision primitives: `EterLib`
|
|
- effects: `EffectLib`
|
|
- Granny integration: `EterGrnLib`
|
|
- audio: `MilesLib`
|
|
- terrain: `PRTerrainLib`
|
|
|
|
Use the Visual Studio project and active preprocessor flags to distinguish reachable product code from disabled, obsolete, and third-party code.
|
|
|
|
## Current client
|
|
|
|
- GDScript runtime and tests: `project/`
|
|
- native extension: `extension/`
|
|
- format readers: `formats/`
|
|
- shared/native libraries: `libgr2/`
|
|
- extracted assets and tables: `assets/`
|
|
- numerical reference oracle: `oracle/`
|
|
- host-side tools: `tools/`
|
|
|
|
## Existing evidence
|
|
|
|
- `docs/CLIENT-GAP.md`: historical broad gap analysis; migrate useful claims into contracts rather than trusting status text.
|
|
- `docs/CLIENT-PARITY-AUDIT-AND-FIX-GUIDE.md`: existing methodology and high-risk domains.
|
|
- `docs/CLIENT-40250-PORT.md`: porting context.
|
|
- `docs/PARITY-GAP.md`: visual/rendering gap notes.
|
|
- `oracle/run-diff-suite.sh`: Granny numerical comparison suite.
|
|
- `project/test_*_parity.gd` and `project/*_test.gd`: existing tests; inspect assertions before treating them as evidence.
|
|
|
|
## Typical verification commands
|
|
|
|
Run a narrow Godot test with:
|
|
|
|
```bash
|
|
godot --headless --path project --script project/test_name.gd
|
|
```
|
|
|
|
Some scripts expect the path relative to `project/` instead:
|
|
|
|
```bash
|
|
godot --headless --path project --script test_name.gd
|
|
```
|
|
|
|
Follow the convention already used by the selected test. Always finish code changes with `git diff --check`.
|