ModernUO/Distribution/Data/Spawns/post-uoml/felucca/PrismOfLight.json
Kamron Batman 0d1fffd9fc
fix: Fixes spawners, adds convertpremiumspawners, exportspawners, and replaces with neruns distro (#751)
### Additions
* Adds `[exportspawners <relative json file path to distro>`
  * If no path is provided, it will be saved to the `Data\Spawns` folder with the current timestamp as the file name.
  * Supports global, facet, region, multi, and area
* Fixes client disconnect for bad spawner generation command.
* Moves spawner commands to their own folder.
* Adds GUIDs for spawners. This allows for easy replacement during import to reduce duplication.
* Allows exporting the name of the spawner.
* Fixes globbing when using [generatespawners
* Adds [convertpremiumspawners to convert Premium Spawners (from Neruns distro)

Possibly in .NET 6 serializing JSON will be more performant using JSON nodes.


### Screenshots
![Screen_Shot_2021-08-31_at_10 20 06_PM](https://user-images.githubusercontent.com/3953314/131618495-cf7e3ae5-58e5-4f86-9d3c-3cc49906d9fc.png)
![Screen_Shot_2021-08-31_at_10 21 08_PM](https://user-images.githubusercontent.com/3953314/131618502-c39cc368-2266-47a5-9b87-e5ffa108b875.png)
![Screen_Shot_2021-08-31_at_10 13 29_PM](https://user-images.githubusercontent.com/3953314/131618512-f9807f1b-76e4-4503-989d-42324798fbf5.png)
2021-09-03 21:52:44 -07:00

315 lines
8.4 KiB
JSON

[
{
"type": "Spawner",
"guid": "8872cf0e-67bf-4f65-a725-f8def8c75c5d",
"name": "Spawner (216)",
"location": [6553, 157, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 8,
"walkingRange": 8,
"entries": [{ "name": "CrystalLatticeSeeker", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "3fce7d80-0421-4277-9a7b-5d6cb01c3d35",
"name": "Spawner (216)",
"location": [6474, 74, -34],
"map": "Felucca",
"count": 2,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [
{ "name": "Rat", "maxCount": 1, "probability": 100 },
{ "name": "IceSnake", "maxCount": 1, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "4ca86001-8359-48f2-9a7d-7bb785a952b0",
"name": "Spawner (216)",
"location": [6552, 155, 0],
"map": "Felucca",
"count": 8,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 15,
"walkingRange": 15,
"entries": [
{ "name": "Wisp", "maxCount": 1, "probability": 100 },
{ "name": "CrystalWisp", "maxCount": 1, "probability": 100 },
{ "name": "TreasureChestLevel2", "maxCount": 1, "probability": 100 },
{ "name": "TreasureChestLevel2", "maxCount": 5, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "806c7449-8da1-48d1-b119-127d54f7413e",
"name": "Spawner (216)",
"location": [6521, 139, -20],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "Wisp", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "293d1837-280e-453e-b7b2-023f8b15950f",
"name": "Spawner (216)",
"location": [6530, 139, -20],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "Wisp", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "10f654d1-72ab-4206-993e-0418f75eb713",
"name": "Spawner (216)",
"location": [6576, 91, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "CrystalSeaSerpent", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "3d60b120-c93f-4f10-9de9-408280b8def9",
"name": "Spawner (216)",
"location": [6509, 176, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "UnfrozenMummy", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "c24aa368-e3bb-46b5-b69d-7876036eb47c",
"name": "Spawner (216)",
"location": [6536, 79, -10],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "CrystalDaemon", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "ccabfc24-e69f-436a-a1bb-8cfbd506a095",
"name": "Spawner (216)",
"location": [6547, 91, -10],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "CrystalDaemon", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "972074a4-5254-4b65-9692-f61cba341f47",
"name": "Spawner (216)",
"location": [6572, 89, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "CrystalHydra", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "e51d6f2d-988a-436c-bcd4-2238865d8fc1",
"name": "Spawner (216)",
"location": [6504, 181, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 1,
"walkingRange": 1,
"entries": [{ "name": "TreasureChestLevel4", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "08ed6078-32ff-4e40-9fde-8354e6f2fc50",
"name": "Spawner (216)",
"location": [6475, 101, -44],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 5,
"walkingRange": 5,
"entries": [{ "name": "ShadowWisp", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "3884e61d-9906-4076-9ab9-fd2f2b3a0c0f",
"name": "Spawner (216)",
"location": [6478, 174, 4],
"map": "Felucca",
"count": 2,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 10,
"walkingRange": 10,
"entries": [
{ "name": "Wisp", "maxCount": 1, "probability": 100 },
{ "name": "CrystalWisp", "maxCount": 1, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "29a1d641-e09c-4cb6-8a8d-cb7b1a6e353c",
"name": "Spawner (216)",
"location": [6566, 120, 0],
"map": "Felucca",
"count": 2,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 15,
"walkingRange": 15,
"entries": [
{ "name": "CrystalVortex", "maxCount": 1, "probability": 100 },
{ "name": "IceElemental", "maxCount": 1, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "acd328d4-0d2a-47b2-a5ad-029b261c14bb",
"name": "Spawner (216)",
"location": [6534, 178, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "CrystalWisp", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "5adc8f02-83c2-4461-b1d5-aada5d63c611",
"name": "Spawner (216)",
"location": [6535, 179, 0],
"map": "Felucca",
"count": 8,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 15,
"walkingRange": 15,
"entries": [
{ "name": "CrystalWisp", "maxCount": 1, "probability": 100 },
{ "name": "CrystalLatticeSeeker", "maxCount": 1, "probability": 100 },
{ "name": "TreasureChestLevel2", "maxCount": 1, "probability": 100 },
{ "name": "TreasureChestLevel2", "maxCount": 5, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "1a70a321-4723-412e-9de3-3d3a805e7cfe",
"name": "Spawner (216)",
"location": [6502, 120, -10],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 0,
"walkingRange": 0,
"entries": [{ "name": "TreasureChestLevel3", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "7833c162-8161-46db-93df-ec015893cc0a",
"name": "Spawner (216)",
"location": [6507, 151, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 5,
"walkingRange": 5,
"entries": [{ "name": "Protector", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "ad094566-a069-42af-adf8-301ea95cae98",
"name": "Spawner (216)",
"location": [6532, 79, -10],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [{ "name": "CrystalDaemon", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "ca866383-291e-44d3-bad9-d8c7dfaf8cd7",
"name": "Spawner (216)",
"location": [6578, 183, 31],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 5,
"walkingRange": 5,
"entries": [{ "name": "Ferret", "maxCount": 1, "probability": 100 }]
},
{
"type": "Spawner",
"guid": "1f84efa2-5111-4c5c-8535-a056565caf49",
"name": "Spawner (216)",
"location": [6510, 171, 0],
"map": "Felucca",
"count": 1,
"minDelay": "00:05:00",
"maxDelay": "00:10:00",
"team": 0,
"homeRange": 8,
"walkingRange": 8,
"entries": [{ "name": "Protector", "maxCount": 1, "probability": 100 }]
}
]