Files
Grinch-AP/worlds/witness/test/test_roll_other_options.py

72 lines
2.0 KiB
Python
Raw Normal View History

from ..options import ElevatorsComeToYou
2024-07-06 13:40:55 +02:00
from ..test import WitnessTestBase
# These are just some random options combinations, just to catch whether I broke anything obvious
class TestExpertNonRandomizedEPs(WitnessTestBase):
options = {
"disable_non_randomized": True,
"puzzle_randomization": "sigma_expert",
"shuffle_EPs": "individual",
"ep_difficulty": "eclipse",
"victory_condition": "challenge",
"shuffle_discarded_panels": False,
"shuffle_boat": False,
"shuffle_dog": "off",
2024-07-06 13:40:55 +02:00
}
class TestVanillaAutoElevatorsPanels(WitnessTestBase):
options = {
"puzzle_randomization": "none",
"elevators_come_to_you": ElevatorsComeToYou.valid_keys - ElevatorsComeToYou.default, # Opposite of default
2024-07-06 13:40:55 +02:00
"shuffle_doors": "panels",
"victory_condition": "mountain_box_short",
"early_caves": True,
"shuffle_vault_boxes": True,
"mountain_lasers": 11,
"shuffle_dog": "puzzle_skip",
2024-07-06 13:40:55 +02:00
}
class TestMiscOptions(WitnessTestBase):
options = {
"death_link": True,
"death_link_amnesty": 3,
"laser_hints": True,
"hint_amount": 40,
"area_hint_percentage": 100,
The Witness: Add "vague" hints making use of other games' region names and location groups (#2921) * Vague hints work! But, the client will probably reveal some of the info through scouts atm * Fall back on Everywhere if necessary * Some of these failsafes are not necessary now * Limit region size to 100 as well * Actually... like this. * Nutmeg * Lol * -1 for own player but don't scout * Still make always/priority ITEM hints * fix * uwu notices your bug * The hints should, like, actually work, you know? * Make it a Toggle * Update worlds/witness/hints.py Co-authored-by: Bryce Wilson <gyroscope15@gmail.com> * Update worlds/witness/hints.py Co-authored-by: Bryce Wilson <gyroscope15@gmail.com> * Make some suggested changes * Make that ungodly equation a bit clearer in terms of formatting * make that not sorted * Add a warning about the feature in the option tooltip * Make using region names experimental * reword option tooltip * Note about singleplayer * Slight rewording again * Reorder the order of priority a bit * this condition is unnecessary now * comment * No wait the order has to be like this * Okay now I think it's correct * Another comment * Align option tooltip with new behavior * slight rewording again * reword reword reword reword * - * ethics * Update worlds/witness/options.py Co-authored-by: Bryce Wilson <gyroscope15@gmail.com> * Rename and slight behavior change for local hints * I think I overengineered this system before. Make it more consistent and clear now * oops I used checks by accident * oops * OMEGA OOPS * Accidentally commited a print statemetn * Vi don't commit nonsense challenge difficulty impossible * This isn't always true but it's good enough * Update options.py * Update worlds/witness/options.py Co-authored-by: Scipio Wright <scipiowright@gmail.com> * Scipio :3 * switch to is_event instead of checking against location.address * oop * Update test_roll_other_options.py * Fix that unit test problem lol * Oh is this not fixed in the apworld? --------- Co-authored-by: Bryce Wilson <gyroscope15@gmail.com> Co-authored-by: Scipio Wright <scipiowright@gmail.com>
2024-08-20 01:34:40 +02:00
"vague_hints": "experimental",
2024-07-06 13:40:55 +02:00
}
class TestMaxEntityShuffle(WitnessTestBase):
options = {
"shuffle_symbols": False,
"shuffle_doors": "mixed",
"shuffle_EPs": "individual",
"obelisk_keys": True,
"shuffle_lasers": "anywhere",
"victory_condition": "mountain_box_long",
"shuffle_dog": "random_item",
2024-07-06 13:40:55 +02:00
}
class TestPostgameGroupedDoors(WitnessTestBase):
options = {
The Witness: Implement "Variety" puzzles mode (#3239) * Variety Rando (But WitnessLogicVariety.txt is wrong * Actually variety the variety file (Ty Exempt-Medic <3) * This will be preopened * Tooltip explaining the different difficulties * Remove ?, those were correct * Less efficient but easier to follow * Parentheses * Fix some reqs * Not Arrows in Variety * Oops * Happy medic, I made a wacky solution * there we go * Lint oops * There * that copy is unnecessary * Turns out that copy is necessary still * yes * lol * Rename to Umbra Variety * missed one * Erase the Eraser * Fix remaining instances of 'variety' and don't have a symbol item on the gate in variety * reorder difficulties * inbetween * ruff * Fix Variety Invis requirements * Fix wooden beams variety * Fix PP2 variety * Mirror changes from 'Variety Mode Puzzle Change 3.2.3' * These also have Symmetry * merge error prevention * Update worlds/witness/data/static_items.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * no elif after return * add variety to the symbol requirement bleed test * Add variety to one of the 'other settings' unit tests * Add Variety minimal symbols unittest * oops * I did the dumb again * . * Incorporate changes from other PR into WitnesLogicVariety.txt * Update worlds/witness/data/WitnessLogicVariety.txt Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Update worlds/witness/data/WitnessLogicVariety.txt Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Update the reqs as well haha * Another difference, thanks Medic :§ * Wait no, this one was right * lol * apply changes to WitnessLogicVariety.txt * Add most recent Variety changes * oof --------- Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
2024-09-05 17:10:09 +02:00
"puzzle_randomization": "umbra_variety",
2024-07-06 13:40:55 +02:00
"shuffle_postgame": True,
"shuffle_discarded_panels": True,
"shuffle_doors": "doors",
"door_groupings": "regional",
"victory_condition": "elevator",
}
class TestPostgamePanels(WitnessTestBase):
options = {
"victory_condition": "mountain_box_long",
"shuffle_postgame": True
}