]> git.deb.at Git - rhonda/impostor.git/commit
Support new http matchmaking (#685)
authorNikoCat233 <nikocat233@outlook.com>
Thu, 13 Aug 2026 20:03:04 +0000 (04:03 +0800)
committerGitHub <noreply@github.com>
Thu, 13 Aug 2026 20:03:04 +0000 (22:03 +0200)
commit1cd298608a82d9d06423a7b4ff496e82cbb6f427
tree07d0e20a4608a73d846fe6e709fac566d134a6ff
parentf0689ac2e2a3ca7f06bb6bf2224a84984b25bb43
Support new http matchmaking (#685)

* Add GameFilters interface

* Add Newtonsoft.Json

Used by InnerSloth

* Port 2025.3.25 Data

* Generate OptionNames

* Fix missing CategorizedOptionNames

* Remove Newtonsoft.Json

* Add missing GameFilterList

* Basic support for new filters

* Add FiltersController

Server need to tell clients its filters

* Add Tag filter in filtergames

* Add GameTags in legacy game options

* Correctly deserialize Filters

* Minor text fixes

---------

Co-authored-by: miniduikboot <mini@duikbo.at>
27 files changed:
src/Impostor.Api.Innersloth.Generator/SourceGenerator.cs
src/Impostor.Api/Innersloth/Data/enums/BoolOptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/ByteOptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/CategorizedOptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/FloatArrayOptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/FloatOptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/Int32ArrayOptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/Int32OptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/enums/StringNames.json
src/Impostor.Api/Innersloth/Data/enums/UInt32OptionNames.json [new file with mode: 0644]
src/Impostor.Api/Innersloth/Data/info.json
src/Impostor.Api/Innersloth/GameFilters/BoolGameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/CategorizedGameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/ChatModeGameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/GameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/GameFilterSet.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/GameFiltersList.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/ISubFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/IntGameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/LanguageFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/MapGameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameFilters/PlatformGameFilter.cs [new file with mode: 0644]
src/Impostor.Api/Innersloth/GameOptions/IGameOptions.cs
src/Impostor.Api/Innersloth/GameOptions/LegacyGameOptionsData.cs
src/Impostor.Server/Http/FiltersController.cs [new file with mode: 0644]
src/Impostor.Server/Http/GamesController.cs
src/Impostor.Server/Http/ListingManager.cs