Skip to content

Commit

Permalink
Merge 'Clearer song and sometimes hints' (#2058)
Browse files Browse the repository at this point in the history
  • Loading branch information
cjohnson57 committed Sep 24, 2023
2 parents 36a69dd + e2a25fa commit b1285ac
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 23 deletions.
42 changes: 21 additions & 21 deletions HintList.py
Original file line number Diff line number Diff line change
Expand Up @@ -528,20 +528,20 @@ def tokens_required_by_settings(world: World) -> int:
'ZR Frogs Ocarina Game': (["an #amphibian feast# yields", "the #croaking choir's magnum opus# awards", "the #froggy finale# yields"], "the final reward from the #Frogs of Zora's River# is", ['overworld', 'sometimes']),
'KF Links House Cow': ("the #bovine bounty of a horseback hustle# gifts", "#Malon's obstacle course# leads to", 'always'),

'Song from Ocarina of Time': ("the #Ocarina of Time# teaches", None, ['song', 'sometimes']),
'Song from Royal Familys Tomb': (["#ReDead in the royal tomb# guard", "the #Composer Brothers wrote#"], None, ['song', 'sometimes']),
'Sheik in Forest': ("#in a meadow# Sheik teaches", None, ['song', 'sometimes']),
'Sheik at Temple': ("Sheik waits at a #monument to time# to teach", None, ['song', 'sometimes']),
'Sheik in Crater': ("the #crater's melody# is", None, ['song', 'sometimes']),
'Sheik in Ice Cavern': ("the #frozen cavern# echoes with", None, ['song', 'sometimes']),
'Sheik in Kakariko': ("a #ravaged village# mourns with", None, ['song', 'sometimes']),
'Sheik at Colossus': ("a hero ventures #beyond the wasteland# to learn", None, ['song', 'sometimes']),
'Song from Ocarina of Time': ("the #Ocarina of Time# teaches", "the #song# taught by the #Ocarina of Time# is", ['song', 'sometimes']),
'Song from Royal Familys Tomb': (["#ReDead in the royal tomb# guard", "the #Composer Brothers wrote#"], "the #song# written in the #royal tomb# is", ['song', 'sometimes']),
'Sheik in Forest': ("#in a meadow# Sheik teaches", "the #song# Sheik teaches in #Sacred Forest Meadow# is", ['song', 'sometimes']),
'Sheik at Temple': ("Sheik waits at a #monument to time# to teach", "the #song# Sheik teaches in #Temple of Time# is", ['song', 'sometimes']),
'Sheik in Crater': ("the #crater's melody# is", "the #song# Sheik teaches in #Death Mountain Crater# is", ['song', 'sometimes']),
'Sheik in Ice Cavern': ("the #frozen cavern# echoes with", "the #song# Sheik teaches in #Ice Cavern# is", ['song', 'sometimes']),
'Sheik in Kakariko': ("a #ravaged village# mourns with", "the #song# Sheik teaches in #Kakariko Village# is", ['song', 'sometimes']),
'Sheik at Colossus': ("a hero ventures #beyond the wasteland# to learn", "the #song# Sheik teaches in #Desert Colossus# is", ['song', 'sometimes']),

'Market 10 Big Poes': ("#ghost hunters# will be rewarded with", "catching #Big Poes# leads to", ['overworld', 'sometimes']),
'Deku Theater Skull Mask': ("the #Skull Mask# yields", None, ['overworld', 'sometimes']),
'Deku Theater Mask of Truth': ("showing a #truthful eye to the crowd# rewards", "the #Mask of Truth# yields", ['overworld', 'sometimes']),
'HF Ocarina of Time Item': ("the #treasure thrown by Princess Zelda# is", None, ['overworld', 'sometimes']),
'DMT Biggoron': ("#Biggoron# crafts", None, ['overworld', 'sometimes']),
'DMT Biggoron': ("#Biggoron# crafts", "showing the #Claim Check to Biggoron# rewards", ['overworld', 'sometimes']),
'Kak 50 Gold Skulltula Reward': (["#50 bug badges# rewards", "#50 spider souls# yields", "#50 auriferous arachnids# lead to"], "slaying #50 Gold Skulltulas# reveals", ['overworld', 'sometimes']),
'Kak 40 Gold Skulltula Reward': (["#40 bug badges# rewards", "#40 spider souls# yields", "#40 auriferous arachnids# lead to"], "slaying #40 Gold Skulltulas# reveals", ['overworld', 'sometimes']),
'Kak 30 Gold Skulltula Reward': (["#30 bug badges# rewards", "#30 spider souls# yields", "#30 auriferous arachnids# lead to"], "slaying #30 Gold Skulltulas# reveals", ['overworld', 'sometimes']),
Expand All @@ -560,17 +560,17 @@ def tokens_required_by_settings(world: World) -> int:
'HF GS Cow Grotto': ("a #spider behind webs# in a grotto holds", None, ['overworld', 'sometimes']),
'HF Cow Grotto Cow': ("the #cobwebbed cow# gifts", "a #cow behind webs# in a grotto gifts", ['overworld', 'sometimes']),
'ZF GS Hidden Cave': ("a spider high #above the icy waters# holds", None, ['overworld', 'sometimes']),
'Wasteland Chest': (["#deep in the wasteland# is", "beneath #the sands#, flames reveal"], None, ['overworld', 'sometimes']),
'Wasteland Chest': (["#deep in the wasteland# is", "beneath #the sands#, flames reveal"], "a chest spawned by #lighting flames in the Haunted Wasteland# contains", ['overworld', 'sometimes']),
'Wasteland GS': ("a #spider in the wasteland# holds", None, ['overworld', 'sometimes']),
'Graveyard Royal Familys Tomb Chest': (["#flames in the royal tomb# reveal", "the #Composer Brothers hid#"], None, ['overworld', 'sometimes']),
'ZF Bottom Freestanding PoH': ("#under the icy waters# lies", None, ['overworld', 'sometimes']),
'GC Pot Freestanding PoH': ("spinning #Goron pottery# contains", None, ['overworld', 'sometimes']),
'Graveyard Royal Familys Tomb Chest': (["#flames in the royal tomb# reveal", "the #Composer Brothers hid#"], "#lighting flames in the royal tomb# rewards", ['overworld', 'sometimes']),
'ZF Bottom Freestanding PoH': ("#under the icy waters# lies", "at the #bottom of the lake in Zora's Fountain# lies", ['overworld', 'sometimes']),
'GC Pot Freestanding PoH': ("spinning #Goron pottery# contains", "the #Goron Pot's happy face# spits out", ['overworld', 'sometimes']),
'ZD King Zora Thawed': ("a #defrosted dignitary# gifts", "unfreezing #King Zora# grants", ['overworld', 'sometimes']),
'DMC Deku Scrub': ("a single #scrub in the crater# sells", None, ['overworld', 'sometimes']),
'DMC GS Crate': ("a spider under a #crate in the crater# holds", None, ['overworld', 'sometimes']),
'LW Target in Woods': ("shooting a #target in the woods# grants", None, ['overworld', 'sometimes']),
'ZR Frogs in the Rain': ("#frogs in a storm# gift", None, ['overworld', 'sometimes']),
'LH Lab Dive': ("a #diving experiment# is rewarded with", None, ['overworld', 'sometimes']),
'ZR Frogs in the Rain': ("#frogs in a storm# gift", "playing #Song of Storms to Frogs# rewards", ['overworld', 'sometimes']),
'LH Lab Dive': ("a #diving experiment# is rewarded with", "a #lakeside lab diving experiment# rewards", ['overworld', 'sometimes']),
'HC Great Fairy Reward': ("the #fairy of fire# holds", "a #fairy outside Hyrule Castle# holds", ['overworld', 'sometimes']),
'OGC Great Fairy Reward': ("the #fairy of strength# holds", "a #fairy outside Ganon's Castle# holds", ['overworld', 'sometimes']),

Expand All @@ -592,17 +592,17 @@ def tokens_required_by_settings(world: World) -> int:
'Water Temple MQ Freestanding Key': ("hidden in a #box under the lake# lies", "hidden in a #box in the Water Temple# lies", ['dungeon', 'sometimes']),
'Water Temple MQ GS Freestanding Key Area': ("the #locked spider under the lake# holds", "the #locked spider in the Water Temple# holds", ['dungeon', 'sometimes']),
'Water Temple MQ GS Triple Wall Torch': ("a spider behind a #gate under the lake# holds", "a spider behind a #gate in the Water Temple# holds", ['dungeon', 'sometimes']),
'Gerudo Training Ground Underwater Silver Rupee Chest': (["those who seek #sunken silver rupees# will find", "the #thieves' underwater training# rewards"], None, ['dungeon', 'sometimes']),
'Gerudo Training Ground MQ Underwater Silver Rupee Chest': (["those who seek #sunken silver rupees# will find", "the #thieves' underwater training# rewards"], None, ['dungeon', 'sometimes']),
'Gerudo Training Ground Maze Path Final Chest': ("the final prize of #the thieves' training# is", None, ['dungeon', 'sometimes']),
'Gerudo Training Ground MQ Ice Arrows Chest': ("the final prize of #the thieves' training# is", None, ['dungeon', 'sometimes']),
'Gerudo Training Ground Underwater Silver Rupee Chest': (["those who seek #sunken silver rupees# will find", "the #thieves' underwater training# rewards"], "obtaining the #underwater silver rupees in Gerudo Training Ground# rewards", ['dungeon', 'sometimes']),
'Gerudo Training Ground MQ Underwater Silver Rupee Chest': (["those who seek #sunken silver rupees# will find", "the #thieves' underwater training# rewards"], "obtaining the #underwater silver rupees in Gerudo Training Ground# rewards", ['dungeon', 'sometimes']),
'Gerudo Training Ground Maze Path Final Chest': ("the final prize of #the thieves' training# is", "#Gerudo Training Ground final reward# contains", ['dungeon', 'sometimes']),
'Gerudo Training Ground MQ Ice Arrows Chest': ("the final prize of #the thieves' training# is", "#Gerudo Training Ground final reward# contains", ['dungeon', 'sometimes']),
'Spirit Temple Silver Gauntlets Chest': ("the treasure #sought by Nabooru# is", "upon the #Colossus's right hand# is", ['dungeon', 'sometimes']),
'Spirit Temple Mirror Shield Chest': ("upon the #Colossus's left hand# is", None, ['dungeon', 'sometimes']),
'Spirit Temple MQ Child Hammer Switch Chest': ("a #temporal paradox in the Colossus# yields", "a #temporal paradox in the Spirit Temple# yields", ['dungeon', 'sometimes']),
'Spirit Temple MQ Symphony Room Chest': ("a #symphony in the Colossus# yields", "a #symphony in the Spirit Temple# yields", ['dungeon', 'sometimes']),
'Spirit Temple MQ GS Symphony Room': ("a #spider's symphony in the Colossus# yields", "a #spider's symphony in the Spirit Temple# yields", ['dungeon', 'sometimes']),
'Shadow Temple Freestanding Key': ("a #burning skull in the house of the dead# holds", "a #giant pot in the Shadow Temple# holds", ['dungeon', 'sometimes']),
'Shadow Temple MQ Bomb Flower Chest': ("shadows in an #invisible maze# guard", None, ['dungeon', 'sometimes']),
'Shadow Temple MQ Bomb Flower Chest': ("a #grasping ghoul surrounded by Bomb Flowers# guards", "the #Dead Hand surrounded by Bomb Flowers# guards", ['dungeon', 'sometimes']),
'Shadow Temple MQ Stalfos Room Chest': ("near an #empty pedestal within the house of the dead# lies", "#stalfos in the Shadow Temple# guard", ['dungeon', 'sometimes']),
'Ice Cavern Iron Boots Chest': ("a #monster in a frozen cavern# guards", "the #final treasure of Ice Cavern# is", ['dungeon', 'sometimes']),
'Ice Cavern MQ Iron Boots Chest': ("a #monster in a frozen cavern# guards", "the #final treasure of Ice Cavern# is", ['dungeon', 'sometimes']),
Expand Down Expand Up @@ -907,7 +907,7 @@ def tokens_required_by_settings(world: World) -> int:
'Shadow Temple After Wind Enemy Chest': ("#mummies guarding a ferry# hide", None, 'exclude'),
'Shadow Temple After Wind Hidden Chest': ("#mummies guarding a ferry# hide", None, 'exclude'),
'Shadow Temple Spike Walls Left Chest': ("#walls consumed by a ball of fire# reveal", None, 'exclude'),
'Shadow Temple Invisible Floormaster Chest': ("shadows in an #invisible maze# guard", None, 'exclude'),
'Shadow Temple Invisible Floormaster Chest': ("the #Floormaster in the house of the dead# guards", "the #Floormaster in the Shadow Temple# guards", 'exclude'),
'Shadow Temple Boss Key Chest': ("#walls consumed by a ball of fire# reveal", None, 'exclude'),

'Shadow Temple MQ Compass Chest': ("the #Eye of Truth# pierces a hall of faces to reveal", None, 'exclude'),
Expand Down
7 changes: 6 additions & 1 deletion Hints.py
Original file line number Diff line number Diff line change
Expand Up @@ -986,7 +986,12 @@ def get_specific_hint(spoiler: Spoiler, world: World, checked: set[str], hint_ty
location_text = '#%s#' % location_text
item_text = get_hint(get_item_generic_name(location.item), world.settings.clearer_hints).text

return GossipText('%s #%s#.' % (location_text, item_text), ['Red', 'Green'], [location.name], [location.item.name]), [location]
colors = ['Red']
while location_text.count('#') > 2 * len(colors):
colors.append('Red')
colors.append('Green')

return GossipText('%s #%s#.' % (location_text, item_text), colors, [location.name], [location.item.name]), [location]


def get_sometimes_hint(spoiler: Spoiler, world: World, checked: set[str]) -> HintReturn:
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,7 @@ issue. You should always Hard Reset to avoid this issue entirely.
* `priority_stones`: When defined, gossip stones in this list will be given priority when placing the specified hint type, in the order they're defined. For example, if `ToT (Left)` and `ToT (Right)` are inserted into the `priority_stones` list, in that order, inside the dictionary for `always` hints, the first `always` hint will be placed on `ToT (Left)` and the second `always` hint will be placed on `ToT (Right)`.
* New Dual hint for King Zora checks: Unfreezing him and trading the prescription for an eyeball frog.
* The credits music can now be shuffled into the music pool.
* Many hints had clearer hints added and/or were reworded.
* **Other**
* When picking up a small key, the text box will now inform you how many you've found total.
* The longstanding vanilla bug where using Din's Fire on a white bubble crashes the game has been fixed.
Expand Down
2 changes: 1 addition & 1 deletion version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
__version__ = '7.1.194'
__version__ = '7.1.195'

# This is a supplemental version number for branches based off of main dev.
supplementary_version = 0
Expand Down

0 comments on commit b1285ac

Please sign in to comment.