Scholomance: revert to single-floor Atlas map

The 4-floor upreza experiment placed bosses on Cata-redesign rooms which don't match Ascension's classic boss spawns. Going back to commit 58b3f74's single-floor approach: Real-ESRGAN-upscaled Atlas BLP (2048x2048) with 14 hand-pinned bosses.

The 'floors' schema added to dungeon_replacements stays in tools/kg_build_data.py — useful if a future high-quality classic-layout multi-floor map shows up.
This commit is contained in:
2026-04-26 01:02:43 +02:00
parent 247633546a
commit c2ae7a7218
2 changed files with 126 additions and 190 deletions
+19 -47
View File
@@ -4,55 +4,27 @@
"_dungeon_replacements_comment": "When the kg map is the wrong layout for Ascension (e.g. retail/Cata layout vs classic), replace the entire dungeon's map with one we author manually. Coords are in the new map's pixel space (0..width, 0..height). Bosses come from AtlasLoot's per-dungeon entries with cords.",
"dungeon_replacements": {
"scholomance": {
"image": "maps/scholomance.webp",
"width": 2048,
"height": 2048,
"label": "Scholomance",
"note": "Multi-floor upreza maps (4096x3072) for the Cata-tier'd visual layout; classic boss assignments hand-pinned to specific rooms within each floor. Same look-and-feel as the rest of the dungeons in the picker.",
"floors": [
{
"kg_floor_id": 223,
"image": "maps/scholomance_floor1.webp",
"width": 4096, "height": 3072,
"label": "The Reliquary",
"note": "kg + upreza both ship the post-Cata 4-floor redesign; Ascension uses the original classic single-room layout. Map is the Atlas-addon Scholomance.blp (512x512) upscaled to 2048x2048 with Real-ESRGAN x4plus. Boss positions are hand-pinned to the numbered rooms drawn on the Atlas map.",
"_room_position_comment": "Room centers read off the upscaled Atlas map (2048x2048). Numbers refer to the Atlas-addon room numbers visible on the map texture. If a boss is rendered in the wrong room, edit the pos here.",
"bosses": [
{"name": "Blood Steward of Kirtonos", "pos": [2400, 1600], "cls": 3}
]
},
{
"kg_floor_id": 224,
"image": "maps/scholomance_floor2.webp",
"width": 4096, "height": 3072,
"label": "Chamber of Summoning",
"bosses": [
{"name": "Kirtonos the Herald (Summon)", "pos": [1850, 600], "cls": 3},
{"name": "Vectus", "pos": [2400, 400], "cls": 3},
{"name": "Marduk Blackpool", "pos": [1300, 1100], "cls": 3}
]
},
{
"kg_floor_id": 225,
"image": "maps/scholomance_floor3.webp",
"width": 4096, "height": 3072,
"label": "The Upper Study",
"bosses": [
{"name": "Jandice Barov", "pos": [1850, 700], "cls": 3},
{"name": "Rattlegore", "pos": [700, 800], "cls": 3},
{"name": "Lorekeeper Polkelt", "pos": [3200, 800], "cls": 3},
{"name": "Doctor Theolen Krastinov", "pos": [1850, 1700], "cls": 3},
{"name": "Instructor Malicia", "pos": [1850, 2250], "cls": 3}
]
},
{
"kg_floor_id": 226,
"image": "maps/scholomance_floor4.webp",
"width": 4096, "height": 3072,
"label": "Headmaster's Study",
"bosses": [
{"name": "Lady Illucia Barov", "pos": [800, 850], "cls": 3},
{"name": "Lord Alexei Barov", "pos": [2950, 850], "cls": 3},
{"name": "The Ravenian", "pos": [1850, 1600], "cls": 3},
{"name": "Ras Frostwhisper", "pos": [1850, 2100], "cls": 3},
{"name": "Darkmaster Gandling","pos": [1850, 850], "cls": 4}
]
}
{"name": "Blood Steward of Kirtonos", "pos": [1046, 637], "cls": 3, "room": 1},
{"name": "Kirtonos the Herald", "pos": [555, 264], "cls": 3, "room": 2},
{"name": "Vectus", "pos": [327, 746], "cls": 3, "room": 4},
{"name": "Marduk Blackpool", "pos": [391, 928], "cls": 3, "room": 5},
{"name": "Rattlegore", "pos": [564, 974], "cls": 3, "room": 6},
{"name": "Lorekeeper Polkelt", "pos": [928, 1174], "cls": 3, "room": 10},
{"name": "Doctor Theolen Krastinov", "pos": [1328, 1456], "cls": 3, "room": 9},
{"name": "Ras Frostwhisper", "pos": [937, 1729], "cls": 3, "room": 8},
{"name": "Lord Alexei Barov", "pos": [1483, 1702], "cls": 3, "room": 11},
{"name": "Lady Illucia Barov", "pos": [1856, 1456], "cls": 3, "room": 12},
{"name": "The Ravenian", "pos": [1502, 1092], "cls": 3, "room": 13},
{"name": "Jandice Barov", "pos": [1665, 355], "cls": 3, "room": 3},
{"name": "Instructor Malicia", "pos": [391, 1401], "cls": 3, "room": 7},
{"name": "Darkmaster Gandling", "pos": [1529, 1456], "cls": 4, "room": 14}
]
}
},
+105 -141
View File
@@ -123454,19 +123454,19 @@
"mapping_id": 219,
"maps": [
{
"image": "maps/scholomance_floor1.webp",
"width": 4096,
"height": 3072,
"label": "The Reliquary",
"kg_floor_id": 223,
"image": "maps/scholomance.webp",
"width": 2048,
"height": 2048,
"label": "Scholomance",
"kg_floor_id": null,
"enemies": [
{
"id": null,
"npc_id": null,
"name": "Blood Steward of Kirtonos",
"pos": [
2400,
1600
1046,
637
],
"classification": 3,
"skippable": false,
@@ -123475,26 +123475,14 @@
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
}
],
"packs": [],
"patrols": [],
"icons": []
},
{
"image": "maps/scholomance_floor2.webp",
"width": 4096,
"height": 3072,
"label": "Chamber of Summoning",
"kg_floor_id": 224,
"enemies": [
{
"id": null,
"npc_id": null,
"name": "Kirtonos the Herald (Summon)",
"name": "Kirtonos the Herald",
"pos": [
1850,
600
555,
264
],
"classification": 3,
"skippable": false,
@@ -123509,8 +123497,8 @@
"npc_id": null,
"name": "Vectus",
"pos": [
2400,
400
327,
746
],
"classification": 3,
"skippable": false,
@@ -123525,36 +123513,8 @@
"npc_id": null,
"name": "Marduk Blackpool",
"pos": [
1300,
1100
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
}
],
"packs": [],
"patrols": [],
"icons": []
},
{
"image": "maps/scholomance_floor3.webp",
"width": 4096,
"height": 3072,
"label": "The Upper Study",
"kg_floor_id": 225,
"enemies": [
{
"id": null,
"npc_id": null,
"name": "Jandice Barov",
"pos": [
1850,
700
391,
928
],
"classification": 3,
"skippable": false,
@@ -123569,8 +123529,8 @@
"npc_id": null,
"name": "Rattlegore",
"pos": [
700,
800
564,
974
],
"classification": 3,
"skippable": false,
@@ -123585,8 +123545,8 @@
"npc_id": null,
"name": "Lorekeeper Polkelt",
"pos": [
3200,
800
928,
1174
],
"classification": 3,
"skippable": false,
@@ -123601,84 +123561,8 @@
"npc_id": null,
"name": "Doctor Theolen Krastinov",
"pos": [
1850,
1700
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "Instructor Malicia",
"pos": [
1850,
2250
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
}
],
"packs": [],
"patrols": [],
"icons": []
},
{
"image": "maps/scholomance_floor4.webp",
"width": 4096,
"height": 3072,
"label": "Headmaster's Study",
"kg_floor_id": 226,
"enemies": [
{
"id": null,
"npc_id": null,
"name": "Lady Illucia Barov",
"pos": [
800,
850
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "Lord Alexei Barov",
"pos": [
2950,
850
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "The Ravenian",
"pos": [
1850,
1600
1328,
1456
],
"classification": 3,
"skippable": false,
@@ -123693,8 +123577,88 @@
"npc_id": null,
"name": "Ras Frostwhisper",
"pos": [
1850,
2100
937,
1729
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "Lord Alexei Barov",
"pos": [
1483,
1702
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "Lady Illucia Barov",
"pos": [
1856,
1456
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "The Ravenian",
"pos": [
1502,
1092
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "Jandice Barov",
"pos": [
1665,
355
],
"classification": 3,
"skippable": false,
"required": false,
"kill_priority": null,
"pack_id": null,
"patrol_id": null,
"ascension_pinned": true
},
{
"id": null,
"npc_id": null,
"name": "Instructor Malicia",
"pos": [
391,
1401
],
"classification": 3,
"skippable": false,
@@ -123709,8 +123673,8 @@
"npc_id": null,
"name": "Darkmaster Gandling",
"pos": [
1850,
850
1529,
1456
],
"classification": 4,
"skippable": false,
@@ -123727,7 +123691,7 @@
}
],
"ascension_replaced": true,
"replacement_note": "Multi-floor upreza maps (4096x3072) for the Cata-tier'd visual layout; classic boss assignments hand-pinned to specific rooms within each floor. Same look-and-feel as the rest of the dungeons in the picker."
"replacement_note": "kg + upreza both ship the post-Cata 4-floor redesign; Ascension uses the original classic single-room layout. Map is the Atlas-addon Scholomance.blp (512x512) upscaled to 2048x2048 with Real-ESRGAN x4plus. Boss positions are hand-pinned to the numbered rooms drawn on the Atlas map."
},
{
"id": "shadowfang_keep",