summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--__init__.py6
-rw-r--r--data/LL1.yaml194
-rw-r--r--data/generated.datbin129731 -> 130791 bytes
-rw-r--r--datatypes.py3
-rw-r--r--items.py18
-rw-r--r--locations.py6
-rw-r--r--player_logic.py4
-rw-r--r--utils/pickle_static_data.py13
-rw-r--r--utils/validate_config.rb2
9 files changed, 157 insertions, 89 deletions
diff --git a/__init__.py b/__init__.py index e35a102..c92e530 100644 --- a/__init__.py +++ b/__init__.py
@@ -6,8 +6,8 @@ from logging import warning
6from BaseClasses import Item, ItemClassification, Tutorial 6from BaseClasses import Item, ItemClassification, Tutorial
7from worlds.AutoWorld import WebWorld, World 7from worlds.AutoWorld import WebWorld, World
8from .datatypes import Room, RoomEntrance 8from .datatypes import Room, RoomEntrance
9from .items import ALL_ITEM_TABLE, LingoItem 9from .items import ALL_ITEM_TABLE, ITEMS_BY_GROUP, LingoItem
10from .locations import ALL_LOCATION_TABLE 10from .locations import ALL_LOCATION_TABLE, LOCATIONS_BY_GROUP
11from .options import LingoOptions 11from .options import LingoOptions
12from .player_logic import LingoPlayerLogic 12from .player_logic import LingoPlayerLogic
13from .regions import create_regions 13from .regions import create_regions
@@ -46,6 +46,8 @@ class LingoWorld(World):
46 location_name_to_id = { 46 location_name_to_id = {
47 name: data.code for name, data in ALL_LOCATION_TABLE.items() 47 name: data.code for name, data in ALL_LOCATION_TABLE.items()
48 } 48 }
49 item_name_groups = ITEMS_BY_GROUP
50 location_name_groups = LOCATIONS_BY_GROUP
49 51
50 player_logic: LingoPlayerLogic 52 player_logic: LingoPlayerLogic
51 53
diff --git a/data/LL1.yaml b/data/LL1.yaml index f72e63c..75f6882 100644 --- a/data/LL1.yaml +++ b/data/LL1.yaml
@@ -63,12 +63,13 @@
63 # - item_name: Overrides the name of the item generated for this door. 63 # - item_name: Overrides the name of the item generated for this door.
64 # If not specified, the item name will be generated from 64 # If not specified, the item name will be generated from
65 # the room name and the door name. 65 # the room name and the door name.
66 # - item_group: If set, this item will be in the specified item group.
66 # - location_name: Overrides the name of the location generated for this 67 # - location_name: Overrides the name of the location generated for this
67 # door. If not specified, the location name will be 68 # door. If not specified, the location name will be
68 # generated using the names of the panels. 69 # generated using the names of the panels.
69 # - skip_location: If true, no location is generated for this door. 70 # - skip_location: If true, no location is generated for this door.
70 # - skip_item: If true, no item is generated for this door. 71 # - skip_item: If true, no item is generated for this door.
71 # - group: When simple doors is used, all doors with the same group 72 # - door_group: When simple doors is used, all doors with the same group
72 # will be covered by a single item. 73 # will be covered by a single item.
73 # - include_reduce: Door checks are assumed to be EXCLUDED when reduce checks 74 # - include_reduce: Door checks are assumed to be EXCLUDED when reduce checks
74 # is on. This option includes the check anyway. 75 # is on. This option includes the check anyway.
@@ -144,7 +145,7 @@
144 - Palindrome Room Area Doors/Door_racecar_racecar_2 145 - Palindrome Room Area Doors/Door_racecar_racecar_2
145 - Palindrome Room Area Doors/Door_solos_solos_2 146 - Palindrome Room Area Doors/Door_solos_solos_2
146 skip_location: True 147 skip_location: True
147 group: Rhyme Room Doors 148 door_group: Rhyme Room Doors
148 panels: 149 panels:
149 - room: The Tenacious 150 - room: The Tenacious
150 panel: LEVEL (Black) 151 panel: LEVEL (Black)
@@ -231,7 +232,7 @@
231 Dead End Door: 232 Dead End Door:
232 id: Appendix Room Area Doors/Door_rat_tar_2 233 id: Appendix Room Area Doors/Door_rat_tar_2
233 skip_location: true 234 skip_location: true
234 group: Dead End Area Access 235 door_group: Dead End Area Access
235 panels: 236 panels:
236 - room: Hub Room 237 - room: Hub Room
237 panel: RAT 238 panel: RAT
@@ -244,6 +245,7 @@
244 Seeker Entrance: 245 Seeker Entrance:
245 id: Entry Room Area Doors/Door_entrance_entrance 246 id: Entry Room Area Doors/Door_entrance_entrance
246 item_name: The Seeker - Entrance 247 item_name: The Seeker - Entrance
248 item_group: Achievement Room Entrances
247 panels: 249 panels:
248 - OPEN 250 - OPEN
249 Rhyme Room Entrance: 251 Rhyme Room Entrance:
@@ -251,7 +253,7 @@
251 - Appendix Room Area Doors/Door_rat_tar_3 253 - Appendix Room Area Doors/Door_rat_tar_3
252 - Double Room Area Doors/Door_room_entry_stairs 254 - Double Room Area Doors/Door_room_entry_stairs
253 skip_location: True 255 skip_location: True
254 group: Rhyme Room Doors 256 door_group: Rhyme Room Doors
255 panels: 257 panels:
256 - room: The Tenacious 258 - room: The Tenacious
257 panel: LEVEL (Black) 259 panel: LEVEL (Black)
@@ -466,25 +468,27 @@
466 - ORDER 468 - ORDER
467 Tenacious Entrance: 469 Tenacious Entrance:
468 id: Palindrome Room Area Doors/Door_slaughter_laughter 470 id: Palindrome Room Area Doors/Door_slaughter_laughter
469 group: Entrances to The Tenacious 471 door_group: Entrances to The Tenacious
472 item_group: Achievement Room Entrances
470 panels: 473 panels:
471 - SLAUGHTER 474 - SLAUGHTER
472 Shortcut to Hedge Maze: 475 Shortcut to Hedge Maze:
473 id: Maze Area Doors/Door_trace_trace 476 id: Maze Area Doors/Door_trace_trace
474 group: Hedge Maze Doors 477 door_group: Hedge Maze Doors
475 panels: 478 panels:
476 - TRACE 479 - TRACE
477 Near RAT Door: 480 Near RAT Door:
478 id: Appendix Room Area Doors/Door_deadend_deadened 481 id: Appendix Room Area Doors/Door_deadend_deadened
479 skip_location: True 482 skip_location: True
480 group: Dead End Area Access 483 door_group: Dead End Area Access
481 panels: 484 panels:
482 - room: Hidden Room 485 - room: Hidden Room
483 panel: DEAD END 486 panel: DEAD END
484 Traveled Entrance: 487 Traveled Entrance:
485 id: Appendix Room Area Doors/Door_open_open 488 id: Appendix Room Area Doors/Door_open_open
486 item_name: The Traveled - Entrance 489 item_name: The Traveled - Entrance
487 group: Entrance to The Traveled 490 door_group: Entrance to The Traveled
491 item_group: Achievement Room Entrances
488 panels: 492 panels:
489 - OPEN 493 - OPEN
490 Lost Door: 494 Lost Door:
@@ -546,6 +550,7 @@
546 doors: 550 doors:
547 Sun Painting: 551 Sun Painting:
548 item_name: Pilgrim Room - Sun Painting 552 item_name: Pilgrim Room - Sun Painting
553 item_group: Paintings
549 location_name: Pilgrim Room - HOT CRUST 554 location_name: Pilgrim Room - HOT CRUST
550 painting_id: pilgrim_painting2 555 painting_id: pilgrim_painting2
551 panels: 556 panels:
@@ -715,12 +720,14 @@
715 doors: 720 doors:
716 Tenacious Entrance: 721 Tenacious Entrance:
717 id: Palindrome Room Area Doors/Door_decay_day 722 id: Palindrome Room Area Doors/Door_decay_day
718 group: Entrances to The Tenacious 723 door_group: Entrances to The Tenacious
724 item_group: Achievement Room Entrances
719 panels: 725 panels:
720 - DECAY 726 - DECAY
721 Discerning Entrance: 727 Discerning Entrance:
722 id: Shuffle Room Area Doors/Door_nope_open 728 id: Shuffle Room Area Doors/Door_nope_open
723 item_name: The Discerning - Entrance 729 item_name: The Discerning - Entrance
730 item_group: Achievement Room Entrances
724 panels: 731 panels:
725 - NOPE 732 - NOPE
726 Tower Entrance: 733 Tower Entrance:
@@ -729,13 +736,13 @@
729 - Shuffle Room Area Doors/Door_tower2 736 - Shuffle Room Area Doors/Door_tower2
730 - Shuffle Room Area Doors/Door_tower3 737 - Shuffle Room Area Doors/Door_tower3
731 - Shuffle Room Area Doors/Door_tower4 738 - Shuffle Room Area Doors/Door_tower4
732 group: Crossroads - Tower Entrances 739 door_group: Crossroads - Tower Entrances
733 panels: 740 panels:
734 - WE ROT 741 - WE ROT
735 Tower Back Entrance: 742 Tower Back Entrance:
736 id: Shuffle Room Area Doors/Door_runt 743 id: Shuffle Room Area Doors/Door_runt
737 location_name: Crossroads - TURN/RUNT 744 location_name: Crossroads - TURN/RUNT
738 group: Crossroads - Tower Entrances 745 door_group: Crossroads - Tower Entrances
739 panels: 746 panels:
740 - TURN 747 - TURN
741 - room: Orange Tower Fourth Floor 748 - room: Orange Tower Fourth Floor
@@ -744,20 +751,20 @@
744 id: 751 id:
745 - Shuffle Room Area Doors/Door_words_shuffle_3 752 - Shuffle Room Area Doors/Door_words_shuffle_3
746 - Shuffle Room Area Doors/Door_words_shuffle_4 753 - Shuffle Room Area Doors/Door_words_shuffle_4
747 group: Crossroads Doors 754 door_group: Crossroads Doors
748 panels: 755 panels:
749 - WORDS 756 - WORDS
750 - SWORD 757 - SWORD
751 Eye Wall: 758 Eye Wall:
752 id: Shuffle Room Area Doors/Door_behind 759 id: Shuffle Room Area Doors/Door_behind
753 junk_item: True 760 junk_item: True
754 group: Crossroads Doors 761 door_group: Crossroads Doors
755 panels: 762 panels:
756 - BEND HI 763 - BEND HI
757 Hollow Hallway: 764 Hollow Hallway:
758 id: Shuffle Room Area Doors/Door_crossroads6 765 id: Shuffle Room Area Doors/Door_crossroads6
759 skip_location: True 766 skip_location: True
760 group: Crossroads Doors 767 door_group: Crossroads Doors
761 panels: 768 panels:
762 - BEND HI 769 - BEND HI
763 Roof Access: 770 Roof Access:
@@ -934,7 +941,7 @@
934 - Palindrome Room Area Doors/Door_racecar_racecar_1 941 - Palindrome Room Area Doors/Door_racecar_racecar_1
935 - Palindrome Room Area Doors/Door_solos_solos_1 942 - Palindrome Room Area Doors/Door_solos_solos_1
936 location_name: The Tenacious - Palindromes 943 location_name: The Tenacious - Palindromes
937 group: Entrances to The Tenacious 944 door_group: Entrances to The Tenacious
938 panels: 945 panels:
939 - LEVEL (Black) 946 - LEVEL (Black)
940 - RACECAR (Black) 947 - RACECAR (Black)
@@ -965,7 +972,7 @@
965 id: 972 id:
966 - Symmetry Room Area Doors/Door_near_far 973 - Symmetry Room Area Doors/Door_near_far
967 - Symmetry Room Area Doors/Door_far_near 974 - Symmetry Room Area Doors/Door_far_near
968 group: Symmetry Doors 975 door_group: Symmetry Doors
969 item_name: Symmetry Room - Near Far Door 976 item_name: Symmetry Room - Near Far Door
970 location_name: Symmetry Room - NEAR, FAR 977 location_name: Symmetry Room - NEAR, FAR
971 panels: 978 panels:
@@ -992,7 +999,7 @@
992 id: 999 id:
993 - Symmetry Room Area Doors/Door_warts_straw 1000 - Symmetry Room Area Doors/Door_warts_straw
994 - Symmetry Room Area Doors/Door_straw_warts 1001 - Symmetry Room Area Doors/Door_straw_warts
995 group: Symmetry Doors 1002 door_group: Symmetry Doors
996 item_name: Symmetry Room - Warts Straw Door 1003 item_name: Symmetry Room - Warts Straw Door
997 location_name: Symmetry Room - WARTS, STRAW 1004 location_name: Symmetry Room - WARTS, STRAW
998 panels: 1005 panels:
@@ -1019,7 +1026,7 @@
1019 id: 1026 id:
1020 - Symmetry Room Area Doors/Door_leaf_feel 1027 - Symmetry Room Area Doors/Door_leaf_feel
1021 - Symmetry Room Area Doors/Door_feel_leaf 1028 - Symmetry Room Area Doors/Door_feel_leaf
1022 group: Symmetry Doors 1029 door_group: Symmetry Doors
1023 item_name: Symmetry Room - Leaf Feel Door 1030 item_name: Symmetry Room - Leaf Feel Door
1024 location_name: Symmetry Room - LEAF, FEEL 1031 location_name: Symmetry Room - LEAF, FEEL
1025 panels: 1032 panels:
@@ -1156,34 +1163,37 @@
1156 doors: 1163 doors:
1157 Tenacious Entrance: 1164 Tenacious Entrance:
1158 id: Palindrome Room Area Doors/Door_massacred_sacred 1165 id: Palindrome Room Area Doors/Door_massacred_sacred
1159 group: Entrances to The Tenacious 1166 door_group: Entrances to The Tenacious
1167 item_group: Achievement Room Entrances
1160 panels: 1168 panels:
1161 - MASSACRED 1169 - MASSACRED
1162 Black Door: 1170 Black Door:
1163 id: Symmetry Room Area Doors/Door_black_white 1171 id: Symmetry Room Area Doors/Door_black_white
1164 group: Entrances to The Tenacious 1172 door_group: Entrances to The Tenacious
1165 panels: 1173 panels:
1166 - BLACK 1174 - BLACK
1167 Agreeable Entrance: 1175 Agreeable Entrance:
1168 id: Symmetry Room Area Doors/Door_close_open 1176 id: Symmetry Room Area Doors/Door_close_open
1169 item_name: The Agreeable - Entrance 1177 item_name: The Agreeable - Entrance
1178 item_group: Achievement Room Entrances
1170 panels: 1179 panels:
1171 - CLOSE 1180 - CLOSE
1172 Painting Shortcut: 1181 Painting Shortcut:
1173 item_name: Starting Room - Street Painting 1182 item_name: Starting Room - Street Painting
1183 item_group: Paintings
1174 painting_id: eyes_yellow_painting2 1184 painting_id: eyes_yellow_painting2
1175 panels: 1185 panels:
1176 - RIGHT 1186 - RIGHT
1177 Purple Barrier: 1187 Purple Barrier:
1178 id: Color Arrow Room Doors/Door_purple_3 1188 id: Color Arrow Room Doors/Door_purple_3
1179 group: Color Hunt Barriers 1189 door_group: Color Hunt Barriers
1180 skip_location: True 1190 skip_location: True
1181 panels: 1191 panels:
1182 - room: Color Hunt 1192 - room: Color Hunt
1183 panel: PURPLE 1193 panel: PURPLE
1184 Hallway Door: 1194 Hallway Door:
1185 id: Red Blue Purple Room Area Doors/Door_room_2 1195 id: Red Blue Purple Room Area Doors/Door_room_2
1186 group: Hallway Room Doors 1196 door_group: Hallway Room Doors
1187 location_name: Hallway Room - First Room 1197 location_name: Hallway Room - First Room
1188 panels: 1198 panels:
1189 - WALL 1199 - WALL
@@ -1229,7 +1239,8 @@
1229 doors: 1239 doors:
1230 Tenacious Entrance: 1240 Tenacious Entrance:
1231 id: Palindrome Room Area Doors/Door_dread_dead 1241 id: Palindrome Room Area Doors/Door_dread_dead
1232 group: Entrances to The Tenacious 1242 door_group: Entrances to The Tenacious
1243 item_group: Achievement Room Entrances
1233 panels: 1244 panels:
1234 - DREAD 1245 - DREAD
1235 The Agreeable: 1246 The Agreeable:
@@ -1298,7 +1309,8 @@
1298 doors: 1309 doors:
1299 Shortcut to Hedge Maze: 1310 Shortcut to Hedge Maze:
1300 id: Symmetry Room Area Doors/Door_bye_hi 1311 id: Symmetry Room Area Doors/Door_bye_hi
1301 group: Hedge Maze Doors 1312 item_group: Achievement Room Entrances
1313 door_group: Hedge Maze Doors
1302 panels: 1314 panels:
1303 - BYE 1315 - BYE
1304 Hedge Maze: 1316 Hedge Maze:
@@ -1391,12 +1403,14 @@
1391 Perceptive Entrance: 1403 Perceptive Entrance:
1392 id: Maze Area Doors/Door_maze_maze 1404 id: Maze Area Doors/Door_maze_maze
1393 item_name: The Perceptive - Entrance 1405 item_name: The Perceptive - Entrance
1394 group: Hedge Maze Doors 1406 door_group: Hedge Maze Doors
1407 item_group: Achievement Room Entrances
1395 panels: 1408 panels:
1396 - DOWN 1409 - DOWN
1397 Painting Shortcut: 1410 Painting Shortcut:
1398 painting_id: garden_painting_tower2 1411 painting_id: garden_painting_tower2
1399 item_name: Starting Room - Hedge Maze Painting 1412 item_name: Starting Room - Hedge Maze Painting
1413 item_group: Paintings
1400 skip_location: True 1414 skip_location: True
1401 panels: 1415 panels:
1402 - DOWN 1416 - DOWN
@@ -1407,7 +1421,8 @@
1407 - Maze Area Doors/Door_look_room_3 1421 - Maze Area Doors/Door_look_room_3
1408 skip_location: True 1422 skip_location: True
1409 item_name: The Observant - Entrance 1423 item_name: The Observant - Entrance
1410 group: Observant Doors 1424 door_group: Observant Doors
1425 item_group: Achievement Room Entrances
1411 panels: 1426 panels:
1412 - room: The Perceptive 1427 - room: The Perceptive
1413 panel: GAZE 1428 panel: GAZE
@@ -1473,7 +1488,7 @@
1473 Second Floor: 1488 Second Floor:
1474 id: Naps Room Doors/Door_hider_5 1489 id: Naps Room Doors/Door_hider_5
1475 location_name: The Fearless - First Floor Puzzles 1490 location_name: The Fearless - First Floor Puzzles
1476 group: Fearless Doors 1491 door_group: Fearless Doors
1477 panels: 1492 panels:
1478 - SPAN 1493 - SPAN
1479 - TEAM 1494 - TEAM
@@ -1525,7 +1540,7 @@
1525 - Naps Room Doors/Door_hider_1b2 1540 - Naps Room Doors/Door_hider_1b2
1526 - Naps Room Doors/Door_hider_new1 1541 - Naps Room Doors/Door_hider_new1
1527 location_name: The Fearless - Second Floor Puzzles 1542 location_name: The Fearless - Second Floor Puzzles
1528 group: Fearless Doors 1543 door_group: Fearless Doors
1529 panels: 1544 panels:
1530 - NONE 1545 - NONE
1531 - SUM 1546 - SUM
@@ -1680,13 +1695,13 @@
1680 doors: 1695 doors:
1681 Backside Door: 1696 Backside Door:
1682 id: Maze Area Doors/Door_backside 1697 id: Maze Area Doors/Door_backside
1683 group: Backside Doors 1698 door_group: Backside Doors
1684 panels: 1699 panels:
1685 - FOUR (1) 1700 - FOUR (1)
1686 - FOUR (2) 1701 - FOUR (2)
1687 Stairs: 1702 Stairs:
1688 id: Maze Area Doors/Door_stairs 1703 id: Maze Area Doors/Door_stairs
1689 group: Observant Doors 1704 door_group: Observant Doors
1690 panels: 1705 panels:
1691 - SIX 1706 - SIX
1692 The Incomparable: 1707 The Incomparable:
@@ -1764,7 +1779,7 @@
1764 Eight Door: 1779 Eight Door:
1765 id: Red Blue Purple Room Area Doors/Door_a_strands 1780 id: Red Blue Purple Room Area Doors/Door_a_strands
1766 location_name: Giant Sevens 1781 location_name: Giant Sevens
1767 group: Observant Doors 1782 door_group: Observant Doors
1768 panels: 1783 panels:
1769 - I (Seven) 1784 - I (Seven)
1770 - room: Courtyard 1785 - room: Courtyard
@@ -1915,13 +1930,13 @@
1915 doors: 1930 doors:
1916 Shortcut to Hub Room: 1931 Shortcut to Hub Room:
1917 id: Shuffle Room Area Doors/Door_secret_secret 1932 id: Shuffle Room Area Doors/Door_secret_secret
1918 group: Orange Tower First Floor - Shortcuts 1933 door_group: Orange Tower First Floor - Shortcuts
1919 panels: 1934 panels:
1920 - SECRET 1935 - SECRET
1921 Salt Pepper Door: 1936 Salt Pepper Door:
1922 id: Count Up Room Area Doors/Door_salt_pepper 1937 id: Count Up Room Area Doors/Door_salt_pepper
1923 location_name: Orange Tower First Floor - Salt Pepper Door 1938 location_name: Orange Tower First Floor - Salt Pepper Door
1924 group: Orange Tower First Floor - Shortcuts 1939 door_group: Orange Tower First Floor - Shortcuts
1925 panels: 1940 panels:
1926 - SALT 1941 - SALT
1927 - room: Directional Gallery 1942 - room: Directional Gallery
@@ -1967,7 +1982,7 @@
1967 doors: 1982 doors:
1968 Red Barrier: 1983 Red Barrier:
1969 id: Color Arrow Room Doors/Door_red_6 1984 id: Color Arrow Room Doors/Door_red_6
1970 group: Color Hunt Barriers 1985 door_group: Color Hunt Barriers
1971 skip_location: True 1986 skip_location: True
1972 panels: 1987 panels:
1973 - room: Color Hunt 1988 - room: Color Hunt
@@ -1975,7 +1990,7 @@
1975 Rhyme Room Entrance: 1990 Rhyme Room Entrance:
1976 id: Double Room Area Doors/Door_room_entry_stairs2 1991 id: Double Room Area Doors/Door_room_entry_stairs2
1977 skip_location: True 1992 skip_location: True
1978 group: Rhyme Room Doors 1993 door_group: Rhyme Room Doors
1979 panels: 1994 panels:
1980 - room: The Tenacious 1995 - room: The Tenacious
1981 panel: LEVEL (Black) 1996 panel: LEVEL (Black)
@@ -1989,7 +2004,7 @@
1989 - Color Arrow Room Doors/Door_orange_hider_2 2004 - Color Arrow Room Doors/Door_orange_hider_2
1990 - Color Arrow Room Doors/Door_orange_hider_3 2005 - Color Arrow Room Doors/Door_orange_hider_3
1991 location_name: Color Barriers - RED and YELLOW 2006 location_name: Color Barriers - RED and YELLOW
1992 group: Color Hunt Barriers 2007 door_group: Color Hunt Barriers
1993 item_name: Color Hunt - Orange Barrier 2008 item_name: Color Hunt - Orange Barrier
1994 panels: 2009 panels:
1995 - RED 2010 - RED
@@ -2150,7 +2165,7 @@
2150 doors: 2165 doors:
2151 Welcome Back: 2166 Welcome Back:
2152 id: Entry Room Area Doors/Door_sizes 2167 id: Entry Room Area Doors/Door_sizes
2153 group: Welcome Back Doors 2168 door_group: Welcome Back Doors
2154 panels: 2169 panels:
2155 - SIZE (Small) 2170 - SIZE (Small)
2156 - SIZE (Big) 2171 - SIZE (Big)
@@ -2404,6 +2419,7 @@
2404 Painting Shortcut: 2419 Painting Shortcut:
2405 painting_id: flower_painting_8 2420 painting_id: flower_painting_8
2406 item_name: Starting Room - Flower Painting 2421 item_name: Starting Room - Flower Painting
2422 item_group: Paintings
2407 skip_location: True 2423 skip_location: True
2408 panels: 2424 panels:
2409 - room: First Second Third Fourth 2425 - room: First Second Third Fourth
@@ -2416,7 +2432,7 @@
2416 panel: FOURTH 2432 panel: FOURTH
2417 Green Barrier: 2433 Green Barrier:
2418 id: Color Arrow Room Doors/Door_green_5 2434 id: Color Arrow Room Doors/Door_green_5
2419 group: Color Hunt Barriers 2435 door_group: Color Hunt Barriers
2420 skip_location: True 2436 skip_location: True
2421 panels: 2437 panels:
2422 - room: Color Hunt 2438 - room: Color Hunt
@@ -2470,7 +2486,7 @@
2470 doors: 2486 doors:
2471 Backside Door: 2487 Backside Door:
2472 id: Count Up Room Area Doors/Door_yellow_backside 2488 id: Count Up Room Area Doors/Door_yellow_backside
2473 group: Backside Doors 2489 door_group: Backside Doors
2474 location_name: Courtyard - FIRST, SECOND, THIRD, FOURTH 2490 location_name: Courtyard - FIRST, SECOND, THIRD, FOURTH
2475 item_name: Courtyard - Backside Door 2491 item_name: Courtyard - Backside Door
2476 panels: 2492 panels:
@@ -2491,7 +2507,7 @@
2491 Progress Door: 2507 Progress Door:
2492 id: Doorway Room Doors/Door_white 2508 id: Doorway Room Doors/Door_white
2493 item_name: The Colorful - White Door 2509 item_name: The Colorful - White Door
2494 group: Colorful Doors 2510 door_group: Colorful Doors
2495 location_name: The Colorful - White 2511 location_name: The Colorful - White
2496 panels: 2512 panels:
2497 - BEGIN 2513 - BEGIN
@@ -2512,7 +2528,7 @@
2512 id: Doorway Room Doors/Door_black 2528 id: Doorway Room Doors/Door_black
2513 item_name: The Colorful - Black Door 2529 item_name: The Colorful - Black Door
2514 location_name: The Colorful - Black 2530 location_name: The Colorful - Black
2515 group: Colorful Doors 2531 door_group: Colorful Doors
2516 panels: 2532 panels:
2517 - FOUND 2533 - FOUND
2518 The Colorful (Red): 2534 The Colorful (Red):
@@ -2532,7 +2548,7 @@
2532 id: Doorway Room Doors/Door_red 2548 id: Doorway Room Doors/Door_red
2533 item_name: The Colorful - Red Door 2549 item_name: The Colorful - Red Door
2534 location_name: The Colorful - Red 2550 location_name: The Colorful - Red
2535 group: Colorful Doors 2551 door_group: Colorful Doors
2536 panels: 2552 panels:
2537 - LOAF 2553 - LOAF
2538 The Colorful (Yellow): 2554 The Colorful (Yellow):
@@ -2552,7 +2568,7 @@
2552 id: Doorway Room Doors/Door_yellow 2568 id: Doorway Room Doors/Door_yellow
2553 item_name: The Colorful - Yellow Door 2569 item_name: The Colorful - Yellow Door
2554 location_name: The Colorful - Yellow 2570 location_name: The Colorful - Yellow
2555 group: Colorful Doors 2571 door_group: Colorful Doors
2556 panels: 2572 panels:
2557 - CREAM 2573 - CREAM
2558 The Colorful (Blue): 2574 The Colorful (Blue):
@@ -2572,7 +2588,7 @@
2572 id: Doorway Room Doors/Door_blue 2588 id: Doorway Room Doors/Door_blue
2573 item_name: The Colorful - Blue Door 2589 item_name: The Colorful - Blue Door
2574 location_name: The Colorful - Blue 2590 location_name: The Colorful - Blue
2575 group: Colorful Doors 2591 door_group: Colorful Doors
2576 panels: 2592 panels:
2577 - SUN 2593 - SUN
2578 The Colorful (Purple): 2594 The Colorful (Purple):
@@ -2592,7 +2608,7 @@
2592 id: Doorway Room Doors/Door_purple 2608 id: Doorway Room Doors/Door_purple
2593 item_name: The Colorful - Purple Door 2609 item_name: The Colorful - Purple Door
2594 location_name: The Colorful - Purple 2610 location_name: The Colorful - Purple
2595 group: Colorful Doors 2611 door_group: Colorful Doors
2596 panels: 2612 panels:
2597 - SPOON 2613 - SPOON
2598 The Colorful (Orange): 2614 The Colorful (Orange):
@@ -2612,7 +2628,7 @@
2612 id: Doorway Room Doors/Door_orange 2628 id: Doorway Room Doors/Door_orange
2613 item_name: The Colorful - Orange Door 2629 item_name: The Colorful - Orange Door
2614 location_name: The Colorful - Orange 2630 location_name: The Colorful - Orange
2615 group: Colorful Doors 2631 door_group: Colorful Doors
2616 panels: 2632 panels:
2617 - LETTERS 2633 - LETTERS
2618 The Colorful (Green): 2634 The Colorful (Green):
@@ -2632,7 +2648,7 @@
2632 id: Doorway Room Doors/Door_green 2648 id: Doorway Room Doors/Door_green
2633 item_name: The Colorful - Green Door 2649 item_name: The Colorful - Green Door
2634 location_name: The Colorful - Green 2650 location_name: The Colorful - Green
2635 group: Colorful Doors 2651 door_group: Colorful Doors
2636 panels: 2652 panels:
2637 - WALLS 2653 - WALLS
2638 The Colorful (Brown): 2654 The Colorful (Brown):
@@ -2652,7 +2668,7 @@
2652 id: Doorway Room Doors/Door_brown 2668 id: Doorway Room Doors/Door_brown
2653 item_name: The Colorful - Brown Door 2669 item_name: The Colorful - Brown Door
2654 location_name: The Colorful - Brown 2670 location_name: The Colorful - Brown
2655 group: Colorful Doors 2671 door_group: Colorful Doors
2656 panels: 2672 panels:
2657 - IRON 2673 - IRON
2658 The Colorful (Gray): 2674 The Colorful (Gray):
@@ -2672,7 +2688,7 @@
2672 id: Doorway Room Doors/Door_gray 2688 id: Doorway Room Doors/Door_gray
2673 item_name: The Colorful - Gray Door 2689 item_name: The Colorful - Gray Door
2674 location_name: The Colorful - Gray 2690 location_name: The Colorful - Gray
2675 group: Colorful Doors 2691 door_group: Colorful Doors
2676 panels: 2692 panels:
2677 - OBSTACLE 2693 - OBSTACLE
2678 The Colorful: 2694 The Colorful:
@@ -2768,7 +2784,7 @@
2768 doors: 2784 doors:
2769 Shortcut to Starting Room: 2785 Shortcut to Starting Room:
2770 id: Entry Room Area Doors/Door_return_return 2786 id: Entry Room Area Doors/Door_return_return
2771 group: Welcome Back Doors 2787 door_group: Welcome Back Doors
2772 include_reduce: True 2788 include_reduce: True
2773 panels: 2789 panels:
2774 - WELCOME BACK 2790 - WELCOME BACK
@@ -2793,7 +2809,7 @@
2793 doors: 2809 doors:
2794 Shortcut to Hedge Maze: 2810 Shortcut to Hedge Maze:
2795 id: Maze Area Doors/Door_strays_maze 2811 id: Maze Area Doors/Door_strays_maze
2796 group: Hedge Maze Doors 2812 door_group: Hedge Maze Doors
2797 panels: 2813 panels:
2798 - STRAYS 2814 - STRAYS
2799 paintings: 2815 paintings:
@@ -2916,14 +2932,14 @@
2916 - UNCOVER 2932 - UNCOVER
2917 Blue Barrier: 2933 Blue Barrier:
2918 id: Color Arrow Room Doors/Door_blue_3 2934 id: Color Arrow Room Doors/Door_blue_3
2919 group: Color Hunt Barriers 2935 door_group: Color Hunt Barriers
2920 skip_location: True 2936 skip_location: True
2921 panels: 2937 panels:
2922 - room: Color Hunt 2938 - room: Color Hunt
2923 panel: BLUE 2939 panel: BLUE
2924 Orange Barrier: 2940 Orange Barrier:
2925 id: Color Arrow Room Doors/Door_orange_3 2941 id: Color Arrow Room Doors/Door_orange_3
2926 group: Color Hunt Barriers 2942 door_group: Color Hunt Barriers
2927 skip_location: True 2943 skip_location: True
2928 panels: 2944 panels:
2929 - room: Color Hunt 2945 - room: Color Hunt
@@ -2931,6 +2947,7 @@
2931 Initiated Entrance: 2947 Initiated Entrance:
2932 id: Red Blue Purple Room Area Doors/Door_locked_knocked 2948 id: Red Blue Purple Room Area Doors/Door_locked_knocked
2933 item_name: The Initiated - Entrance 2949 item_name: The Initiated - Entrance
2950 item_group: Achievement Room Entrances
2934 panels: 2951 panels:
2935 - OXEN 2952 - OXEN
2936 # These would be more appropriate in Champion's Rest, but as currently 2953 # These would be more appropriate in Champion's Rest, but as currently
@@ -2940,7 +2957,7 @@
2940 id: Color Arrow Room Doors/Door_green_hider_1 2957 id: Color Arrow Room Doors/Door_green_hider_1
2941 location_name: Color Barriers - BLUE and YELLOW 2958 location_name: Color Barriers - BLUE and YELLOW
2942 item_name: Color Hunt - Green Barrier 2959 item_name: Color Hunt - Green Barrier
2943 group: Color Hunt Barriers 2960 door_group: Color Hunt Barriers
2944 panels: 2961 panels:
2945 - BLUE 2962 - BLUE
2946 - room: Directional Gallery 2963 - room: Directional Gallery
@@ -2952,7 +2969,7 @@
2952 - Color Arrow Room Doors/Door_purple_hider_3 2969 - Color Arrow Room Doors/Door_purple_hider_3
2953 location_name: Color Barriers - RED and BLUE 2970 location_name: Color Barriers - RED and BLUE
2954 item_name: Color Hunt - Purple Barrier 2971 item_name: Color Hunt - Purple Barrier
2955 group: Color Hunt Barriers 2972 door_group: Color Hunt Barriers
2956 panels: 2973 panels:
2957 - BLUE 2974 - BLUE
2958 - room: Orange Tower Third Floor 2975 - room: Orange Tower Third Floor
@@ -2972,6 +2989,7 @@
2972 panel: PURPLE 2989 panel: PURPLE
2973 Eight Door: 2990 Eight Door:
2974 id: Red Blue Purple Room Area Doors/Door_a_strands2 2991 id: Red Blue Purple Room Area Doors/Door_a_strands2
2992 item_group: Achievement Room Entrances
2975 skip_location: True 2993 skip_location: True
2976 panels: 2994 panels:
2977 - room: The Incomparable 2995 - room: The Incomparable
@@ -3189,7 +3207,8 @@
3189 doors: 3207 doors:
3190 Color Hallways Entrance: 3208 Color Hallways Entrance:
3191 id: Appendix Room Area Doors/Door_hello_hi 3209 id: Appendix Room Area Doors/Door_hello_hi
3192 group: Entrance to The Traveled 3210 door_group: Entrance to The Traveled
3211 item_group: Achievement Room Entrances
3193 panels: 3212 panels:
3194 - HELLO 3213 - HELLO
3195 Color Hallways: 3214 Color Hallways:
@@ -3305,17 +3324,20 @@
3305 Bold Entrance: 3324 Bold Entrance:
3306 id: Red Blue Purple Room Area Doors/Door_unopened_open 3325 id: Red Blue Purple Room Area Doors/Door_unopened_open
3307 item_name: The Bold - Entrance 3326 item_name: The Bold - Entrance
3327 item_group: Achievement Room Entrances
3308 panels: 3328 panels:
3309 - UNOPEN 3329 - UNOPEN
3310 Painting Shortcut: 3330 Painting Shortcut:
3311 painting_id: pencil_painting6 3331 painting_id: pencil_painting6
3312 skip_location: True 3332 skip_location: True
3313 item_name: Starting Room - Pencil Painting 3333 item_name: Starting Room - Pencil Painting
3334 item_group: Paintings
3314 panels: 3335 panels:
3315 - UNOPEN 3336 - UNOPEN
3316 Steady Entrance: 3337 Steady Entrance:
3317 id: Rock Room Doors/Door_2 3338 id: Rock Room Doors/Door_2
3318 item_name: The Steady - Entrance 3339 item_name: The Steady - Entrance
3340 item_group: Achievement Room Entrances
3319 panels: 3341 panels:
3320 - BEGIN 3342 - BEGIN
3321 Lilac Entrance: 3343 Lilac Entrance:
@@ -3536,6 +3558,7 @@
3536 Undeterred Entrance: 3558 Undeterred Entrance:
3537 id: Red Blue Purple Room Area Doors/Door_pen_open 3559 id: Red Blue Purple Room Area Doors/Door_pen_open
3538 item_name: The Undeterred - Entrance 3560 item_name: The Undeterred - Entrance
3561 item_group: Achievement Room Entrances
3539 panels: 3562 panels:
3540 - PEN 3563 - PEN
3541 Painting Shortcut: 3564 Painting Shortcut:
@@ -3544,11 +3567,13 @@
3544 - arrows_painting3 3567 - arrows_painting3
3545 skip_location: True 3568 skip_location: True
3546 item_name: Starting Room - Blue Painting 3569 item_name: Starting Room - Blue Painting
3570 item_group: Paintings
3547 panels: 3571 panels:
3548 - PEN 3572 - PEN
3549 Green Painting: 3573 Green Painting:
3550 painting_id: maze_painting_3 3574 painting_id: maze_painting_3
3551 skip_location: True 3575 skip_location: True
3576 item_group: Paintings
3552 panels: 3577 panels:
3553 - FOUR 3578 - FOUR
3554 Twos: 3579 Twos:
@@ -3556,6 +3581,7 @@
3556 - Count Up Room Area Doors/Door_two_hider 3581 - Count Up Room Area Doors/Door_two_hider
3557 - Count Up Room Area Doors/Door_two_hider_2 3582 - Count Up Room Area Doors/Door_two_hider_2
3558 include_reduce: True 3583 include_reduce: True
3584 item_group: Numbers
3559 panels: 3585 panels:
3560 - ONE 3586 - ONE
3561 Threes: 3587 Threes:
@@ -3565,6 +3591,7 @@
3565 - Count Up Room Area Doors/Door_three_hider_3 3591 - Count Up Room Area Doors/Door_three_hider_3
3566 location_name: Twos 3592 location_name: Twos
3567 include_reduce: True 3593 include_reduce: True
3594 item_group: Numbers
3568 panels: 3595 panels:
3569 - TWO (1) 3596 - TWO (1)
3570 - TWO (2) 3597 - TWO (2)
@@ -3583,6 +3610,7 @@
3583 - Count Up Room Area Doors/Door_four_hider_3 3610 - Count Up Room Area Doors/Door_four_hider_3
3584 - Count Up Room Area Doors/Door_four_hider_4 3611 - Count Up Room Area Doors/Door_four_hider_4
3585 skip_location: True 3612 skip_location: True
3613 item_group: Numbers
3586 panels: 3614 panels:
3587 - THREE (1) 3615 - THREE (1)
3588 - THREE (2) 3616 - THREE (2)
@@ -3594,6 +3622,7 @@
3594 - Count Up Room Area Doors/Door_five_hider_5 3622 - Count Up Room Area Doors/Door_five_hider_5
3595 location_name: Fours 3623 location_name: Fours
3596 item_name: Number Hunt - Fives 3624 item_name: Number Hunt - Fives
3625 item_group: Numbers
3597 include_reduce: True 3626 include_reduce: True
3598 panels: 3627 panels:
3599 - FOUR 3628 - FOUR
@@ -3606,6 +3635,7 @@
3606 Challenge Entrance: 3635 Challenge Entrance:
3607 id: Count Up Room Area Doors/Door_zero_unlocked 3636 id: Count Up Room Area Doors/Door_zero_unlocked
3608 item_name: Number Hunt - Challenge Entrance 3637 item_name: Number Hunt - Challenge Entrance
3638 item_group: Achievement Room Entrances
3609 panels: 3639 panels:
3610 - ZERO 3640 - ZERO
3611 paintings: 3641 paintings:
@@ -3752,7 +3782,7 @@
3752 doors: 3782 doors:
3753 Door to Directional Gallery: 3783 Door to Directional Gallery:
3754 id: Count Up Room Area Doors/Door_five_unlocked 3784 id: Count Up Room Area Doors/Door_five_unlocked
3755 group: Directional Gallery Doors 3785 door_group: Directional Gallery Doors
3756 skip_location: True 3786 skip_location: True
3757 panels: 3787 panels:
3758 - FIVE 3788 - FIVE
@@ -3766,6 +3796,7 @@
3766 - Count Up Room Area Doors/Door_six_hider_6 3796 - Count Up Room Area Doors/Door_six_hider_6
3767 painting_id: pencil_painting3 # See note in Outside The Bold 3797 painting_id: pencil_painting3 # See note in Outside The Bold
3768 location_name: Fives 3798 location_name: Fives
3799 item_group: Numbers
3769 include_reduce: True 3800 include_reduce: True
3770 panels: 3801 panels:
3771 - FIVE 3802 - FIVE
@@ -3788,6 +3819,7 @@
3788 - Count Up Room Area Doors/Door_seven_hider_6 3819 - Count Up Room Area Doors/Door_seven_hider_6
3789 - Count Up Room Area Doors/Door_seven_hider_7 3820 - Count Up Room Area Doors/Door_seven_hider_7
3790 location_name: Sixes 3821 location_name: Sixes
3822 item_group: Numbers
3791 include_reduce: True 3823 include_reduce: True
3792 panels: 3824 panels:
3793 - SIX 3825 - SIX
@@ -3813,6 +3845,7 @@
3813 - Count Up Room Area Doors/Door_eight_hider_7 3845 - Count Up Room Area Doors/Door_eight_hider_7
3814 - Count Up Room Area Doors/Door_eight_hider_8 3846 - Count Up Room Area Doors/Door_eight_hider_8
3815 location_name: Sevens 3847 location_name: Sevens
3848 item_group: Numbers
3816 include_reduce: True 3849 include_reduce: True
3817 panels: 3850 panels:
3818 - SEVEN 3851 - SEVEN
@@ -3840,6 +3873,7 @@
3840 - Count Up Room Area Doors/Door_nine_hider_8 3873 - Count Up Room Area Doors/Door_nine_hider_8
3841 - Count Up Room Area Doors/Door_nine_hider_9 3874 - Count Up Room Area Doors/Door_nine_hider_9
3842 location_name: Eights 3875 location_name: Eights
3876 item_group: Numbers
3843 include_reduce: True 3877 include_reduce: True
3844 panels: 3878 panels:
3845 - EIGHT 3879 - EIGHT
@@ -3862,6 +3896,7 @@
3862 id: Count Up Room Area Doors/Door_zero_hider_2 3896 id: Count Up Room Area Doors/Door_zero_hider_2
3863 location_name: Nines 3897 location_name: Nines
3864 item_name: Outside The Undeterred - Zero Door 3898 item_name: Outside The Undeterred - Zero Door
3899 item_group: Numbers
3865 include_reduce: True 3900 include_reduce: True
3866 panels: 3901 panels:
3867 - NINE 3902 - NINE
@@ -4030,13 +4065,13 @@
4030 doors: 4065 doors:
4031 Shortcut to The Undeterred: 4066 Shortcut to The Undeterred:
4032 id: Count Up Room Area Doors/Door_return_double 4067 id: Count Up Room Area Doors/Door_return_double
4033 group: Directional Gallery Doors 4068 door_group: Directional Gallery Doors
4034 panels: 4069 panels:
4035 - TURN 4070 - TURN
4036 - LEARN 4071 - LEARN
4037 Yellow Barrier: 4072 Yellow Barrier:
4038 id: Color Arrow Room Doors/Door_yellow_4 4073 id: Color Arrow Room Doors/Door_yellow_4
4039 group: Color Hunt Barriers 4074 door_group: Color Hunt Barriers
4040 skip_location: True 4075 skip_location: True
4041 panels: 4076 panels:
4042 - room: Color Hunt 4077 - room: Color Hunt
@@ -4231,11 +4266,12 @@
4231 doors: 4266 doors:
4232 Entrance: 4267 Entrance:
4233 id: Red Blue Purple Room Area Doors/Door_middle_middle 4268 id: Red Blue Purple Room Area Doors/Door_middle_middle
4269 item_group: Achievement Room Entrances
4234 panels: 4270 panels:
4235 - MIDDLE 4271 - MIDDLE
4236 Backside Door: 4272 Backside Door:
4237 id: Red Blue Purple Room Area Doors/Door_locked_knocked2 # yeah... 4273 id: Red Blue Purple Room Area Doors/Door_locked_knocked2 # yeah...
4238 group: Backside Doors 4274 door_group: Backside Doors
4239 panels: 4275 panels:
4240 - FARTHER 4276 - FARTHER
4241 East Entrance: 4277 East Entrance:
@@ -5223,7 +5259,7 @@
5223 - Ceiling Room Doors/Door_blue 5259 - Ceiling Room Doors/Door_blue
5224 - Ceiling Room Doors/Door_blue2 5260 - Ceiling Room Doors/Door_blue2
5225 location_name: The Artistic - Smiley and Panda 5261 location_name: The Artistic - Smiley and Panda
5226 group: Artistic Doors 5262 door_group: Artistic Doors
5227 panels: 5263 panels:
5228 - FINE 5264 - FINE
5229 - BLADE 5265 - BLADE
@@ -5333,7 +5369,7 @@
5333 - Ceiling Room Doors/Door_red 5369 - Ceiling Room Doors/Door_red
5334 - Ceiling Room Doors/Door_red2 5370 - Ceiling Room Doors/Door_red2
5335 location_name: The Artistic - Panda and Lattice 5371 location_name: The Artistic - Panda and Lattice
5336 group: Artistic Doors 5372 door_group: Artistic Doors
5337 panels: 5373 panels:
5338 - EYE (Top) 5374 - EYE (Top)
5339 - EYE (Bottom) 5375 - EYE (Bottom)
@@ -5444,7 +5480,7 @@
5444 - Ceiling Room Doors/Door_black 5480 - Ceiling Room Doors/Door_black
5445 - Ceiling Room Doors/Door_black2 5481 - Ceiling Room Doors/Door_black2
5446 location_name: The Artistic - Lattice and Apple 5482 location_name: The Artistic - Lattice and Apple
5447 group: Artistic Doors 5483 door_group: Artistic Doors
5448 panels: 5484 panels:
5449 - POSH 5485 - POSH
5450 - MALL 5486 - MALL
@@ -5557,7 +5593,7 @@
5557 - Ceiling Room Doors/Door_yellow 5593 - Ceiling Room Doors/Door_yellow
5558 - Ceiling Room Doors/Door_yellow2 5594 - Ceiling Room Doors/Door_yellow2
5559 location_name: The Artistic - Apple and Smiley 5595 location_name: The Artistic - Apple and Smiley
5560 group: Artistic Doors 5596 door_group: Artistic Doors
5561 panels: 5597 panels:
5562 - SPRIG 5598 - SPRIG
5563 - RELEASES 5599 - RELEASES
@@ -5721,7 +5757,7 @@
5721 doors: 5757 doors:
5722 Exit: 5758 Exit:
5723 id: Count Up Room Area Doors/Door_near_near 5759 id: Count Up Room Area Doors/Door_near_near
5724 group: Crossroads Doors 5760 door_group: Crossroads Doors
5725 panels: 5761 panels:
5726 - NEAR 5762 - NEAR
5727 paintings: 5763 paintings:
@@ -5762,6 +5798,7 @@
5762 Wondrous Entrance: 5798 Wondrous Entrance:
5763 id: Red Blue Purple Room Area Doors/Door_wonderland 5799 id: Red Blue Purple Room Area Doors/Door_wonderland
5764 item_name: The Wondrous - Entrance 5800 item_name: The Wondrous - Entrance
5801 item_group: Achievement Room Entrances
5765 panels: 5802 panels:
5766 - SHRINK 5803 - SHRINK
5767 The Wondrous (Doorknob): 5804 The Wondrous (Doorknob):
@@ -5782,6 +5819,7 @@
5782 - arrows_painting2 5819 - arrows_painting2
5783 skip_location: True 5820 skip_location: True
5784 item_name: Starting Room - Symmetry Painting 5821 item_name: Starting Room - Symmetry Painting
5822 item_group: Paintings
5785 panels: 5823 panels:
5786 - room: Outside The Wondrous 5824 - room: Outside The Wondrous
5787 panel: SHRINK 5825 panel: SHRINK
@@ -5886,6 +5924,7 @@
5886 doors: 5924 doors:
5887 Exit: 5925 Exit:
5888 id: Red Blue Purple Room Area Doors/Door_wonderland_exit 5926 id: Red Blue Purple Room Area Doors/Door_wonderland_exit
5927 item_group: Paintings
5889 painting_id: arrows_painting_9 5928 painting_id: arrows_painting_9
5890 include_reduce: True 5929 include_reduce: True
5891 panels: 5930 panels:
@@ -5955,7 +5994,7 @@
5955 Exit: 5994 Exit:
5956 id: Red Blue Purple Room Area Doors/Door_room_3 5995 id: Red Blue Purple Room Area Doors/Door_room_3
5957 location_name: Hallway Room - Second Room 5996 location_name: Hallway Room - Second Room
5958 group: Hallway Room Doors 5997 door_group: Hallway Room Doors
5959 panels: 5998 panels:
5960 - WISE 5999 - WISE
5961 - CLOCK 6000 - CLOCK
@@ -5992,7 +6031,7 @@
5992 Exit: 6031 Exit:
5993 id: Red Blue Purple Room Area Doors/Door_room_4 6032 id: Red Blue Purple Room Area Doors/Door_room_4
5994 location_name: Hallway Room - Third Room 6033 location_name: Hallway Room - Third Room
5995 group: Hallway Room Doors 6034 door_group: Hallway Room Doors
5996 panels: 6035 panels:
5997 - TRANCE 6036 - TRANCE
5998 - FORM 6037 - FORM
@@ -6014,7 +6053,7 @@
6014 id: 6053 id:
6015 - Red Blue Purple Room Area Doors/Door_room_5 6054 - Red Blue Purple Room Area Doors/Door_room_5
6016 - Red Blue Purple Room Area Doors/Door_room_6 # this is the connection to The Artistic 6055 - Red Blue Purple Room Area Doors/Door_room_6 # this is the connection to The Artistic
6017 group: Hallway Room Doors 6056 door_group: Hallway Room Doors
6018 location_name: Hallway Room - Fourth Room 6057 location_name: Hallway Room - Fourth Room
6019 panels: 6058 panels:
6020 - WHEEL 6059 - WHEEL
@@ -6082,6 +6121,7 @@
6082 Wanderer Entrance: 6121 Wanderer Entrance:
6083 id: Tower Room Area Doors/Door_wanderer_entrance 6122 id: Tower Room Area Doors/Door_wanderer_entrance
6084 item_name: The Wanderer - Entrance 6123 item_name: The Wanderer - Entrance
6124 item_group: Achievement Room Entrances
6085 panels: 6125 panels:
6086 - WANDERLUST 6126 - WANDERLUST
6087 Tower Entrance: 6127 Tower Entrance:
@@ -6222,6 +6262,7 @@
6222 id: Tower Room Area Doors/Door_painting_exit 6262 id: Tower Room Area Doors/Door_painting_exit
6223 include_reduce: True 6263 include_reduce: True
6224 item_name: Orange Tower Fifth Floor - Quadruple Intersection 6264 item_name: Orange Tower Fifth Floor - Quadruple Intersection
6265 item_group: Achievement Room Entrances
6225 panels: 6266 panels:
6226 - ORDER 6267 - ORDER
6227 paintings: 6268 paintings:
@@ -6417,7 +6458,7 @@
6417 - Double Room Area Doors/Door_room_3a 6458 - Double Room Area Doors/Door_room_3a
6418 - Double Room Area Doors/Door_room_3bc 6459 - Double Room Area Doors/Door_room_3bc
6419 skip_location: True 6460 skip_location: True
6420 group: Rhyme Room Doors 6461 door_group: Rhyme Room Doors
6421 panels: 6462 panels:
6422 - SCHEME 6463 - SCHEME
6423 - FANTASY 6464 - FANTASY
@@ -6518,7 +6559,7 @@
6518 Exit: 6559 Exit:
6519 id: Double Room Area Doors/Door_room_exit 6560 id: Double Room Area Doors/Door_room_exit
6520 location_name: Rhyme Room (Cross) - Exit Puzzles 6561 location_name: Rhyme Room (Cross) - Exit Puzzles
6521 group: Rhyme Room Doors 6562 door_group: Rhyme Room Doors
6522 panels: 6563 panels:
6523 - PLUMP 6564 - PLUMP
6524 - BOUNCE 6565 - BOUNCE
@@ -6581,7 +6622,7 @@
6581 - Double Room Area Doors/Door_room_2b 6622 - Double Room Area Doors/Door_room_2b
6582 - Double Room Area Doors/Door_room_3b 6623 - Double Room Area Doors/Door_room_3b
6583 location_name: Rhyme Room - Circle/Smiley Wall 6624 location_name: Rhyme Room - Circle/Smiley Wall
6584 group: Rhyme Room Doors 6625 door_group: Rhyme Room Doors
6585 panels: 6626 panels:
6586 - BIRD 6627 - BIRD
6587 - LETTER 6628 - LETTER
@@ -6664,7 +6705,7 @@
6664 - Double Room Area Doors/Door_room_2a 6705 - Double Room Area Doors/Door_room_2a
6665 - Double Room Area Doors/Door_room_1c 6706 - Double Room Area Doors/Door_room_1c
6666 location_name: Rhyme Room - Circle/Looped Square Wall 6707 location_name: Rhyme Room - Circle/Looped Square Wall
6667 group: Rhyme Room Doors 6708 door_group: Rhyme Room Doors
6668 panels: 6709 panels:
6669 - WALKED 6710 - WALKED
6670 - OBSTRUCTED 6711 - OBSTRUCTED
@@ -6683,7 +6724,7 @@
6683 - Double Room Area Doors/Door_room_1a 6724 - Double Room Area Doors/Door_room_1a
6684 - Double Room Area Doors/Door_room_5a 6725 - Double Room Area Doors/Door_room_5a
6685 location_name: Rhyme Room - Cross/Looped Square Wall 6726 location_name: Rhyme Room - Cross/Looped Square Wall
6686 group: Rhyme Room Doors 6727 door_group: Rhyme Room Doors
6687 panels: 6728 panels:
6688 - SKIES 6729 - SKIES
6689 - SWELL 6730 - SWELL
@@ -6702,7 +6743,7 @@
6702 - Double Room Area Doors/Door_room_1b 6743 - Double Room Area Doors/Door_room_1b
6703 - Double Room Area Doors/Door_room_4b 6744 - Double Room Area Doors/Door_room_4b
6704 location_name: Rhyme Room - Target/Looped Square Wall 6745 location_name: Rhyme Room - Target/Looped Square Wall
6705 group: Rhyme Room Doors 6746 door_group: Rhyme Room Doors
6706 panels: 6747 panels:
6707 - PENNED 6748 - PENNED
6708 - CLIMB 6749 - CLIMB
@@ -6765,7 +6806,7 @@
6765 Door to Cross: 6806 Door to Cross:
6766 id: Double Room Area Doors/Door_room_4a 6807 id: Double Room Area Doors/Door_room_4a
6767 location_name: Rhyme Room (Target) - Puzzles Toward Cross 6808 location_name: Rhyme Room (Target) - Puzzles Toward Cross
6768 group: Rhyme Room Doors 6809 door_group: Rhyme Room Doors
6769 panels: 6810 panels:
6770 - PISTOL 6811 - PISTOL
6771 - GEM 6812 - GEM
@@ -7016,6 +7057,7 @@
7016 Wise Entrance: 7057 Wise Entrance:
7017 id: Clock Room Area Doors/Door_time_start 7058 id: Clock Room Area Doors/Door_time_start
7018 item_name: The Wise - Entrance 7059 item_name: The Wise - Entrance
7060 item_group: Achievement Room Entrances
7019 panels: 7061 panels:
7020 - KITTEN 7062 - KITTEN
7021 - CAT 7063 - CAT
@@ -7269,6 +7311,7 @@
7269 Scientific Entrance: 7311 Scientific Entrance:
7270 id: Red Blue Purple Room Area Doors/Door_chemistry_lab 7312 id: Red Blue Purple Room Area Doors/Door_chemistry_lab
7271 item_name: The Scientific - Entrance 7313 item_name: The Scientific - Entrance
7314 item_group: Achievement Room Entrances
7272 panels: 7315 panels:
7273 - OPEN 7316 - OPEN
7274 The Scientific: 7317 The Scientific:
@@ -7704,5 +7747,6 @@
7704 doors: 7747 doors:
7705 Welcome Door: 7748 Welcome Door:
7706 id: Entry Room Area Doors/Door_challenge_challenge 7749 id: Entry Room Area Doors/Door_challenge_challenge
7750 item_group: Achievement Room Entrances
7707 panels: 7751 panels:
7708 - WELCOME 7752 - WELCOME
diff --git a/data/generated.dat b/data/generated.dat index 49ea60d..3bd8ff5 100644 --- a/data/generated.dat +++ b/data/generated.dat
Binary files differ
diff --git a/datatypes.py b/datatypes.py index eb5c879..e9bf0a3 100644 --- a/datatypes.py +++ b/datatypes.py
@@ -32,9 +32,10 @@ class Door(NamedTuple):
32 has_doors: bool 32 has_doors: bool
33 painting_ids: List[str] 33 painting_ids: List[str]
34 event: bool 34 event: bool
35 group: Optional[str] 35 door_group: Optional[str]
36 include_reduce: bool 36 include_reduce: bool
37 junk_item: bool 37 junk_item: bool
38 item_group: Optional[str]
38 39
39 40
40class Panel(NamedTuple): 41class Panel(NamedTuple):
diff --git a/items.py b/items.py index 623cd79..b9c4eb7 100644 --- a/items.py +++ b/items.py
@@ -42,14 +42,16 @@ class LingoItem(Item):
42 42
43 43
44ALL_ITEM_TABLE: Dict[str, ItemData] = {} 44ALL_ITEM_TABLE: Dict[str, ItemData] = {}
45ITEMS_BY_GROUP: Dict[str, List[str]] = {}
45 46
46 47
47def load_item_data(): 48def load_item_data():
48 global ALL_ITEM_TABLE 49 global ALL_ITEM_TABLE, ITEMS_BY_GROUP
49 50
50 for color in ["Black", "Red", "Blue", "Yellow", "Green", "Orange", "Gray", "Brown", "Purple"]: 51 for color in ["Black", "Red", "Blue", "Yellow", "Green", "Orange", "Gray", "Brown", "Purple"]:
51 ALL_ITEM_TABLE[color] = ItemData(get_special_item_id(color), ItemClassification.progression, 52 ALL_ITEM_TABLE[color] = ItemData(get_special_item_id(color), ItemClassification.progression,
52 "colors", [], []) 53 "colors", [], [])
54 ITEMS_BY_GROUP.setdefault("Colors", []).append(color)
53 55
54 door_groups: Dict[str, List[str]] = {} 56 door_groups: Dict[str, List[str]] = {}
55 for room_name, doors in DOORS_BY_ROOM.items(): 57 for room_name, doors in DOORS_BY_ROOM.items():
@@ -57,11 +59,11 @@ def load_item_data():
57 if door.skip_item is True or door.event is True: 59 if door.skip_item is True or door.event is True:
58 continue 60 continue
59 61
60 if door.group is None: 62 if door.door_group is None:
61 door_mode = "doors" 63 door_mode = "doors"
62 else: 64 else:
63 door_mode = "complex door" 65 door_mode = "complex door"
64 door_groups.setdefault(door.group, []) 66 door_groups.setdefault(door.door_group, [])
65 67
66 if room_name in PROGRESSION_BY_ROOM and door_name in PROGRESSION_BY_ROOM[room_name]: 68 if room_name in PROGRESSION_BY_ROOM and door_name in PROGRESSION_BY_ROOM[room_name]:
67 door_mode = "special" 69 door_mode = "special"
@@ -70,10 +72,15 @@ def load_item_data():
70 ItemData(get_door_item_id(room_name, door_name), 72 ItemData(get_door_item_id(room_name, door_name),
71 ItemClassification.filler if door.junk_item else ItemClassification.progression, door_mode, 73 ItemClassification.filler if door.junk_item else ItemClassification.progression, door_mode,
72 door.has_doors, door.painting_ids) 74 door.has_doors, door.painting_ids)
75 ITEMS_BY_GROUP.setdefault("Doors", []).append(door.item_name)
76
77 if door.item_group is not None:
78 ITEMS_BY_GROUP.setdefault(door.item_group, []).append(door.item_name)
73 79
74 for group, group_door_ids in door_groups.items(): 80 for group, group_door_ids in door_groups.items():
75 ALL_ITEM_TABLE[group] = ItemData(get_door_group_item_id(group), 81 ALL_ITEM_TABLE[group] = ItemData(get_door_group_item_id(group),
76 ItemClassification.progression, "door group", True, []) 82 ItemClassification.progression, "door group", True, [])
83 ITEMS_BY_GROUP.setdefault("Doors", []).append(group)
77 84
78 special_items: Dict[str, ItemClassification] = { 85 special_items: Dict[str, ItemClassification] = {
79 ":)": ItemClassification.filler, 86 ":)": ItemClassification.filler,
@@ -90,6 +97,11 @@ def load_item_data():
90 ALL_ITEM_TABLE[item_name] = ItemData(get_special_item_id(item_name), classification, 97 ALL_ITEM_TABLE[item_name] = ItemData(get_special_item_id(item_name), classification,
91 "special", False, []) 98 "special", False, [])
92 99
100 if classification == ItemClassification.filler:
101 ITEMS_BY_GROUP.setdefault("Junk", []).append(item_name)
102 elif classification == ItemClassification.trap:
103 ITEMS_BY_GROUP.setdefault("Traps", []).append(item_name)
104
93 for item_name in PROGRESSIVE_ITEMS: 105 for item_name in PROGRESSIVE_ITEMS:
94 ALL_ITEM_TABLE[item_name] = ItemData(get_progressive_item_id(item_name), 106 ALL_ITEM_TABLE[item_name] = ItemData(get_progressive_item_id(item_name),
95 ItemClassification.progression, "special", False, []) 107 ItemClassification.progression, "special", False, [])
diff --git a/locations.py b/locations.py index e66ebac..92ee309 100644 --- a/locations.py +++ b/locations.py
@@ -30,10 +30,11 @@ class LingoLocation(Location):
30 30
31 31
32ALL_LOCATION_TABLE: Dict[str, LocationData] = {} 32ALL_LOCATION_TABLE: Dict[str, LocationData] = {}
33LOCATIONS_BY_GROUP: Dict[str, List[str]] = {}
33 34
34 35
35def load_location_data(): 36def load_location_data():
36 global ALL_LOCATION_TABLE 37 global ALL_LOCATION_TABLE, LOCATIONS_BY_GROUP
37 38
38 for room_name, panels in PANELS_BY_ROOM.items(): 39 for room_name, panels in PANELS_BY_ROOM.items():
39 for panel_name, panel in panels.items(): 40 for panel_name, panel in panels.items():
@@ -50,6 +51,9 @@ def load_location_data():
50 LocationData(get_panel_location_id(room_name, panel_name), room_name, 51 LocationData(get_panel_location_id(room_name, panel_name), room_name,
51 [RoomAndPanel(None, panel_name)], classification) 52 [RoomAndPanel(None, panel_name)], classification)
52 53
54 if panel.achievement:
55 LOCATIONS_BY_GROUP.setdefault("Achievements", []).append(location_name)
56
53 for room_name, doors in DOORS_BY_ROOM.items(): 57 for room_name, doors in DOORS_BY_ROOM.items():
54 for door_name, door in doors.items(): 58 for door_name, door in doors.items():
55 if door.skip_location or door.event or door.panels is None: 59 if door.skip_location or door.event or door.panels is None:
diff --git a/player_logic.py b/player_logic.py index f5eb986..b3cefa5 100644 --- a/player_logic.py +++ b/player_logic.py
@@ -150,9 +150,9 @@ class LingoPlayerLogic:
150 for room_name, room_data in DOORS_BY_ROOM.items(): 150 for room_name, room_data in DOORS_BY_ROOM.items():
151 for door_name, door_data in room_data.items(): 151 for door_name, door_data in room_data.items():
152 if door_data.skip_item is False and door_data.event is False: 152 if door_data.skip_item is False and door_data.event is False:
153 if door_data.group is not None and door_shuffle == ShuffleDoors.option_simple: 153 if door_data.door_group is not None and door_shuffle == ShuffleDoors.option_simple:
154 # Grouped doors are handled differently if shuffle doors is on simple. 154 # Grouped doors are handled differently if shuffle doors is on simple.
155 self.set_door_item(room_name, door_name, door_data.group) 155 self.set_door_item(room_name, door_name, door_data.door_group)
156 else: 156 else:
157 self.handle_non_grouped_door(room_name, door_data, world) 157 self.handle_non_grouped_door(room_name, door_data, world)
158 158
diff --git a/utils/pickle_static_data.py b/utils/pickle_static_data.py index c7a2711..5d6fa1e 100644 --- a/utils/pickle_static_data.py +++ b/utils/pickle_static_data.py
@@ -255,10 +255,15 @@ def process_door(room_name, door_name, door_data):
255 else: 255 else:
256 junk_item = False 256 junk_item = False
257 257
258 if "group" in door_data: 258 if "door_group" in door_data:
259 group = door_data["group"] 259 door_group = door_data["door_group"]
260 else: 260 else:
261 group = None 261 door_group = None
262
263 if "item_group" in door_data:
264 item_group = door_data["item_group"]
265 else:
266 item_group = None
262 267
263 # panels is a list of panels. Each panel can either be a simple string (the name of a panel in the current room) or 268 # panels is a list of panels. Each panel can either be a simple string (the name of a panel in the current room) or
264 # a dictionary specifying a panel in a different room. 269 # a dictionary specifying a panel in a different room.
@@ -308,7 +313,7 @@ def process_door(room_name, door_name, door_data):
308 painting_ids = [] 313 painting_ids = []
309 314
310 door_obj = Door(door_name, item_name, location_name, panels, skip_location, skip_item, has_doors, 315 door_obj = Door(door_name, item_name, location_name, panels, skip_location, skip_item, has_doors,
311 painting_ids, event, group, include_reduce, junk_item) 316 painting_ids, event, door_group, include_reduce, junk_item, item_group)
312 317
313 DOORS_BY_ROOM[room_name][door_name] = door_obj 318 DOORS_BY_ROOM[room_name][door_name] = door_obj
314 319
diff --git a/utils/validate_config.rb b/utils/validate_config.rb index 96ed9fc..ae0ac61 100644 --- a/utils/validate_config.rb +++ b/utils/validate_config.rb
@@ -42,7 +42,7 @@ door_groups = {}
42 42
43directives = Set["entrances", "panels", "doors", "paintings", "progression"] 43directives = Set["entrances", "panels", "doors", "paintings", "progression"]
44panel_directives = Set["id", "required_room", "required_door", "required_panel", "colors", "check", "exclude_reduce", "tag", "link", "subtag", "achievement", "copy_to_sign", "non_counting", "hunt"] 44panel_directives = Set["id", "required_room", "required_door", "required_panel", "colors", "check", "exclude_reduce", "tag", "link", "subtag", "achievement", "copy_to_sign", "non_counting", "hunt"]
45door_directives = Set["id", "painting_id", "panels", "item_name", "location_name", "skip_location", "skip_item", "group", "include_reduce", "junk_item", "event"] 45door_directives = Set["id", "painting_id", "panels", "item_name", "item_group", "location_name", "skip_location", "skip_item", "door_group", "include_reduce", "junk_item", "event"]
46painting_directives = Set["id", "enter_only", "exit_only", "orientation", "required_door", "required", "required_when_no_doors", "move", "req_blocked", "req_blocked_when_no_doors"] 46painting_directives = Set["id", "enter_only", "exit_only", "orientation", "required_door", "required", "required_when_no_doors", "move", "req_blocked", "req_blocked_when_no_doors"]
47 47
48non_counting = 0 48non_counting = 0