pokemonDungeon
Description
Marks the zone as a structured Pokémon dungeon. Defines dungeon properties like boss encounter, minion spawning, and loot chest distribution.
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | String | Yes | Unique identifier or display name of the dungeon. |
boss.id | String | Yes | The unique ID for the boss instance. |
boss.position.x | Number | Yes | X coordinate for the boss spawn point. |
boss.position.y | Number | Yes | Y coordinate for the boss spawn point. |
boss.position.z | Number | Yes | Z coordinate for the boss spawn point. |
boss.position.heading | Number | Yes | Heading for boss spawn orientation. |
boss.data | Object | Yes | Standard Pokémon object definition for the boss (name, level, IVs, EVs, etc). |
boss.against | Number | Yes | Maximum number of players or trainers that the boss should face. |
minions.count | Number | No | Total number of minions to spawn in the dungeon. |
minions.data[].name | String | Yes | Species name of the minion Pokémon. |
minions.data[].level.min | Number | Yes | Minimum level for the minion spawn. |
minions.data[].level.max | Number | Yes | Maximum level for the minion spawn. |
minions.data[].probability | Number | Yes | Probability (0.0 - 1.0) that this minion appears. |
minions.position[].x | Number | Yes | X coordinate for a minion spawn position. |
minions.position[].y | Number | Yes | Y coordinate for a minion spawn position. |
minions.position[].z | Number | Yes | Z coordinate for a minion spawn position. |
minions.position[].heading | Number | Yes | Heading for the minion at spawn. |
chests.count | Number | Yes | Number of loot chests to spawn in the dungeon. |
chests.content.min | Number | Yes | Minimum number of items in a chest. |
chests.content.max | Number | Yes | Maximum number of items in a chest. |
chests.item[].name | String | Yes | Item name or ID. |
chests.item[].probability | Number | Yes | Spawn probability for the item (0.0 - 1.0). |
chests.item[].min | Number | Yes | Minimum quantity (optional, for static stack sizes). |
chests.item[].quantity.min | Number | Yes | Minimum quantity (for dynamic stack sizes). |
chests.item[].quantity.max | Number | Yes | Maximum quantity (for dynamic stack sizes). |
chests.position[].x | Number | Yes | X coordinate for a chest position. |
chests.position[].y | Number | Yes | Y coordinate for a chest position. |
chests.position[].z | Number | Yes | Z coordinate for a chest position. |
chests.position[].heading | Number | Yes | Heading for the chest at spawn. |
Example
"pokemonDungeon": {
"name": "cave",
"boss": {
"id": "cave_boss",
"position": {
"x": 498.75,
"y": 5640.59,
"z": 394.80,
"heading": 48.18
},
"data": {
"name": "steelix",
"level": 25,
"IV": { "HP": 31, "ATK": 31, "DEF": 31, "SPA": 31, "SPD": 31, "SPE": 31 },
"EV": { "HP": 255, "SPA": 255 }
},
"against": 2
},
"minions": {
"count": 14,
"datas": [
{ "name": "geodude", "level": { "min": 10, "max": 15 }, "probability": 0.4 },
{ "name": "diglett", "level": { "min": 15, "max": 20 }, "probability": 0.1 },
{ "name": "zubat", "level": { "min": 10, "max": 15 }, "probability": 0.4 }
],
"positions": [ { "x": 496.49, "y": 5477.65, "z": 394.80, "heading": 124.72 }, ... ]
},
"chests": {
"count": 10,
"content": { "min": 3, "max": 5 },
"items": [
{ "name": "poke_ball", "probability": 0.5 },
{ "name": "money", "quantity": { "min": 10, "max": 100 }, "probability": 0.25 },
{ "name": "shinyfier_recipe", "probability": 0.05 }
],
"positions": [ { "x": 496.49, "y": 5477.65, "z": 394.80, "heading": 124.72 }, ... ]
}
}