diff options
31 files changed, 669 insertions, 26 deletions
| diff --git a/apworld/client/manager.gd b/apworld/client/manager.gd index 91797b2..41ab648 100644 --- a/apworld/client/manager.gd +++ b/apworld/client/manager.gd | |||
| @@ -64,6 +64,7 @@ var apworld_version = [0, 0, 0] | |||
| 64 | var cyan_door_behavior = kCYAN_DOOR_BEHAVIOR_H2 | 64 | var cyan_door_behavior = kCYAN_DOOR_BEHAVIOR_H2 |
| 65 | var daedalus_roof_access = false | 65 | var daedalus_roof_access = false |
| 66 | var enable_gift_maps = [] | 66 | var enable_gift_maps = [] |
| 67 | var enable_icarus = false | ||
| 67 | var keyholder_sanity = false | 68 | var keyholder_sanity = false |
| 68 | var port_pairings = {} | 69 | var port_pairings = {} |
| 69 | var shuffle_control_center_colors = false | 70 | var shuffle_control_center_colors = false |
| @@ -441,6 +442,7 @@ func _client_connected(slot_data): | |||
| 441 | cyan_door_behavior = int(slot_data.get("cyan_door_behavior", 0)) | 442 | cyan_door_behavior = int(slot_data.get("cyan_door_behavior", 0)) |
| 442 | daedalus_roof_access = bool(slot_data.get("daedalus_roof_access", false)) | 443 | daedalus_roof_access = bool(slot_data.get("daedalus_roof_access", false)) |
| 443 | enable_gift_maps = slot_data.get("enable_gift_maps", []) | 444 | enable_gift_maps = slot_data.get("enable_gift_maps", []) |
| 445 | enable_icarus = bool(slot_data.get("enable_icarus", false)) | ||
| 444 | keyholder_sanity = bool(slot_data.get("keyholder_sanity", false)) | 446 | keyholder_sanity = bool(slot_data.get("keyholder_sanity", false)) |
| 445 | shuffle_control_center_colors = bool(slot_data.get("shuffle_control_center_colors", false)) | 447 | shuffle_control_center_colors = bool(slot_data.get("shuffle_control_center_colors", false)) |
| 446 | shuffle_doors = bool(slot_data.get("shuffle_doors", false)) | 448 | shuffle_doors = bool(slot_data.get("shuffle_doors", false)) |
| diff --git a/apworld/client/player.gd b/apworld/client/player.gd index 3858e53..8aee21a 100644 --- a/apworld/client/player.gd +++ b/apworld/client/player.gd | |||
| @@ -113,6 +113,34 @@ func _ready(): | |||
| 113 | icely_wpl.senders.append(NodePath("../IcelyPanel")) | 113 | icely_wpl.senders.append(NodePath("../IcelyPanel")) |
| 114 | giftmap_parent.add_child.call_deferred(icely_wpl) | 114 | giftmap_parent.add_child.call_deferred(icely_wpl) |
| 115 | 115 | ||
| 116 | if ap.enable_gift_maps.has("The Charismatic"): | ||
| 117 | var souvey_panel = panel_prefab.instantiate() | ||
| 118 | souvey_panel.name = "SouveyPanel" | ||
| 119 | souvey_panel.answer = "souvey" | ||
| 120 | souvey_panel.position = Vector3(33.5, -210, 5.5) | ||
| 121 | giftmap_panel.proxies.append(NodePath("../SouveyPanel")) | ||
| 122 | giftmap_parent.add_child.call_deferred(souvey_panel) | ||
| 123 | |||
| 124 | var souvey_wpl = wpl_prefab.instantiate() | ||
| 125 | souvey_wpl.name = "SouveyWpl" | ||
| 126 | souvey_wpl.exit = "the_charismatic" | ||
| 127 | souvey_wpl.senders.append(NodePath("../SouveyPanel")) | ||
| 128 | giftmap_parent.add_child.call_deferred(souvey_wpl) | ||
| 129 | |||
| 130 | if ap.enable_gift_maps.has("The Crystalline"): | ||
| 131 | var q_panel = panel_prefab.instantiate() | ||
| 132 | q_panel.name = "QPanel" | ||
| 133 | q_panel.answer = "q" | ||
| 134 | q_panel.position = Vector3(33.5, -220, 5.5) | ||
| 135 | giftmap_panel.proxies.append(NodePath("../QPanel")) | ||
| 136 | giftmap_parent.add_child.call_deferred(q_panel) | ||
| 137 | |||
| 138 | var q_wpl = wpl_prefab.instantiate() | ||
| 139 | q_wpl.name = "QWpl" | ||
| 140 | q_wpl.exit = "the_crystalline" | ||
| 141 | q_wpl.senders.append(NodePath("../QPanel")) | ||
| 142 | giftmap_parent.add_child.call_deferred(q_wpl) | ||
| 143 | |||
| 116 | giftmap_parent.add_child.call_deferred(giftmap_panel) | 144 | giftmap_parent.add_child.call_deferred(giftmap_panel) |
| 117 | 145 | ||
| 118 | var giftmap_tpl = tpl_prefab.instantiate() | 146 | var giftmap_tpl = tpl_prefab.instantiate() |
| @@ -233,6 +261,34 @@ func _ready(): | |||
| 233 | var rte_trigger = get_node("/root/scene/Components/Warps/triggerArea") | 261 | var rte_trigger = get_node("/root/scene/Components/Warps/triggerArea") |
| 234 | rte_trigger.position.z = 0 | 262 | rte_trigger.position.z = 0 |
| 235 | 263 | ||
| 264 | # Add the mastery to Icarus. | ||
| 265 | if global.map == "icarus" and ap.enable_icarus: | ||
| 266 | var collectable_prefab = preload("res://objects/nodes/collectable.tscn") | ||
| 267 | var saver_prefab = preload("res://objects/nodes/saver.tscn") | ||
| 268 | var tpl_prefab = preload("res://objects/nodes/listeners/teleportListener.tscn") | ||
| 269 | |||
| 270 | var mastery = collectable_prefab.instantiate() | ||
| 271 | mastery.name = "collectable" | ||
| 272 | mastery.position = Vector3(0, -2000, 0) | ||
| 273 | mastery.unlock_type = "smiley" | ||
| 274 | mastery.material_override = load("res://assets/materials/gold.material") | ||
| 275 | get_node("/root/scene/Components/Collectables").add_child.call_deferred(mastery) | ||
| 276 | |||
| 277 | var tpl = tpl_prefab.instantiate() | ||
| 278 | tpl.teleport_point = Vector3(56.25, 0, -5.5) | ||
| 279 | tpl.teleport_rotate = Vector3(0, 0, 0) | ||
| 280 | tpl.target_path = mastery | ||
| 281 | tpl.name = "Teleport" | ||
| 282 | tpl.senderGroup.append(NodePath("/root/scene/Panels")) | ||
| 283 | tpl.nested = true | ||
| 284 | mastery.add_child.call_deferred(tpl) | ||
| 285 | |||
| 286 | var saver = saver_prefab.instantiate() | ||
| 287 | saver.name = "saver_collectables" | ||
| 288 | saver.type = "collectables" | ||
| 289 | saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) | ||
| 290 | get_node("/root/scene").add_child.call_deferred(saver) | ||
| 291 | |||
| 236 | # Add the mastery to The Advanced. | 292 | # Add the mastery to The Advanced. |
| 237 | if global.map == "the_advanced": | 293 | if global.map == "the_advanced": |
| 238 | var collectable_prefab = preload("res://objects/nodes/collectable.tscn") | 294 | var collectable_prefab = preload("res://objects/nodes/collectable.tscn") |
| @@ -262,6 +318,52 @@ func _ready(): | |||
| 262 | saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) | 318 | saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) |
| 263 | get_node("/root/scene").add_child.call_deferred(saver) | 319 | get_node("/root/scene").add_child.call_deferred(saver) |
| 264 | 320 | ||
| 321 | # Add the mastery to The Charismatic. | ||
| 322 | if global.map == "the_charismatic": | ||
| 323 | var collectable_prefab = preload("res://objects/nodes/collectable.tscn") | ||
| 324 | var saver_prefab = preload("res://objects/nodes/saver.tscn") | ||
| 325 | |||
| 326 | var mastery = collectable_prefab.instantiate() | ||
| 327 | mastery.name = "collectable" | ||
| 328 | mastery.position = Vector3(-17, 2, -29) | ||
| 329 | mastery.rotation_degrees = Vector3(0, 45, 0) | ||
| 330 | mastery.unlock_type = "smiley" | ||
| 331 | mastery.material_override = load("res://assets/materials/gold.material") | ||
| 332 | get_node("/root/scene/Components/Collectables").add_child.call_deferred(mastery) | ||
| 333 | |||
| 334 | var saver = saver_prefab.instantiate() | ||
| 335 | saver.name = "saver_collectables" | ||
| 336 | saver.type = "collectables" | ||
| 337 | saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) | ||
| 338 | get_node("/root/scene").add_child.call_deferred(saver) | ||
| 339 | |||
| 340 | # Add the mastery to The Crystalline. | ||
| 341 | if global.map == "the_crystalline": | ||
| 342 | var collectable_prefab = preload("res://objects/nodes/collectable.tscn") | ||
| 343 | var saver_prefab = preload("res://objects/nodes/saver.tscn") | ||
| 344 | var tpl_prefab = preload("res://objects/nodes/listeners/teleportListener.tscn") | ||
| 345 | |||
| 346 | var mastery = collectable_prefab.instantiate() | ||
| 347 | mastery.name = "collectable" | ||
| 348 | mastery.position = Vector3(0, 13, 37) | ||
| 349 | mastery.unlock_type = "smiley" | ||
| 350 | mastery.material_override = load("res://assets/materials/gold.material") | ||
| 351 | get_node("/root/scene/Components/Collectables").add_child.call_deferred(mastery) | ||
| 352 | |||
| 353 | var tpl = tpl_prefab.instantiate() | ||
| 354 | tpl.teleport_point = Vector3(0, 11.5, -20) | ||
| 355 | tpl.teleport_rotate = Vector3(0, 0, 180) | ||
| 356 | tpl.target_path = mastery | ||
| 357 | tpl.name = "Teleport" | ||
| 358 | tpl.senders.append(NodePath("/root/scene/Panels/Room_1/panel_3")) | ||
| 359 | mastery.add_child.call_deferred(tpl) | ||
| 360 | |||
| 361 | var saver = saver_prefab.instantiate() | ||
| 362 | saver.name = "saver_collectables" | ||
| 363 | saver.type = "collectables" | ||
| 364 | saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) | ||
| 365 | get_node("/root/scene").add_child.call_deferred(saver) | ||
| 366 | |||
| 265 | ap.update_job_well_done_sign() | 367 | ap.update_job_well_done_sign() |
| 266 | 368 | ||
| 267 | # Set up door locations. | 369 | # Set up door locations. |
| diff --git a/apworld/player_logic.py b/apworld/player_logic.py index 4f825b9..5f4f1d7 100644 --- a/apworld/player_logic.py +++ b/apworld/player_logic.py | |||
| @@ -237,6 +237,10 @@ class Lingo2PlayerLogic: | |||
| 237 | elif game_map.type == data_pb2.MapType.GIFT_MAP: | 237 | elif game_map.type == data_pb2.MapType.GIFT_MAP: |
| 238 | if game_map.name == "the_advanced": | 238 | if game_map.name == "the_advanced": |
| 239 | return "The Advanced" in world.options.enable_gift_maps.value | 239 | return "The Advanced" in world.options.enable_gift_maps.value |
| 240 | elif game_map.name == "the_charismatic": | ||
| 241 | return "The Charismatic" in world.options.enable_gift_maps.value | ||
| 242 | elif game_map.name == "the_crystalline": | ||
| 243 | return "The Crystalline" in world.options.enable_gift_maps.value | ||
| 240 | 244 | ||
| 241 | return False | 245 | return False |
| 242 | 246 | ||
| diff --git a/data/connections.txtpb b/data/connections.txtpb index 5027215..12d6cfe 100644 --- a/data/connections.txtpb +++ b/data/connections.txtpb | |||
| @@ -2522,3 +2522,85 @@ connections { | |||
| 2522 | } | 2522 | } |
| 2523 | oneway: true | 2523 | oneway: true |
| 2524 | } | 2524 | } |
| 2525 | connections { | ||
| 2526 | from { | ||
| 2527 | panel { | ||
| 2528 | map: "the_entry" | ||
| 2529 | room: "Starting Room" | ||
| 2530 | name: "Gift Maps" | ||
| 2531 | answer: "souvey" | ||
| 2532 | } | ||
| 2533 | } | ||
| 2534 | to { | ||
| 2535 | room { | ||
| 2536 | map: "the_charismatic" | ||
| 2537 | name: "Main Area" | ||
| 2538 | } | ||
| 2539 | } | ||
| 2540 | oneway: true | ||
| 2541 | } | ||
| 2542 | connections { | ||
| 2543 | from { | ||
| 2544 | port { | ||
| 2545 | map: "the_charismatic" | ||
| 2546 | room: "Main Area" | ||
| 2547 | name: "WORLDPORT" | ||
| 2548 | } | ||
| 2549 | } | ||
| 2550 | to { | ||
| 2551 | room { | ||
| 2552 | map: "the_entry" | ||
| 2553 | name: "Starting Room" | ||
| 2554 | } | ||
| 2555 | } | ||
| 2556 | oneway: true | ||
| 2557 | } | ||
| 2558 | connections { | ||
| 2559 | from { | ||
| 2560 | panel { | ||
| 2561 | map: "the_entry" | ||
| 2562 | room: "Starting Room" | ||
| 2563 | name: "Gift Maps" | ||
| 2564 | answer: "q" | ||
| 2565 | } | ||
| 2566 | } | ||
| 2567 | to { | ||
| 2568 | room { | ||
| 2569 | map: "the_crystalline" | ||
| 2570 | name: "Main Area" | ||
| 2571 | } | ||
| 2572 | } | ||
| 2573 | oneway: true | ||
| 2574 | } | ||
| 2575 | connections { | ||
| 2576 | from { | ||
| 2577 | port { | ||
| 2578 | map: "the_crystalline" | ||
| 2579 | room: "Main Area" | ||
| 2580 | name: "WORLDPORT" | ||
| 2581 | } | ||
| 2582 | } | ||
| 2583 | to { | ||
| 2584 | room { | ||
| 2585 | map: "the_entry" | ||
| 2586 | name: "Starting Room" | ||
| 2587 | } | ||
| 2588 | } | ||
| 2589 | oneway: true | ||
| 2590 | } | ||
| 2591 | connections { | ||
| 2592 | # Possibly the most cursed connection in the entire game. | ||
| 2593 | from { | ||
| 2594 | room { | ||
| 2595 | map: "the_crystalline" | ||
| 2596 | name: "Flip Area" | ||
| 2597 | } | ||
| 2598 | } | ||
| 2599 | to { | ||
| 2600 | room { | ||
| 2601 | map: "icarus" | ||
| 2602 | name: "Welcome Spine (Obverse)" | ||
| 2603 | } | ||
| 2604 | } | ||
| 2605 | oneway: true | ||
| 2606 | } | ||
| diff --git a/data/ids.yaml b/data/ids.yaml index bfa1f5c..dc57d10 100644 --- a/data/ids.yaml +++ b/data/ids.yaml | |||
| @@ -1229,6 +1229,9 @@ maps: | |||
| 1229 | panels: | 1229 | panels: |
| 1230 | DIAGNOSIS: 2882 | 1230 | DIAGNOSIS: 2882 |
| 1231 | QUEEN: 2883 | 1231 | QUEEN: 2883 |
| 1232 | Mastery: | ||
| 1233 | masteries: | ||
| 1234 | MASTERY: 2994 | ||
| 1232 | Maze: | 1235 | Maze: |
| 1233 | panels: | 1236 | panels: |
| 1234 | ANALYSIS: 2887 | 1237 | ANALYSIS: 2887 |
| @@ -1288,11 +1291,13 @@ maps: | |||
| 1288 | PRINCE: 2921 | 1291 | PRINCE: 2921 |
| 1289 | Trans Rights: | 1292 | Trans Rights: |
| 1290 | panels: | 1293 | panels: |
| 1294 | SERVANT (1): 2926 | ||
| 1295 | SERVANT (2): 2927 | ||
| 1296 | Trans Rights Panels: | ||
| 1297 | panels: | ||
| 1291 | AGENDER: 2923 | 1298 | AGENDER: 2923 |
| 1292 | HUMAN (3): 2924 | 1299 | HUMAN (3): 2924 |
| 1293 | HUMAN (4): 2925 | 1300 | HUMAN (4): 2925 |
| 1294 | SERVANT (1): 2926 | ||
| 1295 | SERVANT (2): 2927 | ||
| 1296 | Welcome Spine (Obverse): | 1301 | Welcome Spine (Obverse): |
| 1297 | panels: | 1302 | panels: |
| 1298 | FISHWIFE: 2928 | 1303 | FISHWIFE: 2928 |
| @@ -1540,6 +1545,41 @@ maps: | |||
| 1540 | Mastery: | 1545 | Mastery: |
| 1541 | masteries: | 1546 | masteries: |
| 1542 | MASTERY: 140 | 1547 | MASTERY: 140 |
| 1548 | the_charismatic: | ||
| 1549 | rooms: | ||
| 1550 | Latitude Middle: | ||
| 1551 | panels: | ||
| 1552 | FUNNY: 2972 | ||
| 1553 | Latitude North: | ||
| 1554 | panels: | ||
| 1555 | DEPENDABLE: 2973 | ||
| 1556 | Latitude South: | ||
| 1557 | panels: | ||
| 1558 | CHARISMA: 2974 | ||
| 1559 | Longitude East: | ||
| 1560 | panels: | ||
| 1561 | FUN: 2975 | ||
| 1562 | Longitude Middle: | ||
| 1563 | panels: | ||
| 1564 | INTELLIGENT: 2976 | ||
| 1565 | Longitude West: | ||
| 1566 | panels: | ||
| 1567 | CREATIVE: 2977 | ||
| 1568 | Main Area: | ||
| 1569 | panels: | ||
| 1570 | AQUA: 2981 | ||
| 1571 | ARC: 2978 | ||
| 1572 | Blank: 2987 | ||
| 1573 | HERE: 2984 | ||
| 1574 | IT: 2985 | ||
| 1575 | KING: 2979 | ||
| 1576 | NAIL: 2983 | ||
| 1577 | PINS: 2986 | ||
| 1578 | TILE: 2982 | ||
| 1579 | TIP: 2980 | ||
| 1580 | Mastery: | ||
| 1581 | masteries: | ||
| 1582 | MASTERY: 2988 | ||
| 1543 | the_colorful: | 1583 | the_colorful: |
| 1544 | rooms: | 1584 | rooms: |
| 1545 | Black Room: | 1585 | Black Room: |
| @@ -1656,6 +1696,19 @@ maps: | |||
| 1656 | Obverse Magenta Door: 173 | 1696 | Obverse Magenta Door: 173 |
| 1657 | Obverse Yellow Door: 178 | 1697 | Obverse Yellow Door: 178 |
| 1658 | Obverse Yellow Puzzles: 179 | 1698 | Obverse Yellow Puzzles: 179 |
| 1699 | the_crystalline: | ||
| 1700 | rooms: | ||
| 1701 | Flip Area: | ||
| 1702 | panels: | ||
| 1703 | SUCCEED: 2989 | ||
| 1704 | Main Area: | ||
| 1705 | panels: | ||
| 1706 | DROP: 2991 | ||
| 1707 | LEAP: 2990 | ||
| 1708 | SPIN: 2992 | ||
| 1709 | Mastery: | ||
| 1710 | masteries: | ||
| 1711 | MASTERY: 2993 | ||
| 1659 | the_darkroom: | 1712 | the_darkroom: |
| 1660 | rooms: | 1713 | rooms: |
| 1661 | First Room: | 1714 | First Room: |
| diff --git a/data/maps/icarus/connections.txtpb b/data/maps/icarus/connections.txtpb index 1ec90d9..a963424 100644 --- a/data/maps/icarus/connections.txtpb +++ b/data/maps/icarus/connections.txtpb | |||
| @@ -607,6 +607,21 @@ connections { | |||
| 607 | } | 607 | } |
| 608 | oneway: true | 608 | oneway: true |
| 609 | } | 609 | } |
| 610 | connections { | ||
| 611 | from_room: "Trans Rights" | ||
| 612 | to_room: "Trans Rights Panels" | ||
| 613 | oneway: true | ||
| 614 | } | ||
| 615 | connections { | ||
| 616 | from_room: "Above Trans Rights" | ||
| 617 | to_room: "Trans Rights Panels" | ||
| 618 | oneway: true | ||
| 619 | } | ||
| 620 | connections { | ||
| 621 | from_room: "Welcome Spine (Obverse)" | ||
| 622 | to_room: "Mastery" | ||
| 623 | door { name: "Mastery" } | ||
| 624 | } | ||
| 610 | # It is possible to fall out of the map from every room, which always sends you | 625 | # It is possible to fall out of the map from every room, which always sends you |
| 611 | # back to the beginning. | 626 | # back to the beginning. |
| 612 | connections { | 627 | connections { |
| diff --git a/data/maps/icarus/doors.txtpb b/data/maps/icarus/doors.txtpb index 5554393..a333dea 100644 --- a/data/maps/icarus/doors.txtpb +++ b/data/maps/icarus/doors.txtpb | |||
| @@ -2,14 +2,14 @@ doors { | |||
| 2 | name: "Agender Door" | 2 | name: "Agender Door" |
| 3 | type: STANDARD | 3 | type: STANDARD |
| 4 | receivers: "Components/Doors/quicktravel3" | 4 | receivers: "Components/Doors/quicktravel3" |
| 5 | panels { room: "Trans Rights" name: "AGENDER" } | 5 | panels { room: "Trans Rights Panels" name: "AGENDER" } |
| 6 | location_room: "Trans Rights" | 6 | location_room: "Trans Rights Panels" |
| 7 | } | 7 | } |
| 8 | doors { | 8 | doors { |
| 9 | name: "Quick Travel 3" | 9 | name: "Quick Travel 3" |
| 10 | type: ITEM_ONLY | 10 | type: ITEM_ONLY |
| 11 | receivers: "Components/Paintings/QuickTravel/go3" | 11 | receivers: "Components/Paintings/QuickTravel/go3" |
| 12 | panels { room: "Trans Rights" name: "AGENDER" } | 12 | panels { room: "Trans Rights Panels" name: "AGENDER" } |
| 13 | } | 13 | } |
| 14 | doors { | 14 | doors { |
| 15 | name: "Pea Door" | 15 | name: "Pea Door" |
| @@ -224,3 +224,63 @@ doors { | |||
| 224 | panels { room: "Spiral Ramp" name: "FIREMAN" } | 224 | panels { room: "Spiral Ramp" name: "FIREMAN" } |
| 225 | location_room: "Spiral Ramp" | 225 | location_room: "Spiral Ramp" |
| 226 | } | 226 | } |
| 227 | doors { | ||
| 228 | name: "Mastery" | ||
| 229 | type: EVENT | ||
| 230 | panels { room: "Above Trans Rights" name: "ANT" } | ||
| 231 | panels { room: "Big U" name: "DECK" } | ||
| 232 | panels { room: "Big U" name: "COLONY" } | ||
| 233 | panels { room: "Big U" name: "MANOR" } | ||
| 234 | panels { room: "Fatherland" name: "FATHERLAND" } | ||
| 235 | panels { room: "Highest Point" name: "DIAGNOSIS" } | ||
| 236 | panels { room: "Highest Point" name: "QUEEN" } | ||
| 237 | panels { room: "Maze Back" name: "THESE" } | ||
| 238 | panels { room: "Maze King Panel" name: "KING (2)" } | ||
| 239 | panels { room: "Maze" name: "KING (1)" } | ||
| 240 | panels { room: "Maze" name: "ANALYSIS" } | ||
| 241 | panels { room: "Maze" name: "MANSLAUGHTER" } | ||
| 242 | panels { room: "Maze" name: "MEDIUMS" } | ||
| 243 | panels { room: "Maze" name: "BOOKS" } | ||
| 244 | panels { room: "Mini Icarus 2" name: "BATTERY" } | ||
| 245 | panels { room: "Mini Icarus 2" name: "TROUPE" } | ||
| 246 | panels { room: "Mini Icarus 2" name: "ANIMALS" } | ||
| 247 | panels { room: "Mini Icarus 2" name: "ARROWS" } | ||
| 248 | panels { room: "Mini Icarus 2" name: "SQUAD" } | ||
| 249 | panels { room: "Pillar Ramp" name: "ASTEROID" } | ||
| 250 | panels { room: "Pillar Ramp" name: "BUNCH" } | ||
| 251 | panels { room: "Pillar Ramp" name: "PRINCES" } | ||
| 252 | panels { room: "Pillar Ramp" name: "PATRICIDE" } | ||
| 253 | panels { room: "Pillar Ramp" name: "DRONE" } | ||
| 254 | panels { room: "Pillar Ramp" name: "PEA (1)" } | ||
| 255 | panels { room: "Spiral Ramp" name: "FIREMAN" } | ||
| 256 | panels { room: "The Orb" name: "ADDERS" } | ||
| 257 | panels { room: "The Orb" name: "PUPPY" } | ||
| 258 | panels { room: "The Orb" name: "NEEDLE" } | ||
| 259 | panels { room: "The Orb" name: "US" } | ||
| 260 | panels { room: "The Orb" name: "FISH" } | ||
| 261 | panels { room: "The Orb" name: "DEADLINE" } | ||
| 262 | panels { room: "The Orb" name: "PEA (2)" } | ||
| 263 | panels { room: "The Orb" name: "THESIS" } | ||
| 264 | panels { room: "The Orb" name: "CLUTCH (1)" } | ||
| 265 | panels { room: "The Orb" name: "BASIS (2)" } | ||
| 266 | panels { room: "The Orb" name: "AXIS" } | ||
| 267 | panels { room: "The Orb" name: "STRAIGHT" } | ||
| 268 | panels { room: "The Orb" name: "HISS" } | ||
| 269 | panels { room: "The Orb" name: "DISCUS" } | ||
| 270 | panels { room: "The Orb" name: "SON" } | ||
| 271 | panels { room: "The Orb" name: "CLUTCH (2)" } | ||
| 272 | panels { room: "Through Woman (Obverse)" name: "HUMAN (2)" } | ||
| 273 | panels { room: "Through Woman (Obverse)" name: "COW" } | ||
| 274 | panels { room: "Through Woman (Reverse)" name: "PRINCE" } | ||
| 275 | panels { room: "Through Woman (Reverse)" name: "BASIS (1)" } | ||
| 276 | panels { room: "Trans Rights" name: "SERVANT (1)" } | ||
| 277 | panels { room: "Trans Rights" name: "SERVANT (2)" } | ||
| 278 | panels { room: "Trans Rights Panels" name: "AGENDER" } | ||
| 279 | panels { room: "Trans Rights Panels" name: "HUMAN (3)" } | ||
| 280 | panels { room: "Trans Rights Panels" name: "HUMAN (4)" } | ||
| 281 | panels { room: "Welcome Spine (Obverse)" name: "FISHWIFE" } | ||
| 282 | panels { room: "Welcome Spine (Obverse)" name: "HUMAN (1)" } | ||
| 283 | panels { room: "Welcome Spine (Reverse)" name: "FATHER" } | ||
| 284 | panels { room: "Welcome Spine (Reverse)" name: "TERMITE" } | ||
| 285 | panels { room: "Welcome Spine (Reverse)" name: "SISTER" } | ||
| 286 | } | ||
| diff --git a/data/maps/icarus/metadata.txtpb b/data/maps/icarus/metadata.txtpb index 83afad7..8512d8e 100644 --- a/data/maps/icarus/metadata.txtpb +++ b/data/maps/icarus/metadata.txtpb | |||
| @@ -1,2 +1,4 @@ | |||
| 1 | display_name: "Icarus" | 1 | display_name: "Icarus" |
| 2 | type: ICARUS | 2 | type: ICARUS |
| 3 | # The map's mastery is created at runtime. | ||
| 4 | custom_nodes: "Components/Collectables/collectable" | ||
| diff --git a/data/maps/icarus/rooms/Mastery.txtpb b/data/maps/icarus/rooms/Mastery.txtpb new file mode 100644 index 0000000..bbe8742 --- /dev/null +++ b/data/maps/icarus/rooms/Mastery.txtpb | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | name: "Mastery" | ||
| 2 | masteries { | ||
| 3 | name: "MASTERY" | ||
| 4 | path: "Components/Collectables/collectable" | ||
| 5 | } | ||
| diff --git a/data/maps/icarus/rooms/Trans Rights Panels.txtpb b/data/maps/icarus/rooms/Trans Rights Panels.txtpb new file mode 100644 index 0000000..e51d4bc --- /dev/null +++ b/data/maps/icarus/rooms/Trans Rights Panels.txtpb | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | name: "Trans Rights Panels" | ||
| 2 | panels { | ||
| 3 | name: "AGENDER" | ||
| 4 | path: "Panels/Room_1/human4" | ||
| 5 | clue: "agender" | ||
| 6 | answer: "human" | ||
| 7 | symbols: GENDER | ||
| 8 | } | ||
| 9 | panels { | ||
| 10 | name: "HUMAN (3)" | ||
| 11 | path: "Panels/Room_1/human5" | ||
| 12 | clue: "human" | ||
| 13 | answer: "female" | ||
| 14 | symbols: GENDER | ||
| 15 | } | ||
| 16 | panels { | ||
| 17 | name: "HUMAN (4)" | ||
| 18 | path: "Panels/Room_1/human6" | ||
| 19 | clue: "human" | ||
| 20 | answer: "male" | ||
| 21 | symbols: GENDER | ||
| 22 | } | ||
| diff --git a/data/maps/icarus/rooms/Trans Rights.txtpb b/data/maps/icarus/rooms/Trans Rights.txtpb index 2e95de6..2ca98dd 100644 --- a/data/maps/icarus/rooms/Trans Rights.txtpb +++ b/data/maps/icarus/rooms/Trans Rights.txtpb | |||
| @@ -1,27 +1,6 @@ | |||
| 1 | name: "Trans Rights" | 1 | name: "Trans Rights" |
| 2 | # slay | 2 | # slay |
| 3 | panels { | 3 | panels { |
| 4 | name: "AGENDER" | ||
| 5 | path: "Panels/Room_1/human4" | ||
| 6 | clue: "agender" | ||
| 7 | answer: "human" | ||
| 8 | symbols: GENDER | ||
| 9 | } | ||
| 10 | panels { | ||
| 11 | name: "HUMAN (3)" | ||
| 12 | path: "Panels/Room_1/human5" | ||
| 13 | clue: "human" | ||
| 14 | answer: "female" | ||
| 15 | symbols: GENDER | ||
| 16 | } | ||
| 17 | panels { | ||
| 18 | name: "HUMAN (4)" | ||
| 19 | path: "Panels/Room_1/human6" | ||
| 20 | clue: "human" | ||
| 21 | answer: "male" | ||
| 22 | symbols: GENDER | ||
| 23 | } | ||
| 24 | panels { | ||
| 25 | name: "SERVANT (1)" | 4 | name: "SERVANT (1)" |
| 26 | path: "Panels/Room_1/servant" | 5 | path: "Panels/Room_1/servant" |
| 27 | clue: "servant" | 6 | clue: "servant" |
| diff --git a/data/maps/the_charismatic/connections.txtpb b/data/maps/the_charismatic/connections.txtpb new file mode 100644 index 0000000..6130302 --- /dev/null +++ b/data/maps/the_charismatic/connections.txtpb | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | connections { | ||
| 2 | from_room: "Main Area" | ||
| 3 | to_room: "Latitude South" | ||
| 4 | door { name: "Latitude South Door" } | ||
| 5 | } | ||
| 6 | connections { | ||
| 7 | from_room: "Main Area" | ||
| 8 | to_room: "Latitude Middle" | ||
| 9 | door { name: "Latitude Middle Door" } | ||
| 10 | } | ||
| 11 | connections { | ||
| 12 | from_room: "Main Area" | ||
| 13 | to_room: "Latitude North" | ||
| 14 | door { name: "Latitude North Door" } | ||
| 15 | } | ||
| 16 | connections { | ||
| 17 | from_room: "Main Area" | ||
| 18 | to_room: "Longitude West" | ||
| 19 | door { name: "Longitude West Door" } | ||
| 20 | } | ||
| 21 | connections { | ||
| 22 | from_room: "Main Area" | ||
| 23 | to_room: "Longitude Middle" | ||
| 24 | door { name: "Longitude Middle Door" } | ||
| 25 | } | ||
| 26 | connections { | ||
| 27 | from_room: "Main Area" | ||
| 28 | to_room: "Longitude East" | ||
| 29 | door { name: "Longitude East Door" } | ||
| 30 | } | ||
| 31 | connections { | ||
| 32 | from_room: "Main Area" | ||
| 33 | to_room: "Mastery" | ||
| 34 | door { name: "Mastery Door" } | ||
| 35 | } | ||
| diff --git a/data/maps/the_charismatic/doors.txtpb b/data/maps/the_charismatic/doors.txtpb new file mode 100644 index 0000000..0c7eb40 --- /dev/null +++ b/data/maps/the_charismatic/doors.txtpb | |||
| @@ -0,0 +1,56 @@ | |||
| 1 | doors { | ||
| 2 | name: "Latitude South Door" | ||
| 3 | type: EVENT | ||
| 4 | panels { room: "Main Area" name: "TIP" } | ||
| 5 | panels { room: "Main Area" name: "KING" } | ||
| 6 | panels { room: "Main Area" name: "ARC" } | ||
| 7 | } | ||
| 8 | doors { | ||
| 9 | name: "Latitude Middle Door" | ||
| 10 | type: EVENT | ||
| 11 | panels { room: "Main Area" name: "NAIL" } | ||
| 12 | panels { room: "Main Area" name: "TILE" } | ||
| 13 | panels { room: "Main Area" name: "AQUA" } | ||
| 14 | } | ||
| 15 | doors { | ||
| 16 | name: "Latitude North Door" | ||
| 17 | type: EVENT | ||
| 18 | panels { room: "Main Area" name: "PINS" } | ||
| 19 | panels { room: "Main Area" name: "IT" } | ||
| 20 | panels { room: "Main Area" name: "HERE" } | ||
| 21 | } | ||
| 22 | doors { | ||
| 23 | name: "Longitude West Door" | ||
| 24 | type: EVENT | ||
| 25 | panels { room: "Main Area" name: "ARC" } | ||
| 26 | panels { room: "Main Area" name: "AQUA" } | ||
| 27 | panels { room: "Main Area" name: "HERE" } | ||
| 28 | } | ||
| 29 | doors { | ||
| 30 | name: "Longitude Middle Door" | ||
| 31 | type: EVENT | ||
| 32 | panels { room: "Main Area" name: "KING" } | ||
| 33 | panels { room: "Main Area" name: "TILE" } | ||
| 34 | panels { room: "Main Area" name: "IT" } | ||
| 35 | } | ||
| 36 | doors { | ||
| 37 | name: "Longitude East Door" | ||
| 38 | type: EVENT | ||
| 39 | panels { room: "Main Area" name: "TIP" } | ||
| 40 | panels { room: "Main Area" name: "NAIL" } | ||
| 41 | panels { room: "Main Area" name: "PINS" } | ||
| 42 | } | ||
| 43 | doors { | ||
| 44 | name: "Mastery Door" | ||
| 45 | type: EVENT | ||
| 46 | panels { room: "Main Area" name: "HERE" } | ||
| 47 | panels { room: "Main Area" name: "TILE" } | ||
| 48 | panels { room: "Main Area" name: "TIP" } | ||
| 49 | panels { room: "Main Area" name: "Blank" } | ||
| 50 | panels { room: "Latitude South" name: "CHARISMA" } | ||
| 51 | panels { room: "Latitude Middle" name: "FUNNY" } | ||
| 52 | panels { room: "Latitude North" name: "DEPENDABLE" } | ||
| 53 | panels { room: "Longitude West" name: "CREATIVE" } | ||
| 54 | panels { room: "Longitude Middle" name: "INTELLIGENT" } | ||
| 55 | panels { room: "Longitude East" name: "FUN" } | ||
| 56 | } | ||
| diff --git a/data/maps/the_charismatic/metadata.txtpb b/data/maps/the_charismatic/metadata.txtpb new file mode 100644 index 0000000..8d26105 --- /dev/null +++ b/data/maps/the_charismatic/metadata.txtpb | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | display_name: "The Charismatic" | ||
| 2 | type: GIFT_MAP | ||
| 3 | # The map's mastery is created at runtime. | ||
| 4 | custom_nodes: "Components/Collectables/collectable" | ||
| diff --git a/data/maps/the_charismatic/rooms/Latitude Middle.txtpb b/data/maps/the_charismatic/rooms/Latitude Middle.txtpb new file mode 100644 index 0000000..7d83dcf --- /dev/null +++ b/data/maps/the_charismatic/rooms/Latitude Middle.txtpb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | name: "Latitude Middle" | ||
| 2 | panels { | ||
| 3 | name: "FUNNY" | ||
| 4 | path: "Panels/Room 2/panel_h" | ||
| 5 | clue: "funny" | ||
| 6 | answer: "hilarious" | ||
| 7 | symbols: PYRAMID | ||
| 8 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Latitude North.txtpb b/data/maps/the_charismatic/rooms/Latitude North.txtpb new file mode 100644 index 0000000..50c412b --- /dev/null +++ b/data/maps/the_charismatic/rooms/Latitude North.txtpb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | name: "Latitude North" | ||
| 2 | panels { | ||
| 3 | name: "DEPENDABLE" | ||
| 4 | path: "Panels/Room 2/panel_r" | ||
| 5 | clue: "dependable" | ||
| 6 | answer: "reliable" | ||
| 7 | symbols: SUN | ||
| 8 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Latitude South.txtpb b/data/maps/the_charismatic/rooms/Latitude South.txtpb new file mode 100644 index 0000000..472e4a7 --- /dev/null +++ b/data/maps/the_charismatic/rooms/Latitude South.txtpb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | name: "Latitude South" | ||
| 2 | panels { | ||
| 3 | name: "CHARISMA" | ||
| 4 | path: "Panels/Room 2/panel_c" | ||
| 5 | clue: "charisma" | ||
| 6 | answer: "charismatic" | ||
| 7 | symbols: QUESTION | ||
| 8 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Longitude East.txtpb b/data/maps/the_charismatic/rooms/Longitude East.txtpb new file mode 100644 index 0000000..75cd6e0 --- /dev/null +++ b/data/maps/the_charismatic/rooms/Longitude East.txtpb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | name: "Longitude East" | ||
| 2 | panels { | ||
| 3 | name: "FUN" | ||
| 4 | path: "Panels/Room 2/panel_s2" | ||
| 5 | clue: "fun" | ||
| 6 | answer: "silly" | ||
| 7 | symbols: SUN | ||
| 8 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Longitude Middle.txtpb b/data/maps/the_charismatic/rooms/Longitude Middle.txtpb new file mode 100644 index 0000000..7ee8c11 --- /dev/null +++ b/data/maps/the_charismatic/rooms/Longitude Middle.txtpb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | name: "Longitude Middle" | ||
| 2 | panels { | ||
| 3 | name: "INTELLIGENT" | ||
| 4 | path: "Panels/Room 2/panel_s" | ||
| 5 | clue: "intelligent" | ||
| 6 | answer: "smart" | ||
| 7 | symbols: SUN | ||
| 8 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Longitude West.txtpb b/data/maps/the_charismatic/rooms/Longitude West.txtpb new file mode 100644 index 0000000..28fe8c8 --- /dev/null +++ b/data/maps/the_charismatic/rooms/Longitude West.txtpb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | name: "Longitude West" | ||
| 2 | panels { | ||
| 3 | name: "CREATIVE" | ||
| 4 | path: "Panels/Room 2/panel_i" | ||
| 5 | clue: "creative" | ||
| 6 | answer: "imaginative" | ||
| 7 | symbols: SUN | ||
| 8 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Main Area.txtpb b/data/maps/the_charismatic/rooms/Main Area.txtpb new file mode 100644 index 0000000..2d84000 --- /dev/null +++ b/data/maps/the_charismatic/rooms/Main Area.txtpb | |||
| @@ -0,0 +1,78 @@ | |||
| 1 | name: "Main Area" | ||
| 2 | panels { | ||
| 3 | name: "ARC" | ||
| 4 | path: "Panels/Room_1/panel_1" | ||
| 5 | clue: "arc" | ||
| 6 | answer: "arctic" | ||
| 7 | symbols: QUESTION | ||
| 8 | } | ||
| 9 | panels { | ||
| 10 | name: "KING" | ||
| 11 | path: "Panels/Room_1/panel_2" | ||
| 12 | clue: "king" | ||
| 13 | answer: "tacking" | ||
| 14 | symbols: QUESTION | ||
| 15 | } | ||
| 16 | panels { | ||
| 17 | name: "TIP" | ||
| 18 | path: "Panels/Room_1/panel_3" | ||
| 19 | clue: "tip" | ||
| 20 | answer: "tiptoe" | ||
| 21 | symbols: QUESTION | ||
| 22 | } | ||
| 23 | panels { | ||
| 24 | name: "AQUA" | ||
| 25 | path: "Panels/Room_1/panel_4" | ||
| 26 | clue: "aqua" | ||
| 27 | answer: "aquatic" | ||
| 28 | symbols: QUESTION | ||
| 29 | } | ||
| 30 | panels { | ||
| 31 | name: "TILE" | ||
| 32 | path: "Panels/Room_1/panel_5" | ||
| 33 | clue: "tile" | ||
| 34 | answer: "tactile" | ||
| 35 | symbols: QUESTION | ||
| 36 | } | ||
| 37 | panels { | ||
| 38 | name: "NAIL" | ||
| 39 | path: "Panels/Room_1/panel_6" | ||
| 40 | clue: "nail" | ||
| 41 | answer: "toenail" | ||
| 42 | symbols: QUESTION | ||
| 43 | } | ||
| 44 | panels { | ||
| 45 | name: "HERE" | ||
| 46 | path: "Panels/Room_1/panel_7" | ||
| 47 | clue: "here" | ||
| 48 | answer: "heretic" | ||
| 49 | symbols: QUESTION | ||
| 50 | } | ||
| 51 | panels { | ||
| 52 | name: "IT" | ||
| 53 | path: "Panels/Room_1/panel_8" | ||
| 54 | clue: "it" | ||
| 55 | answer: "tacit" | ||
| 56 | symbols: QUESTION | ||
| 57 | } | ||
| 58 | panels { | ||
| 59 | name: "PINS" | ||
| 60 | path: "Panels/Room_1/panel_9" | ||
| 61 | clue: "pins" | ||
| 62 | answer: "pintoes" | ||
| 63 | symbols: QUESTION | ||
| 64 | } | ||
| 65 | panels { | ||
| 66 | name: "Blank" | ||
| 67 | path: "Panels/Room 3/panel_10" | ||
| 68 | clue: "" | ||
| 69 | answer: "tactic" | ||
| 70 | symbols: QUESTION | ||
| 71 | } | ||
| 72 | ports { | ||
| 73 | name: "WORLDPORT" | ||
| 74 | display_name: "Entrance" | ||
| 75 | path: "Components/Warps/worldport" | ||
| 76 | destination { x: 0 y: 0 z: 9.5 } | ||
| 77 | rotation: 0 | ||
| 78 | } | ||
| diff --git a/data/maps/the_charismatic/rooms/Mastery.txtpb b/data/maps/the_charismatic/rooms/Mastery.txtpb new file mode 100644 index 0000000..bbe8742 --- /dev/null +++ b/data/maps/the_charismatic/rooms/Mastery.txtpb | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | name: "Mastery" | ||
| 2 | masteries { | ||
| 3 | name: "MASTERY" | ||
| 4 | path: "Components/Collectables/collectable" | ||
| 5 | } | ||
| diff --git a/data/maps/the_crystalline/connections.txtpb b/data/maps/the_crystalline/connections.txtpb new file mode 100644 index 0000000..4134d12 --- /dev/null +++ b/data/maps/the_crystalline/connections.txtpb | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | connections { | ||
| 2 | from_room: "Main Area" | ||
| 3 | to_room: "Painting Divot" | ||
| 4 | oneway: true | ||
| 5 | } | ||
| 6 | connections { | ||
| 7 | from { | ||
| 8 | painting { | ||
| 9 | room: "Painting Divot" | ||
| 10 | name: "SNAKE" | ||
| 11 | } | ||
| 12 | } | ||
| 13 | to { | ||
| 14 | painting { | ||
| 15 | room: "Flip Area" | ||
| 16 | name: "SNAKE2" | ||
| 17 | } | ||
| 18 | } | ||
| 19 | oneway: true | ||
| 20 | } | ||
| 21 | connections { | ||
| 22 | from_room: "Flip Area" | ||
| 23 | to_room: "Mastery" | ||
| 24 | door { name: "Mastery" } | ||
| 25 | } | ||
| diff --git a/data/maps/the_crystalline/doors.txtpb b/data/maps/the_crystalline/doors.txtpb new file mode 100644 index 0000000..024752a --- /dev/null +++ b/data/maps/the_crystalline/doors.txtpb | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | doors { | ||
| 2 | name: "Mastery" | ||
| 3 | type: EVENT | ||
| 4 | panels { room: "Flip Area" name: "SUCCEED" } | ||
| 5 | } | ||
| diff --git a/data/maps/the_crystalline/metadata.txtpb b/data/maps/the_crystalline/metadata.txtpb new file mode 100644 index 0000000..09b0f1d --- /dev/null +++ b/data/maps/the_crystalline/metadata.txtpb | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | display_name: "The Crystalline" | ||
| 2 | type: GIFT_MAP | ||
| 3 | # The map's mastery is created at runtime. | ||
| 4 | custom_nodes: "Components/Collectables/collectable" | ||
| diff --git a/data/maps/the_crystalline/rooms/Flip Area.txtpb b/data/maps/the_crystalline/rooms/Flip Area.txtpb new file mode 100644 index 0000000..3c6e3fd --- /dev/null +++ b/data/maps/the_crystalline/rooms/Flip Area.txtpb | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | name: "Flip Area" | ||
| 2 | panels { | ||
| 3 | name: "SUCCEED" | ||
| 4 | path: "Panels/Room_1/panel_3" | ||
| 5 | clue: "succeed" | ||
| 6 | answer: "win" | ||
| 7 | symbols: SUN | ||
| 8 | } | ||
| 9 | paintings { | ||
| 10 | name: "SNAKE2" | ||
| 11 | path: "Components/snake2" | ||
| 12 | exit_only: true | ||
| 13 | gravity: Y_PLUS | ||
| 14 | } | ||
| diff --git a/data/maps/the_crystalline/rooms/Main Area.txtpb b/data/maps/the_crystalline/rooms/Main Area.txtpb new file mode 100644 index 0000000..0b8d26c --- /dev/null +++ b/data/maps/the_crystalline/rooms/Main Area.txtpb | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | name: "Main Area" | ||
| 2 | panels { | ||
| 3 | name: "LEAP" | ||
| 4 | path: "Panels/Room_1/panel_1" | ||
| 5 | clue: "leap" | ||
| 6 | answer: "jump" | ||
| 7 | symbols: SUN | ||
| 8 | } | ||
| 9 | panels { | ||
| 10 | name: "DROP" | ||
| 11 | path: "Panels/Room_1/panel_2" | ||
| 12 | clue: "drop" | ||
| 13 | answer: "fall" | ||
| 14 | symbols: SUN | ||
| 15 | } | ||
| 16 | panels { | ||
| 17 | name: "SPIN" | ||
| 18 | path: "Panels/Room_1/panel_4" | ||
| 19 | clue: "spin" | ||
| 20 | answer: "flip" | ||
| 21 | symbols: SUN | ||
| 22 | } | ||
| 23 | ports { | ||
| 24 | name: "WORLDPORT" | ||
| 25 | display_name: "Entrance" | ||
| 26 | path: "Components/Warps/worldport" | ||
| 27 | destination { x: 0 y: 0 z: 9.5 } | ||
| 28 | rotation: 0 | ||
| 29 | } | ||
| diff --git a/data/maps/the_crystalline/rooms/Mastery.txtpb b/data/maps/the_crystalline/rooms/Mastery.txtpb new file mode 100644 index 0000000..bbe8742 --- /dev/null +++ b/data/maps/the_crystalline/rooms/Mastery.txtpb | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | name: "Mastery" | ||
| 2 | masteries { | ||
| 3 | name: "MASTERY" | ||
| 4 | path: "Components/Collectables/collectable" | ||
| 5 | } | ||
| diff --git a/data/maps/the_crystalline/rooms/Painting Divot.txtpb b/data/maps/the_crystalline/rooms/Painting Divot.txtpb new file mode 100644 index 0000000..ab9a132 --- /dev/null +++ b/data/maps/the_crystalline/rooms/Painting Divot.txtpb | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | name: "Painting Divot" | ||
| 2 | paintings { | ||
| 3 | name: "SNAKE" | ||
| 4 | path: "Components/snake" | ||
| 5 | } | ||
| diff --git a/data/maps/the_entry/metadata.txtpb b/data/maps/the_entry/metadata.txtpb index 9536831..d969c68 100644 --- a/data/maps/the_entry/metadata.txtpb +++ b/data/maps/the_entry/metadata.txtpb | |||
| @@ -14,3 +14,5 @@ excluded_nodes: "Panels/Entry/entry_proxied_fake" | |||
| 14 | # The gift map entrance is created by the mod. | 14 | # The gift map entrance is created by the mod. |
| 15 | custom_nodes: "Components/GiftMapEntrance/IcelyPanel" | 15 | custom_nodes: "Components/GiftMapEntrance/IcelyPanel" |
| 16 | custom_nodes: "Components/GiftMapEntrance/Panel" | 16 | custom_nodes: "Components/GiftMapEntrance/Panel" |
| 17 | custom_nodes: "Components/GiftMapEntrance/QPanel" | ||
| 18 | custom_nodes: "Components/GiftMapEntrance/SouveyPanel" | ||
| diff --git a/data/maps/the_entry/rooms/Starting Room.txtpb b/data/maps/the_entry/rooms/Starting Room.txtpb index e21e3ff..a1f3dbf 100644 --- a/data/maps/the_entry/rooms/Starting Room.txtpb +++ b/data/maps/the_entry/rooms/Starting Room.txtpb | |||
| @@ -56,6 +56,8 @@ panels { | |||
| 56 | # for fun. | 56 | # for fun. |
| 57 | symbols: QUESTION | 57 | symbols: QUESTION |
| 58 | proxies { answer: "icely" path: "Components/GiftMapEntrance/IcelyPanel" } | 58 | proxies { answer: "icely" path: "Components/GiftMapEntrance/IcelyPanel" } |
| 59 | proxies { answer: "q" path: "Components/GiftMapEntrance/QPanel" } | ||
| 60 | proxies { answer: "souvey" path: "Components/GiftMapEntrance/SouveyPanel" } | ||
| 59 | required_door { name: "Gift Maps Entrance" } | 61 | required_door { name: "Gift Maps Entrance" } |
| 60 | } | 62 | } |
| 61 | letters { | 63 | letters { |
