587 lines
19 KiB
JSON
587 lines
19 KiB
JSON
{
|
|
"schemaVersion": 2,
|
|
"dungeonId": "mystic-altar",
|
|
"sourceDungeonConfigId": "mystic_altar",
|
|
"zoneId": 104,
|
|
"expectedActiveRows": 398,
|
|
"expectedBossSpawns": 3,
|
|
"runtimeIdPrefix": "rw-mystic-altar",
|
|
"coordinateSystem": {
|
|
"metersPerSourceUnit": 0.1,
|
|
"directionUnitsPerTurn": 360,
|
|
"maximumProjectionDistance": 4
|
|
},
|
|
"files": {
|
|
"environmentRecipe": "scripts/runewaker-pipeline/recipes/mystic-altar.json",
|
|
"snapshot": "scripts/runewaker-pipeline/snapshots/mystic-altar-zone-104.json",
|
|
"generatedSource": "src/game/generated/mysticAltarPopulation.generated.ts",
|
|
"report": "src/assets/game/dungeons/mystic-altar/population-import-report.json",
|
|
"mechanicsReport": "src/assets/game/dungeons/mystic-altar/mechanics-audit.json",
|
|
"mechanicsSource": "src/game/generated/mysticAltarMechanics.generated.ts",
|
|
"environmentMetadata": "src/assets/game/dungeons/mystic-altar/import-metadata.json",
|
|
"navigation": "src/assets/game/dungeons/mystic-altar/mystic-altar-navigation.glb",
|
|
"actorManifest": "public/assets/creatures/mystic-altar/manifest.json",
|
|
"actorOutput": "public/assets/creatures/mystic-altar"
|
|
},
|
|
"source": {
|
|
"rootEnvironmentVariable": "RUNEWAKER_ROOT",
|
|
"relativeDefault": "../rom-pvt-server-backups/Runewaker",
|
|
"resourceRoot": "Resource",
|
|
"dungeonConfig": "Tools/dungeon_config.json",
|
|
"dungeonConfigId": "mystic_altar",
|
|
"luaRoot": "Resource/luascript",
|
|
"catalogs": [
|
|
"Resource/data/npcobject.db",
|
|
"Resource/data/imageobject.db",
|
|
"Resource/data/string_enus.db"
|
|
],
|
|
"backups": {
|
|
"global": "../rom-pvt-server-backups/OneForAll/SQL/databases/ROM_Global.bak",
|
|
"objects": "../rom-pvt-server-backups/OneForAll/SQL/databases/ObjectEdit.bak"
|
|
},
|
|
"serverEnvironmentVariable": "RUNEWAKER_SQL_SERVER",
|
|
"serverDefault": ".\\HEALERMAN_RW"
|
|
},
|
|
"actors": [
|
|
{
|
|
"id": "ankaria-red",
|
|
"sourceModel": "model/character/creature/ankaria/act_ankaria_red.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "armored-skeleton",
|
|
"sourceModel": "model/character/creature/armored_skeleton/act_armored_skeleton.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "carrion-fiend",
|
|
"sourceModel": "model/character/creature/makhaz_beast/act_carrion_fiend.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "ghastly-bat-3",
|
|
"sourceModel": "model/character/creature/ghastly_bat/act_ghastly_bat_3.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "hm-male",
|
|
"sourceModel": "model/character/pc/human/male/act_hm_male.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "human-mage",
|
|
"sourceModel": "model/character/creature/human_mage/act_human_mage.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "milk-scarab-black",
|
|
"sourceModel": "model/character/creature/milk_scarab/act_milk_scarab_black.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "minotaur-chief",
|
|
"sourceModel": "model/character/creature/minotaur/act_minotaur_chief.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "nightmare-purpureal",
|
|
"sourceModel": "model/character/creature/nightmare/act_nightmare_purpureal.ros",
|
|
"runtimeRotationY": 0
|
|
},
|
|
{
|
|
"id": "scorpion-green02",
|
|
"sourceModel": "model/character/creature/scorpion/act_scorpion_green02.ros",
|
|
"runtimeRotationY": 0
|
|
}
|
|
],
|
|
"templates": [
|
|
{
|
|
"primaryColor": "hsl(206 22% 38%)",
|
|
"accentColor": "hsl(234 38% 64%)",
|
|
"id": 100138,
|
|
"name": "Cursed lron Golem",
|
|
"level": 41,
|
|
"classification": "boss",
|
|
"archetype": "humanoid",
|
|
"actor": "armored-skeleton",
|
|
"title": "Cursed lron Golem",
|
|
"source": {
|
|
"imageId": 570023,
|
|
"modelPath": "model/character/creature/armored_skeleton/act_armored_skeleton.ros",
|
|
"classificationRule": "NPCObjectDB.sex=3"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(238 22% 38%)",
|
|
"accentColor": "hsl(266 38% 64%)",
|
|
"id": 100154,
|
|
"name": "Razeela",
|
|
"level": 42,
|
|
"classification": "boss",
|
|
"archetype": "humanoid",
|
|
"actor": "ankaria-red",
|
|
"title": "Razeela",
|
|
"source": {
|
|
"imageId": 572720,
|
|
"modelPath": "model/character/creature/ankaria/act_ankaria_red.ros",
|
|
"classificationRule": "NPCObjectDB.sex=3"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(28 22% 38%)",
|
|
"accentColor": "hsl(56 38% 64%)",
|
|
"id": 100364,
|
|
"name": "Minotaur Ghoul",
|
|
"level": 40,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "minotaur-chief",
|
|
"source": {
|
|
"imageId": 573883,
|
|
"modelPath": "model/character/creature/minotaur/act_minotaur_chief.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(241 22% 38%)",
|
|
"accentColor": "hsl(269 38% 64%)",
|
|
"id": 100583,
|
|
"name": "Mana Bat",
|
|
"level": 40,
|
|
"classification": "combat",
|
|
"archetype": "winged",
|
|
"actor": "ghastly-bat-3",
|
|
"source": {
|
|
"imageId": 572908,
|
|
"modelPath": "model/character/creature/ghastly_bat/act_ghastly_bat_3.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(69 22% 38%)",
|
|
"accentColor": "hsl(97 38% 64%)",
|
|
"id": 100587,
|
|
"name": "Cracked Shell Scorpion",
|
|
"level": 38,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "scorpion-green02",
|
|
"source": {
|
|
"imageId": 572918,
|
|
"modelPath": "model/character/creature/scorpion/act_scorpion_green02.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(38 22% 38%)",
|
|
"accentColor": "hsl(66 38% 64%)",
|
|
"id": 100594,
|
|
"name": "Zurhidon Guard",
|
|
"level": 40,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "hm-male",
|
|
"source": {
|
|
"imageId": 572550,
|
|
"modelPath": "model/character/pc/human/male/act_hm_male.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(179 22% 38%)",
|
|
"accentColor": "hsl(207 38% 64%)",
|
|
"id": 100597,
|
|
"name": "Dark Beetle",
|
|
"level": 36,
|
|
"classification": "combat",
|
|
"archetype": "lizard",
|
|
"actor": "milk-scarab-black",
|
|
"source": {
|
|
"imageId": 573784,
|
|
"modelPath": "model/character/creature/milk_scarab/act_milk_scarab_black.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(242 22% 38%)",
|
|
"accentColor": "hsl(270 38% 64%)",
|
|
"id": 100606,
|
|
"name": "Zurhidon Soldier",
|
|
"level": 40,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "hm-male",
|
|
"source": {
|
|
"imageId": 572549,
|
|
"modelPath": "model/character/pc/human/male/act_hm_male.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(289 22% 38%)",
|
|
"accentColor": "hsl(317 38% 64%)",
|
|
"id": 100607,
|
|
"name": "Zurhidon Raider",
|
|
"level": 40,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "hm-male",
|
|
"source": {
|
|
"imageId": 572547,
|
|
"modelPath": "model/character/pc/human/male/act_hm_male.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(23 22% 38%)",
|
|
"accentColor": "hsl(51 38% 64%)",
|
|
"id": 100609,
|
|
"name": "Underworld Morcus Beast",
|
|
"level": 42,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "carrion-fiend",
|
|
"source": {
|
|
"imageId": 572630,
|
|
"modelPath": "model/character/creature/makhaz_beast/act_carrion_fiend.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(70 22% 38%)",
|
|
"accentColor": "hsl(98 38% 64%)",
|
|
"id": 100610,
|
|
"name": "Dream Eater",
|
|
"level": 40,
|
|
"classification": "combat",
|
|
"archetype": "humanoid",
|
|
"actor": "nightmare-purpureal",
|
|
"source": {
|
|
"imageId": 572975,
|
|
"modelPath": "model/character/creature/nightmare/act_nightmare_purpureal.ros",
|
|
"classificationRule": "positive native level plus static model/character ROS"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(117 22% 38%)",
|
|
"accentColor": "hsl(145 38% 64%)",
|
|
"id": 100611,
|
|
"name": "Dorlos",
|
|
"level": 43,
|
|
"classification": "boss",
|
|
"archetype": "humanoid",
|
|
"actor": "human-mage",
|
|
"title": "Dorlos",
|
|
"source": {
|
|
"imageId": 570148,
|
|
"modelPath": "model/character/creature/human_mage/act_human_mage.ros",
|
|
"classificationRule": "NPCObjectDB.sex=3"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(129 22% 38%)",
|
|
"accentColor": "hsl(157 38% 64%)",
|
|
"id": 110247,
|
|
"name": "Aukuda",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(176 22% 38%)",
|
|
"accentColor": "hsl(204 38% 64%)",
|
|
"id": 110248,
|
|
"name": "Stone Statue",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(223 22% 38%)",
|
|
"accentColor": "hsl(251 38% 64%)",
|
|
"id": 110249,
|
|
"name": "Ceremonial Water",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(270 22% 38%)",
|
|
"accentColor": "hsl(298 38% 64%)",
|
|
"id": 110250,
|
|
"name": "Brazier",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(37 22% 38%)",
|
|
"accentColor": "hsl(65 38% 64%)",
|
|
"id": 110291,
|
|
"name": "Template 110291",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(9 22% 38%)",
|
|
"accentColor": "hsl(37 38% 64%)",
|
|
"id": 110367,
|
|
"name": "Template 110367",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(262 22% 38%)",
|
|
"accentColor": "hsl(290 38% 64%)",
|
|
"id": 110426,
|
|
"name": "Template 110426",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(263 22% 38%)",
|
|
"accentColor": "hsl(291 38% 64%)",
|
|
"id": 110449,
|
|
"name": "Template 110449",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(310 22% 38%)",
|
|
"accentColor": "hsl(338 38% 64%)",
|
|
"id": 110450,
|
|
"name": "Guardian Team",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(206 22% 38%)",
|
|
"accentColor": "hsl(234 38% 64%)",
|
|
"id": 110578,
|
|
"name": "Template 110578",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(340 22% 38%)",
|
|
"accentColor": "hsl(8 38% 64%)",
|
|
"id": 110780,
|
|
"name": "Template 110780",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(27 22% 38%)",
|
|
"accentColor": "hsl(55 38% 64%)",
|
|
"id": 110781,
|
|
"name": "Template 110781",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(121 22% 38%)",
|
|
"accentColor": "hsl(149 38% 64%)",
|
|
"id": 110783,
|
|
"name": "Mystic Stone Table",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(355 22% 38%)",
|
|
"accentColor": "hsl(23 38% 64%)",
|
|
"id": 780005,
|
|
"name": "Template 780005",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(90 22% 38%)",
|
|
"accentColor": "hsl(118 38% 64%)",
|
|
"id": 780030,
|
|
"name": "Template 780030",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(295 22% 38%)",
|
|
"accentColor": "hsl(323 38% 64%)",
|
|
"id": 780065,
|
|
"name": "Template 780065",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(342 22% 38%)",
|
|
"accentColor": "hsl(10 38% 64%)",
|
|
"id": 780066,
|
|
"name": "Template 780066",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(170 22% 38%)",
|
|
"accentColor": "hsl(198 38% 64%)",
|
|
"id": 780070,
|
|
"name": "Template 780070",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(217 22% 38%)",
|
|
"accentColor": "hsl(245 38% 64%)",
|
|
"id": 780071,
|
|
"name": "Template 780071",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
},
|
|
{
|
|
"primaryColor": "hsl(264 22% 38%)",
|
|
"accentColor": "hsl(292 38% 64%)",
|
|
"id": 780072,
|
|
"name": "Template 780072",
|
|
"level": 0,
|
|
"classification": "deferred-object",
|
|
"archetype": "humanoid",
|
|
"reason": "Level-zero quest, trigger, prop, or noncombat NPC retained for a later interaction pass.",
|
|
"source": {
|
|
"imageId": 0,
|
|
"modelPath": null,
|
|
"classificationRule": "noncombat/dynamic-display source object"
|
|
}
|
|
}
|
|
],
|
|
"deferred": [
|
|
"Doors, summons, patrols, phases, interactables, and loot require reviewed mechanics mappings.",
|
|
"Direct GR2 actors and exact paperdoll appearances use recovered native animation when validated; explicit pose-only/proxy exceptions retain procedural presentation."
|
|
]
|
|
}
|