From 29e58342f96afff07b683a1aac4290321345c232 Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Tue, 28 Jul 2026 22:12:02 +0200 Subject: [PATCH 01/12] map: draw the world's caves as a map layer Nothing in a save (or docs.json) records a cave, so the source is the cooked world-partition export: the game's own cave atmosphere volumes (the fog/lighting regions it swaps you into underground -- 108 of them, some with authored names), the BP_CaveFloor tunnel splines, the cave-only foliage clusters and the placed cave rock kit. extract_caves.py unions all four, closes the gaps between one cave's separately-authored chambers, and traces the outline of each connected component into the committed game_data/sav_data/caves.json (84 caves, 61 KB). The core embeds that table and emits it as a new static payload step, and the frontend draws every ring in one line bucket under a "Caves" sidebar row (default hidden like the other world layers), with the cave's name, area and altitude range in the tooltip. Co-Authored-By: Claude Opus 5 (1M context) --- CONTRIBUTING.md | 1 + README.md | 3 + game_data/extract_all.py | 4 +- game_data/extractors/extract_caves.py | 695 +++ game_data/sav_data/caves.json | 4228 +++++++++++++++++ map/static/map/filters.js | 62 + rust_parser/core/src/gamedata/mod.rs | 43 +- .../core/src/mapdata/collectors/mod.rs | 11 +- .../core/src/mapdata/collectors/simple.rs | 81 + rust_parser/core/src/mapdata/mod.rs | 6 +- rust_parser/wasm/src/lib.rs | 6 +- 11 files changed, 5127 insertions(+), 13 deletions(-) create mode 100644 game_data/extractors/extract_caves.py create mode 100644 game_data/sav_data/caves.json diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 80347a6..0c2d8c3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -153,6 +153,7 @@ the first which reads `game_data/docs.json`): | `extract_game_phases.py` | `gamePhases.json` (Space Elevator phase costs; optional, has a built-in fallback table) | | `extract_spawners.py` | `creatureSpawners.json` (every creature spawner with position + creature class, e.g. all Lizard Doggo spawns) and `creatures.json` (official display name + icon per creature class, from the StringTables CSVs) | | `extract_collectables.py` | the **committed** world tables in `game_data/sav_data/`: power slugs, somersloops, mercer spheres, crash sites (incl. their unlock cost/power requirements, derived from `mUnlockCost` + docs.json labels), free dropped items, resource purity — fully regenerated from the world cells (replacing the old GreyHak-derived tables, validated 1:1 against them; run after `extract_docs_json.py`). Pickup item classes are cooked into the actors but FModel can't decode that struct — they merge from the previous table, and `--items-from-save some.sav` reads them from a save if a game update adds pickups (the save must have physically visited them: saves only serialize actors whose world cell has streamed in near a player). Also writes `generated/consumables.json` (Paleberry/Beryl Nut/Bacon Agaric plants). Review its `sav_data/` git diff after a game update | +| `extract_caves.py` | the **committed** `game_data/sav_data/caves.json` — one outline polygon per cave system (~84), traced from the cooked level data: the game's own cave atmosphere volumes (the fog/lighting regions it swaps you into underground, ~108 of them, some carrying authored names like `Atmosphere_SwampCave`), the `BP_CaveFloor` tunnel splines, the cave-only foliage clusters and the placed cave rock kit, unioned and contoured. Nothing in a save records a cave, so this is the only source. Review its `sav_data/` git diff after a game update | | `extract_map_image.py` | `map_highres.png`, fused from the game's 4-corner sliced map render (`FactoryGame/Interface/UI/Assets/MapTest/SlicedMap`) | | `copy_icons.py` | the icon PNGs under `map/static/map/icons/`, copied last — it reads the generated JSONs above to know which few hundred of the dump's tens of thousands of files are needed | diff --git a/README.md b/README.md index 2a886da..2b44f1d 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,9 @@ up to **15 seconds at a time** — WebGL rendering instead of DOM markers - **The whole factory, mapped** — buildings by build-menu category, belts/pipes/railways/power lines as curves, resource nodes with purity, vehicles, trains, players, collectables and crash sites. +- **The world, too** — creature spawns, and every **cave** on the map + outlined (traced from the game's own level data — the map render doesn't + show them at all), with its name, area and depth. - **Find anything** — search across every inventory in the save ("where did I leave my hard drives?"), per-building tooltips with recipe, power, clock speed and belt/pipe **bottleneck detection**. diff --git a/game_data/extract_all.py b/game_data/extract_all.py index cfd0ec3..b880d6c 100644 --- a/game_data/extract_all.py +++ b/game_data/extract_all.py @@ -20,7 +20,8 @@ Most steps write to the gitignored game_data/generated/; extract_collectables.py instead rewrites the COMMITTED world tables under game_data/sav_data/ (slugs, somersloops, mercer spheres, crash sites, -dropped items, resource purity) -- review its git diff after a game update. +dropped items, resource purity), and extract_caves.py the committed +caves.json (cave outlines) -- review their git diffs after a game update. - .pak (loose files -- a normal package export SKIPS these). FModel: right-click FactoryGame/Content/Localization/StringTables -> "Export Folder's Packages Raw Data". Provides the string-table source CSVs @@ -69,6 +70,7 @@ ("extract_game_phases.py", True), ("extract_spawners.py", True), ("extract_collectables.py", True), + ("extract_caves.py", True), ("extract_map_image.py", True), ("copy_icons.py", True), ) diff --git a/game_data/extractors/extract_caves.py b/game_data/extractors/extract_caves.py new file mode 100644 index 0000000..9807efc --- /dev/null +++ b/game_data/extractors/extract_caves.py @@ -0,0 +1,695 @@ +"""Extract the map's cave systems -- outline polygons in world coordinates -- +into game_data/sav_data/caves.json. + +Caves are not actors: nothing in a save (or in docs.json) says "there is a +cave here". They are authored level geometry, so the only source of truth is +the cooked world-partition export under /FactoryGame/Map/GameLevel01/ +(the same dump extract_collectables.py and extract_spawners.py read). Four +independent signals in it mark cave interiors; this script unions all four and +traces the outline of the result: + + 1. FGAtmosphereVolume actors whose FGBiome subobject inherits + Biome_Atmosphere_Cave_Main / _Cave_Desert (108 of the map's 157 + atmosphere volumes). These are the game's own "the player is inside a + cave now" regions -- the fog/lighting swap you see when you walk in -- + and they are the backbone of the output: authored per cave, and ~25 of + them even carry a hand-written name (Atmosphere_SwampCave, + Atmosphere_CraterLakesCave2, ...). Their brush shape survives the cook as + the BrushComponent's BrushBodySetup.AggGeom convex hulls, in component + space; the component transform puts them in world space. + 2. BP_CaveFloor_C actors: the spline-built tunnels (CaveTunnel_01 / + CaveSplitter_01 / CaveExit_01 meshes swept along a spline). The spline + control points, transformed by the actor, are the tunnel centerline -- + drawn as a fixed-width corridor here. + 3. Cave-only foliage: FGFoliageInstancedSMC components whose mesh is + one of the World/Environment/Caves/Meshes "*Cave*" assets (cave grass, + lanterns, stalagmites, ivy...). Per-instance transforms are bulk data + FModel does not export, but each component's CachedBounds IS exported, + in world space -- a tight box around the instances it holds. Cave props + only grow inside caves, so ~3,400 of these boxes trace cave floors + precisely. SM_NonCave_* (stalactites hung under open-air cliffs) and the + folder's non-"Cave" props (TubeCoral, Landkelp -- they also grow + outdoors) are excluded on purpose. + 4. StaticMeshActors placing the cave rock kit itself (SM_Cave_Wall_01, + SM_CaveFloor_02, the baked SM_MERGED_BP_CaveFloor* tunnels, ...). Only + their origin is exported, so each contributes a disc, not a footprint. + +The union is rasterized on a GRID_CM grid, closed (dilate/erode) to bridge the +gaps between separately-authored chambers of one cave, split into connected +components, and each component's boundary is traced and simplified. So one +output entry = one connected cave system, which may cover several of the +game's volumes (the three Savanna cave volumes come out as one cave). + +Known limits, deliberate: + - An atmosphere volume is a fog region, not a collision mesh: it is drawn + generously around the cave it covers, so outlines are looser than the real + rock (typically by tens of meters). They are a "where is the cave" aid, + not a survey. + - Interior holes in a footprint are dropped; only outer rings are written. + - Nothing here is save-dependent -- the table is identical for every world. + + py game_data/extractors/extract_caves.py [path/to/extraction/.../Content] + +Re-run whenever the extraction dump is refreshed (new game patch), and review +the git diff: this file is committed (the app must work without game files). + +Shape (caves.json): + {"caves": [{"id", "name", "bbox", "zRange", "areaM2", "volumes", "rings"}]} + +- id: stable identifier -- the actor name of the cave's primary atmosphere + volume (the one with an authored name, else the first by position), or + "cave__" in hundreds of meters for a component built purely from + geometry with no volume in it. +- name: prettified authored name ("Atmosphere_NorthernForestCave6" -> + "Northern Forest Cave 6") when the game named the volume, else null. The + frontend numbers the nameless ones itself. +- bbox: [minX, minY, maxX, maxY] in world cm. +- zRange: [minZ, maxZ] in world cm over every source that fed the component + (atmosphere volumes and foliage boxes carry real Z; mesh discs do not). +- areaM2: footprint area (filled grid cells), square meters. +- volumes: actor names of the atmosphere volumes inside this cave, for + traceability back into the dump. Empty for geometry-only caves. +- rings: list of outer rings, each a flat [x0, y0, x1, y1, ...] loop in world + cm (integers, first point not repeated at the end). Usually one ring; more + when the closing step leaves a component in touching-but-separate pieces. +""" + +import json +import math +import os +import re +import sys + +REPO_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +DEFAULT_CONTENT_ROOT = r"C:\Users\plane.DESKTOP-SAH3OHV\Documents\SatisExtract\FactoryGame\Content" +LEVEL_SUBDIR = os.path.join("FactoryGame", "Map", "GameLevel01") +OUTPUT_PATH = os.path.join(REPO_ROOT, "game_data", "sav_data", "caves.json") + +# Only files mentioning one of these are parsed (the dump is ~1.5 GB of JSON). +NEEDLES = (b"Cave", b"Atmosphere") + +# FGBiome assets that mean "this atmosphere volume is a cave". +CAVE_BIOMES = ("Biome_Atmosphere_Cave_Main", "Biome_Atmosphere_Cave_Desert") +# Cave-only meshes: a "*Cave*" asset from the cave kit or the cave-floor kit. +# NonCave_* is the game's own marker for "same look, used outside a cave". +CAVE_MESH_RE = re.compile(r"/(?:Environment/Caves/Meshes|Rock/CaveFloor)/[^/\".]*Cave[^/\".]*", re.I) +NON_CAVE_RE = re.compile(r"NonCave", re.I) +# Only the real foliage components. HLODInstancedStaticMeshComponent places +# the SAME cave props as a far-distance proxy, but one HLOD component stands +# in for a whole streaming cell, so its CachedBounds is cell-sized (up to +# 1.1 km across, vs 70 m worst case for a real one) -- feeding those in +# smeared several caves into one 300,000 m2 blob. +FOLIAGE_TYPES = ("FGFoliageInstancedSMC",) +# Belt and braces for the above: a foliage cluster wider than this is not a +# cave floor, whatever its type says. +MAX_FOLIAGE_SPAN_CM = 12000.0 + +# Rasterization. 4 m cells resolve a tunnel; CLOSE_CELLS bridges the ~20 m +# gaps between the separately-authored chambers and tunnels of one cave +# without merging genuinely distinct caves (the closest pair on the map is +# ~150 m apart). MIN_CELLS drops specks (a lone cave rock on the surface). +GRID_CM = 400.0 +CLOSE_CELLS = 4 +MIN_CELLS = 25 +SIMPLIFY_CM = 600.0 +# A placed cave-kit mesh is tens of meters across but exports only its origin. +MESH_RADIUS_CM = 1500.0 +# BP_CaveFloor tunnels: half-width of the swept corridor. +TUNNEL_HALF_WIDTH_CM = 1000.0 + +# Authored volume names the game spells oddly; anything not listed is split on +# camel case ("NorthernForestCave6" -> "Northern Forest Cave 6"). +NAME_FIXES = { + "Atmosphere_TitanforesCave2": "Titan Forest Cave 2", + "Atmosphere_TitanforestCave": "Titan Forest Cave", + "Atmosphere_DDJungleRiverCave3": "Dune Desert Jungle River Cave 3", + "Atmosphere_Grassfields_Lower_01": "Grass Fields Lower Cave", + "Atmosphere_CaveTest": None, # dev volume, no player-facing name +} + + +# --------------------------------------------------------------------------- +# Dump walk +# --------------------------------------------------------------------------- + +def rotMatrix(pitch, yaw, roll): + """FRotator (degrees) -> rows of the UE rotation matrix (X fwd, Y right, Z up).""" + p, y, r = math.radians(pitch), math.radians(yaw), math.radians(roll) + cp, sp = math.cos(p), math.sin(p) + cy, sy = math.cos(y), math.sin(y) + cr, sr = math.cos(r), math.sin(r) + return ( + (cp * cy, cp * sy, sp), + (sr * sp * cy - cr * sy, sr * sp * sy + cr * cy, -sr * cp), + (-(cr * sp * cy + sr * sy), cy * sr - cr * sp * sy, cr * cp), + ) + + +def toWorld(loc, rot, scale, point): + """Component-space point -> world, through a component's transform.""" + m = rotMatrix(*rot) + x, y, z = point[0] * scale[0], point[1] * scale[1], point[2] * scale[2] + return (loc[0] + x * m[0][0] + y * m[1][0] + z * m[2][0], + loc[1] + x * m[0][1] + y * m[1][1] + z * m[2][1], + loc[2] + x * m[0][2] + y * m[1][2] + z * m[2][2]) + + +def exportIndex(reference): + """{"ObjectPath": ".../ABC.12"} -> 12 (the export's index in the file).""" + if not isinstance(reference, dict): + return None + match = re.search(r"\.(\d+)$", reference.get("ObjectPath") or "") + return int(match.group(1)) if match else None + + +def componentTransform(props): + loc = props.get("RelativeLocation") or {} + rot = props.get("RelativeRotation") or {} + scale = props.get("RelativeScale3D") or {} + return ((loc.get("X", 0.0), loc.get("Y", 0.0), loc.get("Z", 0.0)), + (rot.get("Pitch", 0.0), rot.get("Yaw", 0.0), rot.get("Roll", 0.0)), + (scale.get("X", 1.0), scale.get("Y", 1.0), scale.get("Z", 1.0))) + + +def quotedName(objectField): + """{"ObjectName": "FGBiome'Biome_Atmosphere_Cave_Main'"} -> the quoted part.""" + if not objectField: + return None + name = objectField.get("ObjectName", "") + return name.split("'")[1] if "'" in name else None + + +def collectSources(contentRoot, warnings): + """One walk over the level export. Returns (volumes, boxes, discs, tunnels). + + volumes [{"name", "hulls": [[(x,y,z)...]], "z": (min,max)}] cave atmosphere volumes + boxes [(minX, minY, maxX, maxY, minZ, maxZ)] cave-foliage CachedBounds + discs [(x, y, z)] placed cave-kit meshes + tunnels [[(x, y, z), ...]] BP_CaveFloor centerlines + """ + levelRoot = os.path.join(contentRoot, LEVEL_SUBDIR) + if not os.path.isdir(levelRoot): + raise SystemExit(f"Level export dir not found: {levelRoot}") + volumes, boxes, discs, tunnels = {}, [], [], [] + for dirPath, _, fileNames in os.walk(levelRoot): + for fileName in sorted(fileNames): + if not fileName.endswith(".json"): + continue + with open(os.path.join(dirPath, fileName), "rb") as f: + raw = f.read() + if not any(needle in raw for needle in NEEDLES): + continue + try: + exports = json.loads(raw) + except json.JSONDecodeError: + continue + if not isinstance(exports, list): + continue + + def resolve(reference): + index = exportIndex(reference) + if index is None or not 0 <= index < len(exports): + return None + return exports[index] + + for obj in exports: + objType = obj.get("Type", "") + props = obj.get("Properties") or {} + + if objType == "FGAtmosphereVolume": + biome = resolve(props.get("mBiome")) + base = quotedName((biome or {}).get("Properties", {}).get("BaseBiome")) + if base not in CAVE_BIOMES: + continue + brush = resolve(props.get("BrushComponent") or props.get("RootComponent")) + if not brush: + continue + loc, rot, scale = componentTransform(brush.get("Properties") or {}) + body = resolve((brush.get("Properties") or {}).get("BrushBodySetup")) + hulls = [] + aggGeom = ((body or {}).get("Properties") or {}).get("AggGeom") or {} + for elem in aggGeom.get("ConvexElems") or []: + vertices = [toWorld(loc, rot, scale, (v["X"], v["Y"], v["Z"])) + for v in elem.get("VertexData") or []] + if vertices: + hulls.append(vertices) + if not hulls: + warnings.append(f"{obj.get('Name')}: cave atmosphere volume with no " + f"brush geometry in the dump -- skipped") + continue + # An actor can appear in both Persistent_Level.json and its + # own cell file; keyed by name, the copies collapse. + volumes[obj.get("Name")] = hulls + + elif objType == "BP_CaveFloor_C": + root = resolve(props.get("RootComponent")) + spline = resolve(props.get("Spline")) + if not root or not spline: + continue + loc, rot, scale = componentTransform(root.get("Properties") or {}) + curve = ((spline.get("Properties") or {}).get("SplineCurves") or {}) + points = (curve.get("Position") or {}).get("Points") or [] + line = [toWorld(loc, rot, scale, + (p["OutVal"]["X"], p["OutVal"]["Y"], p["OutVal"]["Z"])) + for p in points if "OutVal" in p] + if len(line) >= 2: + tunnels.append(line) + + elif objType in FOLIAGE_TYPES: + mesh = (props.get("StaticMesh") or {}).get("ObjectPath") or "" + if not CAVE_MESH_RE.search(mesh) or NON_CAVE_RE.search(mesh): + continue + cached = (props.get("CachedBounds") or {}).get("Value") or {} + origin, extent = cached.get("Origin"), cached.get("BoxExtent") + if not origin or not extent: + continue + if max(extent["X"], extent["Y"]) * 2 > MAX_FOLIAGE_SPAN_CM: + continue + boxes.append((origin["X"] - extent["X"], origin["Y"] - extent["Y"], + origin["X"] + extent["X"], origin["Y"] + extent["Y"], + origin["Z"] - extent["Z"], origin["Z"] + extent["Z"])) + + elif objType == "StaticMeshActor": + comp = resolve(props.get("StaticMeshComponent") or props.get("RootComponent")) + if not comp: + continue + compProps = comp.get("Properties") or {} + mesh = (compProps.get("StaticMesh") or {}).get("ObjectPath") or "" + name = (compProps.get("StaticMesh") or {}).get("ObjectName") or "" + isCaveKit = CAVE_MESH_RE.search(mesh) or "MERGED_BP_CaveFloor" in name + if not isCaveKit or NON_CAVE_RE.search(mesh): + continue + loc, _, _ = componentTransform(compProps) + discs.append(loc) + + return volumes, boxes, discs, tunnels + + +# --------------------------------------------------------------------------- +# Raster: union of every source, closed, split into connected components +# --------------------------------------------------------------------------- + +class Grid: + """Boolean occupancy grid over the world, GRID_CM per cell.""" + + def __init__(self, minX, minY, maxX, maxY): + pad = CLOSE_CELLS + 2 + self.originX = minX - pad * GRID_CM + self.originY = minY - pad * GRID_CM + self.width = int((maxX - minX) / GRID_CM) + 2 * pad + 2 + self.height = int((maxY - minY) / GRID_CM) + 2 * pad + 2 + self.cells = bytearray(self.width * self.height) + + def cellOf(self, x, y): + return (int((x - self.originX) / GRID_CM), int((y - self.originY) / GRID_CM)) + + def worldOf(self, cx, cy): + return (self.originX + cx * GRID_CM, self.originY + cy * GRID_CM) + + def set(self, cx, cy): + if 0 <= cx < self.width and 0 <= cy < self.height: + self.cells[cy * self.width + cx] = 1 + + def fillBox(self, minX, minY, maxX, maxY): + cx0, cy0 = self.cellOf(minX, minY) + cx1, cy1 = self.cellOf(maxX, maxY) + for cy in range(max(cy0, 0), min(cy1, self.height - 1) + 1): + row = cy * self.width + for cx in range(max(cx0, 0), min(cx1, self.width - 1) + 1): + self.cells[row + cx] = 1 + + def fillDisc(self, x, y, radius): + cx0, cy0 = self.cellOf(x - radius, y - radius) + cx1, cy1 = self.cellOf(x + radius, y + radius) + r2 = radius * radius + for cy in range(max(cy0, 0), min(cy1, self.height - 1) + 1): + wy = self.originY + (cy + 0.5) * GRID_CM + for cx in range(max(cx0, 0), min(cx1, self.width - 1) + 1): + wx = self.originX + (cx + 0.5) * GRID_CM + if (wx - x) ** 2 + (wy - y) ** 2 <= r2: + self.cells[cy * self.width + cx] = 1 + + def fillPolygon(self, points): + """Scanline fill of a simple polygon given as world-space (x, y).""" + if len(points) < 3: + return + cellPoints = [((px - self.originX) / GRID_CM, (py - self.originY) / GRID_CM) + for px, py in points] + yMin = max(int(math.floor(min(p[1] for p in cellPoints))), 0) + yMax = min(int(math.ceil(max(p[1] for p in cellPoints))), self.height - 1) + for cy in range(yMin, yMax + 1): + scanY = cy + 0.5 + crossings = [] + for i in range(len(cellPoints)): + ax, ay = cellPoints[i] + bx, by = cellPoints[(i + 1) % len(cellPoints)] + if (ay <= scanY < by) or (by <= scanY < ay): + crossings.append(ax + (scanY - ay) * (bx - ax) / (by - ay)) + crossings.sort() + row = cy * self.width + for i in range(0, len(crossings) - 1, 2): + cx0 = max(int(math.floor(crossings[i])), 0) + cx1 = min(int(math.ceil(crossings[i + 1])), self.width - 1) + for cx in range(cx0, cx1 + 1): + self.cells[row + cx] = 1 + + def fillCorridor(self, line, halfWidth): + """Discs along a polyline, stepped fine enough to leave no gaps.""" + step = GRID_CM + for i in range(len(line) - 1): + ax, ay = line[i][0], line[i][1] + bx, by = line[i + 1][0], line[i + 1][1] + length = math.hypot(bx - ax, by - ay) + steps = max(int(length / step), 1) + for s in range(steps + 1): + t = s / steps + self.fillDisc(ax + (bx - ax) * t, ay + (by - ay) * t, halfWidth) + + +def convexHull2d(points): + """Monotone-chain hull of world (x, y, z) points -> [(x, y)] CCW.""" + pts = sorted(set((round(p[0], 2), round(p[1], 2)) for p in points)) + if len(pts) < 3: + return pts + + def cross(o, a, b): + return (a[0] - o[0]) * (b[1] - o[1]) - (a[1] - o[1]) * (b[0] - o[0]) + + lower = [] + for p in pts: + while len(lower) >= 2 and cross(lower[-2], lower[-1], p) <= 0: + lower.pop() + lower.append(p) + upper = [] + for p in reversed(pts): + while len(upper) >= 2 and cross(upper[-2], upper[-1], p) <= 0: + upper.pop() + upper.append(p) + return lower[:-1] + upper[:-1] + + +def morphologicalClose(grid, radius): + """Dilate then erode by a Chebyshev radius: bridges gaps, keeps size.""" + def spread(source, width, height, value): + # Separable: horizontal pass then vertical pass. + temp = bytearray(len(source)) + for y in range(height): + row = y * width + run = -1 + for x in range(width): + if source[row + x] == value: + run = x + if run >= 0 and x - run <= radius: + temp[row + x] = value + run = -1 + for x in range(width - 1, -1, -1): + if source[row + x] == value: + run = x + if run >= 0 and run - x <= radius: + temp[row + x] = value + out = bytearray(len(source)) + for x in range(width): + run = -1 + for y in range(height): + if temp[y * width + x] == value: + run = y + if run >= 0 and y - run <= radius: + out[y * width + x] = value + run = -1 + for y in range(height - 1, -1, -1): + if temp[y * width + x] == value: + run = y + if run >= 0 and run - y <= radius: + out[y * width + x] = value + return out + + dilated = spread(grid.cells, grid.width, grid.height, 1) + # Erode = dilate the complement, then invert. + inverted = bytearray(1 - c for c in dilated) + grown = spread(inverted, grid.width, grid.height, 1) + grid.cells = bytearray(1 - c for c in grown) + + +def connectedComponents(grid): + """4-connected components of the filled cells -> [[(cx, cy), ...]].""" + seen = bytearray(len(grid.cells)) + components = [] + for start in range(len(grid.cells)): + if not grid.cells[start] or seen[start]: + continue + stack = [start] + seen[start] = 1 + cells = [] + while stack: + index = stack.pop() + cx, cy = index % grid.width, index // grid.width + cells.append((cx, cy)) + for nx, ny in ((cx - 1, cy), (cx + 1, cy), (cx, cy - 1), (cx, cy + 1)): + if not (0 <= nx < grid.width and 0 <= ny < grid.height): + continue + n = ny * grid.width + nx + if grid.cells[n] and not seen[n]: + seen[n] = 1 + stack.append(n) + components.append(cells) + return components + + +def traceRings(cells): + """Outer boundary rings of a set of cells, in cell-corner coordinates. + + Every filled cell contributes the sides that face an empty cell, as + directed edges wound clockwise around the cell; chaining them end to end + yields closed loops with the interior on the right. Loops enclosing + negative area are interior holes and are dropped (see module docstring). + """ + filled = set(cells) + edges = {} # start corner -> [end corners] + for cx, cy in filled: + if (cx, cy - 1) not in filled: + edges.setdefault((cx, cy), []).append((cx + 1, cy)) + if (cx + 1, cy) not in filled: + edges.setdefault((cx + 1, cy), []).append((cx + 1, cy + 1)) + if (cx, cy + 1) not in filled: + edges.setdefault((cx + 1, cy + 1), []).append((cx, cy + 1)) + if (cx - 1, cy) not in filled: + edges.setdefault((cx, cy + 1), []).append((cx, cy)) + + rings = [] + while edges: + start = next(iter(edges)) + ring = [start] + current = start + previous = None + while True: + options = edges.get(current) + if not options: + break + if len(options) == 1 or previous is None: + nextPoint = options.pop() + else: + # Diagonal touch: two ways out. Take the sharpest right turn, + # which keeps the loop hugging this side of the pinch. + inX, inY = current[0] - previous[0], current[1] - previous[1] + + def turn(option): + outX, outY = option[0] - current[0], option[1] - current[1] + return math.atan2(inX * outY - inY * outX, inX * outX + inY * outY) + + nextPoint = min(options, key=turn) + options.remove(nextPoint) + if not edges[current]: + del edges[current] + previous, current = current, nextPoint + if current == start: + break + ring.append(current) + if len(ring) >= 4: + area = 0.0 + for i in range(len(ring)): + ax, ay = ring[i] + bx, by = ring[(i + 1) % len(ring)] + area += ax * by - bx * ay + # Clockwise in cell space (y down) = positive shoelace = outer ring. + if area > 0: + rings.append(ring) + return rings + + +def simplifyRing(points, epsilon): + """Ramer-Douglas-Peucker on a closed ring (kept closed).""" + if len(points) < 4: + return points + + def rdp(chunk): + if len(chunk) < 3: + return chunk + ax, ay = chunk[0] + bx, by = chunk[-1] + dx, dy = bx - ax, by - ay + norm = math.hypot(dx, dy) + worst, worstIndex = -1.0, 0 + for i in range(1, len(chunk) - 1): + px, py = chunk[i] + if norm == 0: + distance = math.hypot(px - ax, py - ay) + else: + distance = abs(dy * px - dx * py + bx * ay - by * ax) / norm + if distance > worst: + worst, worstIndex = distance, i + if worst <= epsilon: + return [chunk[0], chunk[-1]] + return rdp(chunk[:worstIndex + 1])[:-1] + rdp(chunk[worstIndex:]) + + # Split the loop at its two extreme points so RDP sees open chains. + startIndex = min(range(len(points)), key=lambda i: points[i]) + rotated = points[startIndex:] + points[:startIndex] + half = len(rotated) // 2 + first = rdp(rotated[:half + 1]) + second = rdp(rotated[half:] + [rotated[0]]) + return first[:-1] + second[:-1] + + +# --------------------------------------------------------------------------- +# Naming and assembly +# --------------------------------------------------------------------------- + +def prettifyName(actorName): + """Authored volume name -> player-facing name, or None if it has none.""" + if actorName in NAME_FIXES: + return NAME_FIXES[actorName] + if not actorName.startswith("Atmosphere_"): + return None + stem = actorName[len("Atmosphere_"):] + if not stem or stem.startswith("FGAtmosphere"): + return None + stem = stem.replace("_", " ") + # camelCase / digit runs -> words: "NorthernForestCave6" -> the obvious. + words = re.findall(r"[A-Z]+(?![a-z])|[A-Z][a-z]+|[a-z]+|\d+[a-z]?", stem) + return " ".join(words) if words else None + + +def caveId(volumeNames, centerX, centerY): + named = [n for n in volumeNames if prettifyName(n)] + if named: + return sorted(named)[0] + if volumeNames: + return sorted(volumeNames)[0] + return f"cave_{round(centerX / 100):+07d}_{round(centerY / 100):+07d}" + + +def buildCaves(volumes, boxes, discs, tunnels, warnings): + xs = [p[0] for hulls in volumes.values() for h in hulls for p in h] + ys = [p[1] for hulls in volumes.values() for h in hulls for p in h] + xs += [b[0] for b in boxes] + [b[2] for b in boxes] + [d[0] for d in discs] + ys += [b[1] for b in boxes] + [b[3] for b in boxes] + [d[1] for d in discs] + xs += [p[0] for line in tunnels for p in line] + ys += [p[1] for line in tunnels for p in line] + if not xs: + raise SystemExit("No cave geometry found in the dump -- wrong Content path?") + grid = Grid(min(xs) - MESH_RADIUS_CM, min(ys) - MESH_RADIUS_CM, + max(xs) + MESH_RADIUS_CM, max(ys) + MESH_RADIUS_CM) + + # Sources, in the order the docstring lists them. + volumeFootprints = {} # name -> [[(x, y)]] + volumeZ = {} + for name, hulls in volumes.items(): + footprints = [] + for hull in hulls: + footprint = convexHull2d(hull) + if len(footprint) >= 3: + footprints.append(footprint) + grid.fillPolygon(footprint) + volumeFootprints[name] = footprints + zs = [p[2] for hull in hulls for p in hull] + volumeZ[name] = (min(zs), max(zs)) + for line in tunnels: + grid.fillCorridor(line, TUNNEL_HALF_WIDTH_CM) + for minX, minY, maxX, maxY, _minZ, _maxZ in boxes: + grid.fillBox(minX, minY, maxX, maxY) + for x, y, _z in discs: + grid.fillDisc(x, y, MESH_RADIUS_CM) + + morphologicalClose(grid, CLOSE_CELLS) + + caves = [] + for cells in connectedComponents(grid): + if len(cells) < MIN_CELLS: + continue + cellSet = set(cells) + worldXs = [grid.worldOf(cx, cy)[0] for cx, cy in cells] + worldYs = [grid.worldOf(cx, cy)[1] for cx, cy in cells] + bbox = [min(worldXs), min(worldYs), max(worldXs) + GRID_CM, max(worldYs) + GRID_CM] + centerX, centerY = (bbox[0] + bbox[2]) / 2, (bbox[1] + bbox[3]) / 2 + + # Which atmosphere volumes landed in this component? + memberVolumes = [] + for name, footprints in volumeFootprints.items(): + for footprint in footprints: + cx, cy = grid.cellOf(sum(p[0] for p in footprint) / len(footprint), + sum(p[1] for p in footprint) / len(footprint)) + if (cx, cy) in cellSet: + memberVolumes.append(name) + break + + zValues = [z for name in memberVolumes for z in volumeZ[name]] + for minX, minY, maxX, maxY, minZ, maxZ in boxes: + bx, by = (minX + maxX) / 2, (minY + maxY) / 2 + if grid.cellOf(bx, by) in cellSet: + zValues.extend((minZ, maxZ)) + + rings = [] + for ring in traceRings(cells): + simplified = simplifyRing(ring, SIMPLIFY_CM / GRID_CM) + if len(simplified) < 3: + continue + flat = [] + for cx, cy in simplified: + wx, wy = grid.worldOf(cx, cy) + flat.extend((round(wx), round(wy))) + rings.append(flat) + if not rings: + warnings.append(f"component at ({centerX:.0f}, {centerY:.0f}) traced to nothing") + continue + + names = sorted(set(filter(None, (prettifyName(n) for n in memberVolumes)))) + caves.append({ + "id": caveId(memberVolumes, centerX, centerY), + "name": names[0] if names else None, + "bbox": [round(v) for v in bbox], + "zRange": [round(min(zValues)), round(max(zValues))] if zValues else None, + "areaM2": round(len(cells) * (GRID_CM / 100.0) ** 2), + "volumes": sorted(memberVolumes), + "rings": rings, + }) + + # Stable order: north to south, then west to east (bbox top-left). + caves.sort(key=lambda c: (-c["bbox"][3], c["bbox"][0])) + return caves + + +def main(): + argv = sys.argv[1:] + contentRoot = argv[0] if argv else DEFAULT_CONTENT_ROOT + warnings = [] + volumes, boxes, discs, tunnels = collectSources(contentRoot, warnings) + print(f"Sources: {len(volumes)} cave atmosphere volumes, {len(boxes)} cave-foliage bounds, " + f"{len(discs)} cave-kit meshes, {len(tunnels)} tunnel splines.") + caves = buildCaves(volumes, boxes, discs, tunnels, warnings) + placed = sum(len(c["volumes"]) for c in caves) + if placed != len(volumes): + warnings.append(f"{len(volumes) - placed} atmosphere volume(s) did not land in any " + f"traced cave") + os.makedirs(os.path.dirname(OUTPUT_PATH), exist_ok=True) + with open(OUTPUT_PATH, "w", encoding="utf-8") as f: + json.dump({"caves": caves}, f, ensure_ascii=False, indent=1) + named = sum(1 for c in caves if c["name"]) + points = sum(len(r) // 2 for c in caves for r in c["rings"]) + print(f"Wrote {OUTPUT_PATH}: {len(caves)} caves ({named} named), {points} outline points, " + f"{os.path.getsize(OUTPUT_PATH) / 1024:.0f} KB.") + for warning in warnings: + print(f"WARNING: {warning}") + + +if __name__ == "__main__": + main() diff --git a/game_data/sav_data/caves.json b/game_data/sav_data/caves.json new file mode 100644 index 0000000..15ea8fa --- /dev/null +++ b/game_data/sav_data/caves.json @@ -0,0 +1,4228 @@ +{ + "caves": [ + { + "id": "Atmosphere_GrassFieldsCave3", + "name": "Grass Fields Cave 3", + "bbox": [ + -50852, + 259623, + 22748, + 301223 + ], + "zRange": [ + -15881, + -854 + ], + "areaM2": 117424, + "volumes": [ + "Atmosphere_GrassFieldsCave3", + "Atmosphere_GrassfieldsCave", + "Atmosphere_Grassfields_Lower_01" + ], + "rings": [ + [ + -50852, + 300423, + -48452, + 292023, + -32052, + 290823, + -24852, + 288423, + -24852, + 284823, + -31652, + 272023, + -29252, + 269623, + -25652, + 259623, + -5652, + 273223, + -12852, + 288023, + -14852, + 290023, + -14852, + 294023, + -9652, + 294023, + -4452, + 289623, + 7548, + 284423, + 6748, + 275623, + 10348, + 274823, + 10748, + 273623, + 15948, + 274023, + 16748, + 280023, + 22748, + 288023, + 6748, + 299223, + 3148, + 299223, + 348, + 297223, + -4452, + 297223, + -14452, + 299223, + -15252, + 295623, + -18852, + 295623, + -18852, + 298423, + -40452, + 299223, + -48052, + 301223, + -50852, + 301223 + ] + ] + }, + { + "id": "Atmosphere_GrassFieldsCave2", + "name": "Grass Fields Cave 2", + "bbox": [ + -94452, + 263623, + -88052, + 274823 + ], + "zRange": [ + -7797, + -4376 + ], + "areaM2": 5232, + "volumes": [ + "Atmosphere_GrassFieldsCave2" + ], + "rings": [ + [ + -94452, + 271623, + -92852, + 263623, + -88052, + 264023, + -88452, + 266423, + -89652, + 274823, + -94452, + 274023 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_D8CB8A319C9601F801_1822995225", + "name": null, + "bbox": [ + 119148, + 230423, + 152748, + 263623 + ], + "zRange": [ + -17158, + -1677 + ], + "areaM2": 59520, + "volumes": [ + "FGAtmosphereVolume_UAID_D8CB8A319C9601F801_1822995225", + "FGAtmosphereVolume_UAID_D8CB8A319C9603F801_1463160578", + "FGAtmosphereVolume_UAID_D8CB8A319C96BEF701_1643894431", + "FGAtmosphereVolume_UAID_D8CB8A319C96C0F701_2027554783" + ], + "rings": [ + [ + 119148, + 251223, + 120348, + 249223, + 120748, + 243623, + 121148, + 242823, + 123148, + 242823, + 123148, + 236423, + 124748, + 234823, + 124748, + 231223, + 125148, + 230423, + 127148, + 230423, + 134348, + 231623, + 143148, + 236823, + 143148, + 246823, + 141148, + 247223, + 141148, + 251223, + 143148, + 251223, + 143548, + 252823, + 152748, + 257623, + 147148, + 263623, + 145548, + 263623, + 137948, + 262423, + 137148, + 261223, + 131948, + 261223, + 131948, + 252823, + 127548, + 252823, + 125148, + 255223, + 122748, + 255223, + 121948, + 253223, + 119148, + 252023 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D6791702_1186147092", + "name": null, + "bbox": [ + 33148, + 234823, + 39948, + 242823 + ], + "zRange": [ + -5983, + -4082 + ], + "areaM2": 3568, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D6791702_1186147092" + ], + "rings": [ + [ + 33148, + 236023, + 36748, + 234823, + 39948, + 239623, + 39148, + 240823, + 34348, + 242823 + ] + ] + }, + { + "id": "cave_+000953_+002328", + "name": null, + "bbox": [ + 93548, + 230023, + 97148, + 235623 + ], + "zRange": [ + -4542, + -2459 + ], + "areaM2": 1568, + "volumes": [], + "rings": [ + [ + 93548, + 230823, + 97148, + 230023, + 96348, + 234023, + 96348, + 235623, + 93548, + 235623 + ] + ] + }, + { + "id": "Atmosphere_GrassFieldsCave4", + "name": "Grass Fields Cave 4", + "bbox": [ + -54852, + 212823, + -38852, + 226823 + ], + "zRange": [ + -6002, + -1617 + ], + "areaM2": 14672, + "volumes": [ + "Atmosphere_GrassFieldsCave4" + ], + "rings": [ + [ + -54852, + 222423, + -52452, + 215223, + -47252, + 214023, + -46452, + 212823, + -44452, + 213623, + -44452, + 215623, + -38852, + 216023, + -39252, + 216823, + -41252, + 221223, + -41652, + 226823, + -44852, + 226823, + -53252, + 224423, + -54852, + 223623 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067FDF1602_2011504984", + "name": null, + "bbox": [ + 11148, + 194023, + 15948, + 199223 + ], + "zRange": [ + -11856, + -9864 + ], + "areaM2": 1632, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067FDF1602_2011504984" + ], + "rings": [ + [ + 11148, + 194823, + 13548, + 194023, + 14348, + 196423, + 15948, + 196823, + 15548, + 198023, + 14748, + 199223, + 11948, + 198823 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_581122B2211A59F801_1653661712", + "name": null, + "bbox": [ + 71548, + 172823, + 81948, + 186823 + ], + "zRange": [ + -5700, + -1200 + ], + "areaM2": 8576, + "volumes": [ + "FGAtmosphereVolume_UAID_581122B2211A59F801_1653661712" + ], + "rings": [ + [ + 71548, + 184023, + 72348, + 182823, + 72348, + 178823, + 73148, + 178823, + 73548, + 172823, + 80348, + 173623, + 81948, + 174423, + 81548, + 175223, + 80348, + 176823, + 80348, + 179623, + 78748, + 179623, + 77948, + 180823, + 77148, + 186823, + 72348, + 186023 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC6E1702_1484559157", + "name": null, + "bbox": [ + -139252, + 146423, + -98852, + 181223 + ], + "zRange": [ + -10126, + -2048 + ], + "areaM2": 65072, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC6E1702_1484559157" + ], + "rings": [ + [ + -139252, + 166823, + -136852, + 165223, + -136852, + 163623, + -134852, + 163623, + -134852, + 161223, + -132052, + 161223, + -114452, + 146423, + -113252, + 146423, + -104452, + 157623, + -99252, + 158023, + -98852, + 159623, + -99652, + 160023, + -102052, + 160023, + -103252, + 162023, + -114852, + 170823, + -118452, + 174823, + -119652, + 174823, + -121252, + 177623, + -123652, + 178023, + -126852, + 181223, + -129652, + 178423, + -134852, + 178423, + -134852, + 173223, + -136852, + 173223, + -136852, + 169623 + ] + ] + }, + { + "id": "cave_+001695_+001742", + "name": null, + "bbox": [ + 168348, + 172823, + 170748, + 175623 + ], + "zRange": [ + -5608, + -2960 + ], + "areaM2": 608, + "volumes": [], + "rings": [ + [ + 168348, + 174023, + 168748, + 172823, + 170748, + 172823, + 170748, + 174423, + 170748, + 175623, + 168748, + 175623 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067FDC1602_1973683455", + "name": null, + "bbox": [ + -56052, + 170823, + -49652, + 173223 + ], + "zRange": [ + 1190, + 3434 + ], + "areaM2": 1392, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067FDC1602_1973683455" + ], + "rings": [ + [ + -56052, + 171623, + -55652, + 170823, + -50452, + 170823, + -49652, + 172423, + -50852, + 173223, + -55252, + 173223 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067F801602_1132656261", + "name": null, + "bbox": [ + 82748, + 152023, + 107948, + 169223 + ], + "zRange": [ + -5544, + -440 + ], + "areaM2": 21808, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067F801602_1132656261" + ], + "rings": [ + [ + 82748, + 160823, + 87548, + 158823, + 89148, + 156823, + 91948, + 156823, + 101548, + 152023, + 103148, + 152023, + 106348, + 160023, + 107948, + 160423, + 107548, + 161623, + 103148, + 161623, + 96348, + 164823, + 96348, + 166823, + 92348, + 166823, + 87948, + 169223, + 86348, + 168823 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC311702_2061397419", + "name": null, + "bbox": [ + -64052, + 125623, + -50052, + 143623 + ], + "zRange": [ + -5730, + 8338 + ], + "areaM2": 16576, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC311702_2061397419", + "FGAtmosphereVolume_UAID_04421A2E61D6711702_1546643681" + ], + "rings": [ + [ + -64052, + 140823, + -58852, + 139623, + -58852, + 136023, + -60452, + 132023, + -60452, + 127223, + -58052, + 125623, + -56052, + 126423, + -56052, + 127223, + -50452, + 127223, + -50452, + 140823, + -52452, + 140823, + -52852, + 143223, + -59652, + 143623, + -64052, + 143623 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D67C1702_1120150612", + "name": null, + "bbox": [ + 214348, + 103623, + 247148, + 143223 + ], + "zRange": [ + -11610, + 8105 + ], + "areaM2": 69584, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D67C1702_1120150612", + "FGAtmosphereVolume_UAID_04421A2E61D6821702_1668298668", + "FGAtmosphereVolume_UAID_581122B2211A58F801_1978056535", + "FGAtmosphereVolume_UAID_B06EBFBF067F7E1602_2024842908" + ], + "rings": [ + [ + 214348, + 126423, + 216348, + 124823, + 215948, + 119623, + 219148, + 113623, + 219148, + 110023, + 230348, + 110423, + 230348, + 108423, + 231948, + 108423, + 232748, + 106823, + 235548, + 106823, + 238348, + 103623, + 239948, + 103623, + 240748, + 105223, + 242748, + 105223, + 243548, + 108823, + 247148, + 111223, + 241548, + 118023, + 240348, + 119623, + 240348, + 124423, + 234348, + 126023, + 234348, + 130023, + 238748, + 134423, + 238748, + 135623, + 229948, + 143223, + 228348, + 143223, + 226348, + 141223 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_581122B2211A66F801_1638250003", + "name": null, + "bbox": [ + 45948, + 131623, + 77548, + 142023 + ], + "zRange": [ + -9200, + 6689 + ], + "areaM2": 16528, + "volumes": [ + "FGAtmosphereVolume_UAID_581122B2211A66F801_1638250003" + ], + "rings": [ + [ + 45948, + 136823, + 55548, + 135623, + 55548, + 134823, + 59948, + 133223, + 67548, + 131623, + 71548, + 133623, + 75548, + 133623, + 77548, + 135223, + 77148, + 137223, + 67548, + 136823, + 59948, + 140423, + 46348, + 142023 + ] + ] + }, + { + "id": "Atmosphere_EasternDuneForestCave", + "name": "Eastern Dune Forest Cave", + "bbox": [ + 1148, + 24023, + 64748, + 133223 + ], + "zRange": [ + -15465, + 20708 + ], + "areaM2": 427712, + "volumes": [ + "Atmosphere_EasternDuneForestCave", + "Atmosphere_TitanforesCave2", + "Atmosphere_TitanforestCave", + "FGAtmosphereVolume_UAID_B06EBFBF067FDB1602_1388369277", + "FGAtmosphereVolume_UAID_B06EBFBF067FDB1602_1854625278" + ], + "rings": [ + [ + 1148, + 101223, + 13948, + 38023, + 26748, + 31623, + 28748, + 29623, + 37948, + 24423, + 41148, + 24023, + 45148, + 32023, + 51548, + 39623, + 53548, + 41623, + 54748, + 41623, + 55548, + 44423, + 57948, + 44423, + 58348, + 46823, + 64748, + 48023, + 62748, + 60023, + 52348, + 112023, + 50748, + 112823, + 42748, + 110823, + 38348, + 110823, + 38348, + 114423, + 42348, + 124023, + 37148, + 124423, + 35948, + 127223, + 34748, + 128423, + 32748, + 128423, + 32748, + 130423, + 30748, + 130823, + 30348, + 133223, + 28748, + 132823, + 28748, + 128023, + 25548, + 128023, + 25548, + 126423, + 23148, + 126423, + 11948, + 105223, + 1148, + 102823 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC721702_1349664863", + "name": null, + "bbox": [ + -151252, + 120023, + -140052, + 130423 + ], + "zRange": [ + 3319, + 14161 + ], + "areaM2": 7504, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC721702_1349664863" + ], + "rings": [ + [ + -151252, + 124823, + -149252, + 123223, + -148852, + 120423, + -143252, + 120023, + -142452, + 122823, + -140052, + 125623, + -141252, + 126423, + -141252, + 129623, + -146052, + 130423, + -148052, + 128023, + -149252, + 128023, + -149252, + 126823 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_D8CB8A319C9600F801_1933157048", + "name": null, + "bbox": [ + 207948, + 106823, + 217148, + 116423 + ], + "zRange": [ + -6232, + -3908 + ], + "areaM2": 3856, + "volumes": [ + "FGAtmosphereVolume_UAID_D8CB8A319C9600F801_1933157048" + ], + "rings": [ + [ + 207948, + 114423, + 208348, + 111223, + 210748, + 111223, + 210748, + 110023, + 211948, + 110023, + 214348, + 106823, + 215548, + 106823, + 217148, + 108823, + 217148, + 110023, + 215548, + 110023, + 210348, + 116423, + 208348, + 116423 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC711702_2107037686", + "name": null, + "bbox": [ + -86852, + 98423, + -76852, + 112023 + ], + "zRange": [ + -2028, + 2664 + ], + "areaM2": 7984, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC711702_2107037686" + ], + "rings": [ + [ + -86852, + 99623, + -86052, + 98423, + -83652, + 99223, + -83652, + 103623, + -77652, + 103623, + -76852, + 110823, + -76852, + 111623, + -80452, + 112023, + -84852, + 111623, + -85252, + 105223, + -86452, + 104023 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_D8CB8A319C96CEF001_1736089855", + "name": null, + "bbox": [ + -191652, + 49623, + -136052, + 100823 + ], + "zRange": [ + -3993, + 21797 + ], + "areaM2": 153888, + "volumes": [ + "FGAtmosphereVolume_UAID_D8CB8A319C96CEF001_1736089855" + ], + "rings": [ + [ + -191652, + 64023, + -170852, + 62423, + -170852, + 50823, + -163252, + 49623, + -162852, + 62823, + -136052, + 63623, + -139252, + 83223, + -139252, + 84023, + -152452, + 94823, + -153252, + 99623, + -155252, + 100823, + -155652, + 96023, + -160452, + 96023, + -160852, + 94823, + -166852, + 94823, + -168452, + 94423, + -168452, + 93623, + -170852, + 93623, + -170852, + 92423, + -185252, + 85223, + -188852, + 82423, + -189252, + 77623, + -189652, + 76023, + -190452, + 76023 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC1F1702_1698465244", + "name": null, + "bbox": [ + 224748, + 87623, + 238348, + 100023 + ], + "zRange": [ + -1784, + 379 + ], + "areaM2": 9872, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC1F1702_1698465244" + ], + "rings": [ + [ + 224748, + 93223, + 227148, + 91623, + 227148, + 87623, + 228748, + 87623, + 229148, + 88423, + 233148, + 88423, + 234348, + 90023, + 235548, + 90023, + 237948, + 94023, + 237548, + 96023, + 235548, + 96423, + 232348, + 100023, + 231148, + 100023, + 228348, + 96823, + 226748, + 96423 + ] + ] + }, + { + "id": "Atmosphere_SwampCave", + "name": "Swamp Cave", + "bbox": [ + 140348, + 19223, + 185548, + 99623 + ], + "zRange": [ + -5769, + 8586 + ], + "areaM2": 217424, + "volumes": [ + "Atmosphere_SwampCave", + "Atmosphere_SwampWaterfallCave", + "FGAtmosphereVolume_UAID_581122B2211A64F801_1687750647", + "FGAtmosphereVolume_UAID_581122B2211A65F801_1789877824", + "FGAtmosphereVolume_UAID_581122B2211A65F801_1954029825", + "FGAtmosphereVolume_UAID_581122B2211A66F801_1116097002" + ], + "rings": [ + [ + 140348, + 69223, + 155548, + 20023, + 183948, + 19223, + 183948, + 21223, + 185148, + 21223, + 184348, + 32023, + 183548, + 32023, + 183548, + 33223, + 181148, + 33223, + 180748, + 34423, + 179548, + 43223, + 179548, + 54423, + 177948, + 55223, + 177948, + 57623, + 176348, + 57623, + 176348, + 61623, + 177548, + 62423, + 177148, + 67623, + 174348, + 68023, + 174348, + 71623, + 178348, + 71623, + 181548, + 71223, + 182748, + 74823, + 181948, + 76823, + 176748, + 79623, + 176748, + 83623, + 178348, + 84023, + 179148, + 86823, + 173548, + 86423, + 173148, + 88823, + 168748, + 89623, + 168748, + 93623, + 169548, + 94823, + 176348, + 95623, + 177148, + 91223, + 180348, + 90023, + 185548, + 94423, + 183948, + 97223, + 175948, + 96823, + 175548, + 98823, + 169948, + 98823, + 169948, + 99623, + 168748, + 99623, + 163148, + 93623, + 163148, + 90023, + 159148, + 89223, + 155548, + 80423, + 155548, + 79623, + 159148, + 78423, + 159148, + 74823, + 141148, + 70423 + ] + ] + }, + { + "id": "cave_-000297_+000804", + "name": null, + "bbox": [ + -31252, + 77223, + -28052, + 83623 + ], + "zRange": null, + "areaM2": 1168, + "volumes": [], + "rings": [ + [ + -31252, + 77623, + -30052, + 77223, + -29252, + 78023, + -28052, + 83223, + -30052, + 83223 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC201702_1951345422", + "name": null, + "bbox": [ + -107652, + 35223, + -75652, + 72823 + ], + "zRange": [ + -150, + 21053 + ], + "areaM2": 72848, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC201702_1951345422", + "FGAtmosphereVolume_UAID_04421A9713F0211702_1536515609", + "FGAtmosphereVolume_UAID_581122B2211A12F801_1944775215", + "FGAtmosphereVolume_UAID_581122B2211A13F801_1305983392" + ], + "rings": [ + [ + -107652, + 57623, + -103652, + 56023, + -104052, + 50423, + -99652, + 46423, + -99252, + 44823, + -97252, + 44023, + -88452, + 35223, + -87252, + 35223, + -86452, + 38823, + -82852, + 38823, + -82452, + 37623, + -80852, + 37623, + -79652, + 36023, + -76452, + 38023, + -75652, + 41623, + -76452, + 42023, + -78052, + 48023, + -79652, + 48423, + -81252, + 48423, + -81252, + 52023, + -76452, + 59623, + -76452, + 60423, + -78852, + 61223, + -78452, + 65623, + -92052, + 72823, + -93652, + 72823, + -96452, + 66423, + -101652, + 66423 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC331702_1863201772", + "name": null, + "bbox": [ + -190052, + -377, + -136052, + 49223 + ], + "zRange": [ + -898, + 11644 + ], + "areaM2": 113728, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC331702_1863201772", + "FGAtmosphereVolume_UAID_04421A2E61D6271702_1572689653" + ], + "rings": [ + [ + -190052, + 4023, + -184852, + 3623, + -184452, + -377, + -182852, + 23, + -182452, + 4023, + -170852, + 4423, + -166452, + 4423, + -153652, + 423, + -137652, + 20423, + -136052, + 43223, + -136052, + 44423, + -141252, + 44423, + -141252, + 47223, + -143652, + 48023, + -143652, + 49223, + -145252, + 49223, + -146452, + 47623, + -146852, + 43223, + -160452, + 26023, + -164852, + 16823, + -166852, + 16023, + -166852, + 14423, + -170852, + 14423, + -170852, + 16423, + -190052, + 16423 + ] + ] + }, + { + "id": "cave_+001285_+000414", + "name": null, + "bbox": [ + 127548, + 39223, + 129548, + 43623 + ], + "zRange": [ + 10859, + 14258 + ], + "areaM2": 624, + "volumes": [], + "rings": [ + [ + 127548, + 39223, + 129548, + 39223, + 128748, + 42823, + 128748, + 43623, + 127548, + 43623 + ] + ] + }, + { + "id": "Atmosphere_RedJungle_Cave", + "name": "Red Jungle Cave", + "bbox": [ + -191252, + 23623, + -172452, + 41623 + ], + "zRange": [ + 7267, + 22400 + ], + "areaM2": 21424, + "volumes": [ + "Atmosphere_RedJungle_Cave" + ], + "rings": [ + [ + -191252, + 28423, + -176852, + 23623, + -174452, + 31223, + -173252, + 31623, + -172452, + 36823, + -173252, + 36823, + -173252, + 38023, + -176852, + 38023, + -186452, + 41623 + ] + ] + }, + { + "id": "cave_+001231_+000346", + "name": null, + "bbox": [ + 120748, + 31223, + 125548, + 38023 + ], + "zRange": [ + 9842, + 14273 + ], + "areaM2": 2432, + "volumes": [], + "rings": [ + [ + 120748, + 36023, + 121148, + 32423, + 124748, + 32423, + 125148, + 31223, + 125148, + 33623, + 125548, + 38023, + 121548, + 38023 + ] + ] + }, + { + "id": "cave_+001249_+000194", + "name": null, + "bbox": [ + 113148, + 12023, + 136748, + 26823 + ], + "zRange": [ + 10853, + 16668 + ], + "areaM2": 20736, + "volumes": [], + "rings": [ + [ + 113148, + 15623, + 127548, + 14823, + 127548, + 12423, + 132348, + 12023, + 133548, + 12423, + 133548, + 18023, + 136748, + 18023, + 136748, + 22823, + 136748, + 23623, + 134748, + 24023, + 134348, + 26023, + 132348, + 26023, + 132348, + 26823, + 127948, + 26023, + 127948, + 25223, + 119548, + 24823, + 119548, + 20023, + 113148, + 18423 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D62A1702_1537855184", + "name": null, + "bbox": [ + -106052, + 423, + -87652, + 25623 + ], + "zRange": [ + 18696, + 23894 + ], + "areaM2": 29616, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D62A1702_1537855184", + "FGAtmosphereVolume_UAID_04421A9713F0271702_1637546666" + ], + "rings": [ + [ + -106052, + 20023, + -103652, + 4023, + -98852, + 4023, + -94052, + 423, + -92452, + 2423, + -90452, + 2423, + -90452, + 4823, + -88452, + 6823, + -87652, + 8423, + -89252, + 9223, + -92852, + 22023, + -96452, + 23223, + -96452, + 24423, + -100852, + 24423, + -100852, + 25623, + -102452, + 25623, + -103252, + 22023, + -105652, + 21223 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D6201702_1395647424", + "name": null, + "bbox": [ + 89148, + -5177, + 104748, + 20423 + ], + "zRange": [ + 9168, + 12891 + ], + "areaM2": 17952, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D6201702_1395647424" + ], + "rings": [ + [ + 89148, + 14823, + 91948, + 10023, + 91948, + 6423, + 93548, + 5223, + 93548, + 2823, + 94748, + 2823, + 95548, + -377, + 97148, + -377, + 98348, + -3177, + 103948, + -5177, + 104748, + -3977, + 104348, + 23, + 103148, + 423, + 102748, + 6423, + 100748, + 6823, + 97948, + 14423, + 97948, + 17623, + 96748, + 18423, + 96348, + 20423, + 92748, + 17623, + 92748, + 15223 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067FE01602_1624746161", + "name": null, + "bbox": [ + 7948, + -12777, + 19948, + 4823 + ], + "zRange": [ + 17360, + 20313 + ], + "areaM2": 10656, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067FE01602_1624746161" + ], + "rings": [ + [ + 7948, + -7577, + 12348, + -9177, + 13148, + -12777, + 15148, + -12777, + 15548, + -7577, + 19148, + 423, + 19948, + 2423, + 13548, + 4823 + ] + ] + }, + { + "id": "Atmosphere_Cave1a", + "name": "Cave 1a", + "bbox": [ + 200748, + -51577, + 222748, + -7977 + ], + "zRange": [ + -1383, + 9040 + ], + "areaM2": 53008, + "volumes": [ + "Atmosphere_Cave1a", + "Atmosphere_Cave1b", + "FGAtmosphereVolume_UAID_D8CB8A319C9662F801_1483168297" + ], + "rings": [ + [ + 200748, + -29177, + 203148, + -29577, + 204348, + -33577, + 204348, + -39577, + 203548, + -39977, + 203548, + -42377, + 201948, + -43577, + 202348, + -45177, + 203548, + -45577, + 203148, + -50777, + 209548, + -51577, + 211148, + -49977, + 211948, + -45977, + 211948, + -34377, + 213548, + -31977, + 215148, + -31977, + 215148, + -29977, + 217148, + -27977, + 220748, + -24777, + 222748, + -18377, + 217948, + -15577, + 217548, + -12777, + 211548, + -11977, + 210748, + -8377, + 208348, + -7977, + 205148, + -8777, + 200748, + -16377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC301702_1404604240", + "name": null, + "bbox": [ + 214748, + -55177, + 245948, + -10377 + ], + "zRange": [ + -2157, + 8177 + ], + "areaM2": 55728, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC301702_1404604240", + "FGAtmosphereVolume_UAID_D8CB8A319C9664F801_1171205650" + ], + "rings": [ + [ + 214748, + -53577, + 221948, + -55177, + 225548, + -50377, + 230748, + -50377, + 230748, + -45177, + 234748, + -45177, + 234748, + -38777, + 238348, + -34777, + 235148, + -33177, + 234748, + -31577, + 231148, + -31177, + 231148, + -27577, + 245948, + -27577, + 245948, + -19177, + 245948, + -12777, + 237548, + -12777, + 237148, + -10377, + 234348, + -10377, + 233948, + -12377, + 229548, + -12777, + 229548, + -29177, + 225948, + -29177 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D66E1702_1401578149", + "name": null, + "bbox": [ + -237252, + -33177, + -220052, + -12377 + ], + "zRange": [ + -3468, + -769 + ], + "areaM2": 12432, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D66E1702_1401578149" + ], + "rings": [ + [ + -237252, + -29177, + -236852, + -32777, + -233652, + -32777, + -226852, + -23977, + -224452, + -23977, + -224452, + -21177, + -222052, + -19977, + -220452, + -15977, + -220452, + -12377, + -224852, + -13977, + -228452, + -18777, + -230852, + -18777, + -230852, + -20777, + -232452, + -20777, + -232852, + -23977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_D8CB8A319C965EF801_1343152592", + "name": null, + "bbox": [ + 146748, + -33577, + 167548, + -17177 + ], + "zRange": [ + 3637, + 9192 + ], + "areaM2": 19248, + "volumes": [ + "FGAtmosphereVolume_UAID_D8CB8A319C965EF801_1343152592" + ], + "rings": [ + [ + 146748, + -21577, + 147948, + -30777, + 164348, + -29177, + 164348, + -32777, + 165148, + -33577, + 167148, + -33177, + 167148, + -31177, + 165948, + -30777, + 165948, + -25977, + 163548, + -25577, + 159948, + -17177, + 153548, + -18777, + 148748, + -18777, + 148348, + -19977, + 146748, + -19977 + ] + ] + }, + { + "id": "Atmosphere_CraterLakesCave3", + "name": "Crater Lakes Cave 3", + "bbox": [ + -25652, + -39977, + -10052, + -19177 + ], + "zRange": [ + 11555, + 17827 + ], + "areaM2": 13872, + "volumes": [ + "Atmosphere_CraterLakesCave3", + "Atmosphere_CraterLakesCave4" + ], + "rings": [ + [ + -25652, + -39977, + -20052, + -37977, + -20052, + -33977, + -15652, + -33977, + -15652, + -35577, + -13252, + -35577, + -13252, + -32377, + -10052, + -20777, + -12452, + -20377, + -12452, + -19577, + -18452, + -19577, + -18452, + -23977, + -20852, + -31177, + -20852, + -34777, + -25252, + -35177 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F0301702_1274643254", + "name": null, + "bbox": [ + -118452, + -47577, + -102052, + -30777 + ], + "zRange": [ + 2444, + 4598 + ], + "areaM2": 15248, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F0301702_1274643254" + ], + "rings": [ + [ + -118452, + -39577, + -108852, + -47577, + -107252, + -47577, + -102452, + -41977, + -102052, + -40777, + -103252, + -39977, + -108452, + -35977, + -108452, + -31577, + -114052, + -31577, + -114852, + -30777, + -116452, + -30777, + -116452, + -34777, + -118452, + -37977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067F911602_1644034254", + "name": null, + "bbox": [ + 154748, + -39177, + 161148, + -33977 + ], + "zRange": [ + 8204, + 10414 + ], + "areaM2": 1952, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067F911602_1644034254" + ], + "rings": [ + [ + 154748, + -38777, + 155948, + -39177, + 157148, + -37177, + 160348, + -37177, + 161148, + -34377, + 156348, + -33977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067FE11602_1374084338", + "name": null, + "bbox": [ + 75548, + -47577, + 84348, + -40377 + ], + "zRange": [ + 5965, + 7214 + ], + "areaM2": 4240, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067FE11602_1374084338" + ], + "rings": [ + [ + 75548, + -45977, + 77148, + -47577, + 81948, + -46777, + 84348, + -43177, + 83948, + -42377, + 83948, + -41577, + 80748, + -40377, + 76748, + -42377, + 76748, + -43577, + 75548, + -43977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067F901602_1230069077", + "name": null, + "bbox": [ + 140748, + -53977, + 144348, + -47577 + ], + "zRange": [ + 27, + 1750 + ], + "areaM2": 1936, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067F901602_1230069077" + ], + "rings": [ + [ + 140748, + -50777, + 141948, + -53977, + 144348, + -53577, + 144348, + -50777, + 144348, + -47977, + 143148, + -47577, + 141148, + -47977 + ] + ] + }, + { + "id": "cave_-001563_-000538", + "name": null, + "bbox": [ + -157652, + -55577, + -154852, + -51977 + ], + "zRange": [ + -5071, + -2812 + ], + "areaM2": 1008, + "volumes": [], + "rings": [ + [ + -157652, + -55577, + -154852, + -55577, + -154852, + -51977, + -157652, + -51977 + ] + ] + }, + { + "id": "Atmosphere_CraterLakesCave2", + "name": "Crater Lakes Cave 2", + "bbox": [ + -43252, + -68777, + -35652, + -57177 + ], + "zRange": [ + 11349, + 18471 + ], + "areaM2": 6944, + "volumes": [ + "Atmosphere_CraterLakesCave2" + ], + "rings": [ + [ + -43252, + -57977, + -41652, + -68777, + -38052, + -68777, + -38052, + -66777, + -36852, + -66777, + -35652, + -66777, + -36452, + -57177 + ] + ] + }, + { + "id": "cave_+002175_-000604", + "name": null, + "bbox": [ + 215948, + -61977, + 219148, + -58777 + ], + "zRange": null, + "areaM2": 736, + "volumes": [], + "rings": [ + [ + 215948, + -61177, + 217948, + -61977, + 219148, + -60777, + 218748, + -59977, + 218748, + -59177, + 217148, + -58777, + 215948, + -59577 + ] + ] + }, + { + "id": "Atmosphere_CraterLakesCave", + "name": "Crater Lakes Cave", + "bbox": [ + -107652, + -73577, + -93652, + -63577 + ], + "zRange": [ + 3293, + 16833 + ], + "areaM2": 9008, + "volumes": [ + "Atmosphere_CraterLakesCave", + "FGAtmosphereVolume_UAID_04421A2E61D66D1702_1743997972" + ], + "rings": [ + [ + -107652, + -65977, + -105652, + -71977, + -101252, + -71977, + -100452, + -73577, + -99252, + -73577, + -94852, + -69977, + -93652, + -69177, + -98052, + -63977, + -101252, + -63577, + -107252, + -64777 + ] + ] + }, + { + "id": "Atmosphere_CaveTest", + "name": null, + "bbox": [ + -18852, + -83977, + -2852, + -66777 + ], + "zRange": [ + 4968, + 12406 + ], + "areaM2": 14672, + "volumes": [ + "Atmosphere_CaveTest" + ], + "rings": [ + [ + -18852, + -81977, + -16852, + -83977, + -9652, + -80377, + -3252, + -73977, + -2852, + -72377, + -4452, + -70377, + -4852, + -69177, + -10052, + -66777, + -16852, + -73977 + ] + ] + }, + { + "id": "Atmosphere_NorthernForestCave", + "name": "Northern Forest Cave", + "bbox": [ + 61148, + -83177, + 74748, + -67977 + ], + "zRange": [ + 4439, + 9606 + ], + "areaM2": 15296, + "volumes": [ + "Atmosphere_NorthernForestCave" + ], + "rings": [ + [ + 61148, + -71577, + 63548, + -83177, + 74348, + -81577, + 74348, + -79177, + 74748, + -75577, + 73148, + -74777, + 71948, + -67977, + 61948, + -69577 + ] + ] + }, + { + "id": "Atmosphere_NorthernForestCave6", + "name": "Northern Forest Cave 6", + "bbox": [ + 48348, + -82777, + 57948, + -69977 + ], + "zRange": [ + 1800, + 7423 + ], + "areaM2": 8704, + "volumes": [ + "Atmosphere_NorthernForestCave6" + ], + "rings": [ + [ + 48348, + -77577, + 49148, + -79977, + 49948, + -79977, + 49948, + -81977, + 52348, + -82777, + 53548, + -81177, + 57948, + -80377, + 57148, + -75977, + 55948, + -70777, + 53148, + -69977, + 51548, + -71577, + 48348, + -71977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F0301702_1833015255", + "name": null, + "bbox": [ + -160852, + -91977, + -146452, + -70377 + ], + "zRange": [ + -5179, + 1723 + ], + "areaM2": 12720, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F0301702_1833015255" + ], + "rings": [ + [ + -160852, + -87577, + -158852, + -89577, + -158852, + -91977, + -153252, + -91977, + -153252, + -89977, + -151252, + -89977, + -151252, + -87977, + -146452, + -84377, + -150052, + -80377, + -150452, + -76377, + -153252, + -75577, + -153252, + -70377, + -156052, + -70377, + -156052, + -75977, + -153652, + -75977, + -153652, + -81177, + -156852, + -83977, + -158852, + -83977, + -158852, + -85577 + ] + ] + }, + { + "id": "cave_-000545_-000754", + "name": null, + "bbox": [ + -59652, + -80377, + -49252, + -70377 + ], + "zRange": [ + 5083, + 9620 + ], + "areaM2": 6272, + "volumes": [], + "rings": [ + [ + -59652, + -79977, + -50852, + -80377, + -50452, + -77577, + -49252, + -77577, + -49252, + -76377, + -51652, + -75977, + -51652, + -73177, + -51652, + -70377, + -56852, + -70377, + -56852, + -76777, + -57652, + -76777, + -57652, + -77977, + -59252, + -77977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F02E1702_1653401901", + "name": null, + "bbox": [ + -271652, + -76377, + -262452, + -71177 + ], + "zRange": [ + -1956, + -830 + ], + "areaM2": 3840, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F02E1702_1653401901" + ], + "rings": [ + [ + -271652, + -75177, + -262452, + -76377, + -262452, + -72377, + -271652, + -71177 + ] + ] + }, + { + "id": "Atmosphere_NorthernForestCave5", + "name": "Northern Forest Cave 5", + "bbox": [ + 96748, + -99977, + 117148, + -76777 + ], + "zRange": [ + 1623, + 8601 + ], + "areaM2": 30064, + "volumes": [ + "Atmosphere_NorthernForestCave5" + ], + "rings": [ + [ + 96748, + -95977, + 110748, + -99977, + 117148, + -82777, + 116348, + -81177, + 114348, + -80777, + 113548, + -77977, + 111148, + -77977, + 109948, + -76777, + 108348, + -77177, + 108348, + -77977, + 103148, + -77577, + 98748, + -90777, + 97548, + -91577 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F02A1702_1573383196", + "name": null, + "bbox": [ + -230052, + -91977, + -220052, + -84777 + ], + "zRange": [ + -2690, + -269 + ], + "areaM2": 5024, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F02A1702_1573383196" + ], + "rings": [ + [ + -230052, + -89577, + -228452, + -91177, + -225252, + -91977, + -221652, + -89977, + -220052, + -88377, + -220052, + -86777, + -222052, + -85177, + -228052, + -85577, + -229252, + -84777, + -230052, + -85577 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D61E1702_2062970070", + "name": null, + "bbox": [ + 33148, + -99577, + 42348, + -87177 + ], + "zRange": [ + 8049, + 11105 + ], + "areaM2": 6800, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D61E1702_2062970070" + ], + "rings": [ + [ + 33148, + -91977, + 37148, + -99577, + 38748, + -99577, + 39948, + -97977, + 41948, + -97577, + 41948, + -95177, + 41948, + -88777, + 41148, + -87177, + 39948, + -87177, + 39548, + -88777 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F0291702_1343772019", + "name": null, + "bbox": [ + -284852, + -91977, + -274452, + -87577 + ], + "zRange": [ + -2738, + 256 + ], + "areaM2": 3760, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F0291702_1343772019" + ], + "rings": [ + [ + -284852, + -90777, + -281252, + -91177, + -281252, + -91977, + -274452, + -91977, + -274452, + -88777, + -274452, + -87577, + -281252, + -87577, + -284452, + -89577 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D6831702_1791209845", + "name": null, + "bbox": [ + 365548, + -109977, + 380348, + -93177 + ], + "zRange": [ + 2372, + 5072 + ], + "areaM2": 10880, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D6831702_1791209845" + ], + "rings": [ + [ + 365548, + -107177, + 368348, + -109577, + 370348, + -109977, + 380348, + -95977, + 378748, + -95177, + 378748, + -93577, + 375548, + -93177, + 370348, + -100377, + 367148, + -101177, + 367148, + -104777 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F0201702_1244543432", + "name": null, + "bbox": [ + -67252, + -115577, + -53252, + -101577 + ], + "zRange": [ + 106, + 2744 + ], + "areaM2": 9104, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F0201702_1244543432" + ], + "rings": [ + [ + -67252, + -111977, + -63252, + -113577, + -62452, + -115577, + -60852, + -115577, + -60052, + -113577, + -57252, + -113577, + -57252, + -111577, + -55252, + -111177, + -54852, + -108377, + -53252, + -107577, + -53652, + -105577, + -54452, + -101977, + -56052, + -101577, + -57252, + -102377, + -58052, + -105577, + -61252, + -105577, + -61252, + -107977, + -64452, + -108377, + -64452, + -109977, + -67252, + -110377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D66F1702_2031480327", + "name": null, + "bbox": [ + -151252, + -106377, + -147652, + -102377 + ], + "zRange": [ + -3100, + 291 + ], + "areaM2": 1440, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D66F1702_2031480327" + ], + "rings": [ + [ + -151252, + -106377, + -147652, + -106377, + -147652, + -102377, + -151252, + -102377 + ] + ] + }, + { + "id": "Atmosphere_NorthernForestCave3", + "name": "Northern Forest Cave 3", + "bbox": [ + 35548, + -128377, + 50748, + -107577 + ], + "zRange": [ + 9852, + 12359 + ], + "areaM2": 13952, + "volumes": [ + "Atmosphere_NorthernForestCave3", + "FGAtmosphereVolume_UAID_04421A2E61D61B1702_2125306541" + ], + "rings": [ + [ + 35548, + -113177, + 39948, + -114777, + 39948, + -125177, + 41948, + -127977, + 44748, + -127977, + 45148, + -125177, + 48748, + -125177, + 48748, + -120377, + 50748, + -119577, + 49948, + -117177, + 42748, + -115977, + 42748, + -111977, + 43548, + -111177, + 42748, + -107577, + 38348, + -108777, + 38348, + -110377, + 35948, + -111177 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D66F1702_1277026326", + "name": null, + "bbox": [ + -232852, + -114777, + -226052, + -107977 + ], + "zRange": [ + -1272, + 3350 + ], + "areaM2": 4624, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D66F1702_1277026326" + ], + "rings": [ + [ + -232852, + -114777, + -226052, + -114777, + -226052, + -107977, + -232852, + -107977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D6831702_1579834844", + "name": null, + "bbox": [ + 306348, + -113977, + 311948, + -109577 + ], + "zRange": [ + 5757, + 7007 + ], + "areaM2": 1584, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D6831702_1579834844" + ], + "rings": [ + [ + 306348, + -111977, + 310748, + -113977, + 311948, + -111577, + 311948, + -110777, + 307948, + -109577, + 307948, + -110377, + 306348, + -110377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D6841702_1979262023", + "name": null, + "bbox": [ + 281148, + -129977, + 285948, + -121977 + ], + "zRange": [ + 2157, + 3477 + ], + "areaM2": 1840, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D6841702_1979262023" + ], + "rings": [ + [ + 281148, + -129577, + 282348, + -129977, + 283148, + -129177, + 283948, + -126377, + 285948, + -123977, + 285148, + -123177, + 284348, + -121977, + 282748, + -122777 + ] + ] + }, + { + "id": "cave_-001289_-001258", + "name": null, + "bbox": [ + -130852, + -127977, + -126852, + -123577 + ], + "zRange": [ + -4139, + -569 + ], + "areaM2": 1488, + "volumes": [], + "rings": [ + [ + -130852, + -127977, + -127652, + -127977, + -127652, + -126377, + -126852, + -126377, + -127652, + -124377, + -128052, + -123577, + -130852, + -123977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F01F1702_1951775255", + "name": null, + "bbox": [ + -20452, + -143177, + 18348, + -124377 + ], + "zRange": [ + -2421, + 12487 + ], + "areaM2": 45488, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F01F1702_1951775255", + "FGAtmosphereVolume_UAID_D8CB8A319C965CF801_2117624239" + ], + "rings": [ + [ + -20452, + -135577, + -19652, + -135577, + -18852, + -139177, + -15652, + -139577, + -12852, + -139177, + -12452, + -136777, + -8852, + -136777, + -7652, + -140377, + -6052, + -141977, + -4452, + -141977, + -3652, + -139577, + 748, + -139577, + 15948, + -143177, + 17548, + -134777, + 18348, + -131177, + 17548, + -129577, + -6452, + -124377, + -7652, + -129977, + -11252, + -129977, + -15252, + -128377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067F8F1602_1735070900", + "name": null, + "bbox": [ + 68748, + -135577, + 82348, + -125577 + ], + "zRange": [ + 6204, + 9469 + ], + "areaM2": 8624, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067F8F1602_1735070900" + ], + "rings": [ + [ + 68748, + -133177, + 71148, + -135577, + 72748, + -135577, + 73548, + -134377, + 77148, + -134377, + 77948, + -131977, + 80748, + -131977, + 80748, + -129577, + 82348, + -129177, + 81948, + -128377, + 80748, + -127977, + 79548, + -125577, + 73948, + -125577, + 73148, + -127577, + 69948, + -127577, + 69948, + -130777, + 68748, + -131177 + ] + ] + }, + { + "id": "Atmosphere_SavannaCave", + "name": "Savanna Cave", + "bbox": [ + -250852, + -197177, + -112052, + -132377 + ], + "zRange": [ + -9888, + 17515 + ], + "areaM2": 230912, + "volumes": [ + "Atmosphere_SavannaCave", + "Atmosphere_SavannaCave2", + "Atmosphere_SavannaCave3", + "FGAtmosphereVolume_UAID_04421A2E61D6771702_2047792739" + ], + "rings": [ + [ + -250852, + -153177, + -250052, + -158777, + -227252, + -156777, + -221652, + -153577, + -218852, + -153577, + -218452, + -151577, + -211252, + -143577, + -207252, + -143577, + -204852, + -145177, + -204852, + -147177, + -203252, + -147177, + -202052, + -149977, + -188452, + -149977, + -188452, + -153577, + -193252, + -157977, + -195252, + -166377, + -202852, + -173177, + -202852, + -175577, + -204052, + -176377, + -204052, + -178777, + -204852, + -178777, + -205252, + -184777, + -206052, + -185177, + -206052, + -187577, + -207252, + -187577, + -207252, + -190377, + -208452, + -192777, + -206852, + -197177, + -205252, + -197177, + -204852, + -191977, + -202852, + -185977, + -198452, + -185977, + -198452, + -180777, + -195652, + -179577, + -194052, + -173977, + -187652, + -167977, + -186852, + -161977, + -178052, + -153577, + -163252, + -153977, + -155252, + -159577, + -148052, + -161177, + -149252, + -178777, + -146452, + -182377, + -146452, + -184777, + -144852, + -184777, + -142852, + -187577, + -140452, + -191177, + -136852, + -191577, + -136052, + -189977, + -134852, + -189977, + -135652, + -189177, + -135652, + -185577, + -134852, + -185177, + -136052, + -183977, + -139652, + -183977, + -141252, + -181977, + -140852, + -174377, + -127252, + -145977, + -125252, + -145977, + -125252, + -144377, + -122852, + -143577, + -122852, + -142377, + -118052, + -142377, + -112052, + -143977, + -112452, + -137977, + -113252, + -137177, + -117652, + -137177, + -122052, + -135577, + -124452, + -137577, + -126852, + -137577, + -126852, + -139577, + -129652, + -141577, + -134452, + -141977, + -134452, + -143577, + -135652, + -144377, + -148052, + -144377, + -150852, + -148777, + -155252, + -148777, + -158852, + -146777, + -166052, + -139577, + -170052, + -138377, + -171252, + -136377, + -176452, + -135977, + -176852, + -132777, + -195652, + -132377, + -200052, + -137977, + -204452, + -137977, + -204452, + -136777, + -214452, + -135577, + -215252, + -137177, + -224052, + -141577, + -229252, + -148377, + -250052, + -150377, + -250852, + -150777 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC791702_1201863096", + "name": null, + "bbox": [ + 120348, + -162377, + 144348, + -143577 + ], + "zRange": [ + 15109, + 17551 + ], + "areaM2": 22848, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC791702_1201863096" + ], + "rings": [ + [ + 120348, + -152777, + 138748, + -162377, + 139948, + -162377, + 144348, + -153177, + 125948, + -143577, + 124348, + -143977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_B06EBFBF067F911602_2063853255", + "name": null, + "bbox": [ + 190748, + -170377, + 208748, + -160377 + ], + "zRange": [ + 12967, + 16133 + ], + "areaM2": 14896, + "volumes": [ + "FGAtmosphereVolume_UAID_B06EBFBF067F911602_2063853255" + ], + "rings": [ + [ + 190748, + -170377, + 208348, + -168377, + 208748, + -166777, + 206348, + -165977, + 206348, + -162777, + 206348, + -160377, + 190748, + -160377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F07B1702_1814100457", + "name": null, + "bbox": [ + 285148, + -166377, + 294348, + -162377 + ], + "zRange": [ + 648, + 2572 + ], + "areaM2": 3136, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F07B1702_1814100457" + ], + "rings": [ + [ + 285148, + -165177, + 287548, + -166377, + 294348, + -166377, + 294348, + -163577, + 294348, + -162377, + 287548, + -162377, + 287548, + -163977, + 285548, + -163977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F07A1702_1870108280", + "name": null, + "bbox": [ + 395548, + -181977, + 401148, + -179577 + ], + "zRange": [ + 3668, + 4382 + ], + "areaM2": 880, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F07A1702_1870108280" + ], + "rings": [ + [ + 395548, + -181577, + 400748, + -181977, + 400748, + -180377, + 398348, + -179577, + 397948, + -180377, + 395548, + -180377 + ] + ] + }, + { + "id": "Atmosphere_DuneDesertWaterfallCave", + "name": "Dune Desert Waterfall Cave", + "bbox": [ + 203148, + -191977, + 215148, + -179977 + ], + "zRange": [ + 5325, + 12925 + ], + "areaM2": 10784, + "volumes": [ + "Atmosphere_DuneDesertWaterfallCave", + "FGAtmosphereVolume_UAID_D8CB8A319C96A1F801_1770350387" + ], + "rings": [ + [ + 203148, + -182377, + 205148, + -191977, + 210348, + -191577, + 215148, + -190377, + 215148, + -189577, + 213148, + -179977, + 203548, + -181577 + ] + ] + }, + { + "id": "cave_+000293_-002190", + "name": null, + "bbox": [ + 17148, + -226377, + 41548, + -211577 + ], + "zRange": [ + -2350, + -1619 + ], + "areaM2": 25040, + "volumes": [], + "rings": [ + [ + 17148, + -226377, + 24748, + -226377, + 24748, + -224377, + 25948, + -224377, + 25948, + -222777, + 38748, + -222777, + 38748, + -221577, + 40348, + -221577, + 40348, + -216377, + 41548, + -216377, + 41548, + -212377, + 40748, + -212377, + 25148, + -211577, + 25148, + -214377, + 19148, + -214377, + 18748, + -221577, + 17148, + -221577 + ] + ] + }, + { + "id": "cave_-000087_-002332", + "name": null, + "bbox": [ + -22452, + -247977, + 5148, + -218377 + ], + "zRange": [ + -2979, + -1474 + ], + "areaM2": 45968, + "volumes": [], + "rings": [ + [ + -22452, + -243577, + -21652, + -243577, + -21652, + -244777, + -19652, + -244777, + -19652, + -247977, + -12852, + -247977, + -12852, + -246377, + -452, + -246777, + 748, + -239977, + 348, + -235577, + 3948, + -235577, + 3948, + -230777, + 5148, + -230777, + 5148, + -225177, + 2748, + -225177, + 348, + -225177, + 348, + -223577, + -852, + -223577, + -852, + -218377, + -6452, + -218377, + -6452, + -221177, + -11252, + -221177, + -11652, + -230777, + -10852, + -230777, + -10852, + -236777, + -19652, + -236777, + -19652, + -237977, + -22452, + -237977 + ] + ] + }, + { + "id": "cave_+000701_-002372", + "name": null, + "bbox": [ + 59548, + -249977, + 80748, + -224377 + ], + "zRange": [ + -3553, + -1522 + ], + "areaM2": 33392, + "volumes": [], + "rings": [ + [ + 59548, + -233977, + 63548, + -233977, + 63948, + -249977, + 70748, + -249977, + 70748, + -248777, + 74348, + -248777, + 74348, + -243577, + 77148, + -243577, + 77148, + -241577, + 80748, + -241577, + 80748, + -240777, + 79948, + -231177, + 70748, + -230377, + 70348, + -227177, + 64348, + -227177, + 64348, + -224377, + 59948, + -224377 + ] + ] + }, + { + "id": "cave_+000283_-002332", + "name": null, + "bbox": [ + 24348, + -235577, + 32348, + -230777 + ], + "zRange": [ + -2084, + 462 + ], + "areaM2": 3424, + "volumes": [], + "rings": [ + [ + 24348, + -235177, + 32348, + -235577, + 32348, + -232377, + 31148, + -232377, + 30348, + -232377, + 30348, + -230777, + 25148, + -230777 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F07C1702_1438452634", + "name": null, + "bbox": [ + 350748, + -242777, + 368748, + -237177 + ], + "zRange": [ + 1186, + 5804 + ], + "areaM2": 7360, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F07C1702_1438452634" + ], + "rings": [ + [ + 350748, + -241177, + 354748, + -242777, + 362748, + -242777, + 365948, + -240377, + 367948, + -240377, + 368348, + -239177, + 368348, + -238377, + 364748, + -238377, + 363148, + -237177, + 354748, + -237177, + 353148, + -238777, + 351148, + -239177 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E61D6841702_1114550022", + "name": null, + "bbox": [ + 368748, + -259577, + 381948, + -245177 + ], + "zRange": [ + -2811, + 3575 + ], + "areaM2": 12544, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E61D6841702_1114550022" + ], + "rings": [ + [ + 368748, + -253977, + 379148, + -259577, + 381148, + -258777, + 380348, + -256777, + 381148, + -249977, + 381548, + -245577, + 375948, + -246377, + 371948, + -245177 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC7C1702_1114403628", + "name": null, + "bbox": [ + 242348, + -257977, + 244748, + -252377 + ], + "zRange": [ + -1272, + 978 + ], + "areaM2": 1248, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC7C1702_1114403628" + ], + "rings": [ + [ + 242348, + -257977, + 244748, + -257977, + 244348, + -252777, + 242748, + -252377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC811702_1572420509", + "name": null, + "bbox": [ + 259948, + -273577, + 278748, + -255177 + ], + "zRange": [ + 812, + 12907 + ], + "areaM2": 12976, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC811702_1572420509", + "FGAtmosphereVolume_UAID_04421A2E60EC821702_1650299687", + "FGAtmosphereVolume_UAID_04421A2E60EC831702_1360990864" + ], + "rings": [ + [ + 259948, + -257177, + 261948, + -261577, + 266348, + -261577, + 270348, + -263977, + 270748, + -268777, + 274348, + -268777, + 275148, + -273577, + 276748, + -273177, + 277148, + -269977, + 277548, + -267977, + 278748, + -267177, + 278748, + -265177, + 274348, + -259177, + 268748, + -259177, + 268748, + -257977, + 265548, + -255177, + 259948, + -255577 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC7A1702_1610685273", + "name": null, + "bbox": [ + 166348, + -268777, + 172348, + -264377 + ], + "zRange": [ + 461, + 2359 + ], + "areaM2": 1552, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC7A1702_1610685273" + ], + "rings": [ + [ + 166348, + -267177, + 171548, + -268777, + 171948, + -266377, + 167148, + -264377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F0821702_1965266691", + "name": null, + "bbox": [ + 374748, + -279977, + 383148, + -265577 + ], + "zRange": [ + -76, + 3284 + ], + "areaM2": 5024, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F0821702_1965266691" + ], + "rings": [ + [ + 374748, + -279577, + 376348, + -279977, + 377548, + -278377, + 381948, + -275977, + 383148, + -273577, + 381948, + -267177, + 380748, + -265577, + 378348, + -267977, + 378348, + -275577, + 374748, + -278377 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A9713F0851702_1731342220", + "name": null, + "bbox": [ + 309948, + -297577, + 330748, + -276777 + ], + "zRange": [ + -3754, + 84 + ], + "areaM2": 24752, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A9713F0851702_1731342220" + ], + "rings": [ + [ + 309948, + -281177, + 317548, + -295977, + 320748, + -295977, + 320748, + -297577, + 323948, + -297577, + 323948, + -295977, + 325148, + -295977, + 325148, + -293977, + 329948, + -292377, + 330748, + -291577, + 323148, + -276777, + 310348, + -279977 + ] + ] + }, + { + "id": "FGAtmosphereVolume_UAID_04421A2E60EC841702_1284885042", + "name": null, + "bbox": [ + 239148, + -295577, + 259148, + -279577 + ], + "zRange": [ + -2208, + 9849 + ], + "areaM2": 19936, + "volumes": [ + "FGAtmosphereVolume_UAID_04421A2E60EC841702_1284885042", + "FGAtmosphereVolume_UAID_04421A2E61D6851702_1212894200" + ], + "rings": [ + [ + 239148, + -285177, + 240348, + -286377, + 241948, + -295177, + 259148, + -295177, + 257948, + -290377, + 256348, + -281977, + 255148, + -281577, + 254348, + -279577, + 253148, + -279977, + 253148, + -282777, + 249948, + -284377, + 242748, + -284777, + 239548, + -283977 + ] + ] + }, + { + "id": "Atmosphere_DDJungleRiverCave3", + "name": "Dune Desert Jungle River Cave 3", + "bbox": [ + 292348, + -297977, + 302348, + -285177 + ], + "zRange": [ + 1297, + 8365 + ], + "areaM2": 5552, + "volumes": [ + "Atmosphere_DDJungleRiverCave3", + "FGAtmosphereVolume_UAID_04421A2E60EC7B1702_1302861451" + ], + "rings": [ + [ + 292348, + -292777, + 297548, + -297977, + 299148, + -297977, + 300748, + -297577, + 302348, + -293977, + 302348, + -293177, + 299948, + -292377, + 298348, + -291977, + 298748, + -285177, + 296348, + -285177, + 295948, + -291177, + 294348, + -291177 + ] + ] + } + ] +} \ No newline at end of file diff --git a/map/static/map/filters.js b/map/static/map/filters.js index bef4b43..22460e9 100644 --- a/map/static/map/filters.js +++ b/map/static/map/filters.js @@ -262,6 +262,7 @@ var Filters = {}; "Collectables": true, "Spawners": true, "Dropped Items": true, + "Caves": true, }; function savedGroupStateForStack() { @@ -1238,6 +1239,66 @@ var Filters = {}; renderTopLevelCategory(navList, detailPane, "Dropped Items (" + total + ")", "circle", DROPPED_ITEM_COLOR, rows); } + // ---- Caves ---------------------------------------------------------------- + + // Orchid: the one hue no line layer uses (belts orange, pipes green, power + // yellow, hypertubes blue, rails white, vehicle paths grey), and it holds + // up over both the beige terrain and a dense factory. + var CAVE_COLOR = "#c66bff"; + + // payload.caves (see the rust core's collect_caves) is the same for every + // save: cave outlines traced from the cooked level data, since nothing in a + // save records a cave. One line bucket holds every ring, so the whole layer + // is one checkbox; each ring's z is its cave's floor altitude, which is + // what makes the altitude slider filter caves like any other geometry. + // + // Outlines, not fills: the map's renderer draws lines, and an outline reads + // better over a factory than 84 translucent blobs would. The shape is the + // game's own cave fog volume plus the cave geometry inside it, so it is + // generous by tens of meters -- "the cave is in here", not a survey. + function buildCavesSection(navList, detailPane, payload) { + var caves = payload.caves; + if (!caves || !caves.polylines || caves.polylines.length === 0) { + return; + } + var labels = caves.labels || []; + var areas = caves.areas || []; + var depths = caves.depths || []; + var tooltipInfo = function(index) { + var rows = []; + var area = areas[index]; + if (typeof area === "number") { + rows.push(["Area", area >= 10000 ? (area / 10000).toFixed(1) + " ha" + : Math.round(area).toLocaleString() + " m²"]); + } + // The tooltip's own Altitude row already gives the floor (the ring's + // z); this is the cave's full vertical extent, floor to ceiling. + var depth = depths[index]; + if (depth && depth.length === 2) { + rows.push(["Altitude range", Math.round(depth[0]) + " m to " + Math.round(depth[1]) + " m"]); + } + var ring = caves.polylines[index]; + return { title: labels[index] || "Cave", rows: rows, + position: ring ? EditorTool.mapPxToWorldXY(ring[0], ring[1]) : undefined }; + }; + var bucket = makeLineBucket("caves", "Cave", CAVE_COLOR, caves.polylines, caves.ids, + "static", tooltipInfo, 3); + // One row, one bucket: the count is caves, not rings (a cave whose + // footprint came out in two touching pieces is still one cave). + var caveCount = 0; + var seen = {}; + (caves.ids || []).forEach(function(id) { + var caveId = String(id).split("#")[0]; + if (!seen[caveId]) { + seen[caveId] = true; + caveCount++; + } + }); + var rows = [{ label: "Caves", count: caveCount, color: CAVE_COLOR, renderType: "line", + buckets: [bucket] }]; + renderTopLevelCategory(navList, detailPane, "Caves (" + caveCount + ")", "line", CAVE_COLOR, rows); + } + // ---- HUB ------------------------------------------------------------------ // The HUB is a one-of-a-kind landmark (excluded from collectBuildings -- @@ -1718,6 +1779,7 @@ var Filters = {}; buildCollectablesSection(navList, detailPane, payload); buildSpawnersSection(navList, detailPane, payload); buildDroppedItemsSection(navList, detailPane, payload); + buildCavesSection(navList, detailPane, payload); // Fit the nav panel to the category labels now that they all exist. autoSizeNavPanel(); diff --git a/rust_parser/core/src/gamedata/mod.rs b/rust_parser/core/src/gamedata/mod.rs index f9f103a..1b71347 100644 --- a/rust_parser/core/src/gamedata/mod.rs +++ b/rust_parser/core/src/gamedata/mod.rs @@ -6,8 +6,9 @@ //! //! - game_data/sav_data/*.json: committed world tables regenerated from the //! game's level exports by game_data/extractors/extract_collectables.py -//! (key order load-bearing and preserved across regenerations), plus two -//! hand-curated files (readableNameCorrections.json, typePaths.json). +//! (key order load-bearing and preserved across regenerations) and +//! extract_caves.py (caves.json), plus two hand-curated files +//! (readableNameCorrections.json, typePaths.json). //! - game_data/generated/*.json + game_data/category*.json: extracted from //! the game's Docs.json by game_data/extractors/extract_docs_json.py (gitignored, //! regenerable; documented in game_data/SCHEMA.md). @@ -49,6 +50,34 @@ pub struct CreatureInfo { /// creatureSpawners.json: {creatureShortClass|"unknown": {instancePathName: [x,y,z]}} pub type CreatureSpawnerMap = IndexMap>; +/// caves.json: one connected cave system, traced from the cooked level data +/// (see game_data/extractors/extract_caves.py). Static world geometry -- the +/// same for every save, like the creature spawners. +#[derive(Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct Cave { + pub id: String, + /// The game's own name for the cave, when it named it; else None (the + /// payload numbers those instead). + pub name: Option, + /// [minX, minY, maxX, maxY] in world cm. + pub bbox: [f64; 4], + /// [minZ, maxZ] in world cm; None when no source carried a Z. + pub z_range: Option<[f64; 2]>, + pub area_m2: f64, + /// Atmosphere volume actor names inside this cave (traceability only). + #[allow(dead_code)] + pub volumes: Vec, + /// Outer rings, each a flat [x0, y0, x1, y1, ...] loop in world cm; the + /// first point is NOT repeated at the end. + pub rings: Vec>, +} + +#[derive(Deserialize)] +pub struct Caves { + pub caves: Vec, +} + #[derive(Deserialize)] #[serde(rename_all = "camelCase")] pub struct TypePaths { @@ -70,6 +99,7 @@ pub struct GameData { pub free_dropped_items: IndexMap>, pub readable_name_corrections: IndexMap, pub type_paths: TypePaths, + pub caves: Caves, // -- game_data/generated/ + game_data/ (Docs.json extracts) -- // Kept as ordered JSON maps: consumers pick the fields they need, and @@ -116,6 +146,7 @@ pub fn get() -> &'static GameData { embed!("sav_data/readableNameCorrections.json"), ), type_paths: parse("typePaths.json", embed!("sav_data/typePaths.json")), + caves: parse("caves.json", embed!("sav_data/caves.json")), building_categories: parse( "buildingCategories.json", embed!("generated/buildingCategories.json"), @@ -176,6 +207,14 @@ mod tests { assert!(d.mercer_spheres.len() > 200); assert!(d.crash_sites.len() > 90); assert!(d.free_dropped_items.len() >= 50); + assert!(d.caves.caves.len() > 50, "caves {}", d.caves.caves.len()); + assert!(d.caves.caves.iter().all(|c| !c.rings.is_empty())); + // Every ring is a flat x,y list of at least a triangle. + assert!(d + .caves + .caves + .iter() + .all(|c| c.rings.iter().all(|r| r.len() >= 6 && r.len() % 2 == 0))); assert!(d.buildings.len() > 400); assert!(d.recipes.len() > 300); assert!(d.schematics.len() > 200); diff --git a/rust_parser/core/src/mapdata/collectors/mod.rs b/rust_parser/core/src/mapdata/collectors/mod.rs index 304650d..a607955 100644 --- a/rust_parser/core/src/mapdata/collectors/mod.rs +++ b/rust_parser/core/src/mapdata/collectors/mod.rs @@ -1,7 +1,8 @@ -//! The 18 payload collectors, one module per _payloadSteps entry. Each is an +//! The 19 payload collectors, one module per _payloadSteps entry. Each is an //! exact behavioral port of its Python namesake in map/sav_map_data.py -- -//! except "spawners", which post-dates the Python implementation (static -//! world data, no save input; see simple::collect_spawners). +//! except "spawners" and "caves", which post-date the Python implementation +//! (static world data, no save input; see simple::collect_spawners and +//! simple::collect_caves). pub mod buildings; pub mod lines; @@ -27,6 +28,7 @@ pub fn registry() -> Vec<(&'static str, Collector)> { ("players", simple::collect_players), ("creatures", simple::collect_creatures), ("spawners", simple::collect_spawners), + ("caves", simple::collect_caves), ("hub", simple::collect_hub), ("gameSettings", simple::collect_game_settings), ("vehicles", simple::collect_vehicles), @@ -42,7 +44,7 @@ pub fn registry() -> Vec<(&'static str, Collector)> { /// _payloadSteps key order -- payload keys must appear in this order /// regardless of which subset is requested. -pub const STEP_ORDER: [&str; 18] = [ +pub const STEP_ORDER: [&str; 19] = [ "buildingCategories", "resourceNodes", "collectables", @@ -50,6 +52,7 @@ pub const STEP_ORDER: [&str; 18] = [ "players", "creatures", "spawners", + "caves", "vehicles", "trains", "droppedItems", diff --git a/rust_parser/core/src/mapdata/collectors/simple.rs b/rust_parser/core/src/mapdata/collectors/simple.rs index 000f9e0..e4ec706 100644 --- a/rust_parser/core/src/mapdata/collectors/simple.rs +++ b/rust_parser/core/src/mapdata/collectors/simple.rs @@ -152,6 +152,87 @@ pub fn collect_spawners(_scan: &SaveScan) -> Value { Value::Array(entries.into_iter().map(|(_, _, v)| v).collect()) } +/// Cave outlines -- static world data (the embedded caves.json, see +/// game_data/extractors/extract_caves.py), not save actors: nothing in a save +/// records a cave, so the cooked level data is the only source and the result +/// is the same for every save. +/// +/// One entry per outline ring, in caves.json order (north to south), so the +/// frontend can hand the whole thing to one line bucket: `polylines` are +/// closed loops in map pixels with the cave's floor altitude as z, and the +/// parallel `labels`/`areas`/`depths` arrays carry what the tooltip shows. +/// Caves the game never named are numbered by that same order, so every label +/// is unique and stable across loads. +pub fn collect_caves(_scan: &SaveScan) -> Value { + caves_value() +} + +fn caves_value() -> Value { + let mut polylines: Vec = Vec::new(); + let mut ids: Vec = Vec::new(); + let mut labels: Vec = Vec::new(); + let mut areas: Vec = Vec::new(); + let mut depths: Vec = Vec::new(); + for (index, cave) in gamedata::get().caves.caves.iter().enumerate() { + let label = cave.name.clone().unwrap_or_else(|| format!("Cave {}", index + 1)); + // Altitude of the cave floor: what the altitude slider filters on, and + // what the tooltip reports as depth. No zRange (a cave traced purely + // from mesh origins) sinks to 0 rather than dropping the ring. + let [min_z, max_z] = cave.z_range.unwrap_or([0.0, 0.0]); + for (ring_index, ring) in cave.rings.iter().enumerate() { + let mut points: Vec = Vec::with_capacity(ring.len() / 2 * 3 + 3); + for pair in ring.chunks_exact(2) { + let [px, py] = project_xy(pair[0], pair[1]); + points.push(jnum(px)); + points.push(jnum(py)); + points.push(jnum(world_z_to_meters(min_z))); + } + if points.len() < 9 { + continue; // fewer than three vertices: not a ring + } + // Close the loop: the line renderer draws an open polyline. + let first = [points[0].clone(), points[1].clone(), points[2].clone()]; + points.extend(first); + polylines.push(Value::Array(points)); + ids.push(Value::String(format!("{}#{}", cave.id, ring_index))); + labels.push(Value::String(label.clone())); + areas.push(jnum(cave.area_m2)); + depths.push(json!([jnum(world_z_to_meters(min_z)), jnum(world_z_to_meters(max_z))])); + } + } + json!({ + "polylines": polylines, + "ids": ids, + "labels": labels, + "areas": areas, + "depths": depths, + }) +} + +#[cfg(test)] +mod cave_tests { + use super::*; + + #[test] + fn every_cave_ring_is_a_closed_loop_with_a_unique_label() { + let caves = caves_value(); + let polylines = caves["polylines"].as_array().unwrap(); + assert!(polylines.len() >= gamedata::get().caves.caves.len()); + for ring in polylines { + let points = ring.as_array().unwrap(); + assert!(points.len() >= 12 && points.len() % 3 == 0, "ring of {} values", points.len()); + assert_eq!(&points[0..3], &points[points.len() - 3..], "ring not closed"); + } + let labels: Vec<&str> = + caves["labels"].as_array().unwrap().iter().map(|l| l.as_str().unwrap()).collect(); + assert_eq!(labels.len(), polylines.len()); + let ids: Vec<&str> = + caves["ids"].as_array().unwrap().iter().map(|i| i.as_str().unwrap()).collect(); + let unique: std::collections::HashSet<&&str> = ids.iter().collect(); + assert_eq!(unique.len(), ids.len(), "duplicate ring id"); + } +} + #[cfg(test)] mod spawner_label_tests { use super::*; diff --git a/rust_parser/core/src/mapdata/mod.rs b/rust_parser/core/src/mapdata/mod.rs index 4204320..bb7dce7 100644 --- a/rust_parser/core/src/mapdata/mod.rs +++ b/rust_parser/core/src/mapdata/mod.rs @@ -24,9 +24,9 @@ use crate::store::SaveStore; use scan::SaveScan; use serde_json::{json, Value}; -/// 18 payload steps (sav_map_data._BUILD_STEP_COUNT's 17 + the static -/// spawners step) + the save index. -pub const BUILD_STEP_COUNT: u64 = 18 + 1; +/// 19 payload steps (sav_map_data._BUILD_STEP_COUNT's 17 + the static +/// spawners and caves steps) + the save index. +pub const BUILD_STEP_COUNT: u64 = 19 + 1; /// Desc_ classes in readableNameCorrections that are NOT items: the game's /// creature descriptors (FGCreatureDescriptor, plus the two enemy-group diff --git a/rust_parser/wasm/src/lib.rs b/rust_parser/wasm/src/lib.rs index 4f1eefc..8494235 100644 --- a/rust_parser/wasm/src/lib.rs +++ b/rust_parser/wasm/src/lib.rs @@ -201,9 +201,9 @@ impl SaveSession { .map_err(|e| JsError::new(&e.msg))?; drop(bytes); - // 18 payload steps + the index build = BUILD_STEP_COUNT ticks (same - // shape as Python's buildAll, plus the static spawners step); one - // shared SaveScan for both. + // 19 payload steps + the index build = BUILD_STEP_COUNT ticks (same + // shape as Python's buildAll, plus the static spawners and caves + // steps); one shared SaveScan for both. let mut build_progress = |current: u64, total: u64| call(2, current, total); let (payload_json, index) = mapdata::build_all_json(&store, Some(&mut build_progress)) From 7214044078f10c54540ee543075c824166bc57c5 Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Tue, 28 Jul 2026 23:35:38 +0200 Subject: [PATCH 02/12] game_data: extract the world perimeter and the water limit Two invisible edges, both authored level geometry with no representation in a save: - The damaging border is 15 FGDamageOverTimeVolume actors whose DoT class comes from /World/Hazard/WorldPerimeter/. Eleven are vertical walls (four axis-aligned, three rotated blocks cutting the NE/NW/SW corners, four more as an outer backstop); the safe side is a 7-vertex polygon, 7915 x 7049 m. The other four span the whole world in XY and are altitude limits instead: damage above +2000 m and below -244 m. - The water limit is the union of the 270 FGWaterVolume actors (all carry mResourceClass Desc_Water_C, i.e. swimmable and extractor-valid). The rendered ocean is a different thing entirely: 31 water-plane patches, the biggest 51 x 34 km, so the sea you can see runs ~70 km while the water you can touch stops within ~8 km -- on the west side the real water ends 334 m before the damage wall, with visual-only ocean in between. The perimeter polygon is written as an exact half-plane intersection of the wall boxes and cross-checked both ways against an independent rasterize-and- trace of the same volumes (they agree to 40 cm shy of a cell). Co-Authored-By: Claude Opus 5 (1M context) --- game_data/extractors/extract_world_bounds.py | 620 ++++++++++ game_data/sav_data/worldBounds.json | 1088 ++++++++++++++++++ 2 files changed, 1708 insertions(+) create mode 100644 game_data/extractors/extract_world_bounds.py create mode 100644 game_data/sav_data/worldBounds.json diff --git a/game_data/extractors/extract_world_bounds.py b/game_data/extractors/extract_world_bounds.py new file mode 100644 index 0000000..a89011a --- /dev/null +++ b/game_data/extractors/extract_world_bounds.py @@ -0,0 +1,620 @@ +"""Extract the map's two invisible limits -- the damaging world perimeter and +the edge of the real water -- into game_data/sav_data/worldBounds.json. + +Both are authored level geometry with no representation in a save, so the +cooked world-partition export under /FactoryGame/Map/GameLevel01/ is +the only source (same dump extract_collectables.py reads). + +1. PERIMETER -- `FGDamageOverTimeVolume` actors whose `mDotComponent` carries + mDotClass `BP_DoTWorldPerimeter_C` + (/FactoryGame/World/Hazard/WorldPerimeter/): the volumes that hurt you for + leaving the map. 15 of them, each a box brush (its shape survives the cook + as the BrushComponent's BrushBodySetup.AggGeom convex hull, in component + space): + + - 11 are vertical walls: four axis-aligned slabs (N/S/E/W), three rotated + blocks that cut the NE/NW/SW corners diagonally -- the NE one is what + fences off the big empty landmass in the top-right of the map render, + which carries no resource nodes because you are not meant to stand on it + -- and four more slabs 1-2 km further out that act as a backstop. + - 4 are horizontal slabs spanning the whole world in XY: the ceiling and + the floor. Those are reported as altitudes, not as part of the polygon. + + The polygon written out is the SAFE side: the union of the wall footprints + is rasterized, the cell holding the world center is flood-filled, and that + region's outline is traced. Its edges are the inner faces of the walls -- + cross one and the damage starts. + +2. WATER -- `FGWaterVolume` actors (all 279 carry mResourceClass + Desc_Water_C, i.e. this is the water a Water Extractor accepts and the + water you can swim in). Their footprints are unioned the same way and the + OUTER ring of the largest connected body is written out: the ocean's real + edge. + + This matters because the ocean you can SEE goes far past it. The visual + surface is drawn by 31 `BPW_OceanSplineTool_02_C` water-plane patches, + three of which are 51 km x 34 km -- the water volumes stop within ~8 km of + the map center. Between the two limits the ocean renders normally but has + no water body in it: nothing to swim in, nothing for an extractor. + + Read the ring for what it is: the line where water stops, ALL the way + round. Offshore that is the answer to "how far out does the sea go"; where + it runs across land it is the edge of the box a lake or river volume is + built from (those boxes overlap their own banks), which is the same + statement -- no water past this line -- but says nothing new about the + coast, which the map render already draws. `extentBbox` is the blunt + version: no water exists outside that rectangle at all. + +Caveats, deliberate: + - A water volume is a 3D box, so its footprint covers the shoreline and + some land as well; only the OUTER boundary of the union is meaningful + here, which is what gets written. Do not read the polygon as "this is + where water is" -- read it as "outside this, there is none". + - Both outlines are traced on a GRID_CM raster, so they are accurate to + about one cell, and the perimeter's straight walls come out as their + exact inner faces (verified against a half-plane intersection of the same + volumes -- see the self-check in buildPerimeter). + - Nothing here is save-dependent: the table is identical for every world. + + py game_data/extractors/extract_world_bounds.py [path/to/extraction/.../Content] + +Re-run whenever the extraction dump is refreshed (new game patch), and review +the git diff: this file is committed (the app must work without game files). + +Shape (worldBounds.json): + {"perimeter": {"polygon": [[x, y], ...], "ceilingZ": z, "floorZ": z, + "wallVolumes": n, "altitudeVolumes": n}, + "water": {"outerRing": [[x, y], ...], "extentBbox": [...], "bodies": n, + "volumes": n, "visualOceanBbox": [...]}} + +- polygon / outerRing: closed loops in world cm (integers, first point not + repeated at the end). +- ceilingZ / floorZ: world cm. Above ceilingZ, or below floorZ, the vertical + damage slabs start. floorZ is the one you meet by diving. +- extentBbox: [minX, minY, maxX, maxY] over every water volume -- the + rectangle outside which there is no water at all. +- visualOceanBbox: [minX, minY, maxX, maxY] of the rendered ocean planes -- + the far larger area the water *looks* like it covers. +""" + +import json +import math +import os +import re +import sys + +REPO_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +DEFAULT_CONTENT_ROOT = r"C:\Users\plane.DESKTOP-SAH3OHV\Documents\SatisExtract\FactoryGame\Content" +LEVEL_SUBDIR = os.path.join("FactoryGame", "Map", "GameLevel01") +OUTPUT_PATH = os.path.join(REPO_ROOT, "game_data", "sav_data", "worldBounds.json") + +NEEDLES = (b"FGDamageOverTimeVolume", b"FGWaterVolume", b"OceanSplineTool") +# The three damage classes that make up the map's edge, all under +# /FactoryGame/World/Hazard/WorldPerimeter/. The split between them is not +# geometric -- the four outermost backstop walls are tagged ...Bottom_C, and +# one ceiling slab is too -- so this script classifies by SHAPE (a slab that +# spans the whole world in XY is an altitude limit, anything else is a wall) +# and uses the class only to recognise a damage volume as part of the edge. +PERIMETER_DOT_CLASSES = ("BP_DoTWorldPerimeter_C", "BP_DoTWorldTop_C", "BP_DoTWorldBottom_C") +WATER_RESOURCE = "Desc_Water_C" + +# 20 m cells: the walls are kilometers long and the water edge is a staircase +# of volume corners, so nothing finer would say anything more. +GRID_CM = 2000.0 +# A volume covering more than this in BOTH axes is a ceiling/floor slab, not a +# wall (the real walls are at most ~10 km long on one axis, ~2.4 km on the +# other; the horizontal slabs span the full 10 km x 10 km world). +WORLD_SPAN_CM = 900000.0 +# Trace tolerance, in cells. The water edge is a staircase of volume corners, +# so it keeps a looser one -- 30 m of detail there says nothing. +SIMPLIFY_CELLS = 0.75 +WATER_SIMPLIFY_CELLS = 1.5 +# Grid extent: everything of interest is within +-8 km of the origin; the +# rendered ocean planes (tens of km) are deliberately NOT rasterized. +WORLD_LIMIT_CM = 800000.0 + + +# --------------------------------------------------------------------------- +# Dump walk +# --------------------------------------------------------------------------- + +def rotMatrix(pitch, yaw, roll): + p, y, r = math.radians(pitch), math.radians(yaw), math.radians(roll) + cp, sp = math.cos(p), math.sin(p) + cy, sy = math.cos(y), math.sin(y) + cr, sr = math.cos(r), math.sin(r) + return ( + (cp * cy, cp * sy, sp), + (sr * sp * cy - cr * sy, sr * sp * sy + cr * cy, -sr * cp), + (-(cr * sp * cy + sr * sy), cy * sr - cr * sp * sy, cr * cp), + ) + + +def toWorld(loc, rot, scale, point): + m = rotMatrix(*rot) + x, y, z = point[0] * scale[0], point[1] * scale[1], point[2] * scale[2] + return (loc[0] + x * m[0][0] + y * m[1][0] + z * m[2][0], + loc[1] + x * m[0][1] + y * m[1][1] + z * m[2][1], + loc[2] + x * m[0][2] + y * m[1][2] + z * m[2][2]) + + +def exportIndex(reference): + if not isinstance(reference, dict): + return None + match = re.search(r"\.(\d+)$", reference.get("ObjectPath") or "") + return int(match.group(1)) if match else None + + +def quotedName(objectField): + if not objectField: + return None + name = objectField.get("ObjectName", "") + return name.split("'")[1] if "'" in name else None + + +def brushHulls(exports, props, resolve): + """World-space convex hulls of a brush actor, plus its component transform.""" + comp = resolve(props.get("BrushComponent") or props.get("RootComponent")) + if not comp: + return [], None + cp = comp.get("Properties") or {} + loc = cp.get("RelativeLocation") or {} + rot = cp.get("RelativeRotation") or {} + scale = cp.get("RelativeScale3D") or {} + transform = ([loc.get("X", 0.0), loc.get("Y", 0.0), loc.get("Z", 0.0)], + [rot.get("Pitch", 0.0), rot.get("Yaw", 0.0), rot.get("Roll", 0.0)], + [scale.get("X", 1.0), scale.get("Y", 1.0), scale.get("Z", 1.0)]) + body = resolve(cp.get("BrushBodySetup")) + hulls = [] + for elem in ((body or {}).get("Properties") or {}).get("AggGeom", {}).get("ConvexElems") or []: + verts = [toWorld(*transform, (v["X"], v["Y"], v["Z"])) for v in elem.get("VertexData") or []] + if verts: + hulls.append(verts) + return hulls, transform + + +def collectSources(contentRoot, warnings): + """(perimeterVolumes, waterVolumes, oceanPlaneBounds) from one dump walk.""" + levelRoot = os.path.join(contentRoot, LEVEL_SUBDIR) + if not os.path.isdir(levelRoot): + raise SystemExit(f"Level export dir not found: {levelRoot}") + perimeter, water, oceanBounds = {}, {}, [] + for dirPath, _, fileNames in os.walk(levelRoot): + for fileName in sorted(fileNames): + if not fileName.endswith(".json"): + continue + with open(os.path.join(dirPath, fileName), "rb") as f: + raw = f.read() + if not any(needle in raw for needle in NEEDLES): + continue + try: + exports = json.loads(raw) + except json.JSONDecodeError: + continue + if not isinstance(exports, list): + continue + + def resolve(reference): + index = exportIndex(reference) + if index is None or not 0 <= index < len(exports): + return None + return exports[index] + + for obj in exports: + objType = obj.get("Type", "") + name = obj.get("Name") + props = obj.get("Properties") or {} + + if objType == "FGDamageOverTimeVolume": + dot = resolve(props.get("mDotComponent")) + dotClass = quotedName((dot or {}).get("Properties", {}).get("mDotClass")) + if dotClass not in PERIMETER_DOT_CLASSES: + warnings.append(f"{name}: damage volume with mDotClass {dotClass!r}, " + f"which is not one of the world-edge classes -- skipped " + f"(a new hazard type? check whether it fences the map)") + continue + hulls, _ = brushHulls(exports, props, resolve) + if not hulls: + warnings.append(f"{name}: perimeter volume with no brush geometry") + continue + perimeter[name] = (dotClass, hulls) + + elif objType == "FGWaterVolume": + resource = quotedName(props.get("mResourceClass")) + if resource != WATER_RESOURCE: + warnings.append(f"{name}: water volume yields {resource!r}, not " + f"{WATER_RESOURCE} -- skipped") + continue + hulls, _ = brushHulls(exports, props, resolve) + if not hulls: + # 9 of these exist: no transform, no body setup, no + # geometry at all in the dump -- editor leftovers. + continue + water[name] = hulls + + elif objType == "BPW_OceanSplineTool_02_C": + lo, hi = props.get("Bounds Min") or {}, props.get("Bounds Max") or {} + if "X" in lo and "X" in hi: + oceanBounds.append([lo["X"], lo["Y"], hi["X"], hi["Y"]]) + return perimeter, water, oceanBounds + + +# --------------------------------------------------------------------------- +# Raster helpers (same approach as extract_caves.py, at a coarser grid) +# --------------------------------------------------------------------------- + +class Grid: + def __init__(self, minX, minY, maxX, maxY): + self.originX, self.originY = minX, minY + self.width = int((maxX - minX) / GRID_CM) + 2 + self.height = int((maxY - minY) / GRID_CM) + 2 + self.cells = bytearray(self.width * self.height) + + def cellOf(self, x, y): + return (int((x - self.originX) / GRID_CM), int((y - self.originY) / GRID_CM)) + + def worldOf(self, cx, cy): + return (self.originX + cx * GRID_CM, self.originY + cy * GRID_CM) + + def fillPolygon(self, points): + if len(points) < 3: + return + cellPoints = [((px - self.originX) / GRID_CM, (py - self.originY) / GRID_CM) + for px, py in points] + yMin = max(int(math.floor(min(p[1] for p in cellPoints))), 0) + yMax = min(int(math.ceil(max(p[1] for p in cellPoints))), self.height - 1) + for cy in range(yMin, yMax + 1): + scanY = cy + 0.5 + crossings = [] + for i in range(len(cellPoints)): + ax, ay = cellPoints[i] + bx, by = cellPoints[(i + 1) % len(cellPoints)] + if (ay <= scanY < by) or (by <= scanY < ay): + crossings.append(ax + (scanY - ay) * (bx - ax) / (by - ay)) + crossings.sort() + row = cy * self.width + for i in range(0, len(crossings) - 1, 2): + cx0 = max(int(math.floor(crossings[i])), 0) + cx1 = min(int(math.ceil(crossings[i + 1])), self.width - 1) + for cx in range(cx0, cx1 + 1): + self.cells[row + cx] = 1 + + +def convexHull2d(points): + pts = sorted(set((round(p[0], 2), round(p[1], 2)) for p in points)) + if len(pts) < 3: + return pts + + def cross(o, a, b): + return (a[0] - o[0]) * (b[1] - o[1]) - (a[1] - o[1]) * (b[0] - o[0]) + + lower = [] + for p in pts: + while len(lower) >= 2 and cross(lower[-2], lower[-1], p) <= 0: + lower.pop() + lower.append(p) + upper = [] + for p in reversed(pts): + while len(upper) >= 2 and cross(upper[-2], upper[-1], p) <= 0: + upper.pop() + upper.append(p) + return lower[:-1] + upper[:-1] + + +def floodFrom(grid, startCell, wanted): + """Cells reachable from startCell through cells whose value == wanted.""" + sx, sy = startCell + start = sy * grid.width + sx + if grid.cells[start] != wanted: + return [] + seen = bytearray(len(grid.cells)) + seen[start] = 1 + stack, cells = [start], [] + while stack: + index = stack.pop() + cx, cy = index % grid.width, index // grid.width + cells.append((cx, cy)) + for nx, ny in ((cx - 1, cy), (cx + 1, cy), (cx, cy - 1), (cx, cy + 1)): + if not (0 <= nx < grid.width and 0 <= ny < grid.height): + continue + n = ny * grid.width + nx + if grid.cells[n] == wanted and not seen[n]: + seen[n] = 1 + stack.append(n) + return cells + + +def connectedComponents(grid): + seen = bytearray(len(grid.cells)) + out = [] + for start in range(len(grid.cells)): + if not grid.cells[start] or seen[start]: + continue + stack, cells = [start], [] + seen[start] = 1 + while stack: + index = stack.pop() + cx, cy = index % grid.width, index // grid.width + cells.append((cx, cy)) + for nx, ny in ((cx - 1, cy), (cx + 1, cy), (cx, cy - 1), (cx, cy + 1)): + if not (0 <= nx < grid.width and 0 <= ny < grid.height): + continue + n = ny * grid.width + nx + if grid.cells[n] and not seen[n]: + seen[n] = 1 + stack.append(n) + out.append(cells) + return out + + +def traceRings(cells): + """Outer rings of a cell set, in cell-corner coordinates (see extract_caves).""" + filled = set(cells) + edges = {} + for cx, cy in filled: + if (cx, cy - 1) not in filled: + edges.setdefault((cx, cy), []).append((cx + 1, cy)) + if (cx + 1, cy) not in filled: + edges.setdefault((cx + 1, cy), []).append((cx + 1, cy + 1)) + if (cx, cy + 1) not in filled: + edges.setdefault((cx + 1, cy + 1), []).append((cx, cy + 1)) + if (cx - 1, cy) not in filled: + edges.setdefault((cx, cy + 1), []).append((cx, cy)) + rings = [] + while edges: + start = next(iter(edges)) + ring, current, previous = [start], start, None + while True: + options = edges.get(current) + if not options: + break + if len(options) == 1 or previous is None: + nextPoint = options.pop() + else: + inX, inY = current[0] - previous[0], current[1] - previous[1] + + def turn(option): + outX, outY = option[0] - current[0], option[1] - current[1] + return math.atan2(inX * outY - inY * outX, inX * outX + inY * outY) + + nextPoint = min(options, key=turn) + options.remove(nextPoint) + if not edges[current]: + del edges[current] + previous, current = current, nextPoint + if current == start: + break + ring.append(current) + if len(ring) < 4: + continue + area = 0.0 + for i in range(len(ring)): + ax, ay = ring[i] + bx, by = ring[(i + 1) % len(ring)] + area += ax * by - bx * ay + if area > 0: + rings.append((ring, area)) + rings.sort(key=lambda r: -r[1]) + return [r[0] for r in rings] + + +def simplifyRing(points, epsilon): + if len(points) < 4: + return points + + def rdp(chunk): + if len(chunk) < 3: + return chunk + ax, ay = chunk[0] + bx, by = chunk[-1] + dx, dy = bx - ax, by - ay + norm = math.hypot(dx, dy) + worst, worstIndex = -1.0, 0 + for i in range(1, len(chunk) - 1): + px, py = chunk[i] + distance = (math.hypot(px - ax, py - ay) if norm == 0 + else abs(dy * px - dx * py + bx * ay - by * ax) / norm) + if distance > worst: + worst, worstIndex = distance, i + if worst <= epsilon: + return [chunk[0], chunk[-1]] + return rdp(chunk[:worstIndex + 1])[:-1] + rdp(chunk[worstIndex:]) + + startIndex = min(range(len(points)), key=lambda i: points[i]) + rotated = points[startIndex:] + points[:startIndex] + half = len(rotated) // 2 + return rdp(rotated[:half + 1])[:-1] + rdp(rotated[half:] + [rotated[0]])[:-1] + + +# --------------------------------------------------------------------------- +# The two boundaries +# --------------------------------------------------------------------------- + +def clipHalfPlane(polygon, point, normal): + """Sutherland-Hodgman clip to {X : (X - point) . normal <= 0}.""" + out = [] + for i in range(len(polygon)): + a, b = polygon[i], polygon[(i + 1) % len(polygon)] + da = (a[0] - point[0]) * normal[0] + (a[1] - point[1]) * normal[1] + db = (b[0] - point[0]) * normal[0] + (b[1] - point[1]) * normal[1] + if da <= 0: + out.append(a) + if (da <= 0) != (db <= 0): + t = da / (da - db) + out.append((a[0] + (b[0] - a[0]) * t, a[1] + (b[1] - a[1]) * t)) + return out + + +def exactSafePolygon(walls, center): + """The safe area as an exact half-plane intersection. + + Each wall is a convex box, so "outside this wall" is a half-plane bounded + by the box face nearest the map center. Used to check the rasterized + outline, which is what actually gets written (it does not assume the + result is convex). + """ + limit = WORLD_LIMIT_CM + polygon = [(-limit, -limit), (limit, -limit), (limit, limit), (-limit, limit)] + for hulls in walls.values(): + verts = [p for hull in hulls for p in hull] + cx = sum(v[0] for v in verts) / len(verts) + cy = sum(v[1] for v in verts) / len(verts) + best = None + # Box axes recovered from the footprint hull: the two edge directions. + footprint = convexHull2d([(v[0], v[1]) for v in verts]) + for i in range(len(footprint)): + ax, ay = footprint[i] + bx, by = footprint[(i + 1) % len(footprint)] + ex, ey = bx - ax, by - ay + length = math.hypot(ex, ey) + if length < 1.0: + continue + # Outward normal of this edge (footprint is counter-clockwise). + nx, ny = ey / length, -ex / length + # Distance from the center to this edge's line, positive outside. + distance = (center[0] - ax) * nx + (center[1] - ay) * ny + if distance > 0 and (best is None or distance > best[0]): + best = (distance, (ax, ay), (-nx, -ny)) + if best: + polygon = clipHalfPlane(polygon, best[1], best[2]) + return polygon + + +def pointToPolygonDistance(point, polygon): + best = float("inf") + for i in range(len(polygon)): + ax, ay = polygon[i] + bx, by = polygon[(i + 1) % len(polygon)] + ex, ey = bx - ax, by - ay + length2 = ex * ex + ey * ey + t = 0.0 if length2 == 0 else max(0.0, min(1.0, ((point[0] - ax) * ex + (point[1] - ay) * ey) / length2)) + best = min(best, math.hypot(point[0] - (ax + ex * t), point[1] - (ay + ey * t))) + return best + + +def buildPerimeter(perimeter, warnings): + walls, altitude = {}, {} + for name, (_dotClass, hulls) in perimeter.items(): + verts = [p for hull in hulls for p in hull] + spanX = max(v[0] for v in verts) - min(v[0] for v in verts) + spanY = max(v[1] for v in verts) - min(v[1] for v in verts) + if spanX > WORLD_SPAN_CM and spanY > WORLD_SPAN_CM: + altitude[name] = (min(v[2] for v in verts), max(v[2] for v in verts)) + else: + walls[name] = hulls + if not walls: + raise SystemExit("No perimeter wall volumes found -- wrong Content path?") + + # The world center, i.e. a point that is certainly inside: the altitude + # slabs are centered on it (they span the whole world). + if altitude: + anyName = next(iter(altitude)) + verts = [p for hull in perimeter[anyName][1] for p in hull] + center = (sum(v[0] for v in verts) / len(verts), sum(v[1] for v in verts) / len(verts)) + else: + center = (0.0, 0.0) + + # Each wall is a convex box, so the safe area is the intersection of one + # half-plane per wall (bounded by the box face nearest the center). That + # is exact -- straight walls come out as their true inner faces, and the + # three diagonal corner cuts as three clean lines. + exact = exactSafePolygon(walls, center) + polygon = [[round(x), round(y)] for x, y in exact] + + # ...but "intersection of half-planes" is only the right model if the + # walls really do enclose a convex area. Cross-check against a model that + # assumes nothing: rasterize the walls, flood-fill from the center, trace + # that region. The two outlines must agree to within a couple of cells in + # BOTH directions (one-way would pass even if the raster region were far + # bigger than the convex one). + grid = Grid(-WORLD_LIMIT_CM, -WORLD_LIMIT_CM, WORLD_LIMIT_CM, WORLD_LIMIT_CM) + for hulls in walls.values(): + for hull in hulls: + footprint = convexHull2d([(p[0], p[1]) for p in hull]) + if len(footprint) >= 3: + grid.fillPolygon(footprint) + safeCells = floodFrom(grid, grid.cellOf(*center), 0) + if not safeCells: + raise SystemExit("World center is inside a perimeter wall -- geometry changed?") + traced = [grid.worldOf(cx, cy) for cx, cy in simplifyRing(traceRings(safeCells)[0], SIMPLIFY_CELLS)] + worst = max(max(pointToPolygonDistance(p, traced) for p in exact), + max(pointToPolygonDistance(p, exact) for p in traced)) + if worst > 3 * GRID_CM: + warnings.append(f"the exact and rasterized perimeters disagree by up to {worst:.0f} cm " + f"(expected under {3 * GRID_CM:.0f}) -- the walls may no longer enclose " + f"a convex area, in which case the written polygon is wrong") + + ceiling = min((lo for lo, _hi in altitude.values() if lo > 0), default=None) + floor = max((hi for _lo, hi in altitude.values() if hi < 0), default=None) + return { + "polygon": polygon, + "ceilingZ": round(ceiling) if ceiling is not None else None, + "floorZ": round(floor) if floor is not None else None, + "wallVolumes": len(walls), + "altitudeVolumes": len(altitude), + }, worst + + +def buildWater(water, oceanBounds): + grid = Grid(-WORLD_LIMIT_CM, -WORLD_LIMIT_CM, WORLD_LIMIT_CM, WORLD_LIMIT_CM) + for hulls in water.values(): + for hull in hulls: + footprint = convexHull2d([(p[0], p[1]) for p in hull]) + if len(footprint) >= 3: + grid.fillPolygon(footprint) + components = connectedComponents(grid) + components.sort(key=len, reverse=True) + # The ocean and everything draining into it are one component holding + # ~95% of all water footprint; the rest are inland lakes well inside it. + rings = traceRings(components[0]) + ring = simplifyRing(rings[0], WATER_SIMPLIFY_CELLS) + outer = [[round(grid.worldOf(cx, cy)[0]), round(grid.worldOf(cx, cy)[1])] for cx, cy in ring] + bbox = None + if oceanBounds: + bbox = [round(min(b[0] for b in oceanBounds)), round(min(b[1] for b in oceanBounds)), + round(max(b[2] for b in oceanBounds)), round(max(b[3] for b in oceanBounds))] + allVerts = [p for hulls in water.values() for hull in hulls for p in hull] + return { + "outerRing": outer, + "extentBbox": [round(min(v[0] for v in allVerts)), round(min(v[1] for v in allVerts)), + round(max(v[0] for v in allVerts)), round(max(v[1] for v in allVerts))], + "bodies": len(components), + "volumes": len(water), + "visualOceanBbox": bbox, + } + + +def main(): + argv = sys.argv[1:] + contentRoot = argv[0] if argv else DEFAULT_CONTENT_ROOT + warnings = [] + perimeterVolumes, waterVolumes, oceanBounds = collectSources(contentRoot, warnings) + print(f"Sources: {len(perimeterVolumes)} world-perimeter damage volumes, " + f"{len(waterVolumes)} water volumes, {len(oceanBounds)} ocean plane patches.") + perimeter, worst = buildPerimeter(perimeterVolumes, warnings) + water = buildWater(waterVolumes, oceanBounds) + + os.makedirs(os.path.dirname(OUTPUT_PATH), exist_ok=True) + with open(OUTPUT_PATH, "w", encoding="utf-8") as f: + json.dump({"perimeter": perimeter, "water": water}, f, ensure_ascii=False, indent=1) + + xs = [p[0] for p in perimeter["polygon"]] + ys = [p[1] for p in perimeter["polygon"]] + wxs = [p[0] for p in water["outerRing"]] + wys = [p[1] for p in water["outerRing"]] + print(f"Perimeter: {len(perimeter['polygon'])} vertices, " + f"X[{min(xs)}, {max(xs)}] Y[{min(ys)}, {max(ys)}] cm " + f"({(max(xs) - min(xs)) / 100:.0f} x {(max(ys) - min(ys)) / 100:.0f} m), " + f"ceiling {perimeter['ceilingZ']}, floor {perimeter['floorZ']} " + f"(exact-vs-traced worst deviation {worst:.0f} cm)") + print(f"Water: {len(water['outerRing'])} vertices, X[{min(wxs)}, {max(wxs)}] " + f"Y[{min(wys)}, {max(wys)}] cm, {water['bodies']} separate bodies") + print(f"Visual ocean planes cover {water['visualOceanBbox']} -- " + f"{(water['visualOceanBbox'][2] - water['visualOceanBbox'][0]) / 100000:.0f} km wide.") + print(f"Wrote {OUTPUT_PATH} ({os.path.getsize(OUTPUT_PATH) / 1024:.0f} KB).") + for warning in warnings: + print(f"WARNING: {warning}") + + +if __name__ == "__main__": + main() diff --git a/game_data/sav_data/worldBounds.json b/game_data/sav_data/worldBounds.json new file mode 100644 index 0000000..2f06cf6 --- /dev/null +++ b/game_data/sav_data/worldBounds.json @@ -0,0 +1,1088 @@ +{ + "perimeter": { + "polygon": [ + [ + 450090, + -33055 + ], + [ + 192002, + 334875 + ], + [ + -237148, + 334875 + ], + [ + -341430, + 84417 + ], + [ + -341430, + -313406 + ], + [ + -232340, + -370000 + ], + [ + 450090, + -370000 + ] + ], + "ceilingZ": 200000, + "floorZ": -24400, + "wallVolumes": 11, + "altitudeVolumes": 4 + }, + "water": { + "outerRing": [ + [ + -310000, + -370000 + ], + [ + 108000, + -368000 + ], + [ + 120000, + -382000 + ], + [ + 126000, + -382000 + ], + [ + 146000, + -364000 + ], + [ + 146000, + -308000 + ], + [ + 172000, + -308000 + ], + [ + 172000, + -266000 + ], + [ + 212000, + -274000 + ], + [ + 216000, + -254000 + ], + [ + 194000, + -250000 + ], + [ + 200000, + -246000 + ], + [ + 198000, + -238000 + ], + [ + 188000, + -238000 + ], + [ + 188000, + -248000 + ], + [ + 174000, + -246000 + ], + [ + 172000, + -224000 + ], + [ + 196000, + -224000 + ], + [ + 196000, + -218000 + ], + [ + 192000, + -218000 + ], + [ + 196000, + -212000 + ], + [ + 194000, + -202000 + ], + [ + 214000, + -198000 + ], + [ + 216000, + -192000 + ], + [ + 228000, + -202000 + ], + [ + 238000, + -200000 + ], + [ + 250000, + -222000 + ], + [ + 246000, + -244000 + ], + [ + 242000, + -234000 + ], + [ + 222000, + -240000 + ], + [ + 228000, + -256000 + ], + [ + 246000, + -252000 + ], + [ + 248000, + -260000 + ], + [ + 248000, + -266000 + ], + [ + 230000, + -276000 + ], + [ + 222000, + -290000 + ], + [ + 226000, + -306000 + ], + [ + 234000, + -306000 + ], + [ + 234000, + -282000 + ], + [ + 250000, + -272000 + ], + [ + 256000, + -272000 + ], + [ + 264000, + -280000 + ], + [ + 262000, + -284000 + ], + [ + 280000, + -284000 + ], + [ + 282000, + -304000 + ], + [ + 292000, + -304000 + ], + [ + 288000, + -278000 + ], + [ + 268000, + -274000 + ], + [ + 256000, + -264000 + ], + [ + 254000, + -242000 + ], + [ + 260000, + -226000 + ], + [ + 256000, + -210000 + ], + [ + 244000, + -196000 + ], + [ + 250000, + -186000 + ], + [ + 228000, + -166000 + ], + [ + 228000, + -162000 + ], + [ + 234000, + -162000 + ], + [ + 232000, + -142000 + ], + [ + 214000, + -144000 + ], + [ + 218000, + -166000 + ], + [ + 208000, + -176000 + ], + [ + 170000, + -176000 + ], + [ + 170000, + -184000 + ], + [ + 180000, + -182000 + ], + [ + 186000, + -206000 + ], + [ + 182000, + -198000 + ], + [ + 156000, + -204000 + ], + [ + 156000, + -186000 + ], + [ + 166000, + -184000 + ], + [ + 166000, + -176000 + ], + [ + 156000, + -178000 + ], + [ + 156000, + -152000 + ], + [ + 134000, + -152000 + ], + [ + 122000, + -132000 + ], + [ + 112000, + -132000 + ], + [ + 102000, + -140000 + ], + [ + 124000, + -140000 + ], + [ + 124000, + -144000 + ], + [ + 116000, + -146000 + ], + [ + 118000, + -152000 + ], + [ + 42000, + -152000 + ], + [ + 42000, + -206000 + ], + [ + -2000, + -206000 + ], + [ + 2000, + -204000 + ], + [ + 0, + -200000 + ], + [ + -6000, + -200000 + ], + [ + -6000, + -206000 + ], + [ + -24000, + -206000 + ], + [ + -24000, + -190000 + ], + [ + -16000, + -188000 + ], + [ + -24000, + -184000 + ], + [ + -24000, + -108000 + ], + [ + -34000, + -108000 + ], + [ + -34000, + -98000 + ], + [ + -14000, + -96000 + ], + [ + -16000, + -84000 + ], + [ + 0, + -74000 + ], + [ + -4000, + -70000 + ], + [ + 0, + -54000 + ], + [ + 14000, + -44000 + ], + [ + 32000, + -42000 + ], + [ + 42000, + -46000 + ], + [ + 42000, + -54000 + ], + [ + 30000, + -56000 + ], + [ + 24000, + -62000 + ], + [ + 36000, + -66000 + ], + [ + 48000, + -60000 + ], + [ + 50000, + -84000 + ], + [ + 62000, + -84000 + ], + [ + 64000, + -78000 + ], + [ + 56000, + -70000 + ], + [ + 54000, + -56000 + ], + [ + 72000, + -50000 + ], + [ + 74000, + -44000 + ], + [ + 90000, + -34000 + ], + [ + 102000, + -32000 + ], + [ + 98000, + -8000 + ], + [ + 86000, + -6000 + ], + [ + 86000, + 0 + ], + [ + 100000, + 4000 + ], + [ + 114000, + 4000 + ], + [ + 136000, + 12000 + ], + [ + 148000, + 8000 + ], + [ + 146000, + 14000 + ], + [ + 176000, + 20000 + ], + [ + 176000, + -14000 + ], + [ + 206000, + -14000 + ], + [ + 202000, + -20000 + ], + [ + 206000, + -28000 + ], + [ + 204000, + -44000 + ], + [ + 214000, + -44000 + ], + [ + 214000, + -30000 + ], + [ + 218000, + -30000 + ], + [ + 214000, + -26000 + ], + [ + 218000, + -16000 + ], + [ + 214000, + -14000 + ], + [ + 316000, + -14000 + ], + [ + 318000, + -48000 + ], + [ + 294000, + -60000 + ], + [ + 318000, + -102000 + ], + [ + 318000, + -112000 + ], + [ + 398000, + -110000 + ], + [ + 398000, + -146000 + ], + [ + 382000, + -146000 + ], + [ + 382000, + -156000 + ], + [ + 398000, + -156000 + ], + [ + 398000, + -212000 + ], + [ + 396000, + -260000 + ], + [ + 514000, + -262000 + ], + [ + 518000, + 70000 + ], + [ + 440000, + 70000 + ], + [ + 440000, + 112000 + ], + [ + 324000, + 110000 + ], + [ + 310000, + 112000 + ], + [ + 310000, + 118000 + ], + [ + 300000, + 118000 + ], + [ + 300000, + 112000 + ], + [ + 282000, + 112000 + ], + [ + 282000, + 108000 + ], + [ + 248000, + 108000 + ], + [ + 248000, + 116000 + ], + [ + 230000, + 118000 + ], + [ + 230000, + 108000 + ], + [ + 176000, + 108000 + ], + [ + 176000, + 82000 + ], + [ + 166000, + 84000 + ], + [ + 66000, + 62000 + ], + [ + 54000, + 58000 + ], + [ + 54000, + 54000 + ], + [ + 48000, + 62000 + ], + [ + 42000, + 62000 + ], + [ + 44000, + 50000 + ], + [ + 56000, + 52000 + ], + [ + 62000, + 22000 + ], + [ + 58000, + 8000 + ], + [ + 50000, + 10000 + ], + [ + 46000, + 6000 + ], + [ + 48000, + 0 + ], + [ + 54000, + 0 + ], + [ + 54000, + -12000 + ], + [ + 42000, + -6000 + ], + [ + 26000, + -10000 + ], + [ + 24000, + -4000 + ], + [ + 30000, + -4000 + ], + [ + 26000, + 10000 + ], + [ + 30000, + 12000 + ], + [ + 22000, + 12000 + ], + [ + 22000, + 16000 + ], + [ + 24000, + 26000 + ], + [ + 34000, + 36000 + ], + [ + 28000, + 46000 + ], + [ + 20000, + 86000 + ], + [ + -8000, + 84000 + ], + [ + -12000, + 98000 + ], + [ + -6000, + 112000 + ], + [ + -24000, + 112000 + ], + [ + -18000, + 102000 + ], + [ + -20000, + 88000 + ], + [ + -16000, + 84000 + ], + [ + -16000, + 80000 + ], + [ + -24000, + 80000 + ], + [ + -18000, + 58000 + ], + [ + -24000, + 50000 + ], + [ + -30000, + 50000 + ], + [ + -32000, + 62000 + ], + [ + -48000, + 60000 + ], + [ + -56000, + 64000 + ], + [ + -62000, + 56000 + ], + [ + -58000, + 52000 + ], + [ + -48000, + 56000 + ], + [ + -46000, + 48000 + ], + [ + -60000, + 48000 + ], + [ + -60000, + 38000 + ], + [ + -74000, + 38000 + ], + [ + -76000, + 44000 + ], + [ + -82000, + 44000 + ], + [ + -82000, + 38000 + ], + [ + -76000, + 36000 + ], + [ + -86000, + 36000 + ], + [ + -88000, + 52000 + ], + [ + -98000, + 52000 + ], + [ + -98000, + 46000 + ], + [ + -120000, + 44000 + ], + [ + -120000, + 34000 + ], + [ + -160000, + 30000 + ], + [ + -174000, + 38000 + ], + [ + -184000, + 36000 + ], + [ + -184000, + 44000 + ], + [ + -200000, + 44000 + ], + [ + -200000, + 88000 + ], + [ + -192000, + 88000 + ], + [ + -192000, + 102000 + ], + [ + -198000, + 102000 + ], + [ + -198000, + 112000 + ], + [ + -172000, + 112000 + ], + [ + -172000, + 188000 + ], + [ + -152000, + 188000 + ], + [ + -152000, + 202000 + ], + [ + -126000, + 202000 + ], + [ + -126000, + 216000 + ], + [ + -120000, + 216000 + ], + [ + -120000, + 226000 + ], + [ + -126000, + 226000 + ], + [ + -126000, + 230000 + ], + [ + -172000, + 226000 + ], + [ + -172000, + 266000 + ], + [ + -200000, + 266000 + ], + [ + -200000, + 288000 + ], + [ + -174000, + 286000 + ], + [ + -174000, + 302000 + ], + [ + -164000, + 302000 + ], + [ + -158000, + 346000 + ], + [ + -170000, + 348000 + ], + [ + -166000, + 392000 + ], + [ + -274000, + 400000 + ], + [ + -282000, + 306000 + ], + [ + -308000, + 306000 + ], + [ + -306000, + -206000 + ] + ], + "extentBbox": [ + -308055, + -382197, + 514925, + 400622 + ], + "bodies": 49, + "volumes": 270, + "visualOceanBbox": [ + -5949654, + -4140158, + 1095015, + 3922700 + ] + } +} \ No newline at end of file From b465e50e6e1ac3c5839efcd11bdbaa6bea1e19cc Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Tue, 28 Jul 2026 23:46:01 +0200 Subject: [PATCH 03/12] map: draw the world border and the water limit Adds a "Map Limits" sidebar category (default hidden, like the other world layers) with one row per ring: the world border in red, the water limit in cyan, each a line bucket with the facts in its tooltip -- the altitudes the damage slabs start at for the border, and "8.2 km of real water inside a 70 km ocean" for the water. The rings ride along as a new static payload step fed by the embedded worldBounds.json, the same shape as the spawners step. Two things worth knowing for the next static layer: - ring z is 0 (sea level), not the volumes' real -9.6..+10.4 km span: a line's z only drives the altitude filter and depth sorting, so the honest span would just make the tooltip claim the border sits 10 km up. - synthetic ids need a ':' in them. Bulk id arrays get the instance-name prefix re-added client-side (slim_payload_value / expandPayloadIds), which silently turned "worldPerimeter" into "Persistent_Level:PersistentLevel. worldPerimeter" and broke the color lookup keyed off it. The frontend now keys off a separate `kinds` array, and a test pins the ':' rule. Co-Authored-By: Claude Opus 5 (1M context) --- CONTRIBUTING.md | 1 + README.md | 3 + game_data/extract_all.py | 5 +- map/static/map/filters.js | 47 +++++++ rust_parser/core/src/gamedata/mod.rs | 51 +++++++- .../core/src/mapdata/collectors/mod.rs | 11 +- .../core/src/mapdata/collectors/simple.rs | 115 ++++++++++++++++++ rust_parser/core/src/mapdata/mod.rs | 6 +- rust_parser/wasm/src/lib.rs | 6 +- 9 files changed, 232 insertions(+), 13 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 80347a6..f9ffa0f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -153,6 +153,7 @@ the first which reads `game_data/docs.json`): | `extract_game_phases.py` | `gamePhases.json` (Space Elevator phase costs; optional, has a built-in fallback table) | | `extract_spawners.py` | `creatureSpawners.json` (every creature spawner with position + creature class, e.g. all Lizard Doggo spawns) and `creatures.json` (official display name + icon per creature class, from the StringTables CSVs) | | `extract_collectables.py` | the **committed** world tables in `game_data/sav_data/`: power slugs, somersloops, mercer spheres, crash sites (incl. their unlock cost/power requirements, derived from `mUnlockCost` + docs.json labels), free dropped items, resource purity — fully regenerated from the world cells (replacing the old GreyHak-derived tables, validated 1:1 against them; run after `extract_docs_json.py`). Pickup item classes are cooked into the actors but FModel can't decode that struct — they merge from the previous table, and `--items-from-save some.sav` reads them from a save if a game update adds pickups (the save must have physically visited them: saves only serialize actors whose world cell has streamed in near a player). Also writes `generated/consumables.json` (Paleberry/Beryl Nut/Bacon Agaric plants). Review its `sav_data/` git diff after a game update | +| `extract_world_bounds.py` | the **committed** `game_data/sav_data/worldBounds.json`: the map's two invisible edges. The damaging perimeter comes from the `FGDamageOverTimeVolume` actors carrying a `/World/Hazard/WorldPerimeter/` DoT class — eleven walls (three of them rotated, cutting the NE/NW/SW corners) reduced to a 7-vertex safe-side polygon, plus the ceiling/floor slabs as altitudes. The water limit is the union of the 270 `FGWaterVolume` actors (all `mResourceClass` `Desc_Water_C`, i.e. swimmable and extractor-valid), which stops far inside the rendered ocean — 31 water-plane patches, the biggest 51 × 34 km. Review its `sav_data/` git diff after a game update | | `extract_map_image.py` | `map_highres.png`, fused from the game's 4-corner sliced map render (`FactoryGame/Interface/UI/Assets/MapTest/SlicedMap`) | | `copy_icons.py` | the icon PNGs under `map/static/map/icons/`, copied last — it reads the generated JSONs above to know which few hundred of the dump's tens of thousands of files are needed | diff --git a/README.md b/README.md index 2a886da..83cd071 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,9 @@ up to **15 seconds at a time** — WebGL rendering instead of DOM markers - **The whole factory, mapped** — buildings by build-menu category, belts/pipes/railways/power lines as curves, resource nodes with purity, vehicles, trains, players, collectables and crash sites. +- **The map's own edges** — the damaging world border (and the altitudes it + starts at), plus where the water you can actually swim in and pump from + ends, which is well inside the ocean the game draws. - **Find anything** — search across every inventory in the save ("where did I leave my hard drives?"), per-building tooltips with recipe, power, clock speed and belt/pipe **bottleneck detection**. diff --git a/game_data/extract_all.py b/game_data/extract_all.py index cfd0ec3..ad9d120 100644 --- a/game_data/extract_all.py +++ b/game_data/extract_all.py @@ -20,7 +20,9 @@ Most steps write to the gitignored game_data/generated/; extract_collectables.py instead rewrites the COMMITTED world tables under game_data/sav_data/ (slugs, somersloops, mercer spheres, crash sites, -dropped items, resource purity) -- review its git diff after a game update. +dropped items, resource purity), and extract_world_bounds.py the committed +worldBounds.json (the damaging map perimeter and the water limit) -- review +their git diffs after a game update. - .pak (loose files -- a normal package export SKIPS these). FModel: right-click FactoryGame/Content/Localization/StringTables -> "Export Folder's Packages Raw Data". Provides the string-table source CSVs @@ -69,6 +71,7 @@ ("extract_game_phases.py", True), ("extract_spawners.py", True), ("extract_collectables.py", True), + ("extract_world_bounds.py", True), ("extract_map_image.py", True), ("copy_icons.py", True), ) diff --git a/map/static/map/filters.js b/map/static/map/filters.js index bef4b43..71c70bf 100644 --- a/map/static/map/filters.js +++ b/map/static/map/filters.js @@ -262,6 +262,7 @@ var Filters = {}; "Collectables": true, "Spawners": true, "Dropped Items": true, + "Map Limits": true, }; function savedGroupStateForStack() { @@ -1238,6 +1239,51 @@ var Filters = {}; renderTopLevelCategory(navList, detailPane, "Dropped Items (" + total + ")", "circle", DROPPED_ITEM_COLOR, rows); } + // ---- Map limits ----------------------------------------------------------- + + // Red for the thing that kills you, cyan for water -- neither hue is used + // by a line layer (belts orange, pipes green, power yellow, hypertubes + // blue, rails white, vehicle paths grey). + var LIMIT_COLORS = { worldPerimeter: "#ff5a4d", waterLimit: "#35d0f5" }; + + // payload.mapLimits (see the rust core's collect_map_limits) is the same + // for every save: the map's two invisible edges, traced from the cooked + // level data. The world border is where the out-of-bounds damage volumes + // start; the water limit is where swimmable, extractor-valid water ends -- + // which is well inside the ocean the game draws, so on the west side there + // is a 334 m strip that looks like sea and holds no water at all. + // + // One row (and one bucket) per ring, so the border and the water edge + // toggle independently. Every ring is drawn at sea level: a line's z only + // feeds the altitude filter and depth sorting, and these are limits rather + // than structures -- see the collector for why that beats their real span. + function buildMapLimitsSection(navList, detailPane, payload) { + var limits = payload.mapLimits; + if (!limits || !limits.polylines || limits.polylines.length === 0) { + return; + } + var rows = []; + limits.polylines.forEach(function(ring, index) { + // kind, not ids[index]: bulk id arrays come back with the instance-name + // prefix re-added (see save_client.js's expandPayloadIds), which is + // fine for the hit-test identity but would wreck a color/key lookup. + var kind = (limits.kinds || [])[index] || String(index); + var label = (limits.labels || [])[index] || "Limit"; + var color = LIMIT_COLORS[kind] || NEUTRAL_COLOR; + var detailRows = (limits.rows || [])[index] || []; + var tooltipInfo = function() { + return { title: label, rows: detailRows, + position: EditorTool.mapPxToWorldXY(ring[0], ring[1]) }; + }; + var bucket = makeLineBucket("limit:" + kind, label, color, [ring], + [(limits.ids || [])[index] || kind], "static", tooltipInfo, 3); + rows.push({ label: label, count: 1, color: color, renderType: "line", + buckets: [bucket] }); + }); + renderTopLevelCategory(navList, detailPane, "Map Limits", "line", + LIMIT_COLORS.worldPerimeter, rows); + } + // ---- HUB ------------------------------------------------------------------ // The HUB is a one-of-a-kind landmark (excluded from collectBuildings -- @@ -1718,6 +1764,7 @@ var Filters = {}; buildCollectablesSection(navList, detailPane, payload); buildSpawnersSection(navList, detailPane, payload); buildDroppedItemsSection(navList, detailPane, payload); + buildMapLimitsSection(navList, detailPane, payload); // Fit the nav panel to the category labels now that they all exist. autoSizeNavPanel(); diff --git a/rust_parser/core/src/gamedata/mod.rs b/rust_parser/core/src/gamedata/mod.rs index f9f103a..88dde10 100644 --- a/rust_parser/core/src/gamedata/mod.rs +++ b/rust_parser/core/src/gamedata/mod.rs @@ -6,8 +6,9 @@ //! //! - game_data/sav_data/*.json: committed world tables regenerated from the //! game's level exports by game_data/extractors/extract_collectables.py -//! (key order load-bearing and preserved across regenerations), plus two -//! hand-curated files (readableNameCorrections.json, typePaths.json). +//! (key order load-bearing and preserved across regenerations) and +//! extract_world_bounds.py (worldBounds.json), plus two hand-curated files +//! (readableNameCorrections.json, typePaths.json). //! - game_data/generated/*.json + game_data/category*.json: extracted from //! the game's Docs.json by game_data/extractors/extract_docs_json.py (gitignored, //! regenerable; documented in game_data/SCHEMA.md). @@ -49,6 +50,39 @@ pub struct CreatureInfo { /// creatureSpawners.json: {creatureShortClass|"unknown": {instancePathName: [x,y,z]}} pub type CreatureSpawnerMap = IndexMap>; +/// worldBounds.json's `perimeter`: the safe side of the map's damaging edge +/// (see game_data/extractors/extract_world_bounds.py). Static world geometry +/// -- identical for every save, like the creature spawners. +#[derive(Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct Perimeter { + /// Closed loop in world cm; the first point is NOT repeated at the end. + pub polygon: Vec<[f64; 2]>, + /// World cm: the damage slabs start above this / below this. None if the + /// dump ever stops carrying one of them. + pub ceiling_z: Option, + pub floor_z: Option, +} + +/// worldBounds.json's `water`: where the swimmable, extractor-valid water +/// ends -- which is nowhere near where the rendered ocean ends. +#[derive(Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct WaterLimit { + /// Closed loop in world cm; first point NOT repeated. + pub outer_ring: Vec<[f64; 2]>, + /// [minX, minY, maxX, maxY] over every water volume. + pub extent_bbox: [f64; 4], + /// [minX, minY, maxX, maxY] of the rendered ocean planes (far larger). + pub visual_ocean_bbox: Option<[f64; 4]>, +} + +#[derive(Deserialize)] +pub struct WorldBounds { + pub perimeter: Perimeter, + pub water: WaterLimit, +} + #[derive(Deserialize)] #[serde(rename_all = "camelCase")] pub struct TypePaths { @@ -70,6 +104,7 @@ pub struct GameData { pub free_dropped_items: IndexMap>, pub readable_name_corrections: IndexMap, pub type_paths: TypePaths, + pub world_bounds: WorldBounds, // -- game_data/generated/ + game_data/ (Docs.json extracts) -- // Kept as ordered JSON maps: consumers pick the fields they need, and @@ -116,6 +151,7 @@ pub fn get() -> &'static GameData { embed!("sav_data/readableNameCorrections.json"), ), type_paths: parse("typePaths.json", embed!("sav_data/typePaths.json")), + world_bounds: parse("worldBounds.json", embed!("sav_data/worldBounds.json")), building_categories: parse( "buildingCategories.json", embed!("generated/buildingCategories.json"), @@ -176,6 +212,17 @@ mod tests { assert!(d.mercer_spheres.len() > 200); assert!(d.crash_sites.len() > 90); assert!(d.free_dropped_items.len() >= 50); + // The map's edge: a closed polygon around a ~7.9 x 7.0 km area, and a + // water ring inside the same order of magnitude. Loose bounds -- this + // guards against an empty/garbled table, not against a map change. + let perimeter = &d.world_bounds.perimeter; + assert!(perimeter.polygon.len() >= 4, "perimeter {:?}", perimeter.polygon.len()); + assert!(perimeter.ceiling_z.unwrap_or(0.0) > 0.0); + assert!(perimeter.floor_z.unwrap_or(0.0) < 0.0); + let width = perimeter.polygon.iter().map(|p| p[0]).fold(f64::MIN, f64::max) + - perimeter.polygon.iter().map(|p| p[0]).fold(f64::MAX, f64::min); + assert!((500_000.0..1_500_000.0).contains(&width), "perimeter width {width}"); + assert!(d.world_bounds.water.outer_ring.len() >= 4); assert!(d.buildings.len() > 400); assert!(d.recipes.len() > 300); assert!(d.schematics.len() > 200); diff --git a/rust_parser/core/src/mapdata/collectors/mod.rs b/rust_parser/core/src/mapdata/collectors/mod.rs index 304650d..0520490 100644 --- a/rust_parser/core/src/mapdata/collectors/mod.rs +++ b/rust_parser/core/src/mapdata/collectors/mod.rs @@ -1,7 +1,8 @@ -//! The 18 payload collectors, one module per _payloadSteps entry. Each is an +//! The 19 payload collectors, one module per _payloadSteps entry. Each is an //! exact behavioral port of its Python namesake in map/sav_map_data.py -- -//! except "spawners", which post-dates the Python implementation (static -//! world data, no save input; see simple::collect_spawners). +//! except "spawners" and "mapLimits", which post-date the Python +//! implementation (static world data, no save input; see +//! simple::collect_spawners and simple::collect_map_limits). pub mod buildings; pub mod lines; @@ -27,6 +28,7 @@ pub fn registry() -> Vec<(&'static str, Collector)> { ("players", simple::collect_players), ("creatures", simple::collect_creatures), ("spawners", simple::collect_spawners), + ("mapLimits", simple::collect_map_limits), ("hub", simple::collect_hub), ("gameSettings", simple::collect_game_settings), ("vehicles", simple::collect_vehicles), @@ -42,7 +44,7 @@ pub fn registry() -> Vec<(&'static str, Collector)> { /// _payloadSteps key order -- payload keys must appear in this order /// regardless of which subset is requested. -pub const STEP_ORDER: [&str; 18] = [ +pub const STEP_ORDER: [&str; 19] = [ "buildingCategories", "resourceNodes", "collectables", @@ -50,6 +52,7 @@ pub const STEP_ORDER: [&str; 18] = [ "players", "creatures", "spawners", + "mapLimits", "vehicles", "trains", "droppedItems", diff --git a/rust_parser/core/src/mapdata/collectors/simple.rs b/rust_parser/core/src/mapdata/collectors/simple.rs index 000f9e0..6067063 100644 --- a/rust_parser/core/src/mapdata/collectors/simple.rs +++ b/rust_parser/core/src/mapdata/collectors/simple.rs @@ -152,6 +152,121 @@ pub fn collect_spawners(_scan: &SaveScan) -> Value { Value::Array(entries.into_iter().map(|(_, _, v)| v).collect()) } +/// The map's two invisible edges -- static world data (the embedded +/// worldBounds.json, see game_data/extractors/extract_world_bounds.py), not +/// save actors, so the result is the same for every save: +/// +/// - the world perimeter: the safe side of the damage volumes that hurt you +/// for leaving the map, plus the altitudes they start at, +/// - the water limit: where the swimmable, extractor-valid water actually +/// ends, which is far inside the ocean the game renders. +/// +/// Both go out as closed rings in map pixels, ready for one line bucket, with +/// the tooltip rows alongside. Ring z is 0 (sea level) rather than the +/// volumes' real span (the perimeter walls run from -9.6 km to +10.4 km): +/// these are limits, not structures, and a line's altitude is only used for +/// the altitude filter and depth sorting -- so a narrowed altitude window +/// that excludes sea level hides them, which beats a tooltip claiming the +/// border sits 10 km up. +pub fn collect_map_limits(_scan: &SaveScan) -> Value { + map_limits_value() +} + +fn map_limits_value() -> Value { + let bounds = &gamedata::get().world_bounds; + let mut polylines: Vec = Vec::new(); + let mut ids: Vec = Vec::new(); + let mut kinds: Vec = Vec::new(); + let mut labels: Vec = Vec::new(); + let mut rows: Vec = Vec::new(); + + let mut push_ring = |kind: &str, label: &str, ring: &[[f64; 2]], detail: Vec| { + if ring.len() < 3 { + return; + } + let mut points: Vec = Vec::with_capacity(ring.len() * 3 + 3); + for &[x, y] in ring { + let [px, py] = project_xy(x, y); + points.push(jnum(px)); + points.push(jnum(py)); + points.push(jnum(0.0)); + } + // Close the loop: the line renderer draws an open polyline. + let first = [points[0].clone(), points[1].clone(), points[2].clone()]; + points.extend(first); + polylines.push(Value::Array(points)); + // These rings are not save actors, so their "ids" are synthetic -- + // and the payload's id-slimming mirror re-adds the instance-name + // prefix to any bulk id without a ':' (see slim_payload_value). The + // "mapLimit:" prefix is what keeps them intact end to end; `kinds` + // carries the bare name for the frontend to key colors off. + ids.push(Value::String(format!("mapLimit:{kind}"))); + kinds.push(Value::String(kind.to_string())); + labels.push(Value::String(label.to_string())); + rows.push(Value::Array(detail)); + }; + + let perimeter = &bounds.perimeter; + let mut detail = vec![json!(["Cross it", "Damage over time"])]; + if let Some(ceiling) = perimeter.ceiling_z { + detail.push(json!(["Damage above", format!("{:.0} m", world_z_to_meters(ceiling))])); + } + if let Some(floor) = perimeter.floor_z { + detail.push(json!(["Damage below", format!("{:.0} m", world_z_to_meters(floor))])); + } + push_ring("worldPerimeter", "World border", &perimeter.polygon, detail); + + let water = &bounds.water; + let mut detail = vec![json!(["Outside it", "No swimmable water"])]; + if let Some(ocean) = water.visual_ocean_bbox { + // The headline fact: the sea you can see is an order of magnitude + // bigger than the sea that exists. + let visual_km = (ocean[2] - ocean[0]) / 100_000.0; + let real_km = (water.extent_bbox[2] - water.extent_bbox[0]) / 100_000.0; + detail.push(json!(["Real water spans", format!("{real_km:.1} km")])); + detail.push(json!(["Rendered ocean spans", format!("{visual_km:.0} km")])); + } + push_ring("waterLimit", "Water limit", &water.outer_ring, detail); + + json!({"polylines": polylines, "ids": ids, "kinds": kinds, "labels": labels, "rows": rows}) +} + +#[cfg(test)] +mod map_limit_tests { + use super::*; + + #[test] + fn both_limits_come_out_as_closed_rings_with_tooltip_rows() { + let limits = map_limits_value(); + let polylines = limits["polylines"].as_array().unwrap(); + let kinds: Vec<&str> = + limits["kinds"].as_array().unwrap().iter().map(|i| i.as_str().unwrap()).collect(); + assert_eq!(kinds, ["worldPerimeter", "waterLimit"]); + assert_eq!(polylines.len(), 2); + // Every id must survive the payload's id-slimming mirror untouched, + // which is exactly what the ':' buys (see the collector). + for id in limits["ids"].as_array().unwrap() { + assert!(id.as_str().unwrap().contains(':'), "id {id} would get re-prefixed client-side"); + } + for ring in polylines { + let points = ring.as_array().unwrap(); + assert!(points.len() >= 12 && points.len() % 3 == 0); + assert_eq!(&points[0..3], &points[points.len() - 3..], "ring not closed"); + // Projected into the 0..8192 map-pixel space, with room for the + // border sitting slightly outside the rendered map. + for xy in points.chunks_exact(3) { + for v in &xy[0..2] { + let value = v.as_f64().unwrap(); + assert!((-2000.0..10192.0).contains(&value), "off-map point {value}"); + } + } + } + for detail in limits["rows"].as_array().unwrap() { + assert!(!detail.as_array().unwrap().is_empty()); + } + } +} + #[cfg(test)] mod spawner_label_tests { use super::*; diff --git a/rust_parser/core/src/mapdata/mod.rs b/rust_parser/core/src/mapdata/mod.rs index 4204320..1fae773 100644 --- a/rust_parser/core/src/mapdata/mod.rs +++ b/rust_parser/core/src/mapdata/mod.rs @@ -24,9 +24,9 @@ use crate::store::SaveStore; use scan::SaveScan; use serde_json::{json, Value}; -/// 18 payload steps (sav_map_data._BUILD_STEP_COUNT's 17 + the static -/// spawners step) + the save index. -pub const BUILD_STEP_COUNT: u64 = 18 + 1; +/// 19 payload steps (sav_map_data._BUILD_STEP_COUNT's 17 + the static +/// spawners and mapLimits steps) + the save index. +pub const BUILD_STEP_COUNT: u64 = 19 + 1; /// Desc_ classes in readableNameCorrections that are NOT items: the game's /// creature descriptors (FGCreatureDescriptor, plus the two enemy-group diff --git a/rust_parser/wasm/src/lib.rs b/rust_parser/wasm/src/lib.rs index 4f1eefc..a1307a7 100644 --- a/rust_parser/wasm/src/lib.rs +++ b/rust_parser/wasm/src/lib.rs @@ -201,9 +201,9 @@ impl SaveSession { .map_err(|e| JsError::new(&e.msg))?; drop(bytes); - // 18 payload steps + the index build = BUILD_STEP_COUNT ticks (same - // shape as Python's buildAll, plus the static spawners step); one - // shared SaveScan for both. + // 19 payload steps + the index build = BUILD_STEP_COUNT ticks (same + // shape as Python's buildAll, plus the static spawners and mapLimits + // steps); one shared SaveScan for both. let mut build_progress = |current: u64, total: u64| call(2, current, total); let (payload_json, index) = mapdata::build_all_json(&store, Some(&mut build_progress)) From 596cc4f11b82a62effffd58e610fc43d2cae60da Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Wed, 29 Jul 2026 00:32:14 +0200 Subject: [PATCH 04/12] game_data: one rule -- if a script wrote it, it is not in git The old split was game_data/sav_data/ (committed) vs game_data/generated/ (gitignored), which read as "world tables vs docs.json extracts" but was really "the IP line we drew", and membership had drifted: creatureSpawners (coordinates, like the committed slugs) was gitignored, half the hand-written tables sat in sav_data/ and half at game_data/ root, and two generated files had no consumer at all. Now: game_data/curated/ committed hand-maintained inputs only game_data/generated/docs/ gitignored Docs.json extracts game_data/generated/world/ gitignored level-export tables game_data/generated/ gitignored map render + tiles so a checkout is either extracted (extract_all.py) or unpacked (package_game_data.py unpack), never half-committed. game_data/README.md states the rule where the folders are; sav_data/ is gone, and so are sav_data_gaps.json (no consumers) and the flat generated/*.json layout. Two things had to be fixed for "nothing generated is committed" to actually hold, both of which were latent bugs in the old layout: - freeDroppedItems.json recovered each pickup's item class from its OWN last output (FModel can't decode the cooked FInventoryItem struct). Delete the file and all 703 pickups lose their item. That knowledge now lives in the committed curated/pickupItems.json, an input; --items-from-save writes what it learns back into it. - every table's key order was inherited from the previously committed file, so a fresh machine produced different bytes than an incremental re-run. Tables are now written sorted: same dump in, byte-identical files out. Verified by deleting generated/{docs,world}/ and re-running extract_all -- every table came back byte-identical to the pre-reorg ones. Also: package_game_data packs generated/ recursively so the new subfolders need no change there, but an archive built before this commit carries no world/ tables (they used to be committed), so CI now points at game-data-v3 -- publish the rebuilt zip under that tag or CI cannot compile the crate. sav_core's build script now says which command to run when the data is missing instead of failing on the first include_str!. NOTICES/README: the distribution clause said game-derived data is "not distributed here" while CI downloaded exactly that from a release. Reworded to say what is true -- none of it is in the repository, and the archive is a convenience build of your own extraction. --- .github/workflows/ci.yml | 14 +- .gitignore | 10 +- CONTRIBUTING.md | 31 +- NOTICES.md | 13 +- README.md | 16 +- game_data/README.md | 50 + game_data/SCHEMA.md | 2 +- game_data/{ => curated}/categoryLabels.json | 0 .../{ => curated}/categoryOverrides.json | 0 game_data/curated/pickupItems.json | 705 ++ .../readableNameCorrections.json | 0 .../{sav_data => curated}/typePaths.json | 0 game_data/extract_all.py | 11 +- game_data/extractors/copy_icons.py | 14 +- game_data/extractors/extract_caves.py | 9 +- game_data/extractors/extract_collectables.py | 158 +- game_data/extractors/extract_docs_json.py | 2 +- game_data/extractors/extract_game_phases.py | 4 +- game_data/extractors/extract_spawners.py | 9 +- game_data/extractors/extract_world_bounds.py | 9 +- game_data/package_game_data.py | 15 +- game_data/sav_data/caves.json | 4228 ----------- game_data/sav_data/crashSites.json | 2153 ------ game_data/sav_data/freeDroppedItems.json | 6433 ----------------- game_data/sav_data/mercerSpheres.json | 4472 ------------ game_data/sav_data/powerSlugs.json | 6218 ---------------- game_data/sav_data/resourcePurity.json | 6082 ---------------- game_data/sav_data/somersloops.json | 1592 ---- game_data/sav_data/worldBounds.json | 1088 --- rust_parser/README.md | 2 +- rust_parser/core/build.rs | 20 + rust_parser/core/src/gamedata/mod.rs | 65 +- 32 files changed, 994 insertions(+), 32431 deletions(-) create mode 100644 game_data/README.md rename game_data/{ => curated}/categoryLabels.json (100%) rename game_data/{ => curated}/categoryOverrides.json (100%) create mode 100644 game_data/curated/pickupItems.json rename game_data/{sav_data => curated}/readableNameCorrections.json (100%) rename game_data/{sav_data => curated}/typePaths.json (100%) delete mode 100644 game_data/sav_data/caves.json delete mode 100644 game_data/sav_data/crashSites.json delete mode 100644 game_data/sav_data/freeDroppedItems.json delete mode 100644 game_data/sav_data/mercerSpheres.json delete mode 100644 game_data/sav_data/powerSlugs.json delete mode 100644 game_data/sav_data/resourcePurity.json delete mode 100644 game_data/sav_data/somersloops.json delete mode 100644 game_data/sav_data/worldBounds.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 097e5e8..7118bbb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,12 +23,16 @@ jobs: path: | game_data/generated map/static/map/icons - key: game-data-v2 + key: game-data-v3 - name: Fetch game data - # sav_core embeds game_data/generated/*.json at compile time. + # sav_core embeds game_data/generated/{docs,world}/*.json at compile + # time, and NOTHING generated is committed, so this archive is the only + # way CI gets a compilable tree. game-data-v3 is the first archive built + # after the generated/{docs,world}/ split -- v2 predates it and carries + # no world/ tables (they used to be committed under game_data/sav_data/). if: steps.game-data.outputs.cache-hit != 'true' run: | - wget -q -O game_data.zip https://github.com/valentinps/satisfactorymap/releases/download/game-data-v2/game_data.zip + wget -q -O game_data.zip https://github.com/valentinps/satisfactorymap/releases/download/game-data-v3/game_data.zip python3 game_data/package_game_data.py unpack game_data.zip - name: Cache test saves uses: actions/cache@v4 @@ -59,11 +63,11 @@ jobs: path: | game_data/generated map/static/map/icons - key: game-data-v2 + key: game-data-v3 - name: Fetch game data if: steps.game-data.outputs.cache-hit != 'true' run: | - wget -q -O game_data.zip https://github.com/valentinps/satisfactorymap/releases/download/game-data-v2/game_data.zip + wget -q -O game_data.zip https://github.com/valentinps/satisfactorymap/releases/download/game-data-v3/game_data.zip python3 game_data/package_game_data.py unpack game_data.zip - name: Install wasm-pack run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh diff --git a/.gitignore b/.gitignore index 7036e06..e293eea 100644 --- a/.gitignore +++ b/.gitignore @@ -14,11 +14,11 @@ map/uploads/ # see README.md's "Generating game data" section. game_data/docs.json -# Everything derived from game files: the JSONs generated from docs.json by -# game_data/extractors/extract_docs_json.py, gamePhases.json from -# game_data/extractors/extract_game_phases.py, and map_highres.png from -# game_data/extractors/extract_map_image.py. game_data/SCHEMA.md (hand-written) sits one -# level up on purpose so this whole folder stays regenerable/disposable. +# Everything game_data/extract_all.py produces: docs/ (from docs.json), +# world/ (from the FModel level export) and the map render. Nothing generated +# is committed -- a checkout gets this folder by running the extractors or by +# unpacking game_data.zip. The hand-maintained inputs live in +# game_data/curated/ and ARE committed; see game_data/README.md. game_data/generated/ # Icon PNGs (regenerate via game_data/extractors/copy_icons.py; kept under map/static/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index be9a7ac..6766e08 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -84,10 +84,12 @@ same `dist/` still serves in the browser via `serve_site.py`. | `rust_parser/core/` | `sav_core`: the save parser + map-payload builder (pure Rust, embeds the game-data tables) | | `rust_parser/wasm/` | `sav_wasm`: the wasm-bindgen boundary the worker loads | | `rust_parser/tauri/` | `sav_tauri`: native desktop shell (Tauri v2) over `sav_core`, mirrors the wasm binding | -| `game_data/` | extraction scripts + hand-curated game metadata (`categoryLabels.json`, `categoryOverrides.json`, `SCHEMA.md`) | -| `game_data/sav_data/` | *(committed)* static world tables (resource nodes, slugs, crash sites...) regenerated from the game's level data by `extractors/extract_collectables.py` | +| `game_data/` | extraction scripts, `SCHEMA.md`, and the folder rules in [`game_data/README.md`](game_data/README.md) | +| `game_data/curated/` | *(committed)* the hand-maintained inputs: name corrections, type paths, category labels/overrides, pickup item classes | | `game_data/docs.json` | *(not committed)* the game's own data dump, input to `extract_docs_json.py` | -| `game_data/generated/` | *(generated)* item/building/recipe/schematic JSONs, creature spawner/name tables, `map_highres.png` | +| `game_data/generated/docs/` | *(generated)* item/building/recipe/schematic/category/phase JSONs | +| `game_data/generated/world/` | *(generated)* level-export tables: resource nodes, slugs, somersloops, mercer spheres, crash sites, dropped items, creature spawners, caves, world bounds | +| `game_data/generated/` | *(generated)* `map_highres.png` + its tile pyramid | | `tools/` | `build_site.py` / `serve_site.py` / `benchmark.py` / `fetch_test_saves.py` / `e2e_editor.py` / `release.py` | | `dist/` | *(generated)* the assembled static site | @@ -110,9 +112,11 @@ regression, needs `pip install playwright`) and the CI workflow in `.github/workflows/ci.yml`, which runs the Rust suite and the wasm build on every push to `main` and on pull requests. -Note: `sav_core` embeds `game_data/generated/*.json` and the icon manifest at -compile time, so building the Rust crates also requires the game data to be -extracted first. +Note: `sav_core` embeds `game_data/generated/{docs,world}/*.json` and the icon +manifest at compile time, and **nothing generated is committed**, so the Rust +crates do not build until you have either run `game_data/extract_all.py` or +unpacked `game_data.zip` (the build script says so if you forget). See +[`game_data/README.md`](game_data/README.md). ## Generating game data @@ -149,12 +153,12 @@ the first which reads `game_data/docs.json`): | Script | Output | |---|---| -| `extract_docs_json.py` | `items`/`resources`/`buildings`/`recipes`/`buildingCategories`/`schematics.json` — see `game_data/SCHEMA.md` | +| `extract_docs_json.py` | `generated/docs/`: `items`/`resources`/`buildings`/`recipes`/`buildingCategories`/`schematics.json` — see `game_data/SCHEMA.md` | | `extract_game_phases.py` | `gamePhases.json` (Space Elevator phase costs; optional, has a built-in fallback table) | -| `extract_spawners.py` | `creatureSpawners.json` (every creature spawner with position + creature class, e.g. all Lizard Doggo spawns) and `creatures.json` (official display name + icon per creature class, from the StringTables CSVs) | -| `extract_collectables.py` | the **committed** world tables in `game_data/sav_data/`: power slugs, somersloops, mercer spheres, crash sites (incl. their unlock cost/power requirements, derived from `mUnlockCost` + docs.json labels), free dropped items, resource purity — fully regenerated from the world cells (replacing the old GreyHak-derived tables, validated 1:1 against them; run after `extract_docs_json.py`). Pickup item classes are cooked into the actors but FModel can't decode that struct — they merge from the previous table, and `--items-from-save some.sav` reads them from a save if a game update adds pickups (the save must have physically visited them: saves only serialize actors whose world cell has streamed in near a player). Also writes `generated/consumables.json` (Paleberry/Beryl Nut/Bacon Agaric plants). Review its `sav_data/` git diff after a game update | -| `extract_world_bounds.py` | the **committed** `game_data/sav_data/worldBounds.json`: the map's two invisible edges. The damaging perimeter comes from the `FGDamageOverTimeVolume` actors carrying a `/World/Hazard/WorldPerimeter/` DoT class — eleven walls (three of them rotated, cutting the NE/NW/SW corners) reduced to a 7-vertex safe-side polygon, plus the ceiling/floor slabs as altitudes. The water limit is the union of the 270 `FGWaterVolume` actors (all `mResourceClass` `Desc_Water_C`, i.e. swimmable and extractor-valid), which stops far inside the rendered ocean — 31 water-plane patches, the biggest 51 × 34 km. Review its `sav_data/` git diff after a game update | -| `extract_caves.py` | the **committed** `game_data/sav_data/caves.json` — one outline polygon per cave system (~84), traced from the cooked level data: the game's own cave atmosphere volumes (the fog/lighting regions it swaps you into underground, ~108 of them, some carrying authored names like `Atmosphere_SwampCave`), the `BP_CaveFloor` tunnel splines, the cave-only foliage clusters and the placed cave rock kit, unioned and contoured. Nothing in a save records a cave, so this is the only source. Review its `sav_data/` git diff after a game update | +| `extract_spawners.py` | `generated/world/creatureSpawners.json` (every creature spawner with position + creature class, e.g. all Lizard Doggo spawns) and `creatures.json` (official display name + icon per creature class, from the StringTables CSVs) | +| `extract_collectables.py` | `generated/world/`: power slugs, somersloops, mercer spheres, crash sites (incl. their unlock cost/power requirements, derived from `mUnlockCost` + docs.json labels), free dropped items, resource purity, plus `consumables.json` (Paleberry/Beryl Nut/Bacon Agaric plants) — fully regenerated from the world cells (replacing the old GreyHak-derived tables, validated 1:1 against them; run after `extract_docs_json.py`). Pickup item classes are cooked into the actors but FModel can't decode that struct, so they come from the committed `curated/pickupItems.json`; `--items-from-save some.sav` learns new ones from a save and writes them back there (the save must have physically visited them: saves only serialize actors whose world cell has streamed in near a player) | +| `extract_world_bounds.py` | `generated/world/worldBounds.json`: the map's two invisible edges. The damaging perimeter comes from the `FGDamageOverTimeVolume` actors carrying a `/World/Hazard/WorldPerimeter/` DoT class — eleven walls (three of them rotated, cutting the NE/NW/SW corners) reduced to a 7-vertex safe-side polygon, plus the ceiling/floor slabs as altitudes. The water limit is the union of the 270 `FGWaterVolume` actors (all `mResourceClass` `Desc_Water_C`, i.e. swimmable and extractor-valid), which stops far inside the rendered ocean — 31 water-plane patches, the biggest 51 × 34 km | +| `extract_caves.py` | `generated/world/caves.json` — one outline polygon per cave system (~84), traced from the cooked level data: the game's own cave atmosphere volumes (the fog/lighting regions it swaps you into underground, ~108 of them, some carrying authored names like `Atmosphere_SwampCave`), the `BP_CaveFloor` tunnel splines, the cave-only foliage clusters and the placed cave rock kit, unioned and contoured. Nothing in a save records a cave, so this is the only source | | `extract_map_image.py` | `map_highres.png`, fused from the game's 4-corner sliced map render (`FactoryGame/Interface/UI/Assets/MapTest/SlicedMap`) | | `copy_icons.py` | the icon PNGs under `map/static/map/icons/`, copied last — it reads the generated JSONs above to know which few hundred of the dump's tens of thousands of files are needed | @@ -171,8 +175,9 @@ game files: py game_data/package_game_data.py pack # writes game_data.zip in the repo root ``` -The archive contains `game_data/generated/` (JSONs + map image) and -`map/static/map/icons/`. The recipient clones the repo and runs: +The archive contains `game_data/generated/` (the `docs/` and `world/` tables, +the map image and its tiles) and `map/static/map/icons/` — i.e. exactly what +`extract_all.py` produces and git ignores. The recipient clones the repo and runs: ```bash py game_data/package_game_data.py unpack game_data.zip diff --git a/NOTICES.md b/NOTICES.md index 4a2a796..56b53f6 100644 --- a/NOTICES.md +++ b/NOTICES.md @@ -35,7 +35,12 @@ A copy of the exchange is retained by the project author. - The **Satisfactory Save Map** name, logo, and the `satisfactorymap.net` domain (see the README's License & trademark section). -- Game-derived data (icons, map image, item/building tables): property of - Coffee Stain Studios, not distributed here. Satisfactory is a trademark of - Coffee Stain Studios; this project is not affiliated with or endorsed by - them. +- Game-derived data (icons, map image, item/building/world tables): property + of Coffee Stain Studios. None of it is in this repository -- everything + under `game_data/generated/` and `map/static/map/icons/` is produced from + your own copy of the game by `game_data/extract_all.py`, and is gitignored. + A prebuilt `game_data.zip` of exactly those outputs is attached to a release + as a convenience for building and for CI; it is the game's data, not this + project's, and it is offered on the same terms as any other extraction of + assets you already own. Satisfactory is a trademark of Coffee Stain Studios; + this project is not affiliated with or endorsed by them. diff --git a/README.md b/README.md index 848005d..a1aaa9d 100644 --- a/README.md +++ b/README.md @@ -86,9 +86,9 @@ Everything — site, parser, desktop app, data extraction — is covered in The Rust parser is a port of [GreyHak/sat_sav_parse](https://github.com/GreyHak/sat_sav_parse), validated field-by-field against the Python reference with bit-exact differential -gates. The static world tables in `game_data/sav_data/` were originally -converted from that project; they now regenerate from the game's own level -data (validated 1:1 against the originals — see +gates. The static world tables (resource nodes, slugs, crash sites…) were +originally converted from that project; they now regenerate from the game's +own level data (validated 1:1 against the originals — see `game_data/extractors/extract_collectables.py`). This project wouldn't exist without GreyHak's format work. @@ -105,7 +105,9 @@ publish their source, including when only serving the app. The canonical instance is [satisfactorymap.net](https://satisfactorymap.net/). Satisfactory is a trademark of Coffee Stain Studios. The game-derived data -(icons, map image, item/building tables) belongs to Coffee Stain Studios and -is not distributed in this repository — see -[CONTRIBUTING.md](CONTRIBUTING.md). This project is not affiliated with or -endorsed by Coffee Stain Studios. +(icons, map image, item/building/world tables) belongs to Coffee Stain +Studios: none of it is committed here — it is extracted from your own copy of +the game by `game_data/extract_all.py`, or unpacked from the convenience +archive attached to a release (see [game_data/README.md](game_data/README.md) +and [CONTRIBUTING.md](CONTRIBUTING.md)). This project is not affiliated with +or endorsed by Coffee Stain Studios. diff --git a/game_data/README.md b/game_data/README.md new file mode 100644 index 0000000..f7358df --- /dev/null +++ b/game_data/README.md @@ -0,0 +1,50 @@ +# game_data/ + +Everything the app knows about Satisfactory that does not come out of a save. + +**One rule: if a script wrote it, it is not in git.** + +| Folder | In git? | What | +|---|---|---| +| `curated/` | **yes** | Hand-maintained inputs. No script generates these — a person edits them. | +| `generated/docs/` | no | Extracted from the game's `Docs.json` (items, recipes, buildings, schematics, categories, game phases). | +| `generated/world/` | no | Extracted from the FModel level-export dump (resource nodes, slugs, somersloops, mercer spheres, crash sites, dropped items, creature spawners, caves, the world perimeter and water limit). | +| `generated/` (root) | no | The fused map render and its tile pyramid. | +| `../map/static/map/icons/` | no | Icon PNGs, extracted the same way — outside this folder only because the site serves them. | + +So there are exactly two ways to get a working checkout: + +```bash +py game_data/extract_all.py # you have the game installed + an FModel dump +py game_data/package_game_data.py unpack game_data.zip # you don't +``` + +The Rust crate `include_str!`s these tables, so **it will not compile until one +of those has run** — that is intentional, not a bug to work around. + +## Why the split + +`generated/` is game-derived data: it belongs to Coffee Stain Studios and is +not redistributed in this repository (see [NOTICES.md](../NOTICES.md)). Keeping +it entirely out of git also means a game update never shows up as a five-figure +diff, and there is no way for a committed table to drift from what the +extractors actually produce — the failure mode the old layout had, where half +the generated tables were committed and half were not. + +`docs/` and `world/` are split because they have different inputs and different +regeneration costs: `docs/` needs one file copied out of the game install, +`world/` needs a multi-gigabyte FModel export with three separate export modes +(`extract_all.py` preflights them and tells you which one you forgot). + +## The curated files + +| File | What it is | +|---|---| +| `readableNameCorrections.json` | Class name → the name a human should see, where the game's own is wrong, missing or ambiguous. | +| `typePaths.json` | The class lists the parser keys behavior off (belts, miners, power lines, crash sites). | +| `categoryLabels.json`, `categoryOverrides.json` | Build-menu category naming and per-class overrides for the sidebar tree. | +| `pickupItems.json` | Which item each of the 703 world pickups holds. FModel cannot decode the cooked `FInventoryItem` struct, so this is the one world fact no extraction recovers; `extract_collectables.py --items-from-save some.sav` learns new entries from a save and writes them back here. | + +Every table's shape is documented where it is produced: `SCHEMA.md` for +`generated/docs/`, the header comment of each script in `extractors/` for the +rest. diff --git a/game_data/SCHEMA.md b/game_data/SCHEMA.md index 5ebb7df..fd8e53b 100644 --- a/game_data/SCHEMA.md +++ b/game_data/SCHEMA.md @@ -391,7 +391,7 @@ Every consumable plant on the map (~5,300), grouped by the item it yields: `Desc_Berry_C` (Paleberry, from `BP_BerryBush_C`), `Desc_Nut_C` (Beryl Nut, `BP_NutBush_C`), `Desc_Shroom_C` (Bacon Agaric, `BP_Shroom_01_C`). Produced by `game_data/extractors/extract_collectables.py` from the same -world-partition cell exports as the `sav_data/` tables; positions are +world-partition cell exports as the other `world/` tables; positions are world-space centimeters, keys are the actor path names as a save spells them. diff --git a/game_data/categoryLabels.json b/game_data/curated/categoryLabels.json similarity index 100% rename from game_data/categoryLabels.json rename to game_data/curated/categoryLabels.json diff --git a/game_data/categoryOverrides.json b/game_data/curated/categoryOverrides.json similarity index 100% rename from game_data/categoryOverrides.json rename to game_data/curated/categoryOverrides.json diff --git a/game_data/curated/pickupItems.json b/game_data/curated/pickupItems.json new file mode 100644 index 0000000..cfa5c14 --- /dev/null +++ b/game_data/curated/pickupItems.json @@ -0,0 +1,705 @@ +{ + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable114": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable115": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable119": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable125": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable163": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable163_UAID_40B076DF2F79E7CE01_2045954376": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable166": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Explosive.Desc_Rebar_Explosive_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable166_UAID_40B076DF2F79E7CE01_2045958380": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable182": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable184": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_103": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_106": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_107": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_108": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_390": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_391": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_393": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_394": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_395": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_396": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_397": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_398": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_399": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_400": "/Game/FactoryGame/Equipment/Rifle/Ammo/Desc_CartridgeSmartProjectile.Desc_CartridgeSmartProjectile_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_415": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_416": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_417": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_418": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_420": "/Game/FactoryGame/Resource/Equipment/Medkit/Desc_Medkit.Desc_Medkit_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_427": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_428": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917441624": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917484625": "/Game/FactoryGame/Resource/Parts/CartridgeStandard/Desc_CartridgeStandard.Desc_CartridgeStandard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917486626": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917489627": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917491628": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917492629": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420554022": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420580023": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Stunshot.Desc_Rebar_Stunshot_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420582024": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420583025": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420584026": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420585027": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790DCC01_1241109912": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745600390": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745625391": "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_PackagedBiofuel.Desc_PackagedBiofuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745626392": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745627393": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745628394": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745628395": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548923574": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548949575": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548950576": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548951577": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548952578": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548952579": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825274441": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825296442": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825297443": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825298444": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825299445": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825300446": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060835156": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060862157": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060863158": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060864159": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060865160": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060866161": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065644514": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065670515": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065671516": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065672517": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065673518": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065674519": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444833224": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444870225": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444872226": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444873227": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444874228": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444875229": "/Game/FactoryGame/Resource/Parts/SpikedRebar/Desc_SpikedRebar.Desc_SpikedRebar_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523382934": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523413935": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523414936": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523415937": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523416938": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523417939": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619382940": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619413941": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619414942": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619416943": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619417944": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619418945": "/Game/FactoryGame/Resource/Parts/ComputerSuper/Desc_ComputerSuper.Desc_ComputerSuper_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914572122": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914599123": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914600124": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914601125": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914602126": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914603127": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1493836352": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1510733353": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1520628354": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1520654355": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1525774356": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073894714": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073928715": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073929716": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073930717": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073931718": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073932719": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559412686": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559495687": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559497688": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559499689": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559501690": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559502691": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122903128": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122939129": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122940130": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122941131": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122942132": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122943133": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848677904": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848704905": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848705906": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848708907": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848712908": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848715909": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928505396": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928590397": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928591398": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Explosive.Desc_Rebar_Explosive_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928592399": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928594400": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928595401": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553781262": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553802263": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553803264": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553805265": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553809266": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553812267": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578736268": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578756269": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578760270": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578761271": "/Game/FactoryGame/Resource/Parts/Fuel/Desc_Fuel.Desc_Fuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578763272": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578764273": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657047154": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657072155": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657074156": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657075157": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657076158": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657077159": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038658488": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038675489": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038676490": "/Game/FactoryGame/Resource/Parts/Fuel/Desc_Fuel.Desc_Fuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038677491": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038678492": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038679493": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667062846": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667081847": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667082848": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667083849": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667084850": "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskGas.Desc_NobeliskGas_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667085851": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571588162": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571668163": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571670164": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571671165": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571672166": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571674167": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1311992380": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312024381": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312025382": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312026383": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312027384": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312028385": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418372386": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418401387": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418403388": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418406389": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418408390": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418409391": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7949CE01_1110513573": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7951C101_2089542226": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7954DD01_1576152325": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Spreadshot.Desc_Rebar_Spreadshot_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7956DD01_1675839678": "/Game/FactoryGame/Resource/Parts/NobeliskExplosive/Desc_NobeliskExplosive.Desc_NobeliskExplosive_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7956DD01_1858672679": "/Game/FactoryGame/Resource/Equipment/ShockShank/BP_EquipmentDescriptorShockShank.BP_EquipmentDescriptorShockShank_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795AC101_1501791808": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ADD01_1750249384": "/Game/FactoryGame/Resource/Equipment/JumpingStilts/BP_EquipmentDescriptorJumpingStilts.BP_EquipmentDescriptorJumpingStilts_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795BC101_1789143985": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CC101_2070279162": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800365336": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800389337": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800391338": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800392339": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800393340": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800394341": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795DC101_1145974339": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795DC101_1146000340": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795DC101_1910607341": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232908759": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232929760": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232930761": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232931762": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232932763": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232933764": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756193765": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756212766": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756213767": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756214768": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756215769": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756216770": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798732771": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798751772": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798752773": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798753774": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798754775": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798755776": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844966046": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844991047": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844992048": "/Game/FactoryGame/Equipment/Rifle/Ammo/Desc_CartridgeSmartProjectile.Desc_CartridgeSmartProjectile_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844993049": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844994050": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844995051": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745806420": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745826421": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745827422": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745829423": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745830424": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745831425": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908069164": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908094165": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908096166": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908097167": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908098168": "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskCluster.Desc_NobeliskCluster_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1288619873": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742942874": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742962875": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742963876": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742964877": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742965878": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742966879": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955765056": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955784057": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955785058": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955786059": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955787060": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955788061": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399859414": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399877415": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399878416": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399880417": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399881418": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399883419": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911653803": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911685804": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911686805": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911687806": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911688807": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911690808": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524845337": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524871338": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524872339": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524874340": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524875341": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524878342": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541700845": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541722846": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541723847": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541724848": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541725849": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541726850": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624824851": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624848852": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624849853": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624850854": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624851855": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624852856": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430532608": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430571609": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430572610": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430573611": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430574612": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430575613": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907900114": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907924115": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907926116": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907927117": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907929118": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907930119": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126579296": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126604297": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126605298": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126606299": "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskGas.Desc_NobeliskGas_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126607300": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126609301": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214804331": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214884332": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214886333": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214890334": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214894335": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214895336": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453329182": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453351183": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453352184": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453354185": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453355186": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453356187": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502696188": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502720189": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502722190": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502723191": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502724192": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502726193": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846376194": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846403195": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846404196": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846405197": "/Game/FactoryGame/Resource/Parts/Fuel/Desc_Fuel.Desc_Fuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846406198": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846408199": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883495200": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883519201": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883521202": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883522203": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883524204": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883525205": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515388865": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515417866": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515421867": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515422868": "/Game/FactoryGame/Equipment/Rifle/Ammo/Desc_CartridgeSmartProjectile.Desc_CartridgeSmartProjectile_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515423869": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515425870": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647548223": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647577224": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647580225": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647584226": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647587227": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647591228": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902798229": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902826230": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902829231": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902833232": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902836233": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902840234": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1349023139": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1349062140": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1377266141": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1377300142": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629220671": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629252672": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629253673": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629254674": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629255675": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629256676": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565876744": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565897745": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565899746": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565900747": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565901748": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565903749": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799BDD01_1695234829": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799BDD01_2055748830": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799CDD01_1480630007": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1316629776": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1374507777": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1374531778": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1478137779": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1478164780": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139909806": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139932807": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139933808": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139935809": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139937810": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139939811": "/Game/FactoryGame/Resource/Parts/Filter/Desc_Filter.Desc_Filter_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A1DD01_1810870888": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A2DD01_1733096065": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A2DD01_2087964066": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683933516": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683955517": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683957518": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683958519": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683959520": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683960521": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4DD01_2098139419": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152016698": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152038699": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152039700": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152041701": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152042702": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152043703": "/Game/FactoryGame/Resource/Parts/NobeliskExplosive/Desc_NobeliskExplosive.Desc_NobeliskExplosive_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130336056": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130359057": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130361058": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130362059": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130364060": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130365061": "/Game/FactoryGame/Resource/Parts/Filter/Desc_Filter.Desc_Filter_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A8DD01_1932653124": "/Game/FactoryGame/Resource/Equipment/StunSpear/BP_EquipmentDescriptorStunSpear.BP_EquipmentDescriptorStunSpear_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A9DD01_1740292301": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AADD01_1464699478": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AADD01_1889295479": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811242624": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811271625": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811272626": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811273627": "/Game/FactoryGame/Resource/Equipment/Medkit/Desc_Medkit.Desc_Medkit_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811274628": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811275629": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABDD01_1972325656": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ACDD01_1525324833": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203882372": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203913373": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203914374": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203915375": "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203915376": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203916377": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278898554": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278921555": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278922556": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278923557": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278924558": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278925559": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679167560": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679189561": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679190562": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679192563": "/Game/FactoryGame/Resource/Parts/Turbofuel/Desc_TurboFuel.Desc_TurboFuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679193564": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679194565": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894785566": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894808567": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894810568": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894811569": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894812570": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894813571": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940769572": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940791573": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940792574": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940793575": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940794576": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940795577": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364265736": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364297737": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364298738": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364299739": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364300740": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364301741": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363204332": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363258333": "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363260334": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363261335": "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_PackagedBiofuel.Desc_PackagedBiofuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363264336": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363267337": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162935514": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162956515": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162960516": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162961517": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162963518": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162964519": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152434270": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152459271": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152460272": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152461273": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152462274": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152463275": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042488452": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042508453": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042510454": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042510455": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042511456": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042512457": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637911634": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637927635": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637929636": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Spreadshot.Desc_Rebar_Spreadshot_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637930637": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637931638": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637932639": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428877224": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428898225": "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428901226": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428903227": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428906228": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428907229": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844777230": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844799231": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844804232": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844807233": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844811234": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844812235": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159278094": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159304095": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159305096": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159306097": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159308098": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159309099": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286281764": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286302765": "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286305766": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286309767": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286313768": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286316769": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495273770": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495295771": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495297772": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495299773": "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495303774": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495307775": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926562001": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926584002": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926585003": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926586004": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926587005": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926588006": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734761332": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734787333": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734788334": "/Game/FactoryGame/Resource/Parts/SpikedRebar/Desc_SpikedRebar.Desc_SpikedRebar_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734789335": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734790336": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734791337": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269682711": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269703712": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269704713": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269705714": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269706715": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Stunshot.Desc_Rebar_Stunshot_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269707716": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120010421": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120035422": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120036423": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120037424": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120038425": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120039426": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691398267": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691497268": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691499269": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691503270": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691507271": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691510272": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917942625": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917972626": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917976627": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917980628": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917983629": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917986630": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093634131": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093652132": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093653133": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093654134": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093655135": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093656136": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769749568": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769783569": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769785570": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769786571": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769787572": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769788573": "/Game/FactoryGame/Resource/Parts/SpikedRebar/Desc_SpikedRebar.Desc_SpikedRebar_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944014102": "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944040103": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944041104": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944042105": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944043106": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944044107": "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_Biofuel.Desc_Biofuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296409391": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296434392": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296437393": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296446395": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296450396": "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Explosive.Desc_Rebar_Explosive_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023555397": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023578398": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023582399": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023590401": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691639579": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691662580": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691666581": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691675583": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691679584": "/Game/FactoryGame/Equipment/Rifle/Ammo/Desc_CartridgeSmartProjectile.Desc_CartridgeSmartProjectile_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547215761": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547242763": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547247764": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547255766": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165850988": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165876989": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165878990": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165879991": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165880992": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165881993": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1436977170": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437003171": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437004172": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437005173": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437006174": "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437007175": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734536295": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734562296": "/Game/FactoryGame/Resource/Parts/Turbofuel/Desc_TurboFuel.Desc_TurboFuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734565297": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734567298": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734577300": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121738301": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121764303": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121768304": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121776306": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183577528": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183604529": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183605530": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183606531": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183607532": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183609533": "/Game/FactoryGame/Resource/Parts/SpikedRebar/Desc_SpikedRebar.Desc_SpikedRebar_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143841064": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143866065": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143866066": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143868067": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143869068": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143870069": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155090070": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155109071": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155110072": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155111073": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155113074": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155114075": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166745076": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166764077": "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_PackagedBiofuel.Desc_PackagedBiofuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166766078": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166767079": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166768080": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166769081": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816305483": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816333484": "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816337485": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816348486": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816350487": "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskShockwave.Desc_NobeliskShockwave_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816353488": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695467710": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695500711": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695502712": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695503713": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695504714": "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695505715": "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_Biofuel.Desc_Biofuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1481191272": "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1638364273": "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1695631274": "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1695657275": "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1856481276": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1856511277": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045936375": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045955377": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045956378": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045957379": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611263919": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611281920": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611282921": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611284922": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611284923": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611286924": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463580864": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463601865": "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463602866": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463603867": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463604868": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463606869": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1221990222": "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222010223": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222012224": "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskCluster.Desc_NobeliskCluster_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222013225": "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222015226": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222016227": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F7C201_1202575504": "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178457288": "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskGas.Desc_NobeliskGas_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178478289": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178479290": "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178480291": "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178481292": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178482293": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378145294": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378166295": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378167296": "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378168297": "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378169298": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378170299": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068223580": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068247581": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068249582": "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068250583": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068251584": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068252585": "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981079546": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981108547": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981109548": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981111549": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981112550": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981113551": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085617290": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085719291": "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085720292": "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_PackagedBiofuel.Desc_PackagedBiofuel_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085721293": "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085723294": "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085725295": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2112985256": "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113016257": "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113017258": "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113018259": "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113019260": "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113020261": "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915149648": "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915243649": "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915244650": "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915246651": "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915247652": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C", + "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915248653": "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C" +} \ No newline at end of file diff --git a/game_data/sav_data/readableNameCorrections.json b/game_data/curated/readableNameCorrections.json similarity index 100% rename from game_data/sav_data/readableNameCorrections.json rename to game_data/curated/readableNameCorrections.json diff --git a/game_data/sav_data/typePaths.json b/game_data/curated/typePaths.json similarity index 100% rename from game_data/sav_data/typePaths.json rename to game_data/curated/typePaths.json diff --git a/game_data/extract_all.py b/game_data/extract_all.py index 5167bfc..94dc00e 100644 --- a/game_data/extract_all.py +++ b/game_data/extract_all.py @@ -17,12 +17,11 @@ collectibles, resource nodes), the sliced map render, and every icon PNG. -Most steps write to the gitignored game_data/generated/; -extract_collectables.py instead rewrites the COMMITTED world tables under -game_data/sav_data/ (slugs, somersloops, mercer spheres, crash sites, -dropped items, resource purity), extract_world_bounds.py (the damaging map -perimeter and the water limit) and extract_caves.py (cave outlines) -- review -their git diffs after a game update. +Everything written here is gitignored and lands under game_data/generated/: +docs/ for the Docs.json extracts, world/ for the level-export tables (slugs, +somersloops, mercer spheres, crash sites, dropped items, resource purity, +creature spawners, caves, the world perimeter and the water limit), plus the +map render. Nothing generated is committed -- see game_data/README.md. - .pak (loose files -- a normal package export SKIPS these). FModel: right-click FactoryGame/Content/Localization/StringTables -> "Export Folder's Packages Raw Data". Provides the string-table source CSVs diff --git a/game_data/extractors/copy_icons.py b/game_data/extractors/copy_icons.py index 85b52b2..804832c 100644 --- a/game_data/extractors/copy_icons.py +++ b/game_data/extractors/copy_icons.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Copies just the item/building icon PNGs referenced by game_data/generated/items.json +# Copies just the item/building icon PNGs referenced by game_data/generated/docs/items.json # and buildings.json (their "icon" field -- see extract_docs_json.py/SCHEMA.md) # out of a full game asset extraction, into the map's static icon folders, keyed # by ClassName (e.g. "Desc_IronPlate_C.png", "Build_WorkBench_C.png"). This is @@ -25,13 +25,15 @@ # (generated JSON file, destination subfolder under map/static/map/icons/) -- # resources.json shares "items" with items.json (raw resources sit alongside # regular items in the frontend's icons/items/ folder). +# Paths are relative to game_data/generated/ (docs/ = the docs.json extracts, +# world/ = the level-export tables). ICON_SOURCES = ( - ("items.json", "items"), - ("resources.json", "items"), - ("buildings.json", "buildings"), + ("docs/items.json", "items"), + ("docs/resources.json", "items"), + ("docs/buildings.json", "buildings"), # Creature icons for the spawner layer (see extract_spawners.py) -- same # {ClassName: {"icon": ...}} shape, keyed by Char_*_C. - ("creatures.json", "creatures"), + ("world/creatures.json", "creatures"), ) # A handful of real per-concept icons live in Docs.json under a field @@ -49,7 +51,7 @@ # normal item) -- this is ResourceSink_Purchasable_HardDrive_C's # mSchematicIcon, the real in-game hard drive crate art. ("/FactoryGame/Resource/Environment/CrashSites/UI/HardDrive_256", "items", "HardDrive.png"), - # Geyser (the "Desc_Geyser_C" resourceType -- see sav_data.resourcePurity) + # Geyser (the "Desc_Geyser_C" resourceType -- see world/resourcePurity.json) # is a synthetic key this parser invented; it has no FGResourceDescriptor # (or any other Docs.json entry/field) at all. This is the real in-game # geyser icon, found by inspecting the extraction directly rather than diff --git a/game_data/extractors/extract_caves.py b/game_data/extractors/extract_caves.py index 9807efc..9d744cf 100644 --- a/game_data/extractors/extract_caves.py +++ b/game_data/extractors/extract_caves.py @@ -1,5 +1,5 @@ """Extract the map's cave systems -- outline polygons in world coordinates -- -into game_data/sav_data/caves.json. +into game_data/generated/world/caves.json. Caves are not actors: nothing in a save (or in docs.json) says "there is a cave here". They are authored level geometry, so the only source of truth is @@ -50,8 +50,9 @@ py game_data/extractors/extract_caves.py [path/to/extraction/.../Content] -Re-run whenever the extraction dump is refreshed (new game patch), and review -the git diff: this file is committed (the app must work without game files). +Re-run whenever the extraction dump is refreshed (new game patch). The output +is gitignored like everything else extract_all.py produces -- it reaches a +machine without the game files through game_data.zip (see game_data/README.md). Shape (caves.json): {"caves": [{"id", "name", "bbox", "zRange", "areaM2", "volumes", "rings"}]} @@ -83,7 +84,7 @@ REPO_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) DEFAULT_CONTENT_ROOT = r"C:\Users\plane.DESKTOP-SAH3OHV\Documents\SatisExtract\FactoryGame\Content" LEVEL_SUBDIR = os.path.join("FactoryGame", "Map", "GameLevel01") -OUTPUT_PATH = os.path.join(REPO_ROOT, "game_data", "sav_data", "caves.json") +OUTPUT_PATH = os.path.join(REPO_ROOT, "game_data", "generated", "world", "caves.json") # Only files mentioning one of these are parsed (the dump is ~1.5 GB of JSON). NEEDLES = (b"Cave", b"Atmosphere") diff --git a/game_data/extractors/extract_collectables.py b/game_data/extractors/extract_collectables.py index 36cc5f4..455dd64 100644 --- a/game_data/extractors/extract_collectables.py +++ b/game_data/extractors/extract_collectables.py @@ -1,4 +1,4 @@ -"""Regenerate the world-collectible tables in game_data/sav_data/ from the +"""Regenerate the world-collectible tables in game_data/generated/world/ from the FModel extraction dump -- replaces the original workflow that derived them from GreyHak's sat_sav_parse tables / a fully-revealed save. @@ -18,8 +18,7 @@ geysers keep the synthetic Desc_Geyser_C class and an absent mPurity means the RP_Normal default) -One more table goes to game_data/generated/ instead (gitignored: fully -regenerable, no merge state, not consumed by the app yet): +One more table lands beside them, unused by the app so far: consumables.json BP_BerryBush_C / BP_NutBush_C / BP_Shroom_01_C, keyed by the consumable item class they yield @@ -40,10 +39,10 @@ field of the detailed tables is the world-partition cell name the actor lives in (confirmed 522/522). -The two other files in game_data/sav_data/ are NOT touched by this script: -readableNameCorrections.json and typePaths.json are small hand-curated -tables (originally converted from GreyHak's sat_sav_parse sav_data package, -see git history for extract_sav_data_tables.py), edited in place. +Every output here is gitignored (see game_data/README.md): regenerate with +extract_all.py or unpack game_data.zip. The one thing that is NOT derivable +from the dump -- which item each pickup holds -- lives in the committed +game_data/curated/pickupItems.json and is an INPUT to this script. Fully automated -- nothing curated survives in the output: - The metadata dict (4th element) of somersloops/mercerSpheres is written @@ -51,16 +50,16 @@ crashSites metadata is DERIVED: the payload builder reads only "cost"/"power" (the unlock requirement shown per hard drive), and both come from the drop pod's cooked mUnlockCost -- item labels resolved via - generated/items.json (run extract_docs_json.py first; falls back to the + generated/docs/items.json (run extract_docs_json.py first; falls back to the short class name with a warning). - freeDroppedItems item classes: the item IS cooked into each placed actor, but FModel's CUE4Parse has no Satisfactory handler for the custom-serialized FInventoryItem struct, so the dump exports mPickupItems.Item as null (counts and positions export fine). Items - therefore merge from, in priority order: --items-from-save (a .sav - re-serializes the cooked value in a format this script can read; - validated 659 items / 0 mismatches against the curated table), then - VERIFIED_PICKUP_ITEMS below, then the existing table by instance name. + come from curated/pickupItems.json, with --items-from-save winning over + it (a .sav re-serializes the cooked value in a format this script can + read; validated 659 items / 0 mismatches against the curated table) and + writing what it learns back into that committed file. CAVEAT: a save only serializes actors whose world cell has streamed in near a player -- a brand-new save carries ~3 pickups (spawn area), a well-traveled one nearly all 703. Unknown new pickups are skipped with @@ -69,9 +68,9 @@ pointing --items-from-save at a save that has physically visited them without collecting them. -Key order preservation: existing tables keep their key/entry order (the -payload builder's output ordering depends on it); genuinely new entries -append at the end. +Key order: every table is written sorted, so the same dump gives byte- +identical files on any machine (nothing depends on a previously written +table any more -- see orderedKeys). py game_data/extractors/extract_collectables.py [path/to/extraction/.../Content] [--items-from-save path/to/any.sav] [--check] @@ -92,7 +91,7 @@ REPO_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) DEFAULT_CONTENT_ROOT = r"C:\Users\plane.DESKTOP-SAH3OHV\Documents\SatisExtract\FactoryGame\Content" LEVEL_SUBDIR = os.path.join("FactoryGame", "Map", "GameLevel01") -SAV_DATA_DIR = os.path.join(REPO_ROOT, "game_data", "sav_data") +WORLD_DIR = os.path.join(REPO_ROOT, "game_data", "generated", "world") # actor Type -> (output table, bucket key inside it) SLUG_CLASSES = { @@ -118,20 +117,30 @@ NEEDLES = (b"BP_Crystal", b"BP_WAT", b"BP_DropPod", b"FGItemPickup_Spawnable", b"BP_ResourceNode", b"BP_Fracking", b"BP_BerryBush", b"BP_NutBush", b"BP_Shroom") -GENERATED_DIR = os.path.join(REPO_ROOT, "game_data", "generated") - -# Item classes for pickup instances the existing table doesn't know, verified -# outside the cooked data (which never stores them). -VERIFIED_PICKUP_ITEMS = { - # Verified against a fully-revealed save (sav-data-from-save branch): a - # gas nobelisk pickup upstream's table missed. - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126606299": - "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskGas.Desc_NobeliskGas_C", - # Verified against a save whose object body carries the item (18 Motors; - # missing from the reveal save because it had been collected there). - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130364060": - "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C", -} +CURATED_DIR = os.path.join(REPO_ROOT, "game_data", "curated") + +# {pickupInstanceName: itemClassPath} -- the one fact about a pickup that the +# cooked data does NOT carry (see the header), so it is a committed INPUT to +# this script rather than something recovered from its own last output. +# --items-from-save merges newly-learned entries straight into it. +CURATED_PICKUPS_NAME = "pickupItems.json" + + +def loadCuratedPickupItems(warnings): + path = os.path.join(CURATED_DIR, CURATED_PICKUPS_NAME) + if not os.path.isfile(path): + warnings.append(f"{path} missing -- every pickup will be skipped for want of an " + f"item class; restore it from git, it is not regenerable from the dump") + return {} + with open(path, encoding="utf-8") as f: + return json.load(f) + + +def saveCuratedPickupItems(mapping): + path = os.path.join(CURATED_DIR, CURATED_PICKUPS_NAME) + with open(path, "w", encoding="utf-8") as f: + json.dump({k: mapping[k] for k in sorted(mapping)}, f, ensure_ascii=False, indent=1) + f.write("\n") def rotatorToQuat(rot): @@ -391,7 +400,7 @@ def loadItemLabels(warnings): for crash-site cost labels. Empty (with a warning) if not generated yet.""" labels = {} for name in ("items.json", "resources.json"): - path = os.path.join(REPO_ROOT, "game_data", "generated", name) + path = os.path.join(REPO_ROOT, "game_data", "generated", "docs", name) if not os.path.isfile(path): warnings.append(f"{path} missing (run extract_docs_json.py first) -- " f"crash-site cost labels fall back to class names") @@ -423,7 +432,7 @@ def deriveRequirement(unlockCost, itemLabels, warnings): return {} -def loadExisting(name, directory=SAV_DATA_DIR): +def loadExisting(name, directory=WORLD_DIR): path = os.path.join(directory, name) if not os.path.isfile(path): return {} @@ -431,25 +440,25 @@ def loadExisting(name, directory=SAV_DATA_DIR): return json.load(f) -def groupByBucket(records, existing): - """{pathName: (bucket, pos, ...)} -> {bucket: {pathName: pos}}, keeping - the existing table's bucket and key order where present.""" +def groupByBucket(records): + """{pathName: (bucket, pos, ...)} -> {bucket: {pathName: pos}}, sorted.""" grouped = {} for pathName, rec in records.items(): grouped.setdefault(rec[0], {})[pathName] = rec[1] out = {} - for bucket in orderedKeys(existing, grouped): - old = existing.get(bucket, {}) - out[bucket] = {k: grouped[bucket][k] for k in orderedKeys(old, grouped[bucket])} + for bucket in orderedKeys(grouped): + out[bucket] = {k: grouped[bucket][k] for k in orderedKeys(grouped[bucket])} return out -def orderedKeys(existing, new): - """Existing key order first (for keys still present), new keys appended - in sorted order -- keeps diffs minimal and downstream ordering stable.""" - kept = [k for k in existing if k in new] - added = sorted(k for k in new if k not in existing) - return kept + added +def orderedKeys(new): + """Sorted. Every table is written in one deterministic order that depends + only on the dump, so two people regenerating from the same extraction get + byte-identical files -- which is what makes a difference in the archive + mean "the game changed", not "a different machine built it". (Ordering + used to follow whatever the previously committed table happened to have; + with the tables gitignored there is no such thing any more.)""" + return sorted(new) def buildTables(slugs, detail, pickups, nodes, consumables, saveItems=None): @@ -460,7 +469,7 @@ def buildTables(slugs, detail, pickups, nodes, consumables, saveItems=None): for bucket in ("blue", "yellow", "purple"): new = {k: pos for k, (b, pos, _) in slugs.items() if b == bucket} old = existingSlugs.get(bucket, {}) - slugsOut[bucket] = {k: new[k] for k in orderedKeys(old, new)} + slugsOut[bucket] = {k: new[k] for k in orderedKeys(new)} for k in old: if k not in new: warnings.append(f"powerSlugs/{bucket}: {k} disappeared from the dump") @@ -471,7 +480,7 @@ def buildTables(slugs, detail, pickups, nodes, consumables, saveItems=None): old = loadExisting(tableName) new = {k: v for k, v in detail.items() if v[0] == tableName} table = {} - for k in orderedKeys(old, new): + for k in orderedKeys(new): _, cell, quat, pos, unlockCost, _ = new[k] metadata = {} if tableName == "crashSites.json": @@ -482,19 +491,18 @@ def buildTables(slugs, detail, pickups, nodes, consumables, saveItems=None): warnings.append(f"{tableName}: {k} disappeared from the dump") detailOut[tableName] = table - # freeDroppedItems: {itemPath: [[count, pos, instanceName], ...]} -- - # resolve each instance's item from the existing table, then the verified - # overrides; keep existing item-key and entry order. - oldItems = loadExisting("freeDroppedItems.json") - itemByInstance = dict(VERIFIED_PICKUP_ITEMS) - for itemPath, entries in oldItems.items(): - for _count, _pos, instanceName in entries: - itemByInstance.setdefault(instanceName, itemPath) + # freeDroppedItems: {itemPath: [[count, pos, instanceName], ...]}. The item + # class is the one thing the dump cannot give us (see the header), so it + # comes from the committed curated/pickupItems.json instead -- an INPUT to + # this script, not its own previous output. That is what lets the output + # table be gitignored like every other generated file: delete every + # generated table, re-run, and this still resolves all 703 pickups. + itemByInstance = dict(loadCuratedPickupItems(warnings)) for instanceName, itemPath in (saveItems or {}).items(): previous = itemByInstance.get(instanceName) if previous is not None and previous != itemPath: warnings.append(f"freeDroppedItems: {instanceName} item differs between " - f"save ({itemPath}) and table ({previous}) -- save wins") + f"save ({itemPath}) and curated table ({previous}) -- save wins") itemByInstance[instanceName] = itemPath grouped = {} for instanceName, (num, pos, mesh, _) in pickups.items(): @@ -505,17 +513,20 @@ def buildTables(slugs, detail, pickups, nodes, consumables, saveItems=None): continue grouped.setdefault(itemPath, []).append((num, pos, instanceName)) itemsOut = {} - for itemPath in orderedKeys(oldItems, grouped): - oldOrder = {e[2]: i for i, e in enumerate(oldItems.get(itemPath, []))} - entries = sorted(grouped[itemPath], key=lambda e: (oldOrder.get(e[2], len(oldOrder)), e[2])) + for itemPath in orderedKeys(grouped): + entries = sorted(grouped[itemPath], key=lambda e: e[2]) itemsOut[itemPath] = [[num, pos, name] for num, pos, name in entries] - for _c, _p, name in oldItems.get(itemPath, []): - if name not in pickups: - warnings.append(f"freeDroppedItems: {name} ({itemPath}) disappeared from the dump") + # The curated table is the roster of pickups we know the item for, so it + # is also how a pickup deleted by a game update gets noticed. + for instanceName in itemByInstance: + if instanceName not in pickups: + warnings.append(f"freeDroppedItems: {instanceName} is in " + f"{CURATED_PICKUPS_NAME} but not in the dump -- " + f"drop it from that file if the game removed it") oldPurity = loadExisting("resourcePurity.json") purityOut = {} - for k in orderedKeys(oldPurity, nodes): + for k in orderedKeys(nodes): desc, purity, pos, core, _ = nodes[k] if desc is None or purity is None: warnings.append(f"resourcePurity: {k} has unresolvable class/purity -- skipped") @@ -525,7 +536,7 @@ def buildTables(slugs, detail, pickups, nodes, consumables, saveItems=None): if k not in nodes: warnings.append(f"resourcePurity: {k} disappeared from the dump") - consumablesOut = groupByBucket(consumables, loadExisting("consumables.json", GENERATED_DIR)) + consumablesOut = groupByBucket(consumables) return slugsOut, detailOut, itemsOut, purityOut, consumablesOut, warnings @@ -561,6 +572,17 @@ def main(): if savPath: saveItems = readPickupItemsFromSave(savPath) print(f"{len(saveItems)} pickup items read from {savPath}") + # A save is the only way to learn a NEW pickup's item class, so what + # it teaches goes straight into the committed curated table -- that, + # not the generated output, is where the knowledge now lives. + if not check: + curated = loadCuratedPickupItems([]) + learned = {k: v for k, v in saveItems.items() if curated.get(k) != v} + if learned: + curated.update(learned) + saveCuratedPickupItems(curated) + print(f"learned {len(learned)} pickup item class(es) -> " + f"game_data/curated/{CURATED_PICKUPS_NAME} (commit it)") slugs, detail, pickups, nodes, consumables = collectActors(contentRoot) slugsOut, detailOut, itemsOut, purityOut, consumablesOut, warnings = buildTables( @@ -568,11 +590,11 @@ def main(): for w in warnings: print(f"WARNING: {w}") - outputs = {"powerSlugs.json": (SAV_DATA_DIR, slugsOut), - "freeDroppedItems.json": (SAV_DATA_DIR, itemsOut), - "resourcePurity.json": (SAV_DATA_DIR, purityOut), - **{name: (SAV_DATA_DIR, table) for name, table in detailOut.items()}, - "consumables.json": (GENERATED_DIR, consumablesOut)} + outputs = {"powerSlugs.json": (WORLD_DIR, slugsOut), + "freeDroppedItems.json": (WORLD_DIR, itemsOut), + "resourcePurity.json": (WORLD_DIR, purityOut), + **{name: (WORLD_DIR, table) for name, table in detailOut.items()}, + "consumables.json": (WORLD_DIR, consumablesOut)} failures = [] for name, (directory, table) in outputs.items(): path = os.path.join(directory, name) diff --git a/game_data/extractors/extract_docs_json.py b/game_data/extractors/extract_docs_json.py index 5c3d78f..1e0dfb2 100644 --- a/game_data/extractors/extract_docs_json.py +++ b/game_data/extractors/extract_docs_json.py @@ -53,7 +53,7 @@ from pathlib import Path DOCS_JSON_PATH = Path(__file__).parent.parent / "docs.json" -OUTPUT_DIR = Path(__file__).parent.parent / "generated" +OUTPUT_DIR = Path(__file__).parent.parent / "generated" / "docs" SKIPPED_NATIVE_CLASS_SUFFIXES = ("FGCustomizationRecipe'",) RECIPE_NATIVE_CLASS_SUFFIX = "FGRecipe'" diff --git a/game_data/extractors/extract_game_phases.py b/game_data/extractors/extract_game_phases.py index e63721d..ee5834c 100644 --- a/game_data/extractors/extract_game_phases.py +++ b/game_data/extractors/extract_game_phases.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Generates game_data/generated/gamePhases.json from the game's own +# Generates game_data/generated/docs/gamePhases.json from the game's own # GP_Project_Assembly_Phase_* assets (FGGamePhase) -- the Space Elevator # phase list with each phase's part costs. These assets are NOT in Docs.json # (which is why sav_map_data.py carries a hand-written wiki-sourced fallback @@ -20,7 +20,7 @@ DEFAULT_CONTENT_ROOT = Path(r"C:\Users\plane.DESKTOP-SAH3OHV\Documents\SatisExtract\FactoryGame\Content") GAME_PHASES_SUBDIR = Path("FactoryGame/GamePhases") -OUTPUT_PATH = Path(__file__).parent.parent / "generated" / "gamePhases.json" +OUTPUT_PATH = Path(__file__).parent.parent / "generated" / "docs" / "gamePhases.json" PHASE_FILENAME_RE = re.compile(r"^GP_Project_Assembly_Phase_(\d+)$") # e.g. "BlueprintGeneratedClass'Desc_SpaceElevatorPart_1_C'" diff --git a/game_data/extractors/extract_spawners.py b/game_data/extractors/extract_spawners.py index 8aea9ef..225cc36 100644 --- a/game_data/extractors/extract_spawners.py +++ b/game_data/extractors/extract_spawners.py @@ -1,5 +1,5 @@ """Extract every creature spawner on the map -- world position + spawned -creature class -- into game_data/generated/creatureSpawners.json. +creature class -- into game_data/generated/world/creatureSpawners.json. Reads the FModel-style JSON export of the game paks (the same extraction dump extract_game_phases.py and copy_icons.py read): the world-partition cell @@ -21,7 +21,7 @@ near a player, so classifying from saves comes out nearly empty in practice. The cooked level data's mCreatureClass is the static truth. -Also writes game_data/generated/creatures.json: official display name + icon +Also writes game_data/generated/world/creatures.json: official display name + icon per creature class. The class-to-name join comes from the FGCreatureDescriptor assets in the same dump (/FactoryGame/Character/Creature/ CreatureDescriptors/): each descriptor carries mCreatureClass and an @@ -71,7 +71,7 @@ # Loose file from the pak, exported raw via FModel (see docstring NOTE); # lives under Content/Localization/, not Content/FactoryGame/. WORLD_DATA_CSV = os.path.join("Localization", "StringTables", "World_Data.csv") -OUTPUT_DIR = os.path.join(REPO_ROOT, "game_data", "generated") +OUTPUT_DIR = os.path.join(REPO_ROOT, "game_data", "generated", "world") OUTPUT_PATH = os.path.join(OUTPUT_DIR, "creatureSpawners.json") NAMES_OUTPUT_PATH = os.path.join(OUTPUT_DIR, "creatures.json") @@ -265,6 +265,9 @@ def main(): if creature in creatures: creatures[creature]["displayName"] = displayName creatures = dict(sorted(creatures.items())) + # Both files land in generated/world/, which does not exist on a checkout + # that has never run the extractors (nothing generated is committed). + os.makedirs(OUTPUT_DIR, exist_ok=True) with open(NAMES_OUTPUT_PATH, "w", encoding="utf-8", newline="\n") as f: json.dump(creatures, f, ensure_ascii=False, indent=1) f.write("\n") diff --git a/game_data/extractors/extract_world_bounds.py b/game_data/extractors/extract_world_bounds.py index a89011a..e941928 100644 --- a/game_data/extractors/extract_world_bounds.py +++ b/game_data/extractors/extract_world_bounds.py @@ -1,5 +1,5 @@ """Extract the map's two invisible limits -- the damaging world perimeter and -the edge of the real water -- into game_data/sav_data/worldBounds.json. +the edge of the real water -- into game_data/generated/world/worldBounds.json. Both are authored level geometry with no representation in a save, so the cooked world-partition export under /FactoryGame/Map/GameLevel01/ is @@ -58,8 +58,9 @@ py game_data/extractors/extract_world_bounds.py [path/to/extraction/.../Content] -Re-run whenever the extraction dump is refreshed (new game patch), and review -the git diff: this file is committed (the app must work without game files). +Re-run whenever the extraction dump is refreshed (new game patch). The output +is gitignored like everything else extract_all.py produces -- it reaches a +machine without the game files through game_data.zip (see game_data/README.md). Shape (worldBounds.json): {"perimeter": {"polygon": [[x, y], ...], "ceilingZ": z, "floorZ": z, @@ -86,7 +87,7 @@ REPO_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) DEFAULT_CONTENT_ROOT = r"C:\Users\plane.DESKTOP-SAH3OHV\Documents\SatisExtract\FactoryGame\Content" LEVEL_SUBDIR = os.path.join("FactoryGame", "Map", "GameLevel01") -OUTPUT_PATH = os.path.join(REPO_ROOT, "game_data", "sav_data", "worldBounds.json") +OUTPUT_PATH = os.path.join(REPO_ROOT, "game_data", "generated", "world", "worldBounds.json") NEEDLES = (b"FGDamageOverTimeVolume", b"FGWaterVolume", b"OceanSplineTool") # The three damage classes that make up the map's edge, all under diff --git a/game_data/package_game_data.py b/game_data/package_game_data.py index 6e69c7d..1539134 100644 --- a/game_data/package_game_data.py +++ b/game_data/package_game_data.py @@ -6,11 +6,20 @@ # # What goes in (exactly the paths .gitignore keeps out of the repo, minus the # raw docs.json dump, which the viewer never reads at runtime): -# - game_data/generated/ (JSONs from extract_docs_json.py / -# extract_game_phases.py, plus -# map_highres.png from extract_map_image.py) +# - game_data/generated/ everything extract_all.py writes: +# docs/ (Docs.json extracts), world/ (level +# -export tables: nodes, slugs, crash sites, +# spawners, caves, world bounds) and the map +# render + tile pyramid # - map/static/map/icons/ (PNGs from copy_icons.py) # +# Both folders are packed recursively, so a new subfolder under generated/ is +# picked up with no change here. The archive is the ONLY way to get a working +# checkout without the game files -- since nothing generated is committed, an +# archive built before the generated/{docs,world}/ split does not carry the +# world tables and will leave the crate unable to compile; rebuild it with +# `pack` after this reorganisation (and bump the release tag CI points at). +# # Usage: # py game_data/package_game_data.py pack [zipPath] (default: game_data.zip in the repo root) # py game_data/package_game_data.py unpack diff --git a/game_data/sav_data/caves.json b/game_data/sav_data/caves.json deleted file mode 100644 index 15ea8fa..0000000 --- a/game_data/sav_data/caves.json +++ /dev/null @@ -1,4228 +0,0 @@ -{ - "caves": [ - { - "id": "Atmosphere_GrassFieldsCave3", - "name": "Grass Fields Cave 3", - "bbox": [ - -50852, - 259623, - 22748, - 301223 - ], - "zRange": [ - -15881, - -854 - ], - "areaM2": 117424, - "volumes": [ - "Atmosphere_GrassFieldsCave3", - "Atmosphere_GrassfieldsCave", - "Atmosphere_Grassfields_Lower_01" - ], - "rings": [ - [ - -50852, - 300423, - -48452, - 292023, - -32052, - 290823, - -24852, - 288423, - -24852, - 284823, - -31652, - 272023, - -29252, - 269623, - -25652, - 259623, - -5652, - 273223, - -12852, - 288023, - -14852, - 290023, - -14852, - 294023, - -9652, - 294023, - -4452, - 289623, - 7548, - 284423, - 6748, - 275623, - 10348, - 274823, - 10748, - 273623, - 15948, - 274023, - 16748, - 280023, - 22748, - 288023, - 6748, - 299223, - 3148, - 299223, - 348, - 297223, - -4452, - 297223, - -14452, - 299223, - -15252, - 295623, - -18852, - 295623, - -18852, - 298423, - -40452, - 299223, - -48052, - 301223, - -50852, - 301223 - ] - ] - }, - { - "id": "Atmosphere_GrassFieldsCave2", - "name": "Grass Fields Cave 2", - "bbox": [ - -94452, - 263623, - -88052, - 274823 - ], - "zRange": [ - -7797, - -4376 - ], - "areaM2": 5232, - "volumes": [ - "Atmosphere_GrassFieldsCave2" - ], - "rings": [ - [ - -94452, - 271623, - -92852, - 263623, - -88052, - 264023, - -88452, - 266423, - -89652, - 274823, - -94452, - 274023 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_D8CB8A319C9601F801_1822995225", - "name": null, - "bbox": [ - 119148, - 230423, - 152748, - 263623 - ], - "zRange": [ - -17158, - -1677 - ], - "areaM2": 59520, - "volumes": [ - "FGAtmosphereVolume_UAID_D8CB8A319C9601F801_1822995225", - "FGAtmosphereVolume_UAID_D8CB8A319C9603F801_1463160578", - "FGAtmosphereVolume_UAID_D8CB8A319C96BEF701_1643894431", - "FGAtmosphereVolume_UAID_D8CB8A319C96C0F701_2027554783" - ], - "rings": [ - [ - 119148, - 251223, - 120348, - 249223, - 120748, - 243623, - 121148, - 242823, - 123148, - 242823, - 123148, - 236423, - 124748, - 234823, - 124748, - 231223, - 125148, - 230423, - 127148, - 230423, - 134348, - 231623, - 143148, - 236823, - 143148, - 246823, - 141148, - 247223, - 141148, - 251223, - 143148, - 251223, - 143548, - 252823, - 152748, - 257623, - 147148, - 263623, - 145548, - 263623, - 137948, - 262423, - 137148, - 261223, - 131948, - 261223, - 131948, - 252823, - 127548, - 252823, - 125148, - 255223, - 122748, - 255223, - 121948, - 253223, - 119148, - 252023 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D6791702_1186147092", - "name": null, - "bbox": [ - 33148, - 234823, - 39948, - 242823 - ], - "zRange": [ - -5983, - -4082 - ], - "areaM2": 3568, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D6791702_1186147092" - ], - "rings": [ - [ - 33148, - 236023, - 36748, - 234823, - 39948, - 239623, - 39148, - 240823, - 34348, - 242823 - ] - ] - }, - { - "id": "cave_+000953_+002328", - "name": null, - "bbox": [ - 93548, - 230023, - 97148, - 235623 - ], - "zRange": [ - -4542, - -2459 - ], - "areaM2": 1568, - "volumes": [], - "rings": [ - [ - 93548, - 230823, - 97148, - 230023, - 96348, - 234023, - 96348, - 235623, - 93548, - 235623 - ] - ] - }, - { - "id": "Atmosphere_GrassFieldsCave4", - "name": "Grass Fields Cave 4", - "bbox": [ - -54852, - 212823, - -38852, - 226823 - ], - "zRange": [ - -6002, - -1617 - ], - "areaM2": 14672, - "volumes": [ - "Atmosphere_GrassFieldsCave4" - ], - "rings": [ - [ - -54852, - 222423, - -52452, - 215223, - -47252, - 214023, - -46452, - 212823, - -44452, - 213623, - -44452, - 215623, - -38852, - 216023, - -39252, - 216823, - -41252, - 221223, - -41652, - 226823, - -44852, - 226823, - -53252, - 224423, - -54852, - 223623 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067FDF1602_2011504984", - "name": null, - "bbox": [ - 11148, - 194023, - 15948, - 199223 - ], - "zRange": [ - -11856, - -9864 - ], - "areaM2": 1632, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067FDF1602_2011504984" - ], - "rings": [ - [ - 11148, - 194823, - 13548, - 194023, - 14348, - 196423, - 15948, - 196823, - 15548, - 198023, - 14748, - 199223, - 11948, - 198823 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_581122B2211A59F801_1653661712", - "name": null, - "bbox": [ - 71548, - 172823, - 81948, - 186823 - ], - "zRange": [ - -5700, - -1200 - ], - "areaM2": 8576, - "volumes": [ - "FGAtmosphereVolume_UAID_581122B2211A59F801_1653661712" - ], - "rings": [ - [ - 71548, - 184023, - 72348, - 182823, - 72348, - 178823, - 73148, - 178823, - 73548, - 172823, - 80348, - 173623, - 81948, - 174423, - 81548, - 175223, - 80348, - 176823, - 80348, - 179623, - 78748, - 179623, - 77948, - 180823, - 77148, - 186823, - 72348, - 186023 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC6E1702_1484559157", - "name": null, - "bbox": [ - -139252, - 146423, - -98852, - 181223 - ], - "zRange": [ - -10126, - -2048 - ], - "areaM2": 65072, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC6E1702_1484559157" - ], - "rings": [ - [ - -139252, - 166823, - -136852, - 165223, - -136852, - 163623, - -134852, - 163623, - -134852, - 161223, - -132052, - 161223, - -114452, - 146423, - -113252, - 146423, - -104452, - 157623, - -99252, - 158023, - -98852, - 159623, - -99652, - 160023, - -102052, - 160023, - -103252, - 162023, - -114852, - 170823, - -118452, - 174823, - -119652, - 174823, - -121252, - 177623, - -123652, - 178023, - -126852, - 181223, - -129652, - 178423, - -134852, - 178423, - -134852, - 173223, - -136852, - 173223, - -136852, - 169623 - ] - ] - }, - { - "id": "cave_+001695_+001742", - "name": null, - "bbox": [ - 168348, - 172823, - 170748, - 175623 - ], - "zRange": [ - -5608, - -2960 - ], - "areaM2": 608, - "volumes": [], - "rings": [ - [ - 168348, - 174023, - 168748, - 172823, - 170748, - 172823, - 170748, - 174423, - 170748, - 175623, - 168748, - 175623 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067FDC1602_1973683455", - "name": null, - "bbox": [ - -56052, - 170823, - -49652, - 173223 - ], - "zRange": [ - 1190, - 3434 - ], - "areaM2": 1392, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067FDC1602_1973683455" - ], - "rings": [ - [ - -56052, - 171623, - -55652, - 170823, - -50452, - 170823, - -49652, - 172423, - -50852, - 173223, - -55252, - 173223 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067F801602_1132656261", - "name": null, - "bbox": [ - 82748, - 152023, - 107948, - 169223 - ], - "zRange": [ - -5544, - -440 - ], - "areaM2": 21808, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067F801602_1132656261" - ], - "rings": [ - [ - 82748, - 160823, - 87548, - 158823, - 89148, - 156823, - 91948, - 156823, - 101548, - 152023, - 103148, - 152023, - 106348, - 160023, - 107948, - 160423, - 107548, - 161623, - 103148, - 161623, - 96348, - 164823, - 96348, - 166823, - 92348, - 166823, - 87948, - 169223, - 86348, - 168823 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC311702_2061397419", - "name": null, - "bbox": [ - -64052, - 125623, - -50052, - 143623 - ], - "zRange": [ - -5730, - 8338 - ], - "areaM2": 16576, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC311702_2061397419", - "FGAtmosphereVolume_UAID_04421A2E61D6711702_1546643681" - ], - "rings": [ - [ - -64052, - 140823, - -58852, - 139623, - -58852, - 136023, - -60452, - 132023, - -60452, - 127223, - -58052, - 125623, - -56052, - 126423, - -56052, - 127223, - -50452, - 127223, - -50452, - 140823, - -52452, - 140823, - -52852, - 143223, - -59652, - 143623, - -64052, - 143623 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D67C1702_1120150612", - "name": null, - "bbox": [ - 214348, - 103623, - 247148, - 143223 - ], - "zRange": [ - -11610, - 8105 - ], - "areaM2": 69584, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D67C1702_1120150612", - "FGAtmosphereVolume_UAID_04421A2E61D6821702_1668298668", - "FGAtmosphereVolume_UAID_581122B2211A58F801_1978056535", - "FGAtmosphereVolume_UAID_B06EBFBF067F7E1602_2024842908" - ], - "rings": [ - [ - 214348, - 126423, - 216348, - 124823, - 215948, - 119623, - 219148, - 113623, - 219148, - 110023, - 230348, - 110423, - 230348, - 108423, - 231948, - 108423, - 232748, - 106823, - 235548, - 106823, - 238348, - 103623, - 239948, - 103623, - 240748, - 105223, - 242748, - 105223, - 243548, - 108823, - 247148, - 111223, - 241548, - 118023, - 240348, - 119623, - 240348, - 124423, - 234348, - 126023, - 234348, - 130023, - 238748, - 134423, - 238748, - 135623, - 229948, - 143223, - 228348, - 143223, - 226348, - 141223 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_581122B2211A66F801_1638250003", - "name": null, - "bbox": [ - 45948, - 131623, - 77548, - 142023 - ], - "zRange": [ - -9200, - 6689 - ], - "areaM2": 16528, - "volumes": [ - "FGAtmosphereVolume_UAID_581122B2211A66F801_1638250003" - ], - "rings": [ - [ - 45948, - 136823, - 55548, - 135623, - 55548, - 134823, - 59948, - 133223, - 67548, - 131623, - 71548, - 133623, - 75548, - 133623, - 77548, - 135223, - 77148, - 137223, - 67548, - 136823, - 59948, - 140423, - 46348, - 142023 - ] - ] - }, - { - "id": "Atmosphere_EasternDuneForestCave", - "name": "Eastern Dune Forest Cave", - "bbox": [ - 1148, - 24023, - 64748, - 133223 - ], - "zRange": [ - -15465, - 20708 - ], - "areaM2": 427712, - "volumes": [ - "Atmosphere_EasternDuneForestCave", - "Atmosphere_TitanforesCave2", - "Atmosphere_TitanforestCave", - "FGAtmosphereVolume_UAID_B06EBFBF067FDB1602_1388369277", - "FGAtmosphereVolume_UAID_B06EBFBF067FDB1602_1854625278" - ], - "rings": [ - [ - 1148, - 101223, - 13948, - 38023, - 26748, - 31623, - 28748, - 29623, - 37948, - 24423, - 41148, - 24023, - 45148, - 32023, - 51548, - 39623, - 53548, - 41623, - 54748, - 41623, - 55548, - 44423, - 57948, - 44423, - 58348, - 46823, - 64748, - 48023, - 62748, - 60023, - 52348, - 112023, - 50748, - 112823, - 42748, - 110823, - 38348, - 110823, - 38348, - 114423, - 42348, - 124023, - 37148, - 124423, - 35948, - 127223, - 34748, - 128423, - 32748, - 128423, - 32748, - 130423, - 30748, - 130823, - 30348, - 133223, - 28748, - 132823, - 28748, - 128023, - 25548, - 128023, - 25548, - 126423, - 23148, - 126423, - 11948, - 105223, - 1148, - 102823 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC721702_1349664863", - "name": null, - "bbox": [ - -151252, - 120023, - -140052, - 130423 - ], - "zRange": [ - 3319, - 14161 - ], - "areaM2": 7504, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC721702_1349664863" - ], - "rings": [ - [ - -151252, - 124823, - -149252, - 123223, - -148852, - 120423, - -143252, - 120023, - -142452, - 122823, - -140052, - 125623, - -141252, - 126423, - -141252, - 129623, - -146052, - 130423, - -148052, - 128023, - -149252, - 128023, - -149252, - 126823 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_D8CB8A319C9600F801_1933157048", - "name": null, - "bbox": [ - 207948, - 106823, - 217148, - 116423 - ], - "zRange": [ - -6232, - -3908 - ], - "areaM2": 3856, - "volumes": [ - "FGAtmosphereVolume_UAID_D8CB8A319C9600F801_1933157048" - ], - "rings": [ - [ - 207948, - 114423, - 208348, - 111223, - 210748, - 111223, - 210748, - 110023, - 211948, - 110023, - 214348, - 106823, - 215548, - 106823, - 217148, - 108823, - 217148, - 110023, - 215548, - 110023, - 210348, - 116423, - 208348, - 116423 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC711702_2107037686", - "name": null, - "bbox": [ - -86852, - 98423, - -76852, - 112023 - ], - "zRange": [ - -2028, - 2664 - ], - "areaM2": 7984, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC711702_2107037686" - ], - "rings": [ - [ - -86852, - 99623, - -86052, - 98423, - -83652, - 99223, - -83652, - 103623, - -77652, - 103623, - -76852, - 110823, - -76852, - 111623, - -80452, - 112023, - -84852, - 111623, - -85252, - 105223, - -86452, - 104023 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_D8CB8A319C96CEF001_1736089855", - "name": null, - "bbox": [ - -191652, - 49623, - -136052, - 100823 - ], - "zRange": [ - -3993, - 21797 - ], - "areaM2": 153888, - "volumes": [ - "FGAtmosphereVolume_UAID_D8CB8A319C96CEF001_1736089855" - ], - "rings": [ - [ - -191652, - 64023, - -170852, - 62423, - -170852, - 50823, - -163252, - 49623, - -162852, - 62823, - -136052, - 63623, - -139252, - 83223, - -139252, - 84023, - -152452, - 94823, - -153252, - 99623, - -155252, - 100823, - -155652, - 96023, - -160452, - 96023, - -160852, - 94823, - -166852, - 94823, - -168452, - 94423, - -168452, - 93623, - -170852, - 93623, - -170852, - 92423, - -185252, - 85223, - -188852, - 82423, - -189252, - 77623, - -189652, - 76023, - -190452, - 76023 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC1F1702_1698465244", - "name": null, - "bbox": [ - 224748, - 87623, - 238348, - 100023 - ], - "zRange": [ - -1784, - 379 - ], - "areaM2": 9872, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC1F1702_1698465244" - ], - "rings": [ - [ - 224748, - 93223, - 227148, - 91623, - 227148, - 87623, - 228748, - 87623, - 229148, - 88423, - 233148, - 88423, - 234348, - 90023, - 235548, - 90023, - 237948, - 94023, - 237548, - 96023, - 235548, - 96423, - 232348, - 100023, - 231148, - 100023, - 228348, - 96823, - 226748, - 96423 - ] - ] - }, - { - "id": "Atmosphere_SwampCave", - "name": "Swamp Cave", - "bbox": [ - 140348, - 19223, - 185548, - 99623 - ], - "zRange": [ - -5769, - 8586 - ], - "areaM2": 217424, - "volumes": [ - "Atmosphere_SwampCave", - "Atmosphere_SwampWaterfallCave", - "FGAtmosphereVolume_UAID_581122B2211A64F801_1687750647", - "FGAtmosphereVolume_UAID_581122B2211A65F801_1789877824", - "FGAtmosphereVolume_UAID_581122B2211A65F801_1954029825", - "FGAtmosphereVolume_UAID_581122B2211A66F801_1116097002" - ], - "rings": [ - [ - 140348, - 69223, - 155548, - 20023, - 183948, - 19223, - 183948, - 21223, - 185148, - 21223, - 184348, - 32023, - 183548, - 32023, - 183548, - 33223, - 181148, - 33223, - 180748, - 34423, - 179548, - 43223, - 179548, - 54423, - 177948, - 55223, - 177948, - 57623, - 176348, - 57623, - 176348, - 61623, - 177548, - 62423, - 177148, - 67623, - 174348, - 68023, - 174348, - 71623, - 178348, - 71623, - 181548, - 71223, - 182748, - 74823, - 181948, - 76823, - 176748, - 79623, - 176748, - 83623, - 178348, - 84023, - 179148, - 86823, - 173548, - 86423, - 173148, - 88823, - 168748, - 89623, - 168748, - 93623, - 169548, - 94823, - 176348, - 95623, - 177148, - 91223, - 180348, - 90023, - 185548, - 94423, - 183948, - 97223, - 175948, - 96823, - 175548, - 98823, - 169948, - 98823, - 169948, - 99623, - 168748, - 99623, - 163148, - 93623, - 163148, - 90023, - 159148, - 89223, - 155548, - 80423, - 155548, - 79623, - 159148, - 78423, - 159148, - 74823, - 141148, - 70423 - ] - ] - }, - { - "id": "cave_-000297_+000804", - "name": null, - "bbox": [ - -31252, - 77223, - -28052, - 83623 - ], - "zRange": null, - "areaM2": 1168, - "volumes": [], - "rings": [ - [ - -31252, - 77623, - -30052, - 77223, - -29252, - 78023, - -28052, - 83223, - -30052, - 83223 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC201702_1951345422", - "name": null, - "bbox": [ - -107652, - 35223, - -75652, - 72823 - ], - "zRange": [ - -150, - 21053 - ], - "areaM2": 72848, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC201702_1951345422", - "FGAtmosphereVolume_UAID_04421A9713F0211702_1536515609", - "FGAtmosphereVolume_UAID_581122B2211A12F801_1944775215", - "FGAtmosphereVolume_UAID_581122B2211A13F801_1305983392" - ], - "rings": [ - [ - -107652, - 57623, - -103652, - 56023, - -104052, - 50423, - -99652, - 46423, - -99252, - 44823, - -97252, - 44023, - -88452, - 35223, - -87252, - 35223, - -86452, - 38823, - -82852, - 38823, - -82452, - 37623, - -80852, - 37623, - -79652, - 36023, - -76452, - 38023, - -75652, - 41623, - -76452, - 42023, - -78052, - 48023, - -79652, - 48423, - -81252, - 48423, - -81252, - 52023, - -76452, - 59623, - -76452, - 60423, - -78852, - 61223, - -78452, - 65623, - -92052, - 72823, - -93652, - 72823, - -96452, - 66423, - -101652, - 66423 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC331702_1863201772", - "name": null, - "bbox": [ - -190052, - -377, - -136052, - 49223 - ], - "zRange": [ - -898, - 11644 - ], - "areaM2": 113728, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC331702_1863201772", - "FGAtmosphereVolume_UAID_04421A2E61D6271702_1572689653" - ], - "rings": [ - [ - -190052, - 4023, - -184852, - 3623, - -184452, - -377, - -182852, - 23, - -182452, - 4023, - -170852, - 4423, - -166452, - 4423, - -153652, - 423, - -137652, - 20423, - -136052, - 43223, - -136052, - 44423, - -141252, - 44423, - -141252, - 47223, - -143652, - 48023, - -143652, - 49223, - -145252, - 49223, - -146452, - 47623, - -146852, - 43223, - -160452, - 26023, - -164852, - 16823, - -166852, - 16023, - -166852, - 14423, - -170852, - 14423, - -170852, - 16423, - -190052, - 16423 - ] - ] - }, - { - "id": "cave_+001285_+000414", - "name": null, - "bbox": [ - 127548, - 39223, - 129548, - 43623 - ], - "zRange": [ - 10859, - 14258 - ], - "areaM2": 624, - "volumes": [], - "rings": [ - [ - 127548, - 39223, - 129548, - 39223, - 128748, - 42823, - 128748, - 43623, - 127548, - 43623 - ] - ] - }, - { - "id": "Atmosphere_RedJungle_Cave", - "name": "Red Jungle Cave", - "bbox": [ - -191252, - 23623, - -172452, - 41623 - ], - "zRange": [ - 7267, - 22400 - ], - "areaM2": 21424, - "volumes": [ - "Atmosphere_RedJungle_Cave" - ], - "rings": [ - [ - -191252, - 28423, - -176852, - 23623, - -174452, - 31223, - -173252, - 31623, - -172452, - 36823, - -173252, - 36823, - -173252, - 38023, - -176852, - 38023, - -186452, - 41623 - ] - ] - }, - { - "id": "cave_+001231_+000346", - "name": null, - "bbox": [ - 120748, - 31223, - 125548, - 38023 - ], - "zRange": [ - 9842, - 14273 - ], - "areaM2": 2432, - "volumes": [], - "rings": [ - [ - 120748, - 36023, - 121148, - 32423, - 124748, - 32423, - 125148, - 31223, - 125148, - 33623, - 125548, - 38023, - 121548, - 38023 - ] - ] - }, - { - "id": "cave_+001249_+000194", - "name": null, - "bbox": [ - 113148, - 12023, - 136748, - 26823 - ], - "zRange": [ - 10853, - 16668 - ], - "areaM2": 20736, - "volumes": [], - "rings": [ - [ - 113148, - 15623, - 127548, - 14823, - 127548, - 12423, - 132348, - 12023, - 133548, - 12423, - 133548, - 18023, - 136748, - 18023, - 136748, - 22823, - 136748, - 23623, - 134748, - 24023, - 134348, - 26023, - 132348, - 26023, - 132348, - 26823, - 127948, - 26023, - 127948, - 25223, - 119548, - 24823, - 119548, - 20023, - 113148, - 18423 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D62A1702_1537855184", - "name": null, - "bbox": [ - -106052, - 423, - -87652, - 25623 - ], - "zRange": [ - 18696, - 23894 - ], - "areaM2": 29616, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D62A1702_1537855184", - "FGAtmosphereVolume_UAID_04421A9713F0271702_1637546666" - ], - "rings": [ - [ - -106052, - 20023, - -103652, - 4023, - -98852, - 4023, - -94052, - 423, - -92452, - 2423, - -90452, - 2423, - -90452, - 4823, - -88452, - 6823, - -87652, - 8423, - -89252, - 9223, - -92852, - 22023, - -96452, - 23223, - -96452, - 24423, - -100852, - 24423, - -100852, - 25623, - -102452, - 25623, - -103252, - 22023, - -105652, - 21223 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D6201702_1395647424", - "name": null, - "bbox": [ - 89148, - -5177, - 104748, - 20423 - ], - "zRange": [ - 9168, - 12891 - ], - "areaM2": 17952, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D6201702_1395647424" - ], - "rings": [ - [ - 89148, - 14823, - 91948, - 10023, - 91948, - 6423, - 93548, - 5223, - 93548, - 2823, - 94748, - 2823, - 95548, - -377, - 97148, - -377, - 98348, - -3177, - 103948, - -5177, - 104748, - -3977, - 104348, - 23, - 103148, - 423, - 102748, - 6423, - 100748, - 6823, - 97948, - 14423, - 97948, - 17623, - 96748, - 18423, - 96348, - 20423, - 92748, - 17623, - 92748, - 15223 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067FE01602_1624746161", - "name": null, - "bbox": [ - 7948, - -12777, - 19948, - 4823 - ], - "zRange": [ - 17360, - 20313 - ], - "areaM2": 10656, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067FE01602_1624746161" - ], - "rings": [ - [ - 7948, - -7577, - 12348, - -9177, - 13148, - -12777, - 15148, - -12777, - 15548, - -7577, - 19148, - 423, - 19948, - 2423, - 13548, - 4823 - ] - ] - }, - { - "id": "Atmosphere_Cave1a", - "name": "Cave 1a", - "bbox": [ - 200748, - -51577, - 222748, - -7977 - ], - "zRange": [ - -1383, - 9040 - ], - "areaM2": 53008, - "volumes": [ - "Atmosphere_Cave1a", - "Atmosphere_Cave1b", - "FGAtmosphereVolume_UAID_D8CB8A319C9662F801_1483168297" - ], - "rings": [ - [ - 200748, - -29177, - 203148, - -29577, - 204348, - -33577, - 204348, - -39577, - 203548, - -39977, - 203548, - -42377, - 201948, - -43577, - 202348, - -45177, - 203548, - -45577, - 203148, - -50777, - 209548, - -51577, - 211148, - -49977, - 211948, - -45977, - 211948, - -34377, - 213548, - -31977, - 215148, - -31977, - 215148, - -29977, - 217148, - -27977, - 220748, - -24777, - 222748, - -18377, - 217948, - -15577, - 217548, - -12777, - 211548, - -11977, - 210748, - -8377, - 208348, - -7977, - 205148, - -8777, - 200748, - -16377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC301702_1404604240", - "name": null, - "bbox": [ - 214748, - -55177, - 245948, - -10377 - ], - "zRange": [ - -2157, - 8177 - ], - "areaM2": 55728, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC301702_1404604240", - "FGAtmosphereVolume_UAID_D8CB8A319C9664F801_1171205650" - ], - "rings": [ - [ - 214748, - -53577, - 221948, - -55177, - 225548, - -50377, - 230748, - -50377, - 230748, - -45177, - 234748, - -45177, - 234748, - -38777, - 238348, - -34777, - 235148, - -33177, - 234748, - -31577, - 231148, - -31177, - 231148, - -27577, - 245948, - -27577, - 245948, - -19177, - 245948, - -12777, - 237548, - -12777, - 237148, - -10377, - 234348, - -10377, - 233948, - -12377, - 229548, - -12777, - 229548, - -29177, - 225948, - -29177 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D66E1702_1401578149", - "name": null, - "bbox": [ - -237252, - -33177, - -220052, - -12377 - ], - "zRange": [ - -3468, - -769 - ], - "areaM2": 12432, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D66E1702_1401578149" - ], - "rings": [ - [ - -237252, - -29177, - -236852, - -32777, - -233652, - -32777, - -226852, - -23977, - -224452, - -23977, - -224452, - -21177, - -222052, - -19977, - -220452, - -15977, - -220452, - -12377, - -224852, - -13977, - -228452, - -18777, - -230852, - -18777, - -230852, - -20777, - -232452, - -20777, - -232852, - -23977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_D8CB8A319C965EF801_1343152592", - "name": null, - "bbox": [ - 146748, - -33577, - 167548, - -17177 - ], - "zRange": [ - 3637, - 9192 - ], - "areaM2": 19248, - "volumes": [ - "FGAtmosphereVolume_UAID_D8CB8A319C965EF801_1343152592" - ], - "rings": [ - [ - 146748, - -21577, - 147948, - -30777, - 164348, - -29177, - 164348, - -32777, - 165148, - -33577, - 167148, - -33177, - 167148, - -31177, - 165948, - -30777, - 165948, - -25977, - 163548, - -25577, - 159948, - -17177, - 153548, - -18777, - 148748, - -18777, - 148348, - -19977, - 146748, - -19977 - ] - ] - }, - { - "id": "Atmosphere_CraterLakesCave3", - "name": "Crater Lakes Cave 3", - "bbox": [ - -25652, - -39977, - -10052, - -19177 - ], - "zRange": [ - 11555, - 17827 - ], - "areaM2": 13872, - "volumes": [ - "Atmosphere_CraterLakesCave3", - "Atmosphere_CraterLakesCave4" - ], - "rings": [ - [ - -25652, - -39977, - -20052, - -37977, - -20052, - -33977, - -15652, - -33977, - -15652, - -35577, - -13252, - -35577, - -13252, - -32377, - -10052, - -20777, - -12452, - -20377, - -12452, - -19577, - -18452, - -19577, - -18452, - -23977, - -20852, - -31177, - -20852, - -34777, - -25252, - -35177 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F0301702_1274643254", - "name": null, - "bbox": [ - -118452, - -47577, - -102052, - -30777 - ], - "zRange": [ - 2444, - 4598 - ], - "areaM2": 15248, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F0301702_1274643254" - ], - "rings": [ - [ - -118452, - -39577, - -108852, - -47577, - -107252, - -47577, - -102452, - -41977, - -102052, - -40777, - -103252, - -39977, - -108452, - -35977, - -108452, - -31577, - -114052, - -31577, - -114852, - -30777, - -116452, - -30777, - -116452, - -34777, - -118452, - -37977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067F911602_1644034254", - "name": null, - "bbox": [ - 154748, - -39177, - 161148, - -33977 - ], - "zRange": [ - 8204, - 10414 - ], - "areaM2": 1952, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067F911602_1644034254" - ], - "rings": [ - [ - 154748, - -38777, - 155948, - -39177, - 157148, - -37177, - 160348, - -37177, - 161148, - -34377, - 156348, - -33977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067FE11602_1374084338", - "name": null, - "bbox": [ - 75548, - -47577, - 84348, - -40377 - ], - "zRange": [ - 5965, - 7214 - ], - "areaM2": 4240, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067FE11602_1374084338" - ], - "rings": [ - [ - 75548, - -45977, - 77148, - -47577, - 81948, - -46777, - 84348, - -43177, - 83948, - -42377, - 83948, - -41577, - 80748, - -40377, - 76748, - -42377, - 76748, - -43577, - 75548, - -43977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067F901602_1230069077", - "name": null, - "bbox": [ - 140748, - -53977, - 144348, - -47577 - ], - "zRange": [ - 27, - 1750 - ], - "areaM2": 1936, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067F901602_1230069077" - ], - "rings": [ - [ - 140748, - -50777, - 141948, - -53977, - 144348, - -53577, - 144348, - -50777, - 144348, - -47977, - 143148, - -47577, - 141148, - -47977 - ] - ] - }, - { - "id": "cave_-001563_-000538", - "name": null, - "bbox": [ - -157652, - -55577, - -154852, - -51977 - ], - "zRange": [ - -5071, - -2812 - ], - "areaM2": 1008, - "volumes": [], - "rings": [ - [ - -157652, - -55577, - -154852, - -55577, - -154852, - -51977, - -157652, - -51977 - ] - ] - }, - { - "id": "Atmosphere_CraterLakesCave2", - "name": "Crater Lakes Cave 2", - "bbox": [ - -43252, - -68777, - -35652, - -57177 - ], - "zRange": [ - 11349, - 18471 - ], - "areaM2": 6944, - "volumes": [ - "Atmosphere_CraterLakesCave2" - ], - "rings": [ - [ - -43252, - -57977, - -41652, - -68777, - -38052, - -68777, - -38052, - -66777, - -36852, - -66777, - -35652, - -66777, - -36452, - -57177 - ] - ] - }, - { - "id": "cave_+002175_-000604", - "name": null, - "bbox": [ - 215948, - -61977, - 219148, - -58777 - ], - "zRange": null, - "areaM2": 736, - "volumes": [], - "rings": [ - [ - 215948, - -61177, - 217948, - -61977, - 219148, - -60777, - 218748, - -59977, - 218748, - -59177, - 217148, - -58777, - 215948, - -59577 - ] - ] - }, - { - "id": "Atmosphere_CraterLakesCave", - "name": "Crater Lakes Cave", - "bbox": [ - -107652, - -73577, - -93652, - -63577 - ], - "zRange": [ - 3293, - 16833 - ], - "areaM2": 9008, - "volumes": [ - "Atmosphere_CraterLakesCave", - "FGAtmosphereVolume_UAID_04421A2E61D66D1702_1743997972" - ], - "rings": [ - [ - -107652, - -65977, - -105652, - -71977, - -101252, - -71977, - -100452, - -73577, - -99252, - -73577, - -94852, - -69977, - -93652, - -69177, - -98052, - -63977, - -101252, - -63577, - -107252, - -64777 - ] - ] - }, - { - "id": "Atmosphere_CaveTest", - "name": null, - "bbox": [ - -18852, - -83977, - -2852, - -66777 - ], - "zRange": [ - 4968, - 12406 - ], - "areaM2": 14672, - "volumes": [ - "Atmosphere_CaveTest" - ], - "rings": [ - [ - -18852, - -81977, - -16852, - -83977, - -9652, - -80377, - -3252, - -73977, - -2852, - -72377, - -4452, - -70377, - -4852, - -69177, - -10052, - -66777, - -16852, - -73977 - ] - ] - }, - { - "id": "Atmosphere_NorthernForestCave", - "name": "Northern Forest Cave", - "bbox": [ - 61148, - -83177, - 74748, - -67977 - ], - "zRange": [ - 4439, - 9606 - ], - "areaM2": 15296, - "volumes": [ - "Atmosphere_NorthernForestCave" - ], - "rings": [ - [ - 61148, - -71577, - 63548, - -83177, - 74348, - -81577, - 74348, - -79177, - 74748, - -75577, - 73148, - -74777, - 71948, - -67977, - 61948, - -69577 - ] - ] - }, - { - "id": "Atmosphere_NorthernForestCave6", - "name": "Northern Forest Cave 6", - "bbox": [ - 48348, - -82777, - 57948, - -69977 - ], - "zRange": [ - 1800, - 7423 - ], - "areaM2": 8704, - "volumes": [ - "Atmosphere_NorthernForestCave6" - ], - "rings": [ - [ - 48348, - -77577, - 49148, - -79977, - 49948, - -79977, - 49948, - -81977, - 52348, - -82777, - 53548, - -81177, - 57948, - -80377, - 57148, - -75977, - 55948, - -70777, - 53148, - -69977, - 51548, - -71577, - 48348, - -71977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F0301702_1833015255", - "name": null, - "bbox": [ - -160852, - -91977, - -146452, - -70377 - ], - "zRange": [ - -5179, - 1723 - ], - "areaM2": 12720, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F0301702_1833015255" - ], - "rings": [ - [ - -160852, - -87577, - -158852, - -89577, - -158852, - -91977, - -153252, - -91977, - -153252, - -89977, - -151252, - -89977, - -151252, - -87977, - -146452, - -84377, - -150052, - -80377, - -150452, - -76377, - -153252, - -75577, - -153252, - -70377, - -156052, - -70377, - -156052, - -75977, - -153652, - -75977, - -153652, - -81177, - -156852, - -83977, - -158852, - -83977, - -158852, - -85577 - ] - ] - }, - { - "id": "cave_-000545_-000754", - "name": null, - "bbox": [ - -59652, - -80377, - -49252, - -70377 - ], - "zRange": [ - 5083, - 9620 - ], - "areaM2": 6272, - "volumes": [], - "rings": [ - [ - -59652, - -79977, - -50852, - -80377, - -50452, - -77577, - -49252, - -77577, - -49252, - -76377, - -51652, - -75977, - -51652, - -73177, - -51652, - -70377, - -56852, - -70377, - -56852, - -76777, - -57652, - -76777, - -57652, - -77977, - -59252, - -77977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F02E1702_1653401901", - "name": null, - "bbox": [ - -271652, - -76377, - -262452, - -71177 - ], - "zRange": [ - -1956, - -830 - ], - "areaM2": 3840, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F02E1702_1653401901" - ], - "rings": [ - [ - -271652, - -75177, - -262452, - -76377, - -262452, - -72377, - -271652, - -71177 - ] - ] - }, - { - "id": "Atmosphere_NorthernForestCave5", - "name": "Northern Forest Cave 5", - "bbox": [ - 96748, - -99977, - 117148, - -76777 - ], - "zRange": [ - 1623, - 8601 - ], - "areaM2": 30064, - "volumes": [ - "Atmosphere_NorthernForestCave5" - ], - "rings": [ - [ - 96748, - -95977, - 110748, - -99977, - 117148, - -82777, - 116348, - -81177, - 114348, - -80777, - 113548, - -77977, - 111148, - -77977, - 109948, - -76777, - 108348, - -77177, - 108348, - -77977, - 103148, - -77577, - 98748, - -90777, - 97548, - -91577 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F02A1702_1573383196", - "name": null, - "bbox": [ - -230052, - -91977, - -220052, - -84777 - ], - "zRange": [ - -2690, - -269 - ], - "areaM2": 5024, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F02A1702_1573383196" - ], - "rings": [ - [ - -230052, - -89577, - -228452, - -91177, - -225252, - -91977, - -221652, - -89977, - -220052, - -88377, - -220052, - -86777, - -222052, - -85177, - -228052, - -85577, - -229252, - -84777, - -230052, - -85577 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D61E1702_2062970070", - "name": null, - "bbox": [ - 33148, - -99577, - 42348, - -87177 - ], - "zRange": [ - 8049, - 11105 - ], - "areaM2": 6800, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D61E1702_2062970070" - ], - "rings": [ - [ - 33148, - -91977, - 37148, - -99577, - 38748, - -99577, - 39948, - -97977, - 41948, - -97577, - 41948, - -95177, - 41948, - -88777, - 41148, - -87177, - 39948, - -87177, - 39548, - -88777 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F0291702_1343772019", - "name": null, - "bbox": [ - -284852, - -91977, - -274452, - -87577 - ], - "zRange": [ - -2738, - 256 - ], - "areaM2": 3760, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F0291702_1343772019" - ], - "rings": [ - [ - -284852, - -90777, - -281252, - -91177, - -281252, - -91977, - -274452, - -91977, - -274452, - -88777, - -274452, - -87577, - -281252, - -87577, - -284452, - -89577 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D6831702_1791209845", - "name": null, - "bbox": [ - 365548, - -109977, - 380348, - -93177 - ], - "zRange": [ - 2372, - 5072 - ], - "areaM2": 10880, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D6831702_1791209845" - ], - "rings": [ - [ - 365548, - -107177, - 368348, - -109577, - 370348, - -109977, - 380348, - -95977, - 378748, - -95177, - 378748, - -93577, - 375548, - -93177, - 370348, - -100377, - 367148, - -101177, - 367148, - -104777 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F0201702_1244543432", - "name": null, - "bbox": [ - -67252, - -115577, - -53252, - -101577 - ], - "zRange": [ - 106, - 2744 - ], - "areaM2": 9104, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F0201702_1244543432" - ], - "rings": [ - [ - -67252, - -111977, - -63252, - -113577, - -62452, - -115577, - -60852, - -115577, - -60052, - -113577, - -57252, - -113577, - -57252, - -111577, - -55252, - -111177, - -54852, - -108377, - -53252, - -107577, - -53652, - -105577, - -54452, - -101977, - -56052, - -101577, - -57252, - -102377, - -58052, - -105577, - -61252, - -105577, - -61252, - -107977, - -64452, - -108377, - -64452, - -109977, - -67252, - -110377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D66F1702_2031480327", - "name": null, - "bbox": [ - -151252, - -106377, - -147652, - -102377 - ], - "zRange": [ - -3100, - 291 - ], - "areaM2": 1440, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D66F1702_2031480327" - ], - "rings": [ - [ - -151252, - -106377, - -147652, - -106377, - -147652, - -102377, - -151252, - -102377 - ] - ] - }, - { - "id": "Atmosphere_NorthernForestCave3", - "name": "Northern Forest Cave 3", - "bbox": [ - 35548, - -128377, - 50748, - -107577 - ], - "zRange": [ - 9852, - 12359 - ], - "areaM2": 13952, - "volumes": [ - "Atmosphere_NorthernForestCave3", - "FGAtmosphereVolume_UAID_04421A2E61D61B1702_2125306541" - ], - "rings": [ - [ - 35548, - -113177, - 39948, - -114777, - 39948, - -125177, - 41948, - -127977, - 44748, - -127977, - 45148, - -125177, - 48748, - -125177, - 48748, - -120377, - 50748, - -119577, - 49948, - -117177, - 42748, - -115977, - 42748, - -111977, - 43548, - -111177, - 42748, - -107577, - 38348, - -108777, - 38348, - -110377, - 35948, - -111177 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D66F1702_1277026326", - "name": null, - "bbox": [ - -232852, - -114777, - -226052, - -107977 - ], - "zRange": [ - -1272, - 3350 - ], - "areaM2": 4624, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D66F1702_1277026326" - ], - "rings": [ - [ - -232852, - -114777, - -226052, - -114777, - -226052, - -107977, - -232852, - -107977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D6831702_1579834844", - "name": null, - "bbox": [ - 306348, - -113977, - 311948, - -109577 - ], - "zRange": [ - 5757, - 7007 - ], - "areaM2": 1584, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D6831702_1579834844" - ], - "rings": [ - [ - 306348, - -111977, - 310748, - -113977, - 311948, - -111577, - 311948, - -110777, - 307948, - -109577, - 307948, - -110377, - 306348, - -110377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D6841702_1979262023", - "name": null, - "bbox": [ - 281148, - -129977, - 285948, - -121977 - ], - "zRange": [ - 2157, - 3477 - ], - "areaM2": 1840, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D6841702_1979262023" - ], - "rings": [ - [ - 281148, - -129577, - 282348, - -129977, - 283148, - -129177, - 283948, - -126377, - 285948, - -123977, - 285148, - -123177, - 284348, - -121977, - 282748, - -122777 - ] - ] - }, - { - "id": "cave_-001289_-001258", - "name": null, - "bbox": [ - -130852, - -127977, - -126852, - -123577 - ], - "zRange": [ - -4139, - -569 - ], - "areaM2": 1488, - "volumes": [], - "rings": [ - [ - -130852, - -127977, - -127652, - -127977, - -127652, - -126377, - -126852, - -126377, - -127652, - -124377, - -128052, - -123577, - -130852, - -123977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F01F1702_1951775255", - "name": null, - "bbox": [ - -20452, - -143177, - 18348, - -124377 - ], - "zRange": [ - -2421, - 12487 - ], - "areaM2": 45488, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F01F1702_1951775255", - "FGAtmosphereVolume_UAID_D8CB8A319C965CF801_2117624239" - ], - "rings": [ - [ - -20452, - -135577, - -19652, - -135577, - -18852, - -139177, - -15652, - -139577, - -12852, - -139177, - -12452, - -136777, - -8852, - -136777, - -7652, - -140377, - -6052, - -141977, - -4452, - -141977, - -3652, - -139577, - 748, - -139577, - 15948, - -143177, - 17548, - -134777, - 18348, - -131177, - 17548, - -129577, - -6452, - -124377, - -7652, - -129977, - -11252, - -129977, - -15252, - -128377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067F8F1602_1735070900", - "name": null, - "bbox": [ - 68748, - -135577, - 82348, - -125577 - ], - "zRange": [ - 6204, - 9469 - ], - "areaM2": 8624, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067F8F1602_1735070900" - ], - "rings": [ - [ - 68748, - -133177, - 71148, - -135577, - 72748, - -135577, - 73548, - -134377, - 77148, - -134377, - 77948, - -131977, - 80748, - -131977, - 80748, - -129577, - 82348, - -129177, - 81948, - -128377, - 80748, - -127977, - 79548, - -125577, - 73948, - -125577, - 73148, - -127577, - 69948, - -127577, - 69948, - -130777, - 68748, - -131177 - ] - ] - }, - { - "id": "Atmosphere_SavannaCave", - "name": "Savanna Cave", - "bbox": [ - -250852, - -197177, - -112052, - -132377 - ], - "zRange": [ - -9888, - 17515 - ], - "areaM2": 230912, - "volumes": [ - "Atmosphere_SavannaCave", - "Atmosphere_SavannaCave2", - "Atmosphere_SavannaCave3", - "FGAtmosphereVolume_UAID_04421A2E61D6771702_2047792739" - ], - "rings": [ - [ - -250852, - -153177, - -250052, - -158777, - -227252, - -156777, - -221652, - -153577, - -218852, - -153577, - -218452, - -151577, - -211252, - -143577, - -207252, - -143577, - -204852, - -145177, - -204852, - -147177, - -203252, - -147177, - -202052, - -149977, - -188452, - -149977, - -188452, - -153577, - -193252, - -157977, - -195252, - -166377, - -202852, - -173177, - -202852, - -175577, - -204052, - -176377, - -204052, - -178777, - -204852, - -178777, - -205252, - -184777, - -206052, - -185177, - -206052, - -187577, - -207252, - -187577, - -207252, - -190377, - -208452, - -192777, - -206852, - -197177, - -205252, - -197177, - -204852, - -191977, - -202852, - -185977, - -198452, - -185977, - -198452, - -180777, - -195652, - -179577, - -194052, - -173977, - -187652, - -167977, - -186852, - -161977, - -178052, - -153577, - -163252, - -153977, - -155252, - -159577, - -148052, - -161177, - -149252, - -178777, - -146452, - -182377, - -146452, - -184777, - -144852, - -184777, - -142852, - -187577, - -140452, - -191177, - -136852, - -191577, - -136052, - -189977, - -134852, - -189977, - -135652, - -189177, - -135652, - -185577, - -134852, - -185177, - -136052, - -183977, - -139652, - -183977, - -141252, - -181977, - -140852, - -174377, - -127252, - -145977, - -125252, - -145977, - -125252, - -144377, - -122852, - -143577, - -122852, - -142377, - -118052, - -142377, - -112052, - -143977, - -112452, - -137977, - -113252, - -137177, - -117652, - -137177, - -122052, - -135577, - -124452, - -137577, - -126852, - -137577, - -126852, - -139577, - -129652, - -141577, - -134452, - -141977, - -134452, - -143577, - -135652, - -144377, - -148052, - -144377, - -150852, - -148777, - -155252, - -148777, - -158852, - -146777, - -166052, - -139577, - -170052, - -138377, - -171252, - -136377, - -176452, - -135977, - -176852, - -132777, - -195652, - -132377, - -200052, - -137977, - -204452, - -137977, - -204452, - -136777, - -214452, - -135577, - -215252, - -137177, - -224052, - -141577, - -229252, - -148377, - -250052, - -150377, - -250852, - -150777 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC791702_1201863096", - "name": null, - "bbox": [ - 120348, - -162377, - 144348, - -143577 - ], - "zRange": [ - 15109, - 17551 - ], - "areaM2": 22848, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC791702_1201863096" - ], - "rings": [ - [ - 120348, - -152777, - 138748, - -162377, - 139948, - -162377, - 144348, - -153177, - 125948, - -143577, - 124348, - -143977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_B06EBFBF067F911602_2063853255", - "name": null, - "bbox": [ - 190748, - -170377, - 208748, - -160377 - ], - "zRange": [ - 12967, - 16133 - ], - "areaM2": 14896, - "volumes": [ - "FGAtmosphereVolume_UAID_B06EBFBF067F911602_2063853255" - ], - "rings": [ - [ - 190748, - -170377, - 208348, - -168377, - 208748, - -166777, - 206348, - -165977, - 206348, - -162777, - 206348, - -160377, - 190748, - -160377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F07B1702_1814100457", - "name": null, - "bbox": [ - 285148, - -166377, - 294348, - -162377 - ], - "zRange": [ - 648, - 2572 - ], - "areaM2": 3136, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F07B1702_1814100457" - ], - "rings": [ - [ - 285148, - -165177, - 287548, - -166377, - 294348, - -166377, - 294348, - -163577, - 294348, - -162377, - 287548, - -162377, - 287548, - -163977, - 285548, - -163977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F07A1702_1870108280", - "name": null, - "bbox": [ - 395548, - -181977, - 401148, - -179577 - ], - "zRange": [ - 3668, - 4382 - ], - "areaM2": 880, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F07A1702_1870108280" - ], - "rings": [ - [ - 395548, - -181577, - 400748, - -181977, - 400748, - -180377, - 398348, - -179577, - 397948, - -180377, - 395548, - -180377 - ] - ] - }, - { - "id": "Atmosphere_DuneDesertWaterfallCave", - "name": "Dune Desert Waterfall Cave", - "bbox": [ - 203148, - -191977, - 215148, - -179977 - ], - "zRange": [ - 5325, - 12925 - ], - "areaM2": 10784, - "volumes": [ - "Atmosphere_DuneDesertWaterfallCave", - "FGAtmosphereVolume_UAID_D8CB8A319C96A1F801_1770350387" - ], - "rings": [ - [ - 203148, - -182377, - 205148, - -191977, - 210348, - -191577, - 215148, - -190377, - 215148, - -189577, - 213148, - -179977, - 203548, - -181577 - ] - ] - }, - { - "id": "cave_+000293_-002190", - "name": null, - "bbox": [ - 17148, - -226377, - 41548, - -211577 - ], - "zRange": [ - -2350, - -1619 - ], - "areaM2": 25040, - "volumes": [], - "rings": [ - [ - 17148, - -226377, - 24748, - -226377, - 24748, - -224377, - 25948, - -224377, - 25948, - -222777, - 38748, - -222777, - 38748, - -221577, - 40348, - -221577, - 40348, - -216377, - 41548, - -216377, - 41548, - -212377, - 40748, - -212377, - 25148, - -211577, - 25148, - -214377, - 19148, - -214377, - 18748, - -221577, - 17148, - -221577 - ] - ] - }, - { - "id": "cave_-000087_-002332", - "name": null, - "bbox": [ - -22452, - -247977, - 5148, - -218377 - ], - "zRange": [ - -2979, - -1474 - ], - "areaM2": 45968, - "volumes": [], - "rings": [ - [ - -22452, - -243577, - -21652, - -243577, - -21652, - -244777, - -19652, - -244777, - -19652, - -247977, - -12852, - -247977, - -12852, - -246377, - -452, - -246777, - 748, - -239977, - 348, - -235577, - 3948, - -235577, - 3948, - -230777, - 5148, - -230777, - 5148, - -225177, - 2748, - -225177, - 348, - -225177, - 348, - -223577, - -852, - -223577, - -852, - -218377, - -6452, - -218377, - -6452, - -221177, - -11252, - -221177, - -11652, - -230777, - -10852, - -230777, - -10852, - -236777, - -19652, - -236777, - -19652, - -237977, - -22452, - -237977 - ] - ] - }, - { - "id": "cave_+000701_-002372", - "name": null, - "bbox": [ - 59548, - -249977, - 80748, - -224377 - ], - "zRange": [ - -3553, - -1522 - ], - "areaM2": 33392, - "volumes": [], - "rings": [ - [ - 59548, - -233977, - 63548, - -233977, - 63948, - -249977, - 70748, - -249977, - 70748, - -248777, - 74348, - -248777, - 74348, - -243577, - 77148, - -243577, - 77148, - -241577, - 80748, - -241577, - 80748, - -240777, - 79948, - -231177, - 70748, - -230377, - 70348, - -227177, - 64348, - -227177, - 64348, - -224377, - 59948, - -224377 - ] - ] - }, - { - "id": "cave_+000283_-002332", - "name": null, - "bbox": [ - 24348, - -235577, - 32348, - -230777 - ], - "zRange": [ - -2084, - 462 - ], - "areaM2": 3424, - "volumes": [], - "rings": [ - [ - 24348, - -235177, - 32348, - -235577, - 32348, - -232377, - 31148, - -232377, - 30348, - -232377, - 30348, - -230777, - 25148, - -230777 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F07C1702_1438452634", - "name": null, - "bbox": [ - 350748, - -242777, - 368748, - -237177 - ], - "zRange": [ - 1186, - 5804 - ], - "areaM2": 7360, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F07C1702_1438452634" - ], - "rings": [ - [ - 350748, - -241177, - 354748, - -242777, - 362748, - -242777, - 365948, - -240377, - 367948, - -240377, - 368348, - -239177, - 368348, - -238377, - 364748, - -238377, - 363148, - -237177, - 354748, - -237177, - 353148, - -238777, - 351148, - -239177 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E61D6841702_1114550022", - "name": null, - "bbox": [ - 368748, - -259577, - 381948, - -245177 - ], - "zRange": [ - -2811, - 3575 - ], - "areaM2": 12544, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E61D6841702_1114550022" - ], - "rings": [ - [ - 368748, - -253977, - 379148, - -259577, - 381148, - -258777, - 380348, - -256777, - 381148, - -249977, - 381548, - -245577, - 375948, - -246377, - 371948, - -245177 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC7C1702_1114403628", - "name": null, - "bbox": [ - 242348, - -257977, - 244748, - -252377 - ], - "zRange": [ - -1272, - 978 - ], - "areaM2": 1248, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC7C1702_1114403628" - ], - "rings": [ - [ - 242348, - -257977, - 244748, - -257977, - 244348, - -252777, - 242748, - -252377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC811702_1572420509", - "name": null, - "bbox": [ - 259948, - -273577, - 278748, - -255177 - ], - "zRange": [ - 812, - 12907 - ], - "areaM2": 12976, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC811702_1572420509", - "FGAtmosphereVolume_UAID_04421A2E60EC821702_1650299687", - "FGAtmosphereVolume_UAID_04421A2E60EC831702_1360990864" - ], - "rings": [ - [ - 259948, - -257177, - 261948, - -261577, - 266348, - -261577, - 270348, - -263977, - 270748, - -268777, - 274348, - -268777, - 275148, - -273577, - 276748, - -273177, - 277148, - -269977, - 277548, - -267977, - 278748, - -267177, - 278748, - -265177, - 274348, - -259177, - 268748, - -259177, - 268748, - -257977, - 265548, - -255177, - 259948, - -255577 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC7A1702_1610685273", - "name": null, - "bbox": [ - 166348, - -268777, - 172348, - -264377 - ], - "zRange": [ - 461, - 2359 - ], - "areaM2": 1552, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC7A1702_1610685273" - ], - "rings": [ - [ - 166348, - -267177, - 171548, - -268777, - 171948, - -266377, - 167148, - -264377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F0821702_1965266691", - "name": null, - "bbox": [ - 374748, - -279977, - 383148, - -265577 - ], - "zRange": [ - -76, - 3284 - ], - "areaM2": 5024, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F0821702_1965266691" - ], - "rings": [ - [ - 374748, - -279577, - 376348, - -279977, - 377548, - -278377, - 381948, - -275977, - 383148, - -273577, - 381948, - -267177, - 380748, - -265577, - 378348, - -267977, - 378348, - -275577, - 374748, - -278377 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A9713F0851702_1731342220", - "name": null, - "bbox": [ - 309948, - -297577, - 330748, - -276777 - ], - "zRange": [ - -3754, - 84 - ], - "areaM2": 24752, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A9713F0851702_1731342220" - ], - "rings": [ - [ - 309948, - -281177, - 317548, - -295977, - 320748, - -295977, - 320748, - -297577, - 323948, - -297577, - 323948, - -295977, - 325148, - -295977, - 325148, - -293977, - 329948, - -292377, - 330748, - -291577, - 323148, - -276777, - 310348, - -279977 - ] - ] - }, - { - "id": "FGAtmosphereVolume_UAID_04421A2E60EC841702_1284885042", - "name": null, - "bbox": [ - 239148, - -295577, - 259148, - -279577 - ], - "zRange": [ - -2208, - 9849 - ], - "areaM2": 19936, - "volumes": [ - "FGAtmosphereVolume_UAID_04421A2E60EC841702_1284885042", - "FGAtmosphereVolume_UAID_04421A2E61D6851702_1212894200" - ], - "rings": [ - [ - 239148, - -285177, - 240348, - -286377, - 241948, - -295177, - 259148, - -295177, - 257948, - -290377, - 256348, - -281977, - 255148, - -281577, - 254348, - -279577, - 253148, - -279977, - 253148, - -282777, - 249948, - -284377, - 242748, - -284777, - 239548, - -283977 - ] - ] - }, - { - "id": "Atmosphere_DDJungleRiverCave3", - "name": "Dune Desert Jungle River Cave 3", - "bbox": [ - 292348, - -297977, - 302348, - -285177 - ], - "zRange": [ - 1297, - 8365 - ], - "areaM2": 5552, - "volumes": [ - "Atmosphere_DDJungleRiverCave3", - "FGAtmosphereVolume_UAID_04421A2E60EC7B1702_1302861451" - ], - "rings": [ - [ - 292348, - -292777, - 297548, - -297977, - 299148, - -297977, - 300748, - -297577, - 302348, - -293977, - 302348, - -293177, - 299948, - -292377, - 298348, - -291977, - 298748, - -285177, - 296348, - -285177, - 295948, - -291177, - 294348, - -291177 - ] - ] - } - ] -} \ No newline at end of file diff --git a/game_data/sav_data/crashSites.json b/game_data/sav_data/crashSites.json deleted file mode 100644 index 2f3d318..0000000 --- a/game_data/sav_data/crashSites.json +++ /dev/null @@ -1,2153 +0,0 @@ -{ - "Persistent_Level:PersistentLevel.BP_DropPod1": [ - "71U3QY9JC6WRRZPQKC79EZB09", - [ - -0.5547969880886869, - -0.017571816743139693, - 0.8310319860380564, - 0.03574033359820004 - ], - [ - 87739.68, - -62975.457, - 13444.25 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod10": [ - "16GEMFDCR18T1QGXOOA5T2NV5", - [ - -0.12096189250943004, - 0.46010631998143114, - -0.8703239320608109, - 0.12730533435756364 - ], - [ - 232138.0, - 27191.0, - -1629.0 - ], - { - "cost": [ - "Quartz Crystal", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod11_2": [ - "AZXDX9YZIAVF4NXQIJ9LZRRCC", - [ - -0.5259368688246128, - 0.8038732857922981, - -0.27771451140495845, - 0.007266399078052238 - ], - [ - -238333.98, - 17321.701, - 19741.078 - ], - { - "cost": [ - "Quartz Crystal", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod12": [ - "118RVQAVO1O8L58KLOCF7U88C", - [ - -0.023270445230836774, - 0.03852059516412193, - -0.0016506214458182965, - 0.9989854481301533 - ], - [ - -4706.821, - -76301.984, - 13618.502 - ], - { - "cost": [ - "Black Powder", - 2 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod13": [ - "5Q1QKFVJAMPMZYOJH3KDI45OY", - [ - 0.013125969250435347, - 0.1070688287504815, - 0.3282415884027386, - 0.9384143192023893 - ], - [ - 55247.99, - -51316.344, - 14363.264 - ], - { - "cost": [ - "Modular Frame", - 20 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod14_389": [ - "Persistent_Level", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -43144.0, - 145820.0, - 7472.0 - ], - { - "cost": [ - "Modular Frame", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod15_821": [ - "Persistent_Level", - [ - 0.03153744922889699, - -0.1134744819285849, - -0.8413507845915795, - 0.5275014583053849 - ], - [ - -189258.11, - 116331.0, - -1764.3047 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod16_4595": [ - "CI0BH8Q35CXW8GPKTYNYMBTF7", - [ - 0.26792333139725644, - -0.953516259210703, - -0.13789866030836992, - 0.0027913077544750725 - ], - [ - 30383.756, - 266975.66, - -987.3852 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod17_7892": [ - "1Q7RLRZUNPDBZYIAUGG6AKFIE", - [ - -0.12986185257142738, - 0.12296692397491875, - -0.8277423597672242, - 0.531843605491173 - ], - [ - -108812.875, - 214051.12, - 3200.8167 - ], - { - "cost": [ - "Rotor", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod18": [ - "Persistent_Level", - [ - 0.4476114678933056, - 0.03900715842276761, - -0.6952459187582667, - 0.5610307726427801 - ], - [ - -259577.12, - 105048.83, - -1548.167 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod19": [ - "3RGVK3TXQZU2P9LPTSNKO083P", - [ - 0.0014791578864522927, - -0.10320292099039097, - 0.9937756779454997, - 0.04191504640294099 - ], - [ - 8680.0, - -41777.973, - 13053.444 - ], - { - "cost": [ - "Rubber", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_0": [ - "Persistent_Level", - [ - -0.03491522941597064, - -0.12527301153401663, - -0.15474948803599922, - 0.9793570315715431 - ], - [ - -89284.0, - -50630.0, - 16019.0 - ], - { - "power": 120.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_1": [ - "Persistent_Level", - [ - -0.09943498676024315, - 0.46986818350922155, - -0.8125859075057341, - 0.33021313792279283 - ], - [ - 293299.28, - 51.754627, - 522.86365 - ], - { - "power": 85.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_2": [ - "9WTANPYEXGNWQKRA59Z7MXFAM", - [ - -0.16549693401085963, - -0.43945935815876525, - 0.8786717176875466, - 0.08615248049654334 - ], - [ - 157249.75, - -40206.22, - 13694.848 - ], - { - "cost": [ - "Heavy Modular Frame", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_22": [ - "ATA1U205B15SRCXVJTOBJ3OUZ", - [ - 0.0071830772767245005, - 0.18049649451576089, - -0.5463841901413878, - 0.8178225575465001 - ], - [ - -95228.08, - 6970.7183, - 25142.943 - ], - { - "cost": [ - "Heavy Modular Frame", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_3": [ - "Persistent_Level", - [ - 0.25677361604382426, - 0.1264700559235093, - -0.06535931214833492, - 0.9559292836679811 - ], - [ - 46951.75, - 221859.12, - 5917.3315 - ], - { - "power": 100.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_4": [ - "6O54BQMQ6W9AB3E2UV4DBKND5", - [ - 0.1295269144308708, - 0.15779650669498363, - -0.7566679439388856, - 0.6211092202891351 - ], - [ - 303169.4, - -246169.02, - 5487.8237 - ], - { - "cost": [ - "Steel Beam", - 20 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_8": [ - "5IUCQAHO2NCL6WUA5COXK9O78", - [ - -0.0, - 0.0, - -0.38268367423617267, - 0.9238794323249667 - ], - [ - 176423.36, - 243273.6, - -9780.231 - ], - { - "cost": [ - "Rubber", - 20 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod1_9": [ - "Persistent_Level", - [ - -0.07724582684815441, - 0.12102206362148571, - 0.4693199945355297, - 0.8712780756340149 - ], - [ - -118480.78, - 74929.76, - 16995.352 - ], - { - "power": 300.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2": [ - "BZG9DCNP1O24ZNRI1C3YMKQPW", - [ - -0.14781409401650267, - -0.1611662861368776, - 0.7232717722217955, - 0.6550224158989292 - ], - [ - -26327.45, - -129047.5, - 7780.932 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod20": [ - "Persistent_Level", - [ - -0.43941619316506564, - -0.4812481419596546, - -0.5407285931755509, - 0.5319080969181533 - ], - [ - 66652.42, - -13642.076, - 13420.918 - ], - { - "power": 90.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod21_2": [ - "5A40EPVHBKBKEVZIDQ5RQ3MY9", - [ - 0.12463682613171637, - 0.14244708066332484, - -0.9000384373863043, - 0.3925624816631461 - ], - [ - 295166.53, - -173139.69, - 8083.015 - ], - { - "cost": [ - "Iron Rod", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod22": [ - "42KMEJ5PAEFNOYWUSBCQM4JCS", - [ - 0.16612926544191828, - 0.09591526644183412, - -0.1683040761797458, - 0.9668893766964259 - ], - [ - 366637.47, - -303548.8, - -7288.513 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod23": [ - "Persistent_Level", - [ - 0.12532301420723463, - 0.04721959122862167, - -0.7521137755811578, - 0.6452823574957486 - ], - [ - 360285.0, - -217558.58, - 3900.6602 - ], - { - "power": 70.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod24_1": [ - "6HFUMMCJ4GTHKYOKHEF1ZJZ60", - [ - -0.02721025608009041, - -0.012062322547398512, - -0.09323725823629833, - 0.9951989328849766 - ], - [ - 174948.34, - -276436.4, - 21151.328 - ], - { - "cost": [ - "Electromagnetic Control Rod", - 43 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod25": [ - "A7OSHVNB6E835B4EERH93BM2K", - [ - 0.012052691144963152, - -0.027214673456822464, - 0.9951659169543209, - 0.09358895189747732 - ], - [ - 159088.34, - -145116.4, - 23164.852 - ], - { - "cost": [ - "Fused Modular Frame", - 12 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod26": [ - "3E3WBCALJL7Q8YLRZ9T8SNXPI", - [ - 0.06118460383105961, - -0.03180429724600598, - 0.993355499052398, - 0.09214002080033051 - ], - [ - -55111.1, - -204857.86, - 7844.7627 - ], - { - "cost": [ - "Rubber", - 35 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod27_20823": [ - "9QS3W4H9WP6I6H4WFCNDVCVFM", - [ - 0.11066312669015979, - -0.7528948818214346, - -0.643309796284968, - -0.08399687685883796 - ], - [ - 163999.0, - 61333.0, - 21481.0 - ], - { - "cost": [ - "Crystal Oscillator", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod28_23787": [ - "5LMJPWURFAOHH1WBE4205W5FH", - [ - 0.32706380448208294, - -0.7780321258839246, - -0.22280407929494314, - -0.4879073899212631 - ], - [ - 232515.75, - -20519.285, - 8979.959 - ], - { - "cost": [ - "Heat Sink", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod29_27444": [ - "1GMCIX8T3J8XWW4Q8HOMZGGWU", - [ - -0.1993874105437529, - 0.40740569169834934, - 0.09163257683296422, - 0.8864923765895549 - ], - [ - 94267.0, - 47237.0, - 9435.0 - ], - { - "cost": [ - "Electromagnetic Control Rod", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_0": [ - "5A84AVZIKFF4KTKU9NBQL3HJ9", - [ - -0.30808054005526536, - 0.1993365245011624, - 0.5548183482489004, - 0.7466779300912912 - ], - [ - 47767.355, - 195703.11, - 2890.6855 - ], - { - "cost": [ - "Encased Industrial Beam", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_1": [ - "6FB3587GHU02KV1IOLEGEI3WP", - [ - -0.811182116231288, - -0.09764387630099342, - 0.5729844588927195, - -0.06432773581327789 - ], - [ - 209272.1, - -66916.875, - 14011.011 - ], - { - "cost": [ - "Plastic", - 20 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_10": [ - "08JGCX3NZ77YP1G4X0QBJ1GZ0", - [ - -0.21163471220838925, - -0.44738062307432386, - 0.04661152712466354, - 0.8676915881954882 - ], - [ - -78236.41, - 90857.05, - 20305.773 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_11": [ - "5G9D4DJ8F77IXGGVQP9Y8A6KO", - [ - 0.05420919567076382, - -0.09779117492487235, - -0.471168008266319, - 0.8749279725771099 - ], - [ - 187056.44, - 223656.73, - -3215.4673 - ], - { - "cost": [ - "Heavy Modular Frame", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_1325": [ - "8GCHP9KRLUL1Z9GXOIINKNY5X", - [ - 0.27137575180952966, - 0.5041741963424686, - 0.7556720186417597, - 0.3179990272219814 - ], - [ - -195756.02, - -59210.41, - -84.333374 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_2": [ - "Persistent_Level", - [ - -0.6597398219222711, - 0.17677870874921023, - -0.6356433587361592, - 0.35979185093265575 - ], - [ - 232255.38, - 79925.555, - -1275.7383 - ], - { - "power": 200.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_23": [ - "5RHOD41BCWFMAPOKYUFCR4IIU", - [ - -0.6941865713567233, - -0.43169739538356455, - 0.5645997833707058, - -0.11388348249327199 - ], - [ - 12249.804, - 114177.23, - 26721.719 - ], - { - "cost": [ - "Electromagnetic Control Rod", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_5": [ - "3O0V8RX55BQN4AY1YL984IG7V", - [ - -0.16616860326192073, - 0.10454654732347635, - -0.1405375859678796, - 0.9704159941298595 - ], - [ - 46048.184, - 141933.08, - 13064.624 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod2_6": [ - "5X7S7OD7874AZKS4EV2ZNIHQ5", - [ - 0.10107043158293579, - -0.09919241625929388, - -0.9896551611202395, - 0.022984657586197742 - ], - [ - 360114.72, - -106614.13, - 11815.235 - ], - { - "cost": [ - "Computer", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3": [ - "9TBU6MFSN92XWAB7G6ZP7PIA4", - [ - 0.6940656698710159, - -0.2910114730385636, - -0.46008679571182187, - 0.4710682635012166 - ], - [ - -174494.89, - -197134.84, - -1538.0529 - ], - { - "cost": [ - "Copper Sheet", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod30_6998": [ - "3I9B29HS75HSEFT7MLOIE89LF", - [ - 0.030266356359164456, - 0.0658104799218492, - -0.7553159758854344, - 0.6513453039497789 - ], - [ - 170057.67, - -10579.961, - 18823.914 - ], - { - "cost": [ - "Turbo Motor", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod31": [ - "5INXY9FV1PWMSD4PMJRZEQ425", - [ - 0.16091385094422592, - 0.10459446502294117, - -0.9148105048568368, - 0.35537089169548414 - ], - [ - 200510.45, - 131912.36, - 6341.113 - ], - { - "cost": [ - "Motor", - 30 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod32_1": [ - "EZ0QWW5SWJ1ARG34RYCZQTQWX", - [ - -0.19390564110163858, - -0.011549841430670539, - -0.05833912851304819, - 0.9792158850816437 - ], - [ - 90313.92, - 129583.78, - 9112.515 - ], - { - "cost": [ - "Cooling System", - 30 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod33": [ - "8Q9U6JP0MU8U0J7VH8JZATBPJ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -78884.0, - 292640.0, - -4767.0 - ], - { - "cost": [ - "Copper Sheet", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod34": [ - "12FREXY9ZM3BL66PD3JIM6MDZ", - [ - 0.0, - -0.0, - 0.9679087109040241, - 0.25130206397105126 - ], - [ - -152279.0, - 229520.0, - 1052.0 - ], - { - "cost": [ - "Modular Frame", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod35": [ - "8P1LLQC95QWAJWXXGVK7QDSW1", - [ - 0.012634981153079462, - -0.01711186320381459, - 0.20301237682253698, - 0.9789451037958254 - ], - [ - 5302.214, - -187090.6, - -1608.4811 - ], - { - "cost": [ - "Computer", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod36": [ - "6C395W5NYY9U5DB5RXYXRDFPN", - [ - 0.008659559495156746, - -0.040950184949232554, - 0.7502586698583611, - 0.6598181739572926 - ], - [ - -135.65393, - -237257.38, - -1760.7264 - ], - { - "cost": [ - "Encased Industrial Beam", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod36_UAID_40B076DF2F79496001_1121515405": [ - "5JBTJXQALDR6VASX1TGMV21Z6", - [ - -0.006502233979877939, - -0.017403780195266, - -0.9379173283313094, - 0.34636095998834 - ], - [ - -50655.652, - -259272.38, - -1667.7264 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod37": [ - "64CGAQ0E33TFRWD4OSM9DFJ6D", - [ - 0.03036032833138363, - -0.02029246798959402, - -0.03802746568042726, - 0.9986092218983489 - ], - [ - 44579.465, - -244343.98, - -874.5206 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod38": [ - "DLE86DOPJAXQGGYIWUP49D5QK", - [ - 0.01806695588016458, - -0.029624099727468527, - 0.9862040694645161, - 0.16185651420992905 - ], - [ - 84256.13, - -171122.52, - -290.7247 - ], - { - "cost": [ - "Quickwire", - 38 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod39": [ - "44TG7V0SRK56WD6QVT0EYTLAW", - [ - 0.006257684145513019, - -0.012836200487675586, - 0.20382427092566371, - 0.9789033353338811 - ], - [ - 119338.55, - -165710.64, - -171.06915 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod39_UAID_40B076DF2F79F35F01_1355966267": [ - "E37VG0A7EIE3AG92KZ7EZN4K1", - [ - -0.16634796455960388, - -0.04286885812628064, - 0.9117966992399837, - 0.37298444330145497 - ], - [ - 52686.547, - -163604.64, - 15413.931 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_1": [ - "Persistent_Level", - [ - -0.12470418067833453, - 0.036517129593909875, - 0.9635681768466932, - 0.23377710567099383 - ], - [ - 17807.695, - -136922.8, - 13621.962 - ], - { - "cost": [ - "Rotor", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_11": [ - "0L3U6CJKG4MQPRI2EOOXU0CBK", - [ - -0.732074637456964, - -0.2716725400247362, - 0.12093358591187972, - 0.6128913639359401 - ], - [ - -40194.117, - 62956.594, - 26261.656 - ], - { - "cost": [ - "Aluminum Casing", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_12": [ - "27U1EWROJ3R69KNVM1DYRUYLL", - [ - 0.010814026819607865, - 0.07272275939901188, - 0.49785105766152704, - 0.8641404871169023 - ], - [ - 190459.03, - 176105.31, - 11478.567 - ], - { - "cost": [ - "Plastic", - 20 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_2": [ - "DU5G5MM6ATHZG5C03HBSN73BY", - [ - -0.09654461644352577, - 0.2242602769688802, - 0.052925301220732, - 0.9682899244029695 - ], - [ - -56144.28, - -72864.055, - 27668.361 - ], - { - "cost": [ - "Quartz Crystal", - 2 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_24": [ - "85K5L1F77NVGN8OYET0M9D08H", - [ - -0.14380567430061153, - -0.11783089530910598, - -0.9748279986617518, - 0.1230698223559479 - ], - [ - -3511.892, - 62314.77, - 22109.424 - ], - { - "cost": [ - "Turbo Motor", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_3": [ - "2IOAY27OEM8AMOD40TE15D5UU", - [ - -0.3210474537444406, - -0.4172659836683586, - 0.5842580659710349, - 0.6176245976847702 - ], - [ - 291821.78, - 74782.055, - -1574.7036 - ], - { - "cost": [ - "Heavy Modular Frame", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_4": [ - "1KTQFD9Q9EJR3XATZG3BO1POH", - [ - -0.04357928891174641, - 0.04357788807420666, - -0.0019026738762947704, - 0.9980972863809715 - ], - [ - 94940.0, - 105482.96, - 9860.047 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_5": [ - "6T513FUPX9OFNEQSO7GAJONY3", - [ - -0.256098270916036, - -0.14459657948095703, - 0.640277961138916, - 0.7096123148001426 - ], - [ - 28695.545, - 193441.1, - 17459.803 - ], - { - "cost": [ - "Steel Beam", - 130 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_7": [ - "Persistent_Level", - [ - 0.03149416329624803, - -0.009751641802568042, - 0.9616842966451572, - 0.2721696837389 - ], - [ - 275070.0, - -52585.0, - 5980.081 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_8": [ - "Persistent_Level", - [ - 0.23073787141753582, - -0.04768841386772795, - -0.030914272130480917, - 0.9713548052360308 - ], - [ - -56987.56, - -144927.62, - 2202.4238 - ], - { - "power": 120.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod3_8348": [ - "77KKYMWCG5X95OX3NG74LH3U6", - [ - 0.11328639530590892, - 0.16159056574326244, - -0.013498470584474898, - 0.9802410280095634 - ], - [ - -232498.0, - -51432.0, - -386.0 - ], - { - "cost": [ - "Rotor", - 21 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4": [ - "Persistent_Level", - [ - -0.15763984034859596, - -0.07460089802780925, - 0.8730683737686491, - 0.45534163160563307 - ], - [ - 111212.86, - -113040.625, - 12036.185 - ], - { - "power": 10.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod40_1163": [ - "Persistent_Level", - [ - -0.49089771115044434, - -0.5676199553092327, - -0.27689598899122825, - 0.6001296816543649 - ], - [ - 21373.383, - 132336.28, - 2510.8281 - ], - { - "power": 40.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod41_8375": [ - "Persistent_Level", - [ - -0.061215516827328724, - 0.3477992061227163, - -0.045133908804800844, - 0.9344791613492359 - ], - [ - -9988.376, - 227625.5, - -1017.28906 - ], - { - "power": 40.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod42": [ - "5X2V7GGF2J0SQZDTX9EB18LSP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 221070.0, - 185915.0, - 11560.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod42_5": [ - "7077GZERNI0VEY3FN1KQN50IQ", - [ - 0.0, - -0.0, - 0.33689019848612123, - 0.9415439417063772 - ], - [ - 190785.0, - -236810.0, - 23130.0 - ], - { - "cost": [ - "High-Speed Connector", - 35 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod43_2": [ - "8URZKFKKBTAUXSHV71JBMIWBD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 176245.0, - -243985.0, - 7165.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod44_10": [ - "Persistent_Level", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 109775.0, - -162730.0, - 15570.0 - ], - { - "power": 70.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod45_6": [ - "3OUYFKUC3NVUEGBQ2D6PJDPYW", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 190865.0, - -127670.0, - 16020.0 - ], - { - "cost": [ - "Alclad Aluminum Sheet", - 57 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_1": [ - "AKK7KQYEZWTFWVYKCJGCLA0SG", - [ - -0.36698510325974815, - -0.33713112407552603, - 0.7856473459209563, - 0.36663713261528974 - ], - [ - 143671.61, - 92573.48, - 24990.035 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_12": [ - "6IFYXZK77J1182HVSKGFQLBUD", - [ - 0.2241187114366207, - 0.23332188894069897, - -0.3594136352448479, - 0.8753019696797307 - ], - [ - -157077.94, - -6312.62, - 25128.533 - ], - { - "cost": [ - "Electromagnetic Control Rod", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_13058": [ - "65MKF1QGYVMRCO02QUXK01MUE", - [ - 0.14872380887493614, - -0.09564082919372568, - 0.94474903865869, - 0.27601325043980957 - ], - [ - -200203.45, - -17766.805, - 12193.296 - ], - { - "cost": [ - "Solid Biofuel", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_25": [ - "29P0N2BTN9946QHMRTSBAWD74", - [ - -0.04301240227543242, - -0.6181186719780559, - 0.7812671407357168, - 0.07550427411225417 - ], - [ - -33340.227, - 5176.2915, - 23519.096 - ], - { - "cost": [ - "Cooling System", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_4": [ - "Persistent_Level", - [ - -0.7281787255497736, - -0.664332059554527, - -0.08843516321436186, - 0.14351961612266503 - ], - [ - 191366.2, - 37694.17, - 5676.7207 - ], - { - "power": 400.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_6": [ - "Persistent_Level", - [ - -0.10407222928672685, - 0.2872392800445523, - -0.8952385568678612, - 0.3243616706516467 - ], - [ - 88323.695, - 188913.62, - 1420.112 - ], - { - "power": 30.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_7": [ - "CL7X2F1PBLXKQNAXHSSMOUSLS", - [ - -0.0889506205697115, - 0.020891863132837203, - -0.9770656357612889, - 0.1923384011826301 - ], - [ - 98306.29, - -149781.84, - 2552.4712 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_8033": [ - "1ANJT85V0S3IAAUY88J6GS698", - [ - 0.2804254048648844, - -0.1452930392842752, - -0.9488154151231633, - 0.000912724801505442 - ], - [ - 144456.53, - 36294.047, - 17301.254 - ], - { - "cost": [ - "Heat Sink", - 17 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod4_9": [ - "AZJI25GUPHFUK3IW9JMGS0YHY", - [ - 0.7100512950155689, - 0.2573413184024765, - 0.22333411758380264, - 0.6162178804713907 - ], - [ - 118349.95, - 221905.25, - -7063.043 - ], - { - "cost": [ - "Circuit Board", - 15 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5": [ - "5PLZML58WG0KIOMKLMBUZQH5A", - [ - -0.4943870739574817, - -0.34887984535873906, - -0.5709242522760691, - 0.5548961819739194 - ], - [ - 226418.22, - 98109.51, - 7339.372 - ], - { - "cost": [ - "Computer", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5_10": [ - "Persistent_Level", - [ - -0.0638345878694675, - 0.4243160852566771, - -0.3898026671853123, - 0.81482199641345 - ], - [ - 156569.67, - 191767.78, - -9312.108 - ], - { - "power": 300.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5_13": [ - "Persistent_Level", - [ - -0.22416559666305, - -0.11020188230504745, - 0.40405303355047767, - 0.8799695883880192 - ], - [ - -152676.61, - 33864.59, - 19283.484 - ], - { - "power": 256.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5_26": [ - "Persistent_Level", - [ - 0.6323378597499136, - 0.43131311098048286, - -0.5721503601401516, - -0.29455355508757813 - ], - [ - 35096.133, - 16492.336, - 22705.035 - ], - { - "power": 420.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5_6": [ - "Persistent_Level", - [ - 0.05311974183839424, - -0.25124469012746325, - 0.8476503558658909, - 0.4642663814128756 - ], - [ - 127215.88, - -116866.95, - -1397.322 - ], - { - "power": 100.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5_740": [ - "3QI1FQTX3TIVUGSX0192S09MX", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -151842.0, - 72468.0, - 9945.0 - ], - { - "cost": [ - "Stator", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod5_9": [ - "DOTOWZSS2Q85LQJN13NS73MEK", - [ - 0.33020943468028713, - -0.0278921034464292, - -0.4134586709832002, - 0.8480776422016234 - ], - [ - 349295.3, - -38831.996, - -1485.3041 - ], - { - "cost": [ - "Reinforced Iron Plate", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod6": [ - "ECOHP6A2SCQQQEUIIEDYDWS9E", - [ - 0.43858550455530365, - -0.3373491504792011, - -0.28211137336496456, - 0.7837419721330895 - ], - [ - 272715.12, - 28087.709, - -1586.1102 - ], - { - "cost": [ - "Silica", - 60 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod6_2102": [ - "3R6BPJKWFPHZXM4UGKCBKM9EW", - [ - 0.5569848860099661, - -0.054474856520700214, - -0.018117392936134423, - 0.8285361107620547 - ], - [ - -108774.0, - 107811.0, - 10154.0 - ], - { - "cost": [ - "Copper Sheet", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod6_27": [ - "1X2A8L5VBAU1WH5W8YI7585IL", - [ - 0.0009284086326369352, - -0.017128854862603873, - 0.9983866604004127, - 0.054127781434467864 - ], - [ - -35359.992, - 116594.39, - 21827.936 - ], - { - "cost": [ - "Turbo Motor", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod7": [ - "DCN24CJTCWUDCBZUKVB3XD54X", - [ - 0.05892005063173027, - -0.16703795785847256, - -0.4878546176307401, - 0.854765827770618 - ], - [ - 216096.72, - -268.4362, - -1592.9055 - ], - { - "cost": [ - "Superposition Oscillator", - 1 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod7_5615": [ - "Persistent_Level", - [ - 0.006091634057931408, - -0.1645229203346914, - -0.7099061428152499, - 0.6847834468444918 - ], - [ - -121994.0, - 166916.0, - -49.0 - ], - { - "power": 60.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod8": [ - "54ZQ10VOB2550ROEMUQ34SK1Z", - [ - -0.03814565463485643, - -0.6248655782495026, - 0.029400507851332636, - 0.779245486537764 - ], - [ - 261797.5, - 124616.83, - -2597.287 - ], - { - "cost": [ - "Cooling System", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod9": [ - "ARH6JPFZJSTSBTFBRMFSUXJCA", - [ - -0.06204489747207284, - 0.4845018837439774, - -0.4588916417018506, - 0.7421770789524545 - ], - [ - 249919.5, - 59534.234, - 2430.3152 - ], - { - "cost": [ - "Turbo Motor", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod9_1568": [ - "Persistent_Level", - [ - -0.0, - 0.0, - -0.06561784863736297, - 0.9978448265838753 - ], - [ - -129115.0, - 60165.0, - 4800.0 - ], - { - "power": 150.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_1145": [ - "Persistent_Level", - [ - 0.11714851461430545, - -0.23441669556183567, - -0.26981519588068614, - 0.926566132792149 - ], - [ - -157080.05, - -67028.16, - 11766.457 - ], - { - "power": 120.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_0": [ - "0HH0P11CB4KN8JME62HOE0I4Y", - [ - 0.8595708107227961, - 0.3398322064536882, - 0.21665168932405104, - 0.3141880620316561 - ], - [ - -123677.37, - -167107.47, - 29710.719 - ], - { - "cost": [ - "Rotor", - 4 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_1": [ - "Persistent_Level", - [ - 0.06316552161832659, - -0.07817371717814632, - 0.5640442841315751, - 0.8196054125978762 - ], - [ - 80980.0, - -44100.0, - 8303.0 - ], - { - "power": 60.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_10": [ - "5V38EQ595PC6PWD7R7ZC10VY7", - [ - -0.09171290391952144, - -0.17061550895443292, - 0.8036376932184575, - 0.5627126703721758 - ], - [ - -142000.0, - 23970.0, - 32660.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_11": [ - "9A0TTMX75OTZ286SXB1WZJOEC", - [ - 0.009549354343747669, - -0.015496251380185629, - -0.09272731698157217, - 0.9955251482057994 - ], - [ - 219146.14, - -199880.16, - 6503.65 - ], - { - "cost": [ - "Screws", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_12": [ - "CC1J83F9RJZCCEG1SNWQXF4TP", - [ - -0.027210253636082513, - -0.012062324528565394, - -0.09323725824749556, - 0.9951989329267378 - ], - [ - 236508.34, - -312236.4, - 9971.155 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_2": [ - "5A7MUYO3WUNXBYPQ6UAO1BL32", - [ - -0.19390564088514428, - -0.011549837155937827, - -0.058339127677636736, - 0.9792158852247063 - ], - [ - 150633.92, - 146698.78, - 7727.5146 - ], - { - "cost": [ - "Quickwire", - 25 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_3": [ - "0I32DKV9HOOXGL9ULFBPIW8IT", - [ - 0.027577927089897918, - 0.2606385792214946, - 0.9247795469459941, - 0.2758437574229055 - ], - [ - -146044.06, - -137047.47, - 2357.7893 - ], - { - "cost": [ - "Modular Frame", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_4": [ - "AHK0ZGPUGTOLNP91J86A9B9U3", - [ - 0.025866613855408088, - 0.07416254046468852, - -0.9553694837499686, - 0.28478059168208275 - ], - [ - -29068.629, - -22640.402, - 17384.154 - ], - { - "cost": [ - "Plastic", - 20 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_5": [ - "70DX749KZR2CVL8Q86VE4YIPU", - [ - 0.14586753810935665, - -0.03640600831196817, - -0.9868736869546124, - 0.05897109360791872 - ], - [ - 111479.0, - -54515.0, - 17081.0 - ], - { - "cost": [ - "Copper Sheet", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_6": [ - "0KYEUZ1LXKNL8QMY37BZBNLWM", - [ - -0.33737588767579596, - 0.27080637536585184, - -0.154109184406221, - 0.8883083793130779 - ], - [ - 125497.35, - -34949.383, - 8220.562 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_7": [ - "Persistent_Level", - [ - 0.030761159766153304, - -0.2884223704200089, - -0.7085577538275335, - 0.6432823616282548 - ], - [ - -247303.56, - -142348.27, - 4524.1704 - ], - { - "power": 100.0 - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_8": [ - "Persistent_Level", - [ - 0.16354339895295206, - 0.0, - 0.0, - 0.9865361405741381 - ], - [ - 64696.56, - 156038.69, - 14067.211 - ], - { - "cost": [ - "Modular Frame", - 6 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_9": [ - "F3DKOII5P8LBQS10KADCGXCX3", - [ - 0.4583302523586066, - 0.32817192596905814, - 0.7253167450849466, - 0.3951609622394825 - ], - [ - -94708.85, - 40337.61, - 19832.365 - ], - { - "cost": [ - "Heat Sink", - 12 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F01FA401_2123550800": [ - "1H1JHAAINGGZXKPQTO0TGZSQ4", - [ - 0.0, - -0.03204586640583039, - 0.0, - 0.9994863993303259 - ], - [ - -190866.0, - 66921.0, - 23751.0 - ], - { - "cost": [ - "Silica", - 10 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F020A401_1123860977": [ - "EIYYCRMGCGIJNU0VZENZO30S3", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -164591.0, - 155611.0, - 12383.0 - ], - { - "cost": [ - "Crystal Oscillator", - 5 - ] - } - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F020A401_1502230978": [ - "9T2ED4WSV2C7Q8JKGBTOFGUSB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -142173.0, - 97937.0, - 18517.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F03B7C01_1559404536": [ - "0PTNLAI4TEAYU9U0PPRODZVOZ", - [ - 0.09657409693761548, - -0.1701386605372829, - 0.016757195441625173, - 0.9805332612370651 - ], - [ - 115978.0, - 21424.0, - 15519.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F03B7C01_1712034537": [ - "52ZWOLE1UP2NJZ079OGE7M14M", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 198418.0, - -41186.0, - 13786.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F03B7C01_1807913538": [ - "EZAHXO91013LX1LBFIXQWR26W", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 121061.0, - 45324.0, - 17373.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F03C7C01_1131248715": [ - "DJQW1LZU5CE99MVZCG2RLHLF5", - [ - -0.025085318668232562, - 0.16911147883367633, - -0.14457025362518613, - 0.9746135009739756 - ], - [ - 188304.0, - 17059.0, - 12949.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F0486401_1144991453": [ - "0K0ZTOH4UELEGIRIIYOENF4US", - [ - -0.3096640972447582, - -0.2950161474803955, - 0.3301832898301622, - 0.841458623296681 - ], - [ - 241532.0, - 131343.0, - 17157.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_DropPod_C_UAID_04421A9713F0FF6301_1123988602": [ - "4SB9TE4PJA5D3B0GHWPFUUULG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 182825.0, - 93880.0, - 17755.0 - ], - { - "cost": [ - "Aluminum Casing", - 10 - ] - } - ] -} diff --git a/game_data/sav_data/freeDroppedItems.json b/game_data/sav_data/freeDroppedItems.json deleted file mode 100644 index eb423f1..0000000 --- a/game_data/sav_data/freeDroppedItems.json +++ /dev/null @@ -1,6433 +0,0 @@ -{ - "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskCluster.Desc_NobeliskCluster_C": [ - [ - 3, - [ - -117546.625, - 74459.03, - 17108.836 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222012224" - ], - [ - 2, - [ - 190017.77, - 38288.914, - 5890.683 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908098168" - ] - ], - "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskGas.Desc_NobeliskGas_C": [ - [ - 54, - [ - -55348.0, - -149093.0, - 573.6183 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667084850" - ], - [ - 5, - [ - 176213.0, - 244441.0, - -9723.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178457288" - ], - [ - 4, - [ - 226.0, - -236608.0, - -1751.3817 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126606299" - ] - ], - "/Game/FactoryGame/Equipment/NobeliskDetonator/Ammo/Desc_NobeliskShockwave.Desc_NobeliskShockwave_C": [ - [ - 2, - [ - 187926.25, - 18031.312, - 12956.018 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816350487" - ] - ], - "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Explosive.Desc_Rebar_Explosive_C": [ - [ - 6, - [ - -154679.94, - 34797.855, - 18979.855 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928591398" - ], - [ - 5, - [ - 94725.38, - 47770.348, - 9546.502 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296450396" - ], - [ - 7, - [ - 98900.766, - -150660.67, - 2416.8706 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable166" - ] - ], - "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Spreadshot.Desc_Rebar_Spreadshot_C": [ - [ - 3, - [ - -186653.48, - 71978.7, - -620.949 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7954DD01_1576152325" - ], - [ - 7, - [ - 47267.0, - 221931.0, - 5642.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637929636" - ] - ], - "/Game/FactoryGame/Equipment/RebarGun/Ammo/Desc_Rebar_Stunshot.Desc_Rebar_Stunshot_C": [ - [ - 10, - [ - -108784.836, - 108263.73, - 9930.567 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269706715" - ], - [ - 6, - [ - 359179.3, - -105621.695, - 11365.734 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420580023" - ] - ], - "/Game/FactoryGame/Equipment/Rifle/Ammo/Desc_CartridgeSmartProjectile.Desc_CartridgeSmartProjectile_C": [ - [ - 17, - [ - -32609.076, - 4099.9194, - 23453.445 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515422868" - ], - [ - 6, - [ - 91185.445, - 127556.35, - 9551.623 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844992048" - ], - [ - 20, - [ - 233370.17, - -20183.316, - 8803.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_400" - ], - [ - 17, - [ - 170644.28, - -10718.936, - 15861.803 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691679584" - ] - ], - "/Game/FactoryGame/Resource/Equipment/JumpingStilts/BP_EquipmentDescriptorJumpingStilts.BP_EquipmentDescriptorJumpingStilts_C": [ - [ - 1, - [ - -189831.9, - 74437.16, - 5093.95 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ADD01_1750249384" - ] - ], - "/Game/FactoryGame/Resource/Equipment/Medkit/Desc_Medkit.Desc_Medkit_C": [ - [ - 5, - [ - -124128.0, - -167993.0, - 29265.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811273627" - ], - [ - 2, - [ - 304038.1, - -244328.36, - 4773.2896 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_420" - ] - ], - "/Game/FactoryGame/Resource/Equipment/ShockShank/BP_EquipmentDescriptorShockShank.BP_EquipmentDescriptorShockShank_C": [ - [ - 1, - [ - -160377.0, - 66352.41, - 3920.9834 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7956DD01_1858672679" - ] - ], - "/Game/FactoryGame/Resource/Equipment/StunSpear/BP_EquipmentDescriptorStunSpear.BP_EquipmentDescriptorStunSpear_C": [ - [ - 1, - [ - -183912.44, - 68507.25, - 12234.406 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A8DD01_1932653124" - ] - ], - "/Game/FactoryGame/Resource/Parts/AluminumCasing/Desc_AluminumCasing.Desc_AluminumCasing_C": [ - [ - 120, - [ - -157212.38, - -4807.6973, - 25326.084 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559412686" - ], - [ - 98, - [ - -95235.49, - 9213.187, - 25144.203 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214895336" - ], - [ - 100, - [ - -95077.516, - 39841.98, - 21191.273 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571588162" - ], - [ - 88, - [ - -118261.7, - 74271.8, - 17058.268 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222010223" - ], - [ - 89, - [ - -78133.91, - 90648.94, - 20162.3 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085617290" - ], - [ - 99, - [ - -76966.7, - 91372.8, - 20234.268 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085719291" - ], - [ - 111, - [ - -3423.3394, - 63368.508, - 21851.97 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647577224" - ], - [ - 80, - [ - 52164.656, - -162619.1, - 15512.025 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable166_UAID_40B076DF2F79E7CE01_2045958380" - ], - [ - 69, - [ - 33739.383, - 14172.464, - 22536.047 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917986630" - ], - [ - 113, - [ - 34265.086, - 15918.938, - 22549.275 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917972626" - ], - [ - 111, - [ - 45712.49, - 140979.4, - 13196.647 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911687806" - ], - [ - 60, - [ - 145663.36, - 93713.59, - 25564.463 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800393340" - ], - [ - 74, - [ - 143740.94, - 37028.082, - 17172.258 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023578398" - ], - [ - 86, - [ - 112254.62, - -162208.73, - 15773.544 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286305766" - ], - [ - 75, - [ - 172462.88, - -278159.38, - 21552.814 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428877224" - ], - [ - 60, - [ - 176219.78, - -276122.47, - 20903.373 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428901226" - ], - [ - 89, - [ - 175339.88, - -244328.38, - 7071.8145 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844777230" - ], - [ - 90, - [ - 187532.7, - -128964.65, - 15921.985 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495273770" - ], - [ - 55, - [ - 226387.28, - 99903.37, - 7190.4053 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548949575" - ], - [ - 60, - [ - -142074.83, - 98593.73, - 18538.166 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798751772" - ], - [ - 67, - [ - 248901.66, - 58164.652, - -1660.2856 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679189561" - ], - [ - 50, - [ - 164914.0, - 60939.0, - 21217.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143866065" - ] - ], - "/Game/FactoryGame/Resource/Parts/AluminumPlate/Desc_AluminumPlate.Desc_AluminumPlate_C": [ - [ - 32, - [ - -234819.58, - 18118.084, - 19658.287 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463602866" - ], - [ - 60, - [ - -165373.19, - 156848.2, - 12407.422 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756216770" - ], - [ - 78, - [ - -154637.02, - 33441.484, - 18978.24 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928505396" - ], - [ - 85, - [ - -155731.69, - -3293.4788, - 25283.053 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559495687" - ], - [ - 102, - [ - -93539.88, - 8300.135, - 25108.566 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214884332" - ], - [ - 119, - [ - -36410.484, - 116474.055, - 21722.008 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902840234" - ], - [ - 68, - [ - -41706.03, - 63447.363, - 25847.12 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915149648" - ], - [ - 68, - [ - 145843.84, - 92643.33, - 25431.902 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800365336" - ], - [ - 113, - [ - 94107.62, - 105957.695, - 9858.93 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524872339" - ], - [ - 116, - [ - 121290.22, - 46404.746, - 17417.637 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121738301" - ], - [ - 112, - [ - 114765.97, - 22138.234, - 16479.371 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547215761" - ], - [ - 65, - [ - 98747.8, - -151275.78, - 2330.5593 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable163" - ], - [ - 71, - [ - 177551.78, - -242843.45, - 7702.3726 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844804232" - ], - [ - 77, - [ - 189154.88, - -236481.38, - 23142.814 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162935514" - ], - [ - 68, - [ - 233205.67, - 27156.78, - -1752.0388 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955765056" - ], - [ - 72, - [ - 190811.95, - 36890.355, - 5536.739 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908096166" - ], - [ - 75, - [ - 231971.98, - 76542.39, - -1667.0386 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399878416" - ], - [ - 67, - [ - 241788.55, - 132320.1, - 17014.568 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745600390" - ], - [ - 60, - [ - 258749.27, - 124281.04, - -2778.9363 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203913373" - ], - [ - 171, - [ - 271510.62, - 29439.889, - -1664.8451 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894812570" - ], - [ - 78, - [ - 171376.64, - -10385.348, - 15799.578 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691662580" - ], - [ - 89, - [ - 170984.4, - -12098.085, - 15919.1875 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691639579" - ], - [ - 45, - [ - 166078.0, - 60264.0, - 21235.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143841064" - ] - ], - "/Game/FactoryGame/Resource/Parts/AluminumPlateReinforced/Desc_AluminumPlateReinforced.Desc_AluminumPlateReinforced_C": [ - [ - 16, - [ - 108142.74, - -162850.95, - 15478.8 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286302765" - ], - [ - 15, - [ - 172659.52, - -277297.9, - 21639.17 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428898225" - ], - [ - 17, - [ - 191382.9, - -128120.85, - 16019.172 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495299773" - ], - [ - 16, - [ - 187619.45, - 16483.072, - 13038.775 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816333484" - ], - [ - 6, - [ - 259666.22, - 125420.414, - -2751.1262 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203915375" - ], - [ - 17, - [ - 158022.73, - -145613.89, - 23204.91 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363258333" - ] - ], - "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_Biofuel.Desc_Biofuel_C": [ - [ - 74, - [ - -156284.25, - -64173.93, - 12110.739 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695505715" - ], - [ - 14, - [ - -43852.598, - 145574.69, - 7395.9365 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944044107" - ] - ], - "/Game/FactoryGame/Resource/Parts/BioFuel/Desc_PackagedBiofuel.Desc_PackagedBiofuel_C": [ - [ - 7, - [ - -77287.83, - 91759.24, - 20218.748 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085720292" - ], - [ - 8, - [ - 161672.77, - -145606.81, - 23154.47 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363261335" - ], - [ - 9, - [ - 183179.83, - 95315.51, - 17877.28 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166764077" - ], - [ - 6, - [ - 241256.11, - 132761.42, - 17053.516 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745625391" - ] - ], - "/Game/FactoryGame/Resource/Parts/Cable/Desc_Cable.Desc_Cable_C": [ - [ - 150, - [ - -232459.0, - -50591.0, - -353.1138 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073894714" - ], - [ - 128, - [ - -151898.0, - 228593.0, - 794.4032 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795AC101_1501791808" - ], - [ - 100, - [ - -79366.0, - 291321.0, - -4861.1494 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1374531778" - ], - [ - 225, - [ - -78177.0, - 292164.0, - -4804.1494 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795DC101_1910607341" - ], - [ - 124, - [ - -9495.0, - 227376.0, - -1112.1138 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F7C201_1202575504" - ], - [ - 104, - [ - -43037.18, - 146932.2, - 7478.7393 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944040103" - ], - [ - 120, - [ - 21451.436, - 131122.53, - 2918.5417 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1436977170" - ], - [ - 110, - [ - 361934.47, - -216663.34, - 4015.592 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1349023139" - ] - ], - "/Game/FactoryGame/Resource/Parts/CartridgeStandard/Desc_CartridgeStandard.Desc_CartridgeStandard_C": [ - [ - 16, - [ - 200506.72, - 133136.95, - 6814.42 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917484625" - ] - ], - "/Game/FactoryGame/Resource/Parts/Cement/Desc_Cement.Desc_Cement_C": [ - [ - 108, - [ - -152906.0, - 228259.0, - 758.4032 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795BC101_1789143985" - ], - [ - 100, - [ - -107497.56, - 214104.53, - 3144.638 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769749568" - ], - [ - 128, - [ - -9085.0, - 226318.0, - -1063.4291 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1493836352" - ], - [ - 74, - [ - -8731.0, - 227267.0, - -1130.4291 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1520628354" - ], - [ - 122, - [ - 79259.0, - -44820.0, - 8262.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444870225" - ], - [ - 112, - [ - 78241.0, - -43734.0, - 8214.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444833224" - ], - [ - 125, - [ - 29313.586, - 193928.64, - 17508.402 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183577528" - ], - [ - 100, - [ - 26727.818, - 194649.2, - 17004.346 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183604529" - ], - [ - 124, - [ - 29696.0, - 266783.0, - -1334.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1638364273" - ], - [ - 96, - [ - 273248.2, - -50479.543, - 5793.112 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629253673" - ], - [ - 128, - [ - 294420.16, - -173139.45, - 8139.5747 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable114" - ], - [ - 80, - [ - 360957.62, - -218025.7, - 4069.354 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1377266141" - ], - [ - 66, - [ - -146246.0, - -137415.0, - 2590.571 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122940130" - ] - ], - "/Game/FactoryGame/Resource/Parts/CircuitBoard/Desc_CircuitBoard.Desc_CircuitBoard_C": [ - [ - 119, - [ - -191473.72, - 65714.44, - 23697.186 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232932763" - ], - [ - 52, - [ - -130147.836, - 60991.723, - 4820.5674 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152463275" - ], - [ - 65, - [ - -54745.0, - -147594.0, - 751.1931 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667085851" - ], - [ - 111, - [ - -54648.0, - -204505.0, - 7792.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611286924" - ], - [ - 149, - [ - -54025.0, - -207360.0, - 7726.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611282921" - ], - [ - 127, - [ - 51759.266, - -163487.03, - 15471.692 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045955377" - ], - [ - 79, - [ - 66177.0, - -13901.0, - 13302.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565897745" - ], - [ - 111, - [ - 118619.57, - 220004.92, - -7451.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378168297" - ], - [ - 64, - [ - 89501.0, - 188801.0, - 1256.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042508453" - ], - [ - 71, - [ - 128864.0, - -116212.0, - -1498.8069 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312028385" - ], - [ - 117, - [ - 181264.0, - 94525.0, - 17910.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166767079" - ], - [ - 100, - [ - 225491.55, - 100133.19, - 7234.082 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548951577" - ], - [ - 115, - [ - 184949.0, - 176759.0, - 6246.9985 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553803264" - ], - [ - 95, - [ - 183857.0, - 175061.0, - 6132.904 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553809266" - ], - [ - 104, - [ - 241499.83, - 133234.19, - 17004.459 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745626392" - ], - [ - 140, - [ - -142360.56, - 97133.53, - 18499.639 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798754775" - ], - [ - 102, - [ - -141728.19, - 98828.2, - 18580.127 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798752773" - ], - [ - 40, - [ - 9423.0, - -43305.0, - 13137.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683955517" - ], - [ - 54, - [ - 10806.0, - -43776.0, - 13115.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683960521" - ], - [ - 75, - [ - 156816.0, - 191075.0, - -9228.001 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578760270" - ] - ], - "/Game/FactoryGame/Resource/Parts/Computer/Desc_Computer.Desc_Computer_C": [ - [ - 10, - [ - -259459.19, - 106550.195, - -1630.6661 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038678492" - ], - [ - 26, - [ - -236283.22, - 15616.376, - 19652.59 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463606869" - ], - [ - 36, - [ - -164143.28, - 154549.03, - 12423.901 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756214768" - ], - [ - 40, - [ - -91098.13, - 41734.535, - 20160.15 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571674167" - ], - [ - 36, - [ - -117335.79, - 72705.445, - 17360.074 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222016227" - ], - [ - 33, - [ - -77445.41, - 89912.37, - 20194.895 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085725295" - ], - [ - 26, - [ - -41486.332, - 62611.254, - 25945.537 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915247652" - ], - [ - 30, - [ - -40511.547, - 62645.918, - 25980.705 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915248653" - ], - [ - 35, - [ - -32612.84, - 3618.87, - 23459.37 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515421867" - ], - [ - 12, - [ - -57686.0, - -147637.0, - 1648.8368 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667081847" - ], - [ - 26, - [ - -55914.695, - -207082.0, - 7776.937 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611263919" - ], - [ - 29, - [ - -54031.0, - -205058.0, - 7765.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611284922" - ], - [ - 8, - [ - 42849.71, - -244170.17, - -1771.8702 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453351183" - ], - [ - 14, - [ - 45031.953, - -245496.67, - -886.80084 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453354185" - ], - [ - 36, - [ - 36371.92, - 15041.528, - 22571.545 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917942625" - ], - [ - 8, - [ - 118397.0, - 223269.0, - -6903.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378169298" - ], - [ - 28, - [ - 147097.55, - 94014.05, - 25566.754 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800394341" - ], - [ - 36, - [ - 143640.89, - 37587.945, - 17179.81 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023582399" - ], - [ - 26, - [ - 116635.66, - 22239.875, - 16780.64 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547247764" - ], - [ - 19, - [ - 126071.0, - -115999.0, - -1494.1632 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312024381" - ], - [ - 17, - [ - 100474.945, - -153999.86, - 1561.4756 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_107" - ], - [ - 28, - [ - 110859.0, - -161811.0, - 15618.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286313768" - ], - [ - 9, - [ - 86433.0, - -169916.0, - -326.3817 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502723191" - ], - [ - 31, - [ - 192456.97, - -237004.1, - 23098.826 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162964519" - ], - [ - 30, - [ - 190132.0, - -128628.0, - 15991.276 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495303774" - ], - [ - 26, - [ - 161609.83, - -146949.3, - 23128.643 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363267337" - ], - [ - 33, - [ - 160905.0, - -144868.0, - 23159.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363264336" - ], - [ - 16, - [ - 209236.2, - -68308.08, - 12128.056 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_395" - ], - [ - 28, - [ - 199969.64, - -41318.074, - 13926.835 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734565297" - ], - [ - 37, - [ - 218284.14, - 1684.5383, - -1666.0793 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742962875" - ], - [ - 28, - [ - 190999.8, - 38317.54, - 5253.899 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908097167" - ], - [ - 26, - [ - 191409.14, - 38311.54, - 5164.9204 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908094165" - ], - [ - 25, - [ - 233658.14, - 77299.54, - -1664.0793 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399877415" - ], - [ - 25, - [ - 233207.8, - 79056.54, - -1643.5784 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399880417" - ], - [ - 27, - [ - 181995.44, - 94864.5, - 17919.1 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166768080" - ], - [ - 20, - [ - 225531.55, - 99264.19, - 7263.3213 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548952579" - ], - [ - 17, - [ - 219704.0, - 185042.0, - 11558.239 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745829423" - ], - [ - 10, - [ - 185462.0, - 175539.0, - 6277.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553805265" - ], - [ - 35, - [ - 240656.77, - 132547.53, - 17048.422 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745628394" - ], - [ - 25, - [ - 286872.6, - 72929.164, - -1666.8337 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278922556" - ], - [ - 27, - [ - 250592.81, - 59149.387, - -1379.3492 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679194565" - ], - [ - 31, - [ - 272086.88, - 29579.168, - -1677.9788 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894813571" - ], - [ - 9, - [ - 4371.0, - -188586.0, - -1346.1632 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907924115" - ], - [ - 15, - [ - 156745.0, - -40537.0, - 13497.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418408390" - ], - [ - 23, - [ - 164480.0, - 61281.992, - 21342.998 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143869068" - ], - [ - 18, - [ - 158370.0, - 190147.0, - -8996.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578756269" - ] - ], - "/Game/FactoryGame/Resource/Parts/ComputerSuper/Desc_ComputerSuper.Desc_ComputerSuper_C": [ - [ - 1, - [ - -29442.0, - -129172.0, - 8048.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619418945" - ] - ], - "/Game/FactoryGame/Resource/Parts/CoolingSystem/Desc_CoolingSystem.Desc_CoolingSystem_C": [ - [ - 17, - [ - -235471.28, - 18885.662, - 19611.896 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463603867" - ], - [ - 17, - [ - -141279.0, - 24030.842, - 32709.242 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068250583" - ], - [ - 37, - [ - -41430.97, - 64067.79, - 25808.854 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915244650" - ], - [ - 22, - [ - -2991.826, - 62518.277, - 21897.502 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647587227" - ], - [ - 15, - [ - 215675.77, - 2013.9142, - -1665.3169 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742965878" - ], - [ - 20, - [ - 233786.0, - 28674.246, - -1691.0928 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955788061" - ], - [ - 15, - [ - 233503.77, - 75763.914, - -1659.959 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399881418" - ], - [ - 17, - [ - 288622.16, - 72076.75, - -1609.6284 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278898554" - ] - ], - "/Game/FactoryGame/Resource/Parts/CopperSheet/Desc_CopperSheet.Desc_CopperSheet_C": [ - [ - 105, - [ - -151098.56, - 71765.53, - 9570.638 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364265736" - ], - [ - 140, - [ - -182510.14, - 68798.33, - 14384.644 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABDD01_1972325656" - ], - [ - 150, - [ - -160652.0, - 66496.41, - 3886.9834 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799BDD01_1695234829" - ], - [ - 58, - [ - -195618.72, - -57525.2, - -346.86685 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060865160" - ], - [ - 150, - [ - -156947.88, - -64139.074, - 12131.486 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695504714" - ], - [ - 74, - [ - -88544.0, - -50158.0, - 16074.571 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159309099" - ], - [ - 72, - [ - -115987.5, - 168763.67, - 272.9846 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926562001" - ], - [ - 60, - [ - -26765.0, - -127959.0, - 7941.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619417944" - ], - [ - 139, - [ - 55533.0, - -51724.0, - 13975.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139933808" - ], - [ - 141, - [ - 64828.0, - -14621.0, - 13197.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565899746" - ], - [ - 111, - [ - 65129.0, - -12222.0, - 13184.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565876744" - ], - [ - 72, - [ - 66643.82, - 157183.2, - 13621.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165880992" - ], - [ - 55, - [ - 27607.738, - 193694.38, - 17096.244 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183607532" - ], - [ - 132, - [ - 87289.0, - 188866.0, - 1435.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042510455" - ], - [ - 110, - [ - 124736.68, - -35340.332, - 8083.9316 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541725849" - ], - [ - 95, - [ - 125940.766, - -33378.246, - 8243.739 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541722846" - ], - [ - 30, - [ - 86622.195, - -63094.73, - 13239.665 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523416938" - ], - [ - 30, - [ - 109172.445, - -112284.8, - 11564.967 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914602126" - ], - [ - 121, - [ - 235213.56, - -312162.8, - 9933.154 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130361058" - ], - [ - 65, - [ - 304625.22, - -243649.5, - 4073.1523 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790DCC01_1241109912" - ], - [ - 98, - [ - 357639.3, - -104662.28, - 11029.12 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420585027" - ] - ], - "/Game/FactoryGame/Resource/Parts/CrystalOscillator/Desc_CrystalOscillator.Desc_CrystalOscillator_C": [ - [ - 58, - [ - -236159.05, - 17587.559, - 19611.4 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463580864" - ], - [ - 39, - [ - -235459.6, - 18115.48, - 19651.824 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463601865" - ], - [ - 12, - [ - -190797.19, - 67873.195, - 23772.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232933764" - ], - [ - 68, - [ - -34646.24, - 117169.4, - 21754.408 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902826230" - ], - [ - 30, - [ - -53407.0, - -205606.0, - 7811.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611281920" - ], - [ - 35, - [ - 52798.69, - -163047.19, - 15477.714 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable163_UAID_40B076DF2F79E7CE01_2045954376" - ], - [ - 52, - [ - 13166.248, - 114409.01, - 26382.498 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691510272" - ], - [ - 42, - [ - 92377.39, - 106230.37, - 9868.796 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524874340" - ], - [ - 35, - [ - 121694.7, - 44478.824, - 17306.357 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121776306" - ], - [ - 32, - [ - 199503.61, - -41647.418, - 13978.325 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734577300" - ], - [ - 36, - [ - 191355.78, - 37187.867, - 5528.8555 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796CD601_1908069164" - ], - [ - 17, - [ - 183206.97, - 92863.28, - 17666.79 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166745076" - ], - [ - 37, - [ - 227056.9, - 99557.375, - 7161.7627 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548923574" - ], - [ - 40, - [ - 219452.08, - 186406.94, - 11596.166 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745831425" - ], - [ - 30, - [ - 288053.78, - 74818.445, - -1655.7284 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278924558" - ], - [ - 59, - [ - 291452.72, - 1889.6564, - 802.59247 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940791573" - ] - ], - "/Game/FactoryGame/Resource/Parts/ElectromagneticControlRod/Desc_ElectromagneticControlRod.Desc_ElectromagneticControlRod_C": [ - [ - 27, - [ - -34269.19, - 116722.586, - 21730.914 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902836233" - ], - [ - 31, - [ - -39957.324, - 63711.113, - 25850.768 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915246651" - ], - [ - 17, - [ - -33910.906, - 5020.8613, - 23299.953 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515423869" - ], - [ - 40, - [ - 36245.5, - 16086.877, - 22530.27 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917983629" - ], - [ - 20, - [ - 46730.0, - 141184.0, - 13115.157 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911653803" - ], - [ - 18, - [ - 145919.7, - 93689.17, - 25558.59 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800392339" - ], - [ - 42, - [ - 94006.99, - 105147.2, - 9865.736 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524875341" - ], - [ - 15, - [ - 178195.94, - -243802.53, - 7677.3003 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844807233" - ], - [ - 15, - [ - 189354.92, - -235487.31, - 23140.059 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162956515" - ], - [ - 15, - [ - 188897.17, - -127497.41, - 15986.948 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495295771" - ], - [ - 19, - [ - 232008.69, - 25226.846, - -1723.6882 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955787060" - ], - [ - 67, - [ - 260060.28, - 124890.81, - -2728.164 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203882372" - ], - [ - 37, - [ - 271136.72, - 29856.963, - -1643.876 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894811569" - ], - [ - 40, - [ - 292458.94, - 1616.6809, - 753.1085 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940769572" - ] - ], - "/Game/FactoryGame/Resource/Parts/Filter/Desc_Filter.Desc_Filter_C": [ - [ - 5, - [ - 55807.0, - -50701.0, - 13821.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139939811" - ], - [ - 3, - [ - 233138.08, - -313534.38, - 9918.289 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130365061" - ] - ], - "/Game/FactoryGame/Resource/Parts/Fuel/Desc_Fuel.Desc_Fuel_C": [ - [ - 6, - [ - -260158.83, - 106252.73, - -1656.4329 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038676490" - ], - [ - 3, - [ - -48826.0, - -258881.0, - -1529.3817 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846405197" - ], - [ - 5, - [ - 157242.0, - 190736.0, - -9154.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578761271" - ] - ], - "/Game/FactoryGame/Resource/Parts/HighSpeedConnector/Desc_HighSpeedConnector.Desc_HighSpeedConnector_C": [ - [ - 39, - [ - -96358.484, - 41565.867, - 21220.748 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571670164" - ], - [ - 35, - [ - -76476.73, - 90871.49, - 20250.322 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085721293" - ], - [ - 29, - [ - -34273.902, - 115892.01, - 21735.084 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902833232" - ], - [ - 21, - [ - 35442.95, - 17666.092, - 22521.137 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917980628" - ], - [ - 15, - [ - 47116.824, - 140255.47, - 13155.248 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911688807" - ], - [ - 2, - [ - 111792.766, - -162906.81, - 15751.472 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286309767" - ], - [ - 17, - [ - 190480.39, - 37959.543, - 5410.6846 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1288619873" - ], - [ - 5, - [ - 234255.64, - 80359.695, - -1670.0463 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399883419" - ], - [ - 17, - [ - 250121.52, - 59157.62, - -1429.7543 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679167560" - ], - [ - 27, - [ - 291314.16, - 2850.7578, - 843.0955 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940793575" - ] - ], - "/Game/FactoryGame/Resource/Parts/HighSpeedWire/Desc_HighSpeedWire.Desc_HighSpeedWire_C": [ - [ - 127, - [ - -236033.1, - 16687.094, - 19649.236 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F4D201_1463604868" - ], - [ - 62, - [ - -187244.19, - 117235.195, - -1470.6661 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657077159" - ], - [ - 75, - [ - -163853.5, - 156576.67, - 12346.621 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756193765" - ], - [ - 109, - [ - -155327.06, - -3953.5596, - 25284.588 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559502691" - ], - [ - 122, - [ - -95344.07, - 8630.96, - 25143.701 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214886333" - ], - [ - 150, - [ - -95816.25, - 40941.71, - 21208.477 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571672166" - ], - [ - 101, - [ - -141426.19, - 24843.707, - 32654.727 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068251584" - ], - [ - 117, - [ - -77241.19, - 89637.71, - 20212.727 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FCD201_2085723294" - ], - [ - 150, - [ - -1435.1138, - 61439.93, - 21766.787 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647548223" - ], - [ - 19, - [ - -51088.0, - -257765.0, - -1601.1632 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846403195" - ], - [ - 75, - [ - -662.0, - -237283.0, - -1783.1632 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126604297" - ], - [ - 87, - [ - 52164.836, - -164160.27, - 15546.631 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045936375" - ], - [ - 121, - [ - 12052.508, - 113337.64, - 26512.188 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691499269" - ], - [ - 147, - [ - 13787.401, - 113097.91, - 26462.02 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691398267" - ], - [ - 100, - [ - 44856.035, - 140137.45, - 13294.47 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911685804" - ], - [ - 35, - [ - 117665.69, - 222916.75, - -6975.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378145294" - ], - [ - 123, - [ - 91068.21, - 129519.74, - 9096.751 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844991047" - ], - [ - 144, - [ - 93835.36, - 106407.055, - 9869.162 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524878342" - ], - [ - 113, - [ - 92263.02, - 104961.43, - 9867.176 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524871338" - ], - [ - 111, - [ - 122317.03, - 46471.32, - 17429.41 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121768304" - ], - [ - 102, - [ - 144925.36, - 37432.434, - 17162.666 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023590401" - ], - [ - 100, - [ - 94791.71, - 48566.523, - 9771.688 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296446395" - ], - [ - 65, - [ - 128983.0, - -117443.0, - -1491.3817 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312027384" - ], - [ - 110, - [ - 111739.805, - -164171.36, - 15827.996 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286316769" - ], - [ - 45, - [ - 121712.0, - -164945.0, - -189.38171 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883522203" - ], - [ - 80, - [ - 84482.0, - -170164.0, - -249.16316 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502720189" - ], - [ - 150, - [ - 175817.17, - -276751.72, - 21020.225 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428906228" - ], - [ - 109, - [ - 192234.17, - -234898.72, - 23080.225 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162963518" - ], - [ - 107, - [ - 191329.81, - -129448.37, - 15968.778 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495307775" - ], - [ - 125, - [ - 233224.38, - -20616.936, - 8804.937 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_397" - ], - [ - 116, - [ - 188778.67, - 17505.453, - 12992.75 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816337485" - ], - [ - 117, - [ - 232935.14, - 25841.54, - -1597.0793 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955784057" - ], - [ - 123, - [ - 232581.8, - 27659.537, - -1728.1011 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955786059" - ], - [ - 89, - [ - 181405.0, - 93599.0, - 17806.904 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166769081" - ], - [ - 80, - [ - 226443.78, - 100680.305, - 7210.8447 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548952578" - ], - [ - 91, - [ - 199623.0, - 131850.0, - 6638.2393 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917492629" - ], - [ - 35, - [ - 186503.0, - 175310.0, - 6446.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553802263" - ], - [ - 88, - [ - 220418.23, - 186206.12, - 11541.763 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745830424" - ], - [ - 105, - [ - 259160.16, - 125516.82, - -2770.3801 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203914374" - ], - [ - 110, - [ - 286988.2, - 73160.39, - -1640.9163 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278925559" - ], - [ - 149, - [ - 292652.9, - 2605.5034, - 773.8316 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940795577" - ], - [ - 98, - [ - -141956.28, - 98018.03, - 18594.049 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798753774" - ], - [ - 82, - [ - -141063.5, - 97700.67, - 18604.28 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798732771" - ], - [ - 37, - [ - 157381.0, - -39247.0, - 13723.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418401387" - ], - [ - 119, - [ - 170932.3, - -10920.713, - 15869.459 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691666581" - ], - [ - 134, - [ - 171472.03, - -10932.663, - 15862.114 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D5D401_1691675583" - ], - [ - 125, - [ - 249392.88, - 59909.13, - -1105.7454 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679190562" - ], - [ - 7, - [ - 187217.0, - 222562.0, - -3192.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848704905" - ] - ], - "/Game/FactoryGame/Resource/Parts/IronPlate/Desc_IronPlate.Desc_IronPlate_C": [ - [ - 74, - [ - -231695.0, - -50700.0, - -366.42905 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073930717" - ], - [ - 140, - [ - -152874.0, - 228807.0, - 850.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7951C101_2089542226" - ], - [ - 147, - [ - -201020.7, - -20082.26, - 12104.599 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065670515" - ], - [ - 102, - [ - -196507.7, - -60799.258, - -321.0381 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060862157" - ], - [ - 106, - [ - -78533.0, - 291841.0, - -4824.1494 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1374507777" - ], - [ - 122, - [ - -42220.562, - 145746.53, - 7674.638 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944014102" - ], - [ - 136, - [ - -25624.0, - -129766.0, - 7986.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619413941" - ], - [ - 145, - [ - 87354.67, - -63703.26, - 13406.747 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523413935" - ], - [ - 145, - [ - 109704.18, - -112924.22, - 11853.324 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914599123" - ], - [ - 103, - [ - 294650.2, - -172702.28, - 8094.345 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable115" - ], - [ - 128, - [ - -146678.0, - -136566.0, - 2115.6501 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122903128" - ], - [ - 106, - [ - 17067.0, - -137240.0, - 13695.066 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430573611" - ] - ], - "/Game/FactoryGame/Resource/Parts/IronPlateReinforced/Desc_IronPlateReinforced.Desc_IronPlateReinforced_C": [ - [ - 60, - [ - -244223.03, - -143895.28, - 4499.7676 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120010421" - ], - [ - 59, - [ - -244841.55, - -142152.14, - 4430.4043 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120038425" - ], - [ - 15, - [ - -232782.0, - -52127.0, - -495.27213 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073932719" - ], - [ - 20, - [ - -153384.0, - 227826.0, - 696.4032 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795DC101_1145974339" - ], - [ - 59, - [ - -198963.1, - -18334.82, - 12094.705 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065671516" - ], - [ - 36, - [ - -196710.58, - -58820.863, - -324.46164 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060864159" - ], - [ - 47, - [ - -194777.1, - -59474.82, - -329.29453 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060863158" - ], - [ - 74, - [ - -157495.73, - -64688.742, - 12093.4375 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695503713" - ], - [ - 60, - [ - -173631.03, - -196658.28, - -1731.2324 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093634131" - ], - [ - 59, - [ - -174757.55, - -195519.14, - -1645.2216 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093655135" - ], - [ - 66, - [ - -124736.54, - -166989.14, - 29421.404 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811275629" - ], - [ - 50, - [ - -89702.0, - -49475.0, - 15961.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159278094" - ], - [ - 58, - [ - -107493.56, - 108264.53, - 9903.638 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269705714" - ], - [ - 75, - [ - -116524.18, - 169883.2, - 229.87117 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926585003" - ], - [ - 54, - [ - -115060.56, - 169497.53, - 420.63803 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926586004" - ], - [ - 37, - [ - -108819.5, - 213482.67, - 3229.9846 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769785570" - ], - [ - 38, - [ - -9818.0, - 225840.0, - -986.2721 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1525774356" - ], - [ - 33, - [ - -42500.504, - 145153.67, - 7627.9844 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944041104" - ], - [ - 34, - [ - -55184.71, - -73600.24, - 27724.252 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981079546" - ], - [ - 54, - [ - -26149.0, - -130296.0, - 8019.734 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619416943" - ], - [ - 28, - [ - 66450.72, - 157601.03, - 13624.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165879991" - ], - [ - 41, - [ - 28986.82, - 194245.39, - 17492.236 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183606531" - ], - [ - 19, - [ - 30578.0, - 267987.0, - -1273.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1856511277" - ], - [ - 55, - [ - 110983.98, - -53001.656, - 16816.373 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624850854" - ], - [ - 32, - [ - 89095.83, - -63591.816, - 13805.711 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523414936" - ], - [ - 39, - [ - 86774.9, - -62754.715, - 13218.08 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523415937" - ], - [ - 39, - [ - 109988.805, - -112940.14, - 11812.723 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914601125" - ], - [ - 32, - [ - 110039.75, - -112214.81, - 11735.186 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914600124" - ], - [ - 15, - [ - 277813.38, - -50067.46, - 5991.9272 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629255675" - ], - [ - 22, - [ - 276606.72, - -52238.035, - 5987.799 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629256676" - ], - [ - 37, - [ - 294137.03, - -172153.3, - 7993.137 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable119" - ], - [ - 51, - [ - 365819.84, - -300722.9, - -7468.794 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825274441" - ], - [ - 73, - [ - 367055.06, - -301392.62, - -7409.204 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825296442" - ], - [ - 27, - [ - 361161.97, - -218614.95, - 4113.5513 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1349062140" - ], - [ - 74, - [ - 358632.72, - -103315.64, - 11128.108 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420584026" - ], - [ - 15, - [ - -145332.0, - -135849.0, - 1406.7279 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122943133" - ], - [ - 58, - [ - 347451.72, - -38624.64, - -1693.8912 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113019260" - ] - ], - "/Game/FactoryGame/Resource/Parts/IronRod/Desc_IronRod.Desc_IronRod_C": [ - [ - 74, - [ - -233219.0, - -51066.0, - -461.42905 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073929716" - ], - [ - 103, - [ - -202050.1, - -17865.14, - 12104.907 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065644514" - ], - [ - 15, - [ - -157289.86, - -65615.13, - 12059.09 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695500711" - ], - [ - 40, - [ - -157664.25, - -64810.016, - 12087.129 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695467710" - ], - [ - 74, - [ - -10129.0, - 226901.0, - -1089.4291 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1510733353" - ], - [ - 115, - [ - -26343.0, - -128271.0, - 7926.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619382940" - ], - [ - 140, - [ - 31512.0, - 266401.0, - -1394.1877 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1481191272" - ], - [ - 122, - [ - 273657.38, - -51992.56, - 5986.5713 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629220671" - ], - [ - 112, - [ - 362012.5, - -218536.45, - 4105.425 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_427" - ], - [ - 66, - [ - 16142.0, - -138193.0, - 13739.928 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430572610" - ] - ], - "/Game/FactoryGame/Resource/Parts/IronScrew/Desc_IronScrew.Desc_IronScrew_C": [ - [ - 118, - [ - -232049.0, - -51666.0, - -451.42905 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073928715" - ], - [ - 120, - [ - -152663.0, - 228259.0, - 759.4032 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CC101_2070279162" - ], - [ - 111, - [ - -197235.1, - -59475.14, - -322.94955 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060835156" - ], - [ - 122, - [ - 67671.44, - 156323.53, - 13416.638 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165850988" - ], - [ - 86, - [ - 32043.0, - 267671.0, - -1386.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1695631274" - ], - [ - 132, - [ - 85803.0, - -63202.0, - 13058.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523382934" - ], - [ - 132, - [ - 108522.0, - -112815.0, - 11652.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914572122" - ], - [ - 27, - [ - 272770.1, - -52032.598, - 5909.11 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629254674" - ], - [ - 118, - [ - -146649.0, - -137208.0, - 2566.6182 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122939129" - ], - [ - 136, - [ - 18604.0, - -136521.0, - 13592.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430571609" - ], - [ - 122, - [ - 17940.0, - -137566.0, - 13599.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430532608" - ] - ], - "/Game/FactoryGame/Resource/Parts/ModularFrame/Desc_ModularFrame.Desc_ModularFrame_C": [ - [ - 35, - [ - -187501.78, - 71945.78, - -647.85754 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ACDD01_1525324833" - ], - [ - 35, - [ - -186394.48, - 72317.7, - -654.949 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A2DD01_2087964066" - ], - [ - 15, - [ - -199129.1, - -17524.055, - 12061.417 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065674519" - ], - [ - 29, - [ - -126563.72, - -167193.3, - 29650.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811272626" - ], - [ - 16, - [ - -124051.06, - -167521.5, - 29258.414 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811271625" - ], - [ - 37, - [ - -129723.18, - 60785.203, - 4829.871 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152460272" - ], - [ - 28, - [ - -108392.28, - 108322.03, - 9943.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269703712" - ], - [ - 14, - [ - -78266.0, - 291563.0, - -4806.1494 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1478137779" - ], - [ - 69, - [ - -29685.486, - -22049.97, - 17384.008 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734791337" - ], - [ - 26, - [ - -6915.0, - -76948.0, - 13695.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152039700" - ], - [ - 19, - [ - 79047.0, - -44448.0, - 8239.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444874228" - ], - [ - 17, - [ - 20317.006, - 131771.11, - 2415.5715 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437007175" - ], - [ - 11, - [ - 87285.87, - -63874.156, - 13391.848 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1523417939" - ], - [ - 11, - [ - 109546.07, - -112572.54, - 11729.294 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7927C501_1914603127" - ], - [ - 30, - [ - 233463.22, - -314702.38, - 9956.068 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130359057" - ], - [ - 13, - [ - 294364.88, - -172619.84, - 7920.7603 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable182" - ], - [ - 15, - [ - 358497.84, - -104903.49, - 11131.949 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420582024" - ], - [ - 25, - [ - 346724.2, - -40932.5, - -1779.0524 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113017258" - ] - ], - "/Game/FactoryGame/Resource/Parts/ModularFrameFused/Desc_ModularFrameFused.Desc_ModularFrameFused_C": [ - [ - 18, - [ - -152292.58, - 34392.6, - 19182.648 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928592399" - ], - [ - 19, - [ - -157113.94, - -4087.1458, - 25297.855 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559497688" - ], - [ - 19, - [ - -94612.08, - 7420.9194, - 25141.445 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214890334" - ], - [ - 7, - [ - -117038.0, - 74073.84, - 17199.242 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222013225" - ], - [ - 8, - [ - 11324.385, - 113763.1, - 26734.049 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691503270" - ], - [ - 8, - [ - 90497.36, - 128846.01, - 9233.718 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844993049" - ], - [ - 7, - [ - 93391.12, - 106433.445, - 9865.304 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7978D501_1524845337" - ], - [ - 7, - [ - 217660.1, - 1175.4216, - -1667.1119 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742966879" - ], - [ - 9, - [ - 287187.72, - 72754.266, - -1647.4304 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278923557" - ] - ], - "/Game/FactoryGame/Resource/Parts/ModularFrameHeavy/Desc_ModularFrameHeavy.Desc_ModularFrameHeavy_C": [ - [ - 20, - [ - -187943.83, - 117654.73, - -1573.4329 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657072155" - ], - [ - 19, - [ - -191550.28, - 66771.03, - 23728.049 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232931762" - ], - [ - 11, - [ - -190929.5, - 66034.67, - 23729.328 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232908759" - ], - [ - 37, - [ - -154364.53, - 32883.848, - 18950.418 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928595401" - ], - [ - 30, - [ - -153855.73, - 34635.73, - 19106.584 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928594400" - ], - [ - 25, - [ - -156915.23, - -5445.76, - 25370.633 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559501690" - ], - [ - 31, - [ - -141689.8, - 23128.441, - 32589.074 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068252585" - ], - [ - 33, - [ - -117969.19, - 75112.71, - 16948.727 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1222015226" - ], - [ - 33, - [ - -36466.17, - 115506.3, - 21720.85 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902798229" - ], - [ - 36, - [ - -34825.84, - 115875.87, - 21734.37 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1902829231" - ], - [ - 26, - [ - -3874.5447, - 63110.555, - 22008.51 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647580225" - ], - [ - 30, - [ - -32358.686, - 2449.8599, - 23548.45 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515388865" - ], - [ - 21, - [ - 53463.707, - -163221.64, - 15482.346 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045956378" - ], - [ - 34, - [ - 34268.215, - 16332.144, - 22513.592 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CAD401_1917976627" - ], - [ - 26, - [ - 47171.383, - 141158.58, - 13088.558 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911690808" - ], - [ - 25, - [ - 91655.73, - 129117.195, - 9208.505 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844995051" - ], - [ - 37, - [ - 144805.44, - 92872.31, - 25454.803 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800389337" - ], - [ - 29, - [ - 121705.016, - 45152.812, - 17371.729 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_2121764303" - ], - [ - 25, - [ - 93692.16, - 48559.652, - 9709.146 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296437393" - ], - [ - 33, - [ - 115242.13, - 20669.977, - 16592.39 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547242763" - ], - [ - 15, - [ - 99126.81, - -151843.23, - 2097.1912 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_108" - ], - [ - 18, - [ - 118523.0, - -166053.0, - -192.16316 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883519201" - ], - [ - 28, - [ - 176259.97, - -278623.1, - 20881.826 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428907229" - ], - [ - 37, - [ - 177887.97, - -244765.1, - 7419.825 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844812235" - ], - [ - 31, - [ - 176729.17, - -243250.72, - 7445.616 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844811234" - ], - [ - 18, - [ - 211800.2, - -68579.08, - 13830.056 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7949CE01_1110513573" - ], - [ - 27, - [ - 198978.9, - -40858.52, - 13792.381 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734567298" - ], - [ - 32, - [ - 233836.39, - -19940.428, - 8802.501 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_396" - ], - [ - 39, - [ - 217744.8, - 1710.4521, - -1676.0201 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742964877" - ], - [ - 33, - [ - 189824.69, - 17747.96, - 13068.751 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816348486" - ], - [ - 27, - [ - 200337.23, - 133014.12, - 6744.7627 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917491628" - ], - [ - 23, - [ - 240195.06, - 131629.19, - 16983.62 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745628395" - ], - [ - 27, - [ - 259948.17, - 125932.4, - -2744.6323 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203916377" - ], - [ - 28, - [ - 272391.25, - 28927.951, - -1767.201 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894810568" - ], - [ - 29, - [ - 291363.88, - 2695.968, - 829.1729 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940792574" - ], - [ - 8, - [ - 7504.0, - -188000.0, - -1530.3817 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907927117" - ], - [ - 16, - [ - 163350.0, - 60144.0, - 21226.904 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143870069" - ], - [ - 25, - [ - 148798.69, - 146347.77, - 7780.9233 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155114075" - ], - [ - 30, - [ - 149974.61, - 146763.0, - 7682.0913 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155113074" - ], - [ - 15, - [ - 186239.0, - 222987.0, - -3412.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848708907" - ], - [ - 7, - [ - 177080.0, - 243929.0, - -9647.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178481292" - ] - ], - "/Game/FactoryGame/Resource/Parts/Motor/Desc_Motor.Desc_Motor_C": [ - [ - 16, - [ - -186160.5, - 115933.67, - -1236.0154 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657047154" - ], - [ - 7, - [ - -153509.83, - 73394.73, - 10520.567 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364301741" - ], - [ - 19, - [ - -160552.0, - 66660.41, - 3925.9834 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A1DD01_1810870888" - ], - [ - 29, - [ - -57456.0, - -150142.0, - 354.73386 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667083849" - ], - [ - 95, - [ - -268.0, - -236863.0, - -1746.8069 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126605298" - ], - [ - 18, - [ - 51956.05, - -163710.86, - 15461.029 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79E7CE01_2045957379" - ], - [ - 7, - [ - 66971.0, - -13986.0, - 13339.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565903749" - ], - [ - 20, - [ - 88732.0, - 189440.0, - 1314.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042510454" - ], - [ - 30, - [ - 117900.0, - -166846.0, - -181.26614 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883495200" - ], - [ - 17, - [ - 120265.0, - -165520.0, - -179.80688 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883521202" - ], - [ - 19, - [ - 226975.55, - 100203.19, - 7212.894 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790FD201_1548950576" - ], - [ - 27, - [ - 201150.0, - 133488.0, - 7110.812 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917486626" - ], - [ - 28, - [ - 240434.6, - 132935.03, - 17078.877 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F790ED201_1745627393" - ], - [ - 30, - [ - 166650.0, - 61451.0, - 21174.812 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143866066" - ], - [ - 35, - [ - 148302.47, - 146368.23, - 7815.0576 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155111073" - ], - [ - 17, - [ - 184579.0, - 222561.0, - -3631.0962 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848712908" - ], - [ - 26, - [ - 185601.0, - 222432.0, - -3538.0012 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848705906" - ], - [ - 17, - [ - 174434.0, - 243680.0, - -9842.096 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178479290" - ], - [ - 18, - [ - 237635.44, - -314611.38, - 9874.5625 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130364060" - ] - ], - "/Game/FactoryGame/Resource/Parts/MotorLightweight/Desc_MotorLightweight.Desc_MotorLightweight_C": [ - [ - 8, - [ - -155445.77, - -4541.3115, - 25306.564 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7937D301_1559499689" - ], - [ - 17, - [ - -93533.32, - 6503.9443, - 25127.998 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214894335" - ], - [ - 18, - [ - -91760.1, - 42419.58, - 19953.54 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571671165" - ], - [ - 11, - [ - -140832.62, - 24472.033, - 32786.836 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068249582" - ], - [ - 11, - [ - -4361.408, - 62057.04, - 21994.398 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647584226" - ], - [ - 19, - [ - 13600.957, - 114210.94, - 26424.455 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691507271" - ], - [ - 8, - [ - 146738.45, - 93091.14, - 25493.012 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795CD601_1800391338" - ], - [ - 7, - [ - 176321.94, - -277636.47, - 20889.955 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1428903227" - ], - [ - 8, - [ - 175207.72, - -241683.5, - 7427.35 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6D601_1844799231" - ], - [ - 9, - [ - 192540.94, - -236285.53, - 23112.3 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162961517" - ], - [ - 7, - [ - 274765.78, - 26955.762, - -1667.8232 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894785566" - ] - ], - "/Game/FactoryGame/Resource/Parts/NobeliskExplosive/Desc_NobeliskExplosive.Desc_NobeliskExplosive_C": [ - [ - 1, - [ - -182706.45, - 69246.59, - 14190.592 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7956DD01_1675839678" - ], - [ - 4, - [ - -5216.0, - -76994.0, - 13638.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152043703" - ] - ], - "/Game/FactoryGame/Resource/Parts/Plastic/Desc_Plastic.Desc_Plastic_C": [ - [ - 120, - [ - -260200.28, - 105505.03, - -1631.952 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038677491" - ], - [ - 107, - [ - -164507.19, - 157067.2, - 12433.871 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756213767" - ], - [ - 133, - [ - -164749.56, - 154390.53, - 12389.4375 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756215769" - ], - [ - 66, - [ - -152423.19, - 72614.195, - 10089.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364299739" - ], - [ - 38, - [ - -160471.0, - 66187.41, - 3883.9834 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799CDD01_1480630007" - ], - [ - 47, - [ - -5778.0, - -75962.0, - 13641.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152038699" - ], - [ - 80, - [ - -48895.0, - -257828.0, - -1456.8069 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846404196" - ], - [ - 67, - [ - -50398.188, - -259980.44, - -1585.1049 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846376194" - ], - [ - 80, - [ - 47288.0, - 221328.0, - 5785.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637927635" - ], - [ - 111, - [ - 86837.0, - -169181.0, - -412.8069 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502722190" - ], - [ - 85, - [ - 208399.8, - -65057.766, - 9112.491 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_393" - ], - [ - 106, - [ - 210493.33, - -67907.22, - 13825.088 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_394" - ], - [ - 69, - [ - 5334.0, - -188245.0, - -1546.2661 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907900114" - ], - [ - 98, - [ - 158230.0, - -43309.0, - 12706.733 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418406389" - ], - [ - 102, - [ - 162944.0, - 60794.0, - 21198.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1143868067" - ], - [ - 108, - [ - 175526.0, - 244857.0, - -9750.001 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178480291" - ] - ], - "/Game/FactoryGame/Resource/Parts/QuartzCrystal/Desc_QuartzCrystal.Desc_QuartzCrystal_C": [ - [ - 89, - [ - -165661.83, - 156540.72, - 12393.567 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1756212766" - ], - [ - 70, - [ - -191718.83, - 66860.73, - 23669.275 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232929760" - ], - [ - 75, - [ - -153978.92, - 35823.082, - 18991.262 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793BD301_1928590397" - ], - [ - 69, - [ - -118624.91, - 73932.94, - 17065.3 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F6D201_1221990222" - ], - [ - 87, - [ - -3891.615, - 62239.703, - 22057.55 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798FD401_1647591228" - ], - [ - 92, - [ - -32376.277, - 4937.694, - 23575.037 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515417866" - ], - [ - 65, - [ - -56053.0, - -205752.0, - 7786.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79EACE01_1611284923" - ], - [ - 40, - [ - 90286.58, - 128804.48, - 9236.447 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844994050" - ], - [ - 30, - [ - 90192.63, - 127981.95, - 9434.351 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7960D601_1844966046" - ], - [ - 119, - [ - 143992.86, - 36937.004, - 17194.84 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_2023555397" - ], - [ - 78, - [ - 93086.23, - 47915.926, - 9553.685 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296434392" - ], - [ - 97, - [ - 115846.37, - 20480.99, - 16789.71 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D6D401_1547255766" - ], - [ - 115, - [ - 108959.7, - -163567.66, - 15543.985 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1286281764" - ], - [ - 120, - [ - 190879.78, - -234464.45, - 23138.373 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B2D601_1162960516" - ], - [ - 77, - [ - 161579.58, - -144433.72, - 23167.936 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363260334" - ], - [ - 77, - [ - 214649.95, - -879.643, - -1656.7687 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742963876" - ], - [ - 68, - [ - 219883.78, - -939.132, - -1667.3857 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7970D601_1742942874" - ], - [ - 75, - [ - 286287.56, - 71432.836, - -1665.0071 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1278921555" - ], - [ - 101, - [ - 273087.1, - 26235.441, - -1667.6661 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1894808567" - ], - [ - 75, - [ - 150321.52, - 145916.69, - 7758.218 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155109071" - ] - ], - "/Game/FactoryGame/Resource/Parts/Rotor/Desc_Rotor.Desc_Rotor_C": [ - [ - 40, - [ - -233157.0, - -51281.0, - -468.42905 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7931C301_1073931718" - ], - [ - 33, - [ - -153019.0, - 227571.0, - 651.4032 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795DC101_1146000340" - ], - [ - 53, - [ - -200896.58, - -17680.865, - 12112.57 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065672517" - ], - [ - 118, - [ - -156106.25, - -64984.695, - 12089.135 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DBC401_1695502712" - ], - [ - 63, - [ - -124835.03, - -168706.28, - 29306.656 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811274628" - ], - [ - 75, - [ - -89871.0, - -49970.0, - 15953.499 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159308098" - ], - [ - 53, - [ - -109058.18, - 108773.2, - 9893.871 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269704713" - ], - [ - 45, - [ - -108638.28, - 214652.03, - 3212.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769786571" - ], - [ - 33, - [ - -79117.0, - 291096.0, - -4861.1494 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1478164780" - ], - [ - 26, - [ - -9974.0, - 226686.0, - -1098.4291 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F792FC301_1520654355" - ], - [ - 40, - [ - -43379.277, - 146294.03, - 7440.5156 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944042105" - ], - [ - 71, - [ - -29168.174, - -23330.703, - 17425.85 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734761332" - ], - [ - 66, - [ - -29647.84, - -22771.13, - 17392.37 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734790336" - ], - [ - 70, - [ - -55469.668, - -72875.0, - 27734.953 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981112550" - ], - [ - 42, - [ - -24008.0, - -127935.0, - 8014.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7926C501_1619414942" - ], - [ - 35, - [ - 80688.0, - -43642.0, - 8187.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444872226" - ], - [ - 54, - [ - 80151.0, - -43817.0, - 8243.733 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444873227" - ], - [ - 42, - [ - 20874.723, - 131705.03, - 2652.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437005173" - ], - [ - 57, - [ - 20627.496, - 130515.67, - 2958.4272 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437004172" - ], - [ - 50, - [ - 66115.5, - 156219.67, - 13899.984 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165878990" - ], - [ - 43, - [ - 27779.48, - 193944.02, - 17078.045 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183605530" - ], - [ - 35, - [ - 31942.0, - 266633.0, - -1400.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1856481276" - ], - [ - 63, - [ - 125112.59, - -34038.21, - 8191.5557 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541724848" - ], - [ - 70, - [ - 126110.85, - -34232.31, - 8179.0903 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541723847" - ], - [ - 68, - [ - 112179.82, - -53247.367, - 16860.775 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624849853" - ], - [ - 32, - [ - 295045.53, - -172384.55, - 7692.2285 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable125" - ], - [ - 59, - [ - 302115.22, - -245522.38, - 4396.0684 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_416" - ], - [ - 66, - [ - 304729.56, - -243308.83, - 4045.1545 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_417" - ], - [ - 29, - [ - 363272.0, - -215973.83, - 4085.7493 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_428" - ], - [ - 53, - [ - 357789.66, - -104815.484, - 11058.776 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420554022" - ], - [ - 18, - [ - -146148.83, - -135687.55, - 1335.8955 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122942132" - ], - [ - 27, - [ - 16754.0, - -137037.0, - 13693.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430574612" - ], - [ - 37, - [ - 17931.0, - -136332.0, - 13657.229 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7980C301_1430575613" - ], - [ - 69, - [ - 346549.38, - -40608.56, - -1727.4286 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2112985256" - ] - ], - "/Game/FactoryGame/Resource/Parts/Rubber/Desc_Rubber.Desc_Rubber_C": [ - [ - 66, - [ - -258172.5, - 103983.67, - -1675.0154 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038679493" - ], - [ - 119, - [ - -187985.28, - 116907.03, - -1589.952 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657075157" - ], - [ - 118, - [ - -191524.8, - 67176.375, - 23684.873 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1232930761" - ], - [ - 50, - [ - -129434.18, - 60927.195, - 4795.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152461273" - ], - [ - 78, - [ - 1195.0, - -238336.0, - -1814.2661 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126579296" - ], - [ - 88, - [ - 44078.45, - -244554.36, - -869.5782 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453329182" - ], - [ - 100, - [ - 45475.336, - -244615.95, - -856.43 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453352184" - ], - [ - 34, - [ - 56088.0, - -51383.0, - 13933.837 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139932807" - ], - [ - 64, - [ - 120025.88, - 222007.27, - -7442.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378167296" - ], - [ - 100, - [ - 125126.0, - -118364.0, - -1487.2661 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312026383" - ], - [ - 131, - [ - 99742.805, - -152720.11, - 1935.8706 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_103" - ], - [ - 108, - [ - 98503.164, - -151533.45, - 2323.8743 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_106" - ], - [ - 88, - [ - 83788.0, - -171426.0, - -301.26614 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502696188" - ], - [ - 125, - [ - 183810.0, - 95313.0, - 17812.062 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1166766078" - ], - [ - 128, - [ - 199854.0, - 133218.0, - 6701.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917489627" - ], - [ - 146, - [ - 221231.55, - 186681.27, - 11606.986 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745806420" - ], - [ - 134, - [ - 219935.0, - 186410.0, - 11736.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745827422" - ], - [ - 117, - [ - 7454.0, - -186982.0, - -1499.8069 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907926116" - ], - [ - 65, - [ - 156727.0, - -39824.0, - 13731.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418409391" - ], - [ - 140, - [ - 150177.0, - 147164.0, - 7626.812 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155110072" - ], - [ - 111, - [ - 155644.0, - 189969.0, - -9108.096 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578763272" - ] - ], - "/Game/FactoryGame/Resource/Parts/Silica/Desc_Silica.Desc_Silica_C": [ - [ - 94, - [ - -93395.03, - 43185.383, - 19765.842 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945D301_1571668163" - ], - [ - 89, - [ - -142090.9, - 24495.94, - 32505.3 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068223580" - ], - [ - 110, - [ - -141533.7, - 24404.799, - 32694.268 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8D201_2068247581" - ], - [ - 78, - [ - -40374.84, - 63780.348, - 25835.078 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FED201_1915243649" - ], - [ - 120, - [ - -33486.4, - 4391.0713, - 23370.46 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798DD401_1515425870" - ], - [ - 89, - [ - 11194.395, - 114606.47, - 26723.855 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8D401_1691497268" - ], - [ - 62, - [ - 45875.242, - 139919.9, - 13249.272 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7975D501_1911686805" - ], - [ - 62, - [ - 95017.14, - 47621.84, - 9513.876 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D4D401_1296409391" - ], - [ - 72, - [ - 189654.62, - -126234.734, - 15977.146 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9D601_1495297772" - ], - [ - 110, - [ - 199363.47, - -41072.695, - 13862.115 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734536295" - ], - [ - 67, - [ - 233033.78, - -20777.0, - 8806.404 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_398" - ], - [ - 89, - [ - 233683.06, - -21278.922, - 8803.125 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_399" - ], - [ - 72, - [ - 189675.36, - 16546.467, - 13074.902 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816353488" - ], - [ - 63, - [ - 188036.08, - 16286.388, - 13041.443 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAD401_1816305483" - ], - [ - 89, - [ - 231251.75, - 25149.936, - -1755.8005 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7971D601_1955785058" - ], - [ - 90, - [ - 233806.16, - 78554.76, - -1666.687 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7973D601_1399859414" - ], - [ - 65, - [ - 201184.34, - 132530.19, - 6812.6807 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7904D201_1917441624" - ], - [ - 55, - [ - 221489.34, - 185604.19, - 11613.488 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F796AE101_1745826421" - ], - [ - 62, - [ - 259430.02, - 125427.125, - -2764.711 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ADD201_1203915376" - ], - [ - 69, - [ - 250437.56, - 60080.38, - -1351.0146 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679193564" - ], - [ - 63, - [ - 291091.34, - 2658.774, - 869.7711 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1940794576" - ], - [ - 55, - [ - -141400.19, - 98701.195, - 18586.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F795ED701_1798755776" - ], - [ - 69, - [ - 157821.98, - -146450.94, - 23358.104 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1D601_1363204332" - ], - [ - 45, - [ - 151624.08, - 145858.48, - 7750.0293 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DACE01_1155090070" - ] - ], - "/Game/FactoryGame/Resource/Parts/SpikedRebar/Desc_SpikedRebar.Desc_SpikedRebar_C": [ - [ - 20, - [ - -109423.6, - 214265.69, - 3166.9368 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769788573" - ], - [ - 8, - [ - -29615.076, - -22315.08, - 17380.445 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734788334" - ], - [ - 8, - [ - 80113.0, - -44803.0, - 8348.618 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7922C501_1444875229" - ], - [ - 7, - [ - 27423.805, - 195295.45, - 17016.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DAC401_1183609533" - ] - ], - "/Game/FactoryGame/Resource/Parts/Stator/Desc_Stator.Desc_Stator_C": [ - [ - 37, - [ - -245354.62, - -143523.95, - 4453.963 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120037424" - ], - [ - 74, - [ - -186342.19, - 118494.2, - -1298.1288 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657074156" - ], - [ - 56, - [ - -188003.56, - 113661.53, - -1384.3619 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7941CE01_1657076158" - ], - [ - 38, - [ - -152553.28, - 72135.03, - 10189.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364300740" - ], - [ - 35, - [ - -182151.34, - 69137.82, - 14393.502 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AADD01_1464699478" - ], - [ - 37, - [ - -175382.62, - -196722.95, - -1726.037 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093654134" - ], - [ - 25, - [ - -88983.79, - -49355.516, - 16042.449 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159305096" - ], - [ - 33, - [ - -129456.5, - 59295.67, - 4779.9844 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152459271" - ], - [ - 44, - [ - -129919.28, - 60032.03, - 4844.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152462274" - ], - [ - 27, - [ - -29114.201, - -21939.326, - 17431.016 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734789335" - ], - [ - 31, - [ - -55128.484, - -72210.82, - 27821.201 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981111549" - ], - [ - 37, - [ - -55619.797, - -72591.65, - 27720.143 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981109548" - ], - [ - 70, - [ - -55750.0, - -149314.0, - 556.9802 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667082848" - ], - [ - 67, - [ - 44563.0, - -246619.0, - -1098.0198 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453356187" - ], - [ - 56, - [ - 44674.0, - -243825.0, - -851.60394 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1453355186" - ], - [ - 33, - [ - 56224.0, - -51012.0, - 13854.733 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139937810" - ], - [ - 33, - [ - 67133.0, - -12735.0, - 13304.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565900747" - ], - [ - 63, - [ - 117137.086, - 222670.33, - -7009.188 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378170299" - ], - [ - 43, - [ - 87661.0, - 188656.0, - 1412.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042511456" - ], - [ - 17, - [ - 126423.59, - -34685.25, - 8158.262 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541726850" - ], - [ - 35, - [ - 125622.92, - -33525.824, - 8232.558 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1541700845" - ], - [ - 15, - [ - 112101.32, - -54031.94, - 16991.365 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624852856" - ], - [ - 70, - [ - 128458.0, - -118986.0, - -1491.0198 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1312025382" - ], - [ - 57, - [ - 121187.0, - -167468.0, - -112.019775 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883525205" - ], - [ - 55, - [ - 85749.0, - -168838.0, - -315.60397 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502724192" - ], - [ - 49, - [ - 234244.55, - -315386.7, - 9997.859 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130362059" - ], - [ - 56, - [ - 208803.23, - -67484.18, - 13894.639 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_390" - ], - [ - 55, - [ - 209068.64, - -68117.02, - 12137.111 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_391" - ], - [ - 15, - [ - 367643.53, - -301063.0, - -7476.075 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825299445" - ], - [ - 22, - [ - 360213.34, - -104472.695, - 11208.956 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7908CC01_1420583025" - ], - [ - 54, - [ - 5241.0, - -189314.0, - -1507.0198 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907930119" - ], - [ - 56, - [ - 9849.0, - -42575.0, - 13108.733 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683959520" - ], - [ - 47, - [ - 9392.0, - -42560.0, - 13086.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683958519" - ], - [ - 74, - [ - 158095.0, - -43909.0, - 12635.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418372386" - ], - [ - 40, - [ - 348195.72, - -40770.035, - -1743.2009 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113016257" - ], - [ - 72, - [ - 158753.0, - 191316.0, - -9144.1875 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578764273" - ], - [ - 70, - [ - 185190.0, - 223154.0, - -3550.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848677904" - ], - [ - 51, - [ - 174779.28, - 244471.0, - -9798.844 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178478289" - ], - [ - 58, - [ - 177208.0, - 244045.0, - -9686.1875 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1178482293" - ] - ], - "/Game/FactoryGame/Resource/Parts/SteelPipe/Desc_SteelPipe.Desc_SteelPipe_C": [ - [ - 106, - [ - -244257.06, - -142446.5, - 4408.4146 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120035422" - ], - [ - 98, - [ - -246664.72, - -142410.3, - 4438.0005 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120039426" - ], - [ - 124, - [ - -186009.97, - 71163.46, - -907.70715 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4DD01_2098139419" - ], - [ - 112, - [ - -152850.19, - 72509.2, - 10288.871 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364298738" - ], - [ - 116, - [ - -161099.0, - 70001.41, - 2736.9834 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A2DD01_1733096065" - ], - [ - 98, - [ - -176586.72, - -195777.3, - -1548.9994 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093656136" - ], - [ - 106, - [ - -174186.06, - -195813.5, - -1714.5853 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093652132" - ], - [ - 117, - [ - -89620.66, - -48549.94, - 16042.769 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159304095" - ], - [ - 68, - [ - -108638.5, - 107073.67, - 9989.984 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269682711" - ], - [ - 46, - [ - -107858.18, - 214868.2, - 3171.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769787572" - ], - [ - 44, - [ - 20566.408, - 130296.68, - 3010.2305 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437006174" - ], - [ - 134, - [ - 46497.0, - 221164.0, - 5799.812 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637932639" - ], - [ - 66, - [ - 112768.71, - -54149.914, - 16972.836 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624848852" - ], - [ - 34, - [ - 294222.4, - -171439.98, - 7312.924 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable184" - ], - [ - 120, - [ - 301876.56, - -247807.69, - 2612.8594 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_415" - ], - [ - 103, - [ - 8077.0, - -42615.0, - 13143.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683933516" - ] - ], - "/Game/FactoryGame/Resource/Parts/SteelPlate/Desc_SteelPlate.Desc_SteelPlate_C": [ - [ - 134, - [ - -183601.44, - 68985.25, - 12188.406 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A9DD01_1740292301" - ], - [ - 130, - [ - -160786.0, - 66278.41, - 3894.9834 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799BDD01_2055748830" - ], - [ - 60, - [ - -199804.72, - -16385.2, - 12029.33 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791EC501_2065673518" - ], - [ - 50, - [ - -194948.1, - -58664.055, - -353.58322 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F791CC501_2060866161" - ], - [ - 121, - [ - -129975.56, - 58752.53, - 4802.638 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B4CC01_1152434270" - ], - [ - 88, - [ - -115959.28, - 169552.03, - 320.048 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926584002" - ], - [ - 44, - [ - -42465.18, - 146424.2, - 7635.2505 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D2C401_1944043106" - ], - [ - 77, - [ - -29307.127, - -21740.617, - 17453.207 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0CB01_1734787333" - ], - [ - 133, - [ - -6431.0, - -75791.0, - 13614.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152016698" - ], - [ - 100, - [ - -54951.688, - -72060.83, - 27895.805 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981108547" - ], - [ - 69, - [ - -55319.445, - -72473.95, - 27785.725 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FACB01_1981113551" - ], - [ - 143, - [ - 54910.0, - -49718.0, - 13857.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139909806" - ], - [ - 20, - [ - 65566.4, - 156835.69, - 13991.937 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165881993" - ], - [ - 127, - [ - 47196.0, - 222618.0, - 5671.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637930637" - ], - [ - 130, - [ - 89558.0, - 189706.0, - 1248.8123 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042512457" - ], - [ - 80, - [ - 111703.555, - -52913.555, - 16832.229 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624851855" - ], - [ - 90, - [ - 367683.25, - -300163.0, - -7563.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825300446" - ], - [ - 110, - [ - 365068.06, - -302291.4, - -7332.073 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825297443" - ], - [ - 123, - [ - 7694.0, - -44360.0, - 13115.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A4CD01_1683957518" - ], - [ - 62, - [ - 346649.2, - -39955.543, - -1738.8882 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113020261" - ] - ], - "/Game/FactoryGame/Resource/Parts/SteelPlateReinforced/Desc_SteelPlateReinforced.Desc_SteelPlateReinforced_C": [ - [ - 75, - [ - -258831.19, - 107261.2, - -1641.1288 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038675489" - ], - [ - 52, - [ - -260218.56, - 103424.53, - -1643.3619 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7943CE01_2038658488" - ], - [ - 21, - [ - -244154.0, - -142796.0, - 4434.981 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C8C501_1120036423" - ], - [ - 35, - [ - -152631.5, - 71440.67, - 10035.984 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B1CC01_1364297737" - ], - [ - 33, - [ - -182959.27, - 69078.53, - 14202.573 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AADD01_1889295479" - ], - [ - 21, - [ - -174118.0, - -196163.0, - -1705.019 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CCC501_1093653133" - ], - [ - 25, - [ - -123176.62, - -166539.95, - 29160.963 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79ABCB01_1811242624" - ], - [ - 31, - [ - -89877.836, - -49104.547, - 15961.677 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B9CB01_1159306097" - ], - [ - 20, - [ - -108073.18, - 108672.195, - 9855.334 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C4C501_1269707716" - ], - [ - 32, - [ - -116427.6, - 169182.69, - 210.93672 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926587005" - ], - [ - 26, - [ - -115179.18, - 169768.2, - 432.33392 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79C0C501_1926588006" - ], - [ - 48, - [ - -4946.0, - -77388.0, - 13636.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152041701" - ], - [ - 31, - [ - -4488.0, - -75644.0, - 13586.733 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A5CD01_1152042702" - ], - [ - 63, - [ - -57057.0, - -147203.0, - 1797.396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7945CE01_1667062846" - ], - [ - 55, - [ - -48783.0, - -260130.0, - -1551.0198 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846408199" - ], - [ - 75, - [ - -49669.0, - -257275.0, - -1413.604 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1846406198" - ], - [ - 71, - [ - 549.0, - -237523.0, - -1819.604 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126607300" - ], - [ - 57, - [ - -1395.0, - -238804.0, - -1821.0198 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7986CE01_1126609301" - ], - [ - 55, - [ - 56864.0, - -50221.0, - 13745.193 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A0CD01_1139935809" - ], - [ - 41, - [ - 67009.0, - -13000.0, - 13333.733 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799ACD01_1565901748" - ], - [ - 48, - [ - 46246.0, - 221632.0, - 5798.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637931638" - ], - [ - 36, - [ - 48147.0, - 221798.0, - 5809.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B6CC01_1637911634" - ], - [ - 55, - [ - 118283.555, - 220785.31, - -7441.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79F8CD01_1378166295" - ], - [ - 50, - [ - 88121.0, - 189533.0, - 1371.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79B5CC01_2042488452" - ], - [ - 40, - [ - 111402.91, - -52885.582, - 16835.053 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F797BC501_1624824851" - ], - [ - 74, - [ - 128090.0, - -115614.0, - -1490.604 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1311992380" - ], - [ - 69, - [ - 120195.0, - -164592.0, - -188.60396 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1883524204" - ], - [ - 71, - [ - 85997.0, - -171557.0, - -416.01978 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798BCE01_1502726193" - ], - [ - 35, - [ - 236264.22, - -313065.5, - 9957.152 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79A7CD01_2130336056" - ], - [ - 69, - [ - 186630.52, - 175426.06, - 6459.783 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553812267" - ], - [ - 63, - [ - 184545.0, - 177062.0, - 6186.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1553781262" - ], - [ - 40, - [ - 304404.44, - -244986.38, - 4076.5625 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_418" - ], - [ - 60, - [ - 366505.47, - -301600.88, - -7421.59 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7910CC01_1825298444" - ], - [ - 66, - [ - 3835.0, - -187659.0, - -1538.604 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7985CE01_1907929118" - ], - [ - 70, - [ - 160430.0, - -39944.0, - 14975.98 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7948CE01_1418403388" - ], - [ - 17, - [ - 349661.38, - -39793.46, - -1582.0726 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79FECB01_2113018259" - ], - [ - 61, - [ - 155280.0, - 190587.0, - -9194.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793CCE01_1578736268" - ], - [ - 59, - [ - 187345.0, - 222678.0, - -3259.1877 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F793ACE01_1848715909" - ] - ], - "/Game/FactoryGame/Resource/Parts/Turbofuel/Desc_TurboFuel.Desc_TurboFuel_C": [ - [ - 7, - [ - 198102.3, - -40248.43, - 13607.361 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D9D401_1734562296" - ], - [ - 5, - [ - 249309.3, - 59066.766, - -1507.9266 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79AED201_1679192563" - ] - ], - "/Game/FactoryGame/Resource/Parts/Wire/Desc_Wire.Desc_Wire_C": [ - [ - 117, - [ - -94686.54, - 7113.1055, - 25201.037 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F798AD401_1214804331" - ], - [ - 132, - [ - -109203.18, - 214983.2, - 3193.871 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79CFC401_1769783569" - ], - [ - 110, - [ - -79028.0, - 291697.0, - -4851.4805 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F799EC101_1316629776" - ], - [ - 146, - [ - 20175.818, - 131241.2, - 2595.2214 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D8C401_1437003171" - ], - [ - 118, - [ - 65786.82, - 157553.2, - 13787.871 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79D7C401_1165876989" - ], - [ - 62, - [ - 31851.0, - 266398.0, - -1394.0 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F79DFC201_1695657275" - ], - [ - 104, - [ - 274615.72, - -49098.64, - 5901.109 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7997C301_1629252672" - ], - [ - 118, - [ - 364645.16, - -219153.0, - 4036.206 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7994C301_1377300142" - ], - [ - 76, - [ - -146381.66, - -136670.94, - 2160.7686 - ], - "Persistent_Level:PersistentLevel.FGItemPickup_Spawnable_UAID_40B076DF2F7939C301_2122941131" - ] - ] -} diff --git a/game_data/sav_data/mercerSpheres.json b/game_data/sav_data/mercerSpheres.json deleted file mode 100644 index 0846d92..0000000 --- a/game_data/sav_data/mercerSpheres.json +++ /dev/null @@ -1,4472 +0,0 @@ -{ - "Persistent_Level:PersistentLevel.BP_WAT102": [ - "BV3J6S3HGK1XQ0GTC1PUYN6PD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 846.0156, - -168496.14, - 1844.2832 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT103": [ - "CT9YVY8OWECVW3NM9UCG3905N", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 37172.016, - -192272.14, - 1099.9403 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT104": [ - "0X2A31J4BRFODOBMWQR0PFKY8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 67777.016, - -192082.14, - 3292.4248 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT105": [ - "1PZDL73SVDH2253GGOKTIEQCS", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 79198.7, - -159556.1, - 15953.425 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT106": [ - "1P769INAVF9EGI0MSYPHJE2QT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 152032.0, - -204217.0, - 8686.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT106_2": [ - "9JEZVHCWGKROFOQP45GDWK8A3", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 163570.0, - -294545.0, - 23785.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT108_11": [ - "81JRN8EL56I1O9V4NB4Y7359I", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 164459.0, - -271549.0, - 17583.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT109": [ - "EX86OPVVFD834Z9LEG2JI00UU", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 129690.016, - -183159.14, - -578.99023 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT109_11": [ - "2LUY6P7VRDU9JLGK9YCCZDWGT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 200644.0, - -247527.0, - 26623.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT10_5": [ - "6JPHPQ77DT3KZS61I6UEKEOQM", - [ - -0.13511651432281518, - 0.10964005453710594, - -0.7646677866931303, - 0.6204883254277892 - ], - [ - 169225.84, - -32285.602, - 11407.168 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11": [ - "DSG7ACJQX0WF3C9K5Q8MLZB9K", - [ - 0.0, - -0.0, - 0.2597994996499335, - 0.9656625808125964 - ], - [ - -113191.875, - -53235.688, - 21683.121 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT111": [ - "5UAWB7QBPXMB9LX8AXJHVYASF", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 139915.02, - -157899.14, - 559.0475 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT112_14": [ - "05T77O664VCG76XIK7PCWON5H", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 186820.0, - -204185.0, - 25648.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT113": [ - "A0NXJCF5IYQ8579ZEDKMM5BWE", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 154805.0, - -190795.0, - 2575.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT113_2": [ - "1P769INAVF9EGI0MSYPHJE2QT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 140820.0, - -206425.0, - 2629.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT118": [ - "BXV0B0WA2UKMDBHQR4Z3U8U13", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 116955.0, - -196713.0, - 8911.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT119": [ - "3YD2PNWN9OR7FWGQAMKI7ZFLV", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 161725.0, - -170475.0, - 17202.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT119_8": [ - "7350GF2H0RJTV1JNVAOSS3704", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 180577.0, - -242488.0, - 15323.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11_15": [ - "BXR2XT9LRT5YWZTYGBYNKA9RK", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 59821.023, - 75986.766, - 21210.156 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11_21": [ - "28GAZXU4I5C5N0BOE9S71N9IF", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -273892.8, - -149956.64, - -1510.4635 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12": [ - "655A7IUW5FHON6N4WEQIT2BPM", - [ - 0.010830753154473738, - -0.012018023234277973, - 0.669373238052925, - 0.7427501128119668 - ], - [ - -218991.83, - -117543.4, - 11051.813 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT120": [ - "7D7OQT7C59XPI9USE4REHDKWD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 118715.0, - -150470.0, - 5030.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT122_3": [ - "16TS5SGLAB5OGQMHLQT1K027S", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 213200.0, - -193520.0, - 24567.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT124": [ - "2DKA3NYZ4OONXKZ65VC83ZY4Q", - [ - -0.0, - 0.0, - -0.9578285130998944, - 0.2873404591992667 - ], - [ - -221843.88, - -88193.555, - -1601.6326 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT125": [ - "4HNBHMMMO2D9RCCIGZH99P8LD", - [ - -0.0, - 0.0, - -0.9656092840850053, - 0.25999752015902666 - ], - [ - -260013.69, - -4717.5625, - -126.61529 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT126": [ - "136GIYGVORSSJ0WM2FJHWMSX7", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -138825.33, - -38237.64, - 799.69385 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT127": [ - "8QW2GESZWTCW67WEI8G9YDDEC", - [ - 0.0, - -0.0, - 0.45337892766057153, - 0.8913178714428148 - ], - [ - -133099.03, - -93389.6, - 485.60617 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_0": [ - "BSTB9EDX9WB8FIEZ3JYMZB2SL", - [ - -0.016307170402959478, - 0.01824233534459209, - -0.24936073246553508, - 0.9681015021674514 - ], - [ - -32922.137, - -48290.062, - 14668.027 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_2": [ - "0RXCIC8GHQDYM2E52FZ8X831X", - [ - -0.015466091475766861, - -0.009470831820720345, - -0.9752691826573561, - 0.2202751114355398 - ], - [ - -101975.664, - 278426.3, - -1620.4889 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_4": [ - "8GH91K6YW7OUWZ0W53QXKW620", - [ - -0.01331008610503796, - 0.03218336034204542, - 0.3819440027239784, - 0.9235290205013355 - ], - [ - -5507.75, - 102348.07, - 23652.516 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT130": [ - "17R28KVDFQ7MNZJNP8NV5JXHX", - [ - -0.008772685328397475, - 0.012122813943163576, - -0.946088440959218, - 0.32356257394449156 - ], - [ - -199017.28, - -41617.68, - 763.7219 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT135": [ - "6KP0OMP4ZCBMPKMTSR37JR6OG", - [ - 0.6870873839931445, - 0.7265747908902888, - 3.170280590830049e-07, - 2.997984274968565e-07 - ], - [ - -255587.75, - -61460.145, - 180.1481 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT139": [ - "6ES6VR80IU4BHJEYSGO6HMEN0", - [ - 0.0, - -0.0, - 0.10845286164088783, - 0.9941015927971861 - ], - [ - -33564.996, - 121714.305, - 3027.302 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13_1": [ - "DQE2FUE2YG5ULHVIHD55FRONS", - [ - 0.0, - -0.0, - 0.28760132140008143, - 0.9577502179216286 - ], - [ - -36931.0, - -76082.0, - 11640.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13_2": [ - "1URGPYHJ7GU831YVI4Z362BO8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -44172.984, - -259058.14, - 1141.611 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13_4": [ - "7J3WGU1S94D8JCWCOKXE7KBOY", - [ - -0.0, - 0.0, - -0.45105728477593854, - 0.8924950004625 - ], - [ - 187164.8, - 165653.61, - 3372.4114 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14": [ - "55Q36NH3ABGLRZAYIL5YECQVM", - [ - -0.0, - 0.0, - -0.6034232457703491, - 0.7974210847876904 - ], - [ - -118080.42, - -186090.17, - 14188.654 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT140": [ - "48BTHXI65TZWN96E0U80XP13D", - [ - -0.0, - 0.0, - -0.003554779911812343, - 0.9999936817499292 - ], - [ - -106845.305, - 124971.93, - 6294.2036 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT141": [ - "83B8Y9O11EQDBQ9B55OHU3ICI", - [ - 0.0, - -0.0, - 0.997596920293402, - 0.06928480801099027 - ], - [ - -57170.363, - 140413.17, - -4968.284 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT142": [ - "5DTDVMJE226X4RC4RXBQL4DZ1", - [ - -0.25685484775341155, - -0.017839007236717996, - 0.9639632837953227, - 0.06694882001139767 - ], - [ - -124535.164, - 154337.34, - 622.70825 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT143_4633": [ - "EQ3RXAR8YVCMQ5LYPC1XVLOZ4", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -145473.78, - 89816.0, - 9324.469 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT144": [ - "F4N4HLWUIKWI5X9MEGCWP1TRY", - [ - 0.4914460526006287, - 0.29455646277973424, - -0.42134492847125604, - 0.7029834413906938 - ], - [ - -110466.99, - 92197.42, - 5077.023 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT145": [ - "AYGLQNU3ZR1Q1G7GMTNXOP87R", - [ - -0.005829770943230325, - 0.25446298213311896, - 0.7841296086128343, - 0.5659994358578041 - ], - [ - -168746.05, - 57825.168, - 12554.12 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT148": [ - "A8LSMW5TTTOMV2TY8Z0A3QEER", - [ - -0.0, - 0.0, - -0.9656092840850053, - 0.25999752015902666 - ], - [ - -205219.27, - 22857.389, - -1181.3688 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT149": [ - "41NCJK1FYJDLMI6DGTW2TCM19", - [ - 5.235940920088034e-07, - -0.9999999999850804, - -8.72661815847707e-07, - 5.366887906780149e-06 - ], - [ - -278041.28, - -89802.9, - -863.01825 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14_3": [ - "30U313RBXQ89JD12NUHDSVGLJ", - [ - 0.0, - -0.3259823172520685, - 0.0, - 0.9453758664356584 - ], - [ - 239740.55, - 40268.387, - -1682.3512 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT15_0": [ - "AXKBSCFFF3H53IWL29V0XIW6V", - [ - -0.12449699821857148, - -0.0, - 0.0, - 0.9922199843958823 - ], - [ - 67995.734, - -162824.5, - -1759.6099 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT15_3": [ - "9AJ9PIG953097OLKR5YZ55LT1", - [ - -0.0, - 0.0, - -0.37466980104286834, - 0.9271583145215803 - ], - [ - -64625.87, - -65619.57, - 12511.134 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT16_10": [ - "2688BJGBFVRTCIER8HTG2UA0G", - [ - -0.0, - 0.0, - -0.5709361905540626, - 0.8209944374449897 - ], - [ - 14063.621, - -10584.863, - 25644.352 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT16_2": [ - "46B9GAZHXZGF8DE5L562IFXO2", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -58160.0, - -197611.0, - 13112.352 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT17": [ - "0V4R2YF23ZAZTMXD16HT5SAIH", - [ - -0.0071315838140042186, - 0.0014473155621260489, - 0.19896533017733817, - 0.9799795116110287 - ], - [ - -168901.98, - -173015.95, - 7728.0405 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT17_11": [ - "5YT9ST5EI7QM8DFZAXY77WCYX", - [ - 0.11003341971480433, - -0.2896012651640311, - 0.8888091456979772, - 0.3377011345626336 - ], - [ - 20786.518, - 23944.201, - 23861.197 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT18_12": [ - "45UWPTO34PXL4KQTGRUE81XMI", - [ - 0.2223158838677777, - -0.46802452083163437, - -0.10950857350069859, - 0.8482550135485496 - ], - [ - 46244.55, - 14149.113, - 23995.08 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT18_9": [ - "7BOBYXNJXVHSNAWS15JY4RZZU", - [ - 0.0, - -0.0, - 0.44563370253836526, - 0.8952153948419049 - ], - [ - 142193.95, - 241283.11, - -2772.7158 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT19_10": [ - "6H66RI7OBR6IWMW9YZ96MANGZ", - [ - 0.0010738740459005501, - -0.07580956669949783, - -0.038482641719151355, - 0.9963788650296048 - ], - [ - 169480.23, - 173413.34, - -5233.843 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_9": [ - "0KRL3VQVHZQNVHGD96KREOOR8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 49063.52, - -94567.93, - 17692.578 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_13": [ - "9SRHX1B6DG1OMS1ZMV4RL34NE", - [ - -0.0, - 0.0, - -0.7140192414789522, - 0.7001260763589809 - ], - [ - 206883.25, - 112912.13, - 78.67206 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_14": [ - "E61UU3MR6SINIIVNXEYQVK4R4", - [ - 0.0, - -0.0, - 0.11971676377336334, - 0.992808086425384 - ], - [ - 247454.11, - 119663.65, - -950.58496 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_17": [ - "5O4Q8KPQYINS8P95X6C8VD8L8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 223172.95, - 90154.29, - 1337.7687 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_19": [ - "2H6LCF0B2X9IS2TDL2WB57AWV", - [ - 0.021003851097854576, - 0.35533845903924605, - 0.4735867171921709, - 0.8056109725331552 - ], - [ - 270276.1, - -37610.574, - 5306.433 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2": [ - "6VPS1394N4OBPTWLU7LTJSPQ2", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -13329.422, - -130432.805, - 9323.277 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT20": [ - "1PZDL73SVDH2253GGOKTIEQCS", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 74273.0, - -155774.0, - 21542.457 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT20_9811": [ - "8H8FE6U0Z98VIWI6K9ZABMR2G", - [ - 0.043619387365336, - 0.0, - 0.0, - 0.9990482215818578 - ], - [ - 184955.64, - 27670.867, - 10781.603 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT210": [ - "9ZI97U85BHEMNEFSBAN8Q97HH", - [ - -0.037995427686653115, - 0.5470768867804549, - 0.8342101068054659, - 0.057937251653206005 - ], - [ - -21210.576, - 263473.38, - -4610.2725 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT210_42": [ - "2J6VZPR2SB0VML54SDQWB1P5P", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -32033.432, - 51591.637, - 21865.871 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT211": [ - "DGLJFZ90EAGLE7R9ZT5QL4N2F", - [ - -0.03164974908663763, - 0.45570925674875234, - 0.8874281325367702, - 0.06163340229577878 - ], - [ - 14369.969, - 198309.22, - -11030.689 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT211_UAID_40B076DF2F79007A01_1867371992": [ - "5YRNRCOMWW8GWTAWGM92RFCXZ", - [ - 0.0, - -0.0, - 0.997596920293402, - 0.06928480801099027 - ], - [ - 62877.715, - 135612.81, - -8357.741 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT211_UAID_40B076DF2F79007A01_1988795993": [ - "59W8VJTG326D3A52UH38MON2U", - [ - 0.0, - -0.0, - 0.997596920293402, - 0.06928480801099027 - ], - [ - 23533.453, - 157514.16, - -16557.264 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT211_UAID_40B076DF2F79017A01_1322649170": [ - "CRWTKFUJMS7PML9U7MCL6H03W", - [ - 0.0, - -0.0, - 0.997596920293402, - 0.06928480801099027 - ], - [ - 48435.07, - 152059.92, - 6222.2197 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT212": [ - "F4QDBDBOVEVZJES2VWWII2ASP", - [ - 0.4726196732027707, - 0.0, - 0.0, - 0.8812665002720268 - ], - [ - -263894.06, - -111560.85, - -1507.7767 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_0": [ - "AAIYXGC69I0P98NVO7N7E3ELP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -90209.664, - -72819.305, - 15897.51 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_1": [ - "BA3XMSRU7IFHLPD5E4R4HRMKD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -126042.055, - 215384.83, - 2780.0083 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_10": [ - "8F6S5M46QK4SWXY7YCUTC4ZUB", - [ - 0.0, - -0.0, - 0.09440749486545653, - 0.9955336382630317 - ], - [ - 33759.96, - 65594.96, - 23524.432 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_10184": [ - "DA0MFSEDIV8SMDUYDEN6II96E", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 124816.8, - 11859.551, - 18559.506 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_15": [ - "DFTEM3CBU6AYLSJVB3NTYGRQY", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 64471.35, - 102287.92, - 11766.455 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_2": [ - "DLE9SJZ8OFDG3N6EAG29CYW34", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 178776.28, - 189126.3, - 771.38904 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_24": [ - "F4N4HLWUIKWI5X9MEGCWP1TRY", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -98837.2, - 85512.445, - 17574.26 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_25": [ - "E61UU3MR6SINIIVNXEYQVK4R4", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 255758.88, - 115580.6, - 8746.178 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_356": [ - "9TXWNHWBI5748TYTTCUA1DTX0", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -74871.38, - 104947.91, - 11242.198 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT21_UAID_40B076DF2F79CA7C01_1851394664": [ - "6R7NFOA2U0H2ZVCUE51IRA47Q", - [ - 0.44588469190601765, - 0.0, - 0.0, - 0.8950904096927169 - ], - [ - -98170.2, - 231610.7, - -663.23596 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22": [ - "EPNKO53YJKXUZRUS8MU7JYU4Q", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -267599.1, - -180680.86, - 462.43057 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_11": [ - "CLTABPAREQ7Z1WOHDR1AISPRR", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -34385.777, - 96725.13, - 23434.596 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_16": [ - "AGQPDDHNCFVUM8C8M9TA84KAP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 110328.83, - 109190.6, - 9321.004 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_2": [ - "9X46CH2VSO1SWQMRMJ4A2X536", - [ - 0.03699147134425418, - 0.0, - 0.0, - 0.9993155813094216 - ], - [ - -29342.387, - 245731.06, - 2510.608 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_25": [ - "78LIX115PUIWUPGZJX0KA4SBG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -67361.8, - 29823.623, - 19643.297 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_26": [ - "52BDTAJZXRB2852CF81IC78YS", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 283017.88, - 52946.746, - -898.3867 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_277": [ - "2X5F7NUO7P3JNEMUEB7QTVJXL", - [ - -0.0, - 0.0, - -0.32163137078813475, - 0.9468649646728647 - ], - [ - -159288.39, - 132746.02, - 3832.7163 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_3": [ - "823XRZORVFGOQVHQCDXISRIZI", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 153148.95, - 175179.27, - -4478.044 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT22_7": [ - "0SVIIM8X6VFVZFIZXFM5281KK", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -238994.78, - 56239.293, - -1461.2108 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23": [ - "8CYMZLYM4T5E2AA19O6K6GH0T", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 95689.0, - -212116.0, - 10342.725 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_1410": [ - "3G8XGCQNXON2KL95S12Z63MYQ", - [ - 0.0, - -0.0, - 0.3637391756205667, - 0.9315008384960641 - ], - [ - -154230.5, - 191086.31, - 1619.4642 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_15": [ - "57DZUJI0BTI1QVIDG9YS5HGLI", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 24240.049, - 88166.836, - 35420.58 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_17": [ - "CR0SO3LMRNOSVU7S7U7MFZ92N", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 140715.62, - 121161.516, - 12593.233 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_2": [ - "D1FFLTHEARRNUZAIW2X4OWIS2", - [ - 0.3767969024875933, - 0.0, - 0.0, - 0.9262958999562478 - ], - [ - -51483.89, - -24457.088, - 18533.225 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_26": [ - "5M0409D7G44D847WK8Q86OMQI", - [ - 0.0, - -0.0, - 0.08068769414139751, - 0.9967394323563928 - ], - [ - -66453.59, - 60150.324, - 22381.48 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_27": [ - "9UFMWACNFBI7PUU2FL99RF8OJ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 238670.22, - 111306.4, - -4900.263 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_3": [ - "9VV623W8UZF72WNMM8DVAOP2Y", - [ - -0.3837195928812932, - -0.0, - 0.0, - 0.9234496597210996 - ], - [ - -77522.13, - 254843.38, - -4589.3467 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT23_4": [ - "7JD9NGZLM5GB4J102QEHEHD3L", - [ - -0.0, - 0.0, - -0.6943897361812751, - 0.7195991205428889 - ], - [ - 196019.98, - 223705.22, - 3840.9438 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_18": [ - "7M2N6R92SDHZC4M6ZR0L37AZB", - [ - 0.0, - -0.0, - 0.3850800265826387, - 0.9228831849844888 - ], - [ - 137950.42, - 75592.82, - 13021.894 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_19": [ - "875H5TT0JWN6YR85XE2XYDHXA", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -77004.68, - 16958.688, - 23137.701 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_27": [ - "BRJ2ADJWSYWB7MOC3UZBE3TB8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -129781.79, - 15841.492, - 19523.604 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_278": [ - "AL5STOI1F7GHQLHHUZBP6VNO2", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -188844.58, - 98522.02, - 5641.3506 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_28": [ - "CWC9G8JCM8201E2UDN27U5SXG", - [ - 0.0, - -0.0, - 0.22490190681667, - 0.974381410080378 - ], - [ - 256311.33, - -24293.643, - 9149.596 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_3": [ - "0JMESHD2WUF1ZM0KQ6ON3JKG9", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -22060.988, - -44070.992, - 20304.742 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_4": [ - "CEUR68CD6DEFP4KQJDMOXOZWK", - [ - 0.0, - -0.0, - 0.6662795889459067, - 0.7457020245071577 - ], - [ - -10455.547, - 177575.31, - 1102.4474 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24_5": [ - "64T0U86SR48FB2NMSXXJ0Z63G", - [ - -0.0, - 0.0, - -0.7042134766633807, - 0.7099882951751205 - ], - [ - 139037.8, - 216778.95, - -8892.157 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25": [ - "57GZCK8PZ3E3ZM3A6B7XPSZKC", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -253369.95, - -152041.14, - 15231.032 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_19": [ - "ATIPCD36F1FFW5FFK2Y8NHW60", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 38448.38, - 40904.97, - 18103.447 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_23": [ - "790JZABNACZTTLKL0SSQG3VG0", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -42592.223, - 12441.906, - 23999.527 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_28": [ - "CD56CV6662RIWBR8UHUFMMSRB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -88096.1, - 52526.023, - 24589.729 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_4": [ - "3BB631B9915ZH3AOQ4IJDGZ61", - [ - 0.0, - -0.0, - 0.14673047445536175, - 0.989176509964781 - ], - [ - -40593.246, - -59641.38, - 14472.309 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_5": [ - "BRA6J4XYZ2EHL2FRNZ5ILEC0L", - [ - -0.37954506028785323, - 0.16547356094797983, - -0.3215656566739263, - 0.8515630195623525 - ], - [ - 7656.3477, - 294058.34, - -2276.2231 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_6": [ - "ETK76NUH3SMT5CZD1LZ7XFPOR", - [ - 0.0, - -0.0, - 0.23452193223755677, - 0.9721108287122219 - ], - [ - 163534.42, - 207428.2, - -9177.336 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT26": [ - "CEITTSM2HPGFPMS0FKPD8DG9S", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -199601.77, - -176961.56, - -1531.442 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT26_27": [ - "BR0CKOJECX3T8153Y899XOTJG", - [ - 0.0, - -0.0, - 0.8891602241559203, - 0.45759599624449687 - ], - [ - -13387.762, - 68720.29, - 23096.393 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT26_29": [ - "ETKG8NSAO6YFJTFIDYRLKXII5", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -79991.97, - 39740.47, - 19783.754 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT26_3": [ - "2U697QH7XF9W42SPFV8AOZJL8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -211902.1, - -130283.125, - 6632.6787 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT26_6": [ - "AMZAE0VSIJM5Q1YXJLUD6WQ81", - [ - -0.0, - 0.46637756227122695, - 0.0, - 0.8845857614781892 - ], - [ - -12549.961, - 195572.62, - -1379.7899 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT26_7": [ - "0AFMHN0PYXRAZ32AHLUVLF9KG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 128959.36, - 252404.33, - -1773.4708 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT27": [ - "0KSRDJC6TCGZZ6RQYLKADRHHJ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -176140.48, - -145908.73, - 5993.677 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT27_30": [ - "90AUCIU2UGBQ5N0LN2BL28WJA", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -183084.31, - 13871.445, - 21767.574 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT27_31": [ - "6VG06HS27LTCQ0FW1E59SFPG8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -9284.406, - -14728.93, - 32838.535 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT27_7": [ - "8BHCAS3EUAOCF6NRUVIK1T4BL", - [ - -0.10149200872148084, - 0.08217736478041793, - 0.16556934854246366, - 0.9775137051247155 - ], - [ - -49121.26, - 267537.4, - -3112.38 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT27_716": [ - "2X5F7NUO7P3JNEMUEB7QTVJXL", - [ - -0.0, - 0.0, - -0.9936275700446964, - 0.11271314052528184 - ], - [ - -170069.11, - 131714.75, - 9363.016 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT27_8": [ - "D86A6DNVJPIFYWQKNCJZCJ3FB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 101584.695, - 205493.42, - -3128.2805 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT28": [ - "2RDF5N5FEH88BUVPW7REIVTYI", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -33627.03, - 198750.11, - 1278.0842 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT28_34": [ - "2J6VZPR2SB0VML54SDQWB1P5P", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -41318.652, - 69776.63, - 21100.066 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT28_38": [ - "CYIG9OCBFVQJ01L07CNML4VKC", - [ - -0.09507108900171815, - 0.48668919276166966, - -0.7937832612713271, - 0.3521409544635184 - ], - [ - 21822.355, - 8591.145, - 23371.805 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT28_8": [ - "7SBCDQ2TFQBA2QFTB5THY4H59", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 14752.219, - -136715.06, - 1231.5829 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT28_9": [ - "CQ39X1KO2CYJMDK1AL2P3FDJM", - [ - -0.0, - 0.0, - -0.6860088916322281, - 0.7275931559611607 - ], - [ - 90260.06, - 163147.44, - -4523.473 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT29": [ - "015RYOHOFH7CVMMFME4056P54", - [ - 0.3506479683852664, - -0.4614563765748542, - 0.6488530162961976, - 0.49304541173102684 - ], - [ - 22878.291, - 285310.88, - -492.6314 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT29_10": [ - "9MS9G6WTGIG8D58697G95CXAQ", - [ - -0.0, - 0.0, - -0.6706643774561447, - 0.7417609404729814 - ], - [ - 146849.22, - 279755.53, - -5032.1763 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT29_11": [ - "02M8DS4U0NQ5C1G41ZN0B87KJ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 143162.56, - -48605.29, - 977.8767 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT29_38": [ - "DE0JWSHJUML4JVA3E0SZV3MKV", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -137795.75, - 47354.94, - 23703.742 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT29_42": [ - "9FJ691O5J6QJHTVSRL2T58ZFG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 9808.336, - 41676.98, - 22512.033 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_0": [ - "EVOBVNIZXZH3P171HK2AF9NJ5", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -28435.0, - -180056.0, - 11814.253 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_1": [ - "CQ0CKTZT5E0ASGUGG57K4U301", - [ - -0.0, - 0.0, - -0.09724480455351958, - 0.995260492528136 - ], - [ - 66313.8, - -61352.24, - 7539.039 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_10": [ - "4U16D7OBRSOBFAAQN6OSY6RU7", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 176979.0, - 115977.0, - 17057.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_11": [ - "091CKM3H3UI1DBT79RXLW2J33", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 174067.0, - 118773.0, - 10465.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_12": [ - "4Z8QJ6AM5XIRUOKNWSRWWPEKG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 192570.05, - 86144.92, - 1121.8069 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_13": [ - "BSTIJIBBSJLWHWZ5AT1VYZCE6", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 167448.0, - 86817.0, - 6072.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_14": [ - "42I0D0IFNJKCZ8W35VPV4I41N", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 112216.64, - -73475.94, - 12662.316 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_15": [ - "3YPSNWXKC7X17B3N9TD0DFGLJ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 109404.09, - -36637.023, - 8860.15 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_16": [ - "AR8GCAJ3Z3AC57K3SC8O6BBUL", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 124815.97, - -10482.781, - 14743.533 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_17": [ - "EX86OPVVFD834Z9LEG2JI00UU", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 118479.016, - -177280.14, - 1279.6179 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_18": [ - "03ZCPBHIVK00B2FFLHN6JMVAG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 188950.0, - -168060.0, - 23738.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_19": [ - "ABV1USTVLMPPKNABWDX60SHJY", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 193305.0, - -149223.0, - 23070.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_2": [ - "40YGIB7R85BEX98EDSWBCAB7P", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 77135.484, - -4646.961, - 13480.114 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_20": [ - "7R2UDSS1Y1UI480ZZNICLGL6B", - [ - 0.0, - -0.03053787035595982, - 0.0, - 0.9995336104774679 - ], - [ - 182590.0, - -179605.0, - 27411.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_21": [ - "E0QMEHLPI4E13EVTDMWZB0HWN", - [ - 0.17032754921918822, - 0.0, - 0.0, - 0.985387500416453 - ], - [ - 281412.66, - 121408.79, - 156.27182 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_23": [ - "4U9TA1DBVMVT2L2U8CTNXDC05", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 215830.0, - 139040.0, - -3035.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_25": [ - "BZMDUF5VSYMR7KN629KNH1CKL", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 259073.36, - 91983.59, - -1513.9333 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_26": [ - "2OHPJP4RR3XUWTOVFSAL7QR8F", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 263650.4, - 12571.375, - 1694.1874 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_27": [ - "8XH3IUJQKSLT018FWIW7QPUIR", - [ - -0.3659546125479188, - -0.0, - 0.0, - 0.9306326995946911 - ], - [ - 219767.05, - 24492.244, - -1714.9548 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_28": [ - "D50JE516JR21IVYL84YNJQ75U", - [ - 0.0030076282405066385, - 0.24161640665014936, - -0.9702920089196262, - 0.012078229860059443 - ], - [ - 205781.55, - 59100.53, - -1537.0631 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_29": [ - "41NAZ2752JTFZGRHEIT1NUKML", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 295279.2, - -293695.66, - 6721.527 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_3": [ - "5CPLFSL53T8CJJYI8JOBJREDF", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 63992.383, - -4938.797, - 19352.053 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_30": [ - "9FHXKO90N85VOFVSW61TDZOH3", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 242430.0, - -261110.0, - 9879.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_31": [ - "5XEHJ9D4NSXG10GSCFKJI7PFZ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 218915.0, - -247705.0, - 8273.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_32": [ - "5BNGT9DFF02Q8PCF6ZBKP658S", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 323969.75, - -20408.375, - -1447.4111 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_33": [ - "ECM91LC9SCX17MK67022TK8FI", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 321859.72, - -72076.875, - 5668.5947 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_4": [ - "2688BJGBFVRTCIER8HTG2UA0G", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 11210.492, - -24138.18, - 13449.59 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_5": [ - "1CWS3JV6X8NQBUYGJ9L3IUUXB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 50824.37, - -32521.842, - 13389.301 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_6": [ - "0A2MGPVG4NN3PY8XM8661V6OF", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 36281.0, - -169656.0, - 11787.241 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_7": [ - "6T50M87WGH05FVSSOYHHCI2WT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 13825.0, - -166920.0, - 12229.781 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_8": [ - "D9TRPKE33S98PUN1VEU3MM5MY", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 81278.0, - -176513.0, - 6839.639 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_9": [ - "9GBDGOZSJX3B39FFI69CQM7EC", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 74841.0, - -200048.0, - 14884.639 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0006401_1631706786": [ - "5UF96OL8F0YYFCNY82DC5HAOE", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 153515.0, - 106900.0, - 14153.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0156301_1631721457": [ - "BSTIJIBBSJLWHWZ5AT1VYZCE6", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 168160.0, - 87610.0, - 11633.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F01D6201_1939266754": [ - "2LUY6P7VRDU9JLGK9YCCZDWGT", - [ - -0.0, - 0.4904718176971223, - 0.0, - 0.8714570534713003 - ], - [ - 213635.0, - -239505.0, - 12831.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F01D6201_1995497755": [ - "090RXBQSTNG5C1XD7EGH168JV", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 233708.0, - -215382.0, - 4296.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F01E6201_1415384932": [ - "3B11I6EN5TWPRT9TGF7B5HI4T", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 263585.0, - -232761.0, - 1102.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0226201_2044450637": [ - "1HRAUJQC1VCL44403AS93F4FC", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 224784.0, - -157918.0, - 4518.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F025A401_1185385862": [ - "DANZO2C5SIM0LTDJFT5P2OKYK", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -121712.0, - 127393.0, - 15396.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F025A401_1318668863": [ - "A06J665WBJ8WIPNXT8S17OXFG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -115572.0, - 147016.0, - 13947.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F02AA401_1366971746": [ - "AZ6FKAJPSWV8B78XOT6NDA7K9", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -175535.0, - 81270.0, - 23923.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F02AA401_1546189749": [ - "AYGLQNU3ZR1Q1G7GMTNXOP87R", - [ - 0.5950003492999777, - 0.0, - 0.0, - 0.8037254408894274 - ], - [ - -161957.0, - 63047.0, - 18816.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F02AA401_1741245750": [ - "2X5F7NUO7P3JNEMUEB7QTVJXL", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -173554.0, - 113686.0, - 19567.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F02AA401_1814961751": [ - "5RGKW57ADK7HGQS195VEIC9LQ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -137627.0, - 116054.0, - 15174.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0307C01_1078840569": [ - "F38EQCJFYG8UE3JCR0F7FBTQL", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 112534.0, - 67833.0, - 16212.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0307C01_1582547570": [ - "D13QFM8V4QIS9OBE5OXH8M66H", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 119667.0, - 52084.0, - 14186.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0317C01_1516355747": [ - "0OZVJ6AU61E93AVTA1PSAVV6S", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 69901.0, - 54545.0, - 9747.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0317C01_2116555749": [ - "6PQ7314XUVCWR8O04N45EBK4X", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 84989.0, - 34269.0, - 11723.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0327C01_1340668927": [ - "1Y776OX69M13V97JAIWB3CVTT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 125465.0, - -288.0, - 13751.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0327C01_1394521928": [ - "DZA468DWIP9BBC1RLD003U4AQ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 146425.0, - -12458.0, - 16369.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0327C01_1605927929": [ - "F1OVL33BAIA1H4OCNI68V1FS9", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 198204.0, - -157.0, - 5407.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0337C01_1494320107": [ - "9A1DJC9NFO49Q45LHQU1RKE1D", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 207318.0, - -30730.0, - 13392.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0337C01_1544698108": [ - "F1OVL33BAIA1H4OCNI68V1FS9", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 201926.0, - 4550.0, - 12999.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0337C01_1632970109": [ - "1ZLOTYTKX3AI7E0G8361TIGVA", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 187921.0, - -20166.0, - 11033.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0357C01_1629276462": [ - "D2U6VEGID4QK8XYHA1P94YXFP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 160376.0, - 7724.0, - 16381.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0357C01_1830097463": [ - "8J2GQN49KF46TFD2R75NX4ZG0", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 142195.0, - 9509.0, - 13395.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0367C01_1997582645": [ - "3AIP3ZQWAIB10GWEBRSJ0BIH3", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 148721.0, - 24496.0, - 11566.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0397C01_1667868175": [ - "6OH3OUDS6PFXXMI3RUKALLYJN", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 214286.0, - -10641.0, - 7599.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0397C01_2086373177": [ - "ANFQIX0XYM1R5SJZNS9CZAT22", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 157982.0, - 50049.0, - 11031.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F03A7C01_1499181354": [ - "04HYN5W55FAATI40HRK7JCCK7", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 137971.0, - 67038.0, - 12668.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F03A7C01_1798728356": [ - "0L64YXAH3DC6JLHPN8J9EG37Y", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 109133.0, - 34192.0, - 10379.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0426401_1291680381": [ - "6CWB96QBCFR7EBIDKUVPGWJDY", - [ - 0.0, - -0.5104051297659207, - 0.0, - 0.8599340692801011 - ], - [ - 219541.0, - 124266.0, - 12483.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0447B01_1978893022": [ - "6PQ7314XUVCWR8O04N45EBK4X", - [ - -1.0, - -0.0, - 0.0, - 6.123233995736766e-17 - ], - [ - 83739.0, - 37811.0, - 9868.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0466401_1164905096": [ - "9ESMK9H2QEDHJ9A5S015TJ0TP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 206068.0, - 162596.0, - 7363.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F05E6901_1906631590": [ - "92WAL8XQP8UN1SK7O802LWOGJ", - [ - 0.0, - -0.36633655904683615, - 0.0, - 0.9304824154736746 - ], - [ - -211160.0, - 149809.0, - -1733.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0607801_1378431781": [ - "CWC9G8JCM8201E2UDN27U5SXG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 257367.0, - -18485.0, - 12447.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0737801_1258887144": [ - "EQV6F4YDIXBQYSESRGVEPSI4M", - [ - 0.08341185601312077, - 0.4193397466308427, - 0.17635955294429628, - 0.8866193925565328 - ], - [ - 186351.17, - -30838.0, - 10332.746 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F087BE01_1694514560": [ - "CLTEKSRRDYHLXQL2PCFAB56VP", - [ - 0.0, - -0.4275550934302821, - 0.0, - 0.9039892931234433 - ], - [ - -138788.0, - 157630.0, - 17468.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F087BE01_1872685562": [ - "1PQ7FRCVAG4RLCU9QEB4PAQNB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -165854.0, - 110202.0, - 11182.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0A96F01_1534709120": [ - "9TXWNHWBI5748TYTTCUA1DTX0", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -82211.0, - 104580.0, - 21784.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0A96F01_1573952121": [ - "CD56CV6662RIWBR8UHUFMMSRB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -75376.0, - 54532.0, - 22701.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0A96F01_1627684122": [ - "2HB76YYKJJ4QS20T3EC3TKJ0Z", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -111264.0, - 51997.0, - 23991.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0A96F01_1658558123": [ - "CES7K8R0XDMYUD9PX099DTYXK", - [ - -0.0, - 0.45388929091936536, - 0.0, - 0.8910580854179573 - ], - [ - -54339.0, - 81544.0, - 20035.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0A96F01_1680839124": [ - "BEH3PCTHNNOMPZOV7UFF5H29S", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -188676.0, - 39373.0, - 16911.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0B36201_2026104153": [ - "45Z0CQJ0KIOFC9PMR3QXLM2ZA", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 334931.0, - -68308.0, - 6118.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0B37301_1874710112": [ - "0L64YXAH3DC6JLHPN8J9EG37Y", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 110839.0, - 48953.0, - 21602.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0B46201_1162892331": [ - "DLAE066U88DGNZ7CU6J65THSX", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 358514.0, - -208960.0, - 4184.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0B46201_1220705332": [ - "B1LCWO1Z3VY6RN86YJ7PL6S22", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 369114.0, - -229286.0, - 4198.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0C06801_1834655836": [ - "2HPOYRSF0ZIL92RDMOHZOFDEM", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -271571.0, - 104970.0, - -1602.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0C26101_1093316736": [ - "CUF1M93605PWFKLWIC77BQKKG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -218216.0, - -1453.0, - 2008.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0C46101_1131406096": [ - "6VU7X1NWQ1O0AAPBMOBAJ243X", - [ - 0.2901014035239229, - 0.0, - 0.0, - 0.9569959120463629 - ], - [ - -118884.0, - -25804.0, - 10832.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0C46101_1178535097": [ - "DXVYYD8BKKT09X26V4GQSEQMA", - [ - 0.03856734903016497, - 0.057466465828054314, - 0.394353432084434, - 0.9163490249338656 - ], - [ - -172466.0, - -3625.0, - 12872.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0C46101_1232106098": [ - "B7GL9WV21SEB6Z4W61UXPYU6D", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -180297.0, - -22474.0, - 3242.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0C86101_1887823809": [ - "B4VEW13MTSPHF46L54MSAT41G", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -182103.0, - -90640.0, - 1903.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0EE7A01_1386093905": [ - "51RJJ5B514PFPFP2MP7CJ7WY9", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 100696.0, - 17546.0, - 19038.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0F07A01_1459225259": [ - "DA0MFSEDIV8SMDUYDEN6II96E", - [ - -0.05773546301760253, - 0.01733027576196332, - 0.00038806088684581897, - 0.9981814099956509 - ], - [ - 127207.0, - 16821.0, - 13038.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0F17A01_1899547441": [ - "3AIP3ZQWAIB10GWEBRSJ0BIH3", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 141000.0, - 18583.0, - 10929.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0F17A01_2106088442": [ - "C1RQPXAX4V4HC6M9BKCCNKP47", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 237050.0, - -36906.0, - 17298.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0F27A01_1632980625": [ - "DA0MFSEDIV8SMDUYDEN6II96E", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 131878.0, - 30168.0, - 10341.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0F47A01_2000362987": [ - "24GBDKQ2TMQLMVKBHQ6WOH0NO", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 163226.0, - -26023.0, - 19627.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0FA6801_1163136984": [ - "5WVJ2FAC5LSIHU2CNRQJ9MWB2", - [ - 0.021215345393766485, - -0.0733483116658579, - -0.0015606673768250841, - 0.9970794846013683 - ], - [ - -171165.0, - 159617.0, - 247.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0FD6301_1551743241": [ - "4Z8QJ6AM5XIRUOKNWSRWWPEKG", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 176140.0, - 83550.0, - 15118.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0FD6301_1747414245": [ - "10TH6LBPL45EHGDNWV7ITGN33", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 188755.0, - 137135.0, - 12000.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_40B076DF2F79117901_1226789931": [ - "DT289L3R4Q62YAN7TTZSSS357", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 381621.75, - -67653.375, - -315.41113 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_40B076DF2F793DA801_1139638307": [ - "1RDHUYU7FUM60GUGIOLC631WZ", - [ - -0.43996730896455855, - 0.08950522903616404, - -0.0441249223692976, - 0.892451999966145 - ], - [ - 211420.0, - -83564.0, - 11761.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_40B076DF2F794FA001_1689147024": [ - "1PFD6KTXEBD26ONLZBYDGBNHX", - [ - -0.0, - 0.3511136327644677, - 0.0, - 0.9363328558194135 - ], - [ - 289400.0, - -150062.0, - 3508.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_40B076DF2F79A4A101_1223072041": [ - "9S515VLNHQXKW74Y5NFXAKWAS", - [ - 0.4817425054776121, - -0.42414870728604986, - -0.5369901662691299, - 0.5474153759751161 - ], - [ - 239346.0, - -109822.0, - 3526.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_40B076DF2F79AD9B01_1500683292": [ - "BJ90CDRRW7NBKK9DQSQFAW3R9", - [ - 0.5637054693353568, - 0.0, - 0.0, - 0.8259758736436587 - ], - [ - 348548.75, - -81514.375, - 2424.5889 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_40B076DF2F79D68D01_1178565720": [ - "7HQ6ZKDEPDYF6WCFQ02KKTF9U", - [ - -0.4763199600840736, - -0.02046876658710112, - 0.011092245732136198, - 0.8789637576740734 - ], - [ - 106404.09, - -7677.0234, - 15484.15 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_UAID_40B076DF2F796A7301_1664532256": [ - "111AK3DFL126G8VUBWQA3FG82", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -6984.422, - -130402.805, - 21074.277 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT30_14": [ - "EQV6F4YDIXBQYSESRGVEPSI4M", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 184819.61, - -49217.76, - 5641.6587 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT31_17": [ - "EJUSBUBXZHMXUBS5PC7J30RBT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 153167.03, - -110704.82, - -1196.0092 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT31_UAID_40B076DF2F7932A801_1176269369": [ - "36HBHD55OBP62ZP7N5BJBWN8U", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 193778.03, - -100453.82, - 2416.991 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT31_UAID_40B076DF2F7932A801_1267200370": [ - "DZ5ERFJK5CS6554CKDMJ9NXCE", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 123039.03, - -124466.82, - 3788.991 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT32_20": [ - "2SZAZRPSH5MODBVZ67LMLEACX", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 162692.31, - -73458.125, - -22.824738 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT33_18": [ - "7T667VDD99YOYD7JCWIG51P6A", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 200555.0, - -303560.0, - 22415.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT38_2": [ - "1TWA5NPCXEP5YQC9DQNVAL8KJ", - [ - 0.0, - -0.0, - 0.2723480432263598, - 0.962198806562746 - ], - [ - -127075.71, - -148617.52, - 3997.9421 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT39_3": [ - "CDY9LT3ORF8K472H0114WSCKC", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 229725.72, - -189199.88, - 6126.157 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT3_4": [ - "CKREWOBFRNALUT4MOSK1J5V77", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 25598.797, - -118720.43, - 12503.898 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT3_UAID_40B076DF2F795E7801_1675473424": [ - "4HNX7GQP4AU1BEHYTSNAWG8W6", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 67056.85, - -77629.98, - 7998.838 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT3_UAID_40B076DF2F795E7801_2071161425": [ - "0KRL3VQVHZQNVHGD96KREOOR8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 40286.547, - -96468.54, - 9342.669 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT3_UAID_40B076DF2F796A7301_1820015257": [ - "E6VDO3IRB8GYFL0D6AZYCE988", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 42208.797, - -118679.43, - 11369.898 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT4": [ - "0KRL3VQVHZQNVHGD96KREOOR8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 37399.645, - -112562.33, - 10781.443 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT40": [ - "7ECHWL6WKQE8EBWVDWYDXWMSP", - [ - -1.0, - -0.0, - 0.0, - 6.123233995736766e-17 - ], - [ - 360181.75, - -240032.38, - 3096.5889 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT40_UAID_04421A9713F0D2E401_2079149903": [ - "7ECHWL6WKQE8EBWVDWYDXWMSP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 373688.75, - -250924.38, - -1004.41113 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT41": [ - "5G5J4RLPVMXS3IKGMIW57032C", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 322306.75, - -107934.375, - 12732.589 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT42": [ - "DD3SAXYBLW5V4PFB0HULLWLRT", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 386921.75, - -221023.38, - 5181.589 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT43": [ - "BF15AQ1KJCL19W9YP52HSKDUR", - [ - -0.3532282689886824, - -0.4397753132843936, - 0.5170842879305647, - 0.6437789240012547 - ], - [ - 286959.0, - -235733.4, - 3059.5737 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT44": [ - "1MZ2DS1EE8D6Z85TCCZ9X54D4", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 318098.75, - -283229.0, - -1756.6904 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT45_7909": [ - "ANFQIX0XYM1R5SJZNS9CZAT22", - [ - 0.27690536305161806, - 0.14266417031934103, - -0.5270570148441428, - 0.7906840440554792 - ], - [ - 160626.14, - 43687.6, - 18793.14 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT48": [ - "5YR7ABN2HQFIKG8GUTQNL0OF8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 387613.75, - -117122.375, - 8561.464 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT51": [ - "090RXBQSTNG5C1XD7EGH168JV", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 234388.72, - -224003.08, - 13622.75 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT53": [ - "8FIN8GZNGKFVW7D1HMNF3LJVD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 240622.2, - -287486.66, - 18486.205 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT54": [ - "2SHK4ENIN6BWDXHO0MAYNGRX6", - [ - 0.0, - -0.02070867064602201, - 0.0, - 0.9997855524861692 - ], - [ - 362304.75, - -95286.375, - 8769.464 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT54_UAID_40B076DF2F793C8101_1652897954": [ - "8UDYWXEWSMNA091CPZSH9THY5", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 385674.75, - -137041.38, - 7326.125 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT5_8": [ - "CGNT9WSGTVS7HU0KXLH6Z2KEX", - [ - -0.03107794773082838, - -0.0, - 0.0, - 0.9995169639204929 - ], - [ - -24001.182, - -91326.61, - 9658.271 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT60": [ - "4V79DP52BUGL66ACSL6H1Y0QJ", - [ - 0.023953017866874603, - 0.0, - 0.0, - 0.9997130853075142 - ], - [ - 291517.72, - -46167.875, - 6849.5947 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT61": [ - "DIKPP4XVB69E8BDNXSQ9D3L4A", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 268602.72, - -69677.875, - 9573.595 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT65_1": [ - "7WP5162UQFDTL52KOO9KJTAOE", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 272302.2, - -296609.66, - 6152.043 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT69": [ - "7W9UDNX3KCC84L5VX4O792S6Q", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 293821.72, - -78077.875, - 5730.5947 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT6_7": [ - "7SNP1NOK9ZC0JFUT4YQXFT9GD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 4718.996, - -96921.625, - 14818.639 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT7": [ - "0OX6O83Q7SN4HUKQNYF26PUG1", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 77417.79, - -119983.03, - 14084.499 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT71": [ - "5XEHJ9D4NSXG10GSCFKJI7PFZ", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 231784.72, - -245638.08, - 1261.75 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT73": [ - "F3WI9LDL58SN8N6DYIW2OF3RO", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -72018.984, - -224771.14, - 5749.869 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT73_2": [ - "2T9OGPEYD5G0FJFNJD3AB74IS", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 164330.0, - -222745.0, - 8907.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT75": [ - "8V2S7IJRF1X66U2PPNU3LQ6H5", - [ - 0.0, - -0.0, - 0.37441555210382277, - 0.927261017374714 - ], - [ - 261248.19, - -256628.66, - 6537.043 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT76": [ - "090RXBQSTNG5C1XD7EGH168JV", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 225043.72, - -215833.08, - 1283.75 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT77": [ - "0HZHRXOVC1IB2TIL7442CSN33", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -42082.984, - -210767.14, - 2649.4385 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT78": [ - "4GEJG6PUKN0Q6HILMRAP8B17G", - [ - 0.6307175914999417, - 0.0, - 0.0, - 0.7760124482071874 - ], - [ - 372416.75, - -186063.38, - 3946.5889 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT7_UAID_40B076DF2F795F7801_1562250602": [ - "1021TK291WEHIZ3YBBZBUTZO5", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 122159.3, - -103308.984, - 17466.824 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT80": [ - "4NZU8W6GOXZABI9LN6HFVWQAY", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -61292.984, - -180147.14, - -159.90381 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT81": [ - "5Z64JS49XQPE1DTEHVUQ0ATP5", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 233628.72, - -299693.06, - 1313.75 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT82": [ - "8FIN8GZNGKFVW7D1HMNF3LJVD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 253769.72, - -284738.06, - 2898.75 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT84": [ - "1VANSH8LBB1OHIHGOFVMYOS66", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -4749.9844, - -201852.14, - -955.9038 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT85": [ - "2UGHAGZ61S0WA5I295WLMF529", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -8990.984, - -246390.14, - -736.9038 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT86_0": [ - "2KCXRX17LKEC1Q83K6VT8JZOV", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 203300.0, - -221365.0, - 24626.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT87": [ - "0UT67HZZRI9QYMNAL604R9ZDH", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 118885.0, - 41788.0, - 9846.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT87_1": [ - "65TWDXCAJQT8ULQ0K3W90PF5K", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 214480.0, - -278185.0, - 20571.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT88": [ - "A83ST7K8BTOU8Q9OKEMQIOSXE", - [ - 0.3752086376222834, - 0.0, - 0.0, - 0.9269403854906906 - ], - [ - 26512.016, - -233953.14, - 2582.0962 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT89": [ - "681112WPDUSKOWHZ4AXYO8ORY", - [ - -0.0, - 0.0023865981290665636, - 0.0, - 0.9999971520706298 - ], - [ - 57796.0, - -250997.14, - 1570.0437 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT8_5": [ - "AAIYXGC69I0P98NVO7N7E3ELP", - [ - 0.30352795385045883, - -0.1567064264289218, - 0.2098098659348403, - 0.9161297382487019 - ], - [ - -72810.29, - -87490.42, - -55.431744 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT9": [ - "1HV28XR4NNA4Z5C08E7LC6S1M", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 182016.0, - 93031.0, - 6673.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT90": [ - "BZEVNLO9HJHB5BH8TBRM90F2J", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 76962.016, - -216831.14, - 2721.0962 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT91_0": [ - "6KX3W8KN4777PL5AIQYN62PXP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 146780.0, - -136900.0, - 16336.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT91_340": [ - "52IUPTFUMF1G8JSXQR56A27YB", - [ - 0.4832560185755204, - -0.07996693578074704, - 0.23106061079482626, - 0.8406425541402816 - ], - [ - 3345.3555, - 220743.66, - -1998.2344 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT93": [ - "CBLQOVJE72F63HHDW2N1Q96UP", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 60222.016, - -214157.14, - -1077.0597 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT94_1": [ - "7D7OQT7C59XPI9USE4REHDKWD", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 123320.0, - -152385.0, - 19742.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT94_781": [ - "ETXFQ1WXUGLV4FN21GXWTVYNU", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 67301.04, - 243297.48, - 1171.6287 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT95_2253": [ - "2UE2D90SCKJ26UGIA11CODO7X", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 48268.72, - 216630.56, - -6016.653 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT96_3047": [ - "2OYRFTMP06S5SN0T3MR4EQ8ZW", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 35886.848, - 239511.66, - -5053.956 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT97_3991": [ - "CQ39X1KO2CYJMDK1AL2P3FDJM", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 86133.56, - 162053.69, - 1756.2927 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT98_5463": [ - "9ZF50FWDEEPISIG99HTODWJGP", - [ - 4.4744544912672927e-07, - -0.9996670634689375, - -4.4744544912672927e-07, - -0.025802368398869954 - ], - [ - 75108.45, - 202369.55, - 3425.7195 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT99_2052": [ - "AIH3C4LI19ODUG77WR1KF9XJF", - [ - -0.0, - 0.0, - -0.26613084301159234, - 0.9639369141172773 - ], - [ - 51761.848, - 202143.28, - -1560.9358 - ], - {} - ] -} diff --git a/game_data/sav_data/powerSlugs.json b/game_data/sav_data/powerSlugs.json deleted file mode 100644 index d97c5c6..0000000 --- a/game_data/sav_data/powerSlugs.json +++ /dev/null @@ -1,6218 +0,0 @@ -{ - "blue": { - "Persistent_Level:PersistentLevel.BP_Crystal1": [ - -211812.56, - -140593.3, - 3107.1646 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10": [ - -260891.62, - -152810.95, - 991.5802 - ], - "Persistent_Level:PersistentLevel.BP_Crystal102": [ - 141380.0, - -159269.0, - 5767.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_10": [ - 11565.031, - 275010.06, - -5485.831 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_10171": [ - -4714.672, - -42869.12, - 16426.926 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_12": [ - 133090.7, - -81206.04, - 12307.631 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_13": [ - -195258.67, - 12077.43, - 11901.971 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_15": [ - 153655.11, - 257705.28, - -925.99036 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_3": [ - -2630.086, - -141809.45, - 15899.301 - ], - "Persistent_Level:PersistentLevel.BP_Crystal10_79": [ - 227729.53, - 60730.65, - -1641.4636 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11": [ - -190229.58, - -196399.98, - 5527.107 - ], - "Persistent_Level:PersistentLevel.BP_Crystal111_3": [ - 129030.0, - -138605.0, - 12648.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal113": [ - 281910.8, - -152776.06, - 3937.1116 - ], - "Persistent_Level:PersistentLevel.BP_Crystal114": [ - 277271.4, - -238507.06, - 4069.234 - ], - "Persistent_Level:PersistentLevel.BP_Crystal115": [ - 236718.16, - -237214.44, - 3417.0786 - ], - "Persistent_Level:PersistentLevel.BP_Crystal117": [ - 300855.47, - -94145.38, - 8790.792 - ], - "Persistent_Level:PersistentLevel.BP_Crystal117_2": [ - 188356.0, - -152668.0, - 23561.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal118": [ - 287542.34, - -87886.3, - 8995.786 - ], - "Persistent_Level:PersistentLevel.BP_Crystal119": [ - 244057.27, - -240028.12, - 2538.7607 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_10": [ - 14476.914, - 230072.17, - 7249.8115 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_11": [ - -53805.793, - 300084.34, - -6722.6235 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_13": [ - 135311.77, - -58727.633, - 10234.984 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_14": [ - -151933.84, - -40291.445, - 2863.6362 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_15": [ - -2096.8594, - -110265.27, - 11560.881 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_16": [ - 115017.15, - 178031.38, - -5252.883 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_20": [ - 126616.77, - 155744.75, - 6756.451 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_7": [ - 80425.89, - -19572.527, - 13644.542 - ], - "Persistent_Level:PersistentLevel.BP_Crystal11_80": [ - 246886.3, - 69221.8, - -1707.5674 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12": [ - -159879.25, - -184972.97, - 18189.854 - ], - "Persistent_Level:PersistentLevel.BP_Crystal121_2": [ - 168015.0, - -241040.0, - 5530.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal122_5": [ - 150560.0, - -223335.0, - -569.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal125": [ - 128250.0, - -166055.0, - 4005.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal125_0": [ - 205824.0, - -156941.0, - 22062.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal126": [ - 144750.0, - -200675.0, - 2340.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal127": [ - 311190.03, - -109510.25, - 10724.021 - ], - "Persistent_Level:PersistentLevel.BP_Crystal129": [ - 241707.47, - -310696.75, - 6774.1396 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_10": [ - 114000.555, - -14367.73, - 16177.655 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_11": [ - 19407.186, - 247199.05, - 3313.398 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_12": [ - -39479.777, - 276042.22, - -2510.847 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_12002": [ - -63922.71, - -73395.67, - 17318.951 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_13": [ - -169210.9, - 75979.47, - 2371.7478 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_14": [ - 179796.0, - -53461.83, - 10519.624 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_15": [ - -177366.11, - -44370.0, - -1751.6202 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_17": [ - 132180.94, - 175558.17, - -2330.8184 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_43": [ - 46672.23, - 126416.23, - 13982.476 - ], - "Persistent_Level:PersistentLevel.BP_Crystal12_81": [ - 219926.45, - 85262.3, - -558.10736 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13": [ - -136605.64, - -184491.4, - 15780.985 - ], - "Persistent_Level:PersistentLevel.BP_Crystal132": [ - 286874.3, - -288896.12, - 4090.107 - ], - "Persistent_Level:PersistentLevel.BP_Crystal133_1": [ - 314684.66, - -102610.75, - 7744.4185 - ], - "Persistent_Level:PersistentLevel.BP_Crystal135": [ - 324586.12, - -53434.406, - 7148.3945 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_11": [ - 130110.73, - -26601.697, - 9200.427 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_12": [ - 43383.98, - 252867.47, - -116.9588 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_13": [ - -18183.18, - 263638.66, - 1988.0001 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_15": [ - 182197.64, - -74180.96, - 4147.188 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_16": [ - -164418.83, - -14323.57, - 6184.72 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_18": [ - -93863.54, - -22671.879, - 17598.025 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_19": [ - 127141.08, - 163916.67, - 2336.8953 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_44": [ - 53796.395, - 108946.54, - 11439.096 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_6": [ - 341344.53, - -65034.82, - 990.561 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_82": [ - 223798.28, - 99283.2, - 1474.2866 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_9": [ - 3858.9531, - -64057.215, - 15100.354 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_UAID_40B076DF2F79AC9B01_1616270112": [ - 358644.53, - -86414.82, - 2670.561 - ], - "Persistent_Level:PersistentLevel.BP_Crystal13_UAID_40B076DF2F79AD9B01_1733787293": [ - 332494.53, - -60519.82, - 1560.5609 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14": [ - -136480.89, - -168496.95, - 21128.541 - ], - "Persistent_Level:PersistentLevel.BP_Crystal141": [ - 241463.12, - -226396.4, - 1931.4822 - ], - "Persistent_Level:PersistentLevel.BP_Crystal146": [ - 373734.2, - -126247.19, - 5814.258 - ], - "Persistent_Level:PersistentLevel.BP_Crystal147": [ - 362440.62, - -91302.24, - 6712.676 - ], - "Persistent_Level:PersistentLevel.BP_Crystal148": [ - 365616.7, - -140135.55, - 4929.689 - ], - "Persistent_Level:PersistentLevel.BP_Crystal149": [ - 350117.66, - -96867.305, - 8058.1484 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_10": [ - 39872.59, - 1630.332, - 17326.092 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_12": [ - 96437.74, - -39584.137, - 10001.666 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_13": [ - 45527.07, - 226859.72, - 1279.475 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_14": [ - -18093.914, - 272198.4, - -5811.1675 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_15": [ - -176793.4, - 79807.555, - 12265.813 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_16": [ - 158493.34, - -56806.2, - 4905.3877 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_17": [ - -137331.92, - -51819.61, - 8182.5586 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_20": [ - 175704.48, - 225211.5, - -3270.128 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_8": [ - 311602.12, - -26395.63, - 410.8972 - ], - "Persistent_Level:PersistentLevel.BP_Crystal14_83": [ - 213707.53, - 85508.06, - 390.95963 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15": [ - -208851.84, - -151187.05, - 10257.613 - ], - "Persistent_Level:PersistentLevel.BP_Crystal150": [ - 362063.25, - -120811.84, - 8665.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal151": [ - 384480.25, - -133836.84, - 6067.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal152": [ - 398590.25, - -134013.84, - 5891.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal153": [ - 401055.25, - -144112.84, - 4978.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal154": [ - 406175.25, - -148723.84, - 7051.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal155": [ - 395150.25, - -118249.84, - 5637.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal156": [ - 363096.75, - -112040.69, - 6611.8267 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_10": [ - 335963.38, - -21416.771, - -1221.0155 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_11": [ - 55916.582, - -16435.72, - 13119.013 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_13": [ - 114624.34, - -46728.426, - 8321.584 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_15": [ - -4365.5977, - 290254.25, - 2358.4875 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_16": [ - -165979.27, - 186656.39, - 2318.092 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_17": [ - 212048.48, - -59077.625, - 19267.078 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_21": [ - 165282.28, - 181676.62, - -2581.2756 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_8": [ - -12630.0, - -77361.0, - 11183.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal15_84": [ - 238686.39, - 96476.97, - 893.24805 - ], - "Persistent_Level:PersistentLevel.BP_Crystal16": [ - 240040.55, - 80232.65, - -475.45895 - ], - "Persistent_Level:PersistentLevel.BP_Crystal16_10": [ - -43196.867, - -102532.73, - 2429.9458 - ], - "Persistent_Level:PersistentLevel.BP_Crystal16_11": [ - -10340.0, - -73590.0, - 11090.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal16_16": [ - -44644.91, - 229139.5, - 277.982 - ], - "Persistent_Level:PersistentLevel.BP_Crystal16_19": [ - -127715.01, - -83530.58, - 2464.6592 - ], - "Persistent_Level:PersistentLevel.BP_Crystal16_22": [ - 166726.6, - 203701.4, - -3605.7239 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17": [ - 47129.79, - -198733.47, - 913.603 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_14": [ - -8220.0, - -69410.0, - 10830.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_15": [ - 180559.9, - 189919.19, - -2922.4893 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_17": [ - -97705.35, - 200304.67, - 2836.0964 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_18": [ - 21591.125, - -84423.42, - 18499.773 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_20": [ - -124509.055, - -71728.24, - 1736.127 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79175C01_2025354360": [ - 92479.84, - -163998.53, - 2321.547 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79755B01_1333072849": [ - 33856.848, - -178774.53, - 972.54724 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79755B01_1353668850": [ - 21495.848, - -184695.53, - 2482.547 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79845B01_1828836491": [ - 45851.848, - -169786.53, - 1673.5472 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79875B01_2021256020": [ - 54722.848, - -163372.53, - 2696.547 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79F76301_1463908182": [ - 62991.848, - -213663.53, - 1912.5472 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79F76301_1548250183": [ - 54353.848, - -226059.53, - -1363.4528 - ], - "Persistent_Level:PersistentLevel.BP_Crystal18": [ - 229666.0, - 160136.0, - 7624.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal18_16": [ - 100489.69, - -112099.9, - 18312.457 - ], - "Persistent_Level:PersistentLevel.BP_Crystal18_18": [ - -56673.082, - 191128.58, - 402.45673 - ], - "Persistent_Level:PersistentLevel.BP_Crystal18_19": [ - 208618.66, - -58329.58, - 20899.201 - ], - "Persistent_Level:PersistentLevel.BP_Crystal18_22": [ - -229149.02, - -21167.883, - 4775.8486 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19": [ - -116191.49, - -160532.14, - 896.993 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19_17": [ - 183056.22, - 180707.56, - -4264.9004 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19_19": [ - -25938.31, - 147256.97, - 296.29694 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19_20": [ - 209177.83, - -56344.96, - 19244.805 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19_23": [ - -285158.53, - -61168.035, - -1267.362 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19_28": [ - -109870.516, - 69604.27, - 13389.176 - ], - "Persistent_Level:PersistentLevel.BP_Crystal19_8": [ - 40959.727, - -61444.035, - 11987.226 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_0": [ - -56825.72, - 234985.3, - -2647.9163 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_1": [ - -155397.75, - 210147.19, - -1543.5715 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_12": [ - -72107.36, - -47798.17, - 16772.719 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_17": [ - -225302.0, - 55320.945, - 1661.9325 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_2": [ - -210681.9, - 43083.86, - 10394.934 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_21": [ - 70481.96, - 77916.12, - 13007.944 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_227": [ - 64307.7, - 49429.277, - 31373.697 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_3": [ - 138339.56, - -45751.574, - 7938.698 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_6": [ - 112477.0, - 200649.56, - -5054.6626 - ], - "Persistent_Level:PersistentLevel.BP_Crystal1_87": [ - 229588.62, - 69717.06, - -1674.5791 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2": [ - -261667.19, - -191990.25, - -890.097 - ], - "Persistent_Level:PersistentLevel.BP_Crystal20": [ - -103164.98, - -120772.59, - 252.93231 - ], - "Persistent_Level:PersistentLevel.BP_Crystal20_18": [ - 178416.73, - 186707.52, - -4237.2344 - ], - "Persistent_Level:PersistentLevel.BP_Crystal20_20": [ - 37452.91, - 144081.03, - -7061.439 - ], - "Persistent_Level:PersistentLevel.BP_Crystal20_21": [ - -273273.4, - -64068.51, - 3103.3347 - ], - "Persistent_Level:PersistentLevel.BP_Crystal20_24": [ - 75580.24, - -126974.914, - 7007.2886 - ], - "Persistent_Level:PersistentLevel.BP_Crystal20_29": [ - -114214.49, - 72589.914, - 14877.124 - ], - "Persistent_Level:PersistentLevel.BP_Crystal21": [ - -140601.64, - -170183.73, - 9075.267 - ], - "Persistent_Level:PersistentLevel.BP_Crystal21_19": [ - 178835.8, - 182413.6, - -1657.2208 - ], - "Persistent_Level:PersistentLevel.BP_Crystal21_21": [ - 22570.844, - 274565.06, - 2791.6135 - ], - "Persistent_Level:PersistentLevel.BP_Crystal21_24": [ - -236733.42, - -38309.254, - -1621.807 - ], - "Persistent_Level:PersistentLevel.BP_Crystal21_26": [ - -116513.35, - 69434.734, - 14657.619 - ], - "Persistent_Level:PersistentLevel.BP_Crystal21_86": [ - 207370.83, - 92.19922, - -1131.45 - ], - "Persistent_Level:PersistentLevel.BP_Crystal22": [ - 96904.766, - 230776.31, - -3912.8518 - ], - "Persistent_Level:PersistentLevel.BP_Crystal22_22": [ - -110796.69, - 262232.22, - -6225.071 - ], - "Persistent_Level:PersistentLevel.BP_Crystal22_25": [ - -263224.16, - -16429.105, - 511.79767 - ], - "Persistent_Level:PersistentLevel.BP_Crystal22_27": [ - -113223.805, - 66523.98, - 13003.23 - ], - "Persistent_Level:PersistentLevel.BP_Crystal22_7": [ - 47501.26, - -126014.0, - 13866.263 - ], - "Persistent_Level:PersistentLevel.BP_Crystal23": [ - -104759.414, - -186988.69, - -1760.2001 - ], - "Persistent_Level:PersistentLevel.BP_Crystal23_15": [ - 140681.92, - 238884.94, - -11460.329 - ], - "Persistent_Level:PersistentLevel.BP_Crystal23_23": [ - -111111.99, - 223563.11, - 736.2029 - ], - "Persistent_Level:PersistentLevel.BP_Crystal23_26": [ - -298838.03, - -37510.715, - 710.839 - ], - "Persistent_Level:PersistentLevel.BP_Crystal24": [ - -147412.14, - -175893.66, - 10486.559 - ], - "Persistent_Level:PersistentLevel.BP_Crystal24_0": [ - -183688.08, - 16111.887, - 5582.671 - ], - "Persistent_Level:PersistentLevel.BP_Crystal24_16": [ - 125413.79, - 237617.12, - -10840.666 - ], - "Persistent_Level:PersistentLevel.BP_Crystal24_24": [ - 3924.8203, - 191567.1, - -5231.451 - ], - "Persistent_Level:PersistentLevel.BP_Crystal24_25": [ - -117464.664, - 65317.418, - 13399.857 - ], - "Persistent_Level:PersistentLevel.BP_Crystal25": [ - -112208.234, - -148938.62, - 3780.093 - ], - "Persistent_Level:PersistentLevel.BP_Crystal25_17": [ - 135814.86, - 248732.38, - -16827.201 - ], - "Persistent_Level:PersistentLevel.BP_Crystal25_21": [ - -113645.195, - 148049.31, - 6218.9014 - ], - "Persistent_Level:PersistentLevel.BP_Crystal25_25": [ - -35282.46, - 167057.25, - 2545.9397 - ], - "Persistent_Level:PersistentLevel.BP_Crystal26": [ - 132609.92, - 232404.17, - -14229.362 - ], - "Persistent_Level:PersistentLevel.BP_Crystal26_26": [ - -70297.375, - 292339.22, - -6331.5674 - ], - "Persistent_Level:PersistentLevel.BP_Crystal26_32": [ - -139446.9, - 130393.4, - 9832.525 - ], - "Persistent_Level:PersistentLevel.BP_Crystal27": [ - -160088.7, - -163807.92, - 14626.839 - ], - "Persistent_Level:PersistentLevel.BP_Crystal27_18": [ - 132077.66, - 248280.55, - -10341.488 - ], - "Persistent_Level:PersistentLevel.BP_Crystal27_22": [ - -97120.805, - 97881.11, - 12218.879 - ], - "Persistent_Level:PersistentLevel.BP_Crystal27_27": [ - -54543.355, - 270830.2, - -1451.7241 - ], - "Persistent_Level:PersistentLevel.BP_Crystal28": [ - -206358.69, - -195657.0, - -1391.2119 - ], - "Persistent_Level:PersistentLevel.BP_Crystal28_23": [ - -124469.99, - 84572.625, - 7208.099 - ], - "Persistent_Level:PersistentLevel.BP_Crystal28_28": [ - -78244.07, - 270755.12, - -3966.4895 - ], - "Persistent_Level:PersistentLevel.BP_Crystal29": [ - -192704.4, - -147394.36, - 3606.22 - ], - "Persistent_Level:PersistentLevel.BP_Crystal29_24": [ - -135682.16, - 72159.06, - 8200.43 - ], - "Persistent_Level:PersistentLevel.BP_Crystal29_29": [ - -24539.87, - 214616.1, - -3446.3796 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_0": [ - 128183.65, - -94789.586, - 4200.3936 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_1": [ - 39006.38, - 84525.22, - 14359.439 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_2": [ - 6632.5, - 292644.25, - 1160.9963 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_21": [ - -210904.12, - 138994.64, - -579.3234 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_228": [ - 47248.094, - 68395.61, - 31465.447 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_2780": [ - -101136.0, - -37459.0, - 15237.252 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_3": [ - -149928.81, - 171000.31, - 3607.4424 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_6": [ - -273618.2, - -93543.74, - -840.8454 - ], - "Persistent_Level:PersistentLevel.BP_Crystal2_7": [ - 189389.02, - 200749.2, - 3491.1284 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3": [ - -227221.92, - -144439.97, - 4639.64 - ], - "Persistent_Level:PersistentLevel.BP_Crystal30": [ - -195441.78, - -139536.6, - 2677.5073 - ], - "Persistent_Level:PersistentLevel.BP_Crystal30_3": [ - -11948.367, - 302673.12, - -1881.1642 - ], - "Persistent_Level:PersistentLevel.BP_Crystal30_30": [ - -105264.65, - 83190.83, - 13173.2295 - ], - "Persistent_Level:PersistentLevel.BP_Crystal31": [ - -161214.64, - 93264.586, - 9840.022 - ], - "Persistent_Level:PersistentLevel.BP_Crystal31_6": [ - -165206.11, - -147209.64, - 3963.7983 - ], - "Persistent_Level:PersistentLevel.BP_Crystal31_7": [ - -12908.094, - 291933.8, - -1779.2649 - ], - "Persistent_Level:PersistentLevel.BP_Crystal32": [ - -68347.01, - 170998.58, - 786.83405 - ], - "Persistent_Level:PersistentLevel.BP_Crystal32_11": [ - -54766.41, - 283464.6, - -1426.6381 - ], - "Persistent_Level:PersistentLevel.BP_Crystal32_7": [ - -182317.94, - -150281.08, - 2007.3623 - ], - "Persistent_Level:PersistentLevel.BP_Crystal33": [ - -176828.28, - -143189.56, - 5312.57 - ], - "Persistent_Level:PersistentLevel.BP_Crystal33_9": [ - -115731.22, - 238883.52, - -4679.345 - ], - "Persistent_Level:PersistentLevel.BP_Crystal34": [ - -87052.05, - 276875.28, - -3049.3562 - ], - "Persistent_Level:PersistentLevel.BP_Crystal34_2": [ - -160825.31, - 75737.53, - 5015.202 - ], - "Persistent_Level:PersistentLevel.BP_Crystal34_21": [ - -252341.73, - -129725.57, - 8113.981 - ], - "Persistent_Level:PersistentLevel.BP_Crystal35": [ - -91820.11, - 249822.17, - -3181.3743 - ], - "Persistent_Level:PersistentLevel.BP_Crystal35_5": [ - -181215.81, - 76729.66, - 17784.416 - ], - "Persistent_Level:PersistentLevel.BP_Crystal36": [ - -15141.168, - 218878.7, - 232.74457 - ], - "Persistent_Level:PersistentLevel.BP_Crystal36_23": [ - -110938.25, - -141243.06, - -528.7317 - ], - "Persistent_Level:PersistentLevel.BP_Crystal37": [ - -39678.31, - 213270.62, - -426.41428 - ], - "Persistent_Level:PersistentLevel.BP_Crystal37_24": [ - -197509.2, - -145895.97, - 1994.256 - ], - "Persistent_Level:PersistentLevel.BP_Crystal38": [ - -187639.73, - -143409.95, - -1236.2875 - ], - "Persistent_Level:PersistentLevel.BP_Crystal38_2": [ - 167795.0, - 97575.0, - 6007.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal39": [ - -191989.88, - -165497.03, - -2998.4216 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_1": [ - 8995.977, - -144952.48, - 505.48523 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_13": [ - -42609.598, - -37552.49, - 18913.586 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_14": [ - 101580.31, - 124437.34, - 10567.385 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_15": [ - 61847.523, - 216669.44, - -1128.7318 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_19": [ - -216108.52, - 112516.516, - -689.4234 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_2": [ - 53704.086, - -80022.12, - 12783.221 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_234": [ - -589.71094, - 118437.85, - 23006.326 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_3": [ - -64958.645, - 268214.0, - -3016.98 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_4": [ - -178837.1, - 131313.02, - 3782.475 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_5": [ - -107121.516, - -43626.36, - 3303.2363 - ], - "Persistent_Level:PersistentLevel.BP_Crystal3_8": [ - 207259.58, - 203801.1, - 8445.433 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4": [ - -216556.97, - -164256.03, - -1791.913 - ], - "Persistent_Level:PersistentLevel.BP_Crystal40": [ - -148951.66, - -104096.945, - 1976.4744 - ], - "Persistent_Level:PersistentLevel.BP_Crystal41": [ - -267650.56, - -140337.7, - 6370.2627 - ], - "Persistent_Level:PersistentLevel.BP_Crystal42": [ - -180197.23, - -135956.1, - -1722.7019 - ], - "Persistent_Level:PersistentLevel.BP_Crystal43": [ - -149454.84, - -145816.61, - 7390.6562 - ], - "Persistent_Level:PersistentLevel.BP_Crystal44": [ - 29162.51, - 110840.06, - -8772.746 - ], - "Persistent_Level:PersistentLevel.BP_Crystal45": [ - -116580.08, - -174837.42, - 5764.5117 - ], - "Persistent_Level:PersistentLevel.BP_Crystal46": [ - -152341.56, - -172703.92, - 18053.81 - ], - "Persistent_Level:PersistentLevel.BP_Crystal47": [ - -136411.9, - -184600.89, - 25884.15 - ], - "Persistent_Level:PersistentLevel.BP_Crystal48": [ - 252111.44, - -204393.73, - 1602.1172 - ], - "Persistent_Level:PersistentLevel.BP_Crystal49": [ - 340376.8, - -190603.39, - 4548.2305 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_0": [ - -3712.3047, - 78149.086, - 21871.273 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_3": [ - 88076.74, - 137502.52, - 10776.343 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_3771": [ - -72765.95, - -66349.9, - 15571.041 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_4": [ - 10973.121, - 292828.78, - 3545.1318 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_5": [ - -180206.97, - 108188.75, - 11441.1045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_6": [ - 103335.766, - -125395.89, - -686.1144 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_7": [ - -213660.58, - -68965.27, - 78.11396 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_73": [ - 212703.0, - 68577.945, - -1664.8247 - ], - "Persistent_Level:PersistentLevel.BP_Crystal4_9": [ - 194376.39, - 193846.62, - -1886.0355 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5": [ - -193556.16, - -96514.07, - -290.72894 - ], - "Persistent_Level:PersistentLevel.BP_Crystal50": [ - 351188.56, - -205182.97, - 4452.5034 - ], - "Persistent_Level:PersistentLevel.BP_Crystal51": [ - -2433.336, - -89074.38, - 16375.678 - ], - "Persistent_Level:PersistentLevel.BP_Crystal52": [ - 381563.7, - -208871.1, - 5197.338 - ], - "Persistent_Level:PersistentLevel.BP_Crystal53": [ - 364227.75, - -210000.67, - 4050.9766 - ], - "Persistent_Level:PersistentLevel.BP_Crystal54": [ - 377438.6, - -186364.34, - 5812.2583 - ], - "Persistent_Level:PersistentLevel.BP_Crystal55": [ - 354541.06, - -215740.6, - 4586.024 - ], - "Persistent_Level:PersistentLevel.BP_Crystal56_4": [ - 163254.0, - -198418.0, - 14214.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal57_0": [ - -126519.445, - 136940.02, - 5168.3984 - ], - "Persistent_Level:PersistentLevel.BP_Crystal58": [ - 356875.5, - -129668.32, - 4867.3457 - ], - "Persistent_Level:PersistentLevel.BP_Crystal59": [ - 311589.8, - -112250.375, - 6358.4653 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_10": [ - 137129.22, - 162099.53, - -4670.596 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_15": [ - 124923.9, - 117905.01, - 10145.36 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_4": [ - 53966.715, - -43188.22, - 15948.525 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_5": [ - 14158.352, - 277845.03, - -5275.7305 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_5126": [ - -59718.746, - -21522.09, - 18939.73 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_6": [ - -90366.734, - 54629.61, - 3794.1897 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_8": [ - -263272.44, - -74855.67, - -1639.2874 - ], - "Persistent_Level:PersistentLevel.BP_Crystal5_9": [ - 26660.062, - 40204.46, - 22600.861 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6": [ - -136276.2, - -113776.45, - 2834.9456 - ], - "Persistent_Level:PersistentLevel.BP_Crystal60": [ - 121986.05, - -60568.375, - 8123.9233 - ], - "Persistent_Level:PersistentLevel.BP_Crystal61": [ - 374722.47, - -217658.97, - 4357.34 - ], - "Persistent_Level:PersistentLevel.BP_Crystal62": [ - 7206.1953, - -84186.04, - 10442.335 - ], - "Persistent_Level:PersistentLevel.BP_Crystal63": [ - -136888.16, - 162494.6, - 721.9018 - ], - "Persistent_Level:PersistentLevel.BP_Crystal65": [ - 43200.582, - 57778.57, - 13030.284 - ], - "Persistent_Level:PersistentLevel.BP_Crystal66_3": [ - 37112.0, - 30624.154, - 8911.246 - ], - "Persistent_Level:PersistentLevel.BP_Crystal67": [ - 71638.23, - -47006.414, - 14106.417 - ], - "Persistent_Level:PersistentLevel.BP_Crystal68": [ - 219580.39, - -176569.75, - 4903.713 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_11": [ - 169976.1, - 194629.6, - -7903.7725 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_14": [ - -18249.994, - -48836.375, - 15741.612 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_2": [ - -35294.98, - -141966.38, - 10443.393 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_5": [ - 94680.72, - -24578.256, - 5884.416 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_6": [ - 11639.086, - 278218.03, - -5134.7666 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_7": [ - -155578.89, - 99241.23, - 13744.423 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_76": [ - 245766.12, - 48679.844, - -1349.943 - ], - "Persistent_Level:PersistentLevel.BP_Crystal6_9": [ - -229637.6, - -20539.408, - -1908.8685 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7": [ - -220728.98, - -129010.15, - 4906.938 - ], - "Persistent_Level:PersistentLevel.BP_Crystal70": [ - 14540.031, - -82989.234, - 12499.298 - ], - "Persistent_Level:PersistentLevel.BP_Crystal72": [ - 77700.195, - -91564.56, - 15886.942 - ], - "Persistent_Level:PersistentLevel.BP_Crystal73": [ - 283018.9, - -44040.8, - 6246.096 - ], - "Persistent_Level:PersistentLevel.BP_Crystal74": [ - 313923.2, - -79801.27, - 5641.2993 - ], - "Persistent_Level:PersistentLevel.BP_Crystal75": [ - 95408.95, - -17844.291, - 15506.842 - ], - "Persistent_Level:PersistentLevel.BP_Crystal76": [ - 283151.97, - -125203.4, - 2752.6106 - ], - "Persistent_Level:PersistentLevel.BP_Crystal77": [ - 218984.17, - 74573.07, - -1287.9694 - ], - "Persistent_Level:PersistentLevel.BP_Crystal78": [ - 325468.62, - -81765.99, - 5739.1777 - ], - "Persistent_Level:PersistentLevel.BP_Crystal79": [ - 272739.62, - -164523.36, - 4244.916 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_10": [ - -205601.66, - -27120.695, - 12254.885 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_11": [ - -6016.7617, - 14170.879, - 29140.527 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_12": [ - 136433.47, - 205189.27, - -8365.321 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_16": [ - -33544.875, - -79359.22, - 784.2699 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_5": [ - 71777.04, - -32929.453, - 19807.615 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_6": [ - 99866.98, - -64275.953, - 15056.084 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_7": [ - 10052.9375, - 276179.97, - -5657.832 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_75": [ - 246631.03, - 35136.355, - -1285.2377 - ], - "Persistent_Level:PersistentLevel.BP_Crystal7_8": [ - -128699.984, - 117703.7, - 7809.872 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8": [ - -237526.17, - -154960.77, - 13809.399 - ], - "Persistent_Level:PersistentLevel.BP_Crystal80": [ - 336706.22, - -95975.73, - 5910.1655 - ], - "Persistent_Level:PersistentLevel.BP_Crystal81": [ - 299931.38, - -183532.84, - 3582.6455 - ], - "Persistent_Level:PersistentLevel.BP_Crystal82": [ - 346188.2, - -209789.61, - 4461.899 - ], - "Persistent_Level:PersistentLevel.BP_Crystal83": [ - 225006.86, - 77164.414, - -704.56195 - ], - "Persistent_Level:PersistentLevel.BP_Crystal84": [ - 266139.5, - -146164.27, - 4396.9937 - ], - "Persistent_Level:PersistentLevel.BP_Crystal86": [ - 4580.8633, - 197112.61, - 906.5503 - ], - "Persistent_Level:PersistentLevel.BP_Crystal87": [ - 360868.88, - -233573.61, - 4618.6987 - ], - "Persistent_Level:PersistentLevel.BP_Crystal88": [ - 235814.58, - -187735.69, - 1207.921 - ], - "Persistent_Level:PersistentLevel.BP_Crystal89": [ - 234296.58, - -200231.45, - 1536.1064 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_10": [ - 63291.566, - -154307.62, - 9753.73 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_11": [ - -173585.47, - -78947.98, - 4678.6445 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_12": [ - -38396.25, - -117359.49, - 7935.118 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_13": [ - 152137.75, - 165805.92, - 236.88774 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_17": [ - -47812.61, - -79782.54, - 18904.188 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_4": [ - 48053.902, - 50744.195, - 24675.572 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_7": [ - 117109.164, - -28657.277, - 11723.147 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_77": [ - 234864.47, - 50019.594, - -1668.7698 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_8": [ - 11884.516, - 276436.94, - -5037.339 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_9": [ - -86889.63, - 45067.34, - 3570.4258 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9": [ - -237200.12, - -186283.69, - -136.94246 - ], - "Persistent_Level:PersistentLevel.BP_Crystal90": [ - 318095.34, - -230797.17, - 3620.99 - ], - "Persistent_Level:PersistentLevel.BP_Crystal91": [ - 335850.28, - -157788.73, - 4132.516 - ], - "Persistent_Level:PersistentLevel.BP_Crystal93": [ - 127045.0, - -183015.0, - 5565.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal93_2": [ - 170655.0, - -202645.0, - 17622.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal94_8": [ - 260947.67, - -82120.734, - 7029.1025 - ], - "Persistent_Level:PersistentLevel.BP_Crystal96": [ - 157593.0, - -172494.0, - 8384.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal97": [ - 364325.22, - -160358.77, - 7239.644 - ], - "Persistent_Level:PersistentLevel.BP_Crystal98": [ - 51976.86, - 34516.695, - 21532.992 - ], - "Persistent_Level:PersistentLevel.BP_Crystal98_9": [ - 222225.33, - -192076.67, - 1372.5131 - ], - "Persistent_Level:PersistentLevel.BP_Crystal99": [ - 51492.957, - 23385.652, - 19466.76 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_10": [ - -96647.5, - 51528.098, - 2483.954 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_11": [ - 40511.72, - -156265.25, - 6092.776 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_12": [ - -268982.2, - 9244.57, - 26.374756 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_14": [ - 105235.47, - 233314.47, - -2223.5198 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_19": [ - 54318.344, - 56207.945, - 20087.506 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_78": [ - 238902.28, - 69953.695, - -1654.9918 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_8": [ - 128884.56, - -17680.281, - 14242.174 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_8928": [ - -24255.652, - -52936.21, - 15622.702 - ], - "Persistent_Level:PersistentLevel.BP_Crystal9_9": [ - 13037.977, - 275406.0, - -5643.6885 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_2": [ - -46997.945, - -175082.5, - 2661.6582 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_5": [ - -11880.0, - -75670.0, - 9999.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_8": [ - 221544.0, - 131718.0, - -2001.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_0": [ - -7210.0, - -72590.0, - 9390.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_1": [ - -21927.062, - -123522.38, - 11088.021 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_10": [ - 77392.625, - 189828.25, - 2239.0798 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_100": [ - 332898.8, - -246819.23, - 6805.6865 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_101": [ - 380984.4, - -283542.53, - 2016.886 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_11": [ - 58803.664, - 190303.56, - 3287.8074 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_12": [ - 43542.254, - 161856.55, - -1568.429 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_13": [ - 68007.445, - 6850.5664, - 13419.423 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_14": [ - 14300.926, - 1997.2305, - 23354.48 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_15": [ - 68995.88, - -73351.41, - 12584.93 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_16": [ - 27496.049, - -99943.53, - 12243.346 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_17": [ - 13100.18, - -41116.895, - 13983.938 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_18": [ - 36057.53, - -55722.387, - 15536.595 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_19": [ - 33208.605, - -62276.89, - 6328.196 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_2": [ - -17753.664, - -166056.88, - 720.50586 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_20": [ - 54186.293, - -65394.02, - 6283.3823 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_21": [ - 52440.508, - -51877.047, - 9318.647 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_22": [ - 54282.03, - -60321.594, - 9871.851 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_23": [ - 37705.992, - -39334.984, - 13521.953 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_24": [ - 100095.766, - -231.20312, - 19207.748 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_25": [ - 89988.664, - -1540.0977, - 17381.37 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_26": [ - 16118.184, - -112630.016, - 16250.09 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_27": [ - 7229.34, - -131490.61, - 13971.379 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_28": [ - 68513.266, - -106230.16, - 10610.042 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_29": [ - 47910.72, - -182549.47, - 812.7281 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_3": [ - -27513.94, - -213250.61, - 3130.4526 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_30": [ - 31548.535, - -168083.34, - -1163.9346 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_31": [ - 33274.504, - -162993.84, - 1598.879 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_32": [ - 63725.95, - -157832.08, - 4032.5293 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_33": [ - 26534.402, - -227792.45, - 1685.1962 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_34": [ - 123342.85, - 136007.12, - 11009.132 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_35": [ - 184977.55, - 184736.66, - -2015.046 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_38": [ - 180344.0, - 126586.0, - 11567.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_39": [ - 185849.0, - 111911.0, - 14296.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_4": [ - 8526.066, - -199634.36, - 798.76587 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_41": [ - 166036.0, - 116547.0, - 9841.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_43": [ - 165838.0, - 141362.0, - 9845.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_47": [ - 128172.34, - 91505.63, - 14046.78 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_5": [ - 25539.383, - 216946.16, - -2490.8435 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_51": [ - 181598.88, - 85971.15, - 9224.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_52": [ - 147771.0, - 80510.0, - 13465.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_53": [ - 179371.0, - 73733.0, - 4290.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_54": [ - 109484.54, - -22975.252, - 10756.798 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_55": [ - 101963.1, - -88116.21, - 14033.301 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_56": [ - 101700.62, - -52767.035, - 9023.916 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_57": [ - 202542.72, - -44483.375, - 4890.4297 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_58": [ - 138690.0, - -181345.0, - 3505.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_59": [ - 112282.98, - -197084.88, - -1322.0344 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_6": [ - 34667.652, - 215761.17, - -5369.7812 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_60": [ - 28429.875, - -212599.62, - -1756.044 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_61": [ - 137737.73, - -146279.0, - 2754.6543 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_63": [ - 189073.0, - -286000.0, - 17916.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_64": [ - 162965.0, - -269125.0, - 12110.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_68": [ - 212810.0, - 192285.0, - 12650.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_7": [ - 76367.72, - 227611.03, - 4363.7085 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_74": [ - 220790.0, - 129840.0, - 9040.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_75": [ - 231636.2, - 94324.664, - 3983.2988 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_76": [ - 218619.3, - 82222.02, - -595.3711 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_77": [ - 227422.89, - 87136.5, - -927.0059 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_78": [ - 206735.44, - 79105.75, - -889.4602 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_79": [ - 237021.02, - 60782.33, - -1667.0403 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_8": [ - 88404.12, - 202261.19, - 717.3575 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_80": [ - 211427.58, - -56340.133, - 19434.26 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_81": [ - 213452.38, - -60481.664, - 20010.03 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_82": [ - 210323.61, - -26245.78, - 7598.6904 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_83": [ - 207552.5, - -30936.193, - 8330.704 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_84": [ - 205059.06, - -41001.125, - 2516.8054 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_85": [ - 207376.2, - -20683.896, - 2469.1987 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_86": [ - 210337.23, - -28393.047, - 1371.4264 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_87": [ - 211441.25, - -20922.588, - 6361.8213 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_88": [ - 204080.05, - -24318.11, - 54.506042 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_89": [ - 206078.22, - -12988.08, - 4165.0737 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_9": [ - 94290.81, - 191764.33, - 6766.434 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_90": [ - 258399.0, - -109979.51, - 5797.5107 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_91": [ - 258012.95, - -253608.89, - 7161.7515 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_92": [ - 248768.81, - -252499.23, - 1279.0703 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_93": [ - 275134.97, - -276672.53, - 8503.906 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_94": [ - 216565.0, - -301215.0, - 16625.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_96": [ - 306024.03, - -47557.5, - 5785.5425 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_97": [ - 378908.94, - -141010.64, - 4787.1997 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_98": [ - 329779.44, - -117571.984, - 7559.137 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_99": [ - 318921.66, - -188063.75, - 4238.4507 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F006B101_2082315136": [ - 213060.0, - -107089.0, - 8812.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F007B101_1247933313": [ - 223585.0, - -92053.0, - 1440.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F007B101_1510242320": [ - 243257.0, - -63569.0, - 6945.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0217201_1462011415": [ - -95903.0, - 8243.0, - 22013.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0217201_2134786423": [ - -94414.0, - 8679.0, - 21705.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0245C01_1792102668": [ - 196708.0, - -261893.0, - 947.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0277201_2091967520": [ - -92948.0, - 7469.0, - 23110.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F02B7201_1774057258": [ - -93807.0, - 6182.0, - 20619.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F02C6001_1338841280": [ - 207905.0, - -167378.0, - 16879.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F02C6001_1557408281": [ - 221659.0, - -204572.0, - 14370.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F02C6001_1622416282": [ - 209102.0, - -231180.0, - 16946.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0316001_1179996182": [ - 160918.3, - -129496.28, - 15386.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0355B01_2005222588": [ - 204021.0, - -240579.0, - 24584.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0375B01_1529908943": [ - 201898.0, - -266576.0, - 6173.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0395B01_1557158296": [ - 192732.0, - -173452.0, - 23641.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0395B01_1742920298": [ - 183494.0, - -194858.0, - 23854.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F03A5B01_1333253475": [ - 194457.0, - -213998.0, - 23474.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F03B5B01_1299814658": [ - 206170.0, - -198008.0, - 23403.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F03B5B01_1622325660": [ - 148068.0, - -187028.0, - 10405.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0439B01_1646991632": [ - -193643.0, - -78730.0, - 1088.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F04C5E01_2099362813": [ - 127405.0, - -154675.0, - 16610.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05A7301_2035634448": [ - -93358.0, - 9641.0, - 22301.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05D5D01_2007016764": [ - 228632.0, - 106588.0, - 5556.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05E5D01_1095164941": [ - 228323.0, - 109351.0, - 8098.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05F5301_1878669572": [ - 159805.0, - -283795.0, - 16441.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0605301_1273983749": [ - 158746.0, - -261100.0, - 1394.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0615301_1117010932": [ - 169548.0, - -181645.0, - 20626.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0655D01_1109507179": [ - 160647.0, - 143586.0, - 8072.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0675D01_1725830534": [ - 214651.0, - 113982.0, - 10739.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F06C5C01_1356614339": [ - 219571.0, - 111317.0, - 5147.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F06E5D01_1646682771": [ - 181293.0, - 149901.0, - 8525.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0766701_1589843752": [ - -14306.0, - -21528.0, - 16210.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0766701_1663177753": [ - -13871.0, - -23374.0, - 15569.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0766701_1707460754": [ - -14725.0, - -21597.0, - 14980.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0766701_1729573755": [ - -15164.98, - -23013.926, - 14497.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0766701_1842097756": [ - -16440.0, - -21683.0, - 16020.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0775B01_1420184201": [ - 156985.0, - -188437.0, - 7352.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0775B01_1580171202": [ - 110997.0, - -169301.0, - 521.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0785B01_1425075382": [ - 141507.0, - -162513.0, - 2480.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0795B01_1115579560": [ - 124997.0, - -143352.0, - 2062.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0795B01_1706418562": [ - 110606.0, - -154488.0, - 4514.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F079AF01_2086299378": [ - 17087.0, - -151959.0, - 3057.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F07B6001_2100568184": [ - 180478.0, - -125915.0, - 17418.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0805B01_1369679802": [ - 123754.0, - -182009.0, - 1902.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0815B01_1784184985": [ - 133485.0, - -147639.0, - 6667.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0825B01_1553698166": [ - 115145.0, - -165203.0, - 3668.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0825B01_1706644167": [ - 145351.0, - -186760.0, - 1906.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F09E6901_1553651856": [ - -246584.0, - 50205.0, - 977.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A05F01_1896752643": [ - 205340.0, - -135650.0, - 18455.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A57401_1817017698": [ - 188670.0, - -9447.0, - 16640.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A57401_2054736699": [ - 190307.0, - -7889.0, - 16305.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A57401_2106808700": [ - 191676.0, - -10331.0, - 16377.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A67401_1113792877": [ - 190268.0, - -12429.0, - 17360.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A67401_1901138878": [ - 100061.0, - 60654.0, - 22600.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A67401_1962658879": [ - 96212.0, - 63600.0, - 22345.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A67401_2008955880": [ - 95950.0, - 60899.0, - 22448.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A67401_2137612882": [ - 97846.0, - 56929.0, - 22733.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A77401_1114044059": [ - 99450.0, - 58688.0, - 21949.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A77401_2134624060": [ - 139741.0, - -9295.0, - 21217.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A87401_1178078237": [ - 136605.0, - -8650.0, - 21781.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A87401_1211555238": [ - 136496.0, - -6285.0, - 21844.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A87401_1304279239": [ - 140384.0, - -7876.0, - 21091.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0A87401_1376559241": [ - 139727.0, - -7445.0, - 21396.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AA5201_1287975681": [ - 194737.0, - -186699.0, - 23570.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AA7401_1909401594": [ - 184587.0, - 37045.0, - 23154.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AA7401_1919713595": [ - 181321.0, - 38823.0, - 21110.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AA7401_2076003597": [ - 184000.0, - 37967.0, - 20988.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AB5201_1104409861": [ - 195348.0, - -187881.0, - 24109.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AC5201_1696194044": [ - 203915.0, - -284267.0, - 10054.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AE5D01_1835696000": [ - 183085.0, - 164584.0, - 9245.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AE7301_1502060226": [ - 191620.0, - -11873.0, - 16837.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AF7401_1381809479": [ - 182270.0, - 36358.0, - 20725.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AF7401_1394094480": [ - 182291.0, - 40591.0, - 21012.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0B3AF01_1789903464": [ - 66153.0, - -134287.0, - 679.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0BF5D01_1402621031": [ - 128003.0, - -144472.0, - 15763.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0C7AF01_1736399985": [ - -65336.0, - -154298.0, - -195.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0D45B01_1751130579": [ - 109665.0, - -180967.0, - 4012.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0DD5B01_1562001181": [ - 148511.0, - -172218.0, - 3923.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0E85F01_1421899313": [ - 200225.0, - -183930.0, - 26734.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0E85F01_1933315318": [ - 227180.0, - -278348.0, - 24722.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0E95F01_1231921499": [ - 211232.0, - -283751.0, - 30679.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0EA5F01_1564806683": [ - 157574.0, - -125909.0, - 9353.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0EC5F01_1293213040": [ - 175746.0, - -124768.0, - 10608.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0F25F01_1725349098": [ - 204175.0, - -225007.0, - 23533.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0F35F01_1247028277": [ - 204012.0, - -249790.0, - 16103.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0F45F01_1549163457": [ - 145980.0, - -150526.67, - 18421.967 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79066401_1370998836": [ - -68178.28, - -188867.06, - -1138.574 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F790A6401_1480408547": [ - -39355.934, - -189929.36, - 2914.7659 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79226201_1519973634": [ - 131291.73, - -145159.0, - 2044.6542 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79265B01_1210582944": [ - 32860.875, - -239912.62, - 1056.8234 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79275B01_1177099121": [ - 20890.268, - -248994.36, - 1810.723 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79285B01_1944304298": [ - 74251.875, - -230382.62, - -135.17662 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F792A8701_1662356113": [ - -59465.0, - -109540.0, - 3360.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F792D6001_1825806456": [ - 47033.0, - -153055.0, - 14990.402 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F792E6001_1313258633": [ - 35933.0, - -162478.0, - 18702.402 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F792E6001_2033315634": [ - 47189.0, - -169433.0, - 21354.402 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F792F6001_1132971811": [ - 27934.0, - -162468.0, - 13921.402 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F792F6001_1856291813": [ - 92804.0, - -173763.0, - 18656.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79306001_1695738994": [ - 96360.0, - -157740.0, - 15840.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79355B01_1612365590": [ - 91911.875, - -210864.62, - 1053.8234 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79386001_2015526406": [ - -20892.0, - -199472.0, - 14133.402 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F793A8701_1412502928": [ - 93840.0, - -34320.0, - 7100.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79486001_1490105224": [ - -12887.732, - -226797.36, - 1635.723 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79486001_1737515225": [ - -63859.902, - -217728.62, - 3088.124 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79486001_1870504226": [ - -52581.938, - -215583.61, - 2879.4526 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79486401_1444694438": [ - 89953.0, - -151456.0, - 3778.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79496001_1203214406": [ - -61758.938, - -208868.61, - -1239.5474 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79496001_1424029408": [ - -65375.89, - -196565.1, - 172.93195 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79625301_1884959066": [ - -35998.938, - -242815.61, - 190.45264 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79685201_1807114065": [ - 22904.771, - -168540.92, - -1049.6093 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F796C8301_1303426504": [ - 21985.0, - 169795.0, - -11810.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F796D5201_1366229946": [ - 28911.771, - -179324.92, - -1069.6093 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79738301_1767542746": [ - -4060.0, - 147800.0, - -7030.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F798B5F01_1501465945": [ - -48093.938, - -246384.61, - -399.54736 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F798B5F01_1548531946": [ - -57982.938, - -202456.61, - 357.45264 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79955F01_1408102760": [ - -39206.938, - -198515.61, - 8225.453 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F799E5F01_1400742291": [ - 83988.0, - -199980.0, - -595.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F799E5F01_1682598293": [ - 96126.0, - -208506.0, - 6984.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79A65901_1120267361": [ - 19528.875, - -219605.62, - -1787.1766 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79A75901_1341271538": [ - 34920.875, - -220348.62, - -1701.1766 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79B36201_1122808154": [ - 55250.0, - -168119.0, - -539.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79B36201_1823459155": [ - 40619.0, - -181290.0, - -1191.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79B46201_1396705333": [ - 33965.0, - -230994.0, - -785.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79BB6201_1894786568": [ - 15760.268, - -233958.36, - -1129.277 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79C66201_1113882509": [ - 14699.771, - -176179.92, - -1197.6093 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79C66201_1961069510": [ - 16652.771, - -190923.92, - -985.6092 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79C96201_2035056042": [ - -13969.934, - -180298.36, - -1368.2341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79CB6201_1168596395": [ - -14339.934, - -199165.36, - -1422.2341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79CC6201_1413653574": [ - -37160.934, - -172970.36, - 1608.7659 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79CC6201_1521305575": [ - -41054.934, - -202378.36, - 2636.7659 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79D38101_2011951550": [ - 322367.34, - -292843.38, - -878.4017 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F25F01_1763105083": [ - 63183.0, - -162727.0, - 19365.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F25F01_2029785085": [ - 61387.0, - -157028.0, - 16611.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F35F01_1129500264": [ - 59145.0, - -164158.0, - 18594.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F35F01_1275724266": [ - 82842.0, - -160989.0, - 20260.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F35F01_1502667268": [ - 92401.0, - -151363.0, - 21179.598 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F76301_1288406181": [ - 9780.268, - -220133.36, - -908.2769 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_4CEDFB3E2F7F8B9201_1239800812": [ - 168431.62, - 78660.0, - 1260.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_4CEDFB3E2F7F8B9201_1242129813": [ - 160960.0, - 79690.0, - 1760.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_4CEDFB3E2F7F8B9201_1243912814": [ - 174293.44, - 76533.81, - -1155.7365 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_UAID_40B076DF2F79065901_1178046200": [ - -42185.58, - -248433.97, - 1620.755 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_UAID_40B076DF2F79425901_1727560760": [ - -45922.625, - -232262.8, - 387.77954 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_UAID_40B076DF2F79BF5D01_1163546993": [ - -27168.625, - -238411.8, - -1518.1654 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_UAID_40B076DF2F79FD6301_2028775242": [ - -16073.625, - -240292.8, - -1476.1654 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk16": [ - 84698.69, - -225472.73, - 1743.9923 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk17": [ - 88785.11, - -211268.8, - -1329.7723 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk17_UAID_40B076DF2F79036301_1202643250": [ - 79880.11, - -210492.8, - -1212.7723 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_11": [ - 226306.02, - -223188.38, - 5126.027 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_2": [ - -4190.004, - -210862.3, - -1383.1389 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F007B101_1436486318": [ - 221677.0, - -77772.0, - 10489.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0958101_1177712657": [ - -97215.0, - 18665.0, - 20330.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F79006401_1101274773": [ - -7853.004, - -228178.3, - -1773.1389 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_31": [ - 209182.25, - -33151.83, - 4346.1816 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45": [ - 115470.414, - -145759.39, - 1624.955 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F790D6301_1205856025": [ - 102686.414, - -149908.39, - -1428.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79106201_1437870469": [ - 125449.414, - -149826.39, - 498.95496 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79106201_1550891470": [ - 127085.414, - -158390.39, - 135.95496 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F791E6201_1165229929": [ - 133541.4, - -171204.39, - 339.95496 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79236201_1250559816": [ - 142763.4, - -194313.39, - -1554.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79626201_1797282896": [ - 151858.4, - -205861.39, - -1132.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79646201_1982914249": [ - 126266.414, - -193749.39, - 675.95496 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F798F6001_1203275705": [ - 126704.414, - -140831.39, - 397.95496 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79916001_1775397058": [ - 91625.414, - -157717.39, - 69.954956 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79946001_1613712588": [ - 79236.414, - -171572.39, - 15.954956 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79956001_1285061765": [ - 93307.414, - -176808.39, - -798.04504 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79B26201_1656659976": [ - 66848.414, - -178461.39, - -1388.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79B26201_1806151977": [ - 77799.11, - -185466.58, - -1283.7887 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79BB6101_1629973504": [ - 108720.414, - -179155.39, - -964.04504 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79C06101_1984578386": [ - 119553.414, - -228340.39, - -942.04504 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79C26101_1487303739": [ - 100085.414, - -208456.39, - -1633.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk46": [ - 109060.97, - -159160.72, - -339.59686 - ] - }, - "yellow": { - "Persistent_Level:PersistentLevel.BP_Crystal138": [ - 228519.8, - -222136.9, - 9364.215 - ], - "Persistent_Level:PersistentLevel.BP_Crystal17_UAID_40B076DF2F79245C01_1529847652": [ - 85924.84, - -182499.53, - -487.45276 - ], - "Persistent_Level:PersistentLevel.BP_Crystal8_18": [ - 143827.27, - 125949.32, - 16239.979 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_40": [ - 183859.0, - 104898.0, - 5404.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_42": [ - 153421.0, - 113802.0, - 7941.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_48": [ - 168304.0, - 62749.0, - 12327.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_49": [ - 157117.0, - 78593.0, - 12539.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_50": [ - 164906.0, - 94881.0, - 8701.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_62": [ - 149461.66, - -176537.67, - -915.25305 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_66": [ - 246888.0, - 150580.0, - 9420.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_67": [ - 209309.0, - 154859.0, - 50.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_69": [ - 201315.0, - 169308.0, - 11448.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_70": [ - 220420.0, - 122285.0, - 4015.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_72": [ - 210046.0, - 134583.0, - -81.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_73": [ - 224929.0, - 131825.0, - 4723.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05F7801_1738752601": [ - 245919.0, - -12133.0, - 9374.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0607801_1667283784": [ - 248612.0, - -35291.0, - 14055.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0607801_2027765785": [ - 227632.0, - -37474.0, - 17205.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0767801_1471881678": [ - 128192.0, - -4493.0, - 17861.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F09E7401_1282285465": [ - 151596.0, - -11018.0, - 18890.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AE7301_1236769225": [ - 199623.0, - -23749.0, - 12429.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0AE7301_1916140227": [ - 216223.0, - -29985.0, - 18055.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0B37301_2109802113": [ - 101656.0, - 45831.0, - 22441.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0B47301_1731763291": [ - 74776.0, - 28178.0, - 12092.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0B47301_1859830293": [ - 89182.0, - 14541.0, - 17865.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0B57301_1300199470": [ - 115680.0, - 39405.0, - 12359.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79016301_2047367890": [ - 71017.0, - -203899.0, - -1174.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F790F6201_1248400288": [ - 121521.98, - -206977.88, - 265.96564 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79486001_2099963228": [ - -57684.938, - -232488.61, - 1480.4526 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F798E5F01_1514525492": [ - 90408.46, - -195364.94, - -886.4708 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F798E5F01_1854991497": [ - 36929.0, - -201651.0, - -789.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79A35901_1559939832": [ - 25604.875, - -220836.62, - -1745.1766 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79B56201_1247281510": [ - 29879.402, - -234711.45, - 1798.1962 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79C56201_1257600332": [ - 28861.771, - -204035.92, - -955.6092 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79C66201_2074565511": [ - 17911.771, - -207271.92, - -1196.6093 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79C96201_1094933041": [ - 9445.066, - -203096.36, - -1151.2341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79CB6201_1211861396": [ - -20883.934, - -218321.36, - -1205.2341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79CB6201_2127484397": [ - -34836.934, - -222461.36, - -1389.2341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79CC6201_1781367576": [ - -39166.934, - -252318.36, - -1329.2341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F35F01_1207047265": [ - 70976.0, - -160164.0, - 17495.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_UAID_40B076DF2F79FD6301_1735716241": [ - -30461.625, - -256500.8, - -106.16543 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk10": [ - 8908.367, - -220731.69, - 2202.973 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk14": [ - 47454.29, - -239545.16, - -517.99695 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk19": [ - -23773.977, - -186055.81, - 2571.209 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk20_11": [ - 163980.0, - -206176.0, - 20755.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21": [ - -126517.414, - 169345.0, - -5713.005 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210": [ - -54094.02, - 172147.84, - 1832.5126 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_0": [ - -41314.98, - 82766.75, - 27301.111 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_1": [ - -89793.07, - 19021.668, - 20984.605 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_16": [ - 125262.71, - 244039.94, - -7112.325 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_19": [ - -200042.69, - -123746.01, - 1762.5112 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_20": [ - -142518.83, - 185883.73, - 2270.5205 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_23": [ - 250723.9, - -270293.9, - 1862.119 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk210_47": [ - 194852.92, - -69260.09, - 4453.9214 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211": [ - -12194.988, - 283251.25, - 3348.2285 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_15": [ - 18247.281, - 88332.445, - 24813.918 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_17": [ - 124451.9, - 237040.12, - -2511.6396 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_20": [ - -137217.22, - -196704.34, - 6527.677 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_24": [ - 237319.3, - -271873.94, - 6301.7866 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_48": [ - 45580.555, - -125434.55, - 2307.9053 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_85": [ - -156426.36, - 16549.922, - 18193.844 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk211_9": [ - -163138.19, - 91518.266, - -206.93146 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212": [ - 192812.52, - -41491.023, - 5780.172 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212_15": [ - -90474.414, - 119844.695, - 6336.6357 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212_16": [ - -18871.072, - 42347.16, - 26922.965 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212_18": [ - 142239.2, - 161305.44, - 5205.353 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212_25": [ - 268754.4, - -263821.3, - 4230.1416 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212_86": [ - -169826.27, - 206.33203, - 20486.768 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk212_9": [ - 3336.5195, - 121870.12, - 2106.492 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213": [ - -143654.89, - 145513.69, - 4374.8564 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213_17": [ - 4960.5312, - -4575.957, - 23476.08 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213_19": [ - 152768.8, - 232176.58, - -9409.65 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213_22": [ - -137229.19, - -171261.19, - 37361.99 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213_26": [ - 192490.94, - -314104.47, - 4072.3857 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213_52": [ - 162442.62, - -59650.477, - 10362.004 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk213_87": [ - -99991.99, - 26448.291, - 21435.484 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk214": [ - 85802.18, - -135144.44, - 7882.8467 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk214_18": [ - 8023.379, - 16306.648, - 23335.717 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk214_88": [ - -132430.12, - -4225.242, - 22879.832 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk214_9": [ - -132713.47, - -133456.05, - 6457.1064 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk215": [ - -206689.12, - -191820.17, - 7608.8936 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk215_20": [ - 8120.086, - 80104.414, - 21411.355 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk215_95": [ - -86213.586, - 73390.305, - 20805.05 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk216": [ - -286303.84, - -127241.95, - 2345.5366 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk216_106": [ - -59982.523, - 42597.133, - 22058.395 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk216_19": [ - 29626.135, - -4632.8555, - 22391.23 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk217": [ - 29384.656, - 55906.176, - 3854.475 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk217_91": [ - -76831.15, - 61149.58, - 20636.305 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk218": [ - -51525.86, - 55750.69, - 24633.041 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk219": [ - -122307.72, - 28472.79, - 19845.184 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_0": [ - 10539.1875, - 267942.44, - -3765.0479 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_1": [ - 373948.4, - -241997.31, - 4105.885 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_11": [ - -82983.39, - -3902.5977, - 24093.203 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_12": [ - 324893.84, - -32672.748, - 556.74133 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_13": [ - 252289.38, - -275566.84, - 9397.599 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_21": [ - -167204.16, - 45892.016, - 21913.396 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_22": [ - 25995.217, - -47246.83, - 18668.875 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_23": [ - 113855.42, - -46987.902, - 12305.359 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_27": [ - 70193.78, - 67572.52, - 17283.055 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_3": [ - -264744.72, - 74082.38, - -910.37445 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_33": [ - 143692.55, - -43679.31, - 4640.8433 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_4": [ - 359152.94, - -112870.61, - 9359.699 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_5": [ - -248684.38, - -168364.89, - 5078.0376 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_7": [ - 157444.25, - 165266.67, - -3296.123 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_8": [ - 244265.05, - -215283.84, - 5473.546 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22": [ - -144088.33, - -182546.94, - -976.7816 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk220": [ - -62254.35, - 74170.17, - 20370.424 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk221": [ - 251111.89, - 79026.055, - -1671.207 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk222_6": [ - 226164.69, - 12413.9375, - -1654.9745 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk223_7": [ - 309131.4, - 15106.43, - 3468.1248 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk224": [ - 291502.22, - 31379.424, - -930.74243 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk225": [ - 249765.44, - 110459.17, - -1958.274 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk226": [ - 250130.11, - 11352.59, - -1204.5846 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk227": [ - 257277.38, - -14574.914, - 5681.46 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk228": [ - 287374.94, - 38388.28, - -1474.2644 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk229": [ - 220847.05, - 65711.24, - -1192.9158 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_0": [ - -174329.88, - 180824.14, - 6287.082 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_1": [ - -24915.115, - 184967.95, - -921.7949 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_10": [ - -256160.5, - 115331.54, - -634.2729 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_14": [ - 286954.44, - -288059.75, - 22984.947 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_18": [ - 343441.56, - -76968.55, - 5861.3667 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_2": [ - 296550.75, - -288370.53, - 18058.344 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_22": [ - -69961.02, - -14795.773, - 23641.234 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_23": [ - 30726.877, - -20889.785, - 13456.196 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_24": [ - -53446.18, - -485.96875, - 23039.193 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_28": [ - 60744.426, - 98717.62, - 12721.857 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_34": [ - 160025.98, - -34908.43, - 9359.225 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_4": [ - 396174.28, - -181215.73, - 3861.0852 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_7": [ - -15463.234, - -47131.273, - 14203.129 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_8": [ - 175010.61, - 161669.0, - 13100.877 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk22_88": [ - 278444.72, - -11378.828, - 10741.428 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23": [ - -13805.742, - -187350.16, - 4193.5176 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk230": [ - 271675.34, - -267406.28, - 12222.562 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_1": [ - -186682.02, - 55910.1, - 10871.258 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_11": [ - -216626.98, - 127790.305, - -778.86945 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_14": [ - -46870.914, - -57634.195, - 16076.042 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_15": [ - 280601.25, - -286688.75, - 1632.3546 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_2": [ - 22335.438, - 182534.4, - -7746.9585 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_20": [ - -80489.19, - 47701.14, - 21569.576 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_21": [ - 399632.12, - -98188.22, - -420.8192 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_23": [ - 254685.42, - 135377.2, - -3415.3062 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_24": [ - -4838.4414, - -25353.336, - 19436.115 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_25": [ - -55193.402, - 23146.41, - 21705.674 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_29": [ - 131772.39, - 133791.31, - 12902.702 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk23_9": [ - 134638.86, - 218682.89, - 875.991 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24": [ - 91593.805, - -55202.574, - 8920.4 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_0": [ - -11343.301, - -149364.72, - 12213.101 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_10": [ - 148346.19, - 263032.56, - 9909.843 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_15": [ - -101168.164, - -68267.89, - 13817.006 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_16": [ - 298037.4, - -59178.523, - 7096.33 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_17": [ - 241757.9, - -302466.8, - 2506.413 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_2": [ - -140201.66, - 62485.793, - 11797.09 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_23": [ - -104846.85, - 63693.914, - 21511.91 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_25": [ - 54817.23, - 14338.773, - 13498.433 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_26": [ - -20426.264, - 7256.8945, - 25365.455 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_3": [ - -5944.211, - 266008.28, - 676.9981 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_30": [ - 147806.52, - 86562.67, - 17688.154 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_89": [ - 289936.7, - 13138.771, - 5261.662 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25": [ - 137138.33, - -36545.453, - 14122.983 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_1": [ - -64714.11, - -129056.734, - 3804.4028 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_11": [ - 185230.52, - 209199.19, - 4808.0493 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_14": [ - 23068.75, - 56043.18, - 21881.209 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_18": [ - 264767.9, - -307156.8, - 1217.762 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_19": [ - -20905.135, - -9428.352, - 21601.818 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_2": [ - -145228.69, - -153749.9, - 19247.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_26": [ - 65935.27, - -1704.3711, - 13496.384 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_27": [ - -154659.47, - 49170.07, - 24059.484 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_3": [ - -64067.496, - 123968.914, - 14866.653 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_31": [ - 91825.766, - 76580.766, - 13587.196 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_4": [ - -31863.053, - 304196.12, - -1471.3424 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_5": [ - 297231.22, - -289118.16, - 1615.2068 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk25_90": [ - 241825.23, - 121073.77, - 5734.6577 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26": [ - -18206.426, - -116744.94, - 9019.668 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_1": [ - 219260.0, - -267056.0, - 16643.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_26": [ - 100406.98, - -1180.2031, - 10628.09 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_27": [ - 97341.54, - -9032.633, - 12607.209 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_36": [ - 92688.93, - 112725.85, - 10873.427 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_4": [ - -191441.34, - 82122.484, - 121.56373 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_5": [ - -71178.87, - 282572.97, - -3690.3577 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_6": [ - -48138.605, - 93946.65, - 22369.027 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_81": [ - -64402.727, - 51225.605, - 20748.67 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk26_91": [ - 205127.48, - 74400.96, - 4686.298 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27": [ - -860.625, - -192514.6, - -1115.6439 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_13": [ - 203140.9, - 209019.27, - 13253.913 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_2": [ - 221440.0, - -246935.0, - 11623.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_20": [ - 238537.81, - -279523.56, - 2786.744 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_28": [ - 11100.533, - -53429.375, - 14890.505 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_3": [ - 31362.646, - 103124.08, - 25912.469 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_33": [ - 34405.44, - 109331.99, - 18144.363 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_4": [ - -80854.125, - -97339.51, - 1520.8981 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_5": [ - -153175.28, - 108961.805, - 7960.066 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_6": [ - -91286.195, - 271310.28, - -6500.026 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_82": [ - -202123.22, - -1079.8086, - 20376.408 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk27_92": [ - 222151.22, - 40181.867, - 443.39 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28": [ - -271756.78, - -192357.36, - 2767.0737 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_14": [ - 118270.875, - 184714.55, - -2799.9087 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_2": [ - 25468.916, - -72203.84, - 10156.739 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_21": [ - 263900.75, - -270160.53, - 6723.0117 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_34": [ - 134471.17, - 103706.87, - 13407.155 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_35": [ - 208648.02, - -81613.85, - 3290.068 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_6": [ - -122139.945, - 98782.516, - 7165.4136 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_7": [ - -121973.44, - 206940.6, - -303.41312 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk28_83": [ - -184098.34, - 31015.309, - 22715.639 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29": [ - -55705.383, - 250303.55, - -1964.3572 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_1": [ - -17159.344, - 89011.53, - 20888.682 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_15": [ - 141830.47, - 190145.28, - -5792.693 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_18": [ - -188783.34, - -170113.39, - -506.2534 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_19": [ - -169657.94, - 65658.6, - 17682.416 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_22": [ - 283210.47, - -76533.91, - 7312.7065 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_23": [ - 145332.0, - -238260.0, - 5983.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_37": [ - 178969.3, - -91003.0, - 9177.441 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk29_84": [ - -141907.2, - 47702.414, - 19467.55 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_1": [ - -280227.5, - -29335.834, - 2944.011 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_10": [ - 354279.06, - -176862.73, - 8424.351 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_11": [ - 405280.28, - -100422.57, - 5890.8164 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_12": [ - 328078.22, - -39446.1, - 6001.091 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_2": [ - -114662.26, - -57562.49, - 13728.413 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_3": [ - -211791.97, - -48537.266, - 6656.399 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_4": [ - -232566.83, - -73522.16, - 1110.4933 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_5": [ - -140119.1, - -15383.723, - 10426.945 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_6": [ - -176508.2, - -69715.22, - 1101.4508 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_7": [ - -237853.19, - 20708.592, - -815.0392 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_8": [ - -154156.1, - -62049.926, - 4752.838 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_9": [ - -155161.16, - 15770.832, - 4123.7007 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_0": [ - -75500.5, - -203822.12, - 1109.3273 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_1": [ - -34745.746, - -207730.5, - 3254.6675 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_10": [ - 41565.527, - -68761.2, - 9450.463 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_11": [ - 13884.379, - -67552.66, - 6530.573 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_12": [ - 86781.086, - -111232.695, - 9698.123 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_13": [ - 62244.77, - -126947.91, - 10574.091 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_14": [ - 25366.068, - -170206.47, - 2813.226 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_15": [ - 70980.03, - -167514.36, - 5002.513 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_18": [ - 37474.8, - -237484.98, - -118.19751 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_19": [ - 50327.4, - -255416.88, - 1702.5979 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_20": [ - 44397.598, - -215375.31, - -1750.9607 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_21": [ - 68938.65, - -214632.28, - 1371.3318 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_22": [ - 104300.86, - 152734.05, - 6634.487 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_23": [ - 192313.81, - 25728.018, - -1451.227 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_24": [ - 177589.0, - 66278.0, - 16009.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_25": [ - 174300.0, - 94266.0, - 8096.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_26": [ - 181625.0, - 67903.0, - 9571.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_27": [ - 104882.67, - -32945.984, - 14088.1875 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_28": [ - 139884.42, - -70281.21, - 3153.6829 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_29": [ - 190227.12, - -57143.137, - 8015.9956 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_3": [ - 30578.586, - 242052.14, - -3493.0005 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_30": [ - 142565.0, - -135839.0, - 14001.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_31": [ - 198829.0, - -163207.0, - 27278.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_33": [ - 184075.0, - -163335.0, - 25400.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_34": [ - 120030.0, - -142740.0, - 18490.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_36": [ - 280505.38, - 105488.05, - -134.73438 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_37": [ - 209910.0, - 173870.0, - 16615.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_39": [ - 214148.48, - 11960.887, - 30.51104 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_40": [ - 213676.4, - 100009.43, - -587.4625 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_41": [ - 237415.9, - 85465.87, - 2368.9895 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_42": [ - 209116.34, - 59416.19, - 1499.328 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_43": [ - 207989.2, - 27719.729, - 307.5773 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_45": [ - 214895.0, - -184615.0, - 9165.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_46": [ - 283787.9, - -278677.94, - 1692.1013 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_47": [ - 344491.03, - -143897.31, - 4534.829 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_5": [ - 20301.822, - 192237.19, - 18411.984 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_6": [ - 68066.51, - 171000.92, - 12604.408 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_7": [ - 52708.562, - 170327.73, - 9668.572 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_8": [ - 63528.6, - 135698.8, - 6859.9756 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_9": [ - 71037.08, - -52130.26, - 9506.2 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0156301_1720971459": [ - 178365.0, - 117380.0, - 12980.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0245C01_1697523667": [ - 203030.0, - -257567.0, - 9368.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F02A8701_1121902119": [ - -85404.0, - -143607.0, - -888.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0327B01_1576760848": [ - 116233.0, - 19336.0, - 16708.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0327B01_2054731851": [ - 129829.0, - 27414.0, - 15565.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0357B01_1376513381": [ - 221511.0, - -52436.0, - 16165.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0397B01_1952176084": [ - 143192.0, - 7531.0, - 17435.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F03A5B01_1502427478": [ - 185962.0, - -136393.0, - 21262.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F03E6501_1921080728": [ - -111593.0, - -36885.0, - 24204.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F03F7B01_1398535141": [ - 134757.0, - 14609.0, - 17075.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F049B201_2036002976": [ - 63119.0, - 210396.0, - 1668.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0575301_1826590140": [ - 167921.0, - -264110.0, - 3951.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0595301_1302912499": [ - 152014.0, - -283555.0, - 2976.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0595D01_1702343033": [ - 228255.0, - 109553.0, - 3414.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F05B5D01_1459628393": [ - 228451.0, - 115713.0, - 7122.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F062A401_1920904598": [ - -147146.0, - 90692.0, - 19152.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0635D01_1402584822": [ - 222466.0, - 112035.0, - 10484.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F063A401_1791316779": [ - -163552.0, - 134766.0, - 12793.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F06D5201_1177233968": [ - 153693.0, - -151003.0, - 25630.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F06FA401_2035551894": [ - -144324.0, - 156856.0, - 14338.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0706801_1432001712": [ - 172976.97, - 113563.97, - 10456.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F071A401_1739232248": [ - -178742.0, - 93006.0, - 20888.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F071A401_1842127249": [ - -163321.0, - 106057.0, - 20025.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0775B01_1268218200": [ - 197167.0, - -273736.0, - 12056.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0785B01_1533531383": [ - 141595.0, - -168654.0, - 2592.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0795B01_1357525561": [ - 124696.0, - -147164.0, - 7521.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0795B01_2008124563": [ - 107782.0, - -161384.0, - 4122.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F07F5B01_2043697625": [ - 116687.0, - -172844.0, - 5954.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0805B01_1612786803": [ - 136978.0, - -185959.0, - 2388.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0815B01_1488038982": [ - 125681.0, - -156174.0, - 5259.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0815B01_1988173986": [ - 133553.0, - -142260.0, - 8475.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0825B01_1335318165": [ - 114992.0, - -164153.0, - 7442.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0855B01_1254483667": [ - 161292.0, - -213405.0, - 2017.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0855B01_1620780674": [ - 162272.0, - -234132.0, - 810.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0865B01_1135287853": [ - 173571.0, - -233679.0, - 11494.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0AA5201_1255154679": [ - 193282.0, - -189305.0, - 24604.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0AA5201_1338657684": [ - 192538.0, - -187176.0, - 26134.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0AE5D01_1615859992": [ - 196566.0, - 153128.0, - 8669.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0B65201_2137568813": [ - 170142.0, - -130203.0, - 19620.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0BD5201_1079947071": [ - 136325.0, - -181035.0, - 8958.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0D25B01_1831343223": [ - 139246.0, - -146226.0, - 15697.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0D45B01_1937028581": [ - 111032.0, - -166069.0, - 9345.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E57A01_1469842296": [ - 155132.0, - 27074.0, - 19268.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E57A01_1590485297": [ - 180696.0, - 14461.0, - 18596.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E67A01_1084770479": [ - 156882.0, - 17776.0, - 18279.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E85F01_1340931312": [ - 194610.0, - -194975.0, - 26250.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E85F01_1744709315": [ - 214632.0, - -219424.0, - 29564.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E87A01_1147893840": [ - 63094.0, - 11931.0, - 19057.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E87A01_1547094844": [ - 76289.0, - 41302.0, - 19581.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E95F01_1115335496": [ - 243082.0, - -272859.0, - 26753.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0EE7A01_1935774906": [ - 110069.0, - 12351.0, - 21050.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F35F01_1114488275": [ - 222910.0, - -235200.0, - 26282.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F37A01_1199794805": [ - 137014.0, - 28209.0, - 11957.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F37A01_1513905808": [ - 142769.0, - 45435.0, - 17570.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F67A01_1684184353": [ - 166424.0, - 38892.0, - 11812.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F67A01_1837729354": [ - 209097.0, - -2989.0, - 7236.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F67A01_1953261355": [ - 195317.0, - 15085.0, - 10326.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F77A01_2016858540": [ - 206543.0, - -43030.0, - 15264.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0F87A01_1248874721": [ - 187002.0, - -26896.0, - 13648.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0FC5201_1997354134": [ - 130920.0, - -199555.0, - 13002.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F79245C01_1676679653": [ - 87154.03, - -182011.36, - 1945.5132 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F79738301_1516430745": [ - -27600.0, - 139690.0, - -6960.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F79745B01_1428147672": [ - 52932.066, - -177475.47, - 5512.226 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F799E5F01_1558324292": [ - 85950.25, - -214841.5, - 4172.6675 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F79AB5201_1083372854": [ - 82917.25, - -232288.5, - 437.66748 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_40B076DF2F79BC5D01_1825052456": [ - -29418.746, - -174117.5, - 5976.6675 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_4CEDFB3E2F7F8B9201_1245751815": [ - 167040.0, - 83620.0, - 1920.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk30_12": [ - 139980.0, - -213485.0, - 5350.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0747801_1178299322": [ - 164676.0, - -3915.0, - 21256.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0EE7A01_1112899902": [ - 82757.0, - 22623.0, - 21809.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0F77A01_1321147532": [ - 180444.0, - 26740.0, - 2049.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk43_3": [ - 190853.0, - -222990.0, - 23933.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F790F6201_1607312289": [ - 122984.414, - -215475.39, - -1216.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79926001_1740797235": [ - 90580.13, - -164221.2, - 246.10512 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk45_UAID_40B076DF2F79BF6101_1113212209": [ - 100698.414, - -198219.39, - -1071.045 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk47": [ - 31695.953, - -214888.16, - -1763.5588 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk48_2": [ - -55461.246, - -168285.0, - 6041.663 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk49": [ - -66489.69, - -175651.98, - 10320.168 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk49_UAID_40B076DF2F79955F01_1622838761": [ - -59969.688, - -190330.98, - 8660.168 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk50": [ - -45529.797, - -177778.31, - 9388.494 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk51": [ - 132230.0, - -200725.0, - 6230.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk51_28": [ - 124495.0, - -202820.0, - 5405.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk52": [ - -54880.336, - -214424.23, - 5914.1436 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk53": [ - -49350.58, - -228612.97, - 4473.755 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk53_UAID_40B076DF2F79105301_1728144638": [ - -51260.58, - -250326.97, - 3340.9524 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk53_UAID_40B076DF2F79615301_1537373889": [ - -27595.578, - -249981.97, - 623.755 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk53_UAID_40B076DF2F79625301_2075930067": [ - 64634.42, - -186578.97, - 615.9524 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk53_UAID_40B076DF2F79F55801_1917538208": [ - -51747.23, - -208020.83, - 2431.751 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk54": [ - -28657.781, - -173784.95, - 9723.471 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk55": [ - -9031.758, - -165461.92, - 6012.248 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk56": [ - 9092.785, - -169112.28, - 4681.2812 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk57": [ - 7926.2617, - -178551.61, - 4952.0737 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk58": [ - 21661.074, - -176290.69, - 11012.223 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk59": [ - 17663.822, - -154946.31, - 12263.912 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk6": [ - -55052.65, - -185332.02, - 6443.4873 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk60": [ - 41029.56, - -164983.22, - 20133.738 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk60_UAID_40B076DF2F794D6401_1849768319": [ - 19170.273, - -170847.36, - 4531.253 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk60_UAID_40B076DF2F79F35F01_1959731276": [ - 19376.559, - -163773.22, - 14260.738 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk61": [ - 123850.0, - -176825.0, - 8070.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk63": [ - 127605.0, - -168050.0, - 7660.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk63_10": [ - 203544.0, - -286437.0, - 22147.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk66": [ - 41348.434, - -173688.38, - 9259.436 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk67": [ - 137690.0, - -167725.0, - 7075.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk6_2": [ - 190339.0, - -263888.0, - 4334.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk7": [ - -17612.271, - -203213.42, - 1834.3435 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk70_3": [ - 215380.0, - -213390.0, - 14660.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk72_11": [ - 238314.0, - 133385.0, - 12325.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk72_2": [ - 143930.0, - -165650.0, - 8215.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk73_3": [ - 148000.0, - -185700.0, - 6440.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk74_4": [ - 156251.0, - -178558.0, - 23.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk75_2": [ - 228660.0, - 133683.0, - -5741.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk75_5": [ - 158490.0, - -165477.0, - 15800.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk76_2": [ - 208982.0, - 115908.0, - 11668.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk76_6": [ - 114835.0, - -196315.0, - 3160.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk79": [ - 66356.49, - -160959.34, - 7163.5913 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk80": [ - 85814.695, - -156663.3, - 19815.71 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk81": [ - 90872.78, - -148056.0, - 10085.359 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk82": [ - 98480.63, - -158049.05, - 7812.243 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk83": [ - 88413.18, - -165020.48, - 7298.7993 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk84": [ - 87302.78, - -172522.33, - 8873.553 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk88": [ - 174657.0, - 129903.0, - 16334.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk9": [ - 14672.96, - -242517.98, - -943.7837 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk93": [ - 175015.0, - 106610.0, - 11552.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk94": [ - 184321.0, - 131052.0, - 15902.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk9_14": [ - 181935.0, - -253645.0, - 14235.0 - ] - }, - "purple": { - "Persistent_Level:PersistentLevel.BP_Crystal7_17": [ - 125763.26, - 81108.43, - 12793.5 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05D5D01_1813536763": [ - 232352.0, - 109088.0, - 4992.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F05F7801_1673526600": [ - 233479.0, - -7977.0, - 7615.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0757801_1889185499": [ - 149148.0, - 7319.0, - 20663.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0757801_2136946500": [ - 119255.0, - -2582.0, - 17628.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_04421A9713F0B37301_2124852114": [ - 86205.0, - 46730.0, - 23200.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_C_UAID_40B076DF2F79F25F01_1677709082": [ - 53396.0, - -163213.0, - 20922.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk10_UAID_40B076DF2F79486001_1273441223": [ - 9055.367, - -221877.69, - 4924.9727 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk11": [ - 82048.58, - -158687.42, - 5138.757 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk12": [ - 22009.879, - -238735.64, - 1506.1216 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk13": [ - 36093.383, - -252512.0, - 3403.3696 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk13_2": [ - 187825.0, - -257335.0, - -1780.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk14_5": [ - 183780.0, - -296705.0, - 21390.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk15": [ - 54723.47, - -229467.16, - 4340.341 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk16_2": [ - 177155.0, - -206000.0, - 24184.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk18": [ - 85513.97, - -195345.38, - 5124.409 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk21_6": [ - -55085.0, - -43846.0, - 16937.627 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk24_14": [ - 121164.39, - -214016.92, - 3009.6592 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_16": [ - 95747.03, - -198310.06, - 5835.7026 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_38": [ - 203508.0, - 145635.0, - 6584.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk2_C_UAID_04421A9713F0E77A01_1394636661": [ - 131035.0, - 43109.0, - 18044.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk30": [ - 236674.6, - -208776.62, - 17216.205 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk30_10": [ - 394732.3, - -151165.55, - 9860.038 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk30_7": [ - 385174.56, - -207937.8, - 9585.3125 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31": [ - -175603.66, - 44187.35, - 18989.816 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk310": [ - -182085.38, - 28720.553, - 10801.411 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk310_42": [ - -21824.441, - 53806.008, - 21953.367 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk310_92": [ - -56255.07, - 58994.223, - 20969.355 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk311": [ - 27554.6, - 73708.48, - -753.93 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk311_48": [ - -37435.83, - -6213.211, - 30028.803 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk311_93": [ - -91579.11, - 51276.22, - 21545.514 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk312": [ - -125151.94, - 49267.06, - 34041.64 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk312_52": [ - -28150.057, - 19757.957, - 22615.846 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk313": [ - -151141.08, - 22066.055, - 26174.703 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk313_59": [ - -1594.3555, - 29752.305, - 24393.35 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk315": [ - -106598.21, - 34219.25, - 23600.428 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk316": [ - 46135.805, - -190558.22, - 7631.564 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk317": [ - -80753.4, - 34086.465, - 19814.1 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk318": [ - -127059.125, - 43459.227, - 19964.611 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk319": [ - -129127.266, - 20713.592, - 28689.953 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_0": [ - 33123.668, - 176853.19, - -6537.7485 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_1": [ - -95974.27, - 44010.582, - 5091.7847 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_10": [ - -51693.637, - -78723.31, - 5734.05 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_12": [ - 58423.6, - -27553.406, - 24845.506 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_13": [ - 285727.34, - 128183.945, - 11353.857 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_15": [ - 37876.484, - 36309.91, - 23414.395 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_16": [ - 65682.375, - 64887.207, - 35873.387 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_2": [ - 226648.94, - -295590.0, - 1647.1022 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_3": [ - -268368.9, - 87125.83, - -1742.5779 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_4": [ - 237541.27, - -206787.38, - 8012.7817 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_7": [ - 133466.4, - 240928.55, - -8871.613 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_8": [ - -132418.7, - -181783.42, - 46942.094 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk31_9": [ - 52026.45, - -80073.555, - 5869.5654 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32": [ - -176863.66, - 88804.57, - 11533.102 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk320": [ - -30874.775, - 68455.71, - 21705.816 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk321": [ - -42888.562, - 40321.355, - 21539.562 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk322": [ - -31905.969, - 31787.24, - 20664.594 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk323": [ - -87771.234, - 62349.293, - 25335.83 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk324": [ - -78122.445, - 21531.387, - 21166.484 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk325": [ - -59224.6, - -180010.88, - 15343.177 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk327": [ - 51468.336, - -2178.9258, - 13377.489 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_0": [ - -129640.46, - -124075.195, - -3827.4531 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_1": [ - -19617.443, - 163535.77, - 7996.703 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_16": [ - -19906.824, - 78261.445, - 38858.62 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_17": [ - 53245.46, - 73958.42, - 10890.177 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_3": [ - 253883.66, - -292994.5, - 5423.5723 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_8": [ - 176027.28, - 250642.27, - -898.8755 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk32_84": [ - -171997.94, - 25223.475, - 15695.17 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33": [ - -164072.73, - 92802.695, - 7268.4614 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_1": [ - -225540.02, - -151572.48, - -5123.609 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_11": [ - 100492.83, - -91392.414, - 5325.374 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_12": [ - -25619.205, - -65689.89, - 23114.283 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_14": [ - -27367.17, - -76016.62, - 11631.908 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_17": [ - -16103.805, - 114042.67, - 21485.102 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_18": [ - 114957.305, - 78925.97, - 18274.873 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_2": [ - -19009.102, - 272696.16, - 10535.102 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_4": [ - 299170.0, - -296890.0, - 9881.6875 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_85": [ - -44925.22, - 55495.227, - 21220.559 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk33_9": [ - 190325.03, - 230743.22, - -11162.179 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34": [ - -92511.445, - 57168.254, - 9571.329 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_10": [ - 171375.75, - 174413.45, - 4754.605 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_15": [ - 14423.9375, - 2752.4844, - 18401.871 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_18": [ - -10102.59, - -28939.16, - 22220.24 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_19": [ - 160559.8, - 133221.84, - 11079.767 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_20": [ - 60888.355, - -130688.125, - 2713.218 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_3": [ - -136864.02, - 241803.95, - -11804.259 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_31": [ - 244584.56, - 27220.328, - -1671.3302 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_6": [ - -286815.3, - -160491.89, - 6791.5913 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk34_86": [ - -96334.336, - 68858.06, - 12270.675 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35": [ - -62877.254, - -212286.22, - 8378.266 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_0": [ - -48773.97, - 131219.31, - 24037.514 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_1": [ - 374477.03, - -114466.78, - 5891.8267 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_11": [ - 198116.75, - 180765.67, - 17957.123 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_21": [ - 150970.97, - -88202.28, - 12950.686 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_22": [ - 17850.906, - 125646.414, - 27380.459 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_6": [ - -135991.0, - -182951.58, - 18125.166 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk35_87": [ - -76092.03, - 70610.62, - 27345.791 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk36": [ - -143599.03, - 127389.305, - 13045.333 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk36_12": [ - 140604.2, - 251773.53, - -5815.2456 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk36_22": [ - 201331.38, - -90733.33, - 10951.835 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk36_26": [ - -61493.07, - 10492.094, - 23072.781 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk36_50": [ - 258787.48, - 67454.44, - -1043.3137 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk36_88": [ - -51403.074, - 66521.4, - 24877.01 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk37": [ - -36416.367, - -255208.7, - 4686.84 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk37_14": [ - 174830.0, - -222015.0, - 13420.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk37_30": [ - 9354.805, - 57885.207, - 20895.424 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk37_51": [ - 187595.27, - 55849.71, - -1683.246 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk37_89": [ - -56554.957, - 110985.234, - 23874.553 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk38": [ - -24413.283, - -198056.44, - 19270.592 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk38_14": [ - 131388.5, - 164666.14, - -3921.6091 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk38_34": [ - 40556.293, - 77732.13, - 26895.443 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk38_52": [ - 308292.53, - -9705.453, - 1764.4596 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk38_90": [ - -109140.555, - 101010.61, - 16307.811 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk39": [ - -15335.8125, - -192824.1, - 7399.159 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk39_41": [ - 9161.906, - 100359.305, - 24429.64 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk39_91": [ - -73274.57, - 48792.258, - 25491.17 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_0": [ - 255771.61, - -290705.88, - 32565.879 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_1": [ - -264290.1, - -33952.51, - 9152.103 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_13": [ - 66407.95, - 203371.78, - 11018.751 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_16": [ - 78298.2, - 173893.27, - -3988.6833 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_2": [ - -198374.02, - -10592.215, - 3815.6572 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_3": [ - -157870.55, - -89590.62, - -4184.508 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_4": [ - -218426.56, - 24200.107, - 8754.733 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_5": [ - 91263.07, - 232000.02, - 7409.2524 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_9": [ - 16287.676, - 214765.23, - 13773.23 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_0": [ - -59148.094, - -109189.414, - 1205.2803 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_1": [ - -3403.996, - -179646.3, - 6313.4585 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_10": [ - 45875.14, - -171693.17, - 5395.708 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_11": [ - 25679.766, - -161573.94, - 17078.502 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_12": [ - 52139.645, - -179771.47, - 9201.385 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_13": [ - 62255.934, - -162902.81, - 23171.58 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_14": [ - 85671.08, - -158300.06, - 9725.8545 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_15": [ - 81300.38, - -155563.69, - 28168.746 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_16": [ - 94412.11, - -170437.19, - 13387.778 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_17": [ - 83481.09, - -195208.98, - 19226.887 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_18": [ - 99788.17, - -214924.4, - 4077.269 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_19": [ - 72367.52, - -207757.66, - 12637.537 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_2": [ - 31740.848, - -175315.53, - 3246.547 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_20": [ - 162494.81, - 224747.38, - -7889.8604 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_22": [ - 144988.0, - 101902.0, - 21318.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_23": [ - 181954.0, - 92921.0, - 3222.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_25": [ - 120698.15, - -126195.56, - 19369.838 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_27": [ - 169905.0, - -180630.0, - 9435.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_28": [ - 140413.23, - -168848.22, - 23048.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_29": [ - 167125.0, - -161695.0, - 28410.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_3": [ - -53123.883, - -228897.67, - 8127.7197 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_30": [ - 134090.0, - -148245.0, - 12905.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_31": [ - 131140.0, - -196795.0, - 9875.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_32": [ - 121715.0, - -170190.0, - 12265.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_33": [ - 121695.0, - -190865.0, - 7765.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_34": [ - 95361.91, - -182902.11, - 5830.591 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_35": [ - 226568.6, - 106004.18, - -1397.8776 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_37": [ - 228965.0, - 129795.0, - 16900.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_38": [ - 231574.0, - 148534.0, - 10093.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_39": [ - 205619.0, - 124952.0, - -6371.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_4": [ - 85420.29, - 125286.305, - 8912.565 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_40": [ - 276096.4, - 50570.348, - -615.6847 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_41": [ - 236032.69, - 94330.125, - -896.4952 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_42": [ - 278161.53, - 12681.8125, - 1374.4731 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_43": [ - 228990.0, - -265020.0, - 20885.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_46": [ - 210835.0, - -290925.0, - 22885.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_5": [ - 44047.145, - 189344.88, - 10354.413 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_6": [ - 101425.44, - -44532.363, - 17823.81 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_7": [ - 53902.38, - -116004.984, - 24484.621 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_8": [ - 23240.184, - -183814.27, - 5097.987 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_9": [ - 56082.25, - -169283.28, - 25644.135 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0036301_1297164245": [ - 238370.88, - 153571.0, - 13063.474 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0056301_2025275612": [ - 186090.0, - 97485.0, - 12635.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0145C01_1961591832": [ - 172164.0, - -216179.0, - 20199.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0277C01_2138469968": [ - 129432.0, - 57904.0, - 10448.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0297C01_1197302326": [ - 150205.0, - 46067.0, - 12251.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0297C01_2084244334": [ - 128995.0, - 64193.0, - 19440.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F02A7C01_1360375511": [ - 103576.0, - 75659.0, - 16428.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F02A7C01_1594764512": [ - 82290.0, - 67192.0, - 24097.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F02AA401_1523751748": [ - -151575.0, - 77412.0, - 21708.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0406001_1876322801": [ - 173899.0, - -154970.0, - 26277.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0585D01_1891820856": [ - 231950.0, - 125298.0, - 6984.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0585E01_1956229960": [ - 124270.0, - -149770.0, - 15820.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F05A5301_1813979681": [ - 154163.0, - -271535.0, - -1336.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0627801_2036326140": [ - 208907.0, - -21631.0, - 18580.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F063A401_1570680776": [ - -155221.0, - 126132.0, - 15257.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F06A5C01_1458580968": [ - 223085.0, - 114951.0, - 3132.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F06B5C01_1971558160": [ - 234537.0, - 117263.0, - 11707.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F06DAF01_1615607160": [ - 170487.0, - -45485.0, - 5512.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F06EA401_1809380716": [ - -143905.5, - 139824.12, - 13128.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F070A401_1749057071": [ - -128483.0, - 156718.0, - 13823.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0717801_1844491783": [ - 177385.0, - 849.0, - 18925.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0727801_1634602960": [ - 174510.0, - -24395.0, - 19107.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F072A401_1701014427": [ - -136317.0, - 176577.0, - 16319.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0775B01_1729283204": [ - 144026.0, - -162984.0, - 2648.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F079AF01_1615812377": [ - -30334.0, - -159804.0, - 16061.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F07F6001_2021531889": [ - 175113.0, - -140313.0, - 23781.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0807C01_1687435632": [ - 157366.0, - 67974.0, - -10.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0835B01_1215726345": [ - 142477.0, - -188688.0, - 7345.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0895B01_1662240391": [ - 163448.0, - -221893.0, - 4746.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F08A5B01_2054934580": [ - 175457.0, - -225145.0, - 21124.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F08B5B01_2043989757": [ - 124160.0, - -156162.0, - 11828.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0AA5201_1333563683": [ - 198073.0, - -188701.0, - 25342.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0AC5201_1755460045": [ - 205434.0, - -285492.0, - 9664.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0D45B01_1873455580": [ - 113623.0, - -159043.0, - 9278.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0DC5B01_1453235998": [ - 160158.0, - -171897.0, - 11245.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0DD5B01_1099993180": [ - 171001.0, - -177233.0, - 4656.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E57A01_1659753299": [ - 167368.0, - 15657.0, - 22839.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E57A01_1764014301": [ - 146608.0, - 15383.0, - 18161.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E67A01_2112441483": [ - 135567.0, - 31101.0, - 18559.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E85F01_1517332314": [ - 200672.0, - -200223.0, - 34166.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E85F01_1852831317": [ - 218848.0, - -255005.0, - 33313.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E87A01_1253298841": [ - 71978.0, - 19244.0, - 20486.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0E95F01_1176278498": [ - 216484.0, - -286480.0, - 42936.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0EE7A01_1230590903": [ - 92555.0, - 21594.0, - 19405.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0F77A01_1578399538": [ - 128833.0, - 12802.0, - 14071.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0F87A01_1173440720": [ - 182921.0, - -37060.0, - 14455.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0F87A01_1467276724": [ - 192834.0, - -23714.0, - 15292.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0F87A01_1842830725": [ - 258281.0, - -41580.0, - 14458.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_04421A9713F0FB5201_1256959955": [ - 160194.0, - -206341.0, - 7271.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_40B076DF2F798B5F01_1138825944": [ - 37631.766, - -166386.94, - 22368.67 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_40B076DF2F79905F01_1499395864": [ - 37881.0, - -182601.0, - 3610.4697 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_40B076DF2F79D5AD01_1325784341": [ - 294583.34, - -172604.73, - 3900.7275 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_40B076DF2F79DBAD01_1358054399": [ - 261006.98, - -256438.53, - 3673.1077 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_40B076DF2F79DCAD01_1900669576": [ - 380202.0, - -274445.0, - 1909.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_UAID_40B076DF2F79F68401_1268529865": [ - -33890.0, - 113635.0, - -6565.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk4": [ - -50685.58, - -238906.97, - 3870.9524 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk40": [ - 141650.0, - -194650.0, - 8835.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk41": [ - 137058.33, - -201534.5, - 799.72784 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk42_8": [ - 180355.0, - -267555.0, - 19165.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk43": [ - 141585.0, - -168570.0, - 11485.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk44": [ - 100282.91, - -182879.14, - 2283.8167 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk4_UAID_40B076DF2F79435901_1076437937": [ - -49357.625, - -220523.8, - 3662.7795 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk5": [ - -57751.207, - -219159.55, - -1020.81067 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk5_5": [ - 123779.305, - -201060.47, - 9742.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk61_8": [ - 147242.0, - -216065.0, - 6780.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk62": [ - 129225.0, - -167400.0, - 10770.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk64_8": [ - 183086.0, - -244460.0, - 23505.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk65": [ - 122425.0, - -183035.0, - 10600.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk67_2": [ - 182224.0, - -305952.0, - 20502.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk70_0": [ - 121860.0, - -153925.0, - 11895.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk71_0": [ - 196414.0, - -169702.0, - 13456.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk71_9": [ - 212415.0, - 126415.0, - 6325.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk72_1": [ - 213015.0, - -186910.0, - 20425.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk73": [ - 237167.0, - -273298.0, - 16501.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk73_15": [ - 228315.0, - 139843.0, - 3658.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk73_UAID_04421A9713F03A5B01_1974981481": [ - 212843.0, - -144939.0, - 16431.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk73_UAID_04421A9713F0B65201_1605781812": [ - 151123.0, - -135011.0, - 21699.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk74": [ - 162130.0, - 69133.0, - 14664.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk75": [ - 177248.0, - 98029.0, - 7139.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk76": [ - 176778.0, - 92114.0, - 11410.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk77_1": [ - 121240.0, - -143071.0, - 10707.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk79_8": [ - 232149.0, - 134644.0, - -8415.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk8": [ - -18590.693, - -229429.36, - 4295.7285 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk85": [ - 177695.0, - 68263.0, - 19688.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk86": [ - 157461.0, - 71204.0, - 17878.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk87": [ - 155407.0, - 101946.0, - 8236.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk89": [ - 194244.0, - 110754.0, - 15475.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk8_UAID_40B076DF2F79915F01_1298320049": [ - -13820.693, - -187407.36, - -727.27124 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk90": [ - 162677.0, - 131663.0, - 12843.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk91": [ - 151141.0, - 140691.0, - 13255.0 - ], - "Persistent_Level:PersistentLevel.BP_Crystal_mk92": [ - 200497.0, - 107571.0, - 8178.0 - ] - } -} diff --git a/game_data/sav_data/resourcePurity.json b/game_data/sav_data/resourcePurity.json deleted file mode 100644 index c13b25e..0000000 --- a/game_data/sav_data/resourcePurity.json +++ /dev/null @@ -1,6082 +0,0 @@ -{ - "Persistent_Level:PersistentLevel.BP_FrackingSatellite10": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 212492.4, - 138086.9, - -126.02577 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite100": [ - "Desc_Water_C", - "IMPURE", - [ - 9269.219, - 190201.78, - -10440.816 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite101": [ - "Desc_Water_C", - "IMPURE", - [ - 3582.625, - 187082.12, - -10305.059 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite102": [ - "Desc_Water_C", - "IMPURE", - [ - 185693.72, - -61072.18, - 5431.7915 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite103_8": [ - "Desc_Water_C", - "NORMAL", - [ - 314408.25, - -292941.7, - 1253.2937 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite108": [ - "Desc_Water_C", - "PURE", - [ - -22450.547, - 171714.27, - -27.804688 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite109": [ - "Desc_Water_C", - "PURE", - [ - -17700.781, - 174876.78, - -70.81641 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite11": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 216407.4, - 139499.9, - -212.02577 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite110": [ - "Desc_Water_C", - "PURE", - [ - -16087.406, - 170350.6, - 351.41797 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite111": [ - "Desc_Water_C", - "PURE", - [ - -15611.967, - 172710.39, - 239.21428 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite112": [ - "Desc_Water_C", - "PURE", - [ - -23406.785, - 174254.38, - -437.7422 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite113": [ - "Desc_Water_C", - "PURE", - [ - -20451.469, - 175654.28, - -99.55859 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite114_7": [ - "Desc_Water_C", - "PURE", - [ - -111801.47, - 73189.28, - 3120.4414 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite115": [ - "Desc_Water_C", - "PURE", - [ - -111814.81, - 71121.26, - 3061.7578 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite116": [ - "Desc_Water_C", - "PURE", - [ - -107606.78, - 71069.375, - 2912.2578 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite117": [ - "Desc_Water_C", - "PURE", - [ - -104692.41, - 73355.59, - 3096.418 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite118": [ - "Desc_Water_C", - "PURE", - [ - -110139.16, - 75375.22, - 3196.4844 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite119": [ - "Desc_Water_C", - "PURE", - [ - -104200.78, - 70976.78, - 2859.1836 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite12": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 218169.4, - 137548.9, - -209.02577 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite120": [ - "Desc_Water_C", - "PURE", - [ - -108478.47, - 77599.94, - 3709.2578 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore18" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite121": [ - "Desc_Water_C", - "NORMAL", - [ - -20347.145, - 170787.44, - 6.991364 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore17" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite13": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 211685.88, - 133160.88, - -247.35889 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite14": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 225241.62, - -309813.3, - 7875.64 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite15": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 221785.27, - -308346.0, - 8244.49 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite16": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - 220214.53, - -310720.6, - 7879.7246 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite17": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 226487.78, - -313623.97, - 8160.9453 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite18_3": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - 126644.0, - 253042.0, - -372.0 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore_8" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite19": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 221263.53, - -312256.6, - 7931.7246 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite2": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 125104.0, - 256475.0, - 734.0 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore_8" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite20": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 223981.33, - -314008.66, - 7867.124 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite21": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -253679.44, - -187151.62, - -1240.9805 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite22": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -254692.42, - -191072.62, - -1581.981 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite23_5": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - 226851.62, - -311423.3, - 7905.64 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore3" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite24": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -251958.17, - -191565.81, - -1741.0864 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite25": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - -249899.39, - -190381.27, - -1739.5664 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite26": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -249449.39, - -188216.27, - -1739.5664 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite27": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -250936.72, - -184679.19, - -1457.1299 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite28": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -147628.72, - 125722.81, - 15315.87 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite29": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -144341.72, - 124609.81, - 15387.87 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite3": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - 125098.87, - 254321.44, - 159.65128 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore_8" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite30": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -145715.25, - 119442.08, - 15181.536 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite31": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -142779.19, - 120243.19, - 15174.914 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite32": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -141750.38, - 121997.734, - 15259.434 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite33": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -142911.44, - 118402.375, - 14995.02 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite34": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -145565.44, - 126028.375, - 15439.02 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore5" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite35": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 87916.734, - 102044.87, - 10177.966 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite36": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 81638.91, - 103495.17, - 10183.618 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite37": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 88734.25, - 107722.67, - 9991.825 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite38": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 83093.97, - 101821.16, - 10216.438 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite39": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 87990.5, - 105052.12, - 10209.373 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite4": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 130516.0, - 255126.0, - -294.0 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore_8" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite40": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 86696.75, - 99524.29, - 10057.586 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite41": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 83988.22, - 107803.266, - 10103.808 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite42": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 84661.39, - 99202.77, - 10049.585 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite43": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 81664.47, - 106667.91, - 10241.166 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite44": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 86027.56, - 109451.11, - 9962.317 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite45": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 267123.12, - 115156.31, - -101.34375 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore7" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite46": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 264051.56, - 112280.8, - -66.40234 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore7" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite47": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 264231.3, - 114518.45, - -77.76172 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore7" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite48": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 271425.28, - 111504.1, - -102.578125 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore7" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite49": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 269500.4, - 115587.586, - -83.28906 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore7" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite5": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 131025.0, - 257428.0, - 238.0 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore_8" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite50": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 267439.25, - 110349.33, - -91.16406 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore7" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite51_1": [ - "Desc_NitrogenGas_C", - "PURE", - [ - -253968.72, - -189214.19, - -1460.1299 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore4" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite57": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -40199.91, - -4304.332, - 25053.797 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore9" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite58": [ - "Desc_Water_C", - "IMPURE", - [ - 313890.5, - -287979.47, - 1212.3501 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite59": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -43758.8, - -8409.396, - 25138.883 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore9" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite6": [ - "Desc_NitrogenGas_C", - "IMPURE", - [ - 214659.7, - 137993.52, - -225.07779 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite60": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -41776.45, - -9868.376, - 25142.186 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore9" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61": [ - "Desc_LiquidOil_C", - "PURE", - [ - -38956.836, - -10362.684, - 25325.07 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore9" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61_UAID_40B076DF2F79D7DF01_1933830510": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -260625.77, - 72573.23, - -1188.0452 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6_UAID_40B076DF2F79D3DF01_1961476789" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61_UAID_40B076DF2F79D7DF01_2053713511": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - -261941.47, - 70474.51, - -1159.0599 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6_UAID_40B076DF2F79D3DF01_1961476789" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61_UAID_40B076DF2F79D8DF01_1587984689": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -264372.75, - 76059.47, - -1296.5887 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6_UAID_40B076DF2F79D3DF01_1961476789" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61_UAID_40B076DF2F79D8DF01_1704280690": [ - "Desc_LiquidOil_C", - "PURE", - [ - -266194.75, - 75227.37, - -1279.5225 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6_UAID_40B076DF2F79D3DF01_1961476789" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61_UAID_40B076DF2F79D8DF01_1999134691": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - -263341.78, - 72359.805, - -1353.6194 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6_UAID_40B076DF2F79D3DF01_1961476789" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite61_UAID_40B076DF2F79D9DF01_1230935868": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -265378.25, - 72493.37, - -1342.2883 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore6_UAID_40B076DF2F79D3DF01_1961476789" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite62": [ - "Desc_LiquidOil_C", - "PURE", - [ - -36959.133, - -7833.7783, - 25170.346 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore9" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite63": [ - "Desc_LiquidOil_C", - "PURE", - [ - -43238.793, - -6518.911, - 25053.646 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore9" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite64": [ - "Desc_Water_C", - "PURE", - [ - 314277.5, - -289755.78, - 1267.8708 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite65": [ - "Desc_Water_C", - "PURE", - [ - 319126.6, - -290062.66, - 1228.4166 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite66": [ - "Desc_Water_C", - "IMPURE", - [ - 320535.3, - -291279.56, - 1229.5671 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite67": [ - "Desc_Water_C", - "PURE", - [ - 316513.25, - -293371.7, - 1243.2937 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite68": [ - "Desc_Water_C", - "PURE", - [ - 316668.3, - -288089.66, - 1174.041 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore10" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite69": [ - "Desc_Water_C", - "PURE", - [ - 188862.86, - -57590.305, - 5566.1953 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite7": [ - "Desc_NitrogenGas_C", - "IMPURE", - [ - 213448.88, - 132706.88, - -317.3589 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite70": [ - "Desc_Water_C", - "PURE", - [ - 183113.64, - -55532.727, - 5512.0527 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite71": [ - "Desc_Water_C", - "NORMAL", - [ - 182806.1, - -58147.62, - 5535.6367 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite72": [ - "Desc_Water_C", - "PURE", - [ - 186318.42, - -52985.66, - 5425.98 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite73": [ - "Desc_Water_C", - "NORMAL", - [ - 183610.3, - -59943.703, - 5585.6367 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite74": [ - "Desc_Water_C", - "PURE", - [ - 188079.22, - -54423.78, - 5518.6484 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore11" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite75": [ - "Desc_Water_C", - "PURE", - [ - 240891.97, - -66618.56, - 6182.6626 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore12" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite76": [ - "Desc_Water_C", - "PURE", - [ - 238332.19, - -69283.016, - 5403.4253 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore12" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite77": [ - "Desc_Water_C", - "PURE", - [ - 242801.66, - -71309.54, - 5419.4106 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore12" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite78": [ - "Desc_Water_C", - "PURE", - [ - 239763.44, - -71695.06, - 5256.659 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore12" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite79": [ - "Desc_Water_C", - "NORMAL", - [ - 245033.62, - -71845.836, - 4617.382 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore12" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite8": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - 215726.0, - 132791.0, - -285.0 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite80": [ - "Desc_Water_C", - "NORMAL", - [ - 240788.0, - -74885.24, - 4801.5166 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore12" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite81": [ - "Desc_Water_C", - "PURE", - [ - 95981.59, - 85227.59, - 10170.419 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore13" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite82": [ - "Desc_Water_C", - "PURE", - [ - 101158.72, - 85561.38, - 10250.339 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore13" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite83": [ - "Desc_Water_C", - "PURE", - [ - 98700.53, - 86231.94, - 10246.258 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore13" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite84": [ - "Desc_Water_C", - "PURE", - [ - 97653.22, - 82023.77, - 10255.185 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore13" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite85": [ - "Desc_Water_C", - "PURE", - [ - 100208.75, - 81507.73, - 10271.408 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore13" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite86": [ - "Desc_Water_C", - "PURE", - [ - 102318.72, - 82976.38, - 10270.339 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore13" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite87": [ - "Desc_Water_C", - "NORMAL", - [ - 99743.53, - 147302.94, - 6441.258 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite88": [ - "Desc_Water_C", - "NORMAL", - [ - 106354.59, - 139678.6, - 6603.418 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite89": [ - "Desc_Water_C", - "IMPURE", - [ - 108080.53, - 142057.28, - 6632.4414 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite9": [ - "Desc_NitrogenGas_C", - "NORMAL", - [ - 218040.88, - 134223.3, - -187.5167 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore2" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite90": [ - "Desc_Water_C", - "IMPURE", - [ - 108262.06, - 145417.83, - 6486.4375 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite91": [ - "Desc_Water_C", - "NORMAL", - [ - 103179.53, - 141524.94, - 6429.258 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite92": [ - "Desc_Water_C", - "NORMAL", - [ - 104641.22, - 149304.78, - 6456.1836 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite93": [ - "Desc_Water_C", - "NORMAL", - [ - 100829.72, - 143446.38, - 6461.34 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite94": [ - "Desc_Water_C", - "NORMAL", - [ - 100716.75, - 149703.72, - 6494.4062 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore14" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite95": [ - "Desc_Water_C", - "PURE", - [ - 4933.5312, - 184744.28, - -10424.559 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite96": [ - "Desc_Water_C", - "PURE", - [ - 7164.1562, - 183858.44, - -10524.945 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite97": [ - "Desc_Water_C", - "PURE", - [ - 5973.215, - 189394.38, - -10357.742 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite98": [ - "Desc_Water_C", - "PURE", - [ - 9112.531, - 184869.94, - -10505.742 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite99": [ - "Desc_Water_C", - "PURE", - [ - 10342.594, - 187520.6, - -10473.582 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore15" - ], - "Persistent_Level:PersistentLevel.BP_FrackingSatellite_2": [ - "Desc_NitrogenGas_C", - "PURE", - [ - 128216.0, - 258878.0, - 890.0 - ], - "Persistent_Level:PersistentLevel.BP_FrackingCore_8" - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode100": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 178265.38, - 206095.64, - -9238.571 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode101_1893": [ - "Desc_SAM_C", - "IMPURE", - [ - 161928.67, - 103777.14, - 5602.8877 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode101_UAID_40B076DF2F79E6D901_1551800812": [ - "Desc_SAM_C", - "IMPURE", - [ - 119148.914, - 71321.39, - 18673.61 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode101_UAID_40B076DF2F79E7D901_2125168992": [ - "Desc_SAM_C", - "PURE", - [ - 162898.92, - 65413.69, - 9782.395 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode102_2068": [ - "Desc_Stone_C", - "NORMAL", - [ - -280836.7, - -42089.18, - -1276.148 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode103": [ - "Desc_Stone_C", - "NORMAL", - [ - -267051.4, - -24386.79, - -723.6485 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode104": [ - "Desc_Stone_C", - "NORMAL", - [ - -273321.22, - -19667.0, - -1537.0547 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode105_2463": [ - "Desc_OreIron_C", - "NORMAL", - [ - -263873.03, - -30848.365, - -411.6734 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode106": [ - "Desc_OreIron_C", - "NORMAL", - [ - -260110.45, - -27673.627, - -640.12866 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode107": [ - "Desc_OreIron_C", - "NORMAL", - [ - -256244.0, - -29564.0, - -668.0099 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode108": [ - "Desc_OreIron_C", - "NORMAL", - [ - -259120.33, - -44688.95, - -494.1499 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode109": [ - "Desc_OreIron_C", - "NORMAL", - [ - -261358.45, - -41228.13, - -327.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode110": [ - "Desc_Stone_C", - "PURE", - [ - -178099.06, - -165241.56, - 7616.867 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode111_3367": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -268264.4, - -54991.438, - -343.69092 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode112": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -266711.88, - -51317.582, - -331.48297 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode113": [ - "Desc_Stone_C", - "PURE", - [ - -165001.94, - -133278.1, - 1610.9102 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode114": [ - "Desc_OreIron_C", - "PURE", - [ - -152490.28, - -45786.508, - 692.6235 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode115": [ - "Desc_OreIron_C", - "PURE", - [ - -166731.05, - -26566.139, - -509.76654 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode116": [ - "Desc_OreIron_C", - "PURE", - [ - -170447.58, - -28321.373, - -596.00745 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode117": [ - "Desc_OreCopper_C", - "PURE", - [ - -148008.2, - -30185.447, - -556.1295 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode118_4340": [ - "Desc_Stone_C", - "NORMAL", - [ - -133444.86, - -35240.246, - 3832.0007 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode119": [ - "Desc_Stone_C", - "NORMAL", - [ - -145781.0, - -31969.0, - 3281.0757 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode121_4877": [ - "Desc_OreGold_C", - "PURE", - [ - -178491.0, - -79788.0, - 3331.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode121_UAID_40B076DF2F7938DF01_2097772508": [ - "Desc_OreGold_C", - "NORMAL", - [ - -135468.0, - -174682.0, - 7753.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode122": [ - "Desc_Coal_C", - "NORMAL", - [ - -99604.05, - -146823.22, - -1631.1211 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode123_5084": [ - "Desc_OreIron_C", - "PURE", - [ - -110588.0, - -135153.0, - 1911.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode124_5785": [ - "Desc_Stone_C", - "NORMAL", - [ - -90457.87, - -152279.48, - -1700.314 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode125_5930": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -96801.0, - -135276.0, - 166.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode126_6409": [ - "Desc_OreIron_C", - "PURE", - [ - -96100.71, - 163752.86, - -3734.4927 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode127": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -94265.12, - 165842.2, - -3734.8345 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode128_5242": [ - "Desc_OreIron_C", - "NORMAL", - [ - -190787.0, - -117690.0, - 706.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode129": [ - "Desc_Coal_C", - "PURE", - [ - -113615.88, - -50450.0, - 16266.268 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode12_91": [ - "Desc_OreIron_C", - "IMPURE", - [ - 248481.44, - -146160.34, - 3561.8936 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode13": [ - "Desc_OreIron_C", - "IMPURE", - [ - 242691.67, - -149432.56, - 2590.652 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode130": [ - "Desc_Coal_C", - "PURE", - [ - -107640.28, - -52375.516, - 16193.37 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode131": [ - "Desc_OreCopper_C", - "IMPURE", - [ - -266903.94, - -133355.44, - 5973.782 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode132_5908": [ - "Desc_Stone_C", - "NORMAL", - [ - -173249.03, - -112172.63, - 31.635986 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode133_6963": [ - "Desc_Stone_C", - "NORMAL", - [ - 109989.1, - 196758.81, - -3246.712 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode134_8590": [ - "Desc_OreGold_C", - "NORMAL", - [ - 109619.43, - 155798.28, - 4175.6665 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode135": [ - "Desc_SAM_C", - "NORMAL", - [ - -182183.36, - -142367.0, - -1743.8706 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode136": [ - "Desc_RawQuartz_C", - "PURE", - [ - 37926.11, - 120939.234, - 13370.246 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode136_UAID_40B076DF2F7975DF01_1587576239": [ - "Desc_RawQuartz_C", - "PURE", - [ - 61653.523, - 196432.23, - -3725.4568 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode136_UAID_40B076DF2F7975DF01_1617269241": [ - "Desc_RawQuartz_C", - "IMPURE", - [ - 62111.484, - 207627.14, - -4197.018 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode136_UAID_40B076DF2F7975DF01_1622351243": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - 55253.258, - 205856.16, - -5763.185 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode137_2248": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - 34968.07, - 118464.16, - 13410.246 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode138_590": [ - "Desc_Stone_C", - "NORMAL", - [ - 175981.11, - -40156.312, - 6611.6855 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode139_909": [ - "Desc_Stone_C", - "NORMAL", - [ - 158314.44, - -65002.84, - 2591.26 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode140": [ - "Desc_OreGold_C", - "PURE", - [ - 236608.72, - -260095.61, - 11784.351 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode141": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 297710.44, - -107995.766, - 5475.0166 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode142": [ - "Desc_OreGold_C", - "NORMAL", - [ - 224307.77, - -128741.74, - 7240.549 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode142_UAID_40B076DF2F79E8DD01_2087440367": [ - "Desc_OreGold_C", - "NORMAL", - [ - 211843.22, - -18819.654, - -29.199884 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode142_UAID_40B076DF2F79E9DD01_1434900545": [ - "Desc_OreGold_C", - "PURE", - [ - 208139.61, - -23983.086, - 594.19293 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode142_UAID_40B076DF2F79E9DD01_1872254547": [ - "Desc_OreGold_C", - "NORMAL", - [ - 208006.5, - -16382.59, - -55.342663 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode143_1543": [ - "Desc_Stone_C", - "NORMAL", - [ - -129599.0, - -96956.0, - 4129.6216 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode144_1644": [ - "Desc_Stone_C", - "NORMAL", - [ - -231390.3, - -89529.73, - 823.9837 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode145_1749": [ - "Desc_Stone_C", - "NORMAL", - [ - -194906.31, - -25779.785, - -627.99207 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode146": [ - "Desc_OreIron_C", - "NORMAL", - [ - 96959.12, - 157163.2, - 2110.3044 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode147": [ - "Desc_OreIron_C", - "NORMAL", - [ - 96326.0, - 159762.45, - 2102.8389 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode148": [ - "Desc_OreIron_C", - "NORMAL", - [ - 93730.26, - 160263.92, - 2111.1162 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode149": [ - "Desc_OreIron_C", - "NORMAL", - [ - 92724.945, - 163305.55, - 1881.9614 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode14_609": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 26597.504, - -193983.95, - -1683.8994 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode15": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - -32599.646, - -192537.5, - 2280.044 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode150": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 108117.26, - 152283.92, - 3387.5667 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode151": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 185124.39, - 214441.7, - -8910.608 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode152_995": [ - "Desc_LiquidOil_C", - "PURE", - [ - 184226.86, - 217101.75, - -8910.764 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode153": [ - "Desc_OreIron_C", - "NORMAL", - [ - -258432.72, - -40560.85, - -327.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode154": [ - "Desc_LiquidOil_C", - "PURE", - [ - 182115.7, - 188396.66, - -5640.0957 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode155": [ - "Desc_LiquidOil_C", - "PURE", - [ - 184782.69, - 191090.11, - -5732.2104 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode156": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -281345.62, - -71999.67, - -1200.9078 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode157": [ - "Desc_Stone_C", - "NORMAL", - [ - -268787.8, - -79095.18, - -292.37128 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode158": [ - "Desc_Stone_C", - "NORMAL", - [ - -129015.44, - -39541.035, - 2898.1501 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode159": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -166357.25, - -129627.56, - 1600.2267 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode16": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - -43612.14, - -190316.36, - 2291.0378 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode160": [ - "Desc_OreIron_C", - "PURE", - [ - -250080.31, - -126362.7, - 3837.601 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode161": [ - "Desc_OreIron_C", - "PURE", - [ - -252032.61, - -125001.14, - 3847.601 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode162_5199": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -163354.12, - -192096.66, - 10761.33 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode163": [ - "Desc_Stone_C", - "PURE", - [ - -221696.69, - -104736.01, - 4105.7 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode164": [ - "Desc_Stone_C", - "PURE", - [ - -261495.66, - -116492.59, - 4302.5884 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode165": [ - "Desc_Stone_C", - "PURE", - [ - -281761.4, - -134704.47, - 1998.0149 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode166": [ - "Desc_Stone_C", - "PURE", - [ - -206172.67, - -141688.64, - 4859.957 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode167": [ - "Desc_OreIron_C", - "NORMAL", - [ - -186902.3, - -118339.83, - 706.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode168": [ - "Desc_OreIron_C", - "NORMAL", - [ - -187932.66, - -114624.19, - 706.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode169_UAID_40B076DF2F7939DE01_2083925623": [ - "Desc_OreGold_C", - "NORMAL", - [ - 114180.02, - -16999.984, - 14021.446 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode170_363": [ - "Desc_Sulfur_C", - "IMPURE", - [ - -41122.324, - -72631.13, - 23212.215 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode172": [ - "Desc_SAM_C", - "NORMAL", - [ - -24065.672, - 269858.1, - -13353.769 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode172_UAID_40B076DF2F79DFD901_1471130569": [ - "Desc_SAM_C", - "IMPURE", - [ - 80730.336, - 204811.92, - 5722.4126 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode173": [ - "Desc_OreIron_C", - "IMPURE", - [ - 264240.25, - -162899.2, - 3331.6553 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode174": [ - "Desc_OreIron_C", - "PURE", - [ - -227410.78, - -118862.21, - 3931.601 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode175": [ - "Desc_OreIron_C", - "PURE", - [ - -230852.83, - -115124.49, - 3917.601 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode176_UAID_40B076DF2F793BDF01_1694110039": [ - "Desc_OreGold_C", - "PURE", - [ - -153387.22, - 82252.445, - 20330.234 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode177": [ - "Desc_Sulfur_C", - "IMPURE", - [ - 34655.0, - 284303.0, - 905.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode178": [ - "Desc_Stone_C", - "NORMAL", - [ - 186164.39, - 77069.96, - 1138.1641 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode179": [ - "Desc_OreCopper_C", - "PURE", - [ - 225503.75, - 55772.54, - -1303.9816 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode180": [ - "Desc_OreIron_C", - "PURE", - [ - 285860.75, - -127665.09, - 3875.8503 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode181": [ - "Desc_Stone_C", - "IMPURE", - [ - 237354.58, - -164936.42, - 2636.013 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode182": [ - "Desc_Stone_C", - "IMPURE", - [ - 244591.2, - -190902.92, - 1832.5978 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode184": [ - "Desc_OreIron_C", - "IMPURE", - [ - 311229.8, - -128705.04, - 4669.4893 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode185": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 252874.52, - -161693.45, - 3452.7375 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode186": [ - "Desc_Stone_C", - "NORMAL", - [ - 295895.53, - -272876.5, - 1237.4618 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode187_0": [ - "Desc_Stone_C", - "NORMAL", - [ - 225406.31, - -237056.66, - 1043.2284 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode188": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 256401.88, - -184355.4, - 3519.3257 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode189": [ - "Desc_Stone_C", - "NORMAL", - [ - 308652.03, - -100658.06, - 6378.2046 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode190": [ - "Desc_Stone_C", - "PURE", - [ - 311622.66, - -69811.22, - 5620.2656 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode191": [ - "Desc_Stone_C", - "IMPURE", - [ - 299122.0, - -85512.0, - 5936.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode192_0": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 270316.84, - -211596.89, - 3051.478 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode193": [ - "Desc_Stone_C", - "IMPURE", - [ - 383045.9, - -92549.195, - 207.13556 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode194": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 297397.53, - -96437.46, - 6021.43 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode195": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 277591.06, - -94119.44, - 5535.7656 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode196": [ - "Desc_OreIron_C", - "PURE", - [ - 255249.61, - -91659.65, - 5523.8574 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode197": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 355997.62, - -66386.5, - -396.25745 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode198": [ - "Desc_OreIron_C", - "NORMAL", - [ - 268524.3, - -116944.1, - 4206.803 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode199": [ - "Desc_OreIron_C", - "NORMAL", - [ - 266880.72, - -120714.6, - 4084.0034 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode200": [ - "Desc_OreIron_C", - "IMPURE", - [ - 283968.62, - -121598.34, - 4452.2676 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode201": [ - "Desc_OreIron_C", - "PURE", - [ - 347227.78, - -58490.81, - -748.9642 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode202": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 233446.56, - -247935.03, - 1056.9971 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode203": [ - "Desc_OreIron_C", - "PURE", - [ - 319464.06, - -158098.33, - 3864.566 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode204_0": [ - "Desc_OreIron_C", - "IMPURE", - [ - 330433.03, - -142399.73, - 3965.8975 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode205": [ - "Desc_OreIron_C", - "NORMAL", - [ - 313010.2, - -133841.61, - 4861.5474 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode206": [ - "Desc_OreIron_C", - "NORMAL", - [ - 339300.2, - -183354.42, - 4477.048 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode207": [ - "Desc_OreIron_C", - "PURE", - [ - 273729.53, - -148172.9, - 4082.7124 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode208": [ - "Desc_OreIron_C", - "NORMAL", - [ - 338207.62, - -177564.14, - 4959.218 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode209": [ - "Desc_OreIron_C", - "PURE", - [ - 372373.7, - -153420.89, - 4005.9695 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode20_3137": [ - "Desc_Stone_C", - "PURE", - [ - -280305.97, - -181362.97, - 338.1084 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode210": [ - "Desc_OreIron_C", - "PURE", - [ - 348525.66, - -123750.76, - 4283.54 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode211": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 348939.47, - -185584.44, - 4235.77 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode212": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 329409.6, - -186014.45, - 3740.8823 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode213": [ - "Desc_OreCopper_C", - "PURE", - [ - 355461.72, - -149808.08, - 4214.5044 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode214": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 326947.06, - -209586.44, - 3687.7656 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode215": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 287767.78, - -274886.12, - 1242.4907 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode216": [ - "Desc_OreCopper_C", - "PURE", - [ - 342806.28, - -114728.1, - 6020.3867 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode217": [ - "Desc_OreIron_C", - "PURE", - [ - 278266.3, - -210771.86, - 3221.9482 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode218": [ - "Desc_OreIron_C", - "NORMAL", - [ - 298733.94, - -199292.72, - 2709.4597 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode219": [ - "Desc_OreIron_C", - "PURE", - [ - 282689.3, - -179305.02, - 4212.3584 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode220": [ - "Desc_OreIron_C", - "PURE", - [ - 385302.66, - -189927.9, - 4280.7554 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode221": [ - "Desc_OreIron_C", - "IMPURE", - [ - 311798.84, - -215343.44, - 2436.9 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode222": [ - "Desc_OreIron_C", - "IMPURE", - [ - 314598.1, - -196773.44, - 3905.6873 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode223": [ - "Desc_OreIron_C", - "NORMAL", - [ - 276673.56, - -195099.81, - 2898.7397 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode224": [ - "Desc_Stone_C", - "IMPURE", - [ - 359885.0, - -200469.0, - 4110.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode225": [ - "Desc_Stone_C", - "PURE", - [ - 391118.03, - -208702.95, - 4998.1597 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode226": [ - "Desc_Stone_C", - "IMPURE", - [ - 338761.0, - -205718.0, - 4225.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode227": [ - "Desc_Stone_C", - "PURE", - [ - 348908.0, - -163350.39, - 4238.0327 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode228": [ - "Desc_Stone_C", - "NORMAL", - [ - 370713.0, - -221971.0, - 4225.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode229": [ - "Desc_Stone_C", - "NORMAL", - [ - 385953.0, - -254364.75, - 3420.0154 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode230": [ - "Desc_OreIron_C", - "NORMAL", - [ - 280137.94, - -261096.7, - 1859.7014 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode231": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - 305659.97, - -301305.6, - 1232.6881 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode232": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - 308597.78, - -296079.2, - 1256.873 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode233": [ - "Desc_OreIron_C", - "NORMAL", - [ - 374874.7, - -259903.08, - 3231.756 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode234": [ - "Desc_Stone_C", - "PURE", - [ - 355115.5, - -122969.93, - 5003.6367 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode235": [ - "Desc_OreCopper_C", - "PURE", - [ - 380813.62, - -169867.75, - 4187.0166 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode236": [ - "Desc_OreIron_C", - "NORMAL", - [ - 377738.06, - -254225.64, - 3347.1306 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode237": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 381666.3, - -268289.94, - 3485.9717 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode238": [ - "Desc_OreIron_C", - "PURE", - [ - 304839.66, - -172907.9, - 3801.0608 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode239": [ - "Desc_OreIron_C", - "PURE", - [ - 297575.8, - -150186.38, - 3972.9917 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode23_96": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 57144.117, - -191300.44, - -1744.9279 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode240": [ - "Desc_OreGold_C", - "PURE", - [ - 406563.88, - -206810.05, - -1539.4596 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode241": [ - "Desc_SAM_C", - "NORMAL", - [ - 172559.33, - -285516.9, - 21591.23 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode241_UAID_40B076DF2F7947D301_1723440520": [ - "Desc_SAM_C", - "IMPURE", - [ - 272832.38, - -261865.69, - 1087.6808 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode24_97": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 15357.45, - -197672.22, - -1606.4982 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode25_98": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 29991.334, - -186849.66, - -1689.2555 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode26_99": [ - "Desc_LiquidOil_C", - "PURE", - [ - 44495.81, - -228950.03, - -1743.504 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode27_100": [ - "Desc_LiquidOil_C", - "PURE", - [ - 12162.998, - -225348.3, - -1744.1844 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode28_101": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -35725.824, - -209521.1, - -1708.5834 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode29_102": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 52471.01, - -201464.72, - -1658.7415 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode30_103": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 148477.58, - -193869.42, - -1603.0947 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode31_104": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 147769.36, - -212912.34, - -1429.3394 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode32_105": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 146451.92, - -222638.25, - -1580.8369 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode35": [ - "Desc_OreIron_C", - "NORMAL", - [ - 256611.66, - -197978.56, - 3561.465 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode36": [ - "Desc_OreIron_C", - "NORMAL", - [ - 241090.69, - -239787.95, - 1048.3445 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode37_178": [ - "Desc_Stone_C", - "NORMAL", - [ - 177197.55, - -86516.85, - 2459.135 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode38_902": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 167904.11, - -116373.08, - 2426.6404 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode39": [ - "Desc_OreIron_C", - "PURE", - [ - 181723.7, - -116280.305, - 2150.0312 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode40": [ - "Desc_OreIron_C", - "PURE", - [ - 178061.9, - -120503.63, - 2250.7485 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode41_1099": [ - "Desc_Stone_C", - "NORMAL", - [ - 107368.21, - -43239.492, - 14774.433 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode426": [ - "Desc_OreIron_C", - "PURE", - [ - 68075.336, - -81001.086, - 9944.151 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode427": [ - "Desc_OreIron_C", - "PURE", - [ - 70865.266, - -78125.82, - 10451.649 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode42_1294": [ - "Desc_Stone_C", - "NORMAL", - [ - 63823.273, - 8376.804, - 14012.659 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode43": [ - "Desc_SAM_C", - "PURE", - [ - 82558.766, - -219609.03, - 8929.069 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode430": [ - "Desc_OreIron_C", - "PURE", - [ - 59113.395, - -71501.63, - 10568.02 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode431": [ - "Desc_OreIron_C", - "PURE", - [ - 64576.34, - -71386.945, - 10641.129 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode435_26": [ - "Desc_OreIron_C", - "PURE", - [ - 84199.14, - -86393.55, - 9766.527 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode437_30": [ - "Desc_OreIron_C", - "PURE", - [ - 83508.54, - -90506.79, - 9590.733 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode439_1": [ - "Desc_Stone_C", - "NORMAL", - [ - 79670.5, - -75852.08, - 12028.006 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode43_UAID_40B076DF2F7932D901_1711042113": [ - "Desc_SAM_C", - "IMPURE", - [ - -46645.43, - -252947.02, - 4931.0957 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode43_UAID_40B076DF2F7936D401_1733397541": [ - "Desc_SAM_C", - "IMPURE", - [ - -80869.77, - -32418.934, - 15656.698 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode43_UAID_40B076DF2F793ED901_1532454233": [ - "Desc_SAM_C", - "IMPURE", - [ - 152961.88, - -24054.336, - 4287.4365 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode43_UAID_40B076DF2F7941D901_1404601764": [ - "Desc_SAM_C", - "IMPURE", - [ - 230542.48, - -33617.023, - 2185.2993 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode440": [ - "Desc_Stone_C", - "PURE", - [ - 69552.086, - -100368.7, - 9391.888 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode441": [ - "Desc_Stone_C", - "NORMAL", - [ - 67878.4, - -95777.43, - 9362.034 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode442": [ - "Desc_Stone_C", - "NORMAL", - [ - 60592.707, - -77890.83, - 9437.138 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode443": [ - "Desc_Stone_C", - "NORMAL", - [ - -6448.6567, - -120483.445, - 10380.249 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode444_0": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 173702.45, - -91776.41, - 1051.0396 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode445": [ - "Desc_OreCopper_C", - "PURE", - [ - 56109.164, - -85970.16, - 9944.389 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode446_1": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 167391.5, - -88953.6, - 1049.7695 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode447": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 176296.81, - -94196.836, - 1419.1478 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode448": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 172814.17, - -94608.195, - 1042.363 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode449": [ - "Desc_Coal_C", - "PURE", - [ - 136290.22, - -20923.611, - 9425.299 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode451": [ - "Desc_Coal_C", - "NORMAL", - [ - 128059.31, - -24824.605, - 8263.719 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode452": [ - "Desc_Coal_C", - "PURE", - [ - 122698.04, - -26966.293, - 7998.9155 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode453": [ - "Desc_OreIron_C", - "PURE", - [ - -44869.383, - -139479.69, - 7983.0225 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode454": [ - "Desc_OreIron_C", - "PURE", - [ - -43381.926, - -136820.03, - 8046.3545 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode457": [ - "Desc_OreIron_C", - "PURE", - [ - 116236.01, - -15552.186, - 14026.735 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode458": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 49403.652, - -4743.892, - 13191.505 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode459": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - 52588.734, - -8859.303, - 13593.47 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode460": [ - "Desc_LiquidOil_C", - "PURE", - [ - 49638.543, - 655.75757, - 13149.619 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode461": [ - "Desc_Sulfur_C", - "IMPURE", - [ - 128296.086, - -75942.0, - 3668.3757 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode462": [ - "Desc_OreIron_C", - "PURE", - [ - -37614.496, - -142250.45, - 7971.792 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode462_UAID_40B076DF2F7902E201_1630060169": [ - "Desc_OreIron_C", - "NORMAL", - [ - -58995.68, - -224574.77, - 9573.6045 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode462_UAID_40B076DF2F7907E201_1624182051": [ - "Desc_OreIron_C", - "IMPURE", - [ - -64962.75, - -201169.06, - 6925.354 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode462_UAID_40B076DF2F790CE201_2008279933": [ - "Desc_OreIron_C", - "IMPURE", - [ - -52876.688, - -201761.7, - 6792.534 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode463": [ - "Desc_Stone_C", - "PURE", - [ - -55554.977, - -129406.36, - 6951.587 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode464": [ - "Desc_Stone_C", - "PURE", - [ - 50259.73, - -157152.75, - -144.06067 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode464_UAID_40B076DF2F790EE201_1850696287": [ - "Desc_Stone_C", - "IMPURE", - [ - 15240.254, - -158578.61, - -1397.121 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode464_UAID_40B076DF2F790FE201_1577140465": [ - "Desc_Stone_C", - "NORMAL", - [ - 66756.945, - -150676.98, - -1180.9619 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode464_UAID_40B076DF2F7914E201_2026233335": [ - "Desc_Stone_C", - "IMPURE", - [ - 92494.69, - -132749.06, - 700.67615 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode464_UAID_40B076DF2F7915E201_1334543513": [ - "Desc_Stone_C", - "NORMAL", - [ - 40251.387, - -144690.52, - 369.0744 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode465": [ - "Desc_Stone_C", - "NORMAL", - [ - 121322.34, - -88295.22, - 13669.116 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode466": [ - "Desc_Stone_C", - "NORMAL", - [ - 168496.5, - -108029.6, - 1587.0562 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode467": [ - "Desc_Sulfur_C", - "NORMAL", - [ - 92072.6, - 3163.584, - 16079.166 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode469": [ - "Desc_Coal_C", - "PURE", - [ - 138805.36, - -23952.67, - 9410.769 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode46_2284": [ - "Desc_Stone_C", - "NORMAL", - [ - 343519.2, - -83469.72, - 5618.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode474_UAID_40B076DF2F7983DF01_2128950703": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - 196667.81, - -13955.927, - 9398.481 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode474_UAID_40B076DF2F798DDF01_1645035472": [ - "Desc_RawQuartz_C", - "PURE", - [ - 193979.56, - -5467.6914, - 10260.311 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode474_UAID_40B076DF2F798EDF01_2134364650": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - 190097.75, - -17280.928, - 9456.516 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode476": [ - "Desc_OreBauxite_C", - "NORMAL", - [ - 263148.1, - 53611.164, - -1325.3866 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode477": [ - "Desc_OreBauxite_C", - "IMPURE", - [ - 261127.97, - 48274.6, - -816.8045 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode479": [ - "Desc_OreBauxite_C", - "PURE", - [ - 260298.52, - 56227.527, - -866.56665 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode47_3066": [ - "Desc_SAM_C", - "NORMAL", - [ - 15459.891, - -803.7703, - 14671.211 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode480": [ - "Desc_OreBauxite_C", - "NORMAL", - [ - 199007.17, - 89173.19, - 1096.8029 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode481": [ - "Desc_OreBauxite_C", - "IMPURE", - [ - 198936.42, - 93354.055, - 1238.6221 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode484": [ - "Desc_OreUranium_C", - "IMPURE", - [ - 168712.56, - 50839.164, - -9.32179 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode484_UAID_40B076DF2F79E0DF01_2091429101": [ - "Desc_OreUranium_C", - "IMPURE", - [ - 180193.9, - -189199.45, - 23503.2 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode485": [ - "Desc_OreBauxite_C", - "PURE", - [ - -59322.133, - 14594.764, - 23995.045 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode486": [ - "Desc_OreBauxite_C", - "NORMAL", - [ - 2570.9895, - 9834.487, - 24001.52 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode487": [ - "Desc_OreGold_C", - "NORMAL", - [ - -12814.523, - -104642.125, - 10908.915 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode487_UAID_40B076DF2F7934DF01_1597642799": [ - "Desc_OreGold_C", - "NORMAL", - [ - 103845.57, - -94854.04, - 12651.911 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode488": [ - "Desc_OreIron_C", - "IMPURE", - [ - -94905.47, - 262677.5, - -4620.1567 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode489": [ - "Desc_OreIron_C", - "IMPURE", - [ - -97178.42, - 264232.12, - -4625.652 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode49": [ - "Desc_OreIron_C", - "IMPURE", - [ - 265501.22, - -178205.92, - 3456.911 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode490": [ - "Desc_OreIron_C", - "IMPURE", - [ - -98579.16, - 265801.06, - -4634.952 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode491": [ - "Desc_OreIron_C", - "IMPURE", - [ - -91267.71, - 253077.45, - -4513.924 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode492": [ - "Desc_OreCopper_C", - "IMPURE", - [ - -83962.15, - 273576.62, - -6240.1333 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode493": [ - "Desc_OreCopper_C", - "IMPURE", - [ - -83133.63, - 275762.22, - -6264.2524 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode494": [ - "Desc_OreIron_C", - "IMPURE", - [ - -36499.56, - 243893.73, - -2502.624 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode495": [ - "Desc_OreIron_C", - "IMPURE", - [ - -35040.727, - 245805.3, - -2504.111 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode496": [ - "Desc_OreIron_C", - "NORMAL", - [ - -49077.016, - 231707.75, - -3845.7517 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode497_1": [ - "Desc_OreIron_C", - "NORMAL", - [ - -51644.598, - 229391.39, - -3845.7517 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode498": [ - "Desc_Coal_C", - "NORMAL", - [ - 400379.4, - -262928.12, - 3427.2507 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode499": [ - "Desc_Coal_C", - "NORMAL", - [ - 155867.52, - 248394.4, - -6062.5273 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode500": [ - "Desc_Coal_C", - "NORMAL", - [ - 157195.48, - 241871.55, - -6201.1733 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode501": [ - "Desc_Coal_C", - "NORMAL", - [ - 153876.16, - 252816.97, - -4609.9644 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode502": [ - "Desc_Coal_C", - "NORMAL", - [ - 150582.83, - 249923.77, - -5135.73 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode503": [ - "Desc_Coal_C", - "NORMAL", - [ - -75977.25, - 130576.336, - -3632.1213 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode504": [ - "Desc_Coal_C", - "NORMAL", - [ - -78418.71, - 129174.29, - -3648.8708 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode505": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 7171.53, - 155231.7, - -12082.94 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode506": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 5251.412, - 157169.19, - -12082.823 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode507": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 5023.7036, - 159951.48, - -12082.94 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode508": [ - "Desc_Stone_C", - "PURE", - [ - 120084.586, - -9957.308, - 10448.19 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode509": [ - "Desc_Stone_C", - "NORMAL", - [ - -108119.98, - 261059.14, - -4801.6577 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode510": [ - "Desc_Sulfur_C", - "IMPURE", - [ - -39889.758, - -93579.23, - 343.0762 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode511": [ - "Desc_Stone_C", - "NORMAL", - [ - -52587.438, - 264646.9, - -3819.6577 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode512": [ - "Desc_Stone_C", - "NORMAL", - [ - -89046.08, - 153285.14, - -3019.6936 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode513": [ - "Desc_OreCopper_C", - "PURE", - [ - 152648.42, - 5227.0913, - 15168.2705 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode514": [ - "Desc_OreCopper_C", - "PURE", - [ - 157737.73, - 14877.821, - 15369.975 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode515": [ - "Desc_OreCopper_C", - "PURE", - [ - 149936.7, - 4686.471, - 15468.126 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode516": [ - "Desc_Stone_C", - "PURE", - [ - 166452.45, - 7804.2637, - 15934.048 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode517": [ - "Desc_OreIron_C", - "PURE", - [ - 124933.164, - 5226.1895, - 15573.579 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode518": [ - "Desc_OreIron_C", - "PURE", - [ - 128572.93, - 1795.2966, - 15542.842 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode519": [ - "Desc_SAM_C", - "PURE", - [ - -48375.42, - 128937.13, - 23613.654 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode519_UAID_40B076DF2F79D3D901_1586151453": [ - "Desc_SAM_C", - "NORMAL", - [ - -181813.77, - 89076.63, - 17039.229 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode520": [ - "Desc_RawQuartz_C", - "PURE", - [ - -90474.37, - 67259.805, - 2145.0469 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode521": [ - "Desc_Stone_C", - "PURE", - [ - -107864.805, - 60190.59, - 2653.3467 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode521_UAID_40B076DF2F79C3E101_1100698081": [ - "Desc_Stone_C", - "NORMAL", - [ - -164380.9, - 64840.766, - 24379.793 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode521_UAID_40B076DF2F79C3E101_1735462083": [ - "Desc_Stone_C", - "NORMAL", - [ - -167201.16, - 61297.75, - 24000.764 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode522": [ - "Desc_RawQuartz_C", - "PURE", - [ - -90370.42, - 63712.156, - 2145.0469 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode523_UAID_40B076DF2F7987DF01_1117795413": [ - "Desc_OreIron_C", - "NORMAL", - [ - 245043.19, - -22318.057, - 8820.63 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode524_UAID_40B076DF2F798ADF01_1172524943": [ - "Desc_OreIron_C", - "NORMAL", - [ - 237724.66, - -23005.719, - 8796.636 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode528": [ - "Desc_OreIron_C", - "NORMAL", - [ - 233141.6, - -26440.264, - 8976.266 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode529": [ - "Desc_OreBauxite_C", - "NORMAL", - [ - 39477.65, - 52119.99, - 23601.602 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode530": [ - "Desc_OreIron_C", - "IMPURE", - [ - -99586.61, - 267811.94, - -4660.73 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode531": [ - "Desc_OreIron_C", - "IMPURE", - [ - -93267.11, - 254146.17, - -4509.7637 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode532": [ - "Desc_OreIron_C", - "IMPURE", - [ - -94006.57, - 268116.22, - -3127.7263 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode533": [ - "Desc_OreIron_C", - "IMPURE", - [ - -92372.08, - 266081.84, - -3125.0442 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode534": [ - "Desc_Stone_C", - "IMPURE", - [ - -55951.41, - 271564.9, - -3776.7 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode535": [ - "Desc_OreIron_C", - "IMPURE", - [ - -65049.113, - 137463.8, - 8488.221 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode536": [ - "Desc_OreIron_C", - "IMPURE", - [ - -42273.098, - 132150.97, - 8668.766 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode537": [ - "Desc_OreIron_C", - "IMPURE", - [ - -60453.418, - 141695.67, - 8416.784 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode538": [ - "Desc_OreIron_C", - "IMPURE", - [ - -41928.32, - 206907.64, - -2228.233 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode539": [ - "Desc_OreIron_C", - "IMPURE", - [ - -43940.164, - 207992.47, - -2228.233 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode53_510": [ - "Desc_OreCopper_C", - "PURE", - [ - -21758.373, - -145311.75, - 10021.679 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode540": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -33328.184, - 231626.16, - -1394.3503 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode541": [ - "Desc_OreIron_C", - "IMPURE", - [ - -38249.465, - 127975.21, - 8811.497 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode542": [ - "Desc_OreIron_C", - "IMPURE", - [ - -41484.49, - 125793.586, - 8644.933 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode543": [ - "Desc_OreIron_C", - "NORMAL", - [ - 571.7422, - 283802.1, - -1139.7622 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode544": [ - "Desc_OreIron_C", - "NORMAL", - [ - -1126.0554, - 285301.25, - -1139.7622 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode545": [ - "Desc_OreIron_C", - "NORMAL", - [ - -44922.047, - 302273.56, - -2543.1182 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode546": [ - "Desc_OreIron_C", - "NORMAL", - [ - -50406.527, - 302870.72, - -2583.3333 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode547": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -21265.09, - 283147.75, - -2531.1895 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode547_UAID_40B076DF2F79ADE101_1836911209": [ - "Desc_OreCopper_C", - "PURE", - [ - 80832.04, - 242478.2, - -4444.0464 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode547_UAID_40B076DF2F79AEE101_1979010387": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 58030.617, - 82304.88, - 11800.666 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode548": [ - "Desc_Stone_C", - "NORMAL", - [ - 3998.1523, - 271120.62, - -4107.9634 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode549": [ - "Desc_Stone_C", - "NORMAL", - [ - 4127.7695, - 273241.8, - -4107.9634 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode54_833": [ - "Desc_Stone_C", - "PURE", - [ - -41844.605, - -152412.11, - 9227.157 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode550": [ - "Desc_Stone_C", - "NORMAL", - [ - 16091.836, - 264153.12, - -3824.18 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode551": [ - "Desc_OreIron_C", - "NORMAL", - [ - -54100.96, - 229417.02, - -3845.7517 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode552": [ - "Desc_RawQuartz_C", - "NORMAL", - [ - -194230.34, - -140421.95, - -1241.9169 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode553": [ - "Desc_Stone_C", - "IMPURE", - [ - -41301.406, - 288558.03, - -2545.5698 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode554": [ - "Desc_Stone_C", - "NORMAL", - [ - -37142.074, - 201538.16, - -3056.461 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode555": [ - "Desc_Stone_C", - "IMPURE", - [ - -62536.773, - 228042.6, - -3279.1113 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode556": [ - "Desc_Stone_C", - "IMPURE", - [ - -110521.766, - 249721.67, - -5349.684 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode557": [ - "Desc_Stone_C", - "IMPURE", - [ - -94477.42, - 228243.27, - -2399.3713 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode558": [ - "Desc_OreIron_C", - "NORMAL", - [ - -8996.638, - 293512.3, - -2527.2478 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode559": [ - "Desc_Coal_C", - "NORMAL", - [ - -89379.35, - 136763.08, - -3948.6487 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode55_1215": [ - "Desc_OreIron_C", - "PURE", - [ - -47085.402, - -141054.67, - 8074.4297 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode560": [ - "Desc_Coal_C", - "NORMAL", - [ - -86788.44, - 138201.34, - -3613.601 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode561": [ - "Desc_Stone_C", - "PURE", - [ - -55288.332, - 129002.875, - 8671.784 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode562": [ - "Desc_OreCopper_C", - "IMPURE", - [ - -71673.08, - 106511.31, - 8466.151 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode563": [ - "Desc_OreIron_C", - "PURE", - [ - 271770.7, - 100432.48, - -1294.798 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode563_UAID_40B076DF2F79B7E101_1869159978": [ - "Desc_OreIron_C", - "IMPURE", - [ - 225650.66, - 147647.98, - -193.43524 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode563_UAID_40B076DF2F79B8E101_1620414156": [ - "Desc_OreIron_C", - "IMPURE", - [ - 221480.64, - 146593.89, - -200.09094 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode563_UAID_40B076DF2F79B9E101_1570060334": [ - "Desc_OreIron_C", - "IMPURE", - [ - 233432.66, - 145602.98, - -267.43524 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode563_UAID_40B076DF2F79BBE101_1434258671": [ - "Desc_OreIron_C", - "IMPURE", - [ - 233292.98, - 139879.98, - -304.43524 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode564": [ - "Desc_Stone_C", - "PURE", - [ - 284986.28, - 111894.07, - -1605.7148 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode565_8": [ - "Desc_OreIron_C", - "PURE", - [ - 242756.75, - 87933.09, - -617.177 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode566": [ - "Desc_OreBauxite_C", - "IMPURE", - [ - -5633.5938, - 44274.062, - 21065.998 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode567": [ - "Desc_OreIron_C", - "PURE", - [ - 245861.55, - 4378.943, - 573.6341 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode568": [ - "Desc_OreBauxite_C", - "PURE", - [ - -5292.6836, - 92075.195, - 22756.326 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode569": [ - "Desc_OreIron_C", - "IMPURE", - [ - -43326.97, - 130254.38, - 8662.2705 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode570": [ - "Desc_OreGold_C", - "PURE", - [ - 270786.06, - 120111.016, - -54.522705 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode571": [ - "Desc_Stone_C", - "PURE", - [ - -53615.426, - 160375.56, - 3355.89 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F795EE801_1339162695": [ - "Desc_Coal_C", - "IMPURE", - [ - 153853.69, - 84162.78, - 9505.601 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F796BE101_1963012602": [ - "Desc_Coal_C", - "PURE", - [ - 206003.17, - 181237.31, - 10347.32 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F796FE101_1569477308": [ - "Desc_Coal_C", - "NORMAL", - [ - 209926.73, - 162974.75, - 5348.379 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7971E101_2069219665": [ - "Desc_Coal_C", - "IMPURE", - [ - -144746.1, - 64418.605, - 3136.949 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7972E101_1083579843": [ - "Desc_Coal_C", - "PURE", - [ - -148429.69, - 56309.953, - 3127.6848 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7973E101_1125437021": [ - "Desc_Coal_C", - "IMPURE", - [ - -281034.4, - -142694.97, - -1635.9777 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7974E101_1439035199": [ - "Desc_Coal_C", - "IMPURE", - [ - -271793.5, - -146229.11, - -1628.8964 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7974E101_1674467201": [ - "Desc_Coal_C", - "NORMAL", - [ - -275456.5, - -165870.11, - -1621.8964 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F797DE001_1807610722": [ - "Desc_Coal_C", - "IMPURE", - [ - 151131.3, - 75310.914, - 9714.443 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7980E001_1705275252": [ - "Desc_Coal_C", - "IMPURE", - [ - 155600.48, - 113111.57, - 6026.2466 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7981E001_1464253430": [ - "Desc_Coal_C", - "IMPURE", - [ - 177478.03, - 129905.27, - 10377.458 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7983E001_1088885785": [ - "Desc_Coal_C", - "NORMAL", - [ - 214894.03, - 116756.27, - 10801.458 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7983E001_1840982787": [ - "Desc_Coal_C", - "PURE", - [ - 239775.03, - 148305.28, - 6662.4585 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7984E001_1384492965": [ - "Desc_Coal_C", - "IMPURE", - [ - 193869.03, - 116585.27, - 10248.458 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F7984E001_1664435967": [ - "Desc_Coal_C", - "IMPURE", - [ - 180820.03, - 141195.28, - 9394.458 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode573_UAID_40B076DF2F79ACE101_1257410031": [ - "Desc_Coal_C", - "NORMAL", - [ - -265694.5, - -162571.11, - 1526.1036 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode574": [ - "Desc_OreGold_C", - "NORMAL", - [ - 90375.79, - 80713.84, - 10116.561 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode575": [ - "Desc_Stone_C", - "PURE", - [ - -80089.19, - 204746.5, - 1544.5308 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode576": [ - "Desc_OreUranium_C", - "NORMAL", - [ - 38000.17, - 91735.95, - -4809.0513 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode577": [ - "Desc_OreIron_C", - "IMPURE", - [ - -55693.168, - 194370.48, - -2557.0276 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode578": [ - "Desc_OreIron_C", - "IMPURE", - [ - -57161.062, - 192772.7, - -2513.3726 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode579": [ - "Desc_OreIron_C", - "IMPURE", - [ - -58919.395, - 195892.94, - -2195.5679 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode57_UAID_40B076DF2F7935DF01_1413169977": [ - "Desc_RawQuartz_C", - "IMPURE", - [ - 55041.62, - -130641.27, - 7156.283 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode57_UAID_40B076DF2F7991DF01_1459615180": [ - "Desc_RawQuartz_C", - "IMPURE", - [ - 62289.97, - -137424.12, - 8325.424 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode580": [ - "Desc_OreIron_C", - "IMPURE", - [ - -61757.27, - 194633.72, - -2042.01 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode581": [ - "Desc_Coal_C", - "NORMAL", - [ - 276452.75, - -250331.38, - 1260.6814 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode582": [ - "Desc_Sulfur_C", - "IMPURE", - [ - 296499.78, - 13253.512, - -881.7694 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode583_1": [ - "Desc_OreIron_C", - "PURE", - [ - 255908.45, - -3071.1897, - 3583.2832 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode584": [ - "Desc_Stone_C", - "NORMAL", - [ - -8700.848, - 283439.62, - -1137.0134 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode585": [ - "Desc_OreIron_C", - "NORMAL", - [ - -10233.545, - 291034.9, - -2475.6526 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode586": [ - "Desc_Stone_C", - "IMPURE", - [ - -43321.69, - 239553.47, - -3810.861 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode587": [ - "Desc_Coal_C", - "PURE", - [ - -66076.53, - 296870.72, - -6102.426 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode588": [ - "Desc_RawQuartz_C", - "PURE", - [ - -167359.83, - -145682.58, - -1914.1226 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode588_UAID_40B076DF2F79CEDF01_1910960903": [ - "Desc_RawQuartz_C", - "PURE", - [ - -171986.1, - -144145.58, - -2030.1938 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode589": [ - "Desc_Stone_C", - "NORMAL", - [ - 8341.529, - 147571.7, - -9599.883 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode589_UAID_40B076DF2F79B1E101_1767545917": [ - "Desc_Stone_C", - "IMPURE", - [ - 135005.19, - 123175.484, - 12311.319 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode589_UAID_40B076DF2F79B2E101_1298360096": [ - "Desc_Stone_C", - "PURE", - [ - 146861.0, - 115062.79, - 12296.142 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode590": [ - "Desc_Coal_C", - "PURE", - [ - 17163.822, - 280787.9, - 2768.0454 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode591": [ - "Desc_OreIron_C", - "IMPURE", - [ - -47534.355, - 289606.6, - -2526.4792 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode592": [ - "Desc_OreIron_C", - "IMPURE", - [ - -50101.902, - 284478.03, - -2614.764 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode593": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -28703.168, - 198210.48, - -1997.0276 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode594": [ - "Desc_Coal_C", - "NORMAL", - [ - 404788.16, - -113960.586, - 634.6417 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode595": [ - "Desc_OreBauxite_C", - "PURE", - [ - -217052.25, - 11242.145, - 17705.383 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode596": [ - "Desc_OreBauxite_C", - "PURE", - [ - -177367.2, - 44998.918, - 23765.87 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode597": [ - "Desc_OreBauxite_C", - "NORMAL", - [ - -150574.8, - -22.5576, - 19505.623 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode598_0": [ - "Desc_OreUranium_C", - "NORMAL", - [ - -75893.16, - 51636.96, - 19145.953 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode599": [ - "Desc_Coal_C", - "PURE", - [ - -60960.887, - 96196.086, - 21234.123 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode59_755": [ - "Desc_Stone_C", - "NORMAL", - [ - 20776.252, - -134970.05, - 16881.836 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode5_381": [ - "Desc_Coal_C", - "NORMAL", - [ - -107739.1, - -130639.96, - -1525.4753 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode600": [ - "Desc_Coal_C", - "NORMAL", - [ - -29925.75, - 39693.06, - 21307.764 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode601": [ - "Desc_Coal_C", - "NORMAL", - [ - -64843.035, - -7738.4907, - 22626.664 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode602": [ - "Desc_Coal_C", - "NORMAL", - [ - 33024.746, - 69.47814, - 23076.406 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode603": [ - "Desc_Coal_C", - "NORMAL", - [ - 57623.453, - 45463.215, - 24895.326 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode604": [ - "Desc_Coal_C", - "IMPURE", - [ - 8348.431, - 70432.0, - 23244.65 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode605": [ - "Desc_Coal_C", - "PURE", - [ - -107793.87, - 31855.473, - 22428.254 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode606": [ - "Desc_Coal_C", - "NORMAL", - [ - -141071.52, - 39662.027, - 19144.66 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode607": [ - "Desc_SAM_C", - "IMPURE", - [ - -143612.11, - 20728.18, - 19457.725 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode609": [ - "Desc_Coal_C", - "NORMAL", - [ - -53781.875, - 33003.273, - 20012.234 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode60_984": [ - "Desc_Stone_C", - "NORMAL", - [ - 75114.84, - -123003.48, - 13630.326 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode610": [ - "Desc_Coal_C", - "PURE", - [ - 404471.16, - -116794.984, - 1122.1617 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode611": [ - "Desc_Coal_C", - "IMPURE", - [ - 368850.56, - -76218.82, - -538.8308 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode612": [ - "Desc_Coal_C", - "IMPURE", - [ - 365436.38, - -80081.98, - -63.16175 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode613": [ - "Desc_Sulfur_C", - "NORMAL", - [ - 380366.25, - -109496.38, - 9236.618 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode614": [ - "Desc_Coal_C", - "PURE", - [ - 330471.4, - -264658.34, - 2144.0054 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode615": [ - "Desc_Coal_C", - "NORMAL", - [ - 271513.7, - -246510.55, - 1630.9066 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode616": [ - "Desc_Coal_C", - "NORMAL", - [ - 399533.88, - -255364.92, - 3822.78 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode617": [ - "Desc_Coal_C", - "NORMAL", - [ - 362593.6, - -135769.97, - 5895.026 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode618": [ - "Desc_Coal_C", - "NORMAL", - [ - 368128.34, - -139150.7, - 5475.8516 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode619": [ - "Desc_Coal_C", - "NORMAL", - [ - 365854.44, - -133383.73, - 5255.9 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode62": [ - "Desc_Stone_C", - "PURE", - [ - -227331.1, - -158278.33, - 8947.665 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode620": [ - "Desc_Coal_C", - "IMPURE", - [ - 406197.03, - -252989.97, - 3920.4285 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode621": [ - "Desc_Coal_C", - "IMPURE", - [ - 218926.47, - -255338.89, - 1070.1923 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode622": [ - "Desc_Coal_C", - "IMPURE", - [ - 220712.89, - -250482.2, - 1257.3457 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode623": [ - "Desc_Coal_C", - "PURE", - [ - 325548.8, - -264500.12, - 1673.578 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode624": [ - "Desc_Sulfur_C", - "PURE", - [ - 246502.22, - -276999.9, - 1498.7733 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode632": [ - "Desc_OreUranium_C", - "IMPURE", - [ - -132772.22, - -187579.23, - 46528.31 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode633": [ - "Desc_OreBauxite_C", - "NORMAL", - [ - 106047.65, - 50478.785, - 9765.116 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode634": [ - "Desc_OreBauxite_C", - "PURE", - [ - 116877.54, - 51510.906, - 17359.506 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode635": [ - "Desc_OreBauxite_C", - "IMPURE", - [ - 103317.65, - 67498.78, - 9540.116 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode636": [ - "Desc_OreBauxite_C", - "IMPURE", - [ - 89592.65, - 62638.78, - 10375.116 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode65_1865": [ - "Desc_OreIron_C", - "PURE", - [ - 219394.75, - 37188.816, - -1292.1664 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode66": [ - "Desc_OreIron_C", - "NORMAL", - [ - 245700.44, - 30065.398, - -847.29785 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode67_2193": [ - "Desc_Stone_C", - "NORMAL", - [ - 270772.25, - 47035.57, - -1613.8239 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode68_2514": [ - "Desc_OreCopper_C", - "NORMAL", - [ - -36771.387, - 296778.97, - -2366.0461 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode69_UAID_A036BCACDEB0A7A601_1261875850": [ - "Desc_Stone_C", - "PURE", - [ - 225430.5, - -6949.2285, - -1549.8608 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode6_379": [ - "Desc_Coal_C", - "NORMAL", - [ - -110109.1, - -129159.96, - -1405.4753 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode70_3132": [ - "Desc_OreGold_C", - "PURE", - [ - -131573.67, - 227253.1, - -787.02405 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_736": [ - "Desc_Sulfur_C", - "NORMAL", - [ - -101381.73, - 91578.52, - 8665.239 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F7912DC01_2042985647": [ - "Desc_Sulfur_C", - "PURE", - [ - 188183.27, - -247467.9, - 23307.008 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F7923DB01_2085455593": [ - "Desc_Sulfur_C", - "PURE", - [ - 242309.97, - 152778.88, - 8887.83 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F7924DB01_1576108771": [ - "Desc_Sulfur_C", - "PURE", - [ - 94847.23, - 224537.16, - -85.79978 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F7925DB01_1453678949": [ - "Desc_Sulfur_C", - "IMPURE", - [ - 91305.266, - 220216.78, - -78.6072 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F7929DB01_1177072656": [ - "Desc_Sulfur_C", - "NORMAL", - [ - 96367.984, - 220401.47, - -83.75845 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F797CDB01_1695622247": [ - "Desc_Sulfur_C", - "PURE", - [ - -145043.58, - 165965.16, - 12698.504 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode71_UAID_40B076DF2F79B9DB01_1490254983": [ - "Desc_Sulfur_C", - "NORMAL", - [ - -213022.56, - -170020.81, - -1317.3026 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode72_998": [ - "Desc_OreGold_C", - "PURE", - [ - -92343.336, - 281605.88, - -4620.4956 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode73_6071": [ - "Desc_OreIron_C", - "NORMAL", - [ - 133276.12, - 197857.0, - -7378.8447 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode74": [ - "Desc_OreIron_C", - "NORMAL", - [ - 131967.42, - 194729.0, - -7424.693 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode75_6425": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 130551.0, - 179528.53, - -5545.097 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode76": [ - "Desc_OreIron_C", - "PURE", - [ - 133637.48, - 205791.55, - -7424.3213 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode77": [ - "Desc_Stone_C", - "NORMAL", - [ - 226320.0, - -200702.0, - 1079.3499 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode78_1097": [ - "Desc_SAM_C", - "NORMAL", - [ - 228273.23, - 116287.04, - -1581.8171 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode7_380": [ - "Desc_Coal_C", - "NORMAL", - [ - -102630.016, - -140319.84, - -1581.732 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode80": [ - "Desc_OreIron_C", - "PURE", - [ - -167603.14, - 179557.16, - 1589.6323 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode81": [ - "Desc_OreIron_C", - "PURE", - [ - -164442.61, - 171771.8, - 1612.3469 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode82": [ - "Desc_OreIron_C", - "PURE", - [ - -162723.67, - 182453.1, - 712.9761 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode83": [ - "Desc_OreCopper_C", - "PURE", - [ - -171878.62, - 185789.22, - 1077.1573 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode83_UAID_40B076DF2F79FBE101_1618730935": [ - "Desc_OreCopper_C", - "IMPURE", - [ - -159616.38, - 112857.88, - 16254.216 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode83_UAID_40B076DF2F79FFE101_1122581639": [ - "Desc_OreCopper_C", - "IMPURE", - [ - -156723.47, - 109165.41, - 16113.072 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode84": [ - "Desc_Stone_C", - "PURE", - [ - -156728.53, - 202159.61, - 961.4581 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode85": [ - "Desc_Stone_C", - "PURE", - [ - -151152.17, - 184381.0, - 998.07 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode86": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -229053.75, - 78058.34, - -1684.9669 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode87": [ - "Desc_LiquidOil_C", - "PURE", - [ - -245048.64, - 90588.17, - -1652.3981 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode88": [ - "Desc_LiquidOil_C", - "NORMAL", - [ - -232468.75, - 62838.28, - -1676.4933 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode89": [ - "Desc_LiquidOil_C", - "PURE", - [ - -252533.73, - 69813.32, - -1562.461 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode90_482": [ - "Desc_OreIron_C", - "NORMAL", - [ - 252751.22, - 29139.623, - -798.65894 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode91_785": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 282284.2, - 63326.754, - -1601.3115 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode92": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 297499.06, - -7312.437, - -298.23465 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode93_5": [ - "Desc_Stone_C", - "PURE", - [ - 219900.9, - 42217.496, - -1597.6604 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode94_406": [ - "Desc_OreCopper_C", - "NORMAL", - [ - 160085.53, - 259420.73, - -1094.7056 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode95_579": [ - "Desc_OreIron_C", - "PURE", - [ - 164518.28, - 238317.95, - -8588.598 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode96_886": [ - "Desc_Stone_C", - "NORMAL", - [ - 141567.92, - 230906.75, - -5835.1924 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode97_1": [ - "Desc_Stone_C", - "NORMAL", - [ - 245860.05, - -218934.48, - 1311.5663 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode98": [ - "Desc_LiquidOil_C", - "IMPURE", - [ - 169716.92, - 203386.05, - -9242.584 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode99": [ - "Desc_SAM_C", - "IMPURE", - [ - 132957.52, - 240892.88, - -14192.569 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser10_3650": [ - "Desc_Geyser_C", - "IMPURE", - [ - 49337.0, - -54670.0, - 5773.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser11_3803": [ - "Desc_Geyser_C", - "NORMAL", - [ - 70191.0, - -14100.0, - 13085.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser12_3894": [ - "Desc_Geyser_C", - "NORMAL", - [ - -33373.0, - -88036.0, - -87.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser13_3999": [ - "Desc_Geyser_C", - "PURE", - [ - -49789.0, - -162415.9, - -1849.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser14": [ - "Desc_Geyser_C", - "PURE", - [ - 202233.0, - 45027.016, - -1317.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser15": [ - "Desc_Geyser_C", - "PURE", - [ - -142293.36, - -61383.316, - 3018.4146 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser18": [ - "Desc_Geyser_C", - "NORMAL", - [ - -138869.89, - -57952.965, - 3236.3616 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser19": [ - "Desc_Geyser_C", - "NORMAL", - [ - 206903.0, - 45592.016, - -1367.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser2_581": [ - "Desc_Geyser_C", - "NORMAL", - [ - 141833.0, - -89090.0, - 1558.6443 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser4_1615": [ - "Desc_Geyser_C", - "NORMAL", - [ - 281106.34, - 8139.6377, - 953.33203 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser7_2873": [ - "Desc_Geyser_C", - "IMPURE", - [ - 92620.0, - -31568.236, - 5615.953 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser8": [ - "Desc_Geyser_C", - "NORMAL", - [ - 95894.555, - -30845.922, - 5590.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser9_3239": [ - "Desc_Geyser_C", - "IMPURE", - [ - 43763.0, - -98725.0, - 10544.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_76": [ - "Desc_Geyser_C", - "IMPURE", - [ - 134478.39, - -90977.96, - 1984.0189 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F792DE001_1228687627": [ - "Desc_Geyser_C", - "IMPURE", - [ - 125777.0, - -147081.0, - 18842.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F792EE001_1257671809": [ - "Desc_Geyser_C", - "NORMAL", - [ - -213328.0, - -160655.0, - -1621.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F792FE001_1083532997": [ - "Desc_Geyser_C", - "NORMAL", - [ - -209862.0, - -159644.0, - -1769.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F7967E001_1786196831": [ - "Desc_Geyser_C", - "NORMAL", - [ - -92534.0, - -67192.0, - 15498.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F796AE001_1661824368": [ - "Desc_Geyser_C", - "NORMAL", - [ - -173000.0, - 29532.0, - 15333.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F796AE001_1928280369": [ - "Desc_Geyser_C", - "NORMAL", - [ - -169793.0, - 20466.0, - 15329.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F796CE001_1156904726": [ - "Desc_Geyser_C", - "PURE", - [ - 50532.0, - 44056.0, - 23962.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F796DE001_2106907903": [ - "Desc_Geyser_C", - "PURE", - [ - 46522.0, - 53125.0, - 23943.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F796EE001_1440606080": [ - "Desc_Geyser_C", - "PURE", - [ - 44326.0, - 48548.0, - 23761.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F796FE001_1768243264": [ - "Desc_Geyser_C", - "IMPURE", - [ - 39037.0, - 218871.0, - -5933.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F7974E001_1257931119": [ - "Desc_Geyser_C", - "NORMAL", - [ - 40792.0, - 211028.0, - -5818.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F7975E001_2124245305": [ - "Desc_Geyser_C", - "PURE", - [ - 152735.0, - 211451.0, - -8796.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F797AE001_1940806190": [ - "Desc_Geyser_C", - "IMPURE", - [ - 282899.0, - 1745.0, - 2550.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F797AE001_2137062191": [ - "Desc_Geyser_C", - "IMPURE", - [ - 281822.0, - -583.0, - 2408.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F79ADDD01_1447318011": [ - "Desc_Geyser_C", - "PURE", - [ - 89458.0, - 223800.0, - 21.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F79ADDD01_1602669012": [ - "Desc_Geyser_C", - "PURE", - [ - 94642.0, - 218487.0, - -154.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNodeGeyser_C_UAID_40B076DF2F79C7DB01_1750096454": [ - "Desc_Geyser_C", - "IMPURE", - [ - 191906.0, - -242852.0, - 22813.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode_700": [ - "Desc_Coal_C", - "PURE", - [ - -113215.83, - -44145.0, - 16295.932 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode_C_UAID_40B076DF2F794DE201_1841969367": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 20143.979, - -169847.12, - 15477.609 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode_C_UAID_40B076DF2F794FE201_2126930721": [ - "Desc_OreCopper_C", - "IMPURE", - [ - 95345.54, - -168441.8, - 13262.0 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode_C_UAID_A036BCACDEB0A6A601_2086848673": [ - "Desc_OreCopper_C", - "PURE", - [ - -26897.672, - -145468.75, - 8397.135 - ], - null - ], - "Persistent_Level:PersistentLevel.BP_ResourceNode20_UAID_04D9F5D42711A7C902_1245462149": [ - "Desc_Stone_C", - "PURE", - [ - -278905.97, - -186362.97, - 338.1084 - ], - null - ] -} diff --git a/game_data/sav_data/somersloops.json b/game_data/sav_data/somersloops.json deleted file mode 100644 index 6ca3948..0000000 --- a/game_data/sav_data/somersloops.json +++ /dev/null @@ -1,1592 +0,0 @@ -{ - "Persistent_Level:PersistentLevel.BP_Crystal_mk3_C_36": [ - "9ESMK9H2QEDHJ9A5S015TJ0TP", - [ - -0.024093999643446853, - -0.011952819439815233, - 0.00690555162010845, - 0.9996143869740185 - ], - [ - 206595.12, - 171284.75, - 22366.715 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT10": [ - "EF9SQDOUFQGSGW9HGMWVGYM4T", - [ - 0.013051617721116768, - 0.043514033964983, - -0.9955460530067971, - 0.08260896116973986 - ], - [ - 20256.18, - -250754.45, - 4921.6206 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT100_3119": [ - "A5MZ4ELKEXAYTDFLMKGMQZLMM", - [ - -0.004039432708370092, - 0.01070476161599979, - -0.1907074447376813, - 0.981580236956594 - ], - [ - 41149.625, - 173525.42, - 1546.0798 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT10_UAID_40B076DF2F79B75201_1879979970": [ - "A83ST7K8BTOU8Q9OKEMQIOSXE", - [ - -0.12018089097643955, - 0.22108435623031925, - 0.42228920516937074, - 0.870832985176696 - ], - [ - 26012.896, - -232917.3, - -1782.5323 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT110": [ - "9ZI97U85BHEMNEFSBAN8Q97HH", - [ - -0.34794248614786283, - -0.10763716768187692, - -0.8222628415097946, - 0.43730319680846863 - ], - [ - -25118.654, - 267763.22, - -11490.324 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT110_47": [ - "480500QTXQZ43TVF4H7651HK9", - [ - 0.04718475550729617, - -0.08922854955746752, - 0.4951809832916235, - 0.8629065178673344 - ], - [ - -44104.066, - 31121.75, - 23611.197 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11_0": [ - "ACPR6AYP6K6QNWA52I94OZEFI", - [ - -0.03780991880937631, - -0.04469054859251611, - 0.6447831904819249, - 0.7621205955608852 - ], - [ - 170052.14, - 232325.19, - -8566.578 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11_1": [ - "6U6NNE5ECR2K71GNEDVZT12MT", - [ - -0.05233885069866077, - 0.02907388785591633, - -0.11894277207401358, - 0.9910943298817898 - ], - [ - -50928.4, - 220008.61, - -3797.9631 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11_2": [ - "57DZUJI0BTI1QVIDG9YS5HGLI", - [ - -0.0, - 0.0, - -0.4155010349256729, - 0.9095927055422635 - ], - [ - 24129.115, - 74258.766, - 22864.162 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT11_35": [ - "8N2VMA5OF6AFNVOK7EXFVL8AM", - [ - -0.006806610449327121, - -0.025986987769186017, - 0.25328518372785264, - 0.967018594560013 - ], - [ - -29456.336, - 81319.95, - 21328.418 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT121": [ - "2LUY6P7VRDU9JLGK9YCCZDWGT", - [ - 0.0, - -0.0, - 0.9142101093429422, - 0.40524051620632107 - ], - [ - 210229.0, - -248867.0, - 20268.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT123_1": [ - "16TS5SGLAB5OGQMHLQT1K027S", - [ - -0.0, - 0.0, - -0.47139673682599764, - 0.881921264348355 - ], - [ - 209893.0, - -186445.0, - 7430.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_1": [ - "AWMSV1XNEUXQXNWYWI76PKKAM", - [ - 0.0, - -0.0, - 0.08358672586835345, - 0.9965005064015817 - ], - [ - 178589.8, - 57809.184, - 4282.2944 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_16": [ - "5UF96OL8F0YYFCNY82DC5HAOE", - [ - -0.012733474438239882, - 0.02560647895700879, - 0.9883500501729142, - 0.14948693985546946 - ], - [ - 151406.12, - 96198.375, - 25683.361 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_25": [ - "9T3US14CYWS7B8323CIT374LW", - [ - 0.0, - -0.0, - 0.24620007468854876, - 0.9692190274769439 - ], - [ - -164980.9, - 40623.203, - 17845.293 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT12_3": [ - "9A50O30DW1N4OMG4JBVKR8OUN", - [ - 0.0, - -0.0, - 0.38647148864470315, - 0.9223013544740933 - ], - [ - 121433.32, - 192946.4, - -5000.52 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13": [ - "5T2A90MFJW7DPVKJB0C2ZZMNG", - [ - -0.11712288372967192, - 0.22660349040681524, - 0.3031520194962022, - 0.9181677087099439 - ], - [ - -142453.0, - -154271.89, - -1739.7607 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT133": [ - "3QPH2QP37DJE7FL4IKZYY947L", - [ - 0.02311155265671292, - -0.016132018410465257, - -0.49836795872553097, - 0.8665073524394055 - ], - [ - -263369.12, - -42597.73, - 2114.7236 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT134": [ - "9PHBR4CXSLSCO69QLQUB48PH6", - [ - -0.10275480283224454, - -0.0342712408031937, - 0.6027470254594691, - 0.7905459859163653 - ], - [ - -98596.734, - -72561.75, - 7321.3765 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT137": [ - "9035PN0WV6AX27513QZLUU3T2", - [ - 0.011655765070701513, - -0.22607456309294013, - 0.5891585694018573, - 0.7756588265231755 - ], - [ - -128378.7, - 73566.51, - 4949.651 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT138": [ - "C5UNUIWQ1BGSGG9Y27426O9SN", - [ - 0.0, - -0.0, - 0.7175645254972853, - 0.696492032795678 - ], - [ - -112842.77, - 200646.3, - 6687.0186 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13_17": [ - "6ZVPF9UC2EKDMVRXH9PAUWUTQ", - [ - -0.11228180238358043, - 0.1272029595082981, - 0.17269759350474562, - 0.9702513824486386 - ], - [ - 127042.6, - 81369.766, - 17596.953 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13_3": [ - "661ZB7NBHJOV13FDKD7MLR8Y6", - [ - -0.005528106241082006, - 0.022663637567253363, - -0.7909018319367855, - 0.6114982353307686 - ], - [ - -62127.31, - 278743.1, - -800.67004 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT13_5": [ - "78LIX115PUIWUPGZJX0KA4SBG", - [ - 0.002383891280063503, - -0.026675242569233867, - -0.08898052033630084, - 0.9956732473542306 - ], - [ - -68106.75, - 15570.242, - 22881.127 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT147": [ - "2IKT546XO9TX3096D92RH72KG", - [ - -0.5081272592908288, - 0.47803466497017527, - -0.5210314763775711, - 0.49174764674195576 - ], - [ - -228736.45, - 48227.645, - 14435.06 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14_18": [ - "6ZV5OUR3A4IUW8OYTZT32X7SP", - [ - -0.1240175181625306, - -0.14952854986786537, - -0.1856459715263108, - 0.9632219065299916 - ], - [ - 21814.447, - 126437.836, - 13875.861 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14_2": [ - "0JMESHD2WUF1ZM0KQ6ON3JKG9", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -23497.416, - -37126.645, - 12691.171 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14_26": [ - "45UWPTO34PXL4KQTGRUE81XMI", - [ - 0.0, - -0.0, - 0.013544955218135464, - 0.9999082628862204 - ], - [ - 46215.867, - 30078.55, - 21985.072 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14_5": [ - "DEJKE104EL5ZVDR1H6UQCPPXL", - [ - 0.21710793592400804, - 0.15991391009771205, - -0.6861617600712243, - 0.675628392337117 - ], - [ - 135358.33, - 263050.84, - 5220.627 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT14_UAID_04421A9713F0E56401_1503060069": [ - "8E7005F5EOO8MBKCC0PKG5ETS", - [ - 0.08039356733059798, - 0.0207053336168121, - -0.8385493015324401, - 0.5384637707321952 - ], - [ - -46914.44, - -20742.035, - 18663.113 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT15": [ - "3R376PHWWS8YKBRQ91PCVT4CE", - [ - 0.014694592420834854, - -0.03143067361931198, - 0.34031002183426373, - 0.9396729594644005 - ], - [ - -150618.8, - -105222.34, - -2841.4868 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT15_13": [ - "BZFSOMYTKKSVVI1R618QPJYEH", - [ - 0.0, - -0.0, - 0.4692301113999485, - 0.8830759324970826 - ], - [ - -16097.148, - 29430.15, - 24677.744 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT15_6": [ - "B7IC3GZ9K7T6D4PNRRTZGKM7D", - [ - -0.06311371890497768, - -0.19713894873420032, - 0.0017538997464784864, - 0.9783403381306718 - ], - [ - 194968.08, - 199950.1, - -4851.646 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT16": [ - "D95KDVDT5GFOHZE1OHCW48SFW", - [ - -0.013735612849354532, - -0.012449233273719655, - 0.7408237786287364, - 0.6714435780829169 - ], - [ - -232489.44, - -181844.3, - 5384.951 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT16_7": [ - "B7IC3GZ9K7T6D4PNRRTZGKM7D", - [ - -0.044204796443261966, - -0.004196574006703793, - -0.09441666797644556, - 0.9945420139673544 - ], - [ - 204083.19, - 195093.47, - 17625.857 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT17_30": [ - "1KT8ZTFVIXKFKMYRZ1IK5ZZTZ", - [ - 0.056211774375799606, - -0.10993634491856101, - 0.6356910894022086, - 0.7620046425987866 - ], - [ - -164657.0, - 21770.31, - 21901.207 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT17_6": [ - "4P5GAUADJ4T13LMJ6IRNWHNBD", - [ - 0.024541228522912288, - 0.0, - 0.0, - 0.9996988186962042 - ], - [ - 314591.2, - -59777.723, - 5927.8647 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT17_7": [ - "0C44TGT131O4WLXQMYKK61TPY", - [ - -0.03615872385476264, - 0.001385024784843834, - 0.0807100986205302, - 0.9960805732350194 - ], - [ - 38424.98, - 275787.12, - 185.84758 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT17_8": [ - "6H66RI7OBR6IWMW9YZ96MANGZ", - [ - -0.03434962022995339, - 0.03650785198018712, - 0.7273909806151629, - 0.6843899777565146 - ], - [ - 161888.28, - 158080.27, - 10189.132 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT18": [ - "40YUL6RFY0JT0NJGTQRSXJPRD", - [ - -0.07875370629315676, - -0.07920702690204957, - 0.4578037740813363, - 0.8820089597454859 - ], - [ - -95236.97, - 184737.7, - 2787.7217 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT18_1": [ - "29BXB577SDZK5OPP3KIWKLD1Y", - [ - 0.5609597125813571, - -0.3758424348997575, - 0.6475864332524317, - 0.3531267144477413 - ], - [ - 331660.28, - -222661.19, - 4584.394 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT19": [ - "5C4P2CT99FG4VOK0CKXE8GPV3", - [ - 0.014382579714493512, - 0.027021615754894077, - -0.8956738464891024, - 0.44365677544490056 - ], - [ - -68180.82, - 304184.5, - -6019.4663 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT19_14": [ - "9DDXZ423KQ2MY1QQ06OUAJY5F", - [ - -0.03644397691518314, - -0.059002654526430026, - 0.22887269892174722, - 0.9709829097330784 - ], - [ - -9338.62, - 192.09398, - 24136.545 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT19_3": [ - "47RQINNJWGEHX3TKQC5CZ66GS", - [ - -0.04704856999430859, - -0.0005107571546015405, - 0.7126995549161527, - 0.6998896453091283 - ], - [ - 391493.1, - -241467.12, - 5424.0625 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT19_39": [ - "07L1K4YHHUECRA3UK0QSMBGWD", - [ - -0.0436680111943534, - 0.02370845038279093, - 0.4765484518818107, - 0.8777428935558671 - ], - [ - -106650.26, - -1537.1641, - 24246.947 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_2": [ - "1HV28XR4NNA4Z5C08E7LC6S1M", - [ - -0.03961498470016136, - 0.003968770810143751, - 0.6409125884284653, - 0.7665806910165343 - ], - [ - 182498.23, - 107567.766, - 12254.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_0": [ - "6JSYFN4F11W1FK8DBEL9MJKMC", - [ - -0.026940209203221398, - 0.09967633336328749, - -0.25960375071275194, - 0.9601795385818263 - ], - [ - -340.64062, - -52405.434, - 13702.315 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_1": [ - "D9TRPKE33S98PUN1VEU3MM5MY", - [ - -0.009589357216364527, - -0.02914748090210198, - -0.3477831304654137, - 0.9370727627825469 - ], - [ - 87775.09, - -186079.36, - 10491.397 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_10": [ - "11MSWN6NQ4TW6L7DRTKESBKZM", - [ - 0.0, - -0.0, - 0.6005493907328693, - 0.7995876620423676 - ], - [ - 127614.16, - -46788.094, - 13045.755 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_11": [ - "8CYMZLYM4T5E2AA19O6K6GH0T", - [ - 0.3151895612508181, - 0.5663198374841213, - -0.2478928474372984, - 0.7200600796738447 - ], - [ - 112144.64, - -211342.39, - 1612.9814 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_12": [ - "5UAWB7QBPXMB9LX8AXJHVYASF", - [ - 0.5238499563263459, - -0.2578495777453924, - 0.5719733971229815, - 0.5761434296223507 - ], - [ - 137232.8, - -156060.38, - 16118.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_15": [ - "4U9TA1DBVMVT2L2U8CTNXDC05", - [ - 0.049052894786468265, - 0.024511666363573877, - 0.0012041810408723493, - 0.9984946377788763 - ], - [ - 232575.22, - 135845.98, - -11330.918 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_16": [ - "BZMDUF5VSYMR7KN629KNH1CKL", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 273060.78, - 81578.7, - -1571.0121 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_18": [ - "6LM457N0FPZ2S25SLLGCLDSPT", - [ - -0.009343069619155778, - 0.021464700443131396, - -0.7044739281878658, - 0.7093436812917528 - ], - [ - 218362.47, - 53798.953, - -1361.8114 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_2": [ - "8HUPNBHBEVTTJ243KMRT34H79", - [ - 0.3734763184236022, - 0.5869808978484943, - -0.4584343663243219, - 0.5529980080529632 - ], - [ - -28430.129, - -226424.84, - -1717.7354 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_20": [ - "74YY17GA236340LEPB7A0RCJ8", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 202735.0, - -161515.0, - 30523.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_21": [ - "7FWXJNKAT1JDCKOG7KGN4FSI5", - [ - -0.07727839885610463, - -0.04003586824062909, - 0.6002609049840645, - 0.795054730362739 - ], - [ - 309568.4, - -8915.484, - 5572.7695 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_3": [ - "7E6ZXF8PZ1T7OBGD2TC0SGYCP", - [ - -0.053837034173776104, - 0.04910329542836623, - -0.0017431477443402253, - 0.9973401634173706 - ], - [ - -62622.0, - -243572.77, - 1998.3367 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_4": [ - "169UXRGGIBMFWLDU2L97JF3C9", - [ - -0.0, - 0.02103512879926612, - 0.0, - 0.9997787371995858 - ], - [ - 16984.895, - -65298.773, - 10249.31 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_5": [ - "9QTJTPSW5RFGI60P4JCL21Z23", - [ - -0.03083016013857429, - 0.011917324987662315, - -0.0020115077920479217, - 0.9994515658236626 - ], - [ - 78248.82, - -45687.27, - 6508.7104 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_6": [ - "0TLB52EUQXD6VSQJ9FRYLHJGE", - [ - -0.08930380267725789, - 0.0631946613748341, - 0.47403369056063144, - 0.8736837676268051 - ], - [ - 44935.88, - -12094.735, - 23272.844 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_7": [ - "5XHD5LD7LFXCYHGVP956D1C6E", - [ - 0.0, - -0.0, - 0.5373018531384566, - 0.8433900157186949 - ], - [ - 94021.06, - -55894.316, - 16329.404 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F022A401_1406932331": [ - "9A559UZQCLMBH0WVQU22ETSCY", - [ - 0.0, - -0.028010194368699004, - 0.0, - 0.9996076375315606 - ], - [ - -139509.0, - 139430.0, - 15453.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F023A401_1359406508": [ - "AYGLQNU3ZR1Q1G7GMTNXOP87R", - [ - 0.42939285035241176, - -0.47126427255946796, - 0.48841379432199533, - 0.5958051115853392 - ], - [ - -168309.69, - 63731.406, - 11052.724 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F024A401_1924847685": [ - "2JNBDBX51W78PE3RP6RKVN24S", - [ - -0.0, - 0.0768161301044878, - 0.0, - 0.9970452758805742 - ], - [ - -154838.0, - 91683.0, - 21293.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0416401_2093804204": [ - "8Z3WQ3R9YJEN573SFVF28IKKT", - [ - -0.08118106152012154, - 0.01363412580190921, - -0.39644708747874163, - 0.9143595861004066 - ], - [ - 212099.78, - 111434.625, - -5163.434 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0565301_1886270961": [ - "81JRN8EL56I1O9V4NB4Y7359I", - [ - -0.0980171403295606, - -4.252809348300419e-17, - -3.12388937152987e-18, - 0.9951847266721969 - ], - [ - 171062.0, - -266773.4, - 663.1014 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F05F6901_1130070767": [ - "8GXUIQI242HY1FZA903L8CM7L", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -233103.0, - 102345.0, - -14.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0B36201_2077013154": [ - "DLAE066U88DGNZ7CU6J65THSX", - [ - -0.04707662251159122, - -0.08182408489678322, - -0.6441250944464755, - 0.7590727721687983 - ], - [ - 370156.0, - -211385.0, - 5163.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0C46101_1282102099": [ - "9OWXU7JD01UOUBNJUXYAKLM0W", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -158423.0, - -55812.0, - 954.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0E57A01_1732622300": [ - "3AIP3ZQWAIB10GWEBRSJ0BIH3", - [ - -0.0, - 0.6945845129048527, - 0.0, - 0.7194111164228202 - ], - [ - 143591.16, - 20011.0, - 14860.891 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0E87A01_1449703843": [ - "BBAP4L83UFHS4U08VLZ7YKB3W", - [ - -0.0, - 0.6706640861672528, - 0.0, - 0.7417612038422094 - ], - [ - 63364.367, - 29487.0, - 22997.945 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0EE7A01_1306830904": [ - "51RJJ5B514PFPFP2MP7CJ7WY9", - [ - -0.0, - 0.6337787449010519, - 0.0, - 0.773514384165962 - ], - [ - 96387.086, - 30292.0, - 18323.512 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0F27A01_1137768619": [ - "1LWB7EEW7VWM46JM7OXFQ4UH1", - [ - -0.22831499418162682, - -0.5918843657538012, - -0.2782026253549104, - 0.7212131864114102 - ], - [ - 189071.0, - 7849.0, - 19716.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0F37A01_1079321804": [ - "04HYN5W55FAATI40HRK7JCCK7", - [ - 0.26304540292905015, - -0.33706153069270717, - 0.712656717766198, - 0.5561627847561291 - ], - [ - 138397.0, - 61287.0, - 20000.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0F57A01_1575931164": [ - "04HYN5W55FAATI40HRK7JCCK7", - [ - 0.024718683756207553, - 0.02028610095848491, - -0.6340688183679721, - 0.7726151657550518 - ], - [ - 147900.4, - 66474.8, - -211.84174 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT1_C_UAID_04421A9713F0F57A01_1942877174": [ - "36Y6EBK5ARXAZ8VXV7RR1SH9A", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 238635.0, - -21507.0, - -195.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT24": [ - "655A7IUW5FHON6N4WEQIT2BPM", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - -230181.94, - -113829.39, - -660.75244 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT25_382": [ - "EBLW1W32WZXFGXW81BCL99R3I", - [ - -0.0, - 0.0, - -0.7985123905193093, - 0.6019783735211242 - ], - [ - -57955.105, - 128067.74, - 5069.825 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_22": [ - "4L5W3OPPMIN8IKH7VGL7XJYFB", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 249320.0, - 148540.0, - 14872.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_24": [ - "4U9TA1DBVMVT2L2U8CTNXDC05", - [ - -0.03772430575213062, - -3.7535189911769174e-16, - 3.8891731408724707e-16, - 0.9992881850374895 - ], - [ - 216781.73, - 145682.17, - 7984.3887 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT2_C_UAID_04421A9713F0F27A01_1759969627": [ - "1B198QDSOEJ9XXTT8CAAJA7OA", - [ - 0.0, - 0.0, - 0.0, - 1.0 - ], - [ - 148750.0, - 37026.0, - 10848.0 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT3": [ - "5BNGT9DFF02Q8PCF6ZBKP658S", - [ - -0.1858867602863133, - -0.041466117454152095, - -0.9302468395471175, - 0.3136359210392466 - ], - [ - 329081.12, - -12866.23, - -1105.5579 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT35_7": [ - "2UBUQ11WG22HVCDJ8VGN2S2WZ", - [ - -0.0, - 0.0, - -0.4244616520240255, - 0.9054459155361159 - ], - [ - 194098.89, - -81818.9, - 1415.9259 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT37_13": [ - "BM8QC947E1X7IGEV64CXDVT15", - [ - 0.0106148471649058, - 0.026930804169565052, - 0.11885627212063984, - 0.9924894172655095 - ], - [ - 151390.52, - -73481.54, - 11314.808 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT3_5": [ - "0OX6O83Q7SN4HUKQNYF26PUG1", - [ - 0.014305782979478841, - -0.024778342216751778, - -0.4997952852559651, - 0.8656708676894711 - ], - [ - 85522.68, - -131861.38, - 14976.61 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT41_6362": [ - "D2U6VEGID4QK8XYHA1P94YXFP", - [ - -0.509769173715093, - 0.43634453326783695, - 0.5714386518860957, - 0.47243698516067356 - ], - [ - 159440.53, - -10152.387, - 20169.613 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT45": [ - "ADBYB08LJ17EVC7XRIMFQ6CPC", - [ - 0.02054001078389841, - 0.04274954050937277, - -0.9900215312770325, - 0.13269495978037224 - ], - [ - 405743.22, - -161307.77, - 5525.1123 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT49": [ - "6EZ8OPSNH33JVBXTSR3WG46IV", - [ - -0.2098382896570736, - 0.13841235714778474, - 0.8747422412320879, - 0.4142896607288818 - ], - [ - 378306.56, - -120583.21, - 7257.9883 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT4_8": [ - "CKREWOBFRNALUT4MOSK1J5V77", - [ - 0.013645914062306159, - 0.03201493397798644, - 0.6930902653557737, - 0.7200102201363898 - ], - [ - 28422.043, - -130004.164, - 16209.456 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT52": [ - "8V2S7IJRF1X66U2PPNU3LQ6H5", - [ - -0.011135946829908178, - -0.028946961588257155, - 0.9445721444322122, - 0.3268356285133884 - ], - [ - 264968.44, - -259564.69, - 17590.379 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT55": [ - "9SQGN46B78LMSDVYH635YJ6GM", - [ - 0.15604821290789678, - -0.07231499869261418, - 0.7121942349621629, - 0.6805871493783867 - ], - [ - 280620.94, - -308274.7, - 3041.1152 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT57": [ - "EJCXTTREYCFD0KNJWI0ARFQYI", - [ - -0.31255134771013526, - -0.4163773881702277, - 0.0347808893259991, - 0.8530719872336744 - ], - [ - 261873.44, - -194228.22, - 3963.8013 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT58": [ - "BF15AQ1KJCL19W9YP52HSKDUR", - [ - 0.12443540939408168, - 0.5964450680292486, - -0.07369905878700114, - 0.789517294583483 - ], - [ - 295658.44, - -237690.5, - 5419.5645 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT5_2": [ - "C72BVQAMZTS0KG90R1PCSMQ9T", - [ - -0.016830205228547432, - -0.15446894117413754, - -0.3389186863053493, - 0.9278955838226423 - ], - [ - -78714.98, - -190868.14, - 17541.232 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT62": [ - "68MHEYBMF0F2EG5AGYKNGP7EG", - [ - -0.06358005490493493, - 0.16425255502626404, - 0.34439898111784795, - 0.922154009149566 - ], - [ - 311246.75, - -89880.734, - 8315.34 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT64": [ - "9FHXKO90N85VOFVSW61TDZOH3", - [ - 0.02276008086071226, - 0.09041953164250056, - 0.6160388658211526, - 0.7821779866594001 - ], - [ - 242952.36, - -257677.4, - -323.94284 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT66": [ - "0Y65ZWH4U5LIQZ0W3QGPOFZDS", - [ - -0.04892335634452256, - -0.010678349873986076, - 0.9987349691367885, - 0.004575966705932923 - ], - [ - 293392.72, - -164435.31, - 1423.0414 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT70": [ - "9A1DJC9NFO49Q45LHQU1RKE1D", - [ - 0.11661437504970884, - 0.6613563671443775, - 0.12866526930128946, - 0.7296945194017725 - ], - [ - 213503.75, - -45384.46, - 15881.251 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT74": [ - "7WP5162UQFDTL52KOO9KJTAOE", - [ - -0.05761790216170146, - -0.043396155210068794, - 0.0425847928883697, - 0.9964855676215902 - ], - [ - 264715.62, - -288363.88, - 22833.045 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT78_0": [ - "AUPCC2CRW843YTL7JGYXVGVRH", - [ - 0.11865342006107674, - -0.30822244760048423, - 0.45389891698434676, - 0.8275844741556075 - ], - [ - 211149.25, - -259597.14, - -1601.0646 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT7_3": [ - "78WOWCKRH48OGNK8WKKW5BSXI", - [ - 0.03862993720793151, - -0.09291507362323624, - 0.9739144383338293, - 0.20338432547716548 - ], - [ - -75146.59, - -112862.85, - 6096.645 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT80_2": [ - "7350GF2H0RJTV1JNVAOSS3704", - [ - 0.08594966968964513, - -0.06343391024870389, - -0.7700580092972092, - 0.6289669749899588 - ], - [ - 190045.27, - -249791.69, - 13564.591 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT83_2": [ - "0IRH6DGFR7LBSRJZSGQTC0OCN", - [ - 0.0027563419716054396, - 0.25557052746276515, - -0.0014141959034174114, - 0.966785450925533 - ], - [ - 223238.44, - -290110.38, - 15266.328 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT86": [ - "74YY17GA236340LEPB7A0RCJ8", - [ - 0.054593887001950725, - 0.3405499114403452, - -0.7578756001380335, - 0.5537777894023983 - ], - [ - 195849.73, - -168881.64, - 15332.544 - ], - {} - ], - "Persistent_Level:PersistentLevel.BP_WAT92": [ - "7J7ZD9LDME6Y8QV9VYPX3QPRM", - [ - 0.023432653538052507, - 0.06503708503328738, - 0.5469914564205546, - 0.8342789910584223 - ], - [ - 60540.625, - 231749.31, - -3434.066 - ], - {} - ] -} diff --git a/game_data/sav_data/worldBounds.json b/game_data/sav_data/worldBounds.json deleted file mode 100644 index 2f06cf6..0000000 --- a/game_data/sav_data/worldBounds.json +++ /dev/null @@ -1,1088 +0,0 @@ -{ - "perimeter": { - "polygon": [ - [ - 450090, - -33055 - ], - [ - 192002, - 334875 - ], - [ - -237148, - 334875 - ], - [ - -341430, - 84417 - ], - [ - -341430, - -313406 - ], - [ - -232340, - -370000 - ], - [ - 450090, - -370000 - ] - ], - "ceilingZ": 200000, - "floorZ": -24400, - "wallVolumes": 11, - "altitudeVolumes": 4 - }, - "water": { - "outerRing": [ - [ - -310000, - -370000 - ], - [ - 108000, - -368000 - ], - [ - 120000, - -382000 - ], - [ - 126000, - -382000 - ], - [ - 146000, - -364000 - ], - [ - 146000, - -308000 - ], - [ - 172000, - -308000 - ], - [ - 172000, - -266000 - ], - [ - 212000, - -274000 - ], - [ - 216000, - -254000 - ], - [ - 194000, - -250000 - ], - [ - 200000, - -246000 - ], - [ - 198000, - -238000 - ], - [ - 188000, - -238000 - ], - [ - 188000, - -248000 - ], - [ - 174000, - -246000 - ], - [ - 172000, - -224000 - ], - [ - 196000, - -224000 - ], - [ - 196000, - -218000 - ], - [ - 192000, - -218000 - ], - [ - 196000, - -212000 - ], - [ - 194000, - -202000 - ], - [ - 214000, - -198000 - ], - [ - 216000, - -192000 - ], - [ - 228000, - -202000 - ], - [ - 238000, - -200000 - ], - [ - 250000, - -222000 - ], - [ - 246000, - -244000 - ], - [ - 242000, - -234000 - ], - [ - 222000, - -240000 - ], - [ - 228000, - -256000 - ], - [ - 246000, - -252000 - ], - [ - 248000, - -260000 - ], - [ - 248000, - -266000 - ], - [ - 230000, - -276000 - ], - [ - 222000, - -290000 - ], - [ - 226000, - -306000 - ], - [ - 234000, - -306000 - ], - [ - 234000, - -282000 - ], - [ - 250000, - -272000 - ], - [ - 256000, - -272000 - ], - [ - 264000, - -280000 - ], - [ - 262000, - -284000 - ], - [ - 280000, - -284000 - ], - [ - 282000, - -304000 - ], - [ - 292000, - -304000 - ], - [ - 288000, - -278000 - ], - [ - 268000, - -274000 - ], - [ - 256000, - -264000 - ], - [ - 254000, - -242000 - ], - [ - 260000, - -226000 - ], - [ - 256000, - -210000 - ], - [ - 244000, - -196000 - ], - [ - 250000, - -186000 - ], - [ - 228000, - -166000 - ], - [ - 228000, - -162000 - ], - [ - 234000, - -162000 - ], - [ - 232000, - -142000 - ], - [ - 214000, - -144000 - ], - [ - 218000, - -166000 - ], - [ - 208000, - -176000 - ], - [ - 170000, - -176000 - ], - [ - 170000, - -184000 - ], - [ - 180000, - -182000 - ], - [ - 186000, - -206000 - ], - [ - 182000, - -198000 - ], - [ - 156000, - -204000 - ], - [ - 156000, - -186000 - ], - [ - 166000, - -184000 - ], - [ - 166000, - -176000 - ], - [ - 156000, - -178000 - ], - [ - 156000, - -152000 - ], - [ - 134000, - -152000 - ], - [ - 122000, - -132000 - ], - [ - 112000, - -132000 - ], - [ - 102000, - -140000 - ], - [ - 124000, - -140000 - ], - [ - 124000, - -144000 - ], - [ - 116000, - -146000 - ], - [ - 118000, - -152000 - ], - [ - 42000, - -152000 - ], - [ - 42000, - -206000 - ], - [ - -2000, - -206000 - ], - [ - 2000, - -204000 - ], - [ - 0, - -200000 - ], - [ - -6000, - -200000 - ], - [ - -6000, - -206000 - ], - [ - -24000, - -206000 - ], - [ - -24000, - -190000 - ], - [ - -16000, - -188000 - ], - [ - -24000, - -184000 - ], - [ - -24000, - -108000 - ], - [ - -34000, - -108000 - ], - [ - -34000, - -98000 - ], - [ - -14000, - -96000 - ], - [ - -16000, - -84000 - ], - [ - 0, - -74000 - ], - [ - -4000, - -70000 - ], - [ - 0, - -54000 - ], - [ - 14000, - -44000 - ], - [ - 32000, - -42000 - ], - [ - 42000, - -46000 - ], - [ - 42000, - -54000 - ], - [ - 30000, - -56000 - ], - [ - 24000, - -62000 - ], - [ - 36000, - -66000 - ], - [ - 48000, - -60000 - ], - [ - 50000, - -84000 - ], - [ - 62000, - -84000 - ], - [ - 64000, - -78000 - ], - [ - 56000, - -70000 - ], - [ - 54000, - -56000 - ], - [ - 72000, - -50000 - ], - [ - 74000, - -44000 - ], - [ - 90000, - -34000 - ], - [ - 102000, - -32000 - ], - [ - 98000, - -8000 - ], - [ - 86000, - -6000 - ], - [ - 86000, - 0 - ], - [ - 100000, - 4000 - ], - [ - 114000, - 4000 - ], - [ - 136000, - 12000 - ], - [ - 148000, - 8000 - ], - [ - 146000, - 14000 - ], - [ - 176000, - 20000 - ], - [ - 176000, - -14000 - ], - [ - 206000, - -14000 - ], - [ - 202000, - -20000 - ], - [ - 206000, - -28000 - ], - [ - 204000, - -44000 - ], - [ - 214000, - -44000 - ], - [ - 214000, - -30000 - ], - [ - 218000, - -30000 - ], - [ - 214000, - -26000 - ], - [ - 218000, - -16000 - ], - [ - 214000, - -14000 - ], - [ - 316000, - -14000 - ], - [ - 318000, - -48000 - ], - [ - 294000, - -60000 - ], - [ - 318000, - -102000 - ], - [ - 318000, - -112000 - ], - [ - 398000, - -110000 - ], - [ - 398000, - -146000 - ], - [ - 382000, - -146000 - ], - [ - 382000, - -156000 - ], - [ - 398000, - -156000 - ], - [ - 398000, - -212000 - ], - [ - 396000, - -260000 - ], - [ - 514000, - -262000 - ], - [ - 518000, - 70000 - ], - [ - 440000, - 70000 - ], - [ - 440000, - 112000 - ], - [ - 324000, - 110000 - ], - [ - 310000, - 112000 - ], - [ - 310000, - 118000 - ], - [ - 300000, - 118000 - ], - [ - 300000, - 112000 - ], - [ - 282000, - 112000 - ], - [ - 282000, - 108000 - ], - [ - 248000, - 108000 - ], - [ - 248000, - 116000 - ], - [ - 230000, - 118000 - ], - [ - 230000, - 108000 - ], - [ - 176000, - 108000 - ], - [ - 176000, - 82000 - ], - [ - 166000, - 84000 - ], - [ - 66000, - 62000 - ], - [ - 54000, - 58000 - ], - [ - 54000, - 54000 - ], - [ - 48000, - 62000 - ], - [ - 42000, - 62000 - ], - [ - 44000, - 50000 - ], - [ - 56000, - 52000 - ], - [ - 62000, - 22000 - ], - [ - 58000, - 8000 - ], - [ - 50000, - 10000 - ], - [ - 46000, - 6000 - ], - [ - 48000, - 0 - ], - [ - 54000, - 0 - ], - [ - 54000, - -12000 - ], - [ - 42000, - -6000 - ], - [ - 26000, - -10000 - ], - [ - 24000, - -4000 - ], - [ - 30000, - -4000 - ], - [ - 26000, - 10000 - ], - [ - 30000, - 12000 - ], - [ - 22000, - 12000 - ], - [ - 22000, - 16000 - ], - [ - 24000, - 26000 - ], - [ - 34000, - 36000 - ], - [ - 28000, - 46000 - ], - [ - 20000, - 86000 - ], - [ - -8000, - 84000 - ], - [ - -12000, - 98000 - ], - [ - -6000, - 112000 - ], - [ - -24000, - 112000 - ], - [ - -18000, - 102000 - ], - [ - -20000, - 88000 - ], - [ - -16000, - 84000 - ], - [ - -16000, - 80000 - ], - [ - -24000, - 80000 - ], - [ - -18000, - 58000 - ], - [ - -24000, - 50000 - ], - [ - -30000, - 50000 - ], - [ - -32000, - 62000 - ], - [ - -48000, - 60000 - ], - [ - -56000, - 64000 - ], - [ - -62000, - 56000 - ], - [ - -58000, - 52000 - ], - [ - -48000, - 56000 - ], - [ - -46000, - 48000 - ], - [ - -60000, - 48000 - ], - [ - -60000, - 38000 - ], - [ - -74000, - 38000 - ], - [ - -76000, - 44000 - ], - [ - -82000, - 44000 - ], - [ - -82000, - 38000 - ], - [ - -76000, - 36000 - ], - [ - -86000, - 36000 - ], - [ - -88000, - 52000 - ], - [ - -98000, - 52000 - ], - [ - -98000, - 46000 - ], - [ - -120000, - 44000 - ], - [ - -120000, - 34000 - ], - [ - -160000, - 30000 - ], - [ - -174000, - 38000 - ], - [ - -184000, - 36000 - ], - [ - -184000, - 44000 - ], - [ - -200000, - 44000 - ], - [ - -200000, - 88000 - ], - [ - -192000, - 88000 - ], - [ - -192000, - 102000 - ], - [ - -198000, - 102000 - ], - [ - -198000, - 112000 - ], - [ - -172000, - 112000 - ], - [ - -172000, - 188000 - ], - [ - -152000, - 188000 - ], - [ - -152000, - 202000 - ], - [ - -126000, - 202000 - ], - [ - -126000, - 216000 - ], - [ - -120000, - 216000 - ], - [ - -120000, - 226000 - ], - [ - -126000, - 226000 - ], - [ - -126000, - 230000 - ], - [ - -172000, - 226000 - ], - [ - -172000, - 266000 - ], - [ - -200000, - 266000 - ], - [ - -200000, - 288000 - ], - [ - -174000, - 286000 - ], - [ - -174000, - 302000 - ], - [ - -164000, - 302000 - ], - [ - -158000, - 346000 - ], - [ - -170000, - 348000 - ], - [ - -166000, - 392000 - ], - [ - -274000, - 400000 - ], - [ - -282000, - 306000 - ], - [ - -308000, - 306000 - ], - [ - -306000, - -206000 - ] - ], - "extentBbox": [ - -308055, - -382197, - 514925, - 400622 - ], - "bodies": 49, - "volumes": 270, - "visualOceanBbox": [ - -5949654, - -4140158, - 1095015, - 3922700 - ] - } -} \ No newline at end of file diff --git a/rust_parser/README.md b/rust_parser/README.md index 59ba18b..a59ea5e 100644 --- a/rust_parser/README.md +++ b/rust_parser/README.md @@ -8,7 +8,7 @@ Cargo workspace: `mapdata/` — the map-payload builder, save index, and the six detail queries the frontend uses (`describeInstance`, `findItemLocations`, building/vehicle/train info, selection inventory). Static game data - (`game_data/generated/*.json`, `game_data/sav_data/*.json`, the item-icon + (`game_data/generated/{docs,world}/*.json`, `game_data/curated/*.json`, the item-icon manifest) is embedded at compile time, so building requires the game data extracted first (see the root README). - **`wasm/` (`sav_wasm`)** — the wasm-bindgen boundary. `SaveSession::load` diff --git a/rust_parser/core/build.rs b/rust_parser/core/build.rs index 1f46c84..8b8c559 100644 --- a/rust_parser/core/build.rs +++ b/rust_parser/core/build.rs @@ -8,6 +8,26 @@ use std::io::Write; use std::path::Path; fn main() { + // gamedata/mod.rs include_str!s the extracted tables, so a checkout that + // has neither run game_data/extract_all.py nor unpacked game_data.zip + // cannot build. include_str! would say "couldn't read ...", one path at a + // time, with no hint about why -- say it once, properly, instead. + let game_data = Path::new(env!("CARGO_MANIFEST_DIR")).join("../../game_data"); + for probe in ["generated/docs/items.json", "generated/world/powerSlugs.json"] { + let path = game_data.join(probe); + println!("cargo:rerun-if-changed={}", path.display()); + if !path.exists() { + panic!( + "game data missing ({} not found). + Nothing generated is committed -- get it with either: + py game_data/extract_all.py (needs the game + an FModel dump) + py game_data/package_game_data.py unpack game_data.zip + See game_data/README.md.", + path.display() + ); + } + } + let icons_dir = Path::new(env!("CARGO_MANIFEST_DIR")).join("../../map/static/map/icons/items"); println!("cargo:rerun-if-changed={}", icons_dir.display()); diff --git a/rust_parser/core/src/gamedata/mod.rs b/rust_parser/core/src/gamedata/mod.rs index a3dfad4..9b3c7d8 100644 --- a/rust_parser/core/src/gamedata/mod.rs +++ b/rust_parser/core/src/gamedata/mod.rs @@ -4,14 +4,16 @@ //! crate therefore requires game_data extracted (same prerequisite the app //! itself has always had). //! -//! - game_data/sav_data/*.json: committed world tables regenerated from the -//! game's level exports by game_data/extractors/extract_collectables.py -//! (key order load-bearing and preserved across regenerations) and -//! extract_world_bounds.py / extract_caves.py, plus two hand-curated files -//! (readableNameCorrections.json, typePaths.json). -//! - game_data/generated/*.json + game_data/category*.json: extracted from -//! the game's Docs.json by game_data/extractors/extract_docs_json.py (gitignored, -//! regenerable; documented in game_data/SCHEMA.md). +//! Two sources, split by who writes them: +//! +//! - game_data/curated/*.json: hand-maintained inputs, committed. Nothing +//! generates these; they are edited by a person. +//! - game_data/generated/{docs,world}/*.json: everything game_data/extract_all.py +//! produces -- gitignored, and shipped separately in game_data.zip (see +//! game_data/README.md). docs/ comes from the game's Docs.json +//! (documented in game_data/SCHEMA.md); world/ from the FModel level-export +//! dump. Neither is in the repository, so a clone must run extract_all.py +//! or unpack the archive before this crate will compile. use indexmap::IndexMap; use serde::Deserialize; @@ -122,7 +124,7 @@ pub struct TypePaths { } pub struct GameData { - // -- game_data/sav_data/ (converted Python literals) -- + // -- game_data/generated/world/ (FModel level-export extracts) -- pub resource_purity: ResourcePurityMap, pub power_slugs: PowerSlugs, pub somersloops: CollectibleMap, @@ -135,7 +137,7 @@ pub struct GameData { pub world_bounds: WorldBounds, pub caves: Caves, - // -- game_data/generated/ + game_data/ (Docs.json extracts) -- + // -- game_data/generated/docs/ + game_data/curated/ -- // Kept as ordered JSON maps: consumers pick the fields they need, and // iteration order must match Python's json.load dict order. pub building_categories: serde_json::Map, @@ -146,8 +148,7 @@ pub struct GameData { pub recipes: serde_json::Map, pub schematics: serde_json::Map, pub game_phases: serde_json::Map, - // -- game_data/generated/ (FModel level-export extracts; see - // game_data/extractors/extract_spawners.py) -- + // -- game_data/generated/world/ (see extract_spawners.py) -- pub creatures: IndexMap, pub creature_spawners: CreatureSpawnerMap, } @@ -166,37 +167,37 @@ fn parse(name: &str, s: &str) -> T { pub fn get() -> &'static GameData { static DATA: OnceLock = OnceLock::new(); DATA.get_or_init(|| GameData { - resource_purity: parse("resourcePurity.json", embed!("sav_data/resourcePurity.json")), - power_slugs: parse("powerSlugs.json", embed!("sav_data/powerSlugs.json")), - somersloops: parse("somersloops.json", embed!("sav_data/somersloops.json")), - mercer_spheres: parse("mercerSpheres.json", embed!("sav_data/mercerSpheres.json")), - crash_sites: parse("crashSites.json", embed!("sav_data/crashSites.json")), + resource_purity: parse("resourcePurity.json", embed!("generated/world/resourcePurity.json")), + power_slugs: parse("powerSlugs.json", embed!("generated/world/powerSlugs.json")), + somersloops: parse("somersloops.json", embed!("generated/world/somersloops.json")), + mercer_spheres: parse("mercerSpheres.json", embed!("generated/world/mercerSpheres.json")), + crash_sites: parse("crashSites.json", embed!("generated/world/crashSites.json")), free_dropped_items: parse( "freeDroppedItems.json", - embed!("sav_data/freeDroppedItems.json"), + embed!("generated/world/freeDroppedItems.json"), ), readable_name_corrections: parse( "readableNameCorrections.json", - embed!("sav_data/readableNameCorrections.json"), + embed!("curated/readableNameCorrections.json"), ), - type_paths: parse("typePaths.json", embed!("sav_data/typePaths.json")), - world_bounds: parse("worldBounds.json", embed!("sav_data/worldBounds.json")), - caves: parse("caves.json", embed!("sav_data/caves.json")), + type_paths: parse("typePaths.json", embed!("curated/typePaths.json")), + world_bounds: parse("worldBounds.json", embed!("generated/world/worldBounds.json")), + caves: parse("caves.json", embed!("generated/world/caves.json")), building_categories: parse( "buildingCategories.json", - embed!("generated/buildingCategories.json"), + embed!("generated/docs/buildingCategories.json"), ), - category_labels: parse("categoryLabels.json", embed!("categoryLabels.json")), - category_overrides: parse("categoryOverrides.json", embed!("categoryOverrides.json")), - buildings: parse("buildings.json", embed!("generated/buildings.json")), - items: parse("items.json", embed!("generated/items.json")), - recipes: parse("recipes.json", embed!("generated/recipes.json")), - schematics: parse("schematics.json", embed!("generated/schematics.json")), - game_phases: parse("gamePhases.json", embed!("generated/gamePhases.json")), - creatures: parse("creatures.json", embed!("generated/creatures.json")), + category_labels: parse("categoryLabels.json", embed!("curated/categoryLabels.json")), + category_overrides: parse("categoryOverrides.json", embed!("curated/categoryOverrides.json")), + buildings: parse("buildings.json", embed!("generated/docs/buildings.json")), + items: parse("items.json", embed!("generated/docs/items.json")), + recipes: parse("recipes.json", embed!("generated/docs/recipes.json")), + schematics: parse("schematics.json", embed!("generated/docs/schematics.json")), + game_phases: parse("gamePhases.json", embed!("generated/docs/gamePhases.json")), + creatures: parse("creatures.json", embed!("generated/world/creatures.json")), creature_spawners: parse( "creatureSpawners.json", - embed!("generated/creatureSpawners.json"), + embed!("generated/world/creatureSpawners.json"), ), }) } From d447dba05b33fd1732a0a93f23964834d69a3108 Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Sat, 1 Aug 2026 14:41:31 +0200 Subject: [PATCH 05/12] map: say plainly that the cave outlines are approximate The row now reads "Caves (approximate)", hovering it explains why, and a cave's tooltip carries an "Outline: Approximate" line where someone reading a size off it will see it. The number is honest about its source: an outline is the game's cave fog volume unioned with the cave geometry inside it, which runs generous by tens of meters and can miss a bare tunnel with no cave props in it. That finds a cave; it does not survey one, and the layer should not imply otherwise. row.hint is new on leaf rows -- the long version of a caveat a label can only gesture at, shown as a title on hover. --- map/static/map/filters.js | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/map/static/map/filters.js b/map/static/map/filters.js index be42fa6..1936c7d 100644 --- a/map/static/map/filters.js +++ b/map/static/map/filters.js @@ -494,7 +494,13 @@ var Filters = {}; }); rowDiv.appendChild(rowToggle.wrapper); rowDiv.appendChild(makeIcon(row.renderType || renderType, row.color || swatchColor, row.iconUrl)); - rowDiv.appendChild(el("label", null, row.displayLabel || row.label)); + var labelEl = el("label", null, row.displayLabel || row.label); + // row.hint: the long version of a caveat the row's label can only gesture + // at (see the Caves row's "approximate"), shown on hover. + if (row.hint) { + labelEl.title = row.hint; + } + rowDiv.appendChild(labelEl); rowDiv.appendChild(el("span", "count", String(row.count))); childrenDiv.appendChild(rowDiv); // Building rows (see buildingSearchEntries) hang onto their own checkbox @@ -1282,6 +1288,9 @@ var Filters = {}; if (depth && depth.length === 2) { rows.push(["Altitude range", Math.round(depth[0]) + " m to " + Math.round(depth[1]) + " m"]); } + // Same caveat as the sidebar row, where someone reading a size off the + // tooltip will actually see it. + rows.push(["Outline", "Approximate"]); var ring = caves.polylines[index]; return { title: labels[index] || "Cave", rows: rows, position: ring ? EditorTool.mapPxToWorldXY(ring[0], ring[1]) : undefined }; @@ -1299,7 +1308,16 @@ var Filters = {}; caveCount++; } }); - return { label: "Caves", count: caveCount, color: WORLD_COLORS.caves, + // "(approximate)" is not modesty, it is the honest reading of the source: + // an outline is the game's cave fog volume plus the cave geometry inside + // it, which runs generous by tens of meters and can miss a bare tunnel + // entirely. Good enough to find a cave, wrong to trust as its wall. + return { label: "Caves", displayLabel: "Caves (approximate)", + hint: "Traced from the game's own cave fog volumes and the cave geometry inside " + + "them — typically tens of meters wider than the real rock, and a " + + "bare tunnel with no cave props can be missed. Use it to find a cave, " + + "not to judge where its walls are.", + count: caveCount, color: WORLD_COLORS.caves, renderType: "line", buckets: [bucket] }; } From 0d0ed6b38e096e94ebd18c2c6cb224f8e6e8ae85 Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Sat, 1 Aug 2026 15:10:18 +0200 Subject: [PATCH 06/12] Search: collectable layer toggles, per-location "Show on map", word matching Three separate frictions in the search bar, all of them cases where the answer was already on screen but out of reach. A collectable item's suggestion row now carries the same show/hide eye a building or layer row has, flipping that pickup's own Collectables rows. Searching "Mercer Sphere" honestly means two things -- what is stashed in inventories, and what is still lying out there -- and only the first had an answer. The eye drives the real sidebar checkboxes rather than a second state of its own, and appears on exactly the six items that have a layer at all: the three slugs, Somersloop, Mercer Sphere, Hard Drive. Every individual location in an item's result list gets a crosshair button that flies the map to that one machine and marks it with a solid pink pin (every other pin on the map is white-filled, so this one cannot be mistaken for scenery). Coordinates told you where a building was; this takes you there. It is deliberately independent of "Show only these on map" -- "where is THIS one" is worth asking without blanking every other layer for context -- and hands over to the same banner, so Details reopens the list exactly where it was. Finally, a query's words may now match anywhere in a label, in any order, so "coal node" finds "Coal Ore (Resource Node)". The parenthesised kind suffix is a real part of those names and exactly how people say them, but no contiguous substring spans it, so the old strict test could never reach past it. Tighter matches still rank first, so "iron" keeps surfacing Iron Plate ahead of Reinforced Iron Plate. Co-Authored-By: Claude Opus 5 (1M context) --- map/static/map/filters.js | 45 ++++++- map/static/map/finditem.js | 240 ++++++++++++++++++++++++++++++++----- map/static/map/map.css | 44 +++++++ 3 files changed, 296 insertions(+), 33 deletions(-) diff --git a/map/static/map/filters.js b/map/static/map/filters.js index 1936c7d..73a80a1 100644 --- a/map/static/map/filters.js +++ b/map/static/map/filters.js @@ -76,6 +76,13 @@ var Filters = {}; // hand-picked label file. var HARD_DRIVE_ICON_URL = "icons/items/HardDrive.png"; + // No FGItemDescriptor (above), but a Desc_ entry in readableNameCorrections + // all the same -- so "Hard Drive" IS in the searchable item catalog (see the + // rust core's list_searchable_items), and this is the key its crash-site + // rows get registered under for the search bar's eye (see + // collectableToggleRows). + var HARD_DRIVE_ITEM_CLASS = "Desc_HardDrive_C"; + // Resource node icons -- keyed by the save's own resourceType pathName // (see sav_map_data.collectResourceNodes), which is exactly the ClassName // the raw resource's own per-class icon is stored under (see @@ -705,6 +712,23 @@ var Filters = {}; // purity colors, so no single row's color represents it. Filters.resourceColor = function() { return PURITY_COLORS.NORMAL; }; + // Item ClassName -> the Collectables sidebar rows for that same pickup + // (Remaining/Collected, or a hard drive's three states -- see + // buildCollectablesSection/buildHardDrivesGroup). A handful of items -- the + // three slugs, Somersloop, Mercer Sphere, Hard Drive -- are ALSO world + // pickups with a map layer of their own, so "Mercer Sphere" in the search + // bar honestly means two things: what's stashed in inventories (the item + // search's answer) and what's still lying out there (this layer). Rather + // than a second, near-identical dropdown entry for the layer, the one item + // suggestion gets the same show/hide eye a layer row has -- driving these + // real sidebar checkboxes, never a second source of truth. Absent for every + // other item, which is what makes the eye appear on exactly these six rows + // and nowhere else. + var collectableToggleRows = {}; + Filters.getCollectableToggleRows = function(itemPath) { + return collectableToggleRows[itemPath] || null; + }; + // Whole-category search entries: a handful of logistics families whose rows // are scattered across build-menu subcategories (one row per mark), so // "show me every belt" isn't a single toggle anywhere in the sidebar. Each @@ -1048,17 +1072,20 @@ var Filters = {}; // Mercer Sphere groups above use. var collectedCount = total - rows[0].count; var title = "Hard Drives (" + collectedCount + "/" + total + ")"; - return { total: total, result: renderGroup(childrenDiv, title, "icon", HARD_DRIVE_COLORS.hasDrive, rows, { startCollapsed: true, iconUrl: url }) }; + return { total: total, rows: rows, result: renderGroup(childrenDiv, title, "icon", HARD_DRIVE_COLORS.hasDrive, rows, { startCollapsed: true, iconUrl: url }) }; } function buildCollectablesSection(navList, detailPane, payload) { var collectables = payload.collectables; + // itemPath: the pickup's own item descriptor ClassName -- the key the item + // search looks these rows up by (see collectableToggleRows). Same classes + // the rust core's COLLECTABLE_ITEMS table uses. var kinds = [ - { key: "slugsBlue", label: "Blue Power Slug", color: SLUG_COLORS.slugsBlue }, - { key: "slugsYellow", label: "Yellow Power Slug", color: SLUG_COLORS.slugsYellow }, - { key: "slugsPurple", label: "Purple Power Slug", color: SLUG_COLORS.slugsPurple }, - { key: "somersloops", label: "Somersloop", color: SOMERSLOOP_COLOR }, - { key: "mercerSpheres", label: "Mercer Sphere", color: MERCER_SPHERE_COLOR }, + { key: "slugsBlue", itemPath: "Desc_Crystal_C", label: "Blue Power Slug", color: SLUG_COLORS.slugsBlue }, + { key: "slugsYellow", itemPath: "Desc_Crystal_mk2_C", label: "Yellow Power Slug", color: SLUG_COLORS.slugsYellow }, + { key: "slugsPurple", itemPath: "Desc_Crystal_mk3_C", label: "Purple Power Slug", color: SLUG_COLORS.slugsPurple }, + { key: "somersloops", itemPath: "Desc_WAT1_C", label: "Somersloop", color: SOMERSLOOP_COLOR }, + { key: "mercerSpheres", itemPath: "Desc_WAT2_C", label: "Mercer Sphere", color: MERCER_SPHERE_COLOR }, ]; var hardDriveTotal = pointCount(payload.hardDrives.hasDrive, 3) + pointCount(payload.hardDrives.empty, 3) + pointCount(payload.hardDrives.dismantled, 3); @@ -1100,11 +1127,15 @@ var Filters = {}; // already found) is the number worth seeing at a glance here. var kindTitle = kind.label + "s (" + collectedCount + "/" + (remainingCount + collectedCount) + ")"; var result = renderGroup(childrenDiv, kindTitle, "icon", kind.color, rows, { startCollapsed: true, iconUrl: url }); + // Registered AFTER renderGroup, so every row already carries the live + // checkbox appendLeafRow attached (see collectableToggleRows). + collectableToggleRows[kind.itemPath] = rows; checkboxes.push(result.checkbox); allBuckets = allBuckets.concat(result.buckets); }); if (hardDriveTotal > 0) { var hardDriveGroup = buildHardDrivesGroup(childrenDiv, payload); + collectableToggleRows[HARD_DRIVE_ITEM_CLASS] = hardDriveGroup.rows; checkboxes.push(hardDriveGroup.result.checkbox); allBuckets = allBuckets.concat(hardDriveGroup.result.buckets); } @@ -1832,6 +1863,7 @@ var Filters = {}; vehicleSearchEntries = []; wildlifeSearchEntries = []; resourceSearchEntries = []; + collectableToggleRows = {}; layerCategoryRows = { belts: [], lifts: [], pipes: [] }; bucketLayerCheckbox = {}; bucketLayerLabel = {}; @@ -1894,6 +1926,7 @@ var Filters = {}; vehicleSearchEntries = []; wildlifeSearchEntries = []; resourceSearchEntries = []; + collectableToggleRows = {}; layerCategoryRows = { belts: [], lifts: [], pipes: [] }; bucketLayerCheckbox = {}; bucketLayerLabel = {}; diff --git a/map/static/map/finditem.js b/map/static/map/finditem.js index c6382c1..00d11ce 100644 --- a/map/static/map/finditem.js +++ b/map/static/map/finditem.js @@ -336,10 +336,129 @@ var FindItem = {}; return img; } + // ---- "Show on map" (the per-location crosshair button) -------------------- + // + // A location row's coordinates say where a machine is; this button actually + // takes you there. It centers the map on that one instance, marks it with a + // single unmistakable pin -- a SOLID highlight-colored disc, where every + // other pin on the map is white-filled -- and gets the modal out of the way + // so there's something to look at. From there the same floating banner the + // highlight uses takes over: "Details" reopens the list right where it was, + // "Clear filter" drops the marker. + // + // Deliberately independent of the "Show only these on map" highlight: the + // question this answers is "where is THIS one", which is worth asking + // without also blanking every other layer for context. + var LOCATE_BUCKET_KEY = "find-item-locate"; + // Zoom 0 is ~1 map-unit-per-screen-pixel (roughly a meter), so 3 puts a + // single machine comfortably on screen with its neighbors around it. Only + // ever zooms IN -- see locateOnMap. + var LOCATE_ZOOM = 3; + var LOCATE_ICON_URL = "data:image/svg+xml," + encodeURIComponent( + '' + + '' + + '' + + '' + ); + // The button glyph -- the same crosshair, in the row's own text color. + var LOCATE_BUTTON_SVG = + '' + + '' + + '' + + ''; + + var located = null; // The location currently marked on the map, or null. + + // Drops the marker. Leaves any active highlight alone (they're independent), + // but does take the banner down with it when the marker was the only reason + // it was up. + function clearLocate() { + if (!located) { + return; + } + located = null; + MapApp.layer.removeBucketByKey(LOCATE_BUCKET_KEY); + if (!highlighting) { + banner.style.display = "none"; + } + MapApp.layer.requestRedraw(); + } + + // Everything a search can leave sitting on the map: the isolate/highlight + // and the "Show on map" marker. The two are independent of each other, but + // every "put the map back" control -- Esc, the banner's Clear, starting a + // fresh search -- means both at once. + function clearMapMarks() { + clearHighlight(); + clearLocate(); + } + + function locateOnMap(loc) { + if (!loc.position || !window.MapApp || !MapApp.map) { + return; + } + clearLocate(); // At most one marker at a time -- this row supersedes the last. + MapApp.layer.addBucket({ + key: LOCATE_BUCKET_KEY, + label: loc.label, + color: "#ffffff", // The pin's outline... + pinFillColor: HIGHLIGHT_COLOR, // ...around a filled disc, so this one pin can't be read as just another white pickup marker. + visible: true, + renderType: "icon", + pointStride: 3, + points: new Float32Array([loc.position[0], loc.position[1], loc.position[2]]), + ids: [loc.instanceName], + // Same split as the search highlight's pins: a real building serves its + // full /api/instance detail, a static pickup has no live actor to ask. + tooltipKind: "static", + tooltipInfo: function() { + return { title: loc.label, rows: [], position: loc.worldPosition }; + }, + tooltipServerId: function() { + return loc.typePath ? loc.instanceName : null; + }, + iconUrl: LOCATE_ICON_URL, + iconOpacity: 1, + }); + located = loc; + // Never zooms back OUT on someone who was already looking closer than this. + MapApp.map.setView(L.latLng(loc.position[1], loc.position[0]), + Math.max(MapApp.map.getZoom(), LOCATE_ZOOM)); + Tooltip.hide(); // The row hover that launched this is about to lose its row. + overlay.style.display = "none"; + // locationChildLabel is the coordinates when there are any, and falls back + // to the label -- which would read "Storage Container at Storage + // Container", so the "at ..." half is dropped in that case. + bannerLabel.textContent = "Marked on map: " + loc.label + + (loc.worldPosition ? " at " + locationChildLabel(loc) : ""); + banner.style.display = "flex"; + MapApp.layer.requestRedraw(); + } + + // Rows for the Dimensional Depot (a single global inventory) have no + // position at all -- nothing to fly to, so they get no button rather than a + // dead one. + function makeLocateButton(loc) { + if (!loc.position) { + return el("span", "itemLocationLocateSpacer"); + } + var btn = document.createElement("button"); + btn.type = "button"; + btn.className = "itemLocationLocate"; + btn.innerHTML = LOCATE_BUTTON_SVG; + btn.title = "Show this " + loc.label + " on the map"; + btn.addEventListener("click", function(e) { + e.stopPropagation(); // Never also expand/collapse the group header this may sit on. + locateOnMap(loc); + }); + return btn; + } + function childLocationRow(loc, unit, itemLabel) { var row = el("div", "itemLocationRow itemLocationChildRow"); row.appendChild(el("span", "itemLocationLabel", locationChildLabel(loc))); row.appendChild(el("span", "itemLocationCount", loc.count.toLocaleString() + unit)); + row.appendChild(makeLocateButton(loc)); attachLocationHover(row, loc, unit, itemLabel); return row; } @@ -352,6 +471,7 @@ var FindItem = {}; row.appendChild(groupIcon(group)); row.appendChild(el("span", "itemLocationLabel", group.label)); row.appendChild(el("span", "itemLocationCount", group.totalCount.toLocaleString() + unit)); + row.appendChild(makeLocateButton(group.locations[0])); attachLocationHover(row, group.locations[0], unit, itemLabel); container.appendChild(row); return; @@ -365,6 +485,11 @@ var FindItem = {}; header.appendChild(el("span", "itemLocationLabel", group.label)); header.appendChild(el("span", "itemLocationGroupBadge", "× " + group.locations.length.toLocaleString())); header.appendChild(el("span", "itemLocationCount", group.totalCount.toLocaleString() + unit)); + // "Show on map" belongs to individual machines, not to a summed row + // standing for hundreds of them -- but the column still has to hold its + // width here, or the header's count would sit 34px right of its own + // children's. + header.appendChild(el("span", "itemLocationLocateSpacer")); container.appendChild(header); var childrenWrap = el("div", "itemLocationChildren"); @@ -478,6 +603,11 @@ var FindItem = {}; return; } + // Before savedVisibility is captured, so the locate marker's own bucket + // never gets folded into the "restore this later" snapshot -- and it has + // nothing left to say anyway: the highlight pins every result, that one + // included. + clearLocate(); savedVisibility = {}; MapApp.layer.buckets.forEach(function(b) { savedVisibility[b.key] = b.visible; @@ -598,6 +728,7 @@ var FindItem = {}; function showEntryHighlight(entry) { var rows = entryRows(entry); + clearLocate(); // See showHighlight -- must happen before the snapshot below. savedVisibility = {}; MapApp.layer.buckets.forEach(function(b) { savedVisibility[b.key] = b.visible; @@ -680,8 +811,8 @@ var FindItem = {}; function closeItemModal() { overlay.style.display = "none"; Tooltip.hide(); // A row-hover tooltip (see attachLocationHover) shouldn't outlive the list it belongs to. - if (highlighting) { - banner.style.display = "flex"; + if (highlighting || located) { + banner.style.display = "flex"; // A live filter OR a locate marker keeps the list one "Details" click away. } else { lastResult = null; lastKind = null; @@ -728,7 +859,7 @@ var FindItem = {}; function showResult(result) { lastResult = result; lastKind = "item"; - clearHighlight(); + clearMapMarks(); openModal(result.label); fillModalFromResult(result); modalHighlightToggle.textContent = "Show only these on map"; @@ -838,8 +969,8 @@ var FindItem = {}; } else if (buildingOverlay.style.display !== "none") { closeBuildingModal(); e.preventDefault(); - } else if (highlighting) { - clearHighlight(); // No modal open, but a filter is live on the map -- Esc reverts it. + } else if (highlighting || located) { + clearMapMarks(); // No modal open, but something is live on the map -- Esc reverts it. e.preventDefault(); } }); @@ -1066,7 +1197,7 @@ var FindItem = {}; searchGeneration++; // Orphan any in-flight fetch -- this modal supersedes it. lastBuilding = { entry: entry, info: null }; lastKind = "building"; - clearHighlight(); + clearMapMarks(); openBuildingModal(entry); fillerForEntry(entry)(entry, null); buildingModalHighlightToggle.textContent = "Show only this on map"; @@ -1101,7 +1232,7 @@ var FindItem = {}; } lastBuilding = { entry: entry, info: info }; lastKind = "building"; - clearHighlight(); + clearMapMarks(); fillFromInfo(entry, info); buildingModalHighlightToggle.textContent = "Show only this on map"; }) @@ -1201,6 +1332,13 @@ var FindItem = {}; return entry.rows || [entry.row]; } + // Whether this suggestion has any layer to show/hide at all. Everything + // that isn't an item always does; an item only when it's also a world + // pickup carrying its Collectables rows (see FindItem.build). + function entryHasVisibilityToggle(entry) { + return entry.kind !== "item" || !!entry.rows; + } + function entryIsShown(entry) { return entryRows(entry).some(function(row) { return !row.checkbox || row.checkbox.checked; }); } @@ -1222,9 +1360,13 @@ var FindItem = {}; // pink-hidden class, and tooltip all in one place. function refreshVisibilityToggle(btn, entry) { var isShown = entryIsShown(entry); + // A collectable ITEM's eye toggles the world pickups, not the item -- so + // it says so ("Show Mercer Sphere pickups"), since on that one row the + // bare label would just as plausibly mean the stacks in your inventories. + var what = entry.kind === "item" ? entry.label + " pickups" : entry.label; btn.classList.toggle("isShown", isShown); btn.innerHTML = isShown ? EYE_OPEN_SVG : EYE_OFF_SVG; - btn.title = isShown ? "Hide " + entry.label + " on the map" : "Show " + entry.label + " on the map"; + btn.title = isShown ? "Hide " + what + " on the map" : "Show " + what + " on the map"; } // The show/hide eye button on a suggestion row -- see the header comment. @@ -1289,7 +1431,7 @@ var FindItem = {}; // family", not "this is a building called Conveyor Belts". row.appendChild(el("span", "searchSuggestionLabel", entry.kind === "category" ? entry.label + " (Category)" : entry.label)); - if (entry.kind !== "item") { + if (entryHasVisibilityToggle(entry)) { row.appendChild(makeVisibilityToggle(entry)); } // mousedown (not click) + preventDefault so selecting doesn't first @@ -1303,22 +1445,52 @@ var FindItem = {}; return row; } - // Substring match, case-insensitive, with prefix matches sorted first so - // typing "iron" surfaces "Iron Plate"/"Iron Rod" ahead of "Reinforced Iron - // Plate". Each kind is matched/capped independently, then rendered as its - // own labeled group ("ITEMS" / "BUILDINGS") -- skipped when only one kind - // has any matches, so a query that's obviously just an item (or just a + // Case-insensitive match, best-fitting first. A label matches either as a + // whole-query substring, or -- looser -- by containing every WORD of the + // query somewhere, in any order. The loose pass is what makes "coal node" + // find "Coal Ore (Resource Node)": the parenthesised kind suffix is a real + // part of those labels and exactly how people say them out loud, but no + // contiguous substring of the label spans it, so a strict test could never + // reach past it. Ranking keeps the tight matches on top, so typing "iron" + // still surfaces "Iron Plate"/"Iron Rod" ahead of "Reinforced Iron Plate", + // and an exact phrase always beats a scattered-words hit. + // + // Each kind is matched/capped independently, then rendered as its own + // labeled group ("ITEMS" / "BUILDINGS") -- skipped when only one kind has + // any matches, so a query that's obviously just an item (or just a // building) doesn't show an empty section header for the other. + var NO_MATCH = 3; + + function matchRank(label, q, words) { + var lower = label.toLowerCase(); + var at = lower.indexOf(q); + if (at === 0) { + return 0; // Starts with the whole query. + } + if (at !== -1) { + return 1; // Contains it verbatim. + } + for (var i = 0; i < words.length; i++) { + if (lower.indexOf(words[i]) === -1) { + return NO_MATCH; + } + } + return 2; // Holds every word, just not together. + } + function matchCatalog(entries, q) { - var matches = entries.filter(function(entry) { - return entry.label.toLowerCase().indexOf(q) !== -1; - }); - matches.sort(function(a, b) { - var aPrefix = a.label.toLowerCase().indexOf(q) === 0 ? 0 : 1; - var bPrefix = b.label.toLowerCase().indexOf(q) === 0 ? 0 : 1; - return aPrefix - bPrefix; + var words = q.split(/\s+/).filter(Boolean); + var scored = []; + entries.forEach(function(entry) { + var rank = matchRank(entry.label, q, words); + if (rank !== NO_MATCH) { + scored.push({ entry: entry, rank: rank }); + } }); - return matches.slice(0, MAX_SUGGESTIONS_PER_KIND); + // Rank alone: within one rank the catalog's own order (alphabetical by + // label) is the sensible tiebreak, and Array#sort is stable. + scored.sort(function(a, b) { return a.rank - b.rank; }); + return scored.slice(0, MAX_SUGGESTIONS_PER_KIND).map(function(s) { return s.entry; }); } function renderSuggestions(query) { @@ -1466,7 +1638,7 @@ var FindItem = {}; // filtering, this button reads "Show all layers again" and reverts.) modalHighlightToggle.addEventListener("click", function() { if (highlighting) { - clearHighlight(); + clearMapMarks(); } else if (lastResult) { showHighlight(lastResult); modalHighlightToggle.textContent = "Show all layers again"; @@ -1481,7 +1653,7 @@ var FindItem = {}; // building a synthetic bucket. buildingModalHighlightToggle.addEventListener("click", function() { if (highlighting) { - clearHighlight(); + clearMapMarks(); } else if (lastBuilding) { showEntryHighlight(lastBuilding.entry); buildingModalHighlightToggle.textContent = "Show all layers again"; @@ -1494,11 +1666,13 @@ var FindItem = {}; // Banner "Clear filter" reverts the filter; "Details" reopens the full list/ // modal for whichever kind is currently isolated (keeping the filter // active -- closing that back up returns to the banner). - bannerClear.addEventListener("click", clearHighlight); + bannerClear.addEventListener("click", clearMapMarks); // The banner is the one control for both. bannerDetails.addEventListener("click", function() { if (lastKind === "item" && lastResult) { fillModalFromResult(lastResult); - modalHighlightToggle.textContent = "Show all layers again"; + // The list may be open over a live filter, over a bare locate marker, or + // over both -- only the filter is what this button reverts. + modalHighlightToggle.textContent = highlighting ? "Show all layers again" : "Show only these on map"; banner.style.display = "none"; overlay.style.display = "flex"; } else if (lastKind === "building" && lastBuilding) { @@ -1550,6 +1724,7 @@ var FindItem = {}; highlighting = false; highlightedEntry = null; savedVisibility = null; + located = null; // Filters.build already dropped every bucket, this one included. lastResult = null; lastBuilding = null; lastKind = null; @@ -1559,7 +1734,18 @@ var FindItem = {}; hideSuggestions(); var itemEntries = (payload.itemCatalog || []).map(function(entry) { - return { kind: "item", label: entry.label, itemPath: entry.itemPath }; + // `rows`, for the handful of items that are ALSO world pickups with a + // Collectables layer of their own (the slugs, Somersloop, Mercer + // Sphere, Hard Drive -- see filters.js's collectableToggleRows), is + // what gives this suggestion the same show/hide eye a building/layer + // row has, read through the very same entryRows() path. Null for every + // other item, which keeps their rows label-only. + return { + kind: "item", + label: entry.label, + itemPath: entry.itemPath, + rows: Filters.getCollectableToggleRows ? Filters.getCollectableToggleRows(entry.itemPath) : null, + }; }); itemCatalogByLabel = {}; itemEntries.forEach(function(entry) { itemCatalogByLabel[entry.label] = entry.itemPath; }); diff --git a/map/static/map/map.css b/map/static/map/map.css index 404430b..287f9ba 100644 --- a/map/static/map/map.css +++ b/map/static/map/map.css @@ -1385,6 +1385,50 @@ body.panelResizing #categoryDetailColumn { flex: none; } +/* "Show on map" -- flies the map to this one instance and marks it (see + finditem.js's locateOnMap). It sits on every row of a list that can run to + hundreds, so it's drawn in the same muted gray as the chevrons and fallback + glyphs: plainly there to be found, but not competing with the label and + count that are the row's actual content. The hovered row's button turns + blue -- the app's "this is clickable" color everywhere else. */ +.itemLocationLocate { + flex: none; + width: 24px; + height: 24px; + display: flex; + align-items: center; + justify-content: center; + padding: 0; + border: 1px solid transparent; + border-radius: 6px; + background: none; + color: #7a8190; + cursor: pointer; +} + +.itemLocationRow:hover .itemLocationLocate { + color: #8ab4f8; + border-color: #3a4356; +} + +.itemLocationLocate:hover { + background: var(--accent-bg); + border-color: var(--accent); + color: #fff; +} + +.itemLocationLocate svg { + display: block; +} + +/* The Depot row has no position to fly to, so it gets no button -- this + holds the column open so its label/count still line up with every other + row's. */ +.itemLocationLocateSpacer { + flex: none; + width: 24px; +} + /* ---- Grouped item-location list (see finditem.js's renderGroupedLocations) -- one expandable header row per building type, individual machines as indented child rows underneath. */ From 372586421e0f745c34e010d871d50a8d4e0ce9e2 Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Sat, 1 Aug 2026 15:24:38 +0200 Subject: [PATCH 07/12] Center the map's floating panels on the map, not the window MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The map deliberately stops short of the right edge -- the altitude rail is docked there -- but the panels that float over it are body-level siblings of #map, so their left:50% was the WINDOW's center: half a rail-width (32px) too far right, at every viewport size. On its own that drift is invisible; under the search pill, which is genuinely centered on the map (#topBar reserves the same rail width in its right padding), the filter banner sat visibly off. One --map-center-x for all four of them (filter banner, selection panel, editor toolbar, editor hint), explained once where it's defined. Also moves a group header's "× 28" badge from the right edge to right after the building name: "Constructor × 28" is one phrase and now reads as one. The label gives up its flex stretch and the badge takes over the gap-filling, so the count column stays exactly where it was -- aligned with every non-grouped row's. Co-Authored-By: Claude Opus 5 (1M context) --- map/static/map/map.css | 33 ++++++++++++++++++++++++++++----- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/map/static/map/map.css b/map/static/map/map.css index 287f9ba..8798721 100644 --- a/map/static/map/map.css +++ b/map/static/map/map.css @@ -2,6 +2,17 @@ --nav-col-width: clamp(240px, 19vw, 340px); --detail-col-width: 280px; --altitude-width: 64px; + /* Horizontal center OF THE MAP, for anything that floats over the middle + of it -- use this instead of a plain 50%, paired with the usual + transform: translateX(-50%). + The map deliberately stops short of the right edge (the altitude rail is + docked there, see #map's right inset), but every one of those floating + panels is a body-level SIBLING of #map, so their 50% is the window's + center, not the map's -- half a rail-width too far right. That drift is + invisible on its own and obvious the moment one of them sits under the + search pill, which IS centered on the map (#topBar reserves the same + rail width in its right padding). */ + --map-center-x: calc(50% - var(--altitude-width) / 2); /* One shared feel for the floating panels: how they slide/settle, and the lifted-off-the-map shadow every floating control shares. */ --panel-ease: cubic-bezier(0.2, 0, 0, 1); @@ -1456,9 +1467,21 @@ body.panelResizing #categoryDetailColumn { transform: rotate(90deg); } -/* "× 1,234" -- how many individual machines this summed row stands for. */ +/* The label stops stretching in a group header so the badge below can sit + right against it: "Constructor × 28" is one phrase and reads as one. It + still shrinks/ellipsizes when the name is long (min-width:0 + the overflow + rules it already carries). */ +.itemLocationGroupHeader .itemLocationLabel { + flex: 0 1 auto; +} + +/* "× 1,234" -- how many individual machines this summed row stands for. + margin-right:auto takes over the gap-filling the label just gave up, so + everything after it (the count) still lands hard against the right edge, + in the same column as every non-grouped row's. */ .itemLocationGroupBadge { flex: none; + margin-right: auto; background: #262a31; border: 1px solid #333844; border-radius: 999px; @@ -1912,7 +1935,7 @@ body.panelResizing #categoryDetailColumn { #selectionPanel { position: absolute; bottom: 22px; - left: 50%; + left: var(--map-center-x); transform: translateX(-50%); z-index: 600; display: flex; @@ -1980,7 +2003,7 @@ body.panelResizing #categoryDetailColumn { #editorToolbar { position: absolute; top: 58px; - left: 50%; + left: var(--map-center-x); transform: translateX(-50%); z-index: 600; display: flex; @@ -2026,7 +2049,7 @@ body.panelResizing #categoryDetailColumn { #editorHint { position: absolute; bottom: 64px; - left: 50%; + left: var(--map-center-x); transform: translateX(-50%); z-index: 1401; padding: 7px 14px; @@ -2277,7 +2300,7 @@ body.panelResizing #categoryDetailColumn { #activeFilterBanner { position: absolute; top: 68px; /* Just below the floating search pill. */ - left: 50%; + left: var(--map-center-x); transform: translateX(-50%); z-index: 500; display: flex; From 6613f5b343a9818a53ecb8b27aaaf1ed1d5a89ab Mon Sep 17 00:00:00 2001 From: Valentin PLANES Date: Sun, 2 Aug 2026 00:15:40 +0200 Subject: [PATCH 08/12] Optimal network finder: shortest links joining a set of points A planning tool for "where should the belts/trains/power actually run". Reachable only by typing its name in the search bar (a new "tool" catalog entry, so it costs no permanent UI), it takes a set of points -- clicked empty map, clicked buildings, the whole rectangle selection in bulk, or typed X/Y metres -- and draws the shortest set of links joining them. Two link styles, both exact and both O(n log n) (map/static/map/emst.js): Straight Euclidean MST. Sits inside the Delaunay triangulation, so a sweep-hull triangulation cuts the candidate set from n^2/2 edges to under 3n and Kruskal does the rest. X / Y only Rectilinear (L1) MST -- NOT the straight tree with corners drawn on: changing the metric changes which points the optimal tree even connects. Sits inside the octant graph, and inside one octant the L1 distance collapses to a linear function of the far endpoint, so four Fenwick sweeps find all eight nearest neighbours at once. Optionally one point is a DESTINATION, and a slider trades total network length against how far every point has to travel through the tree to reach it (Prim-Dijkstra: Prim with the key alpha * tree-distance + edge weight). alpha = 0 is Prim, so still the exact MST; alpha = 1 is Dijkstra over a candidate set augmented with the destination's own edges, so every point joins it directly -- the exact minimum of summed trip distance. Between the two it is a heuristic trade, and the panel says so rather than implying an optimum that is NP-hard to find. On 5,700 real machines, 40% along the slider costs 9% more network and cuts total travel by 47%. Everything is computed in map pixels: the world projection is one uniform scale with no rotation, so an optimal tree there is optimal in metres, and "along X" on screen is "along X" in the world. tools/check_emst.js is the gate. A short candidate set still yields a spanning tree, just a silently longer one, so every result is diffed against brute-force Prim over grids, circles, collinear runs, duplicates and clusters -- plus, with a destination, that alpha=0 is still the MST, that alpha=1 is the exact star, and that the trip distances the panel reports match a walk of the tree it actually drew. It caught an inverted in-circle sign on its first run. 100,000 points solve in about a second. Also here, both found by using the tool: - selection.js: selecting a PIN (vehicles, collectables, players, crash sites) marked the bare coordinate, which is where the tail points -- the pin itself, floating above it, looked untouched. Now ringed, with the same geometry the hover highlight already uses. - The same object can no longer be added twice: points carry the object's save id, so clicking a 100m foundation's far corner counts as the same object rather than a second point. Clicking it again removes it. Co-Authored-By: Claude Opus 5 (1M context) --- map/static/map/emst.js | 856 +++++++++++++++++++++++++++++ map/static/map/finditem.js | 63 ++- map/static/map/index.html | 83 +++ map/static/map/map.css | 618 +++++++++++++++++++++ map/static/map/map.js | 6 + map/static/map/network.js | 1012 +++++++++++++++++++++++++++++++++++ map/static/map/selection.js | 88 ++- tools/check_emst.js | 384 +++++++++++++ 8 files changed, 3092 insertions(+), 18 deletions(-) create mode 100644 map/static/map/emst.js create mode 100644 map/static/map/network.js create mode 100644 tools/check_emst.js diff --git a/map/static/map/emst.js b/map/static/map/emst.js new file mode 100644 index 0000000..7260528 --- /dev/null +++ b/map/static/map/emst.js @@ -0,0 +1,856 @@ +// Minimum-spanning-tree geometry for the "Optimal network finder" tool (see +// network.js). Pure math -- no DOM, no Leaflet -- so tools/check_emst.js can +// load this file straight into node and diff every result against a +// brute-force O(n^2) tree. Two metrics, both EXACT (a real minimum spanning +// tree, not an approximation) and both O(n log n): +// +// Emst.euclidean(xs, ys) -- straight-line links, total length minimised +// under ordinary distance. The Euclidean MST is a subgraph of the +// Delaunay triangulation, so triangulating first (sweep-hull, below) +// shrinks the candidate set from n(n-1)/2 edges to under 3n; Kruskal over +// those is then the dominant O(n log n). +// +// Emst.rectilinear(xs, ys) -- links that may only run along X or Y (each +// edge drawn as an L of two axis-aligned legs). This minimises total L1 +// length, and it is NOT the Euclidean tree redrawn with corners: changing +// the metric changes which pairs the optimal tree even connects. The +// rectilinear MST is a subgraph of the OCTANT GRAPH -- every point joined +// to its L1-nearest neighbour inside each of the eight 45-degree sectors +// around it (Guibas & Stolfi 1983; Zhou et al. 2001) -- and inside one +// sector the L1 distance collapses to a linear function of the far +// endpoint, which is what lets a sweep with a Fenwick tree find all eight +// at once. Under 4n candidates, again O(n log n). +// +// Both entry points optionally take a DESTINATION as well (see +// primDijkstra): with one set, what is minimised stops being total length +// alone and slides -- by a single 0..1 knob -- toward the distance each point +// has to travel through the tree to reach that destination. +// +// Both entry points take parallel coordinate arrays and return +// { edges: [{a, b, len}], total } with a/b indexing back into those arrays, +// plus { paths, pathTotal, directTotal } when a destination was given. +// Coordinates are map pixels everywhere in this project; since the world -> +// map projection is a single uniform scale with no rotation (see +// rust_parser/core/src/mapdata/geometry.rs), a tree that is optimal in map +// pixels is optimal in world metres, and X/Y stay the world's own axes. + +var Emst = {}; + +(function() { + "use strict"; + + // ---- Kruskal over a candidate edge set ----------------------------------- + + // Both metrics reduce to the same final step: a candidate set that provably + // CONTAINS the MST, then Kruskal. Union-find with path compression + union + // by rank makes that step effectively linear, so the sort is what costs the + // log. + function kruskal(n, candidates) { + candidates.sort(function(a, b) { return a.len - b.len; }); + var parent = new Int32Array(n); + var rank = new Uint8Array(n); + for (var i = 0; i < n; i++) { + parent[i] = i; + } + + function find(x) { + var root = x; + while (parent[root] !== root) { + root = parent[root]; + } + while (parent[x] !== root) { + var next = parent[x]; + parent[x] = root; + x = next; + } + return root; + } + + var edges = []; + var total = 0; + for (var e = 0; e < candidates.length && edges.length < n - 1; e++) { + var candidate = candidates[e]; + var ra = find(candidate.a); + var rb = find(candidate.b); + if (ra === rb) { + continue; + } + if (rank[ra] < rank[rb]) { + var swap = ra; ra = rb; rb = swap; + } + parent[rb] = ra; + if (rank[ra] === rank[rb]) { + rank[ra]++; + } + edges.push(candidate); + total += candidate.len; + } + return { edges: edges, total: total }; + } + + // ---- Prim-Dijkstra: the total-length / trip-distance knob ---------------- + // + // Prim's shape with one changed key. Growing the tree outward from the + // destination, the next edge taken is the one minimising + // + // alpha * (distance from the destination to u through the tree) + // + w(u, v) [u already in, v not yet] + // + // At alpha = 0 the first term vanishes and this IS Prim, so the result is a + // genuine minimum spanning tree. At alpha = 1 it IS Dijkstra, so every + // point ends up on a shortest path to the destination -- and since the + // candidate set is augmented with a direct destination-to-everywhere edge + // (see solve), that means every point joined straight to it, which is the + // exact minimum of "sum of every point's trip distance". Between the two + // the costs trade off smoothly. This is Alpert, Hu, Huang & Kahng's + // Prim-Dijkstra tradeoff, from VLSI routing, where the same tension buys + // signal delay with wire length. + // + // Only the two endpoints are provably optimal for their own objective: + // "shortest network whose trip distances sum to at most X" is NP-hard, so + // strictly-between settings are a principled heuristic, not an optimum. + // network.js's panel says as much rather than implying otherwise. + // + // Cost is Prim's: every candidate edge is pushed at most once onto a binary + // heap, so O(m log m) over a candidate set that is already O(n) -- the same + // O(n log n) budget as the Kruskal path. + function primDijkstra(count, candidates, root, alpha) { + // Adjacency in compressed-row form (counts, then prefix sums, then fill). + // Flat typed arrays rather than arrays-of-arrays: at 100,000 points this + // is half a million directed entries, where per-edge objects would cost + // more in allocation than the whole search costs in work. + var degree = new Int32Array(count); + var i; + for (i = 0; i < candidates.length; i++) { + degree[candidates[i].a]++; + degree[candidates[i].b]++; + } + var start = new Int32Array(count + 1); + for (i = 0; i < count; i++) { + start[i + 1] = start[i] + degree[i]; + } + var cursor = start.slice(0, count); + var target = new Int32Array(candidates.length * 2); + var weight = new Float64Array(candidates.length * 2); + for (i = 0; i < candidates.length; i++) { + var candidate = candidates[i]; + target[cursor[candidate.a]] = candidate.b; + weight[cursor[candidate.a]++] = candidate.len; + target[cursor[candidate.b]] = candidate.a; + weight[cursor[candidate.b]++] = candidate.len; + } + + // Binary heap over (key, node, cameFrom, edgeLength), parallel arrays. + // Each directed entry is pushed at most once, plus the root's seed. + var capacity = candidates.length * 2 + 1; + var heapKey = new Float64Array(capacity); + var heapNode = new Int32Array(capacity); + var heapFrom = new Int32Array(capacity); + var heapLen = new Float64Array(capacity); + var heapSize = 0; + var poppedNode = 0, poppedFrom = 0, poppedLen = 0; + + function heapSwap(a, b) { + var k = heapKey[a]; heapKey[a] = heapKey[b]; heapKey[b] = k; + var n = heapNode[a]; heapNode[a] = heapNode[b]; heapNode[b] = n; + var f = heapFrom[a]; heapFrom[a] = heapFrom[b]; heapFrom[b] = f; + var l = heapLen[a]; heapLen[a] = heapLen[b]; heapLen[b] = l; + } + + function heapPush(key, node, from, len) { + var at = heapSize++; + heapKey[at] = key; + heapNode[at] = node; + heapFrom[at] = from; + heapLen[at] = len; + while (at > 0) { + var parent = (at - 1) >> 1; + if (heapKey[parent] <= heapKey[at]) { + break; + } + heapSwap(at, parent); + at = parent; + } + } + + function heapPop() { + poppedNode = heapNode[0]; + poppedFrom = heapFrom[0]; + poppedLen = heapLen[0]; + heapSize--; + if (heapSize > 0) { + heapKey[0] = heapKey[heapSize]; + heapNode[0] = heapNode[heapSize]; + heapFrom[0] = heapFrom[heapSize]; + heapLen[0] = heapLen[heapSize]; + var at = 0; + for (;;) { + var left = at * 2 + 1; + var right = left + 1; + var smallest = at; + if (left < heapSize && heapKey[left] < heapKey[smallest]) { + smallest = left; + } + if (right < heapSize && heapKey[right] < heapKey[smallest]) { + smallest = right; + } + if (smallest === at) { + break; + } + heapSwap(at, smallest); + at = smallest; + } + } + } + + var inTree = new Uint8Array(count); + var paths = new Float64Array(count); // Distance to the destination through the tree. + var edges = []; + var total = 0; + heapPush(0, root, -1, 0); + while (heapSize > 0 && edges.length < count - 1) { + heapPop(); + var node = poppedNode; + if (inTree[node]) { + continue; // Already reached by a cheaper key -- the lazy-deletion case. + } + inTree[node] = 1; + if (poppedFrom !== -1) { + // poppedFrom entered the tree earlier, so its own path is final. + paths[node] = paths[poppedFrom] + poppedLen; + edges.push({ a: poppedFrom, b: node, len: poppedLen }); + total += poppedLen; + } + for (var e = start[node]; e < start[node + 1]; e++) { + if (!inTree[target[e]]) { + heapPush(alpha * paths[node] + weight[e], target[e], node, weight[e]); + } + } + } + return { edges: edges, total: total, paths: paths }; + } + + // ---- Shared entry point -------------------------------------------------- + + function euclideanLength(xs, ys, a, b) { + return Math.hypot(xs[a] - xs[b], ys[a] - ys[b]); + } + + function rectilinearLength(xs, ys, a, b) { + return Math.abs(xs[a] - xs[b]) + Math.abs(ys[a] - ys[b]); + } + + // Exactly coincident points -- two machines stacked on the same spot, or + // the same object added to the list twice -- are ambiguous for "nearest in + // this direction" and degenerate for the triangulation, so they never reach + // the geometry: one representative per distinct coordinate goes in, and + // every other point is stitched back on afterwards with a zero-length edge. + // The returned tree still spans every input index (n-1 edges), which is + // what the caller draws, and the total is unaffected. + function solve(xs, ys, candidatesFor, lengthOf, options) { + var n = xs.length; + var root = options && typeof options.root === "number" + && options.root >= 0 && options.root < n ? options.root : -1; + var alpha = options && typeof options.alpha === "number" + ? Math.min(1, Math.max(0, options.alpha)) : 0; + if (n < 2) { + return emptyResult(n, root); + } + var seen = Object.create(null); + var uniqueX = []; + var uniqueY = []; + var originalOf = []; // unique index -> an index into xs/ys + var uniqueOf = new Int32Array(n); // index into xs/ys -> unique index + var zeroEdges = []; + for (var i = 0; i < n; i++) { + var key = xs[i] + "," + ys[i]; + if (seen[key] !== undefined) { + zeroEdges.push({ a: seen[key], b: i, len: 0 }); + uniqueOf[i] = uniqueOf[seen[key]]; + continue; + } + seen[key] = i; + uniqueOf[i] = originalOf.length; + originalOf.push(i); + uniqueX.push(xs[i]); + uniqueY.push(ys[i]); + } + if (uniqueX.length < 2) { + // Every point sits on one spot: zero-length edges hold them together + // and no trip goes anywhere. + var single = emptyResult(n, root); + single.edges = zeroEdges; + return single; + } + + var candidates = candidatesFor(uniqueX, uniqueY); + var tree; + if (root === -1) { + tree = kruskal(uniqueX.length, candidates); + } else { + // The candidate sets are built to contain the minimum SPANNING tree; + // they have no reason to contain a direct destination-to-far-corner + // edge, which is exactly what the trip-distance end of the knob wants. + // Adding the destination's own edges (n-1 more candidates, so the set + // stays O(n)) is what lets alpha = 1 come out as the exact star. + var uniqueRoot = uniqueOf[root]; + for (var r = 0; r < uniqueX.length; r++) { + if (r !== uniqueRoot) { + candidates.push({ a: uniqueRoot, b: r, len: lengthOf(uniqueX, uniqueY, uniqueRoot, r) }); + } + } + tree = primDijkstra(uniqueX.length, candidates, uniqueRoot, alpha); + } + + var edges = tree.edges.map(function(edge) { + return { a: originalOf[edge.a], b: originalOf[edge.b], len: edge.len }; + }); + var result = { edges: edges.concat(zeroEdges), total: tree.total, + paths: null, pathTotal: 0, directTotal: 0 }; + if (root !== -1) { + // Reported over the ORIGINAL points, so a duplicate reports the same + // trip as the point it is stacked on (its own link is zero-length). + var paths = new Float64Array(n); + for (var p = 0; p < n; p++) { + paths[p] = tree.paths[uniqueOf[p]]; + result.pathTotal += paths[p]; + result.directTotal += lengthOf(xs, ys, root, p); + } + result.paths = paths; + } + return result; + } + + function emptyResult(n, root) { + return { edges: [], total: 0, paths: root === -1 ? null : new Float64Array(n), + pathTotal: 0, directTotal: 0 }; + } + + // Points that are all on one line have no triangulation and no octant + // structure worth the name -- but their MST is simply the chain through + // them in order along that line, which lexicographic order gives for any + // line including a vertical one. + function chainCandidates(xs, ys, lengthOf) { + var order = []; + for (var i = 0; i < xs.length; i++) { + order.push(i); + } + order.sort(function(a, b) { return (xs[a] - xs[b]) || (ys[a] - ys[b]); }); + var candidates = []; + for (var k = 1; k < order.length; k++) { + candidates.push({ a: order[k - 1], b: order[k], len: lengthOf(xs, ys, order[k - 1], order[k]) }); + } + return candidates; + } + + // ---- Euclidean: Delaunay triangulation, then Kruskal --------------------- + + Emst.euclidean = function(xs, ys, options) { + return solve(xs, ys, euclideanCandidates, euclideanLength, options); + }; + + function euclideanCandidates(xs, ys) { + var n = xs.length; + if (n === 2) { + return [{ a: 0, b: 1, len: euclideanLength(xs, ys, 0, 1) }]; + } + // The chain is always in the candidate set, not just when the + // triangulation comes back empty. Points on (or within floating-point + // noise of) a single line have no meaningful triangulation, and how + // degenerate the mesh comes out is a matter of rounding rather than a + // clean yes/no -- so rather than guess a "collinear enough" threshold, + // the chain rides along as a guaranteed connected fallback. It is the + // exact MST for a collinear set, and for anything else Kruskal simply + // takes the shorter Delaunay edges instead: extra candidates can never + // make the tree worse, only the running time marginally longer. + var candidates = chainCandidates(xs, ys, euclideanLength); + var mesh = delaunay(xs, ys); + var triangles = mesh.triangles; + var halfedges = mesh.halfedges; + for (var e = 0; e < triangles.length; e++) { + // One candidate per undirected edge: take the halfedge with the larger + // index of each opposite pair, plus every hull halfedge (no opposite). + var opposite = halfedges[e]; + if (opposite !== -1 && opposite > e) { + continue; + } + var a = triangles[e]; + var b = triangles[e % 3 === 2 ? e - 2 : e + 1]; + candidates.push({ a: a, b: b, len: euclideanLength(xs, ys, a, b) }); + } + // A point the sweep could not place (see delaunay's `skipped`) has no + // triangulated neighbours at all, so on its own it would end up hanging + // off the chain instead of off its real nearest neighbour. It is a point + // sitting within floating-point noise of another one, and the nearest + // point is exactly what such a point connects to in the MST -- so scan + // for it. Measured over uniform, gridded, near-collinear and + // micro-clustered sets up to 20,000 points this never fires at all; + // MAX_SKIP_REPAIR is only there so that if some pathological input ever + // does skip wholesale, this stays a quadratic scan over a handful of + // points rather than over all of them (the chain still spans everything). + mesh.skipped.slice(0, MAX_SKIP_REPAIR).forEach(function(index) { + var best = -1; + var bestLen = Infinity; + for (var j = 0; j < n; j++) { + if (j === index) { + continue; + } + var len = euclideanLength(xs, ys, index, j); + if (len < bestLen) { + bestLen = len; + best = j; + } + } + if (best !== -1) { + candidates.push({ a: index, b: best, len: bestLen }); + } + }); + return candidates; + } + + // ---- Delaunay triangulation (sweep-hull) --------------------------------- + // + // Sinclair's s-hull sweep: seed with the smallest triangle near the middle + // of the cloud, sort every other point by distance from that triangle's + // circumcentre, and add them in that order. Each new point sees a + // contiguous run of convex-hull edges; the triangles it forms against them + // are legalized on the spot (flip an edge whenever the opposite point falls + // inside a circumcircle) so the mesh is Delaunay after every insertion. + // + // The bookkeeping is the flat halfedge formulation that Mapbox's Delaunator + // popularized -- triangles[] and halfedges[] as parallel index arrays, plus + // a hash over hull vertices by angle so the first visible hull edge is + // found without walking the hull. This is an independent implementation of + // those published algorithms (s-hull, Sinclair 2016), written for this + // project; no third-party triangulation code is vendored here. + // + // Halfedge convention: halfedge e belongs to triangle (e / 3 | 0) and runs + // from triangles[e] to triangles[next(e)]; halfedges[e] is the opposing + // halfedge of the neighbouring triangle, or -1 on the hull. + + var MAX_FLIP_STACK = 512; // See legalize: a bound, not an expected depth. + var MAX_SKIP_REPAIR = 64; // See euclideanCandidates: likewise. + + // Twice the signed area of (a, b, c): positive when a -> b -> c turns one + // way, negative the other. Which way is "counter-clockwise" depends on the + // Y axis direction, and the triangulation only needs the convention to be + // consistent -- the seed triangle below is flipped to match if needed. + function cross(ax, ay, bx, by, cx, cy) { + return (bx - ax) * (cy - ay) - (by - ay) * (cx - ax); + } + + // True when d falls strictly inside the circumcircle of (a, b, c), which is + // the "this edge must be flipped" test. (a, b, c) must wind the same way as + // the seed triangle, i.e. cross(a, b, c) > 0 -- with the opposite winding + // this determinant's sign flips and every flip decision inverts. + function inCircle(ax, ay, bx, by, cx, cy, dx, dy) { + var adx = ax - dx, ady = ay - dy; + var bdx = bx - dx, bdy = by - dy; + var cdx = cx - dx, cdy = cy - dy; + var ap = adx * adx + ady * ady; + var bp = bdx * bdx + bdy * bdy; + var cp = cdx * cdx + cdy * cdy; + return adx * (bdy * cp - bp * cdy) + - ady * (bdx * cp - bp * cdx) + + ap * (bdx * cdy - bdy * cdx) > 0; + } + + function circumradiusSquared(ax, ay, bx, by, cx, cy) { + var center = circumcenter(ax, ay, bx, by, cx, cy); + if (!center) { + return Infinity; + } + var dx = center.x - ax; + var dy = center.y - ay; + return dx * dx + dy * dy; + } + + function circumcenter(ax, ay, bx, by, cx, cy) { + var dx = bx - ax, dy = by - ay; + var ex = cx - ax, ey = cy - ay; + var bl = dx * dx + dy * dy; + var cl = ex * ex + ey * ey; + var d = 0.5 / (dx * ey - dy * ex); + if (!isFinite(d)) { + return null; // Collinear: no circumcircle. + } + return { x: ax + (ey * bl - dy * cl) * d, y: ay + (dx * cl - ex * bl) * d }; + } + + // Monotonic in the true angle of (dx, dy) and far cheaper -- only used to + // bucket hull vertices by direction from the sweep centre. + function pseudoAngle(dx, dy) { + var p = dx / (Math.abs(dx) + Math.abs(dy)); + return (dy > 0 ? 3 - p : 1 + p) / 4; // [0, 1) + } + + function delaunay(xs, ys) { + var n = xs.length; + var triangles = []; + var halfedges = []; + var skipped = []; + if (n < 3) { + return { triangles: triangles, halfedges: halfedges, skipped: skipped }; + } + + // -- Seed triangle: the smallest circumcircle anchored near the centre. + var minX = Infinity, minY = Infinity, maxX = -Infinity, maxY = -Infinity; + for (var i = 0; i < n; i++) { + if (xs[i] < minX) minX = xs[i]; + if (ys[i] < minY) minY = ys[i]; + if (xs[i] > maxX) maxX = xs[i]; + if (ys[i] > maxY) maxY = ys[i]; + } + var midX = (minX + maxX) / 2; + var midY = (minY + maxY) / 2; + + var i0 = -1, i1 = -1, i2 = -1; + var best = Infinity; + for (i = 0; i < n; i++) { + var d = (xs[i] - midX) * (xs[i] - midX) + (ys[i] - midY) * (ys[i] - midY); + if (d < best) { + best = d; + i0 = i; + } + } + best = Infinity; + for (i = 0; i < n; i++) { + if (i === i0) { + continue; + } + d = (xs[i] - xs[i0]) * (xs[i] - xs[i0]) + (ys[i] - ys[i0]) * (ys[i] - ys[i0]); + if (d > 0 && d < best) { + best = d; + i1 = i; + } + } + best = Infinity; + for (i = 0; i < n; i++) { + if (i === i0 || i === i1) { + continue; + } + d = circumradiusSquared(xs[i0], ys[i0], xs[i1], ys[i1], xs[i], ys[i]); + if (d < best) { + best = d; + i2 = i; + } + } + if (i1 === -1 || i2 === -1 || best === Infinity) { + // No three non-collinear points at all -- the caller falls back to a chain. + return { triangles: triangles, halfedges: halfedges, skipped: skipped }; + } + if (cross(xs[i0], ys[i0], xs[i1], ys[i1], xs[i2], ys[i2]) < 0) { + var swap = i1; i1 = i2; i2 = swap; // Fix the seed's winding. + } + + var center = circumcenter(xs[i0], ys[i0], xs[i1], ys[i1], xs[i2], ys[i2]); + + // -- Insertion order: outward from the seed circumcentre, so the hull + // only ever grows and every point lands outside the current hull. + var order = []; + var dists = new Float64Array(n); + for (i = 0; i < n; i++) { + order.push(i); + dists[i] = (xs[i] - center.x) * (xs[i] - center.x) + (ys[i] - center.y) * (ys[i] - center.y); + } + order.sort(function(a, b) { return dists[a] - dists[b]; }); + + // -- Hull as a doubly linked ring of vertex indices, plus the halfedge + // each hull edge belongs to, plus an angle hash for O(1)-ish lookup. + var hullPrev = new Int32Array(n); + var hullNext = new Int32Array(n); + var hullTri = new Int32Array(n); + var hullStart = i0; + var hashSize = Math.ceil(Math.sqrt(n)); + var hullHash = new Int32Array(hashSize).fill(-1); + + function hashKey(x, y) { + return Math.floor(pseudoAngle(x - center.x, y - center.y) * hashSize) % hashSize; + } + + function link(a, b) { + halfedges[a] = b; + if (b !== -1) { + halfedges[b] = a; + } + } + + function addTriangle(a, b, c, ha, hb, hc) { + var t = triangles.length; + triangles.push(a, b, c); + link(t, ha); + link(t + 1, hb); + link(t + 2, hc); + return t; + } + + // Flip every edge that fails the empty-circumcircle test, following the + // cascade outward. Returns the halfedge that ends up in the position the + // caller needs for its hull bookkeeping (see the insertion loop). + var flipStack = new Int32Array(MAX_FLIP_STACK); + function legalize(a) { + var depth = 0; + var ar = 0; + for (;;) { + var b = halfedges[a]; + var a0 = a - a % 3; + ar = a0 + (a + 2) % 3; + if (b === -1) { // Hull edge: nothing on the other side to be illegal. + if (depth === 0) { + break; + } + a = flipStack[--depth]; + continue; + } + var b0 = b - b % 3; + var al = a0 + (a + 1) % 3; + var bl = b0 + (b + 2) % 3; + var p0 = triangles[ar]; + var pr = triangles[a]; + var pl = triangles[al]; + var p1 = triangles[bl]; + var illegal = inCircle( + xs[p0], ys[p0], xs[pr], ys[pr], xs[pl], ys[pl], xs[p1], ys[p1]); + if (!illegal) { + if (depth === 0) { + break; + } + a = flipStack[--depth]; + continue; + } + triangles[a] = p1; + triangles[b] = p0; + var hbl = halfedges[bl]; + if (hbl === -1) { + // The flipped-away edge was on the hull: move the hull's reference + // to the halfedge that replaced it. + var e = hullStart; + do { + if (hullTri[e] === bl) { + hullTri[e] = a; + break; + } + e = hullPrev[e]; + } while (e !== hullStart); + } + link(a, hbl); + link(b, halfedges[ar]); + link(ar, bl); + // Both new outer edges may now be illegal in turn. One is followed + // immediately, the other is stacked -- with a hard cap, so a + // floating-point near-tie that keeps flipping the same quad back and + // forth can never hang the browser. + if (depth < MAX_FLIP_STACK) { + flipStack[depth++] = b0 + (b + 1) % 3; + } + } + return ar; + } + + hullNext[i0] = hullPrev[i2] = i1; + hullNext[i1] = hullPrev[i0] = i2; + hullNext[i2] = hullPrev[i1] = i0; + hullTri[i0] = 0; + hullTri[i1] = 1; + hullTri[i2] = 2; + hullHash[hashKey(xs[i0], ys[i0])] = i0; + hullHash[hashKey(xs[i1], ys[i1])] = i1; + hullHash[hashKey(xs[i2], ys[i2])] = i2; + addTriangle(i0, i1, i2, -1, -1, -1); + + for (var k = 0; k < order.length; k++) { + var p = order[k]; + if (p === i0 || p === i1 || p === i2) { + continue; + } + var x = xs[p], y = ys[p]; + + // Start from the hull vertex hashed nearest this direction, then walk + // forward to the first edge this point can actually see. + var start = 0; + var key = hashKey(x, y); + for (var j = 0; j < hashSize; j++) { + start = hullHash[(key + j) % hashSize]; + if (start !== -1 && start !== hullNext[start]) { + break; + } + } + start = hullPrev[start]; + var edge = start; + var q = hullNext[edge]; + // An edge is visible when the new point lies on its outer side. + while (cross(x, y, xs[edge], ys[edge], xs[q], ys[q]) >= 0) { + edge = q; + if (edge === start) { + edge = -1; + break; + } + q = hullNext[edge]; + } + if (edge === -1) { + skipped.push(p); // Numerically indistinguishable from an existing point. + continue; + } + + var t = addTriangle(edge, p, hullNext[edge], -1, -1, hullTri[edge]); + hullTri[p] = legalize(t + 2); + hullTri[edge] = t; + + // Walk forward over every further edge this point can see, filling the + // wedge with triangles as it goes. + var forward = hullNext[edge]; + for (;;) { + q = hullNext[forward]; + if (cross(x, y, xs[forward], ys[forward], xs[q], ys[q]) >= 0) { + break; + } + t = addTriangle(forward, p, q, hullTri[p], -1, hullTri[forward]); + hullTri[p] = legalize(t + 2); + hullNext[forward] = forward; // Mark as no longer on the hull. + forward = q; + } + // ...and backward, but only when the search above stopped at the very + // first edge tried (otherwise the edges behind it were already found + // not to be visible). + if (edge === start) { + for (;;) { + q = hullPrev[edge]; + if (cross(x, y, xs[q], ys[q], xs[edge], ys[edge]) >= 0) { + break; + } + t = addTriangle(q, p, edge, -1, hullTri[edge], hullTri[q]); + legalize(t + 2); + hullTri[q] = t; + hullNext[edge] = edge; // Off the hull. + edge = q; + } + } + + hullStart = hullPrev[p] = edge; + hullNext[edge] = p; + hullPrev[forward] = p; + hullNext[p] = forward; + hullHash[hashKey(x, y)] = p; + hullHash[hashKey(xs[edge], ys[edge])] = edge; + } + + return { triangles: triangles, halfedges: halfedges, skipped: skipped }; + } + + // ---- Rectilinear: octant graph, then Kruskal ----------------------------- + + Emst.rectilinear = function(xs, ys, options) { + return solve(xs, ys, rectilinearCandidates, rectilinearLength, options); + }; + + function rectilinearCandidates(xs, ys) { + var n = xs.length; + var candidates = []; + function emit(a, b) { + candidates.push({ a: a, b: b, len: rectilinearLength(xs, ys, a, b) }); + } + var negX = new Float64Array(n); + for (var i = 0; i < n; i++) { + negX[i] = -xs[i]; + } + // One sweep per octant of the upper half-plane; the lower four are the + // same edges seen from their other endpoint, so they need no sweep. + // Mirroring X and swapping the axes are both L1 isometries, so distances + // are unchanged and each transformed R1 sweep is a different octant of + // the original: (x, y) -> R1, (y, x) -> R2, (-x, y) -> R4, (y, -x) -> R3. + sweepOctantR1(xs, ys, emit); + sweepOctantR1(ys, xs, emit); + sweepOctantR1(negX, ys, emit); + sweepOctantR1(ys, negX, emit); + return candidates; + } + + // Fenwick tree over "minimum value, and which point achieved it", supporting + // point insert and prefix-minimum query. Insert-only, which is all the + // sweep needs. + function MinFenwick(size) { + this.values = new Float64Array(size + 1).fill(Infinity); + this.owners = new Int32Array(size + 1).fill(-1); + } + + MinFenwick.prototype.insert = function(pos, value, owner) { + for (var i = pos; i < this.values.length; i += i & -i) { + if (value < this.values[i]) { + this.values[i] = value; + this.owners[i] = owner; + } + } + }; + + MinFenwick.prototype.queryPrefix = function(pos) { + var bestValue = Infinity; + var bestOwner = -1; + for (var i = pos; i > 0; i -= i & -i) { + if (this.values[i] < bestValue) { + bestValue = this.values[i]; + bestOwner = this.owners[i]; + } + } + return bestOwner; + }; + + // Calls emit(p, q) with q = the L1-nearest point to p inside p's octant + // R1 = { q : qx - px >= qy - py >= 0 }, for every p that has one. + // + // Inside R1 the L1 distance is (qx + qy) - (px + py), so the nearest point + // is simply the one with the smallest (x + y). The octant's two conditions + // become "qy >= py" -- satisfied by sweeping top to bottom and only + // considering points already swept -- and "qx - qy >= px - py", a suffix + // range over the key u = x - y. So: sweep, ask the Fenwick tree for the + // smallest x + y over that suffix, insert, move on. O(n log n). + // + // Ties in y are broken by descending x, which puts the right-hand point of + // a horizontal pair into the sweep first so the left-hand one finds it (an + // edge only has to be found from ONE of its endpoints). + function sweepOctantR1(xs, ys, emit) { + var n = xs.length; + var order = []; + var keys = new Float64Array(n); + for (var i = 0; i < n; i++) { + order.push(i); + keys[i] = xs[i] - ys[i]; + } + order.sort(function(a, b) { return (ys[b] - ys[a]) || (xs[b] - xs[a]); }); + + // Rank the key axis so the Fenwick tree can index it. + var sortedKeys = Array.prototype.slice.call(keys).sort(function(a, b) { return a - b; }); + var uniqueKeys = []; + for (i = 0; i < sortedKeys.length; i++) { + if (i === 0 || sortedKeys[i] !== sortedKeys[i - 1]) { + uniqueKeys.push(sortedKeys[i]); + } + } + var levels = uniqueKeys.length; + + function rankOf(value) { + var lo = 0, hi = levels - 1; + while (lo < hi) { + var mid = (lo + hi) >> 1; + if (uniqueKeys[mid] < value) { + lo = mid + 1; + } else { + hi = mid; + } + } + return lo; // 0-based + } + + var tree = new MinFenwick(levels); + for (var k = 0; k < n; k++) { + var p = order[k]; + // Fenwick prefixes run low-to-high, the query is a suffix over the key + // axis -- so index it reversed. + var position = levels - rankOf(keys[p]); + var nearest = tree.queryPrefix(position); + if (nearest !== -1) { + emit(p, nearest); + } + tree.insert(position, xs[p] + ys[p], p); + } + } +})(); diff --git a/map/static/map/finditem.js b/map/static/map/finditem.js index 00d11ce..9485b95 100644 --- a/map/static/map/finditem.js +++ b/map/static/map/finditem.js @@ -181,7 +181,34 @@ var FindItem = {}; } } - var catalog = []; // [{kind:"item", label, itemPath}, {kind:"building", label, typePaths, category, subcategory, row}, {kind:"vehicle", label, typePaths, isTrain, iconUrl, row}, {kind:"wildlife", label, iconUrl, row}, {kind:"category", label, iconClassName, rows}, ...] + // Map tools -- things the search bar can OPEN rather than find. They exist + // only here: a planning tool that most sessions never touch does not earn a + // permanent button, but typing its name should always reach it. Unlike + // every other entry these are not rebuilt per save (they describe no save + // data), so they sit in the catalog from the first keystroke, with or + // without a save loaded. + var TOOL_ICON_URL = "data:image/svg+xml," + encodeURIComponent( + '' + + '' + + '' + + '' + + '' + ); + + var TOOL_ENTRIES = [ + { + kind: "tool", + label: "Optimal network finder (EMST)", + iconUrl: TOOL_ICON_URL, + open: function() { + if (window.NetworkTool) { + NetworkTool.open(); + } + }, + }, + ]; + + var catalog = TOOL_ENTRIES.slice(); // [{kind:"item", label, itemPath}, {kind:"building", label, typePaths, category, subcategory, row}, {kind:"vehicle", label, typePaths, isTrain, iconUrl, row}, {kind:"wildlife", label, iconUrl, row}, {kind:"category", label, iconClassName, rows}, {kind:"tool", label, iconUrl, open}, ...] var itemCatalogByLabel = {}; // label -> itemPath, for an exact-match Enter on a fully typed item name. var buildingCatalogByLabel = {}; // label -> building catalog entry, same for a fully typed building name. var vehicleCatalogByLabel = {}; // label -> vehicle catalog entry, same for a fully typed vehicle name. @@ -1312,7 +1339,9 @@ var FindItem = {}; function selectSuggestion(entry) { searchInput.value = entry.label; hideSuggestions(); - if (entry.kind === "building") { + if (entry.kind === "tool") { + entry.open(); + } else if (entry.kind === "building") { runBuildingSearchFor(entry); } else if (entry.kind === "vehicle") { runVehicleSearchFor(entry); @@ -1334,8 +1363,12 @@ var FindItem = {}; // Whether this suggestion has any layer to show/hide at all. Everything // that isn't an item always does; an item only when it's also a world - // pickup carrying its Collectables rows (see FindItem.build). + // pickup carrying its Collectables rows (see FindItem.build). A tool has no + // layer at all -- it opens something. function entryHasVisibilityToggle(entry) { + if (entry.kind === "tool") { + return false; + } return entry.kind !== "item" || !!entry.rows; } @@ -1411,10 +1444,12 @@ var FindItem = {}; var img = document.createElement("img"); img.className = "searchSuggestionIcon"; img.alt = ""; - if (entry.kind === "vehicle" || entry.kind === "wildlife" || entry.kind === "resource") { - // Vehicle glyphs (icons/vehicles/), creature art (icons/creatures/) and - // a resource's ore icon all arrive as a ready URL on the entry itself - // (see filters.js) -- no ClassName-keyed lookup to do. + if (entry.kind === "vehicle" || entry.kind === "wildlife" || entry.kind === "resource" + || entry.kind === "tool") { + // Vehicle glyphs (icons/vehicles/), creature art (icons/creatures/), a + // resource's ore icon and a tool's own inline glyph all arrive as a + // ready URL on the entry itself (see filters.js) -- no ClassName-keyed + // lookup to do. img.onerror = function() { img.onerror = null; img.src = DEFAULT_BUILDING_ICON_URL; }; img.src = entry.iconUrl; if (entry.kind === "vehicle") { @@ -1515,6 +1550,10 @@ var FindItem = {}; ["Buildings", matchesOfKind("building")], ["Vehicles", matchesOfKind("vehicle")], ["Wildlife", matchesOfKind("wildlife")], + // Last: a tool is only ever reached by typing most of its name, so it + // never needs to compete for the top of the list with what the query + // more likely means. + ["Tools", matchesOfKind("tool")], ]; currentSuggestions = groups.reduce(function(all, group) { return all.concat(group[1]); }, []); @@ -1618,6 +1657,13 @@ var FindItem = {}; } else if (layerCatalogByLabel.hasOwnProperty(typedLabel)) { hideSuggestions(); runLayerSearchFor(layerCatalogByLabel[typedLabel]); + } else { + TOOL_ENTRIES.forEach(function(tool) { + if (tool.label === typedLabel) { + hideSuggestions(); + tool.open(); + } + }); } } else if (e.key === "Escape") { hideSuggestions(); @@ -1797,7 +1843,8 @@ var FindItem = {}; layerCatalogByLabel = {}; wildlifeEntries.concat(categoryEntries, resourceEntries).forEach(function(entry) { layerCatalogByLabel[entry.label] = entry; }); - catalog = itemEntries.concat(buildingEntries, vehicleEntries, wildlifeEntries, categoryEntries, resourceEntries); + catalog = itemEntries.concat(buildingEntries, vehicleEntries, wildlifeEntries, categoryEntries, + resourceEntries, TOOL_ENTRIES); window.MapApp.currentDepotItems = payload.dimensionalDepot || []; }; diff --git a/map/static/map/index.html b/map/static/map/index.html index 4fada7f..1a36b1c 100644 --- a/map/static/map/index.html +++ b/map/static/map/index.html @@ -404,6 +404,87 @@ + + + + + - -
- + + +
-
- - - +
- -
+ +
+ + - + -