- Rename "type" -> "$type" (first key, required for STJ polymorphism) in all 109 spawn JSON files (5,612 records). - Convert "homeRange" + "location" -> "spawnBounds" object, dropping homeRange. Runtime keeps reading homeRange so un-migrated/external files still load. - Add BoundsEquivalenceTests (hr=0/1/3/7) validating that the script's toBounds formula produces the same Rectangle3D as the runtime homeRange path. - Add MigratedDataLoadTests loading a real migrated file as List<SpawnerDto> and round-tripping each DTO through ToSpawner(). - Add tools/spawner-json-migrate/migrate.mjs (offline Node script). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1571 lines
28 KiB
JSON
1571 lines
28 KiB
JSON
[
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "1cd4979b-aac9-4287-b8af-9a31bb5526bc",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1127,
|
|
1202,
|
|
-2
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1127,
|
|
"y1": 1202,
|
|
"z1": -2,
|
|
"x2": 1128,
|
|
"y2": 1203,
|
|
"z2": -2
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "genericguard",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "568aaef8-af43-44f6-8212-a50e96dc51d8",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1130,
|
|
1202,
|
|
-2
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1130,
|
|
"y1": 1202,
|
|
"z1": -2,
|
|
"x2": 1131,
|
|
"y2": 1203,
|
|
"z2": -2
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "genericguard",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "c7124c0d-db07-4d72-92e4-ff8ebb54ce89",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1128,
|
|
1165,
|
|
-12
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1124,
|
|
"y1": 1161,
|
|
"z1": -128,
|
|
"x2": 1133,
|
|
"y2": 1170,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "Garamon",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "29ebc79d-9f58-4ab8-9017-44a71fe17440",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1108,
|
|
1153,
|
|
-22
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1104,
|
|
"y1": 1149,
|
|
"z1": -128,
|
|
"x2": 1113,
|
|
"y2": 1158,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "gremlin",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "81c4ea7e-4927-4bba-a31b-62ec12092f66",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1110,
|
|
1169,
|
|
-23
|
|
],
|
|
"map": "TerMur",
|
|
"count": 10,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1103,
|
|
"y1": 1162,
|
|
"z1": -128,
|
|
"x2": 1118,
|
|
"y2": 1177,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "Slime",
|
|
"maxCount": 10,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "4eddff06-5db8-4a97-ad02-9284c3437410",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1097,
|
|
1189,
|
|
-38
|
|
],
|
|
"map": "TerMur",
|
|
"count": 25,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1090,
|
|
"y1": 1182,
|
|
"z1": -128,
|
|
"x2": 1105,
|
|
"y2": 1197,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "acidslug",
|
|
"maxCount": 25,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "bf730c77-6395-4ba6-80a4-8b004a7a78a1",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1039,
|
|
1185,
|
|
-56
|
|
],
|
|
"map": "TerMur",
|
|
"count": 8,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1023,
|
|
"y1": 1169,
|
|
"z1": -128,
|
|
"x2": 1056,
|
|
"y2": 1202,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "bloodworm",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 5,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "f6324bc0-73ac-4936-805a-875b46164c54",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1058,
|
|
1135,
|
|
-37
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1048,
|
|
"y1": 1125,
|
|
"z1": -128,
|
|
"x2": 1069,
|
|
"y2": 1146,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "dc88d319-4808-474a-8897-8bf076d951f9",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1064,
|
|
1106,
|
|
-65
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1054,
|
|
"y1": 1096,
|
|
"z1": -128,
|
|
"x2": 1075,
|
|
"y2": 1117,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 25,
|
|
"entries": [
|
|
{
|
|
"name": "Kraken",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "bcc44632-3114-4d86-86c5-a9b1e05a9c98",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1153,
|
|
1187,
|
|
-32
|
|
],
|
|
"map": "TerMur",
|
|
"count": 3,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1139,
|
|
"y1": 1173,
|
|
"z1": -128,
|
|
"x2": 1168,
|
|
"y2": 1202,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "84dd7320-c5a2-4b62-a959-83b749d88285",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1187,
|
|
1186,
|
|
-40
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:00:01",
|
|
"maxDelay": "00:00:01",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1180,
|
|
"y1": 1179,
|
|
"z1": -128,
|
|
"x2": 1195,
|
|
"y2": 1194,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "WaterElemental",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "bd06c2cc-090f-47c9-98af-119591c20f30",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1063,
|
|
1159,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 4,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1053,
|
|
"y1": 1149,
|
|
"z1": -128,
|
|
"x2": 1074,
|
|
"y2": 1170,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "bloodworm",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "0784ac30-eae0-4d6e-8953-f2217416f2a8",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1152,
|
|
1130,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1140,
|
|
"y1": 1118,
|
|
"z1": -128,
|
|
"x2": 1165,
|
|
"y2": 1143,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "1485dfcd-1dea-412f-a8fe-06a3f6a076cb",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1121,
|
|
1132,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1117,
|
|
"y1": 1128,
|
|
"z1": -128,
|
|
"x2": 1126,
|
|
"y2": 1137,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "FiddlingTobin",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "fd834a4b-778b-4f9c-9a86-c92de20ff2fe",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1150,
|
|
963,
|
|
-43
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1146,
|
|
"y1": 959,
|
|
"z1": -128,
|
|
"x2": 1155,
|
|
"y2": 968,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "NevilleBrightwhistle",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "f94a912f-46d6-45b9-81c0-910a92f2aa87",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1108,
|
|
1086,
|
|
-60
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1104,
|
|
"y1": 1082,
|
|
"z1": -128,
|
|
"x2": 1113,
|
|
"y2": 1091,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "tanglingroots",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "0829e9d8-84e7-41d2-9587-2d61b117f473",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1095,
|
|
1076,
|
|
-71
|
|
],
|
|
"map": "TerMur",
|
|
"count": 3,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1085,
|
|
"y1": 1066,
|
|
"z1": -128,
|
|
"x2": 1106,
|
|
"y2": 1087,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "tanglingroots",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "587467d9-8b59-4257-a242-9890ec058b00",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1089,
|
|
1128,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1085,
|
|
"y1": 1124,
|
|
"z1": -128,
|
|
"x2": 1094,
|
|
"y2": 1133,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "Gretchen",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "9e60f208-6e14-4d77-83f0-fb067d02e804",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1104,
|
|
1128,
|
|
-52
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1100,
|
|
"y1": 1124,
|
|
"z1": -128,
|
|
"x2": 1109,
|
|
"y2": 1133,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "ElderDugan",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "66d7c6f5-eeb7-4b34-af75-c82d38330ee1",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1135,
|
|
1132,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1131,
|
|
"y1": 1128,
|
|
"z1": -128,
|
|
"x2": 1140,
|
|
"y2": 1137,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "QuartermasterFlint",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "2affc9d3-8b16-4c2e-947f-45d362a4a0f4",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1015,
|
|
1118,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 12,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1001,
|
|
"y1": 1104,
|
|
"z1": -128,
|
|
"x2": 1030,
|
|
"y2": 1133,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 25,
|
|
"entries": [
|
|
{
|
|
"name": "Shade",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Spectre",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Wraith",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SkeletalMage",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SkeletalMage",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "BoneMagi",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Skeleton",
|
|
"maxCount": 4,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Skeleton",
|
|
"maxCount": 4,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SkeletalKnight",
|
|
"maxCount": 4,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "BoneKnight",
|
|
"maxCount": 4,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "382e2dee-6150-4d26-960b-c07b96638749",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1022,
|
|
1087,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 4,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1010,
|
|
"y1": 1075,
|
|
"z1": -128,
|
|
"x2": 1035,
|
|
"y2": 1100,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "Wraith",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Shade",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Spectre",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "BoneMagi",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SkeletalMage",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SkeletalMage",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Skeleton",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Skeleton",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SkeletalKnight",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "BoneKnight",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "d072d262-08f3-4da3-9dcc-3983fa81d186",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1039,
|
|
1072,
|
|
-32
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1034,
|
|
"y1": 1067,
|
|
"z1": -128,
|
|
"x2": 1045,
|
|
"y2": 1078,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "GreaterPoisonElemental",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "9beef510-d580-44fc-95a6-d5ba9100cc34",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1191,
|
|
1022,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 8,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1175,
|
|
"y1": 1006,
|
|
"z1": -128,
|
|
"x2": 1208,
|
|
"y2": 1039,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "GrayGoblin",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GrayGoblinMage",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "afed6e34-b8ee-4c64-b7d1-1b66629ccb97",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1177,
|
|
995,
|
|
-27
|
|
],
|
|
"map": "TerMur",
|
|
"count": 4,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1170,
|
|
"y1": 988,
|
|
"z1": -128,
|
|
"x2": 1185,
|
|
"y2": 1003,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "GrayGoblinKeeper",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "WolfSpider",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "5caafbc5-1310-408c-8a26-ec00335494c2",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1218,
|
|
1049,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1211,
|
|
"y1": 1042,
|
|
"z1": -128,
|
|
"x2": 1226,
|
|
"y2": 1057,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "GrayGoblinMage",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GrayGoblin",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "a7f77781-8fcb-4aa0-b398-8f9b87b59eb2",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1178,
|
|
971,
|
|
-27
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1168,
|
|
"y1": 961,
|
|
"z1": -128,
|
|
"x2": 1189,
|
|
"y2": 982,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "GrayGoblin",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "6b2a7732-7ee9-480e-abd4-db501214cb05",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1214,
|
|
1026,
|
|
-22
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1209,
|
|
"y1": 1021,
|
|
"z1": -128,
|
|
"x2": 1220,
|
|
"y2": 1032,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "GrayGoblin",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "b00555a0-97e8-4eb3-b609-2bb9bc5d21bd",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1199,
|
|
1053,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 3,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1192,
|
|
"y1": 1046,
|
|
"z1": -128,
|
|
"x2": 1207,
|
|
"y2": 1061,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "GrayGoblinMage",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GrayGoblin",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "23b17a4f-d7e9-421c-8581-ba8eb8aff487",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1204,
|
|
1041,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1200,
|
|
"y1": 1037,
|
|
"z1": -128,
|
|
"x2": 1209,
|
|
"y2": 1046,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "Jaacar",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "25d8cb74-d701-4e5a-9074-e7c20f7cff39",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1189,
|
|
989,
|
|
-27
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1185,
|
|
"y1": 985,
|
|
"z1": -128,
|
|
"x2": 1194,
|
|
"y2": 994,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "Barreraak",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "95edace5-c3dc-4582-b559-1c3f9905f6f5",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1208,
|
|
984,
|
|
-1
|
|
],
|
|
"map": "TerMur",
|
|
"count": 9,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1193,
|
|
"y1": 969,
|
|
"z1": -128,
|
|
"x2": 1224,
|
|
"y2": 1000,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "wolfspider",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GrayGoblin",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "975d89b2-f693-48c0-b88b-9796d8e39ee8",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1217,
|
|
1074,
|
|
-52
|
|
],
|
|
"map": "TerMur",
|
|
"count": 18,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1207,
|
|
"y1": 1064,
|
|
"z1": -128,
|
|
"x2": 1228,
|
|
"y2": 1085,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "Lich",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Spectre",
|
|
"maxCount": 5,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Shade",
|
|
"maxCount": 5,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Wraith",
|
|
"maxCount": 5,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Skeleton",
|
|
"maxCount": 7,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "RottingCorpse",
|
|
"maxCount": 7,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "Mummy",
|
|
"maxCount": 5,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "1b91d22a-24a2-4aee-88fa-36304f40dfdc",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1053,
|
|
861,
|
|
-32
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1038,
|
|
"y1": 846,
|
|
"z1": -128,
|
|
"x2": 1069,
|
|
"y2": 877,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "NavreyNightEyes",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "a37dcfad-6094-4074-8fc4-ead7d8dd889c",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1094,
|
|
1002,
|
|
-16
|
|
],
|
|
"map": "TerMur",
|
|
"count": 9,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1079,
|
|
"y1": 987,
|
|
"z1": -128,
|
|
"x2": 1110,
|
|
"y2": 1018,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "WolfSpider",
|
|
"maxCount": 8,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "SentinelSpider",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "5a3f2d8b-8ed7-43fe-977b-a082ad4fd243",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1124,
|
|
1008,
|
|
-43
|
|
],
|
|
"map": "TerMur",
|
|
"count": 10,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1109,
|
|
"y1": 993,
|
|
"z1": -128,
|
|
"x2": 1140,
|
|
"y2": 1024,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 20,
|
|
"entries": [
|
|
{
|
|
"name": "WolfSpider",
|
|
"maxCount": 9,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "BloodElemental",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "31bf6eb1-fe34-4d25-b7cc-d0f395b2370a",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1147,
|
|
993,
|
|
-41
|
|
],
|
|
"map": "TerMur",
|
|
"count": 1,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1140,
|
|
"y1": 986,
|
|
"z1": -128,
|
|
"x2": 1155,
|
|
"y2": 1001,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 7,
|
|
"entries": [
|
|
{
|
|
"name": "IronBeetle",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "399bf1fe-0c47-4945-8c14-5ee8a1d3b6b3",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1034,
|
|
1028,
|
|
-43
|
|
],
|
|
"map": "TerMur",
|
|
"count": 3,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1028,
|
|
"y1": 1022,
|
|
"z1": -128,
|
|
"x2": 1041,
|
|
"y2": 1035,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "GreenGoblinAlchemist",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblin",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblinScout",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "df3d7a25-190a-4f00-968c-a6def4cfa15e",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1015,
|
|
1022,
|
|
-43
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1012,
|
|
"y1": 1019,
|
|
"z1": -128,
|
|
"x2": 1019,
|
|
"y2": 1026,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "GreenGoblinAlchemist",
|
|
"maxCount": 2,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "4bdd2d24-47f0-4678-b220-921df1e1c213",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1014,
|
|
1000,
|
|
-43
|
|
],
|
|
"map": "TerMur",
|
|
"count": 2,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1010,
|
|
"y1": 996,
|
|
"z1": -128,
|
|
"x2": 1019,
|
|
"y2": 1005,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": -1,
|
|
"entries": [
|
|
{
|
|
"name": "Xenrr",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblin",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "b1225d9f-1777-4ceb-9e03-2566fb2dc314",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1034,
|
|
1004,
|
|
-43
|
|
],
|
|
"map": "TerMur",
|
|
"count": 3,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1027,
|
|
"y1": 997,
|
|
"z1": -128,
|
|
"x2": 1042,
|
|
"y2": 1012,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 15,
|
|
"entries": [
|
|
{
|
|
"name": "GreenGoblin",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblinAlchemist",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "af6a0287-46a1-490c-88ae-15172ec414f8",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1024,
|
|
1018,
|
|
-42
|
|
],
|
|
"map": "TerMur",
|
|
"count": 4,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1020,
|
|
"y1": 1014,
|
|
"z1": -128,
|
|
"x2": 1029,
|
|
"y2": 1023,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "rotworm",
|
|
"maxCount": 4,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "332360f9-69c2-4c45-b36b-0325b7c6650e",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1015,
|
|
976,
|
|
-27
|
|
],
|
|
"map": "TerMur",
|
|
"count": 4,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1009,
|
|
"y1": 970,
|
|
"z1": -128,
|
|
"x2": 1022,
|
|
"y2": 983,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 10,
|
|
"entries": [
|
|
{
|
|
"name": "Vernix",
|
|
"maxCount": 1,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblinAlchemist",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblin",
|
|
"maxCount": 3,
|
|
"probability": 100
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$type": "Spawner",
|
|
"guid": "4bb2f7ea-9131-47be-83a6-0f13831e76b1",
|
|
"name": "Spawner (603)",
|
|
"location": [
|
|
1044,
|
|
976,
|
|
-30
|
|
],
|
|
"map": "TerMur",
|
|
"count": 12,
|
|
"minDelay": "00:05:00",
|
|
"maxDelay": "00:10:00",
|
|
"team": 0,
|
|
"spawnBounds": {
|
|
"x1": 1027,
|
|
"y1": 959,
|
|
"z1": -128,
|
|
"x2": 1062,
|
|
"y2": 994,
|
|
"z2": 128
|
|
},
|
|
"walkingRange": 25,
|
|
"entries": [
|
|
{
|
|
"name": "GreenGoblinAlchemist",
|
|
"maxCount": 12,
|
|
"probability": 100
|
|
},
|
|
{
|
|
"name": "GreenGoblin",
|
|
"maxCount": 12,
|
|
"probability": 100
|
|
}
|
|
]
|
|
}
|
|
]
|