From 462ddce72c591f68d27b86644874e6a6c621f7df Mon Sep 17 00:00:00 2001 From: Zach Parks Date: Sun, 6 Nov 2022 08:28:16 -0600 Subject: [PATCH] Templates: Remove auto wordwrap, fix manual indentation, and reformat docstrings for world options in main. (#1201) * Fix wrapping too early if docstring is within 120 characters and re-indent other lines. * Remove auto-word wrapping and tweaked all worlds' option docstrings formatting. Options should wrap around the 120 character mark to prevent template files from being too long horizontally. This also allows manual-indentation to work again. * Fix missing '#' on empty lines in output from docstring. --- WebHostLib/templates/options.yaml | 21 +++++++-------- worlds/hk/Options.py | 24 +++++++++-------- worlds/minecraft/Options.py | 3 ++- worlds/oot/ColorSFXOptions.py | 45 ++++++++++++++++++++----------- worlds/oot/Options.py | 24 +++++++++++------ worlds/overcooked2/Options.py | 27 ++++++++++++------- worlds/raft/Options.py | 10 ++++--- worlds/sa2b/Options.py | 3 ++- worlds/sc2wol/Options.py | 21 +++++++++------ worlds/sm/Options.py | 37 ++++++++++++++++--------- worlds/sm64ex/Options.py | 3 ++- worlds/smw/Options.py | 3 ++- worlds/timespinner/Options.py | 3 ++- 13 files changed, 142 insertions(+), 82 deletions(-) diff --git a/WebHostLib/templates/options.yaml b/WebHostLib/templates/options.yaml index 5cbbf692..b9bacaa0 100644 --- a/WebHostLib/templates/options.yaml +++ b/WebHostLib/templates/options.yaml @@ -21,10 +21,10 @@ # https://archipelago.gg/check # Your name in-game. Spaces will be replaced with underscores and there is a 16-character limit. -# {player} will be replaced with the player's slot number. -# {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1. -# {number} will be replaced with the counter value of the name. -# {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1. +# {player} will be replaced with the player's slot number. +# {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1. +# {number} will be replaced with the counter value of the name. +# {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1. name: Player{number} # Used to describe your yaml. Useful if you have multiple files. @@ -49,12 +49,11 @@ requires: {{ option_key }}: {%- if option.__doc__ %} # {{ option.__doc__ - | trim - | wordwrap(112, wrapstring="\n# ") - | replace(' ', '') - | replace('\n ', '\n# ') - | indent(4, first=False) - }} + | trim + | replace('\n\n', '\n \n') + | replace('\n ', '\n# ') + | indent(4, first=False) + }} {%- endif -%} {%- if option.__doc__ and option.range_start is defined %} @@ -82,5 +81,5 @@ requires: {%- else %} {{ yaml_dump(option.default) | trim | indent(4, first=false) }} {%- endif -%} + {{ "\n" }} {%- endfor %} - diff --git a/worlds/hk/Options.py b/worlds/hk/Options.py index 04923e70..d47ab2c3 100644 --- a/worlds/hk/Options.py +++ b/worlds/hk/Options.py @@ -23,11 +23,11 @@ option_docstrings = { "RandomizeDreamers": "Allow for Dreamers to be randomized into the item pool and opens their locations for " "randomization.", "RandomizeSkills": "Allow for Skills, such as Mantis Claw or Shade Soul, to be randomized into the item pool. " - "Also opens their locations for receiving randomized items.", + "Also opens their locations\n for receiving randomized items.", "RandomizeFocus": "Removes the ability to focus and randomizes it into the item pool.", "RandomizeSwim": "Removes the ability to swim in water and randomizes it into the item pool.", "RandomizeCharms": "Allow for Charms to be randomized into the item pool and open their locations for " - "randomization. Includes Charms sold in shops.", + "randomization. Includes Charms\n sold in shops.", "RandomizeKeys": "Allow for Keys to be randomized into the item pool. Includes those sold in shops.", "RandomizeMaskShards": "Allow for Mask Shard to be randomized into the item pool and open their locations for" " randomization.", @@ -44,15 +44,15 @@ option_docstrings = { "RandomizeRelics": "Randomize Relics (King's Idol, et al.) into the item pool and open their locations for" " randomization.", "RandomizeWhisperingRoots": "Randomize the essence rewards from Whispering Roots into the item pool. Whispering " - "Roots will now grant a randomized item when completed. This can be previewed by " + "Roots will now grant a randomized\n item when completed. This can be previewed by " "standing on the root.", "RandomizeBossEssence": "Randomize boss essence drops, such as those for defeating Warrior Dreams, into the item " - "pool and open their locations for randomization.", + "pool and open their locations\n for randomization.", "RandomizeGrubs": "Randomize Grubs into the item pool and open their locations for randomization.", "RandomizeMimics": "Randomize Mimic Grubs into the item pool and open their locations for randomization." - "Mimic Grubs are always placed in your own game.", + "Mimic Grubs are always placed\n in your own game.", "RandomizeMaps": "Randomize Maps into the item pool. This causes Cornifer to give you a message allowing you to see" - " and buy an item that is randomized into that location as well.", + " and buy an item\n that is randomized into that location as well.", "RandomizeStags": "Randomize Stag Stations unlocks into the item pool as well as placing randomized items " "on the stag station bell/toll.", "RandomizeLifebloodCocoons": "Randomize Lifeblood Cocoon grants into the item pool and open their locations" @@ -60,7 +60,7 @@ option_docstrings = { "RandomizeGrimmkinFlames": "Randomize Grimmkin Flames into the item pool and open their locations for " "randomization.", "RandomizeJournalEntries": "Randomize the Hunter's Journal as well as the findable journal entries into the item " - "pool, and open their locations for randomization. Does not include journal entries " + "pool, and open their locations\n for randomization. Does not include journal entries " "gained by killing enemies.", "RandomizeNail": "Removes the ability to swing the nail left, right and up, and shuffles these into the item pool.", "RandomizeGeoRocks": "Randomize Geo Rock rewards into the item pool and open their locations for randomization.", @@ -68,9 +68,9 @@ option_docstrings = { "RandomizeSoulTotems": "Randomize Soul Refill items into the item pool and open the Soul Totem locations for" " randomization.", "RandomizeLoreTablets": "Randomize Lore items into the itempool, one per Lore Tablet, and place randomized item " - "grants on the tablets themselves. You must still read the tablet to get the item.", + "grants on the tablets themselves.\n You must still read the tablet to get the item.", "PreciseMovement": "Places skips into logic which require extremely precise player movement, possibly without " - "movement skills such as dash or hook.", + "movement skills such as\n dash or hook.", "ProficientCombat": "Places skips into logic which require proficient combat, possibly with limited items.", "BackgroundObjectPogos": "Places skips into logic for locations which are reachable via pogoing off of " "background objects.", @@ -299,7 +299,8 @@ class SlyShopSlots(Range): class SlyKeyShopSlots(Range): - """For each extra slot, add a location to the Sly Shop (requiring Shopkeeper's Key) and a filler item to the item pool.""" + """For each extra slot, add a location to the Sly Shop (requiring Shopkeeper's Key) and a filler item to the item + pool.""" display_name = "Sly Key Shop Slots" default = 6 @@ -324,7 +325,8 @@ class SalubraShopSlots(Range): class SalubraCharmShopSlots(Range): - """For each extra slot, add a location to the Salubra Shop (requiring Charms), and a filler item to the item pool.""" + """For each extra slot, add a location to the Salubra Shop (requiring Charms), and a filler item to the item + pool.""" display_name = "Salubra Charm Shop Slots" default = 5 diff --git a/worlds/minecraft/Options.py b/worlds/minecraft/Options.py index f35866f7..161d44d9 100644 --- a/worlds/minecraft/Options.py +++ b/worlds/minecraft/Options.py @@ -47,7 +47,8 @@ class StructureCompasses(DefaultOnToggle): class BeeTraps(Range): - """Replaces a percentage of junk items with bee traps, which spawn multiple angered bees around every player when received.""" + """Replaces a percentage of junk items with bee traps, which spawn multiple angered bees around every player when + received.""" display_name = "Bee Trap Percentage" range_start = 0 range_end = 100 diff --git a/worlds/oot/ColorSFXOptions.py b/worlds/oot/ColorSFXOptions.py index fa7f5417..1db9ef9f 100644 --- a/worlds/oot/ColorSFXOptions.py +++ b/worlds/oot/ColorSFXOptions.py @@ -208,7 +208,8 @@ class navi_color_default_inner(Choice): class navi_color_default_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Navi Idle Outer" option_random_choice = 0 option_completely_random = 1 @@ -265,7 +266,8 @@ class navi_color_enemy_inner(Choice): class navi_color_enemy_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Navi Targeting Enemy Outer" option_random_choice = 0 option_completely_random = 1 @@ -322,7 +324,8 @@ class navi_color_npc_inner(Choice): class navi_color_npc_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Navi Targeting NPC Outer" option_random_choice = 0 option_completely_random = 1 @@ -379,7 +382,8 @@ class navi_color_prop_inner(Choice): class navi_color_prop_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Navi Targeting Prop Outer" option_random_choice = 0 option_completely_random = 1 @@ -427,7 +431,8 @@ class sword_trail_color_inner(Choice): class sword_trail_color_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Sword Trail Outer" option_random_choice = 0 option_completely_random = 1 @@ -465,7 +470,8 @@ class bombchu_trail_color_inner(Choice): class bombchu_trail_color_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Bombchu Trail Outer" option_random_choice = 0 option_completely_random = 1 @@ -503,7 +509,8 @@ class boomerang_trail_color_inner(Choice): class boomerang_trail_color_outer(Choice): - """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. "match_inner" copies the inner color for this option.""" + """Choose a color. "random_choice" selects a random option. "completely_random" generates a random hex code. + "match_inner" copies the inner color for this option.""" display_name = "Boomerang Trail Outer" option_random_choice = 0 option_completely_random = 1 @@ -646,7 +653,8 @@ class start_button_color(Choice): class sfx_navi_overworld(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Navi Overworld" option_default = 0 option_completely_random = 1 @@ -685,7 +693,8 @@ class sfx_navi_overworld(Choice): class sfx_navi_enemy(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Navi Enemy" option_default = 0 option_completely_random = 1 @@ -724,7 +733,8 @@ class sfx_navi_enemy(Choice): class sfx_low_hp(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Low HP" option_default = 0 option_completely_random = 1 @@ -761,7 +771,8 @@ class sfx_low_hp(Choice): class sfx_menu_cursor(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Menu Cursor" option_default = 0 option_completely_random = 1 @@ -833,7 +844,8 @@ class sfx_menu_cursor(Choice): class sfx_menu_select(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Menu Select" option_default = 0 option_completely_random = 1 @@ -907,7 +919,8 @@ class sfx_menu_select(Choice): class sfx_nightfall(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Nightfall" option_default = 0 option_completely_random = 1 @@ -926,7 +939,8 @@ class sfx_nightfall(Choice): class sfx_horse_neigh(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Horse" option_default = 0 option_completely_random = 1 @@ -945,7 +959,8 @@ class sfx_horse_neigh(Choice): class sfx_hover_boots(Choice): - """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. "completely_random" selects any random sound.""" + """Choose a sound effect. "random_choice" selects a random option. "random_ear_safe" selects a random safe option. + "completely_random" selects any random sound.""" display_name = "Hover Boots" option_default = 0 option_completely_random = 1 diff --git a/worlds/oot/Options.py b/worlds/oot/Options.py index f8696a16..7e0c9c5d 100644 --- a/worlds/oot/Options.py +++ b/worlds/oot/Options.py @@ -121,7 +121,8 @@ class StartingAge(Choice): class InteriorEntrances(Choice): - """Shuffles interior entrances. "Simple" shuffles houses and Great Fairies; "All" includes Windmill, Link's House, Temple of Time, and Kak potion shop.""" + """Shuffles interior entrances. "Simple" shuffles houses and Great Fairies; "All" includes Windmill, Link's House, + Temple of Time, and Kak potion shop.""" display_name = "Shuffle Interior Entrances" option_off = 0 option_simple = 1 @@ -160,7 +161,8 @@ class SpawnPositions(Toggle): class MixEntrancePools(Choice): - """Shuffles entrances into a mixed pool instead of separate ones. "indoor" keeps overworld entrances separate; "all" mixes them in.""" + """Shuffles entrances into a mixed pool instead of separate ones. "indoor" keeps overworld entrances separate; "all" + mixes them in.""" display_name = "Mix Entrance Pools" option_off = 0 option_indoor = 1 @@ -168,7 +170,8 @@ class MixEntrancePools(Choice): class DecoupleEntrances(Toggle): - """Decouple entrances when shuffling them. Also adds the one-way entrance from Gerudo Valley to Lake Hylia if overworld is shuffled.""" + """Decouple entrances when shuffling them. Also adds the one-way entrance from Gerudo Valley to Lake Hylia if + overworld is shuffled.""" display_name = "Decouple Entrances" @@ -186,7 +189,8 @@ class TriforceGoal(Range): class ExtraTriforces(Range): - """Percentage of additional Triforce pieces in the pool. With high numbers, you may need to randomize additional locations to have enough items.""" + """Percentage of additional Triforce pieces in the pool. With high numbers, you may need to randomize additional + locations to have enough items.""" display_name = "Percentage of Extra Triforce Pieces" range_start = 0 range_end = 100 @@ -194,7 +198,8 @@ class ExtraTriforces(Range): class LogicalChus(Toggle): - """Bombchus are properly considered in logic. The first found pack will have 20 chus; Kokiri Shop and Bazaar sell refills; bombchus open Bombchu Bowling.""" + """Bombchus are properly considered in logic. The first found pack will have 20 chus; Kokiri Shop and Bazaar sell + refills; bombchus open Bombchu Bowling.""" display_name = "Bombchus Considered in Logic" @@ -525,7 +530,8 @@ class CompleteMaskQuest(Toggle): class UsefulCutscenes(Toggle): - """Reenables the Poe cutscene in Forest Temple, Darunia in Fire Temple, and Twinrova introduction. Mostly useful for glitched.""" + """Reenables the Poe cutscene in Forest Temple, Darunia in Fire Temple, and Twinrova introduction. Mostly useful for + glitched.""" display_name = "Enable Useful Cutscenes" @@ -846,8 +852,10 @@ sfx_options: typing.Dict[str, type(Option)] = { class LogicTricks(OptionList): """Set various tricks for logic in Ocarina of Time. -Format as a comma-separated list of "nice" names: ["Fewer Tunic Requirements", "Hidden Grottos without Stone of Agony"]. -A full list of supported tricks can be found at https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LogicTricks.py""" + Format as a comma-separated list of "nice" names: ["Fewer Tunic Requirements", "Hidden Grottos without Stone of Agony"]. + A full list of supported tricks can be found at: + https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LogicTricks.py + """ display_name = "Logic Tricks" valid_keys = frozenset(normalized_name_tricks) valid_keys_casefold = True diff --git a/worlds/overcooked2/Options.py b/worlds/overcooked2/Options.py index 78e0fd6e..d2c6c233 100644 --- a/worlds/overcooked2/Options.py +++ b/worlds/overcooked2/Options.py @@ -9,17 +9,20 @@ class OC2OnToggle(DefaultOnToggle): class AlwaysServeOldestOrder(OC2OnToggle): - """Modifies the game so that serving an expired order doesn't target the ticket with the highest tip. This helps players dig out of a broken tip combo faster.""" + """Modifies the game so that serving an expired order doesn't target the ticket with the highest tip. This helps + players dig out of a broken tip combo faster.""" display_name = "Always Serve Oldest Order" class AlwaysPreserveCookingProgress(OC2OnToggle): - """Modifies the game to behave more like AYCE, where adding an item to an in-progress container doesn't reset the entire progress bar.""" + """Modifies the game to behave more like AYCE, where adding an item to an in-progress container doesn't reset the + entire progress bar.""" display_name = "Preserve Cooking/Mixing Progress" class DisplayLeaderboardScores(OC2OnToggle): - """Modifies the Overworld map to fetch and display the current world records for each level. Press number keys 1-4 to view leaderboard scores for that number of players.""" + """Modifies the Overworld map to fetch and display the current world records for each level. Press number keys 1-4 + to view leaderboard scores for that number of players.""" display_name = "Display Leaderboard Scores" @@ -29,7 +32,8 @@ class ShuffleLevelOrder(OC2OnToggle): class IncludeHordeLevels(OC2OnToggle): - """Includes "Horde Defence" levels in the pool of possible kitchens when Shuffle Level Order is enabled. Also adds two horde-specific items into the item pool.""" + """Includes "Horde Defence" levels in the pool of possible kitchens when Shuffle Level Order is enabled. Also adds + two horde-specific items into the item pool.""" display_name = "Include Horde Levels" @@ -48,9 +52,11 @@ class FixBugs(OC2OnToggle): class ShorterLevelDuration(OC2OnToggle): - """Modifies level duration to be about 1/3rd shorter than in the original game, thus bringing the item discovery pace in line with other popular Archipelago games. + """Modifies level duration to be about 1/3rd shorter than in the original game, thus bringing the item discovery + pace in line with other popular Archipelago games. - Points required to earn stars are scaled accordingly. ("Boss Levels" which change scenery mid-game are not affected.)""" + Points required to earn stars are scaled accordingly. ("Boss Levels" which change scenery mid-game are not + affected.)""" display_name = "Shorter Level Duration" @@ -61,7 +67,8 @@ class PrepLevels(Choice): - Excluded: Prep Levels are excluded from the pool during level shuffling - - All You Can Eat: Prep Levels may appear, but the timer automatically starts. The star score requirements are also adjusted to use the All You Can Eat World Record (if it exists)""" + - All You Can Eat: Prep Levels may appear, but the timer automatically starts. The star score requirements are also + adjusted to use the All You Can Eat World Record (if it exists)""" auto_display_name = True display_name = "Prep Level Behavior" option_original = 0 @@ -73,7 +80,8 @@ class PrepLevels(Choice): class StarsToWin(Range): """Number of stars required to unlock 6-6. - Level purchase requirements between 1-1 and 6-6 will be spread between these two numbers. Using too high of a number may result in more frequent generation failures, especially when horde levels are enabled.""" + Level purchase requirements between 1-1 and 6-6 will be spread between these two numbers. Using too high of a number + may result in more frequent generation failures, especially when horde levels are enabled.""" display_name = "Stars to Win" range_start = 0 range_end = 100 @@ -81,7 +89,8 @@ class StarsToWin(Range): class StarThresholdScale(Range): - """How difficult should the third star for each level be on a scale of 1-100%, where 100% is the current world record score and 45% is the average vanilla 4-star score.""" + """How difficult should the third star for each level be on a scale of 1-100%, where 100% is the current world + record score and 45% is the average vanilla 4-star score.""" display_name = "Star Difficulty %" range_start = 1 range_end = 100 diff --git a/worlds/raft/Options.py b/worlds/raft/Options.py index 5f09db07..b9d0a229 100644 --- a/worlds/raft/Options.py +++ b/worlds/raft/Options.py @@ -15,7 +15,9 @@ class MaximumResourcePackAmount(Range): default = 5 class DuplicateItems(Choice): - """Adds duplicates of items to the item pool (if configured in Filler items). These will be selected alongside Resource Packs (if configured). Note that there are not many progression items, and selecting Progression may produce many of the same duplicate item.""" + """Adds duplicates of items to the item pool (if configured in Filler items). These will be selected alongside + Resource Packs (if configured). Note that there are not many progression items, and selecting Progression may + produce many of the same duplicate item.""" display_name = "Duplicate items" option_progression = 0 option_non_progression = 1 @@ -59,11 +61,13 @@ class ProgressiveItems(DefaultOnToggle): display_name = "Progressive items" class BigIslandEarlyCrafting(Toggle): - """Allows recipes that require items from big islands (eg leather) to lock earlygame items like the Receiver, Bolt, or Smelter. Big islands are available from the start of the game, however it can take a long time to find them.""" + """Allows recipes that require items from big islands (eg leather) to lock earlygame items like the Receiver, Bolt, + or Smelter. Big islands are available from the start of the game, however it can take a long time to find them.""" display_name = "Early recipes behind big islands" class PaddleboardMode(Toggle): - """Sets later story islands to in logic without an Engine or Steering Wheel. May require lots of paddling. Not recommended.""" + """Sets later story islands to in logic without an Engine or Steering Wheel. May require lots of paddling. Not + recommended.""" display_name = "Paddleboard Mode" raft_options = { diff --git a/worlds/sa2b/Options.py b/worlds/sa2b/Options.py index 7d44776c..6010229e 100644 --- a/worlds/sa2b/Options.py +++ b/worlds/sa2b/Options.py @@ -163,7 +163,8 @@ class ChaoRaceChecks(Choice): """ Determines which Chao Races grant checks All: Each individual race grants a check - Prize: Only the races which grant Chao Toys grant checks (final race of each Beginner and Jewel cup, 4th, 8th, and 12th Challenge Races, 2nd and 4th Hero and Dark Races) + Prize: Only the races which grant Chao Toys grant checks (final race of each Beginner and Jewel cup, 4th, 8th, and + 12th Challenge Races, 2nd and 4th Hero and Dark Races) """ display_name = "Chao Race Checks" option_all = 0 diff --git a/worlds/sc2wol/Options.py b/worlds/sc2wol/Options.py index 9cd86f2c..62780fa2 100644 --- a/worlds/sc2wol/Options.py +++ b/worlds/sc2wol/Options.py @@ -13,16 +13,16 @@ class GameDifficulty(Choice): class UpgradeBonus(Choice): - """Determines what lab upgrade to use, whether it is Ultra-Capacitors which boost attack speed with every weapon upgrade - or Vanadium Plating which boosts life with every armor upgrade.""" + """Determines what lab upgrade to use, whether it is Ultra-Capacitors which boost attack speed with every weapon + upgrade or Vanadium Plating which boosts life with every armor upgrade.""" display_name = "Upgrade Bonus" option_ultra_capacitors = 0 option_vanadium_plating = 1 class BunkerUpgrade(Choice): - """Determines what bunker lab upgrade to use, whether it is Shrike Turret which outfits bunkers with an automated turret or - Fortified Bunker which boosts the life of bunkers.""" + """Determines what bunker lab upgrade to use, whether it is Shrike Turret which outfits bunkers with an automated + turret or Fortified Bunker which boosts the life of bunkers.""" display_name = "Bunker Upgrade" option_shrike_turret = 0 option_fortified_bunker = 1 @@ -56,14 +56,17 @@ class MissionOrder(Choice): class ShuffleProtoss(DefaultOnToggle): """Determines if the 3 protoss missions are included in the shuffle if Vanilla mission order is not enabled. - If turned off with Vanilla Shuffled, the 3 protoss missions will be in their normal position on the Prophecy chain if not shuffled. - If turned off with reduced mission settings, the 3 protoss missions will not appear and Protoss units are removed from the pool.""" + If turned off with Vanilla Shuffled, the 3 protoss missions will be in their normal position on the Prophecy chain + if not shuffled. + If turned off with reduced mission settings, the 3 protoss missions will not appear and Protoss units are removed + from the pool.""" display_name = "Shuffle Protoss Missions" class ShuffleNoBuild(DefaultOnToggle): """Determines if the 5 no-build missions are included in the shuffle if Vanilla mission order is not enabled. - If turned off with Vanilla Shuffled, one no-build mission will be placed as the first mission and the rest will be placed at the end of optional routes. + If turned off with Vanilla Shuffled, one no-build mission will be placed as the first mission and the rest will be + placed at the end of optional routes. If turned off with reduced mission settings, the 5 no-build missions will not appear.""" display_name = "Shuffle No-Build Missions" @@ -74,7 +77,9 @@ class EarlyUnit(DefaultOnToggle): class RequiredTactics(Choice): - """Determines the maximum tactical difficulty of the seed (separate from mission difficulty). Higher settings increase randomness. + """Determines the maximum tactical difficulty of the seed (separate from mission difficulty). Higher settings + increase randomness. + Standard: All missions can be completed with good micro and macro. Advanced: Completing missions may require relying on starting units and micro-heavy units. No Logic: Units and upgrades may be placed anywhere. LIKELY TO RENDER THE RUN IMPOSSIBLE ON HARDER DIFFICULTIES!""" diff --git a/worlds/sm/Options.py b/worlds/sm/Options.py index 2f0c70a2..26b3e246 100644 --- a/worlds/sm/Options.py +++ b/worlds/sm/Options.py @@ -6,7 +6,8 @@ class StartItemsRemovesFromPool(Toggle): display_name = "StartItems Removes From Item Pool" class Preset(Choice): - """Choose one of the presets or specify "varia_custom" to use varia_custom_preset option or specify "custom" to use custom_preset option.""" + """Choose one of the presets or specify "varia_custom" to use varia_custom_preset option or specify "custom" to use + custom_preset option.""" display_name = "Preset" option_newbie = 0 option_casual = 1 @@ -57,7 +58,8 @@ class RemoteItems(Toggle): display_name = "Remote Items" class MaxDifficulty(Choice): - """Depending on the perceived difficulties of the techniques, bosses, hell runs etc. from the preset, it will prevent the Randomizer from placing an item in a location too difficult to reach with the current items.""" + """Depending on the perceived difficulties of the techniques, bosses, hell runs etc. from the preset, it will + prevent the Randomizer from placing an item in a location too difficult to reach with the current items.""" display_name = "Maximum Difficulty" option_easy = 0 option_medium = 1 @@ -76,7 +78,8 @@ class MorphPlacement(Choice): default = 0 class StrictMinors(Toggle): - """Instead of using the Minors proportions as probabilities, enforce a strict distribution to match the proportions as closely as possible.""" + """Instead of using the Minors proportions as probabilities, enforce a strict distribution to match the proportions + as closely as possible.""" display_name = "Strict Minors" class MissileQty(Range): @@ -108,7 +111,8 @@ class MinorQty(Range): default = 100 class EnergyQty(Choice): - """Choose how many Energy/Reserve Tanks will be available, from 0-1 in ultra sparse, 4-6 in sparse, 8-12 in medium and 18 in vanilla.""" + """Choose how many Energy/Reserve Tanks will be available, from 0-1 in ultra sparse, 4-6 in sparse, 8-12 in medium + and 18 in vanilla.""" display_name = "Energy Quantity" option_ultra_sparse = 0 option_sparse = 1 @@ -129,11 +133,13 @@ class AreaLayout(Toggle): display_name = "Area Layout" class DoorsColorsRando(Toggle): - """Randomize the color of Red/Green/Yellow doors. Add four new type of doors which require Ice/Wave/Spazer/Plasma beams to open them.""" + """Randomize the color of Red/Green/Yellow doors. Add four new type of doors which require Ice/Wave/Spazer/Plasma + beams to open them.""" display_name = "Doors Colors Rando" class AllowGreyDoors(Toggle): - """When randomizing the color of Red/Green/Yellow doors, some doors can be randomized to Grey. Grey doors will never open, you will have to go around them.""" + """When randomizing the color of Red/Green/Yellow doors, some doors can be randomized to Grey. Grey doors will never + open, you will have to go around them.""" display_name = "Allow Grey Doors" class BossRandomization(Toggle): @@ -141,15 +147,18 @@ class BossRandomization(Toggle): display_name = "Boss Randomization" class FunCombat(Toggle): - """Forces removal of Plasma Beam and Screw Attack if the preset and settings allow it. In addition, can randomly remove Spazer and Wave Beam from the Combat set. If used, might force 'minimal' accessibility.""" + """Forces removal of Plasma Beam and Screw Attack if the preset and settings allow it. In addition, can randomly + remove Spazer and Wave Beam from the Combat set. If used, might force 'minimal' accessibility.""" display_name = "Fun Combat" class FunMovement(Toggle): - """Forces removal of Space Jump if the preset allows it. In addition, can randomly remove High Jump, Grappling Beam, Spring Ball, Speed Booster, and Bombs from the Movement set. If used, might force 'minimal' accessibility.""" + """Forces removal of Space Jump if the preset allows it. In addition, can randomly remove High Jump, Grappling Beam, + Spring Ball, Speed Booster, and Bombs from the Movement set. If used, might force 'minimal' accessibility.""" display_name = "Fun Movement" class FunSuits(Toggle): - """If the preset and seed layout allow it, will force removal of at least one of Varia Suit and/or Gravity Suit. If used, might force 'minimal' accessibility.""" + """If the preset and seed layout allow it, will force removal of at least one of Varia Suit and/or Gravity Suit. If + used, might force 'minimal' accessibility.""" display_name = "Fun Suits" class LayoutPatches(DefaultOnToggle): @@ -161,7 +170,9 @@ class VariaTweaks(Toggle): display_name = "Varia Tweaks" class NerfedCharge(Toggle): - """Samus begins with a starter Charge Beam that does one third of charged shot damage that can damage bosses. Pseudo Screws also do one third damage. Special Beam Attacks do normal damage but cost 3 Power Bombs instead of 1. Once the Charge Beam item has been collected, it does full damage and special attacks are back to normal.""" + """Samus begins with a starter Charge Beam that does one third of charged shot damage that can damage bosses. Pseudo + Screws also do one third damage. Special Beam Attacks do normal damage but cost 3 Power Bombs instead of 1. Once the + Charge Beam item has been collected, it does full damage and special attacks are back to normal.""" display_name = "Nerfed Charge" class GravityBehaviour(Choice): @@ -193,7 +204,8 @@ class RefillBeforeSave(Toggle): display_name = "Refill Before Save" class Hud(Toggle): - """Displays the current area name and the number of remaining items of selected item split in the HUD for the current area.""" + """Displays the current area name and the number of remaining items of selected item split in the HUD for the + current area.""" display_name = "Hud" class Animals(Toggle): @@ -211,7 +223,8 @@ class RandomMusic(Toggle): class CustomPreset(OptionDict): """ see https://randommetroidsolver.pythonanywhere.com/presets for detailed info on each preset settings - knows: each skill (know) has a pair [can use, perceived difficulty using one of 1, 5, 10, 25, 50 or 100 each one matching a max_difficulty] + knows: each skill (know) has a pair [can use, perceived difficulty using one of 1, 5, 10, 25, 50 or 100 each one + matching a max_difficulty] settings: hard rooms, hellruns and bosses settings controller: predefined controller mapping and moon walk setting """ diff --git a/worlds/sm64ex/Options.py b/worlds/sm64ex/Options.py index 88d27bb3..a603b61c 100644 --- a/worlds/sm64ex/Options.py +++ b/worlds/sm64ex/Options.py @@ -13,7 +13,8 @@ class StrictCapRequirements(DefaultOnToggle): class StrictCannonRequirements(DefaultOnToggle): - """If disabled, Stars that expect cannons may have to be acquired without them. Only makes a difference if Buddy Checks are enabled""" + """If disabled, Stars that expect cannons may have to be acquired without them. Only makes a difference if Buddy + Checks are enabled""" display_name = "Strict Cannon Requirements" diff --git a/worlds/smw/Options.py b/worlds/smw/Options.py index 80af63f5..65ecbbd7 100644 --- a/worlds/smw/Options.py +++ b/worlds/smw/Options.py @@ -77,7 +77,8 @@ class LevelShuffle(Toggle): class SwapDonutGhostHouseExits(Toggle): """ - If enabled, this option will swap which overworld direction the two exits of the level at the Donut Ghost House overworld tile go: + If enabled, this option will swap which overworld direction the two exits of the level at the Donut Ghost House + overworld tile go: False: Normal Exit goes up, Secret Exit goes right. True: Normal Exit goes right, Secret Exit goes up. """ diff --git a/worlds/timespinner/Options.py b/worlds/timespinner/Options.py index 574259c9..5e0438a1 100644 --- a/worlds/timespinner/Options.py +++ b/worlds/timespinner/Options.py @@ -93,7 +93,8 @@ class DamageRando(Choice): class DamageRandoOverrides(OptionDict): - "Manual +/-/normal odds for an orb. Put 0 if you don't want a certain nerf or buff to be a possibility. Orbs that you don't specify will roll with 1/1/1 as odds" + """Manual +/-/normal odds for an orb. Put 0 if you don't want a certain nerf or buff to be a possibility. Orbs that + you don't specify will roll with 1/1/1 as odds""" schema = Schema({ Optional("Blue"): { "MinusOdds": And(int, lambda n: n >= 0),