Skip to content

Commit 764e6e7

Browse files
committed
Fix MultiTracker breaking after Hint is used
1 parent 4292cdd commit 764e6e7

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

Utils.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ class RestrictedUnpickler(pickle.Unpickler):
390390
def find_class(self, module, name):
391391
if module == "builtins" and name in safe_builtins:
392392
return getattr(builtins, name)
393-
if module == "NetUtils" and name in {"NetworkItem", "ClientStatus"}:
393+
if module == "NetUtils" and name in {"NetworkItem", "ClientStatus", "Hint"}:
394394
import NetUtils
395395
return getattr(NetUtils, name)
396396
# Forbid everything else.

worlds/factorio/Shapes.py

+2
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ def get_shapes(world: MultiWorld, player: int) -> Dict[str, List[str]]:
6060
previous_slice = []
6161
while len(tech_names) > slice_size:
6262
slice = tech_names[:slice_size]
63+
world.random.shuffle(slice)
6364
tech_names = tech_names[slice_size:]
6465
for i, tech_name in enumerate(previous_slice):
6566
prerequisites.setdefault(slice[i], set()).add(tech_name)
@@ -84,6 +85,7 @@ def get_shapes(world: MultiWorld, player: int) -> Dict[str, List[str]]:
8485
previous_slice = []
8586
while slice_size:
8687
slice = tech_names[:slice_size]
88+
world.random.shuffle(slice)
8789
tech_names = tech_names[slice_size:]
8890
if previous_slice:
8991
for i, tech_name in enumerate(slice):

0 commit comments

Comments
 (0)