Skip to content

Commit

Permalink
DLC Quest: Option Documentation improvements (ArchipelagoMW#1887)
Browse files Browse the repository at this point in the history
  • Loading branch information
agilbert1412 authored Jun 25, 2023
1 parent 46b13e0 commit f3e2e42
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 9 deletions.
19 changes: 12 additions & 7 deletions worlds/dlcquest/Options.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ def __getitem__(self, item: Union[str, DLCQuestOption]) -> Union[bool, int]:
return self.options.get(item, None)


class FalseDoubleJump(Choice):
"""If you can do a double jump without the pack for it (glitch)."""
class DoubleJumpGlitch(Choice):
"""Whether to include the double jump glitches in logic. Separated between the simple ones and the very difficult ones"""
internal_name = "double_jump_glitch"
display_name = "Double Jump glitch"
option_none = 0
Expand All @@ -30,7 +30,8 @@ class FalseDoubleJump(Choice):


class TimeIsMoney(Choice):
"""Is your time worth the money, are you ready to grind your sword by hand?"""
"""Whether the Time is Money pack is considered required to complete the grindstone.
If optional, you may be expected to grind 10 000 times by hand"""
internal_name = "time_is_money"
display_name = "Time Is Money"
option_required = 0
Expand All @@ -39,7 +40,8 @@ class TimeIsMoney(Choice):


class CoinSanity(Choice):
"""This is for the insane it can be 825 check, it is coin sanity"""
"""Whether collecting coins are checks
If none, you will collect your own coins"""
internal_name = "coinsanity"
display_name = "CoinSanity"
option_none = 0
Expand All @@ -48,7 +50,10 @@ class CoinSanity(Choice):


class CoinSanityRange(SpecialRange):
"""This is the amount of coin in a coin bundle"""
"""This is the amount of coins in a coin bundle
You need to collect that number of coins to get a location check, and when receiving coin items, you will get bundles of this size
It is highly recommended to not set this value below 10, as it generates a very large number of boring locations and items.
In the worst case, it is 1500+ checks for a single coin"""
internal_name = "coinbundlequantity"
display_name = "Coin Bundle Quantity"
range_start = 1
Expand All @@ -62,7 +67,7 @@ class CoinSanityRange(SpecialRange):


class EndingChoice(Choice):
"""Which ending is considered completion for the basic campaign"""
"""Which ending is considered completion for the DLC Quest campaign, either any ending or the true ending"""
internal_name = "ending_choice"
display_name = "Ending Choice"
option_any = 0
Expand Down Expand Up @@ -92,7 +97,7 @@ class ItemShuffle(Choice):
DLCQuest_options: Dict[str, type(Option)] = {
option.internal_name: option
for option in [
FalseDoubleJump,
DoubleJumpGlitch,
CoinSanity,
CoinSanityRange,
TimeIsMoney,
Expand Down
4 changes: 2 additions & 2 deletions worlds/dlcquest/Rules.py
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ def set_basic_shuffled_items_rules(World_Options, player, world):


def set_double_jump_glitchless_rules(World_Options, player, world):
if World_Options[Options.FalseDoubleJump] != Options.FalseDoubleJump.option_none:
if World_Options[Options.DoubleJumpGlitch] != Options.DoubleJumpGlitch.option_none:
return
set_rule(world.get_entrance("Cloud Double Jump", player),
lambda state: state.has("Double Jump Pack", player))
Expand All @@ -121,7 +121,7 @@ def set_double_jump_glitchless_rules(World_Options, player, world):


def set_easy_double_jump_glitch_rules(World_Options, player, world):
if World_Options[Options.FalseDoubleJump] == Options.FalseDoubleJump.option_all:
if World_Options[Options.DoubleJumpGlitch] == Options.DoubleJumpGlitch.option_all:
return
set_rule(world.get_entrance("Behind Tree Double Jump", player),
lambda state: state.has("Double Jump Pack", player))
Expand Down

0 comments on commit f3e2e42

Please sign in to comment.