Releases: FAForever/server
v1.12.9 - Matchmaker tweaks
This version continues to hone in the matchmaker behavior to find an optimal balance of wait time vs game quality across all rating ranges. New players and high rated players will now be matched a bit more cautiously to try and improve game quality. In addition the map pool used for map selection will now be determined by the average displayed rating of the team as opposed to the minimum. This means it will now be possible for you to get maps from map pools which are above your rating in TMM if you are matched with higher rated players.
Developer notes
Since the map pool selection uses average rating it will not necessarily be possible to show an accurate map pool in the client.
Deployment notes
In this release the Dockerfile was rewritten and does some things different internally. Most notably the code is no longer copied to /code
and is instead installed to the system as a python package. Only main.py
(formerly server.py
) is copied to /code
and serves as the main entrypoint for the application. These changes should still be fully compatible with the old configuration in faf-stack
, however, they could potentially break more customized setups.
What's Changed
- Rework newbie matching by @BlackYps in #958
- Additional linting actions by @Askaholic in #959
- Change map pool selection by @BlackYps in #952
- Tune matchmaker minority bonus by @BlackYps in #957
- Improve matchmaker info message by @BlackYps in #954
- Fix docker build by @Askaholic in #955
Full Changelog: v1.12.8...v1.12.9
v1.12.8 - Achievements Fix
Sends achievement updates over RabbitMQ instead of trying to contact the API directly. This means changes to the API will no longer break the achievement update code in the future. This requires the API to also listen for updates over RabbitMQ before achievements will work again.
What's Changed
- More info logging by @Askaholic in #951
- Issue/#946 Update achievements over RabbitMQ by @Askaholic in #949
- Configure server contexts through yaml config by @Askaholic in #945
Full Changelog: v1.12.7...v1.12.8
v1.12.7 - More bugfixes
The main changes in this release are a fix to the matchmaker that was allowing matches with too low quality, and changing mutual draws to be rated as regular draws as opposed to being unrated. This was due to some confusing behavior when a player died and the rest of the players agreed to a mutual draw.
What's Changed
- Issue/#939 Increase asyncio buffer size to allow for longer messages by @Askaholic in #943
- Issue/#876 Use rabbitmq 3.9 by @Askaholic in #944
- Update dependencies and other small things by @Askaholic in #942
- Issue/#936 Remove mutual draws by @Askaholic in #940
- Issue/#937 fix logging call to show exception correctly by @Askaholic in #938
- Cap minority bonus by @BlackYps in #941
Full Changelog: v1.12.6...v1.12.7
v1.12.6 - Matchmaker bugfixes
What's Changed
- Issue/#931 Violation tracking fix by @Askaholic in #932
- Fix severe matchmaking bug by @BlackYps in #934
- Issue/#878 Use MariaDB in github actions by @Askaholic in #929
Full Changelog: v1.12.5...v1.12.6
v1.12.5 - Matchmaker tweaks
This release changes some of the implementation of the matching algorithm to give additional priority to players on the edges of the rating distribution.
What's Changed
- Update dependencies by @Askaholic in #928
- Tune matchmaker by @BlackYps in #926
- Update dependencies by @Askaholic in #923
- Matchmaker violation wording change by @maudlin27 in #922
- Fix GeoIP cronjob schedule by @BlackYps in #918
- Refine matchmaker metrics by @BlackYps in #917
New Contributors
- @maudlin27 made their first contribution in #922
Full Changelog: v1.12.4...v1.12.5
v1.12.4 - Out of Steam
Summary
Removes any checks for steam id from the server as the user service which supplies the OAuth tokens checks for ownership so any check in the lobby server is redundant and legacy. Also adds a configuration flag to disable the hello password login in order to not bypass the check from the user service
What's Changed
- Remove steam id checks from server by @Sheikah45 in #912
- Issue/#914 configuration refresh by @Askaholic in #915
- Update dependencies by @Askaholic in #916
Full Changelog: v1.12.3...v1.12.4
v1.12.3 - Rating bugfix
Summary
Fixes a bug where games could be rated multiple times.
What's Changed
- Issue/#909 Dependency updates by @Askaholic in #910
- Issue/#903 Fix games being rated multiple times by @Askaholic in #904
Full Changelog: v1.12.2...v1.12.3
v1.12.2 - Minor bugfixes
Summary
This release contains mostly just minor housekeeping things. The biggest change was a removal of the custom __eq__
and __hash__
implementations for Player
objects. This was causing some really obscure bugs especially with the party system where it was possible to be in a party by yourself but not have party owner permissions. Hopefully this won't happen anymore.
What's Changed
- Issue/#860 Update README by @Askaholic in #869
- Set game_id_counter to 0 if no games by @Brutus5000 in #896
- Issue/#897 config housekeeping by @Askaholic in #899
- Fix integration tests by @Askaholic in #898
- Issue/#893 player hash implementation by @Askaholic in #895
Full Changelog: v1.12.1...v1.12.2
v1.12.1 - More Matchmaker Metrics
Summary
Adds additional metric reporting about the matchmakers
Pull Requests
Full Changelog: v1.12.0...v1.12.1
v1.12.0 - Matchmaker timeouts for failed games
Summary
This release aims to improve the matchmaker experience, since the addition of the 4v4 queues made connection issues a significant factor. Now, people who repeatedly cause a matchmaker game to fail will be temporarily put into a matchmaker cooldown period where they cannot join any queues until their timeout expires. The timeout periods are currently defined like this:
1 violation: None
2 violations: 10 minute cooldown
3+ violations: 30 minute cooldown
The violation count is reset after 1 hour of no failed matches.
In addition, there are some bug fixes to tracking of matchmaker state that could cause the wrong game to be cancelled if one of the player's network connections timed out, as well as change to the pop timers that reduces the threshold for number of players in the queue before the pop interval is shortened.
Developer Notes
- Clients should consider the
teams
field in thegame_info
message to be deprecated and useteams_ids
instead
Pull Requests
- Update dependencies by @Askaholic in #891
- Issue/#870 stop players from joining the queue after failing to connect to games by @Askaholic in #885
- issue/#812 add player ids to game_info by @KaukaHan in #864
- Reduce desired matches for pop timer by @BlackYps in #886
- Cancel matches if someone closes the game by @BlackYps in #882
- Improve CI by @Askaholic in #884
- Remove ladder game default args by @BlackYps in #880
- Fix whitespace issues by @BlackYps in #881
- Fix "Can't xxxx game while in state xxxx" messages by @Askaholic in #872
- Issue/#866 matchmaker timeout by @Askaholic in #867
Full Changelog: v1.11.1...v1.12.0