From 35e2b2d20d0b7824ab641b9de280bc50c55c5ec0 Mon Sep 17 00:00:00 2001 From: Berserker66 Date: Wed, 22 Jul 2020 12:02:09 +0200 Subject: [PATCH] set_save adjustments for older DB savegames --- MultiServer.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/MultiServer.py b/MultiServer.py index a35450ff..81b1ab85 100644 --- a/MultiServer.py +++ b/MultiServer.py @@ -212,11 +212,15 @@ class Context(Node): def set_save(self, savedata: dict): rom_names = savedata["rom_names"] # convert from TrackerList to List in case of ponyorm - - if {rom: other for rom, other in rom_names} != self.rom_names: - adjusted = {rom: (team, slot) for (rom, (team, slot)) in rom_names} # old format, ponyorm friendly + try: + adjusted = {rom: other for rom, other in rom_names} + except TypeError: + adjusted = {tuple(rom): (team, slot) for (rom, (team, slot)) in rom_names} # old format, ponyorm friendly if self.rom_names != adjusted: logging.warning('Save file mismatch, will start a new game') + else: + if adjusted != self.rom_names: + logging.warning('Save file mismatch, will start a new game') return received_items = {tuple(k): [ReceivedItem(*i) for i in v] for k, v in savedata["received_items"]}