Image for
Home

Development of multiplayer games

  • Class 30
  • Practice 45
  • Independent work 135
Total 210

Course title

Development of multiplayer games

Lecture type

Obligatory

Course code

23-11-539

Semester

7

ECTS

7

Lecturers and associates

Course overview

The aim of the module is to introduce students to the programming of local and online multiplayer games.
This module is part of the key vertical of the study program. It builds on the skills and knowledge acquired in previous vertical modules and provides prerequisites for subsequent modules in the same vertical. The skills learned in this module will significantly contribute to the development of the student as a professional in the respective fields.
The module is taught in the programming languages C++ and C
and in the software development tools Unity and Unreal. The module knowledge check is based on individual student projects.

Content

Students will learn:
• create local multiplayer computer games on the same or split screens
• key protocols in network communication used in the development of computer games
• serialize and deserialize objects
• basics of client-server and client-client architecture
• what is an authoritative server, client prediction and entity interpolation
• matchmaking protocols
• supporting services in online computer games (lobby server, relay server, etc.).

Literature

1. Madhav, S., Glazer, J. (2015) Multiplayer Game Programming: Architecting Networked Games (Game Design). 1st edn. Boston: Addison-Wesley Professional.

Download student guide

Minimal learning outcomes

  • Construct a prototype of a local multiplayer computer game.
  • Implement network communication using network protocol.
  • Create a prototype of a multiplayer computer game based on client-server architecture.
  • Create a prototype of a multiplayer computer game based on client-client architecture.
  • Construct a player matchmaking mechanism in a multiplayer computer game.

Preferred learning outcomes

  • Construct a complex prototype of a local multiplayer computer game.
  • Optimize network communication using network protocol.
  • Create a prototype of a multiplayer computer game with an authoritative server.
  • Create a prototype of a multiplayer computer game based on client-client architecture and argue the challenges in achieving network communication.
  • Construct a player matchmaking engine with supporting services in a multiplayer computer game.