We are currently looking for a

Rust developer / maintainer

for yet another rewrite of our FAF replay server (written in Python with asyncio).

For every game played, every player sends a replay stream containing game commands to our server. We merge all replay streams into one singular replay file.

Because of the Python limitations, the current server can only utilize one server core. The architecture of the game/server communication prevents us from scaling this service across multiple instances. Due to our growing player base, we will hit the CPU limit of 1 core in the future.

Interesting problems:

  • Player data streams do diverge because e.g. some players leave the game early. We need to build the replay file based on the right stream (the one most of the players send)
  • Live replay streaming with a time delay

You help developing the new server in Rust or even take over maintainership of the code.

Further reading:
Github faf-aio-replayserver (current)
Github faf-rust-replayserver (new, WIP)

Engagement: short or long term
Complexity: medium (rewrite of existing app, but with interesting algorithms)
Programming language: Rust
Degree of freedom: low (the task is to rewrite the existing app and not much more)

Contact: @Brutus5000 and/or @MazorNoob via Forum or in the FAF Discord.