diff --git a/replayserver/bookkeeping/storage.py b/replayserver/bookkeeping/storage.py index 00cab34..902747d 100644 --- a/replayserver/bookkeeping/storage.py +++ b/replayserver/bookkeeping/storage.py @@ -64,13 +64,6 @@ async def _get_replay_info(self, game_id, header): result['uid'] = game_id result['complete'] = True result['state'] = 'PLAYING' - try: - result['sim_mods'] = { - mod['uid']: mod['version'] - for mod in header.get('mods', {}).values() - } - except KeyError: # TODO - validate elsewhere? - raise BookkeepingError("Replay header has invalid sim_mods") game_stats = await self._database.get_game_stats(game_id) teams = await self._database.get_teams_in_game(game_id) diff --git a/replayserver/struct/header.py b/replayserver/struct/header.py index 48869de..ee509c3 100644 --- a/replayserver/struct/header.py +++ b/replayserver/struct/header.py @@ -84,8 +84,10 @@ def read_header(gen): result["map_name"] = map_name yield from read_exactly(gen, 4) # skip - yield from read_value(gen, "I", 4) # Mod (data?) size - result["mods"] = yield from read_lua_value(gen) + # We don't need to parse mods + ssize = yield from read_value(gen, "I", 4) # Mod (data?) size + yield from read_exactly(gen, ssize) + # result["mods"] = yield from read_lua_value(gen) # We don't need to parse scenario info ssize = yield from read_value(gen, "I", 4) # Scenario (data?) size diff --git a/tests/unit_tests/struct/test_header.py b/tests/unit_tests/struct/test_header.py index 56170c4..24d5379 100644 --- a/tests/unit_tests/struct/test_header.py +++ b/tests/unit_tests/struct/test_header.py @@ -181,7 +181,6 @@ def test_lua_dict_prevent_huge_recursion(): }, 'cheats_enabled': 0, 'map_name': '/maps/SCMP_016/SCMP_016.scmap', - 'mods': {}, 'random_seed': 65637294, 'remaining_timeouts': { 'MazorNoob': 3,