Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Yoshi's Island: Implement New Game #2141

Merged
merged 273 commits into from
Mar 22, 2024

Conversation

PinkSwitch
Copy link
Contributor

What is this fixing or adding?

Adds Archipelago support for the SNES version of Yoshi’s Island.

How was this tested?

Multiple sessions of public and private tests, and instances of unsupported game tests with Yoshi’s Island outside of the Archipelago Server.

If this makes graphical changes, please attach screenshots.

N/A.

@NewSoupVi NewSoupVi added waiting-on: core-review Issue/PR has been peer-reviewed and is ready to be merged or needs input from a core maintainer. and removed waiting-on: author Issue/PR is waiting for feedback or changes from its author. labels Mar 21, 2024
Copy link
Member

@NewSoupVi NewSoupVi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alright, time for my actual approval.

Here is what I reviewed:

  • I did a full review of this a long time ago, I believe most of my most obvious complaints from back then got addressed.
  • In the last few days, I did another pass on all the files and personally fixed a lot of the style violations (with @Exempt-Medic double checking that I didn't screw something up in the process). There's still some line length stuff, but it's stuff I'm ok with, i.e. it's on par with other worlds now, more or less
  • I generated 200 fully random seeds

Here's what I didn't do:

  • I didn't play any seeds
  • I didn't review the functionality of Rom.py nor Client.py

I am personally okay with this being merged in the state it is in now.

However, I do have one caveat (Sorry PinkSwitch :D).
I am still unhappy with the general inefficiency of a lot of the logic functions in level_logic.py. I would like to see that addressed in a future PR. Basically, I would like to see things like this:

def bowserdoor_3(self, state: CollectionState) -> bool:
    if self.game_logic == "Easy":
        return True
    elif self.game_logic == "Normal":
        return True
    else:
        return True

Changed to:

def bowserdoor_3(self, _: CollectionState) -> bool:
    # Never requires anything
    return True

There are many instances of inefficiencies like this in the code, not just in level_logic.py, although I'm most unhappy with it in level_logic.py because these functions are called from access rules, so they should be as optimised as possible.
Some of those things are gonna come down to experience coding in Python so I don't wanna be too harsh about it. I also know that I'm way more anal about access rule efficiency than most people.
And, this game generates very fast in its current state (0.05s fill + 0.3s rom output) that I'm willing to let it go. Hopefully these things also get optimised out in the frozen build, so it won't affect the average user as much.

Looking forward to actually playing this game in either this version or hopefully the next one at the latest.

Copy link
Contributor

@LiquidCat64 LiquidCat64 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approving because I felt like things changed enough that I should. I genned another 1,000 fully random Yoshi stampede multi on the current up-to-date branch and it came out just as fine as the first one did.

@Berserker66 Berserker66 merged commit 355223b into ArchipelagoMW:main Mar 22, 2024
17 checks passed
GodlFire added a commit to GodlFire/Shivers that referenced this pull request Apr 2, 2024
commit 630a3bd
Merge: 8477d3c 5e57920
Author: GodlFire <[email protected]>
Date:   Mon Apr 1 19:08:48 2024 -0600

    Merge pull request #10 from ArchipelagoMW/main

    Merge main into branch

commit 5e57920
Author: Alchav <[email protected]>
Date:   Mon Apr 1 12:08:21 2024 -0500

    LttP: delete playerSettings.yaml (ArchipelagoMW#3062)

commit 9aeeeb0
Author: CaitSith2 <[email protected]>
Date:   Mon Apr 1 06:07:56 2024 -0700

    ALttP: Re-mark light/dark world regions after applying plando connections (ArchipelagoMW#2964)

commit 3545838
Author: Bryce Wilson <[email protected]>
Date:   Mon Apr 1 07:07:11 2024 -0600

    Pokemon Emerald: Fix wonder trade race condition (ArchipelagoMW#2983)

commit 4ac1866
Author: Alchav <[email protected]>
Date:   Mon Apr 1 08:06:31 2024 -0500

    ALTTP: Skull Woods Inverted fix (ArchipelagoMW#2980)

commit 4aa03da
Author: Fabian Dill <[email protected]>
Date:   Mon Apr 1 15:06:02 2024 +0200

    Factorio: fix attempting to create savegame with not filename safe characters (ArchipelagoMW#2842)

commit 24a03bc
Author: Silvris <[email protected]>
Date:   Mon Apr 1 08:02:26 2024 -0500

    KDL3: fix shuffled animals not actually being random (ArchipelagoMW#3060)

commit f813a70
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 11:11:10 2024 -0500

    The Messenger: update docs formatting and fix outdated info (ArchipelagoMW#3033)

    * The Messenger: update docs formatting and fix outdated info

    * address review feedback

    * 120 chars

commit 2a0b7e0
Author: LiquidCat64 <[email protected]>
Date:   Sun Mar 31 09:55:55 2024 -0600

    CV64: A couple of very small docs corrections. (ArchipelagoMW#3057)

commit 03d47e4
Author: Ixrec <[email protected]>
Date:   Sun Mar 31 16:55:08 2024 +0100

    A Short Hike: Clarify installation instructions (ArchipelagoMW#3058)

    * Clarify installation instructions

    * don't mention 'config' folder since it isn't created until the game starts

commit e546c0f
Author: Silvris <[email protected]>
Date:   Sun Mar 31 10:50:31 2024 -0500

    Yoshi's Island: add patch suffix (ArchipelagoMW#3061)

commit 2ec93ba
Author: Bryce Wilson <[email protected]>
Date:   Sun Mar 31 09:48:59 2024 -0600

    Pokemon Emerald: Fix inconsistent location name (ArchipelagoMW#3065)

commit 4e3d396
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 10:47:11 2024 -0500

    The Messenger: Fix precollected notes not being removed from the itempool (ArchipelagoMW#3066)

    * The Messenger: fix precollected notes not being properly removed from pool

    * The Messenger: bump required client version

commit 72c5351
Author: Fabian Dill <[email protected]>
Date:   Sun Mar 31 03:57:59 2024 +0200

    WebHost: fix /check creating broken yaml files if files don't end with a newline (ArchipelagoMW#3063)

commit b7ac6a4
Author: Aaron Wagener <[email protected]>
Date:   Fri Mar 29 20:14:53 2024 -0500

    The Messenger: Fix various portal shuffle issues (ArchipelagoMW#2976)

    * put constants in a bit more sensical order

    * fix accidental incorrect scoping

    * fix plando rules not being respected

    * add docstrings for the plando functions

    * fix the portal output pools being overwritten

    * use shuffle and pop instead of removing by content so plando can go to the same area twice

    * move portal pool rebuilding outside mapping creation

    * remove plando_connection cleansing since it isn't shared with transition shuffle

commit 5f0112e
Author: Zach Parks <[email protected]>
Date:   Fri Mar 29 19:13:51 2024 -0500

    Tracker: Add starting inventory to trackers and received items table. (ArchipelagoMW#3051)

commit bb48125
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 21:48:40 2024 -0500

    Core: Make fill failure error more human parseable (ArchipelagoMW#3023)

commit 301d9de
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 19:31:59 2024 -0500

    Docs: adding games rework (ArchipelagoMW#2892)

    * Docs: complete adding games.md rework

    * remove all the now unused images

    * review changes

    * address medic's review

    * address more comments

commit 9dc7089
Author: Trevor L <[email protected]>
Date:   Thu Mar 28 18:26:58 2024 -0600

    Hylics 2: Fix invalid multiworld data, use `self.random` instead of `self.multiworld.random` (ArchipelagoMW#3001)

    * Hylics 2: Fixes

    * Rewrite loop

commit 4391d1f
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 18:05:39 2024 -0600

    Pokemon Emerald: Fix opponents learning non-randomized TMs (ArchipelagoMW#3025)

commit 5d9d4ed
Author: black-sliver <[email protected]>
Date:   Fri Mar 29 01:01:31 2024 +0100

    SoE: update to pyevermizer v0.48.0 (ArchipelagoMW#3050)

commit c97215e
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 17:23:37 2024 -0400

    TUNIC: Minor refactor of the vanilla_portals function (ArchipelagoMW#3009)

    * Remove unused, change an if to an elif

    * Remove unused import

commit eb66886
Author: Alchav <[email protected]>
Date:   Thu Mar 28 16:23:01 2024 -0500

    SC2: Don't Filter Excluded Victory Locations (ArchipelagoMW#3018)

commit de86062
Author: Fabian Dill <[email protected]>
Date:   Thu Mar 28 22:21:56 2024 +0100

    Core: differentiate between unknown worlds and broken worlds in error message (ArchipelagoMW#2903)

commit 74b2bf5
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 15:20:55 2024 -0600

    Pokemon Emerald: Exclude norman trainer location during norman goal (ArchipelagoMW#3038)

commit 74ac66b
Author: BadMagic100 <[email protected]>
Date:   Thu Mar 28 08:49:19 2024 -0700

    Hollow Knight: 0.4.5 doc revamp and default options tweaks (ArchipelagoMW#2982)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 80d7ac4
Author: Silvris <[email protected]>
Date:   Thu Mar 28 09:41:32 2024 -0500

    KDL3: RC1 Fixes and Enhancement (ArchipelagoMW#3022)

    * fix cloudy park 4 rule, zero deathlink message

    * remove redundant door_shuffle bool

    when generic ER gets in, this whole function gets rewritten. So just clean it a little now.

    * properly fix deathlink messages, fix fill error

    * update docs

commit 7731171
Author: Ziktofel <[email protected]>
Date:   Thu Mar 28 15:38:34 2024 +0100

    SC2: Fix HERC upgrades (ArchipelagoMW#3044)

commit cfc1541
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 28 15:19:32 2024 +0100

    Docs: Mention the "last received item index" paradigm in the network protocol docs (ArchipelagoMW#2989)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 4d954af
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 10:11:20 2024 -0400

    TUNIC: Add link to AP plando guide to connection plando section of game page (ArchipelagoMW#2993)

commit 17748a4
Author: Nicholas Saylor <[email protected]>
Date:   Thu Mar 28 10:00:10 2024 -0400

    Launcher, Docs: Update UI and Set-Up Guide to Reference Options  (ArchipelagoMW#2950)

commit 9182fe5
Author: Entropynines <[email protected]>
Date:   Thu Mar 28 06:56:35 2024 -0700

    README: Remove outdated information about launchers (ArchipelagoMW#2966)

    Co-authored-by: Exempt-Medic <[email protected]>

commit bcf2230
Author: t3hf1gm3nt <[email protected]>
Date:   Thu Mar 28 09:54:56 2024 -0400

    TLOZ: Fix markdown issue with game info page (ArchipelagoMW#2985)

commit fa93488
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 28 09:46:00 2024 -0400

    Docs: Consistent naming for "connection plando" (ArchipelagoMW#2994)

commit db15dd4
Author: chandler05 <[email protected]>
Date:   Thu Mar 28 08:45:19 2024 -0500

    A Short Hike: Fix incorrect info in docs (ArchipelagoMW#3016)

commit 01cdb0d
Author: PoryGone <[email protected]>
Date:   Thu Mar 28 09:44:23 2024 -0400

    SMW: Update World Doc for v2.0 Features (ArchipelagoMW#3034)

    Co-authored-by: Scipio Wright <[email protected]>

commit d0ac2b7
Author: panicbit <[email protected]>
Date:   Thu Mar 28 10:11:26 2024 +0100

    LADX: fix local and non-local instrument placement (ArchipelagoMW#2987)

    * LADX: fix local and non-local instrument placement

    * change confusing variable name

commit 14f5f01
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:42:35 2024 -0400

    Stardew Valley: Fix potential soft lock with vanilla tools and entrance randomizer + Performance improvement for vanilla tool/skills (ArchipelagoMW#3002)

    * fix vanilla tool fishing rod requiring metal bars
    fix vanilla skill requiring previous level (it's always the same rule or more restrictive)

    * add test to ensure fishing rod need fish shop

    * fishing rod should be indexed from 0 like a mentally sane person would do.

    * fishing rod 0 isn't real, but it definitely can hurt you.

    * reeeeeeeee

commit cf133dd
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 02:32:27 2024 -0600

    Pokemon Emerald: Fix typo (ArchipelagoMW#3020)

commit ca18121
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:27:49 2024 -0400

    Stardew Valley: Fix generation fail with SVE and entrance rando when Wizard Tower is in place of Sprite Spring (ArchipelagoMW#2970)

commit 1d45125
Author: NewSoupVi <[email protected]>
Date:   Wed Mar 27 21:09:09 2024 +0100

    requirements.txt: _ instead of - to make PyCharm happy (ArchipelagoMW#3043)

commit f7b415d
Author: agilbert1412 <[email protected]>
Date:   Tue Mar 26 19:40:58 2024 +0300

    Stardew valley: Game version documentation (ArchipelagoMW#2990)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 702f006
Author: LiquidCat64 <[email protected]>
Date:   Tue Mar 26 07:31:36 2024 -0600

    CV64: Change all mentions of "settings" to "options" and fix a broken link (ArchipelagoMW#3015)

commit 98ce8f8
Author: Yussur Mustafa Oraji <[email protected]>
Date:   Tue Mar 26 14:29:25 2024 +0100

    sm64ex: New Options API and WebHost fix (ArchipelagoMW#2979)

commit ea47b90
Author: Scipio Wright <[email protected]>
Date:   Tue Mar 26 09:25:41 2024 -0400

    TUNIC: You can grapple down here without the ladder, neat (ArchipelagoMW#3019)

commit bf38568
Author: agilbert1412 <[email protected]>
Date:   Sun Mar 24 23:53:49 2024 +0300

    Stardew Valley: presets with some of the new available values for existing settings to make them more accurate (ArchipelagoMW#3014)

commit c0368ae
Author: Phaneros <[email protected]>
Date:   Sun Mar 24 13:53:20 2024 -0700

    SC2: Fixed missing upgrade from custom tracker (ArchipelagoMW#3013)

commit 36c8307
Author: Salzkorn <[email protected]>
Date:   Sun Mar 24 21:52:41 2024 +0100

    SC2 Tracker: Fix grouped items pointing at wrong item IDs (ArchipelagoMW#2992)

commit 2b24539
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:52:16 2024 +0100

    SC2 Tracker: Use level tinting to let the player know which level he has of Replenishable Magazine (ArchipelagoMW#2986)

commit 7e904a1
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:51:46 2024 +0100

    SC2: Fix Kerrigan presence resolving when deciding which races should be used (ArchipelagoMW#2978)

commit bdd498d
Author: Alchav <[email protected]>
Date:   Fri Mar 22 15:36:27 2024 -0500

    ALTTP: Fix ArchipelagoMW#2290's crashes (ArchipelagoMW#2973)

commit 355223b
Author: PinkSwitch <[email protected]>
Date:   Fri Mar 22 15:35:00 2024 -0500

    Yoshi's Island: Implement New Game (ArchipelagoMW#2141)

    Co-authored-by: Silvris <[email protected]>
    Co-authored-by: Alchav <[email protected]>
    Co-authored-by: NewSoupVi <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>

commit aaa3472
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 22 21:30:51 2024 +0100

    The Witness: Fix seed bleed issue (ArchipelagoMW#3008)

commit 96d93c1
Author: chandler05 <[email protected]>
Date:   Fri Mar 22 15:30:23 2024 -0500

    A Short Hike: Add option to customize filler coin count (ArchipelagoMW#3004)

    Co-authored-by: Exempt-Medic <[email protected]>

commit ca549df
Author: Silvris <[email protected]>
Date:   Fri Mar 22 15:29:24 2024 -0500

    CommonClient: fix hint tab overlapping (ArchipelagoMW#2957)

    Co-authored-by: Remy Jette <[email protected]>

commit 44988d4
Author: Star Rauchenberger <[email protected]>
Date:   Fri Mar 22 15:28:41 2024 -0500

    Lingo: Add trap weights option (ArchipelagoMW#2837)

commit 11b32f1
Author: Danaël V <[email protected]>
Date:   Fri Mar 22 12:46:14 2024 -0400

    Docs: replacing "setting" to "option" in world docs  (ArchipelagoMW#2622)

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    Added non-AP World specific information

    * Update contributing.md

    Fixed broken link

    * Some minor touchups

    * Update Contributing.md

    Draft for version with picture

    * Update contributing.md

    Small word change

    * Minor updates for conciseness, mostly

    * Changed all instances of settings to options in info and setup guides

    I combed through all world docs and swapped "setting" to "option" when this was refering to yaml options.
    I also changed a leftover "setting" in option.py

    * Update contributing.md

    * Update contributing.md

    * Update setup_en.md

    Woops I forgot one

    * Update Options.py

    Reverted changes regarding options.py

    * Update worlds/noita/docs/en_Noita.md

    Co-authored-by: Scipio Wright <[email protected]>

    * Update worlds/sc2wol/docs/en_Starcraft 2 Wings of Liberty.md

    revert change waiting for that page to be updated

    * Update worlds/witness/docs/setup_en.md

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/soe/docs/multiworld_en.md

    Fixed Typo

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/adventure/docs/en_Adventure.md

    * Update worlds/witness/docs/setup_en.md

    * Updated Stardew valley to hopefully get rid of the merge conflicts

    * Didn't work :dismay:

    * Delete worlds/sc2wol/docs/setup_en.md

    I think this will fix the merge issue

    * Now it should work

    * Woops

    ---------

    Co-authored-by: Scipio Wright <[email protected]>
    Co-authored-by: black-sliver <[email protected]>

commit 218cd45
Author: Silvris <[email protected]>
Date:   Fri Mar 22 03:02:38 2024 -0500

    APProcedurePatch: fix RLE/COPY incorrect sizing (ArchipelagoMW#3006)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    * Update Files.py

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 4196bde
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 21 16:38:36 2024 -0400

    Docs: Fixing special_range_names example (ArchipelagoMW#3005)

commit 40f843f
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 11:00:53 2024 -0500

    Lingo: Minor game data fixes (ArchipelagoMW#3003)

commit da333fb
Author: GodlFire <[email protected]>
Date:   Thu Mar 21 09:52:16 2024 -0600

    Shivers: Adds missing logic rule for skull dial door location (ArchipelagoMW#2997)

commit 43084da
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 21 16:51:29 2024 +0100

    The Witness: Fix newlines in Witness option tooltips (ArchipelagoMW#2971)

commit 1481674
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 21 11:50:07 2024 -0400

    TUNIC: Shuffle Ladders option (ArchipelagoMW#2919)

commit 30a0aa2
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 10:46:53 2024 -0500

    Lingo: Add item/location groups (ArchipelagoMW#2789)

commit f4b7c28
Author: Silvris <[email protected]>
Date:   Wed Mar 20 17:45:32 2024 -0500

    APProcedurePatch: hotfix changing class variables to instance variables (ArchipelagoMW#2996)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 12864f7
Author: chandler05 <[email protected]>
Date:   Wed Mar 20 22:44:09 2024 +0100

    A Short Hike: Implement New Game (ArchipelagoMW#2577)

commit db02e9d
Author: LiquidCat64 <[email protected]>
Date:   Wed Mar 20 15:03:25 2024 -0600

    Castlevania 64: Implement New Game (ArchipelagoMW#2472)

commit 3231577
Author: Jérémie Bolduc <[email protected]>
Date:   Wed Mar 20 16:57:45 2024 -0400

    Stardew Valley: Fix extended family legendary fishes being locations with fishsanity set to exclude legendary (ArchipelagoMW#2967)

commit e9620be
Author: Magnemania <[email protected]>
Date:   Wed Mar 20 16:56:00 2024 -0400

    SM64: Goal Logic and Hint Bugfixes (ArchipelagoMW#2886)

commit 183ca35
Author: qwint <[email protected]>
Date:   Wed Mar 20 08:39:37 2024 -0500

    CommonClient: Port Casting Bug (ArchipelagoMW#2975)

commit fcaaa19
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:19 2024 -0700

    SMW: Fixes for Bowser being defeatable on Egg Hunt and CI2 DC room access (ArchipelagoMW#2981)

commit 8f7b63a
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:04 2024 -0700

    SMW: Blocksanity logic fixes (ArchipelagoMW#2988)

commit 6f64bb9
Author: Scipio Wright <[email protected]>
Date:   Wed Mar 20 08:46:31 2024 -0400

    Noita: Remove newline from option description so it doesn't look bad on webhost (ArchipelagoMW#2969)

commit d0a9d0e
Author: Bryce Wilson <[email protected]>
Date:   Wed Mar 20 06:43:13 2024 -0600

    Pokemon Emerald: Bump required client version (ArchipelagoMW#2963)

commit 94650a0
Author: Silvris <[email protected]>
Date:   Tue Mar 19 17:08:29 2024 -0500

    Core: implement APProcedurePatch and APTokenMixin (ArchipelagoMW#2536)

    * initial work on procedure patch

    * more flexibility

    load default procedure for version 5 patches
    add args for procedure
    add default extension for tokens and bsdiff
    allow specifying additional required extensions for generation

    * pushing current changes to go fix tloz bug

    * move tokens into a separate inheritable class

    * forgot the commit to remove token from ProcedurePatch

    * further cleaning from bad commit

    * start on docstrings

    * further work on docstrings and typing

    * improve docstrings

    * fix incorrect docstring

    * cleanup

    * clean defaults and docstring

    * define interface that has only the bare minimum required
    for `Patch.create_rom_file`

    * change to dictionary.get

    * remove unnecessary if statement

    * update to explicitly check for procedure, restore compatible version and manual override

    * Update Files.py

    * remove struct uses

    * ensure returning bytes, add token type checking

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <[email protected]>

    * pep8

    ---------

    Co-authored-by: beauxq <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>
MrsMarinaRose added a commit to MrsMarinaRose/archipelago-sms that referenced this pull request Apr 8, 2024
commit f813a7005fadb1c56bb93fee6147b63d9df2b720
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 11:11:10 2024 -0500

    The Messenger: update docs formatting and fix outdated info (#3033)

    * The Messenger: update docs formatting and fix outdated info

    * address review feedback

    * 120 chars

commit 2a0b7e0def5c00cc2ac273b22581b3cde3b6f6a6
Author: LiquidCat64 <[email protected]>
Date:   Sun Mar 31 09:55:55 2024 -0600

    CV64: A couple of very small docs corrections. (#3057)

commit 03d47e460e434b897b313c2ba452d785ecbacebe
Author: Ixrec <[email protected]>
Date:   Sun Mar 31 16:55:08 2024 +0100

    A Short Hike: Clarify installation instructions (#3058)

    * Clarify installation instructions

    * don't mention 'config' folder since it isn't created until the game starts

commit e546c0f7ff2456ddb919a1b65a437a1c61b07479
Author: Silvris <[email protected]>
Date:   Sun Mar 31 10:50:31 2024 -0500

    Yoshi's Island: add patch suffix (#3061)

commit 2ec93ba82a969865a8addc98feb076898978c8e3
Author: Bryce Wilson <[email protected]>
Date:   Sun Mar 31 09:48:59 2024 -0600

    Pokemon Emerald: Fix inconsistent location name (#3065)

commit 4e3d3963941934c77573e6e0b699edf9e26cd647
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 10:47:11 2024 -0500

    The Messenger: Fix precollected notes not being removed from the itempool (#3066)

    * The Messenger: fix precollected notes not being properly removed from pool

    * The Messenger: bump required client version

commit 72c53513f8bdab5506ffa972c1bf6f8573f097d7
Author: Fabian Dill <[email protected]>
Date:   Sun Mar 31 03:57:59 2024 +0200

    WebHost: fix /check creating broken yaml files if files don't end with a newline (#3063)

commit b7ac6a4cbd54d5f8e6672e4a6c6ea708e7e6d4de
Author: Aaron Wagener <[email protected]>
Date:   Fri Mar 29 20:14:53 2024 -0500

    The Messenger: Fix various portal shuffle issues (#2976)

    * put constants in a bit more sensical order

    * fix accidental incorrect scoping

    * fix plando rules not being respected

    * add docstrings for the plando functions

    * fix the portal output pools being overwritten

    * use shuffle and pop instead of removing by content so plando can go to the same area twice

    * move portal pool rebuilding outside mapping creation

    * remove plando_connection cleansing since it isn't shared with transition shuffle

commit 5f0112e78365d19f04e22af92d6ad1f52d264b1f
Author: Zach Parks <[email protected]>
Date:   Fri Mar 29 19:13:51 2024 -0500

    Tracker: Add starting inventory to trackers and received items table. (#3051)

commit bb481256de2a511d3b114f164061d440026be4c4
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 21:48:40 2024 -0500

    Core: Make fill failure error more human parseable (#3023)

commit 301d9de9758e360ccec5399f3f9d922f1c034e45
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 19:31:59 2024 -0500

    Docs: adding games rework (#2892)

    * Docs: complete adding games.md rework

    * remove all the now unused images

    * review changes

    * address medic's review

    * address more comments

commit 9dc708978bd00890afcd3426f829a5ac53cbe136
Author: Trevor L <[email protected]>
Date:   Thu Mar 28 18:26:58 2024 -0600

    Hylics 2: Fix invalid multiworld data, use `self.random` instead of `self.multiworld.random` (#3001)

    * Hylics 2: Fixes

    * Rewrite loop

commit 4391d1f4c13cdf2295481d8c51f9ef8f58bf8347
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 18:05:39 2024 -0600

    Pokemon Emerald: Fix opponents learning non-randomized TMs (#3025)

commit 5d9d4ed9f1e44309f1b53f12413ad260f1b6c983
Author: black-sliver <[email protected]>
Date:   Fri Mar 29 01:01:31 2024 +0100

    SoE: update to pyevermizer v0.48.0 (#3050)

commit c97215e0e755224593fdd00894731b59aa415e19
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 17:23:37 2024 -0400

    TUNIC: Minor refactor of the vanilla_portals function (#3009)

    * Remove unused, change an if to an elif

    * Remove unused import

commit eb66886a908ad75bbe71fac9bb81a0177e05e816
Author: Alchav <[email protected]>
Date:   Thu Mar 28 16:23:01 2024 -0500

    SC2: Don't Filter Excluded Victory Locations (#3018)

commit de860623d17d274289e3e4ab13650f2382e2e0b8
Author: Fabian Dill <[email protected]>
Date:   Thu Mar 28 22:21:56 2024 +0100

    Core: differentiate between unknown worlds and broken worlds in error message (#2903)

commit 74b2bf51613a968eb57a5b138a7ad191324b2dd8
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 15:20:55 2024 -0600

    Pokemon Emerald: Exclude norman trainer location during norman goal (#3038)

commit 74ac66b03228988d0885cff556f962a04873cc54
Author: BadMagic100 <[email protected]>
Date:   Thu Mar 28 08:49:19 2024 -0700

    Hollow Knight: 0.4.5 doc revamp and default options tweaks (#2982)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 80d7ac416493a540548aad67981202a1483b5e53
Author: Silvris <[email protected]>
Date:   Thu Mar 28 09:41:32 2024 -0500

    KDL3: RC1 Fixes and Enhancement (#3022)

    * fix cloudy park 4 rule, zero deathlink message

    * remove redundant door_shuffle bool

    when generic ER gets in, this whole function gets rewritten. So just clean it a little now.

    * properly fix deathlink messages, fix fill error

    * update docs

commit 77311719fa0fa5b67fe92f437c3cfed16bd5136f
Author: Ziktofel <[email protected]>
Date:   Thu Mar 28 15:38:34 2024 +0100

    SC2: Fix HERC upgrades (#3044)

commit cfc1541be9e92f1f59b21f4a81f96fc88f4d9f7e
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 28 15:19:32 2024 +0100

    Docs: Mention the "last received item index" paradigm in the network protocol docs (#2989)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 4d954afd9b2311248083fc389ac737995985be86
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 10:11:20 2024 -0400

    TUNIC: Add link to AP plando guide to connection plando section of game page (#2993)

commit 17748a4bf1cfd5cc11c6596a09ffc1f01434340f
Author: Nicholas Saylor <[email protected]>
Date:   Thu Mar 28 10:00:10 2024 -0400

    Launcher, Docs: Update UI and Set-Up Guide to Reference Options  (#2950)

commit 9182fe563fc18ed4ccaa8370cfed88407140398e
Author: Entropynines <[email protected]>
Date:   Thu Mar 28 06:56:35 2024 -0700

    README: Remove outdated information about launchers (#2966)

    Co-authored-by: Exempt-Medic <[email protected]>

commit bcf223081facd030aa706dc7430a72bcf2fdadc9
Author: t3hf1gm3nt <[email protected]>
Date:   Thu Mar 28 09:54:56 2024 -0400

    TLOZ: Fix markdown issue with game info page (#2985)

commit fa93488f3fceac6c2f51851766543cab3ba121e6
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 28 09:46:00 2024 -0400

    Docs: Consistent naming for "connection plando" (#2994)

commit db15dd4bde442aad99048224bdb0d7dc28c26717
Author: chandler05 <[email protected]>
Date:   Thu Mar 28 08:45:19 2024 -0500

    A Short Hike: Fix incorrect info in docs (#3016)

commit 01cdb0d761a82349afaeb7222b4b59cb1766f4a0
Author: PoryGone <[email protected]>
Date:   Thu Mar 28 09:44:23 2024 -0400

    SMW: Update World Doc for v2.0 Features (#3034)

    Co-authored-by: Scipio Wright <[email protected]>

commit d0ac2b744eac438570e6a2333e76fa212be66534
Author: panicbit <[email protected]>
Date:   Thu Mar 28 10:11:26 2024 +0100

    LADX: fix local and non-local instrument placement (#2987)

    * LADX: fix local and non-local instrument placement

    * change confusing variable name

commit 14f5f0127eb753eaf0431a54bebc82f5e74a1cb9
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:42:35 2024 -0400

    Stardew Valley: Fix potential soft lock with vanilla tools and entrance randomizer + Performance improvement for vanilla tool/skills (#3002)

    * fix vanilla tool fishing rod requiring metal bars
    fix vanilla skill requiring previous level (it's always the same rule or more restrictive)

    * add test to ensure fishing rod need fish shop

    * fishing rod should be indexed from 0 like a mentally sane person would do.

    * fishing rod 0 isn't real, but it definitely can hurt you.

    * reeeeeeeee

commit cf133dde7275e171d388fb466b9ed719ab7ed7c8
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 02:32:27 2024 -0600

    Pokemon Emerald: Fix typo (#3020)

commit ca1812181106a3645e7f7af417590024b377b25e
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:27:49 2024 -0400

    Stardew Valley: Fix generation fail with SVE and entrance rando when Wizard Tower is in place of Sprite Spring (#2970)

commit 1d4512590e0b78355e5c10174a9c6749e1098a72
Author: NewSoupVi <[email protected]>
Date:   Wed Mar 27 21:09:09 2024 +0100

    requirements.txt: _ instead of - to make PyCharm happy (#3043)

commit f7b415dab00338443b68eba51f42614fc40b9152
Author: agilbert1412 <[email protected]>
Date:   Tue Mar 26 19:40:58 2024 +0300

    Stardew valley: Game version documentation (#2990)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 702f006c848c05b847e85f7dbedeef68b70cdcc6
Author: LiquidCat64 <[email protected]>
Date:   Tue Mar 26 07:31:36 2024 -0600

    CV64: Change all mentions of "settings" to "options" and fix a broken link (#3015)

commit 98ce8f8844fd0c62214a5774609382cf6a6bc829
Author: Yussur Mustafa Oraji <[email protected]>
Date:   Tue Mar 26 14:29:25 2024 +0100

    sm64ex: New Options API and WebHost fix (#2979)

commit ea47b90367b4a220c346d8057f3aeb4207d226a1
Author: Scipio Wright <[email protected]>
Date:   Tue Mar 26 09:25:41 2024 -0400

    TUNIC: You can grapple down here without the ladder, neat (#3019)

commit bf3856866c5ea385d0ac58014c71addfdc92637e
Author: agilbert1412 <[email protected]>
Date:   Sun Mar 24 23:53:49 2024 +0300

    Stardew Valley: presets with some of the new available values for existing settings to make them more accurate (#3014)

commit c0368ae0d48b4b2807c5238aeb7b14937282fc3e
Author: Phaneros <[email protected]>
Date:   Sun Mar 24 13:53:20 2024 -0700

    SC2: Fixed missing upgrade from custom tracker (#3013)

commit 36c83073ad8c2ae1912d390ee3976ba0e2eb3f4a
Author: Salzkorn <[email protected]>
Date:   Sun Mar 24 21:52:41 2024 +0100

    SC2 Tracker: Fix grouped items pointing at wrong item IDs (#2992)

commit 2b24539ea5b387a3b62063c8177c373e2e3f8389
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:52:16 2024 +0100

    SC2 Tracker: Use level tinting to let the player know which level he has of Replenishable Magazine (#2986)

commit 7e904a1c78c91fb502706fe030a1f1765f734de4
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:51:46 2024 +0100

    SC2: Fix Kerrigan presence resolving when deciding which races should be used (#2978)

commit bdd498db2321417374d572bff8beede083fef2b2
Author: Alchav <[email protected]>
Date:   Fri Mar 22 15:36:27 2024 -0500

    ALTTP: Fix #2290's crashes (#2973)

commit 355223b8f0af1ee729ffa8b53eb717aa5bf283a4
Author: PinkSwitch <[email protected]>
Date:   Fri Mar 22 15:35:00 2024 -0500

    Yoshi's Island: Implement New Game (#2141)

    Co-authored-by: Silvris <[email protected]>
    Co-authored-by: Alchav <[email protected]>
    Co-authored-by: NewSoupVi <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>

commit aaa3472d5d8d8a7a710bd38386d9eb34046a5578
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 22 21:30:51 2024 +0100

    The Witness: Fix seed bleed issue (#3008)

commit 96d93c1ae313bb031e983c0d40d8be199b302df1
Author: chandler05 <[email protected]>
Date:   Fri Mar 22 15:30:23 2024 -0500

    A Short Hike: Add option to customize filler coin count (#3004)

    Co-authored-by: Exempt-Medic <[email protected]>

commit ca549df20a0a07c30ee2e1bbc2498492b919604d
Author: Silvris <[email protected]>
Date:   Fri Mar 22 15:29:24 2024 -0500

    CommonClient: fix hint tab overlapping (#2957)

    Co-authored-by: Remy Jette <[email protected]>

commit 44988d430dc7d91eaeac7aad681dc024bc19ccce
Author: Star Rauchenberger <[email protected]>
Date:   Fri Mar 22 15:28:41 2024 -0500

    Lingo: Add trap weights option (#2837)

commit 11b32f17abebc08a6140506a375179f8a46bcfe6
Author: Danaël V <[email protected]>
Date:   Fri Mar 22 12:46:14 2024 -0400

    Docs: replacing "setting" to "option" in world docs  (#2622)

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    Added non-AP World specific information

    * Update contributing.md

    Fixed broken link

    * Some minor touchups

    * Update Contributing.md

    Draft for version with picture

    * Update contributing.md

    Small word change

    * Minor updates for conciseness, mostly

    * Changed all instances of settings to options in info and setup guides

    I combed through all world docs and swapped "setting" to "option" when this was refering to yaml options.
    I also changed a leftover "setting" in option.py

    * Update contributing.md

    * Update contributing.md

    * Update setup_en.md

    Woops I forgot one

    * Update Options.py

    Reverted changes regarding options.py

    * Update worlds/noita/docs/en_Noita.md

    Co-authored-by: Scipio Wright <[email protected]>

    * Update worlds/sc2wol/docs/en_Starcraft 2 Wings of Liberty.md

    revert change waiting for that page to be updated

    * Update worlds/witness/docs/setup_en.md

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/soe/docs/multiworld_en.md

    Fixed Typo

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/adventure/docs/en_Adventure.md

    * Update worlds/witness/docs/setup_en.md

    * Updated Stardew valley to hopefully get rid of the merge conflicts

    * Didn't work :dismay:

    * Delete worlds/sc2wol/docs/setup_en.md

    I think this will fix the merge issue

    * Now it should work

    * Woops

    ---------

    Co-authored-by: Scipio Wright <[email protected]>
    Co-authored-by: black-sliver <[email protected]>

commit 218cd45844f9d733618af9088941156cd79b80bc
Author: Silvris <[email protected]>
Date:   Fri Mar 22 03:02:38 2024 -0500

    APProcedurePatch: fix RLE/COPY incorrect sizing (#3006)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    * Update Files.py

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 4196bde597cdbb6186ff614294fd54ff043a0c99
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 21 16:38:36 2024 -0400

    Docs: Fixing special_range_names example (#3005)

commit 40f843f54d5970302caeb2a21b76a4845cf5c0ed
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 11:00:53 2024 -0500

    Lingo: Minor game data fixes (#3003)

commit da333fbb0c88feedd4821a7bade3f56028a02111
Author: GodlFire <[email protected]>
Date:   Thu Mar 21 09:52:16 2024 -0600

    Shivers: Adds missing logic rule for skull dial door location (#2997)

commit 43084da23c719133fcae672e20c9b046e6ef8067
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 21 16:51:29 2024 +0100

    The Witness: Fix newlines in Witness option tooltips (#2971)

commit 14816743fca366b52422ccb19add59d4960f17a3
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 21 11:50:07 2024 -0400

    TUNIC: Shuffle Ladders option (#2919)

commit 30a0aa2c85a7015e2072b5781ed1078965f62f4b
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 10:46:53 2024 -0500

    Lingo: Add item/location groups (#2789)

commit f4b7c28a33bb163768871616023a8cf3879840b4
Author: Silvris <[email protected]>
Date:   Wed Mar 20 17:45:32 2024 -0500

    APProcedurePatch: hotfix changing class variables to instance variables (#2996)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 12864f7b24028fa56135e599f0fe1642c9d2d377
Author: chandler05 <[email protected]>
Date:   Wed Mar 20 22:44:09 2024 +0100

    A Short Hike: Implement New Game (#2577)

commit db02e9d2aabc0f4c1302ac761b3f5547ef00c7c5
Author: LiquidCat64 <[email protected]>
Date:   Wed Mar 20 15:03:25 2024 -0600

    Castlevania 64: Implement New Game (#2472)

commit 32315776ac0ac1a714eb9d58688c479e2038c658
Author: Jérémie Bolduc <[email protected]>
Date:   Wed Mar 20 16:57:45 2024 -0400

    Stardew Valley: Fix extended family legendary fishes being locations with fishsanity set to exclude legendary (#2967)

commit e9620bea777ff1008a09c24a70bf523c94f22c29
Author: Magnemania <[email protected]>
Date:   Wed Mar 20 16:56:00 2024 -0400

    SM64: Goal Logic and Hint Bugfixes (#2886)

commit 183ca35bbaf6c805fdb53396d21d0cba34f9cc5e
Author: qwint <[email protected]>
Date:   Wed Mar 20 08:39:37 2024 -0500

    CommonClient: Port Casting Bug (#2975)

commit fcaaa197a19a3be03965c504ca78dd2c21ce1f84
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:19 2024 -0700

    SMW: Fixes for Bowser being defeatable on Egg Hunt and CI2 DC room access (#2981)

commit 8f7b63a787a0ef05625ae2fad1768251aced0c87
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:04 2024 -0700

    SMW: Blocksanity logic fixes (#2988)

commit 6f64bb98693556ac2635791381cc9651c365b324
Author: Scipio Wright <[email protected]>
Date:   Wed Mar 20 08:46:31 2024 -0400

    Noita: Remove newline from option description so it doesn't look bad on webhost (#2969)

commit d0a9d0e2d1df641668f4f806b45f9577e69229f6
Author: Bryce Wilson <[email protected]>
Date:   Wed Mar 20 06:43:13 2024 -0600

    Pokemon Emerald: Bump required client version (#2963)

commit 94650a02de62956eee8e7e41f61e8a41506b5842
Author: Silvris <[email protected]>
Date:   Tue Mar 19 17:08:29 2024 -0500

    Core: implement APProcedurePatch and APTokenMixin (#2536)

    * initial work on procedure patch

    * more flexibility

    load default procedure for version 5 patches
    add args for procedure
    add default extension for tokens and bsdiff
    allow specifying additional required extensions for generation

    * pushing current changes to go fix tloz bug

    * move tokens into a separate inheritable class

    * forgot the commit to remove token from ProcedurePatch

    * further cleaning from bad commit

    * start on docstrings

    * further work on docstrings and typing

    * improve docstrings

    * fix incorrect docstring

    * cleanup

    * clean defaults and docstring

    * define interface that has only the bare minimum required
    for `Patch.create_rom_file`

    * change to dictionary.get

    * remove unnecessary if statement

    * update to explicitly check for procedure, restore compatible version and manual override

    * Update Files.py

    * remove struct uses

    * ensure returning bytes, add token type checking

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <[email protected]>

    * pep8

    ---------

    Co-authored-by: beauxq <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>

commit 8a8263fa61a6f996667ac2fc4472384c83cfb59d
Author: PoryGone <[email protected]>
Date:   Fri Mar 15 13:02:25 2024 -0400

    SMW: Increment Required Client Version (#2962)

commit 9efc7bae406821d5b0ebfd2c81a32c3c57e7ea70
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 15 17:54:21 2024 +0100

    The Witness: Add junk hint for Zork: Grand Inquisitor (#2961)

commit e6198585c8860f07b07b76d157a711555f16a636
Author: Scipio Wright <[email protected]>
Date:   Fri Mar 15 12:52:05 2024 -0400

    TUNIC: Implement support for connection plando (#2864)

commit 2a8784ef7200a8c5586257dd5c4592608cedacfe
Author: Nicholas Brochu <[email protected]>
Date:   Fri Mar 15 12:35:37 2024 -0400

    Zork Grand Inquisitor: Implement New Game (#2539)

    Adds Archipelago support for Zork Grand Inquisitor, the 1997 point-and-click PC adventure game.

    The client (based on `CommonClient`), on top of its regular Archipelago duties, fully handles the randomization of the game and the monitoring / modification of the game state. No game modding needed at all; the player is ready to play an Archipelago seed if they can play the vanilla game through ScummVM.

    The "reverse engineering" (there's likely a better term for this...) of the game is my own original work and I included an MIT license at the root of my world directory.

    A PopTracker pack was also created to help people learn the game: https://github.com/SerpentAI/ZorkGrandInquisitorAPTracker

commit e0e9fdd86a8dccc2f292f8c23441c66601a56e9e
Author: Ziktofel <[email protected]>
Date:   Fri Mar 15 17:33:03 2024 +0100

    SC2: Multi-campaign (#2954)

    Adds HotS, LotV and NCO campaigns to SC2 game.
    The world's name has changed to reflect that (it's not only Wings of Liberty now)
    The client was patched in a way that can still join to games generated prior this change
    ---------

    Co-authored-by: Magnemania <[email protected]>
    Co-authored-by: EnvyDragon <[email protected]>
    Co-authored-by: Matthew <[email protected]>
    Co-authored-by: hopop201 <[email protected]>
    Co-authored-by: Salzkorn <[email protected]>
    Co-authored-by: genderdruid <[email protected]>
    Co-authored-by: MadiMadsen <[email protected]>
    Co-authored-by: neocerber <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>
    Co-authored-by: Fabian Dill <[email protected]>

commit ed9cbfecb9156dbe581ee7afe2ea23956c0520ab
Author: agilbert1412 <[email protected]>
Date:   Fri Mar 15 19:31:01 2024 +0300

    Stardew Valley: Added a Great Combat requirement to an entrance that could block its own key (#2959)

commit d1ef198566e47c628ab77c534857a8e4877d8dcb
Author: espeon65536 <[email protected]>
Date:   Fri Mar 15 07:05:44 2024 -0600

    OoT: Entrance Spoiler Fixes (#2500)

commit 1324bccc894e5fc2f97baced802dd793855fbc5f
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 15 14:00:10 2024 +0100

    The Witness: Add newly submitted junk hints (#2949)

commit cafacfe754877d8f9a9659032ccd4bf25fe072bd
Author: PoryGone <[email protected]>
Date:   Fri Mar 15 08:58:20 2024 -0400

    SA2B: Add CHANGELOG.md (#2945)

commit e1038b443155d6aa195bcd489feb2b17fa677b48
Author: Fabian Dill <[email protected]>
Date:   Fri Mar 15 13:58:08 2024 +0100

    Core: increment version (#2958)

commit 2e8a84121e90e895c514103a9988226123135ca2
Author: PoryGone <[email protected]>
Date:   Fri Mar 15 08:57:43 2024 -0400

    DKC3: Add CHANGELOG.md (#2946)

commit 0342c1e09d1fb33fd4997c207bfb062d2547c286
Author: PoryGone <[email protected]>
Date:   Fri Mar 15 08:57:05 2024 -0400

    Celeste 64: Add CHANGELOG.md (#2948)

commit f330e5835c9ff180be7df1595f3781a9765ef3e2
Author: PoryGone <[email protected]>
Date:   Fri Mar 15 08:56:12 2024 -0400

    SMW: Add CHANGELOG.md (#2947)

commit 329a2f9175cde19a287e09421aaa3f6fd51e3f6c
Author: Silent <[email protected]>
Date:   Fri Mar 15 08:53:41 2024 -0400

    TUNIC: Updated display name for a few options (#2953)

commit 31249ec6e2b37e481f5eb006820b2068d5b727bb
Author: Silvris <[email protected]>
Date:   Fri Mar 15 07:47:31 2024 -0500

    Launcher: make scrollbar more prominent (#2955)

commit 52e65e208e2bd7b0a55e4c7e5fa73f607934b572
Author: agilbert1412 <[email protected]>
Date:   Fri Mar 15 15:05:14 2024 +0300

    Stardew Valley: 5.x.x - The Allsanity Update (#2764)

    Major Content update for Stardew Valley, including the following features

    - Major performance improvements all across the Stardew Valley apworld, including a significant reduction in the test time
    - Randomized Farm Type
    - Bundles rework (Remixed Bundles and Missing Bundle!)
    - New Settings:
      * Shipsanity - Shipping individual items
      * Monstersanity - Slaying monsters
      * Cooksanity - Cooking individual recipes
      * Chefsanity - Learning individual recipes
      * Craftsanity - Crafting individual items
    - New Goals:
      * Protector of the Valley - Complete every monster slayer goal
      * Full Shipment - Ship every item
      * Craftmaster - Craft every item
      * Gourmet Chef - Cook every recipe
      * Legend - Earn 10 000 000g
      * Mystery of the Stardrops - Find every stardrop (Maguffin Hunt)
      * Allsanity - Complete every check in your slot
    - Building Shuffle: Cheaper options
    - Tool Shuffle: Cheaper options
    - Money rework
    - New traps
    - New isolated checks and items, including the farm cave, the movie theater, etc
    - Mod Support: SVE [Albrekka]
    - Mod Support: Distant Lands [Albrekka]
    - Mod Support: Hat Mouse Lacey [Albrekka]
    - Mod Support: Boarding House [Albrekka]

    Co-authored-by: Witchybun <[email protected]>
    Co-authored-by: Witchybun <[email protected]>
    Co-authored-by: Jouramie <[email protected]>
    Co-authored-by: Alchav <[email protected]>

commit f7da8335728a2332068b3dfb88e12be7074932ef
Author: qwint <[email protected]>
Date:   Fri Mar 15 03:27:42 2024 -0500

    CommonClient: Don't retry connection when connection details are invalid (#2831)

commit afe7aea536dcee45f5d52057b25254cdac43fb62
Author: Star Rauchenberger <[email protected]>
Date:   Fri Mar 15 04:26:00 2024 -0400

    Lingo: Pre-compile datafile to improve loading time (#2829)

commit e534abeab0195b3a66945bf221779c1b83162c6c
Author: Doug Hoskisson <[email protected]>
Date:   Thu Mar 14 14:29:29 2024 -0700

    Core: add layer for patches that don't use `Patch.py` (#2889)

    * Core: add layer for patches that don't use `Patch.py`

    * bump container version

    * APAutoPatchInterface name

    * mystic quest change

    * OoT and Adventure changes

    * missed name in docstring

    * container version compatibility

commit fa233b25831a4a0ea0d7ca3dae5381e164783c30
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 14 05:37:10 2024 -0600

    Pokemon Emerald: v2 Update (#2918)

commit 3e3965272da10b793ed1d4c803e6b80ee59840e3
Author: Silvris <[email protected]>
Date:   Wed Mar 13 15:05:38 2024 -0500

    KDL3: Ensure all abilities accessible on non-minimal (#2929)

commit 72e6383cc799affce623290d3764fe7e2e2f6bb8
Author: qwint <[email protected]>
Date:   Wed Mar 13 06:45:43 2024 -0500

    HK: Removes Vanilla Items from ItemPool and Uses Grimmchild1 when relevant (#2898)

commit 67ed0fdca56220d885c81160ab6864bd30b0c163
Author: black-sliver <[email protected]>
Date:   Wed Mar 13 08:25:51 2024 +0100

    CI: update actions (#2943)

commit c4ec8682d501cafeb916f9a7fac549df6af4a0bf
Author: Aaron Wagener <[email protected]>
Date:   Tue Mar 12 17:29:32 2024 -0500

    Core: fix incorrect ordering on the always_allow static method (#2938)

commit 1705213353b3d7fe1110d4d932c22ae09206d649
Author: Alchav <[email protected]>
Date:   Tue Mar 12 17:21:58 2024 -0500

    FFMQ: Update Map Shuffle Seed description (#2658)

    * Update Map Shuffle Seed description

    * Update worlds/ffmq/Options.py

    Co-authored-by: Exempt-Medic <[email protected]>

    ---------

    Co-authored-by: Exempt-Medic <[email protected]>

commit d953927b3a1eb417975d6aa011107d813db87544
Author: Kory Dondzila <[email protected]>
Date:   Tue Mar 12 17:17:18 2024 -0500

    Shivers: Renaming for clarity and consistency (#2869)

    * Moves plaque location to front for better tracker referencing.

    * Tiki should be Shaman.

    * Hanging should be Gallows.

    * Merrick spelling.

    * Clarity change.

commit ecd84fd1ca0f5f8bed75dba2b96f0c7cc51f992b
Author: black-sliver <[email protected]>
Date:   Tue Mar 12 22:27:17 2024 +0100

    CI: build: create setup (#2936)

    * CI: build: create setup

    also add /DNO_SIGNTOOL to inno_setup.iss

    * CI: build: trigger when changing setup-related files

commit fb9ef19c1597c23c9022486d5554edc793bbd3fb
Author: Silvris <[email protected]>
Date:   Tue Mar 12 16:08:12 2024 -0500

    Core: add list/dict merging feature to triggers (#2793)

    * proof of concept

    * add dict support, block top/game level merge

    * prevent key error when option being merged is new

    * update triggers guide

    * Add documentation about add/remove/replace

    * move to trailing name instead of proper tag

    * update docs

    * confirm types

    * Update Utils.py

    * Update Generate.py

    * pep8

    * move to + syntax

    * forgot to support sets

    * specify received type of type error

    * Update Generate.py

    Co-authored-by: Fabian Dill <[email protected]>

    * Apply suggestion from review

    * add test for update weights

    * move test to new test case

    * Apply suggestions from code review

    Co-authored-by: black-sliver <[email protected]>

    ---------

    Co-authored-by: Fabian Dill <[email protected]>
    Co-authored-by: black-sliver <[email protected]>

commit 03d403ff516cd250e78515e8a9d0748fece9bf88
Author: Doug Hoskisson <[email protected]>
Date:   Tue Mar 12 14:03:57 2024 -0700

    Core: typing for `Option.default` and a few other ClassVars (#2899)

    * Core: typing for `Option.default` and a few other `Option` class variables

    This is a replacement for https://github.com/ArchipelagoMW/Archipelago/pull/2173

    You can read discussion there for issues we found for why we can't have more specific typing on `default`

    instead of setting a default in `Option` (where we don't know the type), we check in the metaclass to make sure they have a default.

    * NumericOption doesn't need the type annotation that brings out the mypy bug

    * SoE default ClassVar

commit f8d5fe0e1e5b88b6cc7fb7272a0fd679819f69b4
Author: PoryGone <[email protected]>
Date:   Tue Mar 12 17:00:13 2024 -0400

    SMW: v2.0 Content Update (#2762)

    Changelog:

    Features:
    - New optional Location Checks
      - 3-Up Moons
      - Hidden 1-Ups
      - Bonus Blocks
      - Blocksanity
        - All blocks that contain coins or items are included, with the exception of:
          - Blocks in Top Secret Area & Front Door/Bowser Castle
          - Blocks that are unreachable without glitches/unreasonable movement
    - New Items
      - Special Zone Clear
      - New Filler Items
        - 1 Coin
        - 5 Coins
        - 10 Coins
        - 50 Coins
      - New Trap Items
        - Reverse Trap
        - Thwimp Trap
    - SFX Shuffle
    - Palette Shuffle Overhaul
      - New Curated Palette can now be used for the Overworld and Level Palette Shuffle options
      - Foreground and Background Shuffle options have been merged into a single setting
    - Max possible Yoshi Egg value is 255
      - UI in-game is updated to handle 3-digits
      - New `Display Received Item Popups` option: `progression_minus_yoshi_eggs`

    Quality of Life:
    - In-Game Indicators are now displayed on the map screen for location checks and received items
    - In-level sprites are displayed upon receiving certain items
    - The Camera Scroll unlocking is now only enabled on levels where it needs to be
    - SMW can now handle receiving more than 255 items
    - Significant World Code cleanup
      - New Options API
      - Removal of `world: MultiWorld` across the world
    - The PopTracker pack now has tabs for every level/sublevel, and can automatically swap tabs while playing if connected to the server

    Bug Fixes:
    - Several logic tweaks/fixes

    "Major credit to @TheLX5 for being the driving force for almost all of this update. We've been collaborating on design and polish of the features for the last few months, but all of the heavy lifting was all @TheLX5."

commit b6b88070be542b6458220f89d7c65f1bec95fab3
Author: Remy Jette <[email protected]>
Date:   Tue Mar 12 13:13:52 2024 -0700

    CommonClient: Fix item link group name when member slot name contains brackets (#2794)

commit a6e1ea8c48f7512c33951571dcc57546020f8188
Author: Fabian Dill <[email protected]>
Date:   Tue Mar 12 20:40:58 2024 +0100

    CommonClient: use rich text for /received (#2715)

commit 2692604c091a3e0d87e2535474d1f180c86da3d6
Author: Alchav <[email protected]>
Date:   Tue Mar 12 14:40:16 2024 -0500

    Core: String comparison with FreeText class (#2942)

commit 4bf676e588d3bc814baf345072524174e6b28749
Author: NewSoupVi <[email protected]>
Date:   Tue Mar 12 20:04:13 2024 +0100

    The Witness: Obelisk Keys (#2805)

commit ae6c16bde19e0f299c60ecd8332435bee5e193e9
Author: Fabian Dill <[email protected]>
Date:   Tue Mar 12 19:58:02 2024 +0100

    MultiServer: send new read_hints datastore values on change (#2558)

commit c795c72471b9fe36df362c9ccce712adc0feddde
Author: Fabian Dill <[email protected]>
Date:   Tue Mar 12 14:52:57 2024 +0100

    kvui: allow sorting hints in the hint tab (#2684)

commit 30ad2aa4a8e506728e55dbc47c8e986937e1c987
Author: NewSoupVi <[email protected]>
Date:   Tue Mar 12 14:51:10 2024 +0100

    The Witness: Don't unnecessarily break people's 0.4.4 yamls (#2940)

commit 51243abea1b0ad0aefe076ebdad5484175353297
Author: Aaron Wagener <[email protected]>
Date:   Tue Mar 12 03:27:41 2024 -0500

    Docs: improve AutoWorld method docstrings (#2509)

    * clarify some autoworld docstrings

    * revert accidental change

commit cb2c00f6441793efc93209a6a3ab8d7710562c37
Author: BadMagic100 <[email protected]>
Date:   Tue Mar 12 01:11:13 2024 -0700

    CI: Don't auto-remove content based labels (#2941)

commit 6d3f7865ff238306df8cde0cf446507db5376614
Author: Aaron Wagener <[email protected]>
Date:   Mon Mar 11 18:55:28 2024 -0500

    The Messenger: fix items accessibility reachability bug due to new rules (#2937)

commit a7384b4b63baf82ed1ded7b89b39f244eb7b21f1
Author: JaredWeakStrike <[email protected]>
Date:   Mon Mar 11 19:52:16 2024 -0400

    KH2: Update all instances of multiworld.option_name to option.option_name (#2634)

    * update the multiworld to options

    * Update worlds/kh2/Rules.py

    Co-authored-by: Exempt-Medic <[email protected]>

    * does this work

    * namine sketches

    * wrong branch :)

    ---------

    Co-authored-by: Exempt-Medic <[email protected]>

commit 3d56f3c096e6bb54e8532eaa2690e14340be5290
Author: CubeSoldier <[email protected]>
Date:   Tue Mar 12 00:42:56 2024 +0100

    Docs: Added snes9x-nwa as recommended emulator to the setup guides for SNES games (#1778)

    * Added snes9x-nwa as recommended emulator to the setup guides

    * Removed snes9x-nwa from the setup guides of DKC3 and SMW

    * Update worlds/alttp/docs/multiworld_en.md

    Co-authored-by: Aaron Wagener <[email protected]>

    * Removed duplicate text
    Minor grammar and spelling fixes

    * Unified required software for SM, SMZ3 and SoE with ALTTP

    * Added instructions for usage of BSNES-Plus for ALTTP, SM and SMZ3

    ---------

    Co-authored-by: Aaron Wagener <[email protected]>

commit a3125cb06e4bc142161e245a32fb0f34562fab8a
Author: Jérémie Bolduc <[email protected]>
Date:   Mon Mar 11 19:30:14 2024 -0400

    Core: Fix OptionList and OptionSet to allow Iterable of Iterable (#2911)

    * fix, maybe

    * typegard for iterable of any

    * wow I'm so tired I just changed the method name without changing what it actually does...

    * also exclude bytes in is_iterable_but_str

    * apply pr comments

    * Update Utils.py

    Co-authored-by: Doug Hoskisson <[email protected]>

    * Revert "also exclude bytes in is_iterable_but_str"

    This reverts commit cf087d2ee20727dbbe561c8c0f90aa85ef0a5d4b.

    ---------

    Co-authored-by: Doug Hoskisson <[email protected]>

commit d3019421de80b4aa44739fc836bd75b02a250067
Author: Silvris <[email protected]>
Date:   Mon Mar 11 17:26:21 2024 -0500

    KDL3: fix invalid inno_setup components and deathlink messages (#2922)

    * remove component checking

    * fix missing deathlink messages

    * move reads under deathlink check

commit d20d09e68282418cba441ab0217f6a3b30d622f3
Author: Aaron Wagener <[email protected]>
Date:   Mon Mar 11 17:23:41 2024 -0500

    The Messenger: content update (#2823)

    * map option objects to a `World.options` dict

    * convert RoR2 to options dict system for testing

    * add temp behavior for lttp with notes

    * copy/paste bad

    * convert `set_default_common_options` to a namespace property

    * reorganize test call order

    * have fill_restrictive use the new options system

    * update world api

    * update soe tests

    * fix world api

    * core: auto initialize a dataclass on the World class with the option results

    * core: auto initialize a dataclass on the World class with the option results: small tying improvement

    * add `as_dict` method to the options dataclass

    * fix namespace issues with tests

    * have current option updates use `.value` instead of changing the option

    * update ror2 to use the new options system again

    * revert the junk pool dict since it's cased differently

    * fix begin_with_loop typo

    * write new and old options to spoiler

    * change factorio option behavior back

    * fix comparisons

    * move common and per_game_common options to new system

    * core: automatically create missing options_dataclass from legacy option_definitions

    * remove spoiler special casing and add back the Factorio option changing but in new system

    * give ArchipIDLE the default options_dataclass so its options get generated and spoilered properly

    * reimplement `inspect.get_annotations`

    * move option info generation for webhost to new system

    * need to include Common and PerGame common since __annotations__ doesn't include super

    * use get_type_hints for the options dictionary

    * typing.get_type_hints returns the bases too.

    * forgot to sweep through generate

    * sweep through all the tests

    * swap to a metaclass property

    * move remaining usages from get_type_hints to metaclass property

    * move remaining usages from __annotations__ to metaclass property

    * move remaining usages from legacy dictionaries to metaclass property

    * remove legacy dictionaries

    * cache the metaclass property

    * clarify inheritance in world api

    * move the messenger to new options system

    * add an assert for my dumb

    * update the doc

    * rename o to options

    * missed a spot

    * update new messenger options

    * comment spacing

    Co-authored-by: Doug Hoskisson <[email protected]>

    * fix tests

    * fix missing import

    * make the documentation definition more accurate

    * use options system for loc creation

    * type cast MessengerWorld

    * fix typo and use quotes for cast

    * LTTP: set random seed in tests

    * ArchipIdle: remove change here as it's default on AutoWorld

    * Stardew: Need to set state because `set_default_common_options` used to

    * The Messenger: update shop rando and helpers to new system; optimize imports

    * Add a kwarg to `as_dict` to do the casing for you

    * RoR2: use new kwarg for less code

    * RoR2: revert some accidental reverts

    * The Messenger: remove an unnecessary variable

    * remove TypeVar that isn't used

    * CommonOptions not abstract

    * Docs: fix mistake in options api.md

    Co-authored-by: Doug Hoskisson <[email protected]>

    * create options for item link worlds

    * revert accidental doc removals

    * Item Links: set default options on group

    * Messenger: Limited Movement option first draft

    * The Messenger: add automated setup through the launcher

    * drop tomllib

    * don't uselessly import launcher

    * The Messenger: fix missing goal requirement for power seal hunt

    * make hard mode goal harder

    * make fire seal a bit more lenient

    * have limited movement force minimal accessibility

    * add an early meditation option

    * clean up precollected notes tests a bit

    * add linux support

    * add steam deck support

    * await monokickstart

    * minor styling cleanup

    * more minor styling cleanup

    * Initial implementation of Generic ER

    * Move ERType to Entrance.Type, fix typing imports

    * updates based on testing (read: flailing)

    * Updates from feedback

    * Various bug fixes in ERCollectionState

    * Use deque instead of queue.Queue

    * Allow partial entrances in collection state earlier, doc improvements

    * Prevent early loops in region graph, improve reusability of ER stage code

    * Typos, grammar, PEP8, and style "fixes"

    * use RuntimeError instead of bare Exceptions

    * return tuples from connect since it's slightly faster for our purposes

    * move the shuffle to the beginning of find_pairing

    * do er_state placements within pairing lookups to remove code duplication

    * requested adjustments

    * Add some temporary performance logging

    * Use CollectionState to track available exits and placed regions

    * remove seal shuffle option

    * some cleanup stuff

    * portal rando progress

    * pre-emptive region creation

    * seals need to be in the datapackage

    * put mega shards in old order

    * fix typos and make it actually work

    * fix more missed connections and add portal events

    * fix all the portal rando code

    * finish initial logic implementation

    * remove/comment out debug stuff

    * does not actually support plando yet

    * typos and fix a crash when 3 available portals was selected

    * finish initial logic for all connections and remove/rename as necessary

    * fix typos and add some more leniency

    * move item classification determination to its own method rather than split between two spots

    * super complicated solution for handling installing the alpha builds

    * fix logic bugs and add a test

    * implement logic to shuffle the cutscene portals even though it's probably not possible

    * just use the one list

    * fix some issues with the mod checking/downloading

    * Core: have webhost slot name links go through the launcher so that components can use them

    * add uri support to the launcher component function

    * generate output file under specific conditions

    * cleanup connections.py

    * set topology_present to true when portals are shuffled

    * add requirement for ghost pit loc since it's pretty hard without movement

    * bring hard logic back

    * misc cleanup

    * fix asset grabbing of latest version

    * implement ER

    * just use the entrances for the spoiler instead of manipulating the cache

    * remove test defaults

    * remove excessive comprehension

    * cleanup and cater data for the client

    * add elemental skylands to the shuffle pools

    * initial attempts at hint text

    * use network items for offline seeds

    * change around the offline seed data again

    * move er after portal shuffle and ensure a minimal sphere 1

    * Add a method to automatically disconnect entrances in a coupled-compliant way

     Update docs and cleanup todos

    * Make find_placeable_exits deterministic by sorting blocked_connections set

    * add more ER transitions

    * fix spoiler output of portal warps

    * add path to hint_data

    * rename entrance to tot to be a bit clearer

    * cleanup imports and update description for hard logic

    * cleanup for PR to main

    * missed a spot

    * cleanup monokickstart

    * add location_name_groups

    * update docs for new setup

    * client can reconnect on its own now, no need for a button.

    * fix mod download link grabbing the wrong assets

    * cleanup mod pulling a bit and display version it's trying to update to

    * plando support

    * comment out broken steam deck support

    * supports plando

    * satisfy flake for currently unused file

    * fix the items accessibility test

    * review comments

    * add searing crags portal to starting portals when disabled like option says

    * address sliver comments

    * rip out currently unused transition shuffle

    * add aerobatics warrior requirement to fire seal

    ---------

    Co-authored-by: el-u <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>
    Co-authored-by: Sean Dempsey <[email protected]>
    Co-authored-by: qwint <[email protected]>

commit 078d7930734066f1766d2f35b5f595b626666c31
Author: Aaron Wagener <[email protected]>
Date:   Mon Mar 11 17:22:30 2024 -0500

    Tests: add test for 2-player-multiworlds (#2386)

    * Tests: add test for all games multiworld and test for two player multiworld per game

    * make assertSteps behave like call_all

    * review improvements

    * fix stage calling and loc copying in accessibility

    * add docstrings

    * lttp is on the options api now

    * skip the all games multiworld for now. likely needs to be modified to test specific worlds

    * move skip to the class

commit 5fecb7f0433c306b8ddb4b368eb14fdbd0454e3b
Author: Aaron Wagener <[email protected]>
Date:   Mon Mar 11 04:00:28 2024 -0500

    LTTP: fix some hashed string comparisons (#2927)

commit 9c920fbc53b15f7759a04021391f69d8d5082be2
Author: chandler05 <[email protected]>
Date:   Mon Mar 11 03:55:22 2024 -0500

    MultiServer: Improve command response to help troubleshooting (#2833)

    * Update MultiServer.py

    * Improve logging again

    * Add to other log as well

    * Update MultiServer.py

commit fed3d04c8daba1f1de53adc25989493943f701ea
Author: wildham <[email protected]>
Date:   Mon Mar 11 04:51:51 2024 -0400

    FF1: Fix resending items on disconnect/connect (#2817)

commit 6badc752375630bdd1054fec6d3d89a5f90ba3ae
Author: Bryce Wilson <[email protected]>
Date:   Mon Mar 11 00:16:48 2024 -0600

    BizHawkClient: Fix error logging in python 3.8 (#2930)

commit c7e735da15278e75beaa411a65844aae200f3e2e
Author: axe-y <[email protected]>
Date:   Sun Mar 10 17:12:55 2024 -0400

    DLCQuest: progression coin bundle update (#2785)

commit 2e1a5b0e3b0acd0559fc9e2246ad9803d5086da2
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 10 12:47:45 2024 -0500

    Core: create the per world random object in the world constructor (#2083)

    * Core: create the per world random object in the world constructor

    * remove the check that multiworld exists

    * add a deprecation warning to per_slot_randoms

    * move random import and fix conflicts

    * assert worlds don't exist before setting the multiworld seed

    * fix the dlcq and sdv tests

    * actually use the seed

commit b8c24def8d96d0dc61daba06074d393cb2511c21
Author: Seldom <[email protected]>
Date:   Sun Mar 10 08:03:44 2024 -0700

    Terraria: Logic fix: Witch Doctor sells Bewitching Table (#2880)

commit 3602ed45a48232ea2d0ba6738636b56aaa10a8c4
Author: Kappatechy <[email protected]>
Date:   Sun Mar 10 08:36:42 2024 -0600

    Bumper Stickers: logic fixes for "off-by-one" errors (#2855)

    * Corrected logic error.

    Per discussion here: https://discord.com/channels/731205301247803413/1148330200891932742/1192138309120577646

    At the moment, the logic expects Treasure Bumper 2 to require 1 bumper, Treasure Bumper 3 to require 2, etc., and for Treasure Bumper 1 to be in Sphere 1. This is incorrect, each Bumper check should require 1 Bumper item of it's type.

    This corrects that. I've verified I was able to generate with it by editing my apworld locally, but I'm also not a programmer and don't know anything about tests. However, I'd think this is a simple change.

    * Correct logic in Bumper Sticker unit tests

    Off By One errors were rampant in the Bumper Stickers unit test logic. This should correct those errors.

    * Correct use of "range" function

    The function setting the access rules for Treasure and Booster Bumpers was stopping one short of being applied to all the related locations. This has been corrected.

    * Restoring and clarifying designer's original level access intent

    The original creator of the AP version of Bumper Stickers intentionally set the Treasure Bumper requirements to logically reach each level 1 higher than the actual game requires, and logic tests were built based on this. This design decision has now been restored.

    * Revert "Restoring and clarifying designer's original level access intent"

    This reverts commit 5186c5fcc3229a60569cdb96d774d4ccac721a06.

    * Correct test logic for level 5

    While 33 Treasure Bumpers are generated, only 32 are needed to reach level 5. This push corrects the unit test for the level 5 checks.

    * Rename generically-named variables

    Change variables from generic names (x, y, n) to more meaningful names, for ease of readability.

    ---------

    Co-authored-by: The T <[email protected]>

commit 37add8ee594582f5a0f06103d152ed368d41f8a1
Author: panicbit <[email protected]>
Date:   Sun Mar 10 14:48:00 2024 +0100

    LADX: shuffle instruments (#2804)

    * ladx: shuffle instruments

    * set correct default for shuffled instruments

commit 5a4d88d554b25b446169d6cf33d1bd7974fe73bd
Author: qwint <[email protected]>
Date:   Sun Mar 10 08:46:44 2024 -0500

    Clients: add /item_groups and /location_groups (#2822)

commit a4f89396d9a8eafe412bb5a6da7ba8506231e878
Author: Robyn (Reckoner) <[email protected]>
Date:   Sun Mar 10 12:50:25 2024 +0000

    Docs: Fix typos in Minecraft info page (#2686)

    Fixed typos in game page

commit 8c11c385f36716edbc15e0e43f667f22b1754a32
Author: Zach Parks <[email protected]>
Date:   Sun Mar 10 01:56:57 2024 -0600

    ALTTP: Fix NotImplemented error when using non-`none` values for `timer`. (#2924)

commit 939a5ec959108c35a49b1e12a56ae51f45ebb4fb
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 10 01:18:25 2024 -0600

    LTTP: remove multiworld = None (#2290)

commit 4ce58c02403f044ba18bbf4640c6abe856d5714a
Author: axe-y <[email protected]>
Date:   Sun Mar 10 03:13:52 2024 -0400

    DLC Quest: AP World Status fix (#2908)

commit be802b47231ededcb3d9b289d49c482820191ead
Author: Remy Jette <[email protected]>
Date:   Sat Mar 9 23:12:55 2024 -0800

    Core: Remove extra " character in /forbid_release help message (#2923)

    Was pointed out in the Discord: https://discord.com/channels/731205301247803413/731205301818359821/1215882443261870190

commit 3c4ebb21140e5fd8ec6df63c1033915211ae8b01
Author: NewSoupVi <[email protected]>
Date:   Sat Mar 9 00:03:02 2024 +0100

    The Witness: Fix... I don't know how to explain this one (#2920)

    ```
    for hint in generated_hints:
        hint = generated_hints.pop(0)
    ```

    lmao

commit 3e3b4c6732be219f756f7db22e8973540a1ae57a
Author: Seafo <[email protected]>
Date:   Fri Mar 8 16:15:36 2024 -0500

    Minecraft: Add Pickaxes to the documentation (#2688)

commit 3e0ff3f72dc9e3a6bc9817d64def2ada7a00eee8
Author: Silvris <[email protected]>
Date:   Fri Mar 8 00:46:14 2024 -0600

    KDL3: Post-PR adjustments (#2917)

    * logic adjustments, add patch_suffix

    * forgot the other two consumables

commit b4bb88fcf7986859bb9efb2d6a159fcebcbab105
Author: Silvris <[email protected]>
Date:   Thu Mar 7 03:18:22 2024 -0600

    SNIClient: dynamically generate patch file identifier (#2870)

    Co-authored-by: beauxq <[email protected]>

commit 862d77820d0a2826a8a426869c3b7149173a336a
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 7 02:48:55 2024 -0500

    Fill: Improve clarity of remaining_fill messages (#2894)

    * Update Fill.py

    Make the fill message more descriptive

    * Removing kwarg

commit c6b1039e0fc5a8b41c934ecb96534c9e937985eb
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 7 01:40:09 2024 -0600

    Core: call from_any on the options class when creating item links options (#2783)

commit ac791f299975cdc0ef6ce34f03c215bc6d830992
Author: BadMagic100 <[email protected]>
Date:   Wed Mar 6 23:24:08 2024 -0800

    CI: Avoid race condition in labeler workflow (#2910)

commit e33ea0147bd19bcf4b03bb2cd25ff1d18aaa89f8
Author: Alchav <[email protected]>
Date:   Wed Mar 6 10:43:34 2024 -0500

    LTTP: Missed per_slot_random change (#2907)

commit db30a0116e66abdef37d0c83fadba8a194c4f526
Author: PoryGone <[email protected]>
Date:   Tue Mar 5 18:55:56 2024 -0500

    Celeste 64: Implement New Game (#2798)

    Co-authored-by: chandler05 <[email protected]>
    Co-authored-by: Silvris <[email protected]>
    Co-authored-by: Zach Parks <[email protected]>

commit a5a1494a969fc032d4a167f36190c28f939a2d22
Author: Alchav <[email protected]>
Date:   Tue Mar 5 17:01:45 2024 -0500

    Pokemon R/B: The Big Door Shuffle Update (#2861)

    - Perhaps most critically, adds the ability for the door shuffle code to catch door shuffle exceptions and try again. Will try up to 10 times. Should mean Door Shuffle does not need to be disallowed in the big async🤞
    - Door Shuffle code has been made drastically faster by searching for the first dead end instead of sorting the whole list of entrances by whether they are dead ends.
    - Renames Full to Interiors, and adds a new Full door shuffle that shuffles interior-to-interior doors separately from exterior-to-interior doors.
    - Adds a new Decoupled door shuffle.
    - Warp Tile Shuffle now has 3 separate options, Vanilla, Shuffle, and Mixed. Shuffle shuffles the warp tiles among themselves, Mixed mixes them into the Door Shuffle pool.
    - Safari Zone connections are now shuffled on Full, Insanity, and Decoupled.
    - On Simple Door Shuffle, the Town Map is updated to show the new dungeon locations. The Town Map has been updated to show the locations of dungeons that previously were not shown unless you opened the map within them, and the Sea Cottage has been removed from it.
    - Adds Auto Level Scaling that chooses the level scaling mode based on the Door Shuffle choice.
    - Fixes issues with Flash and Fly move interventions (where it ensures an available Pokémon that can learn it is reachable depending on settings).
    - Fixes a possible generation crash with type chart randomization.
    - Should fix an issue where `stage_fill_hook` was able to remove the wrong item from the item pool resulting in a duplicated item reference existing.
    - Adds a stage_post_fill function which searches for Pokémon in order of spheres, setting all but the first advancement Pokémon event found to `useful` so that spoiler playthrough calculation skips them. In a solo game gen test, this cut gen time from 15 seconds to 10 seconds with same seed number. Difference is likely to be much more massive in larger multiworlds.

commit bfa9e7da006272065143ff501ae0a2bdb8501a48
Author: Zach Parks <[email protected]>
Date:   Tue Mar 5 15:59:34 2024 -0600

    Generate: Trim slot names again after 16 character limitation slice. (#2906)

commit 938beb34df65827998079cf4f8cc8121824317ff
Author: t3hf1gm3nt <[email protected]>
Date:   Tue Mar 5 16:55:59 2024 -0500

    TLOZ: use proper rule for completion condition (#2872)

    Was pointed out that using `state.locations.checked` is not the best solution, even if it's for a completion condition and the Ganon event location would always have the Triforce of Power event item. So let's just check for the Triforce of Power instead. Thank you Zunawe for pointing it out and Silvris for providing the proper rule to use.

commit 4ddfb7ce8bc2f249b45e2ede375d0b6f3fe08a13
Author: NewSoupVi <[email protected]>
Date:   Tue Mar 5 22:54:02 2024 +0100

    The Witness: Laser Hints (#2895)

commit b147c5bf8a6a37d81fb3baca1b074f1512cdc15f
Author: NewSoupVi <[email protected]>
Date:   Tue Mar 5 22:53:00 2024 +0100

    The Witness: Bump required client version (#2897)

    Bump required client version from 0.4.4 to 0.4.5.

    The [client](https://github.com/NewSoupVi/The-Witness-Randomizer-for-Archipelago/releases/tag/v5.0.0p14) now connects with version 0.4.5.

commit bf60e905ec2a07a7291c05e7e927ee1c884e1b9b
Author: NewSoupVi <[email protected]>
Date:   Tue Mar 5 22:51:29 2024 +0100

    The Witness: Fix absolute world import (#2905)

commit 6926f384145c6fdac87ee1035212d78000c6a421
Author: Seldom <[email protected]>
Date:   Tue Mar 5 11:35:41 2024 -0700

    Terraria: Broken Hero Sword reqs mech bosses (#2879)

commit 644f75978d879cd490576ee7d852abcd9d2c4c20
Author: Silvris <[email protected]>
Date:   Tue Mar 5 09:59:55 2024 -0600

    Kirby's Dream Land 3: Implement New Game (#2119)

    Co-authored-by: Alchav <[email protected]>
    Co-authored-by: Aaron Wagener <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>
    Co-authored-by: Fabian Dill <[email protected]>

commit af4172f32fa29c364f1bc62eefbee80df601643c
Author: black-sliver <[email protected]>
Date:   Tue Mar 5 16:55:12 2024 +0100

    Docs: Add review expectations to contributing.md (#2843)

    Co-authored-by: BadMagic100 <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>

commit 45a15004a48d99c79939ed8bcdb28abf093562eb
Author: Silent <[email protected]>
Date:   Tue Mar 5 10:54:18 2024 -0500

    TUNIC: Update setup guide and game page docs (#2832)

commit ce43c5258975b4338c53c942be00f5895e6d84bd
Author: black-sliver <[email protected]>
Date:   Tue Mar 5 16:49:34 2024 +0100

    Doc: fix typo in commands_en.md (#2765)

commit 7384bbdf23d380ad7da3b0d16a01c2743654af98
Author: Bryce Wilson <[email protected]>
Date:   Tue Mar 5 08:48:37 2024 -0700

    BizHawkClient: Add README (#2689)

    Co-authored-by: Nicholas Saylor <[email protected]>

commit bcbb06d78d36efcef268e6a460bcf88423a347e7
Author: Nicholas Brochu <[email protected]>
Date:   Tue Mar 5 10:46:09 2024 -0500

    Fix usage of `__new__` for `SpecialRange` compatibility fallback (#2513)

commit 26ee9fe05cefea24c907a9a71941846dcf6db6bd
Author: Remy Jette <[email protected]>
Date:   Tue Mar 5 00:36:18 2024 -0800

    Pokemon RB: Fix exceptions raised by /bank (#2836)

    * If the user tried to run `/bank` with no arguments to see the current
      value while disconnected, previously it threw an exception `KeyError:
      'EnergyLinkNone'`. Now it informs the user that they must be connected
      and in-game, like `/bank deposit` and `/bank withdraw` do.

      I'm also open to adding another `if` branch to make `/bank` only check
      for `ctx.server` instead of combining it with the other bank commands,
      to allow connecting to check the bank before the game save is loaded.
      If that's preferred let me know.

    * If the user tried to run `/bank` or `/bank deposit` when the EnergyLink
      hadn't been used yet, they would get a `TypeError` exception. Trying
      `/bank withdraw` would give no output and would crash the lua
      connector script. Now it treats a `None` EnergyLink as `0` and works
      properly.

commit 12cc93082557e939b119f3ee2ea449b7f829b7e8
Author: Justus Lind <[email protected]>
Date:   Tue Mar 5 18:33:15 2024 +1000

    Muse Dash: Add Muse Dash 4.1.0 songs (#2878)

commit b9d561ae25187f0b8abfa926ec1dd7c5f4563480
Author: Exempt-Medic <[email protected]>
Date:   Mon Mar 4 21:55:46 2024 -0500

    Core: Update generic.Rules.py (#2896)

commit ecec931e9f40838cee5a735313fe2219b4038977
Author: Doug Hoskisson <[email protected]>
Date:   Sun Mar 3 23:26:52 2024 -0800

    Core: fix (typing) mistake in PR #2887 (#2891)

    I made this variable for more compatible and safer type narrowing, and then I didn't use if for the type narrowing.

commit a70b94fd62f6dea76592e6df93deda8645c34d4c
Author: Alchav <[email protected]>
Date:   Sun Mar 3 19:52:03 2024 -0500

    LTTP: Open Pyramid and Shop Prog Balancing Bug Fixes (#2890)

commit 37a871eab1b58afc7abd10d40dd1f4a917670b3c
Author: Jérémie Bolduc <[email protected]>
Date:   Sun Mar 3 16:30:51 2024 -0500

    Core: Allow common collections in OptionSet and OptionList constructors (#2874)

    * allow common collection in set and list option constructors

    * allow any iterable of strings

    * add return None

    ---------

    Co-authored-by: beauxq <[email protected]>

commit 113c54f9bea7138946b9bcc9b583a34254414b4f
Author: Doug Hoskisson <[email protected]>
Date:   Sun Mar 3 13:10:14 2024 -0800

    Zillion: remove rom requirement for generation (#2875)

    * in the middle of work towards no rom for generation (not working)

    * no rom needed for Zillion generation

    * revert core changes

commit 4e31e51d7aa181c742102047665d43aaae960dc5
Author: Doug Hoskisson <[email protected]>
Date:   Sun Mar 3 11:09:06 2024 -0800

    Core: clarify error message when reading an `APContainer` (#2887)

commit 519dffdb7371c8f7769124713de8861de59881dd
Author: t3hf1gm3nt <[email protected]>
Date:   Sun Mar 3 11:59:31 2024 -0500

    TLOZ: Fix Logic for Gleeok guarded locations (#2734)

    Turns out you can't kill Gleeok with bombs or a candle as I happened to find out in a community async. While I'll be fine, a rare combination of settings could put all 4 possible weapons (the three levels of sword and the Magical Rod) to kill Gleeoks behind killing Gleeoks. This fix should prevent that from happening.

    Note: Even thou…
EmilyV99 pushed a commit to EmilyV99/Archipelago that referenced this pull request Apr 15, 2024
Co-authored-by: Silvris <[email protected]>
Co-authored-by: Alchav <[email protected]>
Co-authored-by: NewSoupVi <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
EmilyV99 pushed a commit to EmilyV99/Archipelago that referenced this pull request Apr 15, 2024
Co-authored-by: Silvris <[email protected]>
Co-authored-by: Alchav <[email protected]>
Co-authored-by: NewSoupVi <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
"Car Morph": ItemData("Morphs", 0x30205E, ItemClassification.progression),
"Flashing Eggs": ItemData("Items", 0x30205F, ItemClassification.progression),
"Giant Eggs": ItemData("Items", 0x302060, ItemClassification.progression),
"Egg Launcher": ItemData("Items", 0x302061, ItemClassification.progression),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should ask these in the discord instead, not on the merged PR

- Flashing Eggs
- Giant Eggs
- Egg Launcher
- Egg Refill Plant
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you use the original names here aswell?
"Egg Launcher" -> "Arrow Cloud"
"Egg Refill Plant" -> "Egg Plant"

"Car Morph": ItemData("Morphs", 0x30205E, ItemClassification.progression),
"Flashing Eggs": ItemData("Items", 0x30205F, ItemClassification.progression),
"Giant Eggs": ItemData("Items", 0x302060, ItemClassification.progression),
"Egg Launcher": ItemData("Items", 0x302061, ItemClassification.progression),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should ask these in the discord instead, not on the merged PR

NewSoupVi pushed a commit that referenced this pull request Jul 31, 2024
…tions API (#3287)

* Adds an option to have pot pieces placed local/non-local/anywhere

Shivers nearly always finishes last in multiworld games due to the fact you need all 20 pot pieces to win and the pot pieces open very few location checks. This option allows the pieces to be placed locally. This should allow Shivers to be finished earlier.

* New option: Choose how many ixupi captures are needed for goal completion

New option: Choose how many ixupi captures are needed for goal completion

* Fixes rule logic for location 'puzzle solved three floor elevator'

Fixes rule logic for location 'puzzle solved three floor elevator'. Missing a parenthesis caused only the key requirement to be checked for the blue maze region.

* Merge branch 'main' of https://github.com/GodlFire/Shivers

* Revert "Merge branch 'main' of https://github.com/GodlFire/Shivers"

This reverts commit bb08c3f.

* Fixes issue with office elevator rule logic.

* Bug fix, missing logic requirement for location 'Final Riddle: Guillotine Dropped'

Bug fix, missing logic requirement for location 'Final Riddle: Guillotine Dropped'

* Moves plaque location to front for better tracker referencing.

* Tiki should be Shaman.

* Hanging should be Gallows.

* Merrick spelling.

* Clarity change.

* Changes new option to use new option API

Changes new option to use new option API

* Added sub regions for Ixupi

-Added sub regions for Ixupi and moved ixupi capture checks into the sub region.
-Added missing wax capture possible spot in Shaman room

* Adds option for ixupi captures to be priority locations

Adds option for ixupi captures to be priority locations

* Consistency

Consistency

* Changes ixupi captures priority to default on toggle

Changes ixupi captures priority to default on toggle

* Docs update

-Updated link to randomizer
-Update some text to reflect the latest functionality
-Replaced 'setting' with 'option'

* New features/bug fixes

-Adds an option to have completed pots in the item pool
-Moved subterranean world information plaque to maze staircase

* Cleanup

Cleanup

* Fixed name for moved location

When moving a location and renaming it I forgot to fix the name in a second spot.

* Squashed commit of the following:

commit 630a3bd
Merge: 8477d3c 5e57920
Author: GodlFire <[email protected]>
Date:   Mon Apr 1 19:08:48 2024 -0600

    Merge pull request #10 from ArchipelagoMW/main

    Merge main into branch

commit 5e57920
Author: Alchav <[email protected]>
Date:   Mon Apr 1 12:08:21 2024 -0500

    LttP: delete playerSettings.yaml (#3062)

commit 9aeeeb0
Author: CaitSith2 <[email protected]>
Date:   Mon Apr 1 06:07:56 2024 -0700

    ALttP: Re-mark light/dark world regions after applying plando connections (#2964)

commit 3545838
Author: Bryce Wilson <[email protected]>
Date:   Mon Apr 1 07:07:11 2024 -0600

    Pokemon Emerald: Fix wonder trade race condition (#2983)

commit 4ac1866
Author: Alchav <[email protected]>
Date:   Mon Apr 1 08:06:31 2024 -0500

    ALTTP: Skull Woods Inverted fix (#2980)

commit 4aa03da
Author: Fabian Dill <[email protected]>
Date:   Mon Apr 1 15:06:02 2024 +0200

    Factorio: fix attempting to create savegame with not filename safe characters (#2842)

commit 24a03bc
Author: Silvris <[email protected]>
Date:   Mon Apr 1 08:02:26 2024 -0500

    KDL3: fix shuffled animals not actually being random (#3060)

commit f813a70
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 11:11:10 2024 -0500

    The Messenger: update docs formatting and fix outdated info (#3033)

    * The Messenger: update docs formatting and fix outdated info

    * address review feedback

    * 120 chars

commit 2a0b7e0
Author: LiquidCat64 <[email protected]>
Date:   Sun Mar 31 09:55:55 2024 -0600

    CV64: A couple of very small docs corrections. (#3057)

commit 03d47e4
Author: Ixrec <[email protected]>
Date:   Sun Mar 31 16:55:08 2024 +0100

    A Short Hike: Clarify installation instructions (#3058)

    * Clarify installation instructions

    * don't mention 'config' folder since it isn't created until the game starts

commit e546c0f
Author: Silvris <[email protected]>
Date:   Sun Mar 31 10:50:31 2024 -0500

    Yoshi's Island: add patch suffix (#3061)

commit 2ec93ba
Author: Bryce Wilson <[email protected]>
Date:   Sun Mar 31 09:48:59 2024 -0600

    Pokemon Emerald: Fix inconsistent location name (#3065)

commit 4e3d396
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 10:47:11 2024 -0500

    The Messenger: Fix precollected notes not being removed from the itempool (#3066)

    * The Messenger: fix precollected notes not being properly removed from pool

    * The Messenger: bump required client version

commit 72c5351
Author: Fabian Dill <[email protected]>
Date:   Sun Mar 31 03:57:59 2024 +0200

    WebHost: fix /check creating broken yaml files if files don't end with a newline (#3063)

commit b7ac6a4
Author: Aaron Wagener <[email protected]>
Date:   Fri Mar 29 20:14:53 2024 -0500

    The Messenger: Fix various portal shuffle issues (#2976)

    * put constants in a bit more sensical order

    * fix accidental incorrect scoping

    * fix plando rules not being respected

    * add docstrings for the plando functions

    * fix the portal output pools being overwritten

    * use shuffle and pop instead of removing by content so plando can go to the same area twice

    * move portal pool rebuilding outside mapping creation

    * remove plando_connection cleansing since it isn't shared with transition shuffle

commit 5f0112e
Author: Zach Parks <[email protected]>
Date:   Fri Mar 29 19:13:51 2024 -0500

    Tracker: Add starting inventory to trackers and received items table. (#3051)

commit bb48125
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 21:48:40 2024 -0500

    Core: Make fill failure error more human parseable (#3023)

commit 301d9de
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 19:31:59 2024 -0500

    Docs: adding games rework (#2892)

    * Docs: complete adding games.md rework

    * remove all the now unused images

    * review changes

    * address medic's review

    * address more comments

commit 9dc7089
Author: Trevor L <[email protected]>
Date:   Thu Mar 28 18:26:58 2024 -0600

    Hylics 2: Fix invalid multiworld data, use `self.random` instead of `self.multiworld.random` (#3001)

    * Hylics 2: Fixes

    * Rewrite loop

commit 4391d1f
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 18:05:39 2024 -0600

    Pokemon Emerald: Fix opponents learning non-randomized TMs (#3025)

commit 5d9d4ed
Author: black-sliver <[email protected]>
Date:   Fri Mar 29 01:01:31 2024 +0100

    SoE: update to pyevermizer v0.48.0 (#3050)

commit c97215e
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 17:23:37 2024 -0400

    TUNIC: Minor refactor of the vanilla_portals function (#3009)

    * Remove unused, change an if to an elif

    * Remove unused import

commit eb66886
Author: Alchav <[email protected]>
Date:   Thu Mar 28 16:23:01 2024 -0500

    SC2: Don't Filter Excluded Victory Locations (#3018)

commit de86062
Author: Fabian Dill <[email protected]>
Date:   Thu Mar 28 22:21:56 2024 +0100

    Core: differentiate between unknown worlds and broken worlds in error message (#2903)

commit 74b2bf5
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 15:20:55 2024 -0600

    Pokemon Emerald: Exclude norman trainer location during norman goal (#3038)

commit 74ac66b
Author: BadMagic100 <[email protected]>
Date:   Thu Mar 28 08:49:19 2024 -0700

    Hollow Knight: 0.4.5 doc revamp and default options tweaks (#2982)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 80d7ac4
Author: Silvris <[email protected]>
Date:   Thu Mar 28 09:41:32 2024 -0500

    KDL3: RC1 Fixes and Enhancement (#3022)

    * fix cloudy park 4 rule, zero deathlink message

    * remove redundant door_shuffle bool

    when generic ER gets in, this whole function gets rewritten. So just clean it a little now.

    * properly fix deathlink messages, fix fill error

    * update docs

commit 7731171
Author: Ziktofel <[email protected]>
Date:   Thu Mar 28 15:38:34 2024 +0100

    SC2: Fix HERC upgrades (#3044)

commit cfc1541
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 28 15:19:32 2024 +0100

    Docs: Mention the "last received item index" paradigm in the network protocol docs (#2989)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 4d954af
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 10:11:20 2024 -0400

    TUNIC: Add link to AP plando guide to connection plando section of game page (#2993)

commit 17748a4
Author: Nicholas Saylor <[email protected]>
Date:   Thu Mar 28 10:00:10 2024 -0400

    Launcher, Docs: Update UI and Set-Up Guide to Reference Options  (#2950)

commit 9182fe5
Author: Entropynines <[email protected]>
Date:   Thu Mar 28 06:56:35 2024 -0700

    README: Remove outdated information about launchers (#2966)

    Co-authored-by: Exempt-Medic <[email protected]>

commit bcf2230
Author: t3hf1gm3nt <[email protected]>
Date:   Thu Mar 28 09:54:56 2024 -0400

    TLOZ: Fix markdown issue with game info page (#2985)

commit fa93488
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 28 09:46:00 2024 -0400

    Docs: Consistent naming for "connection plando" (#2994)

commit db15dd4
Author: chandler05 <[email protected]>
Date:   Thu Mar 28 08:45:19 2024 -0500

    A Short Hike: Fix incorrect info in docs (#3016)

commit 01cdb0d
Author: PoryGone <[email protected]>
Date:   Thu Mar 28 09:44:23 2024 -0400

    SMW: Update World Doc for v2.0 Features (#3034)

    Co-authored-by: Scipio Wright <[email protected]>

commit d0ac2b7
Author: panicbit <[email protected]>
Date:   Thu Mar 28 10:11:26 2024 +0100

    LADX: fix local and non-local instrument placement (#2987)

    * LADX: fix local and non-local instrument placement

    * change confusing variable name

commit 14f5f01
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:42:35 2024 -0400

    Stardew Valley: Fix potential soft lock with vanilla tools and entrance randomizer + Performance improvement for vanilla tool/skills (#3002)

    * fix vanilla tool fishing rod requiring metal bars
    fix vanilla skill requiring previous level (it's always the same rule or more restrictive)

    * add test to ensure fishing rod need fish shop

    * fishing rod should be indexed from 0 like a mentally sane person would do.

    * fishing rod 0 isn't real, but it definitely can hurt you.

    * reeeeeeeee

commit cf133dd
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 02:32:27 2024 -0600

    Pokemon Emerald: Fix typo (#3020)

commit ca18121
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:27:49 2024 -0400

    Stardew Valley: Fix generation fail with SVE and entrance rando when Wizard Tower is in place of Sprite Spring (#2970)

commit 1d45125
Author: NewSoupVi <[email protected]>
Date:   Wed Mar 27 21:09:09 2024 +0100

    requirements.txt: _ instead of - to make PyCharm happy (#3043)

commit f7b415d
Author: agilbert1412 <[email protected]>
Date:   Tue Mar 26 19:40:58 2024 +0300

    Stardew valley: Game version documentation (#2990)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 702f006
Author: LiquidCat64 <[email protected]>
Date:   Tue Mar 26 07:31:36 2024 -0600

    CV64: Change all mentions of "settings" to "options" and fix a broken link (#3015)

commit 98ce8f8
Author: Yussur Mustafa Oraji <[email protected]>
Date:   Tue Mar 26 14:29:25 2024 +0100

    sm64ex: New Options API and WebHost fix (#2979)

commit ea47b90
Author: Scipio Wright <[email protected]>
Date:   Tue Mar 26 09:25:41 2024 -0400

    TUNIC: You can grapple down here without the ladder, neat (#3019)

commit bf38568
Author: agilbert1412 <[email protected]>
Date:   Sun Mar 24 23:53:49 2024 +0300

    Stardew Valley: presets with some of the new available values for existing settings to make them more accurate (#3014)

commit c0368ae
Author: Phaneros <[email protected]>
Date:   Sun Mar 24 13:53:20 2024 -0700

    SC2: Fixed missing upgrade from custom tracker (#3013)

commit 36c8307
Author: Salzkorn <[email protected]>
Date:   Sun Mar 24 21:52:41 2024 +0100

    SC2 Tracker: Fix grouped items pointing at wrong item IDs (#2992)

commit 2b24539
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:52:16 2024 +0100

    SC2 Tracker: Use level tinting to let the player know which level he has of Replenishable Magazine (#2986)

commit 7e904a1
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:51:46 2024 +0100

    SC2: Fix Kerrigan presence resolving when deciding which races should be used (#2978)

commit bdd498d
Author: Alchav <[email protected]>
Date:   Fri Mar 22 15:36:27 2024 -0500

    ALTTP: Fix #2290's crashes (#2973)

commit 355223b
Author: PinkSwitch <[email protected]>
Date:   Fri Mar 22 15:35:00 2024 -0500

    Yoshi's Island: Implement New Game (#2141)

    Co-authored-by: Silvris <[email protected]>
    Co-authored-by: Alchav <[email protected]>
    Co-authored-by: NewSoupVi <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>

commit aaa3472
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 22 21:30:51 2024 +0100

    The Witness: Fix seed bleed issue (#3008)

commit 96d93c1
Author: chandler05 <[email protected]>
Date:   Fri Mar 22 15:30:23 2024 -0500

    A Short Hike: Add option to customize filler coin count (#3004)

    Co-authored-by: Exempt-Medic <[email protected]>

commit ca549df
Author: Silvris <[email protected]>
Date:   Fri Mar 22 15:29:24 2024 -0500

    CommonClient: fix hint tab overlapping (#2957)

    Co-authored-by: Remy Jette <[email protected]>

commit 44988d4
Author: Star Rauchenberger <[email protected]>
Date:   Fri Mar 22 15:28:41 2024 -0500

    Lingo: Add trap weights option (#2837)

commit 11b32f1
Author: Danaël V <[email protected]>
Date:   Fri Mar 22 12:46:14 2024 -0400

    Docs: replacing "setting" to "option" in world docs  (#2622)

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    Added non-AP World specific information

    * Update contributing.md

    Fixed broken link

    * Some minor touchups

    * Update Contributing.md

    Draft for version with picture

    * Update contributing.md

    Small word change

    * Minor updates for conciseness, mostly

    * Changed all instances of settings to options in info and setup guides

    I combed through all world docs and swapped "setting" to "option" when this was refering to yaml options.
    I also changed a leftover "setting" in option.py

    * Update contributing.md

    * Update contributing.md

    * Update setup_en.md

    Woops I forgot one

    * Update Options.py

    Reverted changes regarding options.py

    * Update worlds/noita/docs/en_Noita.md

    Co-authored-by: Scipio Wright <[email protected]>

    * Update worlds/sc2wol/docs/en_Starcraft 2 Wings of Liberty.md

    revert change waiting for that page to be updated

    * Update worlds/witness/docs/setup_en.md

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/soe/docs/multiworld_en.md

    Fixed Typo

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/adventure/docs/en_Adventure.md

    * Update worlds/witness/docs/setup_en.md

    * Updated Stardew valley to hopefully get rid of the merge conflicts

    * Didn't work :dismay:

    * Delete worlds/sc2wol/docs/setup_en.md

    I think this will fix the merge issue

    * Now it should work

    * Woops

    ---------

    Co-authored-by: Scipio Wright <[email protected]>
    Co-authored-by: black-sliver <[email protected]>

commit 218cd45
Author: Silvris <[email protected]>
Date:   Fri Mar 22 03:02:38 2024 -0500

    APProcedurePatch: fix RLE/COPY incorrect sizing (#3006)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    * Update Files.py

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 4196bde
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 21 16:38:36 2024 -0400

    Docs: Fixing special_range_names example (#3005)

commit 40f843f
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 11:00:53 2024 -0500

    Lingo: Minor game data fixes (#3003)

commit da333fb
Author: GodlFire <[email protected]>
Date:   Thu Mar 21 09:52:16 2024 -0600

    Shivers: Adds missing logic rule for skull dial door location (#2997)

commit 43084da
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 21 16:51:29 2024 +0100

    The Witness: Fix newlines in Witness option tooltips (#2971)

commit 1481674
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 21 11:50:07 2024 -0400

    TUNIC: Shuffle Ladders option (#2919)

commit 30a0aa2
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 10:46:53 2024 -0500

    Lingo: Add item/location groups (#2789)

commit f4b7c28
Author: Silvris <[email protected]>
Date:   Wed Mar 20 17:45:32 2024 -0500

    APProcedurePatch: hotfix changing class variables to instance variables (#2996)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 12864f7
Author: chandler05 <[email protected]>
Date:   Wed Mar 20 22:44:09 2024 +0100

    A Short Hike: Implement New Game (#2577)

commit db02e9d
Author: LiquidCat64 <[email protected]>
Date:   Wed Mar 20 15:03:25 2024 -0600

    Castlevania 64: Implement New Game (#2472)

commit 3231577
Author: Jérémie Bolduc <[email protected]>
Date:   Wed Mar 20 16:57:45 2024 -0400

    Stardew Valley: Fix extended family legendary fishes being locations with fishsanity set to exclude legendary (#2967)

commit e9620be
Author: Magnemania <[email protected]>
Date:   Wed Mar 20 16:56:00 2024 -0400

    SM64: Goal Logic and Hint Bugfixes (#2886)

commit 183ca35
Author: qwint <[email protected]>
Date:   Wed Mar 20 08:39:37 2024 -0500

    CommonClient: Port Casting Bug (#2975)

commit fcaaa19
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:19 2024 -0700

    SMW: Fixes for Bowser being defeatable on Egg Hunt and CI2 DC room access (#2981)

commit 8f7b63a
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:04 2024 -0700

    SMW: Blocksanity logic fixes (#2988)

commit 6f64bb9
Author: Scipio Wright <[email protected]>
Date:   Wed Mar 20 08:46:31 2024 -0400

    Noita: Remove newline from option description so it doesn't look bad on webhost (#2969)

commit d0a9d0e
Author: Bryce Wilson <[email protected]>
Date:   Wed Mar 20 06:43:13 2024 -0600

    Pokemon Emerald: Bump required client version (#2963)

commit 94650a0
Author: Silvris <[email protected]>
Date:   Tue Mar 19 17:08:29 2024 -0500

    Core: implement APProcedurePatch and APTokenMixin (#2536)

    * initial work on procedure patch

    * more flexibility

    load default procedure for version 5 patches
    add args for procedure
    add default extension for tokens and bsdiff
    allow specifying additional required extensions for generation

    * pushing current changes to go fix tloz bug

    * move tokens into a separate inheritable class

    * forgot the commit to remove token from ProcedurePatch

    * further cleaning from bad commit

    * start on docstrings

    * further work on docstrings and typing

    * improve docstrings

    * fix incorrect docstring

    * cleanup

    * clean defaults and docstring

    * define interface that has only the bare minimum required
    for `Patch.create_rom_file`

    * change to dictionary.get

    * remove unnecessary if statement

    * update to explicitly check for procedure, restore compatible version and manual override

    * Update Files.py

    * remove struct uses

    * ensure returning bytes, add token type checking

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <[email protected]>

    * pep8

    ---------

    Co-authored-by: beauxq <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>

* Changes pot_completed_list to a instance variable instead of global.

Changes pot_completed_list to a instance variable instead of global. The global variable was unintentional and was causing missmatch in pre_fill which would cause generation error.

* Removing deprecated options getter

* Adds back fix from main branch

Adds back fix from main branch

* Removing messenger changes that somehow got on my branch?

Removing messenger changes that somehow got on my branch?

* Removing messenger changes that are somehow on the Shivers branch

Removing messenger changes that are somehow on the Shivers branch

* Still trying to remove Messenger changes on Shivers branch

Still trying to remove Messenger changes on Shivers branch

* Review comments addressed. Early lobby access set as default.

Review comments addressed. Early lobby access set as default.

* Review comments addressed

Review comments addressed

* Review comments addressed. Option for priority locations removed.

Option to have ixupi captures a priority has been removed and can be added again if Priority Fill is changed. See Issues #3467.

* Minor Change

Minor Change

* Fixed ID 10 T Error

Fixed ID 10 T Error

* Front door option added to slot data

Front door option added to slot data

* Add missing .value on slot data

Add missing .value on slot data

* Small change to slot data

Small change to slot data

* Small change to slot data

Why didn't this change get pushed github...

* Forgot list

Forgot list

---------

Co-authored-by: Kory Dondzila <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
agilbert1412 pushed a commit to agilbert1412/Archipelago that referenced this pull request Aug 24, 2024
…tions API (ArchipelagoMW#3287)

* Adds an option to have pot pieces placed local/non-local/anywhere

Shivers nearly always finishes last in multiworld games due to the fact you need all 20 pot pieces to win and the pot pieces open very few location checks. This option allows the pieces to be placed locally. This should allow Shivers to be finished earlier.

* New option: Choose how many ixupi captures are needed for goal completion

New option: Choose how many ixupi captures are needed for goal completion

* Fixes rule logic for location 'puzzle solved three floor elevator'

Fixes rule logic for location 'puzzle solved three floor elevator'. Missing a parenthesis caused only the key requirement to be checked for the blue maze region.

* Merge branch 'main' of https://github.com/GodlFire/Shivers

* Revert "Merge branch 'main' of https://github.com/GodlFire/Shivers"

This reverts commit bb08c3f.

* Fixes issue with office elevator rule logic.

* Bug fix, missing logic requirement for location 'Final Riddle: Guillotine Dropped'

Bug fix, missing logic requirement for location 'Final Riddle: Guillotine Dropped'

* Moves plaque location to front for better tracker referencing.

* Tiki should be Shaman.

* Hanging should be Gallows.

* Merrick spelling.

* Clarity change.

* Changes new option to use new option API

Changes new option to use new option API

* Added sub regions for Ixupi

-Added sub regions for Ixupi and moved ixupi capture checks into the sub region.
-Added missing wax capture possible spot in Shaman room

* Adds option for ixupi captures to be priority locations

Adds option for ixupi captures to be priority locations

* Consistency

Consistency

* Changes ixupi captures priority to default on toggle

Changes ixupi captures priority to default on toggle

* Docs update

-Updated link to randomizer
-Update some text to reflect the latest functionality
-Replaced 'setting' with 'option'

* New features/bug fixes

-Adds an option to have completed pots in the item pool
-Moved subterranean world information plaque to maze staircase

* Cleanup

Cleanup

* Fixed name for moved location

When moving a location and renaming it I forgot to fix the name in a second spot.

* Squashed commit of the following:

commit 630a3bd
Merge: 8477d3c 5e57920
Author: GodlFire <[email protected]>
Date:   Mon Apr 1 19:08:48 2024 -0600

    Merge pull request #10 from ArchipelagoMW/main

    Merge main into branch

commit 5e57920
Author: Alchav <[email protected]>
Date:   Mon Apr 1 12:08:21 2024 -0500

    LttP: delete playerSettings.yaml (ArchipelagoMW#3062)

commit 9aeeeb0
Author: CaitSith2 <[email protected]>
Date:   Mon Apr 1 06:07:56 2024 -0700

    ALttP: Re-mark light/dark world regions after applying plando connections (ArchipelagoMW#2964)

commit 3545838
Author: Bryce Wilson <[email protected]>
Date:   Mon Apr 1 07:07:11 2024 -0600

    Pokemon Emerald: Fix wonder trade race condition (ArchipelagoMW#2983)

commit 4ac1866
Author: Alchav <[email protected]>
Date:   Mon Apr 1 08:06:31 2024 -0500

    ALTTP: Skull Woods Inverted fix (ArchipelagoMW#2980)

commit 4aa03da
Author: Fabian Dill <[email protected]>
Date:   Mon Apr 1 15:06:02 2024 +0200

    Factorio: fix attempting to create savegame with not filename safe characters (ArchipelagoMW#2842)

commit 24a03bc
Author: Silvris <[email protected]>
Date:   Mon Apr 1 08:02:26 2024 -0500

    KDL3: fix shuffled animals not actually being random (ArchipelagoMW#3060)

commit f813a70
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 11:11:10 2024 -0500

    The Messenger: update docs formatting and fix outdated info (ArchipelagoMW#3033)

    * The Messenger: update docs formatting and fix outdated info

    * address review feedback

    * 120 chars

commit 2a0b7e0
Author: LiquidCat64 <[email protected]>
Date:   Sun Mar 31 09:55:55 2024 -0600

    CV64: A couple of very small docs corrections. (ArchipelagoMW#3057)

commit 03d47e4
Author: Ixrec <[email protected]>
Date:   Sun Mar 31 16:55:08 2024 +0100

    A Short Hike: Clarify installation instructions (ArchipelagoMW#3058)

    * Clarify installation instructions

    * don't mention 'config' folder since it isn't created until the game starts

commit e546c0f
Author: Silvris <[email protected]>
Date:   Sun Mar 31 10:50:31 2024 -0500

    Yoshi's Island: add patch suffix (ArchipelagoMW#3061)

commit 2ec93ba
Author: Bryce Wilson <[email protected]>
Date:   Sun Mar 31 09:48:59 2024 -0600

    Pokemon Emerald: Fix inconsistent location name (ArchipelagoMW#3065)

commit 4e3d396
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 10:47:11 2024 -0500

    The Messenger: Fix precollected notes not being removed from the itempool (ArchipelagoMW#3066)

    * The Messenger: fix precollected notes not being properly removed from pool

    * The Messenger: bump required client version

commit 72c5351
Author: Fabian Dill <[email protected]>
Date:   Sun Mar 31 03:57:59 2024 +0200

    WebHost: fix /check creating broken yaml files if files don't end with a newline (ArchipelagoMW#3063)

commit b7ac6a4
Author: Aaron Wagener <[email protected]>
Date:   Fri Mar 29 20:14:53 2024 -0500

    The Messenger: Fix various portal shuffle issues (ArchipelagoMW#2976)

    * put constants in a bit more sensical order

    * fix accidental incorrect scoping

    * fix plando rules not being respected

    * add docstrings for the plando functions

    * fix the portal output pools being overwritten

    * use shuffle and pop instead of removing by content so plando can go to the same area twice

    * move portal pool rebuilding outside mapping creation

    * remove plando_connection cleansing since it isn't shared with transition shuffle

commit 5f0112e
Author: Zach Parks <[email protected]>
Date:   Fri Mar 29 19:13:51 2024 -0500

    Tracker: Add starting inventory to trackers and received items table. (ArchipelagoMW#3051)

commit bb48125
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 21:48:40 2024 -0500

    Core: Make fill failure error more human parseable (ArchipelagoMW#3023)

commit 301d9de
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 19:31:59 2024 -0500

    Docs: adding games rework (ArchipelagoMW#2892)

    * Docs: complete adding games.md rework

    * remove all the now unused images

    * review changes

    * address medic's review

    * address more comments

commit 9dc7089
Author: Trevor L <[email protected]>
Date:   Thu Mar 28 18:26:58 2024 -0600

    Hylics 2: Fix invalid multiworld data, use `self.random` instead of `self.multiworld.random` (ArchipelagoMW#3001)

    * Hylics 2: Fixes

    * Rewrite loop

commit 4391d1f
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 18:05:39 2024 -0600

    Pokemon Emerald: Fix opponents learning non-randomized TMs (ArchipelagoMW#3025)

commit 5d9d4ed
Author: black-sliver <[email protected]>
Date:   Fri Mar 29 01:01:31 2024 +0100

    SoE: update to pyevermizer v0.48.0 (ArchipelagoMW#3050)

commit c97215e
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 17:23:37 2024 -0400

    TUNIC: Minor refactor of the vanilla_portals function (ArchipelagoMW#3009)

    * Remove unused, change an if to an elif

    * Remove unused import

commit eb66886
Author: Alchav <[email protected]>
Date:   Thu Mar 28 16:23:01 2024 -0500

    SC2: Don't Filter Excluded Victory Locations (ArchipelagoMW#3018)

commit de86062
Author: Fabian Dill <[email protected]>
Date:   Thu Mar 28 22:21:56 2024 +0100

    Core: differentiate between unknown worlds and broken worlds in error message (ArchipelagoMW#2903)

commit 74b2bf5
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 15:20:55 2024 -0600

    Pokemon Emerald: Exclude norman trainer location during norman goal (ArchipelagoMW#3038)

commit 74ac66b
Author: BadMagic100 <[email protected]>
Date:   Thu Mar 28 08:49:19 2024 -0700

    Hollow Knight: 0.4.5 doc revamp and default options tweaks (ArchipelagoMW#2982)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 80d7ac4
Author: Silvris <[email protected]>
Date:   Thu Mar 28 09:41:32 2024 -0500

    KDL3: RC1 Fixes and Enhancement (ArchipelagoMW#3022)

    * fix cloudy park 4 rule, zero deathlink message

    * remove redundant door_shuffle bool

    when generic ER gets in, this whole function gets rewritten. So just clean it a little now.

    * properly fix deathlink messages, fix fill error

    * update docs

commit 7731171
Author: Ziktofel <[email protected]>
Date:   Thu Mar 28 15:38:34 2024 +0100

    SC2: Fix HERC upgrades (ArchipelagoMW#3044)

commit cfc1541
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 28 15:19:32 2024 +0100

    Docs: Mention the "last received item index" paradigm in the network protocol docs (ArchipelagoMW#2989)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 4d954af
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 10:11:20 2024 -0400

    TUNIC: Add link to AP plando guide to connection plando section of game page (ArchipelagoMW#2993)

commit 17748a4
Author: Nicholas Saylor <[email protected]>
Date:   Thu Mar 28 10:00:10 2024 -0400

    Launcher, Docs: Update UI and Set-Up Guide to Reference Options  (ArchipelagoMW#2950)

commit 9182fe5
Author: Entropynines <[email protected]>
Date:   Thu Mar 28 06:56:35 2024 -0700

    README: Remove outdated information about launchers (ArchipelagoMW#2966)

    Co-authored-by: Exempt-Medic <[email protected]>

commit bcf2230
Author: t3hf1gm3nt <[email protected]>
Date:   Thu Mar 28 09:54:56 2024 -0400

    TLOZ: Fix markdown issue with game info page (ArchipelagoMW#2985)

commit fa93488
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 28 09:46:00 2024 -0400

    Docs: Consistent naming for "connection plando" (ArchipelagoMW#2994)

commit db15dd4
Author: chandler05 <[email protected]>
Date:   Thu Mar 28 08:45:19 2024 -0500

    A Short Hike: Fix incorrect info in docs (ArchipelagoMW#3016)

commit 01cdb0d
Author: PoryGone <[email protected]>
Date:   Thu Mar 28 09:44:23 2024 -0400

    SMW: Update World Doc for v2.0 Features (ArchipelagoMW#3034)

    Co-authored-by: Scipio Wright <[email protected]>

commit d0ac2b7
Author: panicbit <[email protected]>
Date:   Thu Mar 28 10:11:26 2024 +0100

    LADX: fix local and non-local instrument placement (ArchipelagoMW#2987)

    * LADX: fix local and non-local instrument placement

    * change confusing variable name

commit 14f5f01
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:42:35 2024 -0400

    Stardew Valley: Fix potential soft lock with vanilla tools and entrance randomizer + Performance improvement for vanilla tool/skills (ArchipelagoMW#3002)

    * fix vanilla tool fishing rod requiring metal bars
    fix vanilla skill requiring previous level (it's always the same rule or more restrictive)

    * add test to ensure fishing rod need fish shop

    * fishing rod should be indexed from 0 like a mentally sane person would do.

    * fishing rod 0 isn't real, but it definitely can hurt you.

    * reeeeeeeee

commit cf133dd
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 02:32:27 2024 -0600

    Pokemon Emerald: Fix typo (ArchipelagoMW#3020)

commit ca18121
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:27:49 2024 -0400

    Stardew Valley: Fix generation fail with SVE and entrance rando when Wizard Tower is in place of Sprite Spring (ArchipelagoMW#2970)

commit 1d45125
Author: NewSoupVi <[email protected]>
Date:   Wed Mar 27 21:09:09 2024 +0100

    requirements.txt: _ instead of - to make PyCharm happy (ArchipelagoMW#3043)

commit f7b415d
Author: agilbert1412 <[email protected]>
Date:   Tue Mar 26 19:40:58 2024 +0300

    Stardew valley: Game version documentation (ArchipelagoMW#2990)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 702f006
Author: LiquidCat64 <[email protected]>
Date:   Tue Mar 26 07:31:36 2024 -0600

    CV64: Change all mentions of "settings" to "options" and fix a broken link (ArchipelagoMW#3015)

commit 98ce8f8
Author: Yussur Mustafa Oraji <[email protected]>
Date:   Tue Mar 26 14:29:25 2024 +0100

    sm64ex: New Options API and WebHost fix (ArchipelagoMW#2979)

commit ea47b90
Author: Scipio Wright <[email protected]>
Date:   Tue Mar 26 09:25:41 2024 -0400

    TUNIC: You can grapple down here without the ladder, neat (ArchipelagoMW#3019)

commit bf38568
Author: agilbert1412 <[email protected]>
Date:   Sun Mar 24 23:53:49 2024 +0300

    Stardew Valley: presets with some of the new available values for existing settings to make them more accurate (ArchipelagoMW#3014)

commit c0368ae
Author: Phaneros <[email protected]>
Date:   Sun Mar 24 13:53:20 2024 -0700

    SC2: Fixed missing upgrade from custom tracker (ArchipelagoMW#3013)

commit 36c8307
Author: Salzkorn <[email protected]>
Date:   Sun Mar 24 21:52:41 2024 +0100

    SC2 Tracker: Fix grouped items pointing at wrong item IDs (ArchipelagoMW#2992)

commit 2b24539
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:52:16 2024 +0100

    SC2 Tracker: Use level tinting to let the player know which level he has of Replenishable Magazine (ArchipelagoMW#2986)

commit 7e904a1
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:51:46 2024 +0100

    SC2: Fix Kerrigan presence resolving when deciding which races should be used (ArchipelagoMW#2978)

commit bdd498d
Author: Alchav <[email protected]>
Date:   Fri Mar 22 15:36:27 2024 -0500

    ALTTP: Fix ArchipelagoMW#2290's crashes (ArchipelagoMW#2973)

commit 355223b
Author: PinkSwitch <[email protected]>
Date:   Fri Mar 22 15:35:00 2024 -0500

    Yoshi's Island: Implement New Game (ArchipelagoMW#2141)

    Co-authored-by: Silvris <[email protected]>
    Co-authored-by: Alchav <[email protected]>
    Co-authored-by: NewSoupVi <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>

commit aaa3472
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 22 21:30:51 2024 +0100

    The Witness: Fix seed bleed issue (ArchipelagoMW#3008)

commit 96d93c1
Author: chandler05 <[email protected]>
Date:   Fri Mar 22 15:30:23 2024 -0500

    A Short Hike: Add option to customize filler coin count (ArchipelagoMW#3004)

    Co-authored-by: Exempt-Medic <[email protected]>

commit ca549df
Author: Silvris <[email protected]>
Date:   Fri Mar 22 15:29:24 2024 -0500

    CommonClient: fix hint tab overlapping (ArchipelagoMW#2957)

    Co-authored-by: Remy Jette <[email protected]>

commit 44988d4
Author: Star Rauchenberger <[email protected]>
Date:   Fri Mar 22 15:28:41 2024 -0500

    Lingo: Add trap weights option (ArchipelagoMW#2837)

commit 11b32f1
Author: Danaël V <[email protected]>
Date:   Fri Mar 22 12:46:14 2024 -0400

    Docs: replacing "setting" to "option" in world docs  (ArchipelagoMW#2622)

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    Added non-AP World specific information

    * Update contributing.md

    Fixed broken link

    * Some minor touchups

    * Update Contributing.md

    Draft for version with picture

    * Update contributing.md

    Small word change

    * Minor updates for conciseness, mostly

    * Changed all instances of settings to options in info and setup guides

    I combed through all world docs and swapped "setting" to "option" when this was refering to yaml options.
    I also changed a leftover "setting" in option.py

    * Update contributing.md

    * Update contributing.md

    * Update setup_en.md

    Woops I forgot one

    * Update Options.py

    Reverted changes regarding options.py

    * Update worlds/noita/docs/en_Noita.md

    Co-authored-by: Scipio Wright <[email protected]>

    * Update worlds/sc2wol/docs/en_Starcraft 2 Wings of Liberty.md

    revert change waiting for that page to be updated

    * Update worlds/witness/docs/setup_en.md

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/soe/docs/multiworld_en.md

    Fixed Typo

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/adventure/docs/en_Adventure.md

    * Update worlds/witness/docs/setup_en.md

    * Updated Stardew valley to hopefully get rid of the merge conflicts

    * Didn't work :dismay:

    * Delete worlds/sc2wol/docs/setup_en.md

    I think this will fix the merge issue

    * Now it should work

    * Woops

    ---------

    Co-authored-by: Scipio Wright <[email protected]>
    Co-authored-by: black-sliver <[email protected]>

commit 218cd45
Author: Silvris <[email protected]>
Date:   Fri Mar 22 03:02:38 2024 -0500

    APProcedurePatch: fix RLE/COPY incorrect sizing (ArchipelagoMW#3006)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    * Update Files.py

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 4196bde
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 21 16:38:36 2024 -0400

    Docs: Fixing special_range_names example (ArchipelagoMW#3005)

commit 40f843f
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 11:00:53 2024 -0500

    Lingo: Minor game data fixes (ArchipelagoMW#3003)

commit da333fb
Author: GodlFire <[email protected]>
Date:   Thu Mar 21 09:52:16 2024 -0600

    Shivers: Adds missing logic rule for skull dial door location (ArchipelagoMW#2997)

commit 43084da
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 21 16:51:29 2024 +0100

    The Witness: Fix newlines in Witness option tooltips (ArchipelagoMW#2971)

commit 1481674
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 21 11:50:07 2024 -0400

    TUNIC: Shuffle Ladders option (ArchipelagoMW#2919)

commit 30a0aa2
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 10:46:53 2024 -0500

    Lingo: Add item/location groups (ArchipelagoMW#2789)

commit f4b7c28
Author: Silvris <[email protected]>
Date:   Wed Mar 20 17:45:32 2024 -0500

    APProcedurePatch: hotfix changing class variables to instance variables (ArchipelagoMW#2996)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 12864f7
Author: chandler05 <[email protected]>
Date:   Wed Mar 20 22:44:09 2024 +0100

    A Short Hike: Implement New Game (ArchipelagoMW#2577)

commit db02e9d
Author: LiquidCat64 <[email protected]>
Date:   Wed Mar 20 15:03:25 2024 -0600

    Castlevania 64: Implement New Game (ArchipelagoMW#2472)

commit 3231577
Author: Jérémie Bolduc <[email protected]>
Date:   Wed Mar 20 16:57:45 2024 -0400

    Stardew Valley: Fix extended family legendary fishes being locations with fishsanity set to exclude legendary (ArchipelagoMW#2967)

commit e9620be
Author: Magnemania <[email protected]>
Date:   Wed Mar 20 16:56:00 2024 -0400

    SM64: Goal Logic and Hint Bugfixes (ArchipelagoMW#2886)

commit 183ca35
Author: qwint <[email protected]>
Date:   Wed Mar 20 08:39:37 2024 -0500

    CommonClient: Port Casting Bug (ArchipelagoMW#2975)

commit fcaaa19
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:19 2024 -0700

    SMW: Fixes for Bowser being defeatable on Egg Hunt and CI2 DC room access (ArchipelagoMW#2981)

commit 8f7b63a
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:04 2024 -0700

    SMW: Blocksanity logic fixes (ArchipelagoMW#2988)

commit 6f64bb9
Author: Scipio Wright <[email protected]>
Date:   Wed Mar 20 08:46:31 2024 -0400

    Noita: Remove newline from option description so it doesn't look bad on webhost (ArchipelagoMW#2969)

commit d0a9d0e
Author: Bryce Wilson <[email protected]>
Date:   Wed Mar 20 06:43:13 2024 -0600

    Pokemon Emerald: Bump required client version (ArchipelagoMW#2963)

commit 94650a0
Author: Silvris <[email protected]>
Date:   Tue Mar 19 17:08:29 2024 -0500

    Core: implement APProcedurePatch and APTokenMixin (ArchipelagoMW#2536)

    * initial work on procedure patch

    * more flexibility

    load default procedure for version 5 patches
    add args for procedure
    add default extension for tokens and bsdiff
    allow specifying additional required extensions for generation

    * pushing current changes to go fix tloz bug

    * move tokens into a separate inheritable class

    * forgot the commit to remove token from ProcedurePatch

    * further cleaning from bad commit

    * start on docstrings

    * further work on docstrings and typing

    * improve docstrings

    * fix incorrect docstring

    * cleanup

    * clean defaults and docstring

    * define interface that has only the bare minimum required
    for `Patch.create_rom_file`

    * change to dictionary.get

    * remove unnecessary if statement

    * update to explicitly check for procedure, restore compatible version and manual override

    * Update Files.py

    * remove struct uses

    * ensure returning bytes, add token type checking

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <[email protected]>

    * pep8

    ---------

    Co-authored-by: beauxq <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>

* Changes pot_completed_list to a instance variable instead of global.

Changes pot_completed_list to a instance variable instead of global. The global variable was unintentional and was causing missmatch in pre_fill which would cause generation error.

* Removing deprecated options getter

* Adds back fix from main branch

Adds back fix from main branch

* Removing messenger changes that somehow got on my branch?

Removing messenger changes that somehow got on my branch?

* Removing messenger changes that are somehow on the Shivers branch

Removing messenger changes that are somehow on the Shivers branch

* Still trying to remove Messenger changes on Shivers branch

Still trying to remove Messenger changes on Shivers branch

* Review comments addressed. Early lobby access set as default.

Review comments addressed. Early lobby access set as default.

* Review comments addressed

Review comments addressed

* Review comments addressed. Option for priority locations removed.

Option to have ixupi captures a priority has been removed and can be added again if Priority Fill is changed. See Issues ArchipelagoMW#3467.

* Minor Change

Minor Change

* Fixed ID 10 T Error

Fixed ID 10 T Error

* Front door option added to slot data

Front door option added to slot data

* Add missing .value on slot data

Add missing .value on slot data

* Small change to slot data

Small change to slot data

* Small change to slot data

Why didn't this change get pushed github...

* Forgot list

Forgot list

---------

Co-authored-by: Kory Dondzila <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
NewSoupVi added a commit that referenced this pull request Aug 29, 2024
* - Add Unit test for all the fish that require a specific region to be reachable

* - Move the crimsonfish to the tide pools region

* - Improved the unit test to be more thorough, add extended family fish to the test

* - Moved the son of crimsonfish to the correct region as well

* FFMQ: Fix reset protection (#3710)

* Revert reset protection

* Fix reset protection

---------

Co-authored-by: alchav <[email protected]>

* - Take shipsanity moss out of shipsanity crops (#3709)

* sc2: Removing unused dependency in requirements.txt (#3697)

* sc2: Removing unused dependency in requirements.txt

* sc2: Add missing newline in requirements.txt

Co-authored-by: Exempt-Medic <[email protected]>

---------

Co-authored-by: Exempt-Medic <[email protected]>

* WebHost: Fix NamedRange values clamping to the range (#3613)

If a NamedRange has a `special_range_names` entry outside the
`range_start` and `range_end`, the HTML5 range input will clamp the
submitted value to the closest value in the range.

These means that, for example, Pokemon RB's "HM Compatibility" option's
"Vanilla (-1)" option would instead get posted as "0" rather than "-1".

This change updates NamedRange to behave like TextChoice, where the
select element has a `name` attribute matching the option, and there is
an additional element to be able to provide an option other than the
select element's choices.

This uses a different suffix of `-range` rather than `-custom` that
TextChoice uses. The reason is we need some way to decide whether to use
the custom value or the select value, and that method needs to work
without JavaScript. For TextChoice this is easy, if the custom field is
empty use the select element. For NamedRange this is more difficult as
the browser will always submit *something*. My choice was to only use
the value from the range if the select box is set to "custom". Since
this only happens with JS as "custom' is hidden, I made the range hidden
under no-JS. If it's preferred, I could make the select box hidden
instead. Let me know.

This PR also makes the `js-required` class set `display: none` with
`!important` as otherwise the class wouldn't work on any rule that
had `display: flex` with more specificity than a single class.

* Timespinner: migrate to new options api and correct random (#2485)

* Implemented new options system into Timespinner

* Fixed typo

* Fixed typo

* Fixed slotdata maybe

* Fixes

* more fixes

* Fixed failing unit tests

* Implemented options backwards comnpatibility

* Fixed option fallbacks

* Implemented review results

* Fixed logic bug

* Fixed python 3.8/3.9 compatibility

* Replaced one more multiworld option usage

* Update worlds/timespinner/Options.py

Co-authored-by: Exempt-Medic <[email protected]>

* Updated logging of options replacement to include player name and also write it to spoiler
Fixed generation bug
Implemented review results

---------

Co-authored-by: Exempt-Medic <[email protected]>

* Core: migrate item links out of main (#2914)

* Core: move item linking out of main

* add a test that item link option correctly validates

* remove unused fluff

---------

Co-authored-by: NewSoupVi <[email protected]>

* Core: Rework accessibility (#1481)

* rename locations accessibility to "full" and make old locations accessibility debug only

* fix a bug in oot

* reorder lttp tests to not override its overrides

* changed the wrong word in the dict

* :forehead:

* update the manual lttp yaml

* use __debug__

* update pokemon and messenger

* fix conflicts from 993

* fix stardew presets

* add that locations may be inaccessible to description

* use reST format and make the items description one line so that it renders correctly on webhost

* forgot i renamed that

* add aliases for back compat

* some cleanup

* fix imports

* fix test failure

* only check "items" players when the item is progression

* Revert "only check "items" players when the item is progression"

This reverts commit ecbf986145e6194aa99a39c481d8ecd0736d5a4c.

* remove some unnecessary diffs

* CV64: Add ItemsAccessibility

* put items description at the bottom of the docstring since that's it's visual order

* :

* rename accessibility reference in pokemon rb dexsanity

* make the rendered tooltips look nicer

* Shivers: New features and removes two missed options using the old options API (#3287)

* Adds an option to have pot pieces placed local/non-local/anywhere

Shivers nearly always finishes last in multiworld games due to the fact you need all 20 pot pieces to win and the pot pieces open very few location checks. This option allows the pieces to be placed locally. This should allow Shivers to be finished earlier.

* New option: Choose how many ixupi captures are needed for goal completion

New option: Choose how many ixupi captures are needed for goal completion

* Fixes rule logic for location 'puzzle solved three floor elevator'

Fixes rule logic for location 'puzzle solved three floor elevator'. Missing a parenthesis caused only the key requirement to be checked for the blue maze region.

* Merge branch 'main' of https://github.com/GodlFire/Shivers

* Revert "Merge branch 'main' of https://github.com/GodlFire/Shivers"

This reverts commit bb08c3f0c2ef148fd24d7c7820cdfe936f7196e2.

* Fixes issue with office elevator rule logic.

* Bug fix, missing logic requirement for location 'Final Riddle: Guillotine Dropped'

Bug fix, missing logic requirement for location 'Final Riddle: Guillotine Dropped'

* Moves plaque location to front for better tracker referencing.

* Tiki should be Shaman.

* Hanging should be Gallows.

* Merrick spelling.

* Clarity change.

* Changes new option to use new option API

Changes new option to use new option API

* Added sub regions for Ixupi

-Added sub regions for Ixupi and moved ixupi capture checks into the sub region.
-Added missing wax capture possible spot in Shaman room

* Adds option for ixupi captures to be priority locations

Adds option for ixupi captures to be priority locations

* Consistency

Consistency

* Changes ixupi captures priority to default on toggle

Changes ixupi captures priority to default on toggle

* Docs update

-Updated link to randomizer
-Update some text to reflect the latest functionality
-Replaced 'setting' with 'option'

* New features/bug fixes

-Adds an option to have completed pots in the item pool
-Moved subterranean world information plaque to maze staircase

* Cleanup

Cleanup

* Fixed name for moved location

When moving a location and renaming it I forgot to fix the name in a second spot.

* Squashed commit of the following:

commit 630a3bdfb9414d8c57154f29253fce0cf67b6436
Merge: 8477d3c8 5e579200
Author: GodlFire <[email protected]>
Date:   Mon Apr 1 19:08:48 2024 -0600

    Merge pull request #10 from ArchipelagoMW/main

    Merge main into branch

commit 5e5792009cd3089ae61c5fdd208de1b79d183cb4
Author: Alchav <[email protected]>
Date:   Mon Apr 1 12:08:21 2024 -0500

    LttP: delete playerSettings.yaml (#3062)

commit 9aeeeb077a9e894cd2ace51b58d537bcf7607d5b
Author: CaitSith2 <[email protected]>
Date:   Mon Apr 1 06:07:56 2024 -0700

    ALttP: Re-mark light/dark world regions after applying plando connections (#2964)

commit 35458380e6e08eab85203942b6415fd964907c84
Author: Bryce Wilson <[email protected]>
Date:   Mon Apr 1 07:07:11 2024 -0600

    Pokemon Emerald: Fix wonder trade race condition (#2983)

commit 4ac1866689d01dc6693866ee8b1236ad6fea114b
Author: Alchav <[email protected]>
Date:   Mon Apr 1 08:06:31 2024 -0500

    ALTTP: Skull Woods Inverted fix (#2980)

commit 4aa03da66e1a8c99fc31c163c1a23fb0bd772c15
Author: Fabian Dill <[email protected]>
Date:   Mon Apr 1 15:06:02 2024 +0200

    Factorio: fix attempting to create savegame with not filename safe characters (#2842)

commit 24a03bc8b6b406c0925eedf415dcef47e17fdbaa
Author: Silvris <[email protected]>
Date:   Mon Apr 1 08:02:26 2024 -0500

    KDL3: fix shuffled animals not actually being random (#3060)

commit f813a7005fadb1c56bb93fee6147b63d9df2b720
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 11:11:10 2024 -0500

    The Messenger: update docs formatting and fix outdated info (#3033)

    * The Messenger: update docs formatting and fix outdated info

    * address review feedback

    * 120 chars

commit 2a0b7e0def5c00cc2ac273b22581b3cde3b6f6a6
Author: LiquidCat64 <[email protected]>
Date:   Sun Mar 31 09:55:55 2024 -0600

    CV64: A couple of very small docs corrections. (#3057)

commit 03d47e460e434b897b313c2ba452d785ecbacebe
Author: Ixrec <[email protected]>
Date:   Sun Mar 31 16:55:08 2024 +0100

    A Short Hike: Clarify installation instructions (#3058)

    * Clarify installation instructions

    * don't mention 'config' folder since it isn't created until the game starts

commit e546c0f7ff2456ddb919a1b65a437a1c61b07479
Author: Silvris <[email protected]>
Date:   Sun Mar 31 10:50:31 2024 -0500

    Yoshi's Island: add patch suffix (#3061)

commit 2ec93ba82a969865a8addc98feb076898978c8e3
Author: Bryce Wilson <[email protected]>
Date:   Sun Mar 31 09:48:59 2024 -0600

    Pokemon Emerald: Fix inconsistent location name (#3065)

commit 4e3d3963941934c77573e6e0b699edf9e26cd647
Author: Aaron Wagener <[email protected]>
Date:   Sun Mar 31 10:47:11 2024 -0500

    The Messenger: Fix precollected notes not being removed from the itempool (#3066)

    * The Messenger: fix precollected notes not being properly removed from pool

    * The Messenger: bump required client version

commit 72c53513f8bdab5506ffa972c1bf6f8573f097d7
Author: Fabian Dill <[email protected]>
Date:   Sun Mar 31 03:57:59 2024 +0200

    WebHost: fix /check creating broken yaml files if files don't end with a newline (#3063)

commit b7ac6a4cbd54d5f8e6672e4a6c6ea708e7e6d4de
Author: Aaron Wagener <[email protected]>
Date:   Fri Mar 29 20:14:53 2024 -0500

    The Messenger: Fix various portal shuffle issues (#2976)

    * put constants in a bit more sensical order

    * fix accidental incorrect scoping

    * fix plando rules not being respected

    * add docstrings for the plando functions

    * fix the portal output pools being overwritten

    * use shuffle and pop instead of removing by content so plando can go to the same area twice

    * move portal pool rebuilding outside mapping creation

    * remove plando_connection cleansing since it isn't shared with transition shuffle

commit 5f0112e78365d19f04e22af92d6ad1f52d264b1f
Author: Zach Parks <[email protected]>
Date:   Fri Mar 29 19:13:51 2024 -0500

    Tracker: Add starting inventory to trackers and received items table. (#3051)

commit bb481256de2a511d3b114f164061d440026be4c4
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 21:48:40 2024 -0500

    Core: Make fill failure error more human parseable (#3023)

commit 301d9de9758e360ccec5399f3f9d922f1c034e45
Author: Aaron Wagener <[email protected]>
Date:   Thu Mar 28 19:31:59 2024 -0500

    Docs: adding games rework (#2892)

    * Docs: complete adding games.md rework

    * remove all the now unused images

    * review changes

    * address medic's review

    * address more comments

commit 9dc708978bd00890afcd3426f829a5ac53cbe136
Author: Trevor L <[email protected]>
Date:   Thu Mar 28 18:26:58 2024 -0600

    Hylics 2: Fix invalid multiworld data, use `self.random` instead of `self.multiworld.random` (#3001)

    * Hylics 2: Fixes

    * Rewrite loop

commit 4391d1f4c13cdf2295481d8c51f9ef8f58bf8347
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 18:05:39 2024 -0600

    Pokemon Emerald: Fix opponents learning non-randomized TMs (#3025)

commit 5d9d4ed9f1e44309f1b53f12413ad260f1b6c983
Author: black-sliver <[email protected]>
Date:   Fri Mar 29 01:01:31 2024 +0100

    SoE: update to pyevermizer v0.48.0 (#3050)

commit c97215e0e755224593fdd00894731b59aa415e19
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 17:23:37 2024 -0400

    TUNIC: Minor refactor of the vanilla_portals function (#3009)

    * Remove unused, change an if to an elif

    * Remove unused import

commit eb66886a908ad75bbe71fac9bb81a0177e05e816
Author: Alchav <[email protected]>
Date:   Thu Mar 28 16:23:01 2024 -0500

    SC2: Don't Filter Excluded Victory Locations (#3018)

commit de860623d17d274289e3e4ab13650f2382e2e0b8
Author: Fabian Dill <[email protected]>
Date:   Thu Mar 28 22:21:56 2024 +0100

    Core: differentiate between unknown worlds and broken worlds in error message (#2903)

commit 74b2bf51613a968eb57a5b138a7ad191324b2dd8
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 15:20:55 2024 -0600

    Pokemon Emerald: Exclude norman trainer location during norman goal (#3038)

commit 74ac66b03228988d0885cff556f962a04873cc54
Author: BadMagic100 <[email protected]>
Date:   Thu Mar 28 08:49:19 2024 -0700

    Hollow Knight: 0.4.5 doc revamp and default options tweaks (#2982)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 80d7ac416493a540548aad67981202a1483b5e53
Author: Silvris <[email protected]>
Date:   Thu Mar 28 09:41:32 2024 -0500

    KDL3: RC1 Fixes and Enhancement (#3022)

    * fix cloudy park 4 rule, zero deathlink message

    * remove redundant door_shuffle bool

    when generic ER gets in, this whole function gets rewritten. So just clean it a little now.

    * properly fix deathlink messages, fix fill error

    * update docs

commit 77311719fa0fa5b67fe92f437c3cfed16bd5136f
Author: Ziktofel <[email protected]>
Date:   Thu Mar 28 15:38:34 2024 +0100

    SC2: Fix HERC upgrades (#3044)

commit cfc1541be9e92f1f59b21f4a81f96fc88f4d9f7e
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 28 15:19:32 2024 +0100

    Docs: Mention the "last received item index" paradigm in the network protocol docs (#2989)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 4d954afd9b2311248083fc389ac737995985be86
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 28 10:11:20 2024 -0400

    TUNIC: Add link to AP plando guide to connection plando section of game page (#2993)

commit 17748a4bf1cfd5cc11c6596a09ffc1f01434340f
Author: Nicholas Saylor <[email protected]>
Date:   Thu Mar 28 10:00:10 2024 -0400

    Launcher, Docs: Update UI and Set-Up Guide to Reference Options  (#2950)

commit 9182fe563fc18ed4ccaa8370cfed88407140398e
Author: Entropynines <[email protected]>
Date:   Thu Mar 28 06:56:35 2024 -0700

    README: Remove outdated information about launchers (#2966)

    Co-authored-by: Exempt-Medic <[email protected]>

commit bcf223081facd030aa706dc7430a72bcf2fdadc9
Author: t3hf1gm3nt <[email protected]>
Date:   Thu Mar 28 09:54:56 2024 -0400

    TLOZ: Fix markdown issue with game info page (#2985)

commit fa93488f3fceac6c2f51851766543cab3ba121e6
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 28 09:46:00 2024 -0400

    Docs: Consistent naming for "connection plando" (#2994)

commit db15dd4bde442aad99048224bdb0d7dc28c26717
Author: chandler05 <[email protected]>
Date:   Thu Mar 28 08:45:19 2024 -0500

    A Short Hike: Fix incorrect info in docs (#3016)

commit 01cdb0d761a82349afaeb7222b4b59cb1766f4a0
Author: PoryGone <[email protected]>
Date:   Thu Mar 28 09:44:23 2024 -0400

    SMW: Update World Doc for v2.0 Features (#3034)

    Co-authored-by: Scipio Wright <[email protected]>

commit d0ac2b744eac438570e6a2333e76fa212be66534
Author: panicbit <[email protected]>
Date:   Thu Mar 28 10:11:26 2024 +0100

    LADX: fix local and non-local instrument placement (#2987)

    * LADX: fix local and non-local instrument placement

    * change confusing variable name

commit 14f5f0127eb753eaf0431a54bebc82f5e74a1cb9
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:42:35 2024 -0400

    Stardew Valley: Fix potential soft lock with vanilla tools and entrance randomizer + Performance improvement for vanilla tool/skills (#3002)

    * fix vanilla tool fishing rod requiring metal bars
    fix vanilla skill requiring previous level (it's always the same rule or more restrictive)

    * add test to ensure fishing rod need fish shop

    * fishing rod should be indexed from 0 like a mentally sane person would do.

    * fishing rod 0 isn't real, but it definitely can hurt you.

    * reeeeeeeee

commit cf133dde7275e171d388fb466b9ed719ab7ed7c8
Author: Bryce Wilson <[email protected]>
Date:   Thu Mar 28 02:32:27 2024 -0600

    Pokemon Emerald: Fix typo (#3020)

commit ca1812181106a3645e7f7af417590024b377b25e
Author: Jérémie Bolduc <[email protected]>
Date:   Thu Mar 28 04:27:49 2024 -0400

    Stardew Valley: Fix generation fail with SVE and entrance rando when Wizard Tower is in place of Sprite Spring (#2970)

commit 1d4512590e0b78355e5c10174a9c6749e1098a72
Author: NewSoupVi <[email protected]>
Date:   Wed Mar 27 21:09:09 2024 +0100

    requirements.txt: _ instead of - to make PyCharm happy (#3043)

commit f7b415dab00338443b68eba51f42614fc40b9152
Author: agilbert1412 <[email protected]>
Date:   Tue Mar 26 19:40:58 2024 +0300

    Stardew valley: Game version documentation (#2990)

    Co-authored-by: Exempt-Medic <[email protected]>

commit 702f006c848c05b847e85f7dbedeef68b70cdcc6
Author: LiquidCat64 <[email protected]>
Date:   Tue Mar 26 07:31:36 2024 -0600

    CV64: Change all mentions of "settings" to "options" and fix a broken link (#3015)

commit 98ce8f8844fd0c62214a5774609382cf6a6bc829
Author: Yussur Mustafa Oraji <[email protected]>
Date:   Tue Mar 26 14:29:25 2024 +0100

    sm64ex: New Options API and WebHost fix (#2979)

commit ea47b90367b4a220c346d8057f3aeb4207d226a1
Author: Scipio Wright <[email protected]>
Date:   Tue Mar 26 09:25:41 2024 -0400

    TUNIC: You can grapple down here without the ladder, neat (#3019)

commit bf3856866c5ea385d0ac58014c71addfdc92637e
Author: agilbert1412 <[email protected]>
Date:   Sun Mar 24 23:53:49 2024 +0300

    Stardew Valley: presets with some of the new available values for existing settings to make them more accurate (#3014)

commit c0368ae0d48b4b2807c5238aeb7b14937282fc3e
Author: Phaneros <[email protected]>
Date:   Sun Mar 24 13:53:20 2024 -0700

    SC2: Fixed missing upgrade from custom tracker (#3013)

commit 36c83073ad8c2ae1912d390ee3976ba0e2eb3f4a
Author: Salzkorn <[email protected]>
Date:   Sun Mar 24 21:52:41 2024 +0100

    SC2 Tracker: Fix grouped items pointing at wrong item IDs (#2992)

commit 2b24539ea5b387a3b62063c8177c373e2e3f8389
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:52:16 2024 +0100

    SC2 Tracker: Use level tinting to let the player know which level he has of Replenishable Magazine (#2986)

commit 7e904a1c78c91fb502706fe030a1f1765f734de4
Author: Ziktofel <[email protected]>
Date:   Sun Mar 24 21:51:46 2024 +0100

    SC2: Fix Kerrigan presence resolving when deciding which races should be used (#2978)

commit bdd498db2321417374d572bff8beede083fef2b2
Author: Alchav <[email protected]>
Date:   Fri Mar 22 15:36:27 2024 -0500

    ALTTP: Fix #2290's crashes (#2973)

commit 355223b8f0af1ee729ffa8b53eb717aa5bf283a4
Author: PinkSwitch <[email protected]>
Date:   Fri Mar 22 15:35:00 2024 -0500

    Yoshi's Island: Implement New Game (#2141)

    Co-authored-by: Silvris <[email protected]>
    Co-authored-by: Alchav <[email protected]>
    Co-authored-by: NewSoupVi <[email protected]>
    Co-authored-by: Exempt-Medic <[email protected]>

commit aaa3472d5d8d8a7a710bd38386d9eb34046a5578
Author: NewSoupVi <[email protected]>
Date:   Fri Mar 22 21:30:51 2024 +0100

    The Witness: Fix seed bleed issue (#3008)

commit 96d93c1ae313bb031e983c0d40d8be199b302df1
Author: chandler05 <[email protected]>
Date:   Fri Mar 22 15:30:23 2024 -0500

    A Short Hike: Add option to customize filler coin count (#3004)

    Co-authored-by: Exempt-Medic <[email protected]>

commit ca549df20a0a07c30ee2e1bbc2498492b919604d
Author: Silvris <[email protected]>
Date:   Fri Mar 22 15:29:24 2024 -0500

    CommonClient: fix hint tab overlapping (#2957)

    Co-authored-by: Remy Jette <[email protected]>

commit 44988d430dc7d91eaeac7aad681dc024bc19ccce
Author: Star Rauchenberger <[email protected]>
Date:   Fri Mar 22 15:28:41 2024 -0500

    Lingo: Add trap weights option (#2837)

commit 11b32f17abebc08a6140506a375179f8a46bcfe6
Author: Danaël V <[email protected]>
Date:   Fri Mar 22 12:46:14 2024 -0400

    Docs: replacing "setting" to "option" in world docs  (#2622)

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    * Update contributing.md

    Added non-AP World specific information

    * Update contributing.md

    Fixed broken link

    * Some minor touchups

    * Update Contributing.md

    Draft for version with picture

    * Update contributing.md

    Small word change

    * Minor updates for conciseness, mostly

    * Changed all instances of settings to options in info and setup guides

    I combed through all world docs and swapped "setting" to "option" when this was refering to yaml options.
    I also changed a leftover "setting" in option.py

    * Update contributing.md

    * Update contributing.md

    * Update setup_en.md

    Woops I forgot one

    * Update Options.py

    Reverted changes regarding options.py

    * Update worlds/noita/docs/en_Noita.md

    Co-authored-by: Scipio Wright <[email protected]>

    * Update worlds/sc2wol/docs/en_Starcraft 2 Wings of Liberty.md

    revert change waiting for that page to be updated

    * Update worlds/witness/docs/setup_en.md

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/soe/docs/multiworld_en.md

    Fixed Typo

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/witness/docs/en_The Witness.md

    * Update worlds/adventure/docs/en_Adventure.md

    * Update worlds/witness/docs/setup_en.md

    * Updated Stardew valley to hopefully get rid of the merge conflicts

    * Didn't work :dismay:

    * Delete worlds/sc2wol/docs/setup_en.md

    I think this will fix the merge issue

    * Now it should work

    * Woops

    ---------

    Co-authored-by: Scipio Wright <[email protected]>
    Co-authored-by: black-sliver <[email protected]>

commit 218cd45844f9d733618af9088941156cd79b80bc
Author: Silvris <[email protected]>
Date:   Fri Mar 22 03:02:38 2024 -0500

    APProcedurePatch: fix RLE/COPY incorrect sizing (#3006)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    * Update Files.py

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 4196bde597cdbb6186ff614294fd54ff043a0c99
Author: Exempt-Medic <[email protected]>
Date:   Thu Mar 21 16:38:36 2024 -0400

    Docs: Fixing special_range_names example (#3005)

commit 40f843f54d5970302caeb2a21b76a4845cf5c0ed
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 11:00:53 2024 -0500

    Lingo: Minor game data fixes (#3003)

commit da333fbb0c88feedd4821a7bade3f56028a02111
Author: GodlFire <[email protected]>
Date:   Thu Mar 21 09:52:16 2024 -0600

    Shivers: Adds missing logic rule for skull dial door location (#2997)

commit 43084da23c719133fcae672e20c9b046e6ef8067
Author: NewSoupVi <[email protected]>
Date:   Thu Mar 21 16:51:29 2024 +0100

    The Witness: Fix newlines in Witness option tooltips (#2971)

commit 14816743fca366b52422ccb19add59d4960f17a3
Author: Scipio Wright <[email protected]>
Date:   Thu Mar 21 11:50:07 2024 -0400

    TUNIC: Shuffle Ladders option (#2919)

commit 30a0aa2c85a7015e2072b5781ed1078965f62f4b
Author: Star Rauchenberger <[email protected]>
Date:   Thu Mar 21 10:46:53 2024 -0500

    Lingo: Add item/location groups (#2789)

commit f4b7c28a33bb163768871616023a8cf3879840b4
Author: Silvris <[email protected]>
Date:   Wed Mar 20 17:45:32 2024 -0500

    APProcedurePatch: hotfix changing class variables to instance variables (#2996)

    * change class variables to instance variables

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * Update worlds/Files.py

    Co-authored-by: black-sliver <[email protected]>

    * move required_extensions to tuple

    * fix missing tuple ellipsis

    * fix classvar mixup

    * rename tokens to _tokens. use hasattr

    * type hint cleanup

    * Update Files.py

    * check using isinstance instead

    ---------

    Co-authored-by: black-sliver <[email protected]>

commit 12864f7b24028fa56135e599f0fe1642c9d2d377
Author: chandler05 <[email protected]>
Date:   Wed Mar 20 22:44:09 2024 +0100

    A Short Hike: Implement New Game (#2577)

commit db02e9d2aabc0f4c1302ac761b3f5547ef00c7c5
Author: LiquidCat64 <[email protected]>
Date:   Wed Mar 20 15:03:25 2024 -0600

    Castlevania 64: Implement New Game (#2472)

commit 32315776ac0ac1a714eb9d58688c479e2038c658
Author: Jérémie Bolduc <[email protected]>
Date:   Wed Mar 20 16:57:45 2024 -0400

    Stardew Valley: Fix extended family legendary fishes being locations with fishsanity set to exclude legendary (#2967)

commit e9620bea777ff1008a09c24a70bf523c94f22c29
Author: Magnemania <[email protected]>
Date:   Wed Mar 20 16:56:00 2024 -0400

    SM64: Goal Logic and Hint Bugfixes (#2886)

commit 183ca35bbaf6c805fdb53396d21d0cba34f9cc5e
Author: qwint <[email protected]>
Date:   Wed Mar 20 08:39:37 2024 -0500

    CommonClient: Port Casting Bug (#2975)

commit fcaaa197a19a3be03965c504ca78dd2c21ce1f84
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:19 2024 -0700

    SMW: Fixes for Bowser being defeatable on Egg Hunt and CI2 DC room access (#2981)

commit 8f7b63a787a0ef05625ae2fad1768251aced0c87
Author: TheLX5 <[email protected]>
Date:   Wed Mar 20 05:56:04 2024 -0700

    SMW: Blocksanity logic fixes (#2988)

commit 6f64bb98693556ac2635791381cc9651c365b324
Author: Scipio Wright <[email protected]>
Date:   Wed Mar 20 08:46:31 2024 -0400

    Noita: Remove newline from option description so it doesn't look bad on webhost (#2969)

commit d0a9d0e2d1df641668f4f806b45f9577e69229f6
Author: Bryce Wilson <[email protected]>
Date:   Wed Mar 20 06:43:13 2024 -0600

    Pokemon Emerald: Bump required client version (#2963)

commit 94650a02de62956eee8e7e41f61e8a41506b5842
Author: Silvris <[email protected]>
Date:   Tue Mar 19 17:08:29 2024 -0500

    Core: implement APProcedurePatch and APTokenMixin (#2536)

    * initial work on procedure patch

    * more flexibility

    load default procedure for version 5 patches
    add args for procedure
    add default extension for tokens and bsdiff
    allow specifying additional required extensions for generation

    * pushing current changes to go fix tloz bug

    * move tokens into a separate inheritable class

    * forgot the commit to remove token from ProcedurePatch

    * further cleaning from bad commit

    * start on docstrings

    * further work on docstrings and typing

    * improve docstrings

    * fix incorrect docstring

    * cleanup

    * clean defaults and docstring

    * define interface that has only the bare minimum required
    for `Patch.create_rom_file`

    * change to dictionary.get

    * remove unnecessary if statement

    * update to explicitly check for procedure, restore compatible version and manual override

    * Update Files.py

    * remove struct uses

    * ensure returning bytes, add token type checking

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <[email protected]>

    * pep8

    ---------

    Co-authored-by: beauxq <[email protected]>
    Co-authored-by: Doug Hoskisson <[email protected]>

* Changes pot_completed_list to a instance variable instead of global.

Changes pot_completed_list to a instance variable instead of global. The global variable was unintentional and was causing missmatch in pre_fill which would cause generation error.

* Removing deprecated options getter

* Adds back fix from main branch

Adds back fix from main branch

* Removing messenger changes that somehow got on my branch?

Removing messenger changes that somehow got on my branch?

* Removing messenger changes that are somehow on the Shivers branch

Removing messenger changes that are somehow on the Shivers branch

* Still trying to remove Messenger changes on Shivers branch

Still trying to remove Messenger changes on Shivers branch

* Review comments addressed. Early lobby access set as default.

Review comments addressed. Early lobby access set as default.

* Review comments addressed

Review comments addressed

* Review comments addressed. Option for priority locations removed.

Option to have ixupi captures a priority has been removed and can be added again if Priority Fill is changed. See Issues #3467.

* Minor Change

Minor Change

* Fixed ID 10 T Error

Fixed ID 10 T Error

* Front door option added to slot data

Front door option added to slot data

* Add missing .value on slot data

Add missing .value on slot data

* Small change to slot data

Small change to slot data

* Small change to slot data

Why didn't this change get pushed github...

* Forgot list

Forgot list

---------

Co-authored-by: Kory Dondzila <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>

* Bomb Rush Cyberfunk: Fix Coil quest being in glitched logic too early (#3720)

* Update Rules.py

* Update Rules.py

* Options: Always verify keys for VerifyKeys options (#3280)

* Options: Always verify keys for VerifyKeys options

* fix PlandoTexts

* use OptionError and give a slightly better error message for which option it is

* add the player name to the error

* don't create an unnecessary list

---------

Co-authored-by: NewSoupVi <[email protected]>

* Docs: Add FFMQ French Setup Guide + Minor fixes to English Guide (#3590)

* Add docs

* Fix character

* Configuration

Co-authored-by: Jérémie Bolduc <[email protected]>

* ajuster

Co-authored-by: Jérémie Bolduc <[email protected]>

* inclure

Co-authored-by: Jérémie Bolduc <[email protected]>

* doublon

Co-authored-by: Jérémie Bolduc <[email protected]>

* remplissage

Co-authored-by: Jérémie Bolduc <[email protected]>

* autre

Co-authored-by: Jérémie Bolduc <[email protected]>

* pouvoir

Co-authored-by: Jérémie Bolduc <[email protected]>

* mappemonde

Co-authored-by: Jérémie Bolduc <[email protected]>

* apostrophes

Co-authored-by: Jérémie Bolduc <[email protected]>

* virgule

Co-authored-by: Jérémie Bolduc <[email protected]>

* fournir

Co-authored-by: Jérémie Bolduc <[email protected]>

* apostrophes 2

Co-authored-by: Jérémie Bolduc <[email protected]>

* snes9x

Co-authored-by: Jérémie Bolduc <[email protected]>

* apostrophes 3

Co-authored-by: Jérémie Bolduc <[email protected]>

* options

Co-authored-by: Jérémie Bolduc <[email protected]>

* lien

Co-authored-by: Jérémie Bolduc <[email protected]>

* de laquelle

Co-authored-by: Jérémie Bolduc <[email protected]>

* Étape de génération

Co-authored-by: Jérémie Bolduc <[email protected]>

* apostrophes 4

Co-authored-by: Jérémie Bolduc <[email protected]>

* également

Co-authored-by: Jérémie Bolduc <[email protected]>

* guillemets

Co-authored-by: Jérémie Bolduc <[email protected]>

* guillemets 2

Co-authored-by: Jérémie Bolduc <[email protected]>

* adresse

Co-authored-by: Jérémie Bolduc <[email protected]>

* Connect

Co-authored-by: Jérémie Bolduc <[email protected]>

* seed

Co-authored-by: Jérémie Bolduc <[email protected]>

* Changer fichier yaml pour de configuration

* Fix capitalization

Co-authored-by: Nicholas Saylor <[email protected]>

* Fix capitalization 2

Co-authored-by: Nicholas Saylor <[email protected]>

* Fix typo+Add link to fr/en info page

---------

Co-authored-by: Jérémie Bolduc <[email protected]>
Co-authored-by: Nicholas Saylor <[email protected]>

* Spire: Convert options, clean up random calls, and add DeathLink (#3704)

* Convert StS options

* probably a bad idea

* Update worlds/spire/Options.py

Co-authored-by: Scipio Wright <[email protected]>

---------

Co-authored-by: Kono Tyran <[email protected]>
Co-authored-by: Scipio Wright <[email protected]>

* Core: fix missing import for `MultiWorld.link_items()` (#3731)

* Pokemon R/B: Removing Floats from NamedRange #3717

* Docs: Missed Full Accessibility mention/conversion #3734

* ChecksFinder: Refactor/Cleaning (#3725)

* Update ChecksFinder

* minor cleanup

* Check for compatible name

* Enable APWorld

* Update setup_en.md

* Update en_ChecksFinder.md

* The client is getting updated instead

* Qwint suggestions, ' -> ", streamline fill_slot_data

* Oops, too many refactors

---------

Co-authored-by: SunCat <[email protected]>

* OSRS: Implement New Game (#1976)

* MMBN3: Press program now has proper color index when received remotely

* Initial commit of OSRS untangled from MMBN3 branch

* Fixes some broken region connections

* Removes some locations

* Rearranges locations to fill in slots left by removed locations

* Adds starting area rando

* Moves Oak and Willow trees to resource regions

* Fixes various PEP8 violations

* Refactor of regions

* Fixes variable capture issue with region rules

* Partial completion of brutal grind logic

* Finishes can_reach_skill function

* Adds skill requirements to location rules, fixes regions rules

* Adds documentation for OSRS

* Removes match statement

* Updates Data Version to test mode to prevent item name caching

* Fixes starting spawn logic for east varrock

* Fixes river lum crossing logic to not assume you can phase across water

* Prevents equipping items when you haven't unlocked them

* Changes canoe logic to not require huge levels

* Skeletoning out some data I'll need for variable task system

* Adds csvs and parser for logic

* Adds Items parsing

* Fixes the spawning logic to not default to Chunksanity when you didn't pick it

* Begins adding generation rules for data-driven logic

* Moves region handling and location creating to different methods

* Adds logic limits to Options

* Begun the location generation has

* Randomly generates tasks for each skill until populated

* Mopping up improper names, adding custom logic, and fixes location rolling

* Drastically cleans up the location rolling loop

* Modifies generation to properly use local variables and pass unit tests

* Game is now generating, but rules don't seem to work

* Lambda capture, my old nemesis. We meet again

* Fixes issue with Corsair Cove item requirement causing logic loop

* Okay one more fix, another variable capture

* On second thought lets not have skull sceptre tasks. 'Tis a silly place

* Removes QP from item pool (they're events not items)

* Removes Stronghold floor tasks, no varbit to track them

* Loads CSV with pkutil so it can be used in apworld

* Fixes logic of skill tasks and adds QP requirements to long grinds

* Fixes pathing in pkgutil call

* Better handling for empty task categories, no longer throws errors

* Fixes order for progressive tasks, removes un-checkable spider task

* Fixes logic issues related to stew and the Blurite caves

* Fixes issues generating causing tests to sporadically fail

* Adds missing task that caused off-by-one error

* Updates to new Options API

* Updates generation to function properly with the Universal Tracker (Thanks Faris)

* Replaces runtime CSV parsing with pre-made python files generated from CSVs

* Switches to self.random and uses random.choice instead of doing it manually

* Fixes to typing, variable names, iterators, and continue conditions

* Replaces Name classes with Enums

* Fixes parse error on region special rules

* Skill requirements check now returns an accessrule instead of being one that checks options

* Updates documentation and setup guide

* Adjusts maximum numbers for combat and general tasks

* Fixes region names so dictionary lookup works for chunksanity

* Update worlds/osrs/docs/en_Old School Runescape.md

Co-authored-by: Nicholas Saylor <[email protected]>

* Update worlds/osrs/docs/en_Old School Runescape.md

Co-authored-by: Nicholas Saylor <[email protected]>

* Updates readme.md and codeowners doc

* Removes erroneous East Varrock -> Al Kharid connection

* Changes to canoe logic to account for woodcutting level options

* Fixes embarassing typo on 'Edgeville'

* Moves Logic CSVs to separate repository, addresses suggested changes on PR

* Fixes logic error in east/west lumbridge regions. Fixes incorrect List typing in main

* Removes task types with weight 0 from the list of rollable tasks

* Missed another place that the task type had to be removed if 0 weight

* Prevents adding an empty task weight if levels are too restrictive for tasks to be added

* Removes giant blank space in error message

* Adds player name to error for not having enough available tasks

---------

Co-authored-by: Nicholas Saylor <[email protected]>

* TUNIC: Fix missing traversal req #3740

* TUNIC: Sort entrances in the spoiler log (#3733)

* Sort entrances in spoiler log

* Rearrange portal list to closer match the vanilla game order, for better spoiler and because I already did this mod-side

* Add break (thanks vi)

* KH2: Update the docs to support steam in the setup guide (#3711)

* doc updates

* add steam link

* Update worlds/kh2/docs/setup_en.md

Co-authored-by: Exempt-Medic <[email protected]>

* Update setup_en.md

* Forgot to include these

* Consistent styling

* :)

* version 3.3.0

---------

Co-authored-by: Exempt-Medic <[email protected]>

* RoR2: Remove recursion from explore mode access rules (#3681)

The access rules for "<Environment name> Chest n", "<Environment name>
Shrine n" etc. locations recursively called state.can_reach() for the
n-1 location name, with the n=1 location being the only location to have
the actual access rule set.

This patch removes the recursion, instead setting the actual access rule
directly on each location, increasing the performance of checking
accessibility of n>1 locations.

Risk of Rain 2 was already quite fast to generate despite the recursion
in the access rules, but with this patch, generating a multiworld with
200 copies of the template RoR2 yaml (and progression balancing
disabled through a meta.yaml) goes from about 18s to about 6s for me.

From generating the same seed before and after this patch, the same
result is produced.

* Aquaria: Logic bug fixes (#3679)

* Fixing logic bugs

* Require energy attack in the cathedral and energy form in the body

* King Jelly can be beaten easily with only the Dual Form

* I think that I have a problem with my left and right...

* There is a monster that is blocking the path, soo need attack to pass

* The Li cage is not accessible without the Sunken city boss

* Removing useless space.

Co-authored-by: Exempt-Medic <[email protected]>

* Two more minors logic modification

* Adapting tests to af9b6cd

* Reformat the Region file

---------

Co-authored-by: Exempt-Medic <[email protected]>

* HK: add grub hunt goal (#3203)

* makes grub hunt goal option that calculates the total available grubs (including item link replacements) and requires all of them to be gathered for goal completion

* update slot data name for grub count

* add option to set number needed for grub hub

* updates to grub hunt goal based on review

* copy/paste fix

* account for 'any' goal and fix overriding non-grub goals

* making sure godhome is in logic for any and removing redundancy on completion condition

* fix typing

* i hate typing

* move to stage_pre_fill

* modify "any" goal so all goals are in logic under minimal settings

* rewrite grub counting to create lookups for grubs and groups that can be reused

* use generator instead of list comprehension

* fix whitespace merging wrong

* minor code cleanup

* DS3: Version 3.0.0 (#3128)

* Update worlds/dark_souls_3/Locations.py

Co-authored-by: Scipio Wright <[email protected]>

* Fix Covetous Silver Serpent Ring location

* Update location groups

This should cover pretty much all of the seriously hidden items. It
also splits out miniboss drops, mimic drops, and hostile NPC drops.

* Remove the "Guarded by Keys" group

On reflection, I don't think this is actually that useful. It'll also
get a lot muddier once we can randomize shops and ashes become
pseudo-"keys".

* Restore Knight Slayer's Ring classification

* Support infusions/upgrades in the new DS3 mod system

* Support random starting loadouts

* Make an item's NPC status orthogonal to its category

* Track location groups with flags

* Track Archipelago/Offline mismatches on the server

Also fix a few incorrect item names.

* Add additional locations that are now randomizable

* Don't put soul and multiple items in shops

* Add an option to enable whether NG+ items/locations are included

* Clean up useful item categorization

There are so many weapons in the game now, it doesn't make sense to
treat them all as useful

* Add more variety to filler items

* Iron out a few bugs and incompatibilities

* Fix more silly bugs

* Get tests passing

* Update options to cover new item types

Also recategorize some items.

* Verify the default values of `Option`s.

Since `Option.verify()` can handle normalization of option names, this allows options  to define defaults which rely on that normalization. For example, it allows a world to exclude certain locations by default.

This also makes it easier to catch errors if a world author accidentally sets an invalid default.

* Make a few more improvements and fixes

* Randomize Path of the Dragon

* Mark items that unlock checks as useful

These items all unlock missable checks, but they're still good to ahve in the game for variety's sake.

* Guarantee more NPC quests are completable

* Fix a syntax error

* Fix rule definition

* Support enemy randomization

* Support online Yhorm randomization

* Remove a completed TODO

* Fix tests

* Fix force_unique

* Add an option to smooth out upgrade item progression

* Add helpers for setting location/entrance rules

* Support smoother soul item progression

* Fill extra smoothing items into conditional locations as well as other worlds

* Add health item smoothing

* Handle infusions at item generation time

* Handle item upgrades at genreation time

* Fix Grave Warden's Ashes

* Don't overwrite old rules

* Randomize items based on spheres instead of DS3 locations

* Add a smoothing option for weapon upgrades

* Add rules for crow trades

* Small fixes

* Fix a few more bugs

* Fix more bugs

* Try to prevent Path of the Dragon from going somewhere it doesn't work

* Add the ability to provide enemy presets

* Various fixes and features

* Bug fixes

* Better Coiled Sword placement

* Structure DarkSouls3Location more like DarkSouls3Item

* Add events to make DS3's spheres more even

* Restructure locations to work like items do now

* Add rules for more missable locations

* Don't add two Storm Rulers

* Place Hawk Ring in Farron Keep

* Mark the Grass Crest Shield as useful

* Mark new progression items

* Fix a bug

* Support newer better Path of the Dragon code

* Don't lock the player out of Coiled Sword

* Don't create events for missable locations

* Don't throw strings

* Don't smooth event items

* Properly categorize Butcher Knife

* Be more careful about placing Yhorm in low-randomization scenarios

* Don't try to smooth DLC items with DLC disabled

* Fix another Yhorm bug

* Fix upgrade/infusion logic

* Remove the PoolType option

This distinction is no longer meaningful now that every location in
the game of each type is randomized

* Categorize HWL: Red Eye Orb as an NPC location

* Don't place Storm Ruler on CA: Coiled Sword

* Define flatten() locally to make this APWorld capable

* Fix some more Leonhard weirdness

* Fix unique item randomization

* Don't double Twin Dragon Greatshield

* Remove debugging print

* Don't add double Storm Ruler

Also remove now-redundant item sorting by category in create_items.

* Don't add double Storm Ruler

Also remove now-redundant item sorting by category in create_items.

* Add a missing dlc_enabled check

* Use nicer options syntax

* Bump data_version

* Mention where Yhorm is in which world

* Better handle excluded events

* Add a newline to Yhorm location

* Better way of handling excluded unradomized progression locations

* Fix a squidge of nondeterminism

* Only smooth items from this world

* Don't smooth progression weapons

* Remove a location that doesn't actually exist in-game

* Classify Power Within as useful

* Clarify location names

* Fix location requirements

* Clean up randomization options

* Properly name Coiled Sword location

* Add an option for configuring how missable items are handled

* Fix some bugs from location name updates

* Fix location guide link

* Fix a couple locations that were busted offline

* Update detailed location descriptions

* Fix some bugs when generating for a multiworld

* Inject Large Leather Shield

* Fix a few location issues

* Don't allow progression_skip_balancing for unnecessary locs

* Update some location info

* Don't uniquify the wrong items

* Fix some more location issues

* More location fixes

* Use hyphens instead of parens for location descriptions

* Update and fix more locations

* Fix Soul of Cinder boss name

* Fix some logic issues

* Add item groups and document item/location groups

* Fix the display name for "Impatient Mimics"

* Properly handle Transposing Kiln and Pyromancer's Flame

* Testing

* Some fixes to NPC quests, late basin, and transposing kiln

* Improve a couple location names

* Split out and improve missable NPC item logic

* Don't allow crow trades to have foreign items

* Fix a variable capture bug

* Make sure early items are accessible early even with early Castle

* Mark ID giant slave drops as missable

* Make sure late basin means that early items aren't behind it

* Make is_location_available explicitly private

* Add an _add_item_rule utility that checks availability

* Clear excluded items if excluded_locations == "unnecessary"

* Don't allow upgrades/infusions in crow trades

* Fix the documentation for deprecated options

* Create events for all excluded locations

This allows `can_reach` logic to work even if the locations are
randomized.

* Fix up Patches' and Siegward's logic based on some manual testing

* Factor out more sub-methods for setting location rules

* Oops, left these in

* Fixing name

* Left that in too

* Changing to NamedRange to support special_range_names

* Alphabetizing

* Don't call _is_location_available on foreign locations

* Add missing Leonhard items

* Changing late basin to have a post-small-doll option

* Update basin option, add logic for some of Leonhard Hawkwood and Orbeck

* Simplifying an option, fixing a copy-paste error

* Removing trailing whitespace

* Changing lost items to go into start inventory

* Revert Basin changes

* Oops

* Update Options.py

* Reverting small doll changes

* Farron Keep boss requirement logic

* Add Scroll for late_dlc

* Fixing excluded unnecessary locations

* Adding Priestess Ring as being after UG boss

* Removing missable from Corvian Titanite Slab

* Adding KFF Yhorm boss locks

* Screams about Creighton

* Elite Knight Set isn't permanently missable

* Adding Kiln requirement to KFF

* fixing valid_keys and item groups

* Fixing an option-checker

* Throwing unplaceable Storm Ruler into start inventory

* Update locations

* Refactor item injection

* Update setup doc

* Small fixes

* Fix another location name

* Fix injection calculation

* Inject guaranteed items along with progression items

* Mark boss souls as required for access to regions

This allows us to set quest requirements for boss souls and have them
automatically propagated to regions, means we need less machinery for
Yhorm bosses, and allows us to get rid of a few region-transition
events.

* Make sure Sirris's quest can be completed before Pontiff

* Removing unused list

* Changing dict to list

* Removing unused test

* Update __init__.py

* self.multiworld.random -> self.random (#9)

* Fix some miscellaneous location issues

* Rewrite the DS3 intro page/FAQ

* Removing modifying the itempool after fill (#7)

Co-authored-by: Natalie Weizenbaum <[email protected]>

* Small fixes to the setup guide (#10)

Small fixes, adding an example for connecting

* Expanded Late Basin of Vows and Late DLC (#6)

* Add proper requirements for CD: Black Eye Orb

* Fix Aldrich's name

* Document the differences with the 2.x.x branch

* Don't crash if there are more items than locations in smoothing

* Apply suggestions from code review

Co-authored-by: Nicholas Saylor <[email protected]>

* Code review

* Fix _replace_with_filler

* Don't use the shared flatten function in SM

* Track local items separately rather than iterating the multiworld

* Various formatting/docs changes suggested by PyCharm (#12)

* Drop deprecated options

* Rename "offline randomizer" to "static randomizer" which is clearer

* Move `enable_*_locations` under removed options.

* Avoid excluded locations for locally-filled items

* Adding Removed options to error (#14)

* Changes for WebHost options display and the options overhaul

* unpack iterators in item list (#13)

* Allow worlds to add options to prebuilt groups

Previously, this crashed because `typing.NamedTuple` fields such as
`group.name` aren't assignable. Now it will only fail for group names
that are actually incorrectly cased, and will fail with a better error
message.

* Style changes, rename exclude behavior options, remove guaranteed items option

* Spacing/Formatting (#18)

* Various Fixes (#19)

* Universally Track Yhorm (#20)

* Account for excluded and missable

* These are behaviors now

* This is singular, apparently

* Oops

* Fleshing out the priority process

* Missable Titanite Lizards and excluded locations (#22)

* Small style/efficiency changes

* Final passthrough fixes (#24)

* Use rich option formatting

* Make the behavior option values actual behaviors (#25)

* Use !=

* Remove unused flatten utility

* Some changes from review (#28)

* Fixing determinism and making smooth faster (#29)

* Style change

* PyCharm and Mypy fixes (#26)

Co-authored-by: Scipio Wright <[email protected]>

* Change yhorm default (#30)

* Add indirect condition (#27)

* Update worlds/dark_souls_3/docs/locations_en.md

Co-authored-by: Nicholas Saylor <[email protected]>

* Ship all item IDs to the client

This avoids issues where items might get skipped if, for instance,
they're only in the starting inventory.

* Make sure to send AP IDs for infused/upgraded weapons

* Make `RandomEnemyPresetOption` compatible with ArchipelagoMW/Archipelago#3280 (#31)

* Fix cast

* More typing and small fixes (#32)

---------

Co-authored-by: Scipio Wright <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
Co-authored-by: Nicholas Saylor <[email protected]>
Co-authored-by: Doug Hoskisson <[email protected]>
Co-authored-by: NewSoupVi <[email protected]>

* Core: Check parent_region.can_reach first in Location.can_reach (#3724)

* Core: Check parent_region.can_reach first in Location.can_reach

The comment about self.access_rule computing faster on average appears
to no longer be correct with the current caching system for region
accessibility, resulting in self.parent_region.can_reach computing
faster on average.

Generation of template yamls for each game that does not require a rom
to generate, generated with `python -O .\Generate.py --seed 1`
(all durations averaged over at 4 or 5 generations):

Full generation with `spoiler: 1` and no progression balancing:
89.9s -> 72.6s
Only output from above case:
2.6s -> 2.2s

Full generation with `spoiler: 3` and no progression balancing:
769.9s -> 627.1s
Only playthrough calculation + paths from above case:
680.5s -> 555.3s

Full generation with `spoiler: 1` with default progression balancing:
123.5s -> 98.3s
Only progression balancing from above case:
11.3s -> 9.6s

* Update BaseClasses.py

* Update BaseClasses.py

* Update BaseClasses.py

---------

Co-authored-by: NewSoupVi <[email protected]>

* Core: Speed up CollectionState.copy() using built-in copy methods (#3678)

All the types being copied are built-in types with their own `copy()`
methods, so using the `copy` module was a bit overkill and also slower.

This patch replaces the use of the `copy` module in
`CollectionState.copy()` with using the built-in `.copy()` methods.

The copying of `reachable_regions` and `blocked_connections` was also
iterating the keys of each dictionary and then looking up the value in
the dictionary for that key. It is faster, and I think more readable, to
iterate the dictionary's `.items()` instead.

For me, when generating a multiworld including the template yaml of
every world with `python -O .\Generate.py --skip_output`, this patch
saves about 2.1s. The overall generation duration for these yamls varies
quite a lot, but averages around 160s for me, so on average this patch
reduced overall generation duration (excluding output duration) by
around 1.3%.

Timing comparisons were made by calling time.perf_counter() at the start
and end of `CollectionState.copy()`'s body, and summing the differences
between the starts and ends of the method body into a global variable
that was printed at the end of generation.

Additional timing comparisons were made, using the `timeit` module, of
the individual function calls or dictionary comprehensions used to
perform the copying.

The main performance cost was `copy.deepcopy()`, which gets slow as the
number of keys multiplied by the number of values within the
sets/Counters gets large, e.g., to deepcopy a `dict[int, Counter[str]]`
with 100 keys and where each Counter contains 100 keys was 30x slower
than most other tested copying methods. Increasing the number of dict
keys or Counter keys only makes it slower.

* HK: fix iterating all worlds instead of only HK worlds in stage_pre_fill (#3750)

Would cause generation to fail when generating with HK and another game.

Mistake in 6803c373e5ff.

* DOOM, DOOM II: Update steam URLs (#3746)

* TLOZ: world: multiworld (#3752)

* SoE: fix determinism (#3745)

Fixes randomly placed ingredients not being deterministic (depending on settings)
and in turn also fixes logic not being deterministic if they get replaced by fragments.

* Core: fix invalid __package__ of zipped worlds (#3686)

* fix invalid package fix

* add comment describing fix

* Clique: Update to new options API (#3759)

* Timespinner: Fix eels check logic #3777

* TUNIC: Add note to Universal Tracker stuff #3772

* Core: change start inventory from pool to warn when nothing to remove (#3158)

* makes start inventory from pool warn and fixes the itempool to match when it can not find a matching item to remove

* calc the difference correctly

* save new filler and non-removed items differently so we don't remove existing items at random

* Undertale: Fix slot_data and options.as_dict() (#3774)

* Undertale: Fixing slot_data

* Booleans were difficult

* Core: Error on empty options.as_dict (#3773)

* Error on empty options.as_dict

* ValueError instead

* Apply suggestions from code review

Co-authored-by: Aaron Wagener <[email protected]>

---------

Co-authored-by: Aaron Wagener <[email protected]>
Co-authored-by: NewSoupVi <[email protected]>

* Core: Remove broken unused code from Options.py (#3781)

"Unused" is a baseless assertion, but this code path has been crashing on the first statement for 6 months and noone's complained

* Core: Two Small Fixes (#3782)

* Core: recontextualize `CollectionState.collect` (#3723)

* Core: renamed `CollectionState.collect` arg from `event` to `prevent_sweep` and remove forced collection

* Update TestDungeon.py

---------

Co-authored-by: NewSoupVi <[email protected]>

* Core: dump all item placements for generation failures. (#3237)

* Core: dump all item placements for generation failures

* pass the multiworld from remaining fill

* change how the args get handled to fix formatting

---------

Co-authored-by: NewSoupVi <[email protected]>

* Tests: fix the all games multiworld test (#3788)

* TUNIC: Swap from multiworld.get to world.get for applicable things (#3789)

* Swap from multiworld.get to world.get for applicable things

* Why was this even here in the first place?

* I have no idea (#3791)

* TUNIC: Add off and on aliases for the Entrance Rando option #3794

* Stardew Valley: Add Quality Bobber in the logic rules for fish quality gold and above #3792

* Core: Require excluded locations to be reachable with full/locations accessibility (#3802)

* Make excludeds reachable

* Update all_state tests

* Lingo: Fixed Initiated-side Eight Door not opening (#3793)

* TUNIC: Give the fox a gun (in logic) (very small PR) (#3790)

* Add bomb wall logic

* Remove option call from can_shop

* Gun for the envoy blocking Quarry

* has_sword -> can_shop on cube cave entrance region

* TLOZ: Fix non-deterministic item pool generation (#3779)

* TLOZ: Fix non-deterministic item pool generation

The way the item pool was constructed involved iterating unions of sets.
Sets are unordered, so the order of iteration of these combined sets
would be non-deterministic, resulting in the items in the item pool
being generated in a different order with the same seed.

Rather than creating unions of sets at all, the original code has been
replaced with using Counter objects. As a dict subclass, Counter
maintains insertion order, and its update() method makes it simple to
combine the separate item dictionaries into a single dictionary with the
total count of each item across each of the separate item dictionaries.

Fixes #3664 - After investigating more deeply, the only differences I
could find between generations of the same seed was the order of items
created by TLOZ, so this patch appears to fix the non-deterministic
generation issue. I did manage to reproduce the non-deterministic
behaviour with just TLOZ in the end, but it was very rare. I'm not
entirely sure why generating with SMZ3 specifically would cause the
non-deterministic behaviour in TLOZ to be frequently present, whereas
generating with other games or multiple TLOZ yamls would not.

* Change import order

---------

Co-authored-by: NewSoupVi <[email protected]>

* Docs: Update 'tag' documentation (#3632)

* Add tag docs for HintGame

* Apply suggestions from code review

Co-authored-by: black-sliver <[email protected]>

* Make Tracker/TextOnly consistent with previous commit

* Apply suggestion

Co-authored-by: black-sliver <[email protected]>

* fix spacing

* Apply suggestion

Co-authored-by: black-sliver <[email protected]>

* apply suggestion correcting footnotes

Co-authored-by: Exempt-Medic <[email protected]>

---------

Co-authored-by: black-sliver <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>

* [OSRS] Fixes Incorrect filler item names causing failures on tests. (#3768)

* Updates filler item names to match the actual item names

* Adds more descriptive error message in case this error comes back

* Properly raises exception instead of just text

* Replaces exception with assert

* Fix !remaining for cross-world items (#3732)

* Fix !remaining for other worlds

* Typing fixes for the previous change

* Update LocationStore test to match what get_remaining now returns

* Core: early_local != local_early #3780

* Pokemon Emerald: Ensure dig tutor is always usable (#3660)

* Pokemon Emerald: Ensure dig tutor is alw…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affects: core Issues/PRs that touch core and may need additional validation. is: new game Pull requests for implementing new games into Archipelago. waiting-on: core-review Issue/PR has been peer-reviewed and is ready to be merged or needs input from a core maintainer.
Projects
None yet
Development

Successfully merging this pull request may close these issues.