Core: change how required versions work, deprecate IgnoreGame (#426)

`AutoWorld.World`s can set required_server_version and required_client_version properties. Drop `get_required_client_version()`.
`MultiServer` will set an absolute minimum client version based on its capability (protocol level).
`IgnoreVersion` tag is replaced by using `Tracker` or `TextOnly` with empty or null `game`.
Ignoring game will also ignore game's required_client_version (and fall back to server capability).
This commit is contained in:
black-sliver
2022-04-08 11:16:36 +02:00
committed by GitHub
parent 0acca6dd64
commit 42fecc7491
15 changed files with 55 additions and 55 deletions

View File

@@ -147,6 +147,7 @@ class SoEWorld(World):
remote_items = False
data_version = 2
web = SoEWebWorld()
required_client_version = (0, 2, 6)
item_name_to_id, item_id_to_raw = _get_item_mapping()
location_name_to_id, location_id_to_raw = _get_location_mapping()
@@ -321,10 +322,6 @@ class SoEWorld(World):
payload = multidata["connect_names"][self.world.player_name[self.player]]
multidata["connect_names"][self.connect_name] = payload
def get_required_client_version(self):
return max((0, 2, 6), super(SoEWorld, self).get_required_client_version())
class SoEItem(Item):
game: str = "Secret of Evermore"