FAForever / FAForever/server

RFC: Take matchmaking requests from RabbitMQ

Open
#675 10 comments 0 reactions 1 assignee Claimed by @1-alex98 View on GitHub
enhancement proposal
Dominant language
Python
Stars
72
Forks
84
Avg merge
5h 11m
Merged PRs (30d)
1

Description

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:**

```json
{
"requestId": "",
"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:**
```json
{
"requestId": "",
"gameId": 98765
}
```

**routing key error.match.create:**
```json
{
"requestId": "",
"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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.