42 lines
2.7 KiB
Markdown
42 lines
2.7 KiB
Markdown
[ ADT's Report ]
|
|
|
|
Updated the `tekton-enet` ( Armageddon Multiplayer ) on branch `launcher`
|
|
|
|
**Network Animation Synchronization**
|
|
|
|
✅ **Animation RPC Functions** - Added `sync_walk_animation()`, `sync_pickup_animation()`, `sync_put_animation()`, and `sync_special_animation()` RPC functions to `player.gd` for network-synced animations.
|
|
|
|
✅ **Manager Updates** - Updated `player_movement_manager.gd`, `playerboard_manager.gd`, and `powerup_manager.gd` to call RPC animation sync functions instead of local-only animation methods. Now all players see each other's walking, grab, put, and power-up animations.
|
|
|
|
**Username Synchronization**
|
|
|
|
✅ **Display Name Variable** - Added `display_name` variable to `player.gd` that stores the player's actual username from their profile.
|
|
|
|
✅ **Lobby Name Sync** - Updated `lobby_manager.gd` to send the client's username and character to the host when requesting room info via `request_room_info()`. Host now correctly displays client usernames instead of "Player 12345".
|
|
|
|
✅ **Auto-Use Profile Name** - Updated `lobby.gd` to hide the name input field for logged-in users and automatically use `UserProfileManager.get_display_name()`. Only guest users see and can edit the name input.
|
|
|
|
✅ **In-Game Name Display** - Updated `player.gd` `_ready()` to look up display name from `LobbyManager.get_players()` and sync via `sync_display_name()` RPC. Player name labels and message bar now show actual usernames.
|
|
|
|
**Leaderboard Name Fix**
|
|
|
|
✅ **Display Name Usage** - Updated `main.gd` to use `player.display_name` instead of `player.name` (peer ID) in 6 locations: `_on_leaderboard_updated()`, `_show_game_over_panel()`, `request_leaderboard_sync()`, `sync_leaderboard_data()`, and `_update_leaderboard_display()`.
|
|
|
|
**Player Rotation Sync**
|
|
|
|
✅ **Rotation RPC** - Updated `player_movement_manager.gd` to call `rpc("sync_rotation", target_rotation)` when player rotates toward a target. Other clients now see correct facing direction.
|
|
|
|
✅ **Smooth Interpolation** - Updated `sync_rotation()` RPC in `player.gd` to also set `movement_manager.target_rotation` for smooth rotation interpolation on remote clients.
|
|
|
|
---
|
|
|
|
**Nakama Local Development Checklist** (Next Steps)
|
|
|
|
⬜ **Docker Compose Setup** - Create `server/docker-compose.yaml` with Nakama + PostgreSQL services for local development on Docker Desktop (Windows/Mac).
|
|
|
|
⬜ **Run Locally** - Start Nakama on localhost:7350 via `docker-compose up -d`.
|
|
|
|
⬜ **Tunnel with localhost.run** - Use `ssh -R 80:localhost:7350 nokey@localhost.run` to expose port 7350 for remote device testing.
|
|
|
|
⬜ **PostgreSQL Learning** - Study the Nakama PostgreSQL schema and flow for managing user data, storage, and leaderboards. Goal: Make the online dedicated server more flexible with PostgreSQL.
|