From aabc86fc0195408ed76d35c4e32c8ca1e193e832 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Wed, 30 Mar 2022 21:34:39 -0400 Subject: [PATCH] ArchipIDLE "Improvements" (#366) * Increase ArchipIDLE location count to 150 * Reduce location count per seed to 100. Game will now complete between 50 and 100 minutes. * Add 50 more items to ArchipIDLE * Update data_version to 2 --- worlds/archipidle/Items.py | 54 +++++++++++++++++++++++++++++++++-- worlds/archipidle/Rules.py | 8 +++--- worlds/archipidle/__init__.py | 4 +-- 3 files changed, 58 insertions(+), 8 deletions(-) diff --git a/worlds/archipidle/Items.py b/worlds/archipidle/Items.py index c98117ae..ce11164c 100644 --- a/worlds/archipidle/Items.py +++ b/worlds/archipidle/Items.py @@ -22,7 +22,7 @@ item_table = ( 'One-Up Mushroom', 'Nokia N-GAGE', '2-Liter of Sprite', - 'Free trial of the critically acclaimed MMORPG Final Fantasy XIV, including the entirety of A Realm Reborn and the award winning Heavenasward expansion up to level 60 for free with no restrictions on playtime!', + 'Free trial of the critically acclaimed MMORPG Final Fantasy XIV, including the entirety of A Realm Reborn and the award winning Heavenasward expansion up to level 60 with no restrictions on playtime!', 'Can of Compressed Air', 'Striped Kitten', 'USB Power Adapter', @@ -30,7 +30,7 @@ item_table = ( 'Nintendo Power Glove', 'The Lampshade of No Real Significance', 'Kneepads of Allure', - 'Get-Out-Of-Jail-Free Card', + 'Get Out of Jail Free Card', 'Box Set of Stargate SG-1 Season 4', 'The Missing Left Sock', 'Poster Tube', @@ -199,4 +199,54 @@ item_table = ( 'Delicious Tacos', 'The Krabby Patty Recipe', 'Map to Waldo\'s Location', + 'Stray Cat', + 'Ham and Cheese Sandwich', + 'DVD Player', + 'Motorcycle Helmet', + 'Fake Flowers', + '6-Pack of Sponges', + 'Heated Pants', + 'Empty Glass Bottle', + 'Brown Paper Bag', + 'Model Train Set', + 'TV Remote', + 'RC Car', + 'Super Soaker 9000', + 'Giant Sunglasses', + 'World\'s Smallest Violin', + 'Pile of Fresh Warm Laundry', + 'Half-Empty Ice Cube Tray', + 'Bob Ross Afro Wig', + 'Empty Cardboard Box', + 'Packet of Soy Sauce', + 'Solutions to a Math Test', + 'Pencil Eraser', + 'The Great Pumpkin', + 'Very Expensive Toaster', + 'Pack of Colored Sharpies', + 'Bag of Chocolate Chips', + 'Grandma\'s Homemade Cookies', + 'Collection of Bottle Caps', + 'Pack of Playing Cards', + 'Boom Box', + 'Toy Sail Boat', + 'Smooth Nail File', + 'Colored Chalk', + 'Missing Button', + 'Rubber Band Ball', + 'Joystick', + 'Galaga Arcade Cabinet', + 'Anime Mouse Pad', + 'Orange and Yellow Glow Sticks', + 'Odd Bookmark', + 'Stray Dice', + 'Tooth Picks', + 'Dirty Dishes', + 'Poke\'mon Card Game Rule Book (Gen 1)', + 'Salt Shaker', + 'Digital Thermometer', + 'Infinite Improbability Drive', + 'Fire Extinguisher', + 'Beeping Smoke Alarm', + 'Greasy Spatula', ) diff --git a/worlds/archipidle/Rules.py b/worlds/archipidle/Rules.py index a2464a53..763a53e1 100644 --- a/worlds/archipidle/Rules.py +++ b/worlds/archipidle/Rules.py @@ -16,24 +16,24 @@ class ArchipIDLELogic(LogicMixin): def set_rules(world: MultiWorld, player: int): for i in range(1, 16): set_rule( - world.get_location(f"IDLE for {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), + world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), lambda state: state._archipidle_location_is_accessible(player, 0) ) for i in range(16, 31): set_rule( - world.get_location(f"IDLE for {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), + world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), lambda state: state._archipidle_location_is_accessible(player, 4) ) for i in range(31, 51): set_rule( - world.get_location(f"IDLE for {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), + world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), lambda state: state._archipidle_location_is_accessible(player, 10) ) for i in range(51, 101): set_rule( - world.get_location(f"IDLE for {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), + world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds", player), lambda state: state._archipidle_location_is_accessible(player, 20) ) diff --git a/worlds/archipidle/__init__.py b/worlds/archipidle/__init__.py index 36d63738..5b21bac8 100644 --- a/worlds/archipidle/__init__.py +++ b/worlds/archipidle/__init__.py @@ -14,7 +14,7 @@ class ArchipIDLEWorld(World): """ game = "ArchipIDLE" topology_present = False - data_version = 1 + data_version = 2 web = ArchipIDLEWebWorld() item_name_to_id = {} @@ -26,7 +26,7 @@ class ArchipIDLEWorld(World): location_name_to_id = {} start_id = 9000 for i in range(1, 101): - location_name_to_id[f"IDLE for {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds"] = start_id + location_name_to_id[f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) > 0 else 0} seconds"] = start_id start_id += 1 def generate_basic(self):