Add native Durak, poker, blackjack, roulette, Buckshot and billiards scenes with animation assets and regression tests. Improve arrival, city, hall, profiles, shops, audio and exit handling; remove the portable C game core and refresh shipping executables.
32 lines
1.9 KiB
Markdown
32 lines
1.9 KiB
Markdown
# Street population
|
|
|
|
The scene uses the existing generated street-life, city-props and patrons
|
|
packs. No new artwork or non-assembly game runtime was introduced.
|
|
|
|
- 47 exterior objects, plus two world-geometry benches.
|
|
- All four exterior planters/bushes and five billboard benches are removed.
|
|
- The two benches face the road and run parallel to the opposite facade,
|
|
in gaps between parked cars. Wooden seat/back boards, metal legs and
|
|
armrests have real world positions, height, perspective and depth testing.
|
|
- Mailboxes, newspaper boxes, hydrants, bollards, parking meters and fences
|
|
remain on curbs and in the entrance forecourt.
|
|
- Four independently phased walkers use both pavements. Two waiting visitors
|
|
flank the entrance, away from the guards and camera path.
|
|
- Lamps have street-scale height. Props continue beyond the intersection.
|
|
- MASM measures opaque source bounds for the eight furniture frames at load
|
|
time. Drawing uses the crop's own width, height and original texture pitch,
|
|
so transparent padding no longer shrinks the object or lifts its feet.
|
|
- The shared loader now accepts up to 64 frames, within a 32 MiB allocation
|
|
budget. The 40-frame street pack was previously rejected by a 32-frame cap.
|
|
Failed loads clear the entire pack header instead of retaining a misleading
|
|
nonzero frame count with a null pixel pointer.
|
|
- Pedestrian route interpolation keeps the complete 64-bit product, avoiding
|
|
the previous overflow and position jumps. Gameplay randomness is untouched.
|
|
|
|
Native tests in `tools/tests/street_population_test.inc` check registered map
|
|
cells, absence of planter/billboard-bench registrations, a 96-second walking
|
|
cycle, actual bench pixels, six remaining sprite furniture types, all four
|
|
walkers, and seven arrival-route framebuffers.
|
|
The offline `check_street_population.py` only verifies these test artifacts;
|
|
it is not used by the game. The existing camera/traffic route regression and
|
|
the rest of the native game tests are retained.
|