Sử dụng file này để theo dõi tiến độ của bạn
- Mở Unity Hub
- Add "Project Game AntKnow Server"
- Open với Unity 6000.0.48f1
- Verify packages installed:
- Netcode for GameObjects (2.5.1)
- Dedicated Server (1.6.1)
- Unity Transport
- Create folder: Assets/Script/Server/
- Create folder: Assets/Editor/
- Copy ServerBootstrap.cs
- Copy ServerGameManager.cs
- Copy ServerBuilder.cs
- Verify Domain layer exists:
- GameState.cs
- PlayerState.cs
- PropertyState.cs
- Test compile (0 errors)
✅ Hour 1 Complete: [ ]
- Open GameScene.unity
- Create GameObject: "NetworkManager"
- Add NetworkManager component
- Add UnityTransport component
- Configure: Port 7777, Address 0.0.0.0
- Create NetworkPlayer prefab:
- Create GameObject: "NetworkPlayer"
- Add NetworkObject component
- Add NetworkTransform component
- Add visual (Cube/Character)
- Save to: Assets/Prefabs/NetworkPlayer.prefab
- Delete from Hierarchy
- Assign Player Prefab to NetworkManager
- Create GameObject: "ServerBootstrap"
- Add ServerBootstrap component
- Configure: Port 7777, Max Players 4
- Create GameObject: "ServerGameManager"
- Add ServerGameManager component
- Add NetworkObject component
- Configure settings
- Save scene (Ctrl+S)
✅ Hour 2 Complete: [ ]
- File → Build Settings
- Platform: Windows, Mac, Linux
- Add Scene: GameScene.unity
- Remove: LoginScene, MenuScene
- Player Settings:
- Server Build: ENABLED
- Scripting Backend: IL2CPP
- API Compatibility: .NET Standard 2.1
- Unity Menu → Build → Build Dedicated Server (Windows)
- Wait for build (~10-15 min)
- Verify output: Builds/Server_Windows_[timestamp]/AntKnowServer.exe
✅ Hour 3 Complete: [ ]
- Navigate to: Builds/Server_Windows_[timestamp]/
- Run: RunServer.bat
- Check server.log:
- "Dedicated Server Mode Detected"
- "Server listening on 0.0.0.0:7777"
- "SERVER STARTED SUCCESSFULLY"
- Verify port: netstat -an | findstr 7777
- Expected: TCP 0.0.0.0:7777 LISTENING
✅ Hour 4 Complete: [ ]
- Switch to "Project Game AntKnow"
- Create folder: Assets/Script/Client/
- Copy ClientConnectionManager.cs
- Open MenuScene.unity
- Create Connection UI:
- Canvas → Panel "ConnectionPanel"
- InputField: "Server IP"
- Button: "Connect"
- Text: "Status"
- Add ClientConnectionManager to Canvas
- Assign UI references
- File → Build Settings:
- Platform: Windows
- Scenes: LoginScene, MenuScene, GameScene
- Server Build: DISABLED
- Build → Builds/Client_Windows/AntKnow.exe
- Wait for build (~10-15 min)
✅ Hour 5 Complete: [ ]
- Terminal 1: Run server (RunServer.bat)
- Terminal 2: Run Client 1 (AntKnow.exe)
- Enter IP: 127.0.0.1
- Click Connect
- Verify: "Connected!"
- Terminal 3: Run Client 2 (AntKnow.exe)
- Enter IP: 127.0.0.1
- Click Connect
- Verify: "Connected!"
- Check server log:
- "Client 1000 APPROVED. Players: 1/4"
- "Client 1001 APPROVED. Players: 2/4"
- "Starting game in 5s..."
- "STARTING GAME"
- Check client logs:
- "GAME STARTED!"
- "Turn started for Player 1"
- Test turn system:
- Player 1 can roll dice
- Player 2 sees the roll
- Turns alternate
✅ Hour 6-7 Complete: [ ]
- Fix connection issues (if any)
- Fix turn system bugs (if any)
- Test disconnect handling
- Test reconnection
- Verify all features work
✅ Hour 8 Complete: [ ]
✅ DAY 1 COMPLETE: [ ]
Day 1 Success Criteria:
- Server builds and runs
- 2+ clients can connect
- Game starts automatically
- Turn system works
- Dice rolling syncs
- Implement dice rolling sync
- Add "Roll Dice" button to client
- Test: All clients see same dice result
- Implement player movement sync
- Add NetworkVariable for position
- Animate player movement
- Test: All clients see movement
✅ Hour 1-2 Complete: [ ]
- Implement RequestBuyPropertyServerRpc
- Validate: Player has money
- Validate: Property not owned
- Deduct money, set owner
- Broadcast update
- Show PanelBuy on client
- Test: Buy property syncs
✅ Hour 3-4 Complete: [ ]
- Implement HandleRentPayment
- Calculate rent based on property level
- Transfer money between players
- Broadcast update
- Show rent notification on client
- Test: Rent payment syncs
✅ Hour 5-6 Complete: [ ]
- Add NetworkVariable for money
- Update on buy/rent/salary
- Sync to all clients
- Update UI on money change
- Add money change animation
- Test: All money transactions sync
✅ Hour 7-8 Complete: [ ]
- Full game flow: Roll → Move → Buy → Rent
- Test with 4 players
- Fix bugs
- Verify all features work
✅ Hour 9-10 Complete: [ ]
✅ DAY 2 COMPLETE: [ ]
Day 2 Success Criteria:
- Dice rolling syncs
- Player movement syncs
- Can buy properties
- Rent payment works
- Money syncs correctly
- Implement RequestUpgradePropertyServerRpc
- Validate: Player owns property
- Validate: Has money
- Deduct upgrade cost
- Set property level
- Show house/hotel models
- Test: Upgrades sync
✅ Hour 1-2 Complete: [ ]
- Implement Start tile (+200 salary)
- Implement Jail tile
- Implement Tax/Bonus tiles
- Test: All special tiles work
✅ Hour 3-4 Complete: [ ]
- Server: Track turn start time
- Server: Auto-end turn after 60s
- Client: Show countdown timer
- Test: Timeout handling
✅ Hour 5 Complete: [ ]
- Check end conditions (max turns, 1 player left)
- Calculate scores
- Determine winner
- Broadcast results
- Show PanelResult on client
- Test: Game ends correctly
✅ Hour 6-7 Complete: [ ]
- Save game results to Firestore
- Update player stats
- Award coins/exp
- Test: Save/load works
✅ Hour 8-9 Complete: [ ]
- Fix critical bugs
- Improve UI feedback
- Add sound effects
- Test edge cases
✅ Hour 10 Complete: [ ]
✅ DAY 3 COMPLETE: [ ]
Day 3 Success Criteria:
- House/hotel system works
- Special tiles implemented
- Game ends properly
- Results saved to Firebase
- Choose platform (AWS/GCP/Unity Multiplay)
- Create VM/Fleet
- Configure security group (port 7777)
- Upload server build
- Run as service
- Verify server running
✅ Hour 1-2 Complete: [ ]
- Update server IP in client
- Build production client
- Test connection to cloud server
- Fix connection issues
✅ Hour 3-4 Complete: [ ]
- Test with 4 players
- Test with 8 players (2 games)
- Monitor server performance
- Check for lag/desync
✅ Hour 5 Complete: [ ]
- 4 players full game (start to end)
- Player disconnect mid-game
- Reconnection handling
- All features working
- No critical bugs
✅ Hour 6-7 Complete: [ ]
- Server: Reduce FPS if needed
- Server: Optimize network traffic
- Client: Optimize rendering
- Client: Reduce network calls
✅ Hour 8-9 Complete: [ ]
- Create player guide
- Setup monitoring
- Prepare support system
- Final smoke test
- 🚀 LAUNCH!
✅ Hour 10 Complete: [ ]
✅ DAY 4 COMPLETE: [ ]
Day 4 Success Criteria:
- Server deployed to cloud
- Clients can connect from internet
- 4 players can play full game
- No critical bugs
- 🚀 GAME LIVE!
- Server running 24/7
- Clients can connect from anywhere
- All MUST HAVE features working
- No critical bugs
- Performance acceptable
- Monitoring active
- Support ready
- Server deployed
- Client builds distributed
- Player guide available
- Support system ready
- 🚀 GAME LAUNCHED!
CONGRATULATIONS! BẠN ĐÃ HOÀN THÀNH! 🎉
Total Time: _____ hours
Launch Date: //_____
Players: _____ concurrent users