Phase 4: Multiplayer, Queues & Polish
Phase 4 brings the full multiplayer experience online. You will implement the PvE-only and PvPvE queues with smart team-size matching, support up to 8 players per dungeon (capped at 3 per team in PvPvE), and add the final polish layer (sound, particles, Onion OS packaging) so the game feels complete and ready for release.
Deliver robust, balanced multiplayer with two queue types, matched team sizes, and a polished experience that runs smoothly on real Miyoo hardware.
A fully playable multiplayer build: players can queue into PvE-only or PvPvE sessions, form matched teams (max 3 per team, 8 total), fight together or as rivals, hear sound effects, see augment particles, and launch directly from the Onion OS launcher.
In shared/src/lib.rs add team and queue data:
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum QueueType { PvEOnly, PvPvE }
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Team {
pub id: u32,
pub players: Vec<PlayerId>,
pub color: u32, // for tinting sprites
}
#[derive(Debug, Serialize, Deserialize)]
pub enum Packet {
// ... previous
JoinQueue { queue_type: QueueType, party_size: u8 },
QueueMatched { dungeon_id: u64, team_id: u32 },
TeamUpdate { team_id: u32, members: Vec<PlayerId> },
}
Create a lobby manager that:
Enforce your rules:
Add a clean lobby screen on the Miyoo before entering a dungeon:
Server assigns teams on match. Client shows:
Enhance UDP snapshots with interest management:
Add the final layer of juice:
Package everything as a proper .app folder with icon and launcher metadata.
Run full end-to-end tests on multiple Miyoo devices with different network conditions (home WiFi, hotspot, 2–8 players).
The game is now a complete, polished multiplayer extraction experience. Phase 5 is just content, balance, and release.