advanced_mapping #1

Merged
marti merged 8 commits from advanced_mapping into master 2025-12-29 01:12:13 +00:00

8 Commits

Author SHA1 Message Date
c8cc35772f feat: Implement advanced tile mapping system with abstract deck
- Created TileDefinitions.js with centralized tile definitions
- Implemented abstract deck system (8 rooms 4x4, 4 rooms 4x6, 12 corridors, 10 L-shapes, 8 T-junctions)
- Added connection validation (type compatibility, exit direction, walkability alignment)
- Implemented corridor orientation filtering (EW/NS matching)
- Added exhaustive L/T variant selection with random choice
- Updated corridor definitions with EW and NS orientations
- Fixed ASSETS.tiles references throughout main.js
- Known issue: L/T offset alignment needs further debugging
2025-12-29 02:09:34 +01:00
83dc2b0234 Feat: Implement Event System, Exploration Phase, and Collision Detection 2025-12-28 22:38:45 +01:00
b6ca14dfa2 Feat: Hybrid Architecture Phase 1
- Implemented Game Server (game-server.js) with Socket.io
- Added JSON Schemas for Campaigns and Missions
- Updated Docker configurations for multi-service setup
- Refactored main.js to allow local network connections
- Removed legacy code (main_old.js)
- Updated dependencies
2025-12-28 20:44:40 +01:00
57f6312a5a Fix: Allow clicking through open doors
- Filter invisible doors from raycast intersection tests
- Open doors no longer block mouse clicks on tiles behind them
- Players can now select and move to tiles visible through open doorways
- Fixes issue where opened doors acted as invisible collision barriers for UI interaction
2025-12-28 20:18:17 +01:00
5852a972f4 Fix: Correct door alignment for East and West walls
- Fixed wallOffset calculation for E/W walls
- Both E and W walls need inverted offset due to rotation=π/2
- Local X axis points to -Z for both walls when rotated 90°
- Door gaps and door meshes now perfectly aligned on all walls (N/S/E/W)
- Resolves misalignment issue where E/W doors didn't match their wall gaps
2025-12-28 20:12:32 +01:00
8025d66fc4 Refactor: Unify door positioning logic
- Created getDoorWorldPosition() function that calculates both mesh position and wall offset
- Eliminated duplicate positioning logic between wall gaps and door meshes
- Removed inconsistent sign inversions that caused misalignment
- Both wall gaps and door meshes now use the same coordinate system
- Fixes issue where doors and gaps were positioned differently on S and W walls
2025-12-28 20:02:13 +01:00
ea3813213a Pre-refactor: Door alignment fix - safety checkpoint 2025-12-28 20:00:33 +01:00
0e5b885236 Feat: Interactive doors with physical wall cutouts
- Implemented door selection and interaction model (walk-to + click).
- Added modal for opening doors.
- Refactored wall rendering to create physical holes (CSG-like wall segments).
- Aligned door meshes to perfectly fit wall cutouts.
- Managed door visibility states to prevent Z-fighting on open doors.
2025-12-23 13:50:05 +01:00