Skip to content

RFC: Take matchmaking requests from RabbitMQ #675

@Brutus5000

Description

@Brutus5000

This should be the missing piece in my envisioned galactic war architecture.

Similar to ladder or tmm I need a way to force players into an automatch (no lobby).
As this is not always successfull, I also need a feedback loop.

So we should implement a rabbitmq protocol such as:

routing key request.match.create:

{
  "requestId": "<random uuid>",
  "matchmakerQueueId": 1,
  "featuredMod": 13,
  "gameName": "Battle on Yavin IV #12",
  "mapName": "NeroxisMapGenerator_1.11.2_magic_seed",
  "participants": [
   {
       "playerId": 13443,
       "team": 2,
       "slot": 1,
       "faction": "aeon"
   },
   {
       "playerId": 13443,
       "team": 3,
       "slot": 2,
       "faction": "uef"
   },
]
}

routing key success.match.create:

{
  "requestId": "<uuid of original request>",
  "gameId": 98765
}

routing key error.match.create:

{
  "requestId": "<uuid of original request>",
  "errorCode": 123,
  "args": [
  {
     "playerId": 13443
   }
  ]
}

The error codes need to be defined precisely as it might cause punishments if it fails because a player was already in a game or similar.

Metadata

Metadata

Assignees

Labels

enhancementproposalA feature or change that is up for discussion

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions