diff --git a/core/src/mindustry/io/JsonIO.java b/core/src/mindustry/io/JsonIO.java index 8263dae6c5..b89f013b0c 100644 --- a/core/src/mindustry/io/JsonIO.java +++ b/core/src/mindustry/io/JsonIO.java @@ -308,7 +308,10 @@ public class JsonIO{ int i = 0; for(var value = data.child; value != null; value = value.next, i++){ for(var parent = value.get("parents").child; parent != null; parent = parent.next){ - exec.all.get(i).parents.add(exec.all.get(parent.asInt())); + int val = parent.asInt(); + if(val >= 0 && val < exec.all.size){ + exec.all.get(i).parents.add(exec.all.get(val)); + } } } diff --git a/core/src/mindustry/maps/Map.java b/core/src/mindustry/maps/Map.java index 0abe2aaffa..8bbaee5748 100644 --- a/core/src/mindustry/maps/Map.java +++ b/core/src/mindustry/maps/Map.java @@ -105,7 +105,7 @@ public class Map implements Comparable, Publishable{ return result; }catch(Exception e){ //error reading rules. ignore? - e.printStackTrace(); + Log.err(e); return new Rules(); } }