- Since multiprocessing and exceptions apparently don't interact well, any exceptions in `generate_output` are handled more gracefully now. The event is always set as well, so the process will no longer hang on an exception there.
- The triforce object file was renamed in 7.0. I didn't change the filename in the code, so it would crash on non-Windows systems.
- Some hint distributions just crash, so I'm temporarily removing them. It will take a while to port the relevant functionality and I'd rather not hold up the next version release.
* SC2: Fixed nondeterminism resulting from early unit placement
* SC2: Renamed "world" arguments to "multiworld"
* SC2: Fixed All-In Ground including anti-air in defense score, fixed error in beats_protoss_deathball
* SC2: Fixed No Logic using logic on Beat events
* SC2: Fixed /unfinished command failing when All-In available
## What is this fixing or adding?
- Adds the majority of OoTR 7.0 features:
- Pot shuffle, Freestanding item shuffle, Crate shuffle, Beehive shuffle
- Key rings mode
- Dungeon shortcuts to speed up dungeons
- "Regional" shuffle for dungeon items
- New options for shop pricing in shopsanity
- Expanded Ganon's Boss Key shuffle options
- Pre-planted beans
- Improved Chest Appearance Matches Contents mode
- Blue Fire Arrows
- Bonk self-damage
- Finer control over MQ dungeons and spawn position randomization
- Several bugfixes as a result of the update:
- Items recognized by the server and valid starting items are now in a 1-to-1 correspondence. In particular, starting with keys is now supported.
- Entrance randomization success rate improved. Hopefully it is now at 100%.
Co-authored-by: Zach Parks <zach@alliware.com>
- Pokemon guide was missing a point about changing the Lua option in Bizhawk.
- The same point in the OoT guide was missing a step about restarting Bizhawk after changing the Lua option, so updated that as well.
Adds Trainersanity option (Each non-scripted trainer has a location check, adding 317 locations)
Adds Randomize Pokedex option. It is required to obtain items from Oak's Aides.
Adds option to add all normal shop items to all normal shops.
Adds DeathLink option.
Adds traps.
Improves Type Chart randomization.
Items can be received during battle.
Stores start inventory in ROM. Only requests remote start inventory if patch is from v1.
Fixes logic bugs.
Various other improvements.
Changelog:
Features:
- Completely reworked mission progression system
- Control of which mission types can be active per-gameplay-style
- Control of how many missions are active per-gameplay-style
- Mission order shuffle
- Two new Chaos Emerald Hunt goals
- `Chaos Emerald Hunt` involves finding the seven Chaos Emeralds and beating Green Hill
- `FinalHazard Chaos Emerald Hunt` is the same, but with the FinalHazard fight at the end of Green Hill
- New optional Location Checks
- Keysanity (Chao Containers)
- Whistlesanity (Animal Pipes and hidden whistle spots)
- Beetlesanity (Destroying Gold Beetles)
- Option to require clearing all active Cannon's Core Missions for access to the Biolizard fight in `Biolizard` goal
- Hard Logic option
- More Music Options
- Option to use SADX music
- New `Singularity` music shuffle option
- Option to choose the Narrator theme
- New Traps
- Tiny Trap is now permanent within a level
- Gravity Trap
- Exposition Trap
Quality of Life:
- Significant revamp to Stage Select screen information conveyance
- Icons are displayed for:
- Relevant character's upgrades
- Which location checks are active/checked
- Chaos Emeralds found (if relevant)
- Gate and Cannon's Core emblem costs
- The above stage-specific info can also be viewed when paused in-level
- The current mission is also displayed when paused
- Emblem Symbol on Mission Select subscreen now only displays if a high enough rank has been gotten on that mission to send the location check
- Hints including SA2B locations will now specify which Gate that level is located in
- Save file now stores slot name to help prevent false location checks in the case of one player having multiple SA2B slots in the same seed
- Chao Intermediate and Expert race sets are now swapped, per player feedback
- Intermediate now includes Beginner + Challenge + Hero + Dark
- Expert now includes Beginner + Challenge + Hero + Dark + Jewel
- New mod config option for the color of the Message Queue text
Bug Fixes:
- Fixed bug where game stops properly tracking items after 127 have been received.
- Several logic fixes
- Game now refers to `Knuckles - Shovel Claws` correctly
- Minor AP World code cleanup
* Rogue Legacy: More refactoring and clean up.
* Also marked Blacksmith as Progression as it's used in a rule.
* Remove extra newline.
* Prevent divide by zero type error.
* Scratch last commit, got the math mixed in my head.
* Clarified name of rule regarding percentage of stat upgrades.
* Move early vendors/architect creation into `create_items` logic.
* Rename parameter in `create_region`.
* Rename local var in `create_region`.
* Removed accidental links in Markdown docs.
* Refactor `create_region` signature and caller.
* Remove redundant if-else.
* Revert change to if-else, and moved item_pool to function instead of obj var.
* Rename LegacyLogic to RLLogic.
* Remove LogicMixin for rules.
Added Juice Ranch and Worm Pod to logic
Extra parenthesis removed
* Delete log.txt
Not used
Transitioned all whitespace characters to Linux /n from Windows /r/n
Updated rules for Rescue Blerol 1 and 2 to avoid impossible seed generation. Fixed member requirements for Vault Bomb. Added Juice Ranch: Fridge for consistency with other checks behind combat. Added party_shuffle rules to vault medallions, removed jail key requirement (not needed)
* Docs/Factorio: Flesh out lacking option descriptions.
* Docs/Factorio: Added instructions on peaceful mode.
* Docs/Factorio: Use subheadings for each "other setting".
* Docs/Factorio: Mention that `tech_tree_information: full` grants hints.
* Docs/Factorio: Instructions to use .yaml checker after editing your .yaml manually.
Early Unit: Now respects Excluded Items when selecting a random unit.
Units Always Have Upgrades: Changed removal cascade behavior; now additionally checks to see if an associated item is already locked when attempting to remove, and locks associated items if so. Occasionally caused issues with starter items in the past, frequently caused issues with yaml-defined Locked Items.
* 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.
* Generated patch includes base patch
* location ID range start match item ID start
* remove unused import
* Change Oak's Aides defaults to be more sync-friendly
* Baseline patching and logic for DKC3
* Client can send, but not yet receive
* Alpha Test Baseline
* Bug Fixes and Starting Lives Option
* Finish BBH, add world hints
* Add music shuffle
* Boomer Costs Text
* Stubbed in Collect behaviour
* Adjust Gyrocopter option
* Add Bonus Coin junk replacement and tracker support
* Delete bad logs
* Undo host.yaml change
* Refactored SNIClient
* Make Swanky Free
* Fix Typo
* Undo SNIClient run_game hack
* Fix Typo
* Remove Bosses from Level Shuffle
* Remove duplicate kivy Data
* Add DKC3 Docs and increment Data version
* Remove dead code
* Fix mislabeled region
* Add Dark Souls 3 to README
* Always force Cog on Rocket Rush Flag
* Fix Single Ski lock and too many DK Coins
* Update Retroarch version number
* Don't send DKC3 through LttP Adjuster
* Comment Location ROM Table
* Change ROM Hash prefix to D3
* Remove redundant constructor
* Add ROM Change Safeguards
* Properly mark WRAM accesses
* Remove outdated region connect
* Fix syntax error
* Fix Game description
* Fix SNES Bank Access
* Add isso_setup for DKC3
* Double Quote strings
* Escape single quotes I guess
* Add two locations to Trade Sequence List
* Remove trace sequence locations from ROM data dict
* Prevent Krematoa Crash, add crash robustness
* Remove print statements
* Don't remove ctx.rom if save file dies
* Consolidate logic for readability
* Add link to tracker on DKC3 Setup doc
* Remove false information from setup guide
* Fix file extension in setup doc
* Bug Fixes
* Add KONGsanity and cheat options
* First Pass Collect behavior
* Fix level unlock data
* Make ! only indicate KONG letters on KONGsanity
* Fix Level Name in locations
* Adjust junk pool logic
* Fix Knautilus Connections
* Fix Wrinkly Softlock
* Fix missed world reference
* OoT: ER improvements
Include dungeon rewards in itempool to allow for ER improvement
Better validate_world function by checking for multi-entrance incompatibility more efficiently
Fix some generation failures by ensuring all entrances placed with logic
Introduce bias to some interior entrance placement to improve generation rate
* OoT: fix overworld ER spoiler information
* OoT: rewrite dungeon item placement algorithm
in particular, no longer assumes that exactly the number of vanilla keys is present, which lets it place more or fewer items.
* OoT: auto-send more locations
Now should autosend cows, DMT/DMC great fairies, medigoron, and bombchu salesman
This should be every check autosending. these ones are super weird for some reason and didn't get fixed with the others
* OoT: add items forced local by settings to AP's local_items
* OoT: fast-fill shop junk items
* OoT: ensure that Kokiri Shop is always reachable immediately in closed forest
hence Deku Shield can be bought to leave the forest
* OoT: randomize internal connect name
Connect name is now a random 16-character string.
This should prevent any issues with connecting to a room with the wrong ROM with probability almost 1.
* OoT: introduce TrackRandomRange for trials hint and mq dungeon maps
* OoT: enable proper itemlinking of songs and dungeon items, with restricted placements according to player settings
* OoT: barren hint oversight fix
* OoT: allow NL + ER to roll properly
* OoT: 3.8 compatibility
set and list builtins don't have proper typing support until 3.9, apparently
* OoT: remove Gerudo Membership Card location from the pool if fortress open and card not randomized
another long-standing bug squished
* OoT: exclude locations in the itemlink song fill if they aren't also priority
* OoT: prevent data bleed when client isn't closed between different game connections
I don't understand why people keep doing this
* OoT: linter appeasement
it was a real error though
* fixing merge conflicts is hard
* oot merge update #2
* OoT: removed accidentally duplicated code