COMP4002/GAM Games
Multiplayer - Topologies
Multiplayer Games
• Player archetypes
• Single player
• Pre-defined challenges, “campaigns”, AI controlled opponents
• Multiplayer
• Interaction with other players forms a key challenge of the game play
• People are “better” than AI systems
• Less predictable, more complex, more interesting
• Playing with people provides a social element
• Larger environments supporting a greater variety of characters
• Potentially supporting an economy or trading between players
• Modes
• Transient
• Ad-hoc, short-lived sessions
• Easy to “host” a game
• Quake, Team Fortress, Overwatch
• Persistent
• A central authority maintains a persistent world
• World of Warcraft
Topologies - Where is the game?
• Consider the physical experiential context
• “Local”
• Single device, players are co-located
• Arcade games, racing, fighting, ”couch co-op”
• Share the same console / screen / pc
• Multiple controllers / input-mechanisms
• Share or split screen into two or four sections
• A rendering, screen real-estate problem
• Networked / Online
• Multiple devices, players are physically separated, digitally co-located
• FPSs, MMORPGs
• Many combinations of players 2 -> ??
• Game play is shared over the network / Internet
• A distributed computing problem
Local Multiplayer
• Interaction between multiple players
• Attempt based, “hot-seat”
• Concurrent
• Shared (full) screen
• Only render one view/camera perspective for all players
• Efficient, enables synchronous communication through play
• Complete playfield visibility
• Fit all players on the same screen
• Adaptive
• Zoom to keep everyone on the screen
• Emergent gameplay: - camera affects players
• Restrict movement, player-funneling
• Kill the player if they’re off the screen for too long
• Split screen
• Render a different view for each player
• Double/quadruple the rendering overhead
• Shrink the view, change the aspect ratio
• Emergent gameplay, cheating
Networked / Online Game Play
• Players are physically separate
• Communicating sufficient information to maintain a perceptually shared
reality, while minimising both bandwidth use and perceived violations of the integrity of the simulation / fiction
• User input -> model, model -> client view for rendering
• Considerations
• Topology – arrangement of key components
• Nature of the communication / “ netcode”
Topologies
• Where is the “game”?
• An authoritative model somewhere (game state)
• Possible topologies
• Primary and secondary
• One player’s game takes responsibility for the model
• Authoritative client-host
• Dynamic peer-to-peer
• Relay server
• A server to simply mediate communication between clients
• Dedicated server and clients
• Dedicated software / machine is responsible for the model
• Multiple players, local network, internet
• True peer-to-peer
• Shared responsibility for the model
• Difficult to scale, verify