LADX: Fixup missing descriptions (#1576)
This commit is contained in:
parent
256f493ada
commit
5bb6ff0ce0
|
@ -18,7 +18,8 @@ class LADXROption:
|
||||||
|
|
||||||
|
|
||||||
class Logic(Choice, LADXROption):
|
class Logic(Choice, LADXROption):
|
||||||
"""Affects where items are allowed to be placed.
|
"""
|
||||||
|
Affects where items are allowed to be placed.
|
||||||
[Normal] Playable without using any tricks or glitches. Can require knowledge from a vanilla playthrough, such as how to open Color Dungeon.
|
[Normal] Playable without using any tricks or glitches. Can require knowledge from a vanilla playthrough, such as how to open Color Dungeon.
|
||||||
[Hard] More advanced techniques may be required, but glitches are not. Examples include tricky jumps, killing enemies with only pots.
|
[Hard] More advanced techniques may be required, but glitches are not. Examples include tricky jumps, killing enemies with only pots.
|
||||||
[Glitched] Advanced glitches and techniques may be required, but extremely difficult or tedious tricks are not required. Examples include Bomb Triggers, Super Jumps and Jesus Jumps.
|
[Glitched] Advanced glitches and techniques may be required, but extremely difficult or tedious tricks are not required. Examples include Bomb Triggers, Super Jumps and Jesus Jumps.
|
||||||
|
@ -35,32 +36,33 @@ class Logic(Choice, LADXROption):
|
||||||
|
|
||||||
class TradeQuest(DefaultOffToggle, LADXROption):
|
class TradeQuest(DefaultOffToggle, LADXROption):
|
||||||
"""
|
"""
|
||||||
On - adds the trade items to the pool (the trade locations will always be local items)
|
[On] adds the trade items to the pool (the trade locations will always be local items)
|
||||||
Off - (default) doesn't add them
|
[Off] (default) doesn't add them
|
||||||
"""
|
"""
|
||||||
ladxr_name = "tradequest"
|
ladxr_name = "tradequest"
|
||||||
|
|
||||||
class Boomerang(Choice):
|
class Boomerang(Choice):
|
||||||
"""
|
"""
|
||||||
[Normal], requires Magnifying Lens to get the boomerang.
|
[Normal] requires Magnifying Lens to get the boomerang.
|
||||||
[Gift], The boomerang salesman will give you a random item, and the boomerang is shuffled.
|
[Gift] The boomerang salesman will give you a random item, and the boomerang is shuffled.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
normal = 0
|
normal = 0
|
||||||
gift = 1
|
gift = 1
|
||||||
default = gift
|
default = gift
|
||||||
|
|
||||||
# TODO: translate to lttp parlance
|
|
||||||
class EntranceShuffle(Choice, LADXROption):
|
class EntranceShuffle(Choice, LADXROption):
|
||||||
"""
|
"""
|
||||||
[WARNING] Experimental, may break generation
|
[WARNING] Experimental, may fail to fill
|
||||||
Randomizes where overworld entrances lead to.
|
Randomizes where overworld entrances lead to.
|
||||||
[Simple] Single-entrance caves/houses that have items are shuffled amongst each other.
|
[Simple] Single-entrance caves/houses that have items are shuffled amongst each other.
|
||||||
[Advanced] Simple, but two-way connector caves are shuffled in their own pool as well.
|
|
||||||
[Expert] Advanced, but caves/houses without items are also shuffled into the Simple entrance pool.
|
|
||||||
[Insanity] Expert, but the Raft Minigame hut and Mamu's cave are added to the non-connector pool.
|
|
||||||
If random start location and/or dungeon shuffle is enabled, then these will be shuffled with all the non-connector entrance pool.
|
If random start location and/or dungeon shuffle is enabled, then these will be shuffled with all the non-connector entrance pool.
|
||||||
Note, some entrances can lead into water, use the warp-to-home from the save&quit menu to escape this."""
|
Note, some entrances can lead into water, use the warp-to-home from the save&quit menu to escape this."""
|
||||||
|
|
||||||
|
#[Advanced] Simple, but two-way connector caves are shuffled in their own pool as well.
|
||||||
|
#[Expert] Advanced, but caves/houses without items are also shuffled into the Simple entrance pool.
|
||||||
|
#[Insanity] Expert, but the Raft Minigame hut and Mamu's cave are added to the non-connector pool.
|
||||||
|
|
||||||
option_none = 0
|
option_none = 0
|
||||||
option_simple = 1
|
option_simple = 1
|
||||||
#option_advanced = 2
|
#option_advanced = 2
|
||||||
|
@ -71,8 +73,8 @@ class EntranceShuffle(Choice, LADXROption):
|
||||||
|
|
||||||
class DungeonShuffle(DefaultOffToggle, LADXROption):
|
class DungeonShuffle(DefaultOffToggle, LADXROption):
|
||||||
"""
|
"""
|
||||||
[WARNING] Experimental, may break generation
|
[WARNING] Experimental, may fail to fill
|
||||||
Randomizes
|
Randomizes dungeon entrances within eachother
|
||||||
"""
|
"""
|
||||||
ladxr_name = "dungeonshuffle"
|
ladxr_name = "dungeonshuffle"
|
||||||
|
|
||||||
|
@ -97,30 +99,60 @@ class DungeonItemShuffle(Choice):
|
||||||
class ShuffleNightmareKeys(DungeonItemShuffle):
|
class ShuffleNightmareKeys(DungeonItemShuffle):
|
||||||
"""
|
"""
|
||||||
Shuffle Nightmare Keys
|
Shuffle Nightmare Keys
|
||||||
|
[Original Dungeon] The item will be within its original dungeon
|
||||||
|
[Own Dungeons] The item will be within a dungeon in your world
|
||||||
|
[Own World] The item will be somewhere in your world
|
||||||
|
[Any World] The item could be anywhere
|
||||||
|
[Different World] The item will be somewhere in another world
|
||||||
"""
|
"""
|
||||||
ladxr_item = "NIGHTMARE_KEY"
|
ladxr_item = "NIGHTMARE_KEY"
|
||||||
|
|
||||||
class ShuffleSmallKeys(DungeonItemShuffle):
|
class ShuffleSmallKeys(DungeonItemShuffle):
|
||||||
"""
|
"""
|
||||||
Shuffle Small Keys
|
Shuffle Small Keys
|
||||||
|
[Original Dungeon] The item will be within its original dungeon
|
||||||
|
[Own Dungeons] The item will be within a dungeon in your world
|
||||||
|
[Own World] The item will be somewhere in your world
|
||||||
|
[Any World] The item could be anywhere
|
||||||
|
[Different World] The item will be somewhere in another world
|
||||||
"""
|
"""
|
||||||
ladxr_item = "KEY"
|
ladxr_item = "KEY"
|
||||||
class ShuffleMaps(DungeonItemShuffle):
|
class ShuffleMaps(DungeonItemShuffle):
|
||||||
"""
|
"""
|
||||||
Shuffle Dungeon Maps
|
Shuffle Dungeon Maps
|
||||||
|
[Original Dungeon] The item will be within its original dungeon
|
||||||
|
[Own Dungeons] The item will be within a dungeon in your world
|
||||||
|
[Own World] The item will be somewhere in your world
|
||||||
|
[Any World] The item could be anywhere
|
||||||
|
[Different World] The item will be somewhere in another world
|
||||||
"""
|
"""
|
||||||
ladxr_item = "MAP"
|
ladxr_item = "MAP"
|
||||||
|
|
||||||
class ShuffleCompasses(DungeonItemShuffle):
|
class ShuffleCompasses(DungeonItemShuffle):
|
||||||
"""
|
"""
|
||||||
Shuffle Dungeon Compasses
|
Shuffle Dungeon Compasses
|
||||||
|
[Original Dungeon] The item will be within its original dungeon
|
||||||
|
[Own Dungeons] The item will be within a dungeon in your world
|
||||||
|
[Own World] The item will be somewhere in your world
|
||||||
|
[Any World] The item could be anywhere
|
||||||
|
[Different World] The item will be somewhere in another world
|
||||||
"""
|
"""
|
||||||
ladxr_item = "COMPASS"
|
ladxr_item = "COMPASS"
|
||||||
|
|
||||||
class ShuffleStoneBeaks(DungeonItemShuffle):
|
class ShuffleStoneBeaks(DungeonItemShuffle):
|
||||||
"""
|
"""
|
||||||
Shuffle Owl Beaks
|
Shuffle Owl Beaks
|
||||||
|
[Original Dungeon] The item will be within its original dungeon
|
||||||
|
[Own Dungeons] The item will be within a dungeon in your world
|
||||||
|
[Own World] The item will be somewhere in your world
|
||||||
|
[Any World] The item could be anywhere
|
||||||
|
[Different World] The item will be somewhere in another world
|
||||||
"""
|
"""
|
||||||
ladxr_item = "STONE_BEAK"
|
ladxr_item = "STONE_BEAK"
|
||||||
|
|
||||||
class Goal(Choice, LADXROption):
|
class Goal(Choice, LADXROption):
|
||||||
"""
|
"""
|
||||||
|
The Goal of the game
|
||||||
[Instruments] The Wind Fish's Egg will only open if you have the required number of Instruments of the Sirens, and play the Ballad of the Wind Fish.
|
[Instruments] The Wind Fish's Egg will only open if you have the required number of Instruments of the Sirens, and play the Ballad of the Wind Fish.
|
||||||
[Seashells] The Egg will open when you bring 20 seashells. The Ballad and Ocarina are not needed.
|
[Seashells] The Egg will open when you bring 20 seashells. The Ballad and Ocarina are not needed.
|
||||||
[Open] The Egg will start pre-opened.
|
[Open] The Egg will start pre-opened.
|
||||||
|
@ -133,41 +165,21 @@ class Goal(Choice, LADXROption):
|
||||||
|
|
||||||
default = option_instruments
|
default = option_instruments
|
||||||
|
|
||||||
|
|
||||||
def to_ladxr_option(self, all_options):
|
def to_ladxr_option(self, all_options):
|
||||||
|
|
||||||
if self.value == self.option_instruments:
|
if self.value == self.option_instruments:
|
||||||
return ("goal", all_options["instrument_count"])
|
return ("goal", all_options["instrument_count"])
|
||||||
else:
|
else:
|
||||||
return LADXROption.to_ladxr_option(self, all_options)
|
return LADXROption.to_ladxr_option(self, all_options)
|
||||||
|
|
||||||
class InstrumentCount(Range, LADXROption):
|
class InstrumentCount(Range, LADXROption):
|
||||||
|
"""
|
||||||
|
Sets the number of instruments required to open the Egg
|
||||||
|
"""
|
||||||
ladxr_name = None
|
ladxr_name = None
|
||||||
range_start = 0
|
range_start = 0
|
||||||
range_end = 8
|
range_end = 8
|
||||||
default = 8
|
default = 8
|
||||||
|
|
||||||
#class SeashellCount(Range):
|
|
||||||
# range_start = 0
|
|
||||||
# range_end = 20
|
|
||||||
# default = 20
|
|
||||||
|
|
||||||
# Setting('goal', 'Gameplay', 'G', 'Goal', options=[('8', '8', '8 instruments'), ('7', '7', '7 instruments'), ('6', '6', '6 instruments'),
|
|
||||||
# ('5', '5', '5 instruments'), ('4', '4', '4 instruments'), ('3', '3', '3 instruments'),
|
|
||||||
# ('2', '2', '2 instruments'), ('1', '1', '1 instrument'), ('0', '0', 'No instruments'),
|
|
||||||
# ('open', 'O', 'Egg already open'), ('random', 'R', 'Random instrument count'),
|
|
||||||
# ('open-4', '<', 'Random short game (0-4)'), ('5-8', '>', 'Random long game (5-8)'),
|
|
||||||
# ('seashells', 'S', 'Seashell hunt (20)'), ('bingo', 'b', 'Bingo!'),
|
|
||||||
# ('bingo-full', 'B', 'Bingo-25!')], default='8',
|
|
||||||
# description="""Changes the goal of the game.
|
|
||||||
# [1-8 instruments], number of instruments required to open the egg.
|
|
||||||
# [No instruments] open the egg without instruments, still requires the ocarina with the balled of the windfish
|
|
||||||
# [Egg already open] the egg is already open, just head for it once you have the items needed to defeat the boss.
|
|
||||||
# [Randomized instrument count] random number of instruments required to open the egg, between 0 and 8.
|
|
||||||
# [Random short/long game] random number of instruments required to open the egg, chosen between 0-4 and 5-8 respectively.
|
|
||||||
# [Seashell hunt] egg will open once you collected 20 seashells. Instruments are replaced by seashells and shuffled.
|
|
||||||
# [Bingo] Generate a 5x5 bingo board with various goals. Complete one row/column or diagonal to win!
|
|
||||||
# [Bingo-25] Bingo, but need to fill the whole bingo card to win!"""),
|
|
||||||
class ItemPool(Choice):
|
class ItemPool(Choice):
|
||||||
"""Effects which items are shuffled.
|
"""Effects which items are shuffled.
|
||||||
[Casual] Places multiple copies of key items.
|
[Casual] Places multiple copies of key items.
|
||||||
|
@ -220,10 +232,6 @@ class Overworld(Choice, LADXROption):
|
||||||
# option_shuffled = 3
|
# option_shuffled = 3
|
||||||
default = option_normal
|
default = option_normal
|
||||||
|
|
||||||
# Ugh, this will change what 'progression' means??
|
|
||||||
#Setting('owlstatues', 'Special', 'o', 'Owl statues', options=[('', '', 'Never'), ('dungeon', 'D', 'In dungeons'), ('overworld', 'O', 'On the overworld'), ('both', 'B', 'Dungeons and Overworld')], default='',
|
|
||||||
# description='Replaces the hints from owl statues with additional randomized items'),
|
|
||||||
|
|
||||||
#Setting('superweapons', 'Special', 'q', 'Enable super weapons', default=False,
|
#Setting('superweapons', 'Special', 'q', 'Enable super weapons', default=False,
|
||||||
# description='All items will be more powerful, faster, harder, bigger stronger. You name it.'),
|
# description='All items will be more powerful, faster, harder, bigger stronger. You name it.'),
|
||||||
#Setting('quickswap', 'User options', 'Q', 'Quickswap', options=[('none', '', 'Disabled'), ('a', 'a', 'Swap A button'), ('b', 'b', 'Swap B button')], default='none',
|
#Setting('quickswap', 'User options', 'Q', 'Quickswap', options=[('none', '', 'Disabled'), ('a', 'a', 'Swap A button'), ('b', 'b', 'Swap B button')], default='none',
|
||||||
|
@ -258,6 +266,7 @@ class Overworld(Choice, LADXROption):
|
||||||
|
|
||||||
class LinkPalette(Choice, LADXROption):
|
class LinkPalette(Choice, LADXROption):
|
||||||
"""
|
"""
|
||||||
|
Sets link's palette
|
||||||
A-D are color palettes usually used during the damage animation and can change based on where you are.
|
A-D are color palettes usually used during the damage animation and can change based on where you are.
|
||||||
"""
|
"""
|
||||||
display_name = "Links Palette"
|
display_name = "Links Palette"
|
||||||
|
@ -280,10 +289,10 @@ class TrendyGame(Choice):
|
||||||
"""
|
"""
|
||||||
[Easy] All of the items hold still for you
|
[Easy] All of the items hold still for you
|
||||||
[Normal] The vanilla behavior
|
[Normal] The vanilla behavior
|
||||||
[Hard] ?
|
[Hard] The trade item also moves
|
||||||
[Harder] ???
|
[Harder] The items move faster
|
||||||
[Hardest] ????
|
[Hardest] The items move diagonally
|
||||||
[Impossible] ?????
|
[Impossible] The items move impossibly fast, may scroll on and off the screen
|
||||||
"""
|
"""
|
||||||
option_easy = 0
|
option_easy = 0
|
||||||
option_normal = 1
|
option_normal = 1
|
||||||
|
@ -295,7 +304,8 @@ class TrendyGame(Choice):
|
||||||
|
|
||||||
class GfxMod(FreeText, LADXROption):
|
class GfxMod(FreeText, LADXROption):
|
||||||
"""
|
"""
|
||||||
options here correlate with sprite and name files in data/sprites/ladx
|
Sets the sprite for link, among other things
|
||||||
|
The option should be the same name as a with sprite (and optional name) file in data/sprites/ladx
|
||||||
"""
|
"""
|
||||||
display_name = "GFX Modification"
|
display_name = "GFX Modification"
|
||||||
ladxr_name = "gfxmod"
|
ladxr_name = "gfxmod"
|
||||||
|
@ -327,6 +337,16 @@ class GfxMod(FreeText, LADXROption):
|
||||||
return None, None
|
return None, None
|
||||||
|
|
||||||
class Palette(Choice):
|
class Palette(Choice):
|
||||||
|
"""
|
||||||
|
Sets the palette for the game.
|
||||||
|
Note: A few places aren't patched, such as the menu and a few color dungeon tiles.
|
||||||
|
[Normal] The vanilla palette
|
||||||
|
[1-Bit] One bit of color per channel
|
||||||
|
[2-Bit] Two bits of color per channel
|
||||||
|
[Greyscale] Shades of grey
|
||||||
|
[Pink] Aesthetic
|
||||||
|
[Inverted] Inverted
|
||||||
|
"""
|
||||||
option_normal = 0
|
option_normal = 0
|
||||||
option_1bit = 1
|
option_1bit = 1
|
||||||
option_2bit = 2
|
option_2bit = 2
|
||||||
|
|
|
@ -37,7 +37,10 @@ class LinksAwakeningWebWorld(WebWorld):
|
||||||
theme = "dirt"
|
theme = "dirt"
|
||||||
|
|
||||||
class LinksAwakeningWorld(World):
|
class LinksAwakeningWorld(World):
|
||||||
"""Insert description of the world/game here."""
|
"""
|
||||||
|
After a previous adventure, Link is stranded on Koholint Island, full of mystery and familiar faces.
|
||||||
|
Gather the 8 Instruments of the Sirens to wake the Wind Fish, so that Link can go home!
|
||||||
|
"""
|
||||||
game: str = LINKS_AWAKENING # name of the game/world
|
game: str = LINKS_AWAKENING # name of the game/world
|
||||||
web = LinksAwakeningWebWorld()
|
web = LinksAwakeningWebWorld()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue