forked from phenom/healer-man
157 lines
8.9 KiB
JSON
157 lines
8.9 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": [[-38.418, 13.4, -41.764], [37.654, 14.5, -42.021]],
|
|
"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.702, -51.49], [31.13, 54.403, 49.51]],
|
|
"preparationGates": [[29.067, 50.702, -46.492], [29.137, 54.403, 44.924]],
|
|
"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.098, -73.96], [-5.08, 27.601, 57.28]],
|
|
"preparationGates": [[-8.302, 30.098, -68.974], [-5.032, 27.601, 52.28]],
|
|
"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.221, 25.65]],
|
|
"preparationGates": [[-9.252, 20.1, -59.173], [22.524, 20.221, 20.704]],
|
|
"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": [[-1.5, 26.8, 26], [0, 26.8, -25]],
|
|
"preparationGates": [[-3.413, 26.8, 21.381], [-3.536, 26.8, -21.464]],
|
|
"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.748, 14.12], [41.3, -21.647, -6.58]],
|
|
"preparationGates": [[-37.879, -21.748, 12.793], [40.407, -21.647, -1.66]],
|
|
"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": [-37, -32, -286], "max": [126, 20, -138] },
|
|
"teamSpawns": [[-35.043, -28.317, -204.435], [108.031, -28.317, -205.573]],
|
|
"preparationGates": [[-30.043, -28.317, -204.435], [103.031, -28.317, -205.573]],
|
|
"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.723, -0.449, 32.035], [55.023, -0.477, 7.123]],
|
|
"preparationGates": [[22.737, -0.449, 29.053], [50.916, -0.477, 9.975]],
|
|
"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."] }
|
|
}
|
|
]
|
|
}
|