FAForever / FAForever/faf-java-server

Respect game visibility

Open
#50 0 comments 0 reactions 0 assignees View on GitHub
beginner-friendly
Dominant language
Java
Stars
12
Forks
5
PR merge metrics
No merged PRs in 30d

Description

Currently, the server broadcasts all games to all players. However, games marked as PRIVATE should not be broadcasted at all and games marked as FRIENDS should only be sent to friends.

1. Remove the unused `com.faforever.server.game.GameAccess`
1. Don't serialize `visibility` when sending games to client (in `com.faforever.server.integration.legacy.transformer.GameResponsesTransformer#game`)
1. Implement a method similar to `com.faforever.server.game.GameService#markDirty` that allows specifying a list of players to send to
1. Extend `com.faforever.server.client.DelayedResponse` so that a list of receivers can be specified. The list should be nullable (so make its getter return an Optional), in which case it's considered a broadcast (document this in the getter)
1. Refactor `com.faforever.server.client.ClientService#broadcastDelayedResponses` so that it either broadcasts the response or sends it to the list of recipients.
1. Adjust and add unit tests accordingly

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.