Files
healer-man/shared/arena-stages.json
T
2026-09-05 20:42:38 -04:00

157 lines
8.8 KiB
JSON

{
"schemaVersion": 1,
"stages": [
{
"id": "nagrand-arena",
"name": "Nagrand Arena",
"sourceMap": "PVPZone01",
"mapId": 559,
"assetBaseUrl": "/assets/game/arenas/nagrand-arena",
"bounds": { "min": [-75, 8, -60], "max": [75, 26, 50] },
"teamSpawns": [[-43.41, 13.4, -42.04], [42.03, 14.5, -44.44]],
"preparationGates": [[-35, 14, -38], [34, 15, -40]],
"spectatorPositions": [[0, 35, 42], [0, 35, -54]],
"shadowSight": [[0, 14, 18], [0, 14, -18]],
"lineOfSight": [
{ "id": "north-pillar", "shape": "cylinder", "position": [0, 14, -12], "size": [8.4, 12, 8.4] },
{ "id": "south-pillar", "shape": "cylinder", "position": [0, 14, 12], "size": [8.4, 12, 8.4] }
],
"dynamicObjects": [],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Original WMO converted; rated gameplay component and spawn anchors validated."] }
},
{
"id": "blades-edge-arena",
"name": "Blade's Edge Arena",
"sourceMap": "bladesedgearena",
"mapId": 562,
"assetBaseUrl": "/assets/game/arenas/blades-edge-arena",
"bounds": { "min": [-18, 27, -68], "max": [78, 83, 68] },
"teamSpawns": [[29.2, 50.7, -51.49], [31.13, 54.4, 49.51]],
"preparationGates": [[29, 51, -44], [31, 54, 42]],
"spectatorPositions": [[-10, 75, 0], [70, 75, 0]],
"shadowSight": [[10, 55, 0], [50, 55, 0]],
"lineOfSight": [
{ "id": "west-pillar", "shape": "box", "position": [20, 45, 0], "size": [6, 18, 6] },
{ "id": "east-pillar", "shape": "box", "position": [45, 45, 0], "size": [6, 18, 6] }
],
"dynamicObjects": [],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Original WMO converted; rated bridge component and spawn anchors validated."] }
},
{
"id": "ruins-of-lordaeron",
"name": "Ruins of Lordaeron",
"sourceMap": "PVPLordaeron",
"mapId": 572,
"assetBaseUrl": "/assets/game/arenas/ruins-of-lordaeron",
"bounds": { "min": [-62, 26, -108], "max": [54, 37, 78] },
"teamSpawns": [[-8.68, 30.1, -73.96], [-5.08, 27.6, 57.28]],
"preparationGates": [[-8, 30, -65], [-5, 28, 49]],
"spectatorPositions": [[48, 45, -15], [-55, 45, -15]],
"shadowSight": [[18, 29, -15], [-26, 29, -15]],
"lineOfSight": [
{ "id": "central-tomb", "shape": "box", "position": [-4, 28, -15], "size": [12, 9, 14] }
],
"dynamicObjects": [],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Original WMO converted; rated courtyard component and spawn anchors validated."] }
},
{
"id": "dalaran-sewers",
"name": "Dalaran Sewers",
"sourceMap": "DalaranArena",
"mapId": 617,
"assetBaseUrl": "/assets/game/arenas/dalaran-sewers",
"bounds": { "min": [-52, 0, -68], "max": [52, 32, 40] },
"teamSpawns": [[-12.41, 20.1, -63.05], [21.79, 20.2, 25.15]],
"preparationGates": [[-10, 20, -55], [20, 20, 18]],
"spectatorPositions": [[-45, 31, -14], [45, 31, -14]],
"shadowSight": [[-18, 20, -14], [18, 20, -14]],
"lineOfSight": [
{ "id": "central-waterfall", "shape": "box", "position": [19, 18, -9], "size": [6, 12, 4], "dynamicObjectId": "waterfall" }
],
"dynamicObjects": [
{ "id": "pipes", "kind": "pipe-knockback", "initialDelayMs": 5000, "warningMs": 3000, "activeMs": 1500, "cycleMs": 0 },
{ "id": "waterfall", "kind": "waterfall", "initialDelayRangeMs": [30000, 60000], "warningMs": 5000, "activeMs": 30000, "cycleMs": 30000 }
],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Original WMO and connected gameplay navmesh validated with pipe and waterfall cycles."] }
},
{
"id": "ring-of-valor",
"name": "Ring of Valor",
"sourceMap": "OrgrimmarArena",
"mapId": 618,
"assetBaseUrl": "/assets/game/arenas/ring-of-valor",
"bounds": { "min": [-58, 20, -40], "max": [58, 45, 42] },
"teamSpawns": [[0, 27, 25], [0, 27, -25]],
"preparationGates": [[0, 27, 20], [0, 27, -20]],
"spectatorPositions": [[-52, 50, 0], [52, 50, 0]],
"shadowSight": [[-25, 27, 0], [25, 27, 0]],
"lineOfSight": [
{ "id": "north-pillar", "shape": "box", "position": [0.8, 24, -23.3], "size": [9, 9, 9], "dynamicObjectId": "pillars-north" },
{ "id": "south-pillar", "shape": "box", "position": [0.8, 24, 21], "size": [9, 9, 9], "dynamicObjectId": "pillars-north" },
{ "id": "west-pillar", "shape": "box", "position": [-37.8, 23, -1.7], "size": [9, 9, 9], "dynamicObjectId": "pillars-south" },
{ "id": "east-pillar", "shape": "box", "position": [40.8, 23, -1.7], "size": [9, 9, 9], "dynamicObjectId": "pillars-south" }
],
"dynamicObjects": [
{ "id": "elevators", "kind": "starting-elevators", "initialDelayMs": 20500, "warningMs": 0, "activeMs": 1500, "cycleMs": 0 },
{ "id": "fire", "kind": "fire-cycle", "initialDelayMs": 5000, "warningMs": 0, "activeMs": 20000, "cycleMs": 25000 },
{ "id": "pillars-north", "kind": "moving-pillars", "initialDelayMs": 25000, "warningMs": 0, "activeMs": 25000, "cycleMs": 50000 },
{ "id": "pillars-south", "kind": "moving-pillars", "initialDelayMs": 50000, "warningMs": 0, "activeMs": 25000, "cycleMs": 50000 }
],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Original WMO and connected floor navmesh validated with elevator, fire, and alternating pillar cycles."] }
},
{
"id": "warnorken-arena",
"name": "Warnorken Arena",
"sourceMap": "warnorken_arena",
"mapId": 129,
"assetBaseUrl": "/assets/game/arenas/warnorken-arena",
"bounds": { "min": [-47, -24, -47], "max": [47, 25, 47] },
"teamSpawns": [[-42.7, -21.75, 14.12], [41.3, -21.65, -6.58]],
"preparationGates": [[-35, -21.5, 12], [34, -21.5, -5]],
"spectatorPositions": [[0, 19, 42], [0, 19, -42]],
"shadowSight": [[0, -21.5, 20], [0, -21.5, -20]],
"lineOfSight": [
{ "id": "central-columns", "shape": "box", "position": [0, -21.5, 0], "size": [8, 10, 8] }
],
"dynamicObjects": [],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Validated Runewaker package; arena-specific spawn and LOS anchors registered."] }
},
{
"id": "black-rook-hold-arena",
"name": "Black Rook Hold Arena",
"sourceMap": "BlackrookHoldArena",
"mapId": 1784,
"assetBaseUrl": "/assets/game/arenas/black-rook-hold-arena",
"bounds": { "min": [-72, -8, -228], "max": [130, 28, -128] },
"teamSpawns": [[-66.098564, 8.416428, -201.852448], [123.158585, 9.916428, -219.909592]],
"preparationGates": [[-42, 8.4, -201], [98, 9.9, -218]],
"spectatorPositions": [[25, 25, -150], [25, 25, -224]],
"shadowSight": [[15, 9, -181], [15, 9, -215]],
"lineOfSight": [
{ "id": "west-ruin", "shape": "box", "position": [-5, 9, -188], "size": [10, 12, 7] },
{ "id": "east-ruin", "shape": "box", "position": [46, 9, -208], "size": [10, 12, 7] }
],
"dynamicObjects": [],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["Micro01 and PlatformTest restored; rated component extracted from the source navigation package."] }
},
{
"id": "ashamanes-fall",
"name": "Ashamane's Fall",
"sourceMap": "valsharaharena",
"mapId": 1785,
"assetBaseUrl": "/assets/game/arenas/ashamanes-fall",
"bounds": { "min": [14, -4, 2], "max": [58, 16, 36] },
"teamSpawns": [[18.223099, -0.480263, 32.034554], [55.023094, -0.480263, 7.123436]],
"preparationGates": [[25, -0.5, 27], [48, -0.5, 12]],
"spectatorPositions": [[20, 13, 6], [55, 13, 33]],
"shadowSight": [[29, -0.5, 13], [45, -0.5, 27]],
"lineOfSight": [
{ "id": "north-tree", "shape": "cylinder", "position": [31, -1, 24], "size": [3.5, 10, 3.5] },
{ "id": "south-tree", "shape": "cylinder", "position": [44, -1, 15], "size": [3.5, 10, 3.5] }
],
"dynamicObjects": [],
"validation": { "status": "validated", "traversal": true, "collision": true, "spawnSafety": true, "lineOfSight": true, "performance": true, "notes": ["All sixteen ADT WMO placements restored; rated gameplay component rebuilt and extracted."] }
}
]
}