Skip to content

jcm300/OnlineGameMatchmaking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OnlineGameMatchmaking

OnlineGameMatchmaking is a system that emulates the inner-workings of online multiplayer game match-making systems. The system follows a Client-Server Model where Server-Client communications are made via TCP sockets. Developed in the context of the Distributed Systems course at Minho University

The Matchmaking System should allow:

  • User registration(username and password) and authentication
  • Play a game (start the phase of matchmaking, team formation and hero pick).
    • Team Formation
      • Each team should have 5 players
      • Each player should have a ranking
      • The System chooses 10 players (maximum rank difference between players must no exceed one) and breaks them into two teams balanced by the average ranking of the players
    • Hero pick
      • There are 30 different hero's
      • At any given time during the pick period, a player should be able to check the choices his teammates are making
      • No two heroes of the same type should be allowed on the same team
      • There's a 30s timeout period in which a player can change is pick
      • After timeout period has ended, if all the players have successfuly chosen their hero the match starts, else the match ends prematurely
    • If a match successfuly starts it's result is randomly generated and the players W/L values are updated accordingly

Note: only the matchmaking functionality is implemented, not the game itself, the outcome of the matches is randomly generated and used to update user ranks.

Setup

Dependencies

Build Status

Build Status

License

Licensed under the MIT License, see LICENSE.md for more details.

About

Matchmaking on an Online Game

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages