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

Factorio: use schema for world_gen, allow setting pollution values #23

Merged
merged 1 commit into from
Jul 20, 2021

Conversation

black-sliver
Copy link
Member

generate_early: split world_gen into basic and advanced map settings for mod generation

@Ijwu
Copy link
Contributor

Ijwu commented Jul 19, 2021

What does the ageing option do? I can't find any mention of it in the Factorio wiki on the map generation.

@black-sliver
Copy link
Member Author

black-sliver commented Jul 19, 2021

https://wiki.factorio.com/Types/MapGenPreset first table under advanced_settings. The description seems to be wrong though, it accepts values from 10% to 400% and is called "dissipation factor" in the GUI: setting ageing to 1.5 will set dissipation factor to 150%.

@Berserker66
Copy link
Member

At https://wiki.factorio.com/Prototype/MapSettings it is described as ageing - double - Constant modifier a percentage of 1; the pollution eaten by a chunks tiles

@Ijwu
Copy link
Contributor

Ijwu commented Jul 19, 2021

FWIW, this LGTM. I'm not the code owner of this, though, so I'll leave it to @Berserker66.

@black-sliver black-sliver force-pushed the main branch 2 times, most recently from 3eff428 to c6498c6 Compare July 19, 2021 23:13
@black-sliver black-sliver changed the title factorio: allow setting pollution values Factorio: use schema for world_gen, allow setting pollution values Jul 19, 2021
@Berserker66
Copy link
Member

Thank you!

@Berserker66 Berserker66 merged commit 10c6a70 into ArchipelagoMW:main Jul 20, 2021
Alchav pushed a commit to Alchav/Archipelago that referenced this pull request Mar 15, 2023
…rlds-Collide-AP

Improved KT Objective Flexibility for Custom Flagstring Input
Magnemania pushed a commit to Magnemania/Archipelago that referenced this pull request Nov 6, 2023
TheLX5 added a commit to TheLX5/Archipelago that referenced this pull request Mar 2, 2024
TheLX5 added a commit to TheLX5/Archipelago that referenced this pull request Mar 2, 2024
commit 0e94a15
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Feb 11 00:38:39 2024 -0500

    Fix typo

commit 7599c25
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Feb 11 00:26:32 2024 -0500

    Add new popup option

commit 7ad8bb6
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Feb 11 00:14:43 2024 -0500

    Missing Special Zone Location

commit 630b61e
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Feb 10 23:52:14 2024 -0500

    Remove debug text

commit 4c66a0b
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Feb 10 23:45:10 2024 -0500

    Fix option text

commit 1420729
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Sat Feb 10 19:56:31 2024 -0700

    SMW v2 - More small adjustments (ArchipelagoMW#29)

    * Very small logic tweaks

    * Adjusted levels with vertical scroll

    * Added a small failsafe on reading the amount of items received

commit 5698486
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Wed Jan 24 21:13:01 2024 -0700

    SMW v2 - Beta 2 fixes (ArchipelagoMW#27)

    * Fix Reverse Trap issues

    * Enable vertical scroll in DP1 main room & CI1 copies

commit 758f06c
Merge: 3f7c5ea aa72f67
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Jan 21 13:52:16 2024 -0500

    Merge branch 'main' into smw-main

commit 3f7c5ea
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Fri Jan 19 01:03:35 2024 -0700

    SMW v2 - Additional changes to a hidden feature (ArchipelagoMW#25)

    * More changes to the hidden player swap feature

    * Fix yoshi poses during the map

commit 7ac687e
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Jan 18 16:58:52 2024 -0500

    Fix missed option reference

commit 17f649a
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Jan 17 23:40:52 2024 -0500

    Change 'Reverse Controls Trap' to 'Reverse Trap'

commit 5142739
Merge: 5be46e3 e530202
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Jan 17 23:38:22 2024 -0500

    Merge branch 'smw-main' of https://github.com/PoryGoneDev/Pory_Archipelago into smw-main

commit 5be46e3
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Jan 17 23:38:14 2024 -0500

    Sort itempool to place eggs last

commit e530202
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Wed Jan 17 21:34:09 2024 -0700

    SMW v2 - Beta test fixes (ArchipelagoMW#24)

    * Blocksanity updates

    * Do not remove Yoshi's House from the json

    * Add mushroom requirement to DP2 vine block

    * Make dragon coins counter go up to 255

    * Update level_blocks_data with up to date blocksanity info

    * Add new traps

    * Give SFX to Reverse Controls Trap

    * Batch of changes

    * Revert coin junk items values

commit ea099e1
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Jan 10 04:02:15 2024 -0500

    Revamp handling of Yoshi Egg options

commit 08a6569
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Mon Jan 8 23:35:44 2024 -0700

    Update DP1 GSP wall to only require GSP and Cape (ArchipelagoMW#23)

commit 22be7ae
Author: PoryGone <porygoneplays@gmail.com>
Date:   Tue Jan 9 01:17:33 2024 -0500

    Handle Auto-tracking current room

commit 0f707fe
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Jan 4 00:47:55 2024 -0500

    Finish options cleanup

commit a86afab
Merge: 6e0fa4d 7406a1e
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Jan 3 23:39:07 2024 -0500

    Merge branch 'main' into smw-main

commit 6e0fa4d
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Wed Jan 3 21:30:30 2024 -0700

    Additional changes to SMW v2 (ArchipelagoMW#22)

    * Batch of changes

    * Remove additional get_filler_item_name

    * Added a way for the client to write to level clear and all blocksanity blocks flags on !collect

commit 0151f69
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Dec 2 19:28:19 2023 -0500

    Singularity SFX shuffle

commit e8ca4a5
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Dec 2 19:00:31 2023 -0500

    Condense Level Palette Shuffles into a single option

commit 67044ab
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Dec 2 03:26:53 2023 -0500

    Clean up MultiWorld usage and options access

commit c3fca02
Merge: e3c0e08 6e38126
Author: PoryGone <porygoneplays@gmail.com>
Date:   Fri Dec 1 21:40:48 2023 -0500

    Merge branch 'main' into smw-main

commit e3c0e08
Author: TheLX5 <luisyuregi@gmail.com>
Date:   Fri Dec 1 19:37:09 2023 -0700

    Possible SMW v2 implementation (ArchipelagoMW#18)

    * Initial v2 files

    they work on AP 0.4.3

    * Removed code used for debugging

    * Reverted EasyEarlyLevels option

    * Location name adjustments

    * Reverted added logic for Funky

    * Removed easy early levels option

    * Removed options for junk item weights

    * Reworked the vertical scroll hack

    * Change item names from the init file

    * trimming

    * Blocksanity data is now computed from the json file instead of using a bin file

    * Added a missing blocksanity location

    * Bring back import settings and related code

    * Bring back more settings... again!

    * Attempt to solve merge conflict

    * Bring back ROM expansion

    * Attempt #2 to fix merge conflicts

    * Changed junk item "15 coins" to "50 coins"

    * Remove unused things

    * Configured the vertical scroll setting table

    * Modified the map indicator for Hidden 1-Ups

    * Adjusted some palettes

    * Changed 1-Up Checkpoint references to Hidden 1-Up

    Also changed some of the options' descriptions
    ... and changed the name of a location in Donut Ghost House

    * Fixed the logic for a block that could be either a green or yellow switch palace block

    * Make impossible to receive checks during boss battles

    * Several palette fixes

    arbustos

    * Rework palette shuffle options

commit 5e65477
Merge: eb30a71 d2e9bfb
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Nov 4 21:53:53 2023 -0400

    Merge branch 'main' into smw-main

commit eb30a71
Merge: f33d98b dc2aa5f
Author: PoryGone <porygoneplays@gmail.com>
Date:   Mon Jan 30 19:47:00 2023 -0500

    Merge branch 'main' into smw-main

commit f33d98b
Author: PoryGone <98504756+PoryGone@users.noreply.github.com>
Date:   Sun Jan 29 23:51:38 2023 -0500

    Update worlds/smw/Client.py to use `getattr`

    Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>

commit 7c8e34b
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Jan 19 18:52:00 2023 -0500

    Fix Chocolate Island 4 Dragon Coins logic

commit f8e1d2e
Merge: 4a2eab8 02d3eef
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Jan 19 18:43:33 2023 -0500

    Merge branch 'main' into smw-main

commit 4a2eab8
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Dec 21 19:30:09 2022 -0500

    Add option to fully exclude Special Zone levels from the seed

commit a84e36c
Merge: 406e188 4cfc73b
Author: PoryGone <porygoneplays@gmail.com>
Date:   Mon Dec 19 19:36:50 2022 -0500

    Merge branch 'main' into smw-main

commit 406e188
Author: PoryGone <porygoneplays@gmail.com>
Date:   Mon Dec 19 00:08:22 2022 -0500

    Address unconnected regions

commit a2ffeec
Merge: f65d47b e0be796
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Dec 18 23:49:46 2022 -0500

    Merge branch 'main' into smw-main

commit f65d47b
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Dec 18 23:49:28 2022 -0500

    Tooltip text edit

commit f595db7
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Dec 18 18:09:34 2022 -0500

    Add correct tooltip for Early Climb

commit 2a4c2db
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Dec 18 17:51:44 2022 -0500

    Early Climb and Overworld Speed

commit 8fb3d1e
Author: PoryGone <porygoneplays@gmail.com>
Date:   Fri Dec 16 20:31:27 2022 -0500

    Fix trap name and actually create them

commit 5a0e389
Author: PoryGone <porygoneplays@gmail.com>
Date:   Fri Dec 16 03:11:11 2022 -0500

    Handle Queuing traps and new Timer Trap

commit 67c37d8
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Dec 15 00:43:30 2022 -0500

    Fix Literature Trap typo

commit 3ef9594
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Dec 15 00:28:48 2022 -0500

    Overworld Palette Shuffle

commit 9d8faec
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Dec 14 19:08:29 2022 -0500

    Remove extra space

commit 10bd729
Author: PoryGone <porygoneplays@gmail.com>
Date:   Wed Dec 14 01:09:13 2022 -0500

    Add boss shuffle

commit 13c74ca
Author: PoryGone <porygoneplays@gmail.com>
Date:   Mon Dec 12 02:37:41 2022 -0500

    Baseline for Bowser Rooms shuffling

commit 61c1d2f
Merge: 7f4eb70 32820ba
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sun Dec 11 17:20:01 2022 -0500

    Merge branch 'main' into smw-main

commit 7f4eb70
Merge: a161083 2cdd03f
Author: PoryGone <porygoneplays@gmail.com>
Date:   Sat Dec 10 21:58:41 2022 -0500

    Merge branch 'main' into smw-main

commit a161083
Merge: b92024e ef66f64
Author: PoryGone <porygoneplays@gmail.com>
Date:   Thu Dec 1 01:26:49 2022 -0500

    Merge branch 'main' into smw-main

commit b92024e
Author: PoryGone <98504756+PoryGone@users.noreply.github.com>
Date:   Wed Nov 16 11:42:49 2022 -0500

    Increment Data Package version

    Changed a location name.

commit dcf4108
Merge: aa281ef 4d79920
Author: PoryGone <porygoneplays@gmail.com>
Date:   Tue Nov 15 18:01:50 2022 -0500

    Merge branch 'main' into smw-main

commit aa281ef
Author: PoryGone <porygoneplays@gmail.com>
Date:   Tue Nov 15 18:01:03 2022 -0500

    Make Bowser unkillable on Egg Hunt
Alchav pushed a commit to Alchav/Archipelago that referenced this pull request Jun 10, 2024
Alchav pushed a commit to Alchav/Archipelago that referenced this pull request Jun 10, 2024
The Archaeology Update (and let some other mods in they're cool)
qwint pushed a commit to qwint/Archipelago that referenced this pull request Sep 17, 2024
…the tracker list or map (ArchipelagoMW#23)

* feat: Add ability to manually ignore locations so they no longer appear in the tracker list or map

* add reset_ignored and more safety to list_ignored

* clear ignored locations and manually collected items on disconnect

---------

Co-authored-by: Faris <162540354+FarisTheAncient@users.noreply.github.com>
NewSoupVi pushed a commit that referenced this pull request Dec 5, 2024
* Fully updates requirements.py to live LADXR (#19)

* Updates dungeon2.py to LADXR-Live (#20)

No logic changes or bugfix are in this file. It is only code cleanup.

* Update dungeon1.py (#21)

- The Three of a Kind with Bomb is moved from Normal to Hard Logic

The rest is code cleanup.

lines 22-25 | 22-26 & 33 | 34 remain different in AP | Upstream with no effective difference

* Fully updates dungeon3.py to LADXR-live (#22)

Logic Changes:
- Hard mode now considers killing the enemies in the top room with pot

Everything else is cleanup.

* Fully update dungeon4.py to LADXR-live logic (#23)

Logic Changes:
- Hard Logic: Removes Feather requirement from grabbing the Pit Key
- Hell logic: new hookshot clip (line 64)
- Hell logic: hookshot spam over the first pit of crossroads, then buffer down (line 69)
- Hell logic: push block left of keyblock up, then shaq jump off the left wall and pause buffer to land on keyblock.
- Hell logic: split zol for more entities, and clip through the block left of keyblock by hookshot spam

The rest is code cleanup

* Updates dungeon5.py mostly to LADXR-Live Logic (#24)

Logic Changes:
- Hell logic: use zoomerang dashing left to get an unclipped boots superjump off the right wall over the block. reverse is push block (line 69)

The rest is cleanup.

The upstream splits the post_gohma region into pre_gohma, gohma and post_gohma. I did not implement this yet as I do not know the implications. To port this the following lines need to be changed (AP | LADXR):
18 | 18-20;
55 | 58;
65 | 68-69

* Fully update dungeon6.py logic (#25)

Logic Changes:
- Hard logic: allow damage boosting past the mini thwomps
- Glitched logic: bomb triggering elephants in two cases

Everything else is cleanup

* Fully update dungeon7.py to LADXR-live logic (#26)

Logic Changes:
- Hard logic: Three of a Kind is now possible with bombs only

Everything else is code cleanup

* Fully updates dungeon8.py to LADXR-live (#27)

Logic change:
- Hard logic: allows to drop the Gibdos into holes as a way to kill them
- Glitched logic: underground section with fire balls jumping up out of lava. Use boots superjump off left wall to jump over the pot blocking the way


The rest is code cleanup

* Fully update dungeonColor.py to LADXR-live (#28)

Logic changes:
- Normal logic: Karakoros now need power bracelet to put them into their holes
- Hard logic: Karakoros without power bracelet but with weapon
- Hell logic: Karakoros with only bombs

Everything else is code cleanup

* Updating overworld.py (#29)

* Updating overworld.py

This tries to update all logic of the Overworld.

Logic changes include:
- Normal logic: requires hookshot or shield to traverse Armos Cave
- Hard logic: Traverse Armos Cave with nothing (formerly normal logic)
- Hard logic: get the animal village bomb cave check with jump and boomerang
- Hard logic: use rooster to go to D7
- Lots of Jesus Rooster Jumps

I stopped counting and need to go over this again.

Also, please investigate line 474 AP because it's removed in LADXR-Upstream and I don't know why.

* remove featherless fisher under bridge from hard

it was moved to hell upstream and its already present in our code

---------

Co-authored-by: Alex Nordstrom <a.l.nordstrom@gmail.com>

* fixes

* add test messages

* Adds Pegasus Boots to the test (#31)

* Fix d6 boss_key logic (#30)

* restore hardmode logic

* higher logic fixes

* add bush requirement to the raft
in case the player needs to farm rupees to play again

---------

Co-authored-by: palex00 <32203971+palex00@users.noreply.github.com>
Ars-Ignis added a commit to Ars-Ignis/Archipelago that referenced this pull request Dec 27, 2024
commit 3bcc86f5391ea00d220bf6bf094a4a08801b162b
Author: Kory Dondzila <korydondzila@gmail.com>
Date:   Fri Dec 27 15:07:55 2024 -0500

    Shivers: Add events and fix require puzzle hints logic (#4018)

    * Adds some events, renames things, fails for many players.

    * Adds entrance rules for requires hints.

    * Cleanup and add goal item.

    * Cleanup.

    * Add additional rule.

    * Event and regions additions.

    * Updates from merge.

    * Adds collect behavior option.

    * Fix missing generator location.

    * Fix whitespace and optimize imports.

    * Switch location order back.

    * Add name replacement for storage.

    * Fix test failure.

    * Improve puzzle hints required.

    * Add missing locations and cleanup indirect conditions.

    * Fix naming.

    * PR feedback.

    * Missed comment.

    * Cleanup imports, use strings for option equivalence, and update option description.

    * Fix rule.

    * Create rolling buffer goal items and remove goal items and location from default options.

    * Cleanup.

    * Removes dateutil.

    * Fixes Subterranean World information plaque.

commit 218f28912e0e120e4cf91a63aba627e91cc451c5
Author: BadMagic100 <dempsey.sean@outlook.com>
Date:   Fri Dec 27 12:04:02 2024 -0800

    Core: Generic Entrance Rando (#2883)

    * 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

    * 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

    * Move EntranceType out of Entrance

    * Handle minimal accessibility, autodetect regions, and improvements to disconnect

    * Add on_connect callback to react to succeeded entrance placements

    * Relax island-prevention constraints after a successful run on minimal accessibility; better error message on failure

    * First set of unit tests for generic ER

    * Change on_connect to send lists, add unit tests for EntranceLookup

    * Fix duplicated location names in tests

    * Update tests after merge

    * Address review feedback, start docs with diagrams

    * Fix rendering of hidden nodes in ER doc

    * Move most docstring content into a docs article

    * Clarify when randomize_entrances can be called safely

    * Address review feedback

    * Apply suggestions from code review

    Co-authored-by: Aaron Wagener <mmmcheese158@gmail.com>

    * Docs on ERPlacementState, add coupled/uncoupled handling to deadend detection

    * Documentation clarifications

    * Update groups to allow any hashable

    * Restrict groups from hashable to int

    * Implement speculative sweeping in stage 1, address misc review comments

    * Clean unused imports in BaseClasses.py

    * Restrictive region/speculative sweep test

    * sweep_for_events->advancement

    * Remove redundant __str__

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

    * Allow partial entrances in auto indirect condition sweep

    * Treat regions needed for logic as non-dead-end regardless of if they have exits, flip order of stage 3 and 4 to ensure there are enough exits for the dead ends

    * Typing fixes suggested by mypy

    * Remove erroneous newline

    Not sure why the merge conflict editor is different and worse than the normal editor. Crazy

    * Use modern typing for ER

    * Enforce the use of explicit indirect conditions

    * Improve doc on required indirect conditions

    ---------

    Co-authored-by: qwint <qwint.42@gmail.com>
    Co-authored-by: alwaysintreble <mmmcheese158@gmail.com>
    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

commit b9642a482f67f2358f13d2306a90673fc4f8fd9a
Author: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Date:   Thu Dec 26 17:04:21 2024 -0500

    KH2: Using fast_fill instead of fill_restrictive (#4227)

commit 33ae68c756f71eac6203b302db0144dee04ab09f
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Thu Dec 26 13:50:18 2024 +0000

    DS3: Convert post_fill to stage_post_fill for better performance (#4122)

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

commit 62942704bdea4ba0f79cb88580d5214b31b750b5
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Wed Dec 25 21:55:15 2024 +0100

    The Witness: Add info about which door items exist in the pool to slot data (#3583)

    * This feature is just broken lol

    * simplify

    * mypy

    * Expand the unit test for forbidden doors

commit fe810535211ca9ab57ed3b7649a272035d59e3a7
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Wed Dec 25 21:53:05 2024 +0100

    Core: Give the option to worlds to have a remaining fill that respects excluded locations (#3738)

    * Give the option to worlds to have a remaining fill that respects excluded

    * comment

commit 222c8aa0ae0ebbedb9884812087c38e15e381ed1
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Wed Dec 25 21:47:51 2024 +0100

    Core: Reword item classification definitions to allow for progression + useful (#3925)

    * Core: Reword item classification definitions to allow for progression + useful

    * Update network protocol.md

    * Update world api.md

    * Update Fill.py

    * Docstrings

    * Update BaseClasses.py

    * Update advanced_settings_en.md

    * Update advanced_settings_en.md

    * Update advanced_settings_en.md

    * space

commit 845000d10faa8cdf1c6ac293dcdfecc4c69a213d
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Wed Dec 25 21:47:17 2024 +0100

    Docs: Make an actual LogicMixin spec & explanation (#3975)

    * Docs: Make an actual LogicMixin spec & explanation

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update world api.md

    * Update docs/world api.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/world api.md

    * Update world api.md

    * Code corrections / actually follow own spec

    * Update docs/world api.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update world api.md

    * Update world api.md

    * Reorganize / Rewrite the parts about optimisations a bit

    * Update world api.md

    * Write a big motivation paragraph

    * Update world api.md

    * Update world api.md

    * line break issues

    * Update docs/world api.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update docs/world api.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update docs/world api.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update world api.md

    * Update docs/world api.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    ---------

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

commit b05f81b4b4f8f63368c7ebcf0aa5d3223357e1ce
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Wed Dec 25 10:58:27 2024 +0100

    The Witness: Fix bridge/elevator items being progression when they shouldn't be #4392

commit 6c1dc5f645ad215347eaecc2a5f5de0d2fd13365
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Wed Dec 25 01:44:47 2024 +0000

    Landstalker: Fix paths Lantern logic affecting other Landstalker worlds (#4394)

    The data from `WORLD_PATHS_JSON` is supposed to be constant logic data
    shared by all Landstalker worlds, but `add_path_requirements()` was
    modifying this data such that after adding a `Lantern` requirement for a
    dark region, subsequent Landstalker worlds to have their logic set could
    also be affected by this `Lantern` requirement and previous Landstalker
    worlds without damage boosting logic could also be affected by this
    `Lantern` requirement because they could all be using the same list
    instances. This issue would only occur for paths that have
    `"requiredItems"` because all paths without required items would create
    a new empty list, avoiding the problem.

    The items in `data["itemsPlacedWhenCrossing"]` were also getting added
    once for each Landstalker player, but there are no paths that have both
    `"itemsPlacedWhenCrossing"` and `"requiredItems"`, so all such cases
    would start from a new empty list of required items and avoid modifying
    `WORLD_PATHS_JSON`.

commit 5578ccd578be4aff3b4542970f8bd7cacac5c526
Author: Dinopony <dinopony.gg@gmail.com>
Date:   Tue Dec 24 20:08:03 2024 +0100

    Landstalker: Fix issues on generation (#4345)

commit 78637c96a747dd15584fb85a281d447b8307ebe0
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Tue Dec 24 17:38:46 2024 +0000

    Tests: Add spheres test for missing indirect conditions (#3924)

    Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>
    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

commit f3ec82962e18ec3a57e1f1984ba5270b0b0d145a
Author: Richard Snider <lighthousemaniac@gmail.com>
Date:   Sun Dec 22 18:05:43 2024 +0000

    Core: Add JSONMessagePart for Hint Status (Hint Priority) (#4387)

    * add hint_status JSONMessagePart handling

    * add docs for hint_status JSONMessagePart

    * fix link ordering

    * Rename hint_status type in docs

    Co-authored-by: Emily <35015090+EmilyV99@users.noreply.github.com>

    * Remove redundant explanation of hint_status field

    Co-authored-by: Emily <35015090+EmilyV99@users.noreply.github.com>

    * Fix formatting on hint status docs again

    Co-authored-by: Emily <35015090+EmilyV99@users.noreply.github.com>

    ---------

    Co-authored-by: Emily <35015090+EmilyV99@users.noreply.github.com>

commit 4f590cdf7b5aa2be95e4ed9cf7c7be95443456e8
Author: DrBibop <58860289+DrBibop@users.noreply.github.com>
Date:   Sat Dec 21 17:12:35 2024 -0500

    Inscryption: Implement new game (#3621)

    * Worked locally before that so this is a lot of work . So, initial push

    * Changes in init with better create_regions (Thanks to Phar on discord). Add a rule for victory. Change the regions list to remove menu in the destination.

    * Added tests for location rules and changed rule locations to lists instead of sets

    * Fixed game var in InscryptionLocation

    * Fixed location access by using the same system from The Messenger

    * Remove unuse rules in init and add region rules. Add all the act 2 locations and items.

    * Add locations rule for the left of the bridge in act 2

    * Added test for bridge requirement and added a dash to locationfor clarity

    * Added more act 2 rules and removed completion rule

    * Created docs for website, added Salmon Card item, marked multiple items as "progression", renamed tomb checks, added more location rules, re-added completion rule

    * Renamed tower bath check to "Tentacle", added monocle as requirement for some checks, adjusted setup doc a bit

    * Added tentacle to monocle test

    * Added forest burrow chest rule

    * Switch the two clock location because the id was swapped and screwed with the logic

    * Added Ancient Obol rule and adjusted docs

    * Added act 3 locations/items/rules/tests

    * Added drone & battery to trader rules

    * Fixed tutorial docs, added more act 3 rules, renamed holo pelt locations

    * Add an option for the optional death card feature

    * Added well check and quill item, added rules and tests

    * Renamed Gems module and Gems drone

    * Added slot data options

    * Added rule for act 3 middle pelt

    * Added option for randomize ability and uptade the randomize deck option to fit the new setup

    * Added randomize ability in slot data

    * Added more requirements for mycologists boss since it's pretty much an impossible fight early on

    * Finished the french translation of the installation guide

    * Changed the french title in the guide

    * Added goal option and tests associated to it + fixed goal requirement missing quill

    * Added goal option to docs and removed references to the now discarded API mod. Fixed some french translations.

    * Added ourobot item + renamed some goal settings

    * Fixed locations and items for act 1 goal

    * Added skip tutorial option. Cleanup and rename of some options. Added tower requirement for Mycologist Key check. Fixed missing comma in act 2 locations oopsies.

    * Added missing rules for Extra Battery, Nano Armor and Goobert's painting

    * Added act 1 deathlink behaviour and epitaph pieces randomization options + made pieces progressive + adjusted docs

    * Fixed some docs typos

    * Added act 3 clock rule. Paintings 2, 3 and Goobert's painting can no longer contain progression items.

    * New options system and fixed act 1 goal option breaking

    * Added skip epilogue and painting checks balancing options. Renamed randomize abilities to randomize sigils. Fixed generation issue with epitaph pieces randomization. Goobert's painting no longer forces filler. Removed traps option for now. Reworded some option descriptions.

    * Attempting type fix for python 3.8

    * Attempting type fix for python 3.8 again

    * Added starting only option for randomize deck

    * Fixed arbitrary rule error

    * Import fix attempt

    * Migrated to DeathLinkMixin instead of creating a custom DeathLink option, cleaned up imports, renamed Death Link related options to include "death_link" instead of "deathlink", replaced numeral values for option checking into class attributes for readability, slight optimization to tower rule, fixed typo in codes option description.

    * Added bug report page to web class, condensed pelt rules to one function, added items/locations count in game docs and adjusted some sections

    * Added Inscryption to CODEOWNERS

    * Implemented a bunch of suggestions: Better handling of painting option, options as dict for slot data, remove redundant auto_display_name, use of has_all, better goal tests, demote skink card to filler if goal is act 1 and force filler on paintings

    * Makes clover plant and squirrel head progression items if paintings are balanced + fixed other issues

    * filler items, start inventory from pool, '->"

    * Fix bleeding issue

    * Copy the list instead

    * Fixed bleeding using proper deep copy

    * Remove unnecessary for loops in tests

    * Add defaults to choice options

    ---------

    Co-authored-by: Benjamin Gregoire <benjamingregoire@outlook.com>
    Co-authored-by: Exempt-Medic <ExemptMedic@Gmail.com>
    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>

commit 46613adceb4c34676f1bbda29b0fe2960667c19a
Author: Kaito Sinclaire <ks@rosenthalcastle.org>
Date:   Sat Dec 21 11:39:38 2024 -0800

    SMZ3: Fix minimal logic considering SM boss tokens unnecessary (#4377)

commit e1a1cd10678ce4170a6ae5b609db815c516af193
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Fri Dec 20 07:55:32 2024 -0500

    LADX: Open Mabe Option (#3964)

    * open mabe option
    swaps east mabe rocks for bushes

    * add open mabe to slot data

    * use upstream overworld option
    Instead of a standalone option, use upstream's "overworld" option, which we don't use yet but it leaves better space for the future

    * use ladxr_setting for consistency

    * newline

commit 7c8d102c1760b519dfdc2fd5143849cc4db162e6
Author: Scipio Wright <scipiowright@gmail.com>
Date:   Thu Dec 19 23:45:29 2024 -0500

    TUNIC: Logic for bushes in guard house 2 upper and belltower (#4371)

    * Logic for bushes in guard house 2 upper

    * Fix typo

    * also do it for forest belltower

    * i love the dumb ice grapples

commit 35d30442f70ddaebadb3617a97e2841dc27bda2d
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 19 22:53:58 2024 -0500

    LADX: fix for syntax warning (#4376)

    * init

    * whitespace

    * raw string instead

commit 4f71073d174c58c7418b83e2f46960fd1ccc9fd3
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 19 22:17:41 2024 -0500

    LADX: correct in-game check counter

    LADX: correct in-game check counter

commit e142283e649d7cba0431d297ee1b1ccfffce5483
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 19 21:19:00 2024 -0500

    LADX: enable upstream options (#3962)

    * enable some upstream settings

    * flashing just disabled, no setting

    * just enable fast text

    * noflash and textmode as hidden options

    * typo

    * drop whitespace changes

    * add hard mode to slot data

    * textmode adjustments
    fast text default (fixing mistake)
    remove no text option (its buggy)

    * unhide options

    * Update worlds/ladx/Options.py

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * adjustments

commit de3707af4a4090449a30d228e5b21c3169f30016
Author: palex00 <32203971+palex00@users.noreply.github.com>
Date:   Fri Dec 20 02:47:33 2024 +0100

    Core/Docs: Adding apostrophe quotes around variables in printed error messages (#3914)

    * Also indents plando_connections properly

    * Adding apostrophe quotes around item, location, entrance/exit and boss names to make errors more readable

    * Update plando_en.md

    * Fixing test in Lufia II

commit 2e0769c90ec27f155c1de3f6141c641c1f9c341b
Author: Scipio Wright <scipiowright@gmail.com>
Date:   Thu Dec 19 20:30:41 2024 -0500

    Noita: Make greed die a trap (#4382)

    Noita make greed die a trap

commit 1ded7b2fd4486d116a8f86c19fb1eb3be210a021
Author: Louis M <prog@tioui.com>
Date:   Thu Dec 19 20:17:56 2024 -0500

    Aquaria: Replacing the release link to the latest link (#4381)

    * Replacing the release link to the latest link

    * The fr link was not working

commit cacab68b779a28f8401c5a3a34d26d609054bd75
Author: Bryce Wilson <gyroscope15@gmail.com>
Date:   Mon Dec 16 00:06:48 2024 -0800

    Pokemon Emerald: Remove unnecessary code (#4364)

commit 728d2492020ee3f75d421a7263308c6feb64e56a
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Sun Dec 15 23:30:35 2024 +0100

    Core: Add some more world convenience methods (#3021)

    * Add some more convenience methods

    * Typing stuff

    * Rename the method

    * beauxq's suggestions

    * Back to Push Precollected

commit d1823a21ea891c8d949cc0a5371059b265ff0cb4
Author: qwint <qwint.42@gmail.com>
Date:   Sun Dec 15 16:48:44 2024 -0500

    HK: add random handling to plandocharmcosts (#4327)

commit 6282efb13c9842a2c01eb6551d23b5d448f2d91c
Author: Scipio Wright <scipiowright@gmail.com>
Date:   Sun Dec 15 16:40:36 2024 -0500

    TUNIC: Additional Combat Logic Option (#3658)

commit 0fdc14bc42a8af64a17454c42d25f5c037e95309
Author: Benjamin S Wolf <jokeserver@gmail.com>
Date:   Sun Dec 15 13:29:56 2024 -0800

    Core: Deduplicate exception output (#4036)

    When running Generate.py, uncaught exceptions are logged once to a file and twice to the console due to keeping the original excepthook. We can avoid this by filtering the file log out of the stream handler.

commit 0370e669e57e767f8af23cc08b05468da8a72895
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Sun Dec 15 21:28:51 2024 +0000

    Pokemon Emerald: Add Mr Briney's House indirect conditions (#4154)

    The `REGION_DEWFORD_TOWN/MAIN -> REGION_ROUTE109/BEACH` and
    `REGION_ROUTE109/BEACH -> REGION_DEWFORD_TOWN/MAIN` entrances require
    access to the
    `REGION_ROUTE104_MR_BRINEYS_HOUSE/MAIN -> REGION_DEWFORD_TOWN/MAIN`
    entrance in their access rules, so require indirect conditions for the
    parent_region of the entrance: `REGION_ROUTE104_MR_BRINEYS_HOUSE/MAIN`.

commit ccea6bcf51143d9b87543e9f03e17088ccf44667
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Fri Dec 13 16:49:30 2024 -0500

    LADX: Improve icon guesses for foreign items (#2201)

    * synonyms to new file, many added

    * handle singular rupee

    * remove redundant map and compass entries

    * automatic pluralization

    * add guardian acorn and piece of power

    * move phrases to ItemIconGuessing.py

    * organize, comment

    * fix tab spacing

    * fix

    * add tunic and noita synonyms

    * remove triangle instrument synonym

    * reorganize, add some matches

    * add tunic lucky up

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update worlds/ladx/ItemIconGuessing.py

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * handle camelCase and single rupee

    * add indicate_progression option
    Adds alternative system for foreign item icons that simply indicates whether or not the item is a progression item.

    * improve splitting
    drops some more characters, and also dont bother with rejoined stuff in name_cache because our splitting is better

    * the witness stuff

    * forbid more

    * remove boost and surge

    * Update worlds/ladx/ItemIconGuessing.py

    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>

    * match by game name
    look at the name of the foreign game and only use game-specific entries for that game

    * show message for all key drops

    * updates from async test

    * vi suggestions

    * Adding FNAFW suggestions from @lolz1190 (#40)

    * Adding FNAFW suggestions from @lolz1190

    * missing comma

    ---------

    Co-authored-by: threeandthreee <a.l.nordstrom@gmail.com>

    ---------

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>
    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
    Co-authored-by: palex00 <32203971+palex00@users.noreply.github.com>

commit 8d9454ea3bca864cc0e3f20f39563966feeffb86
Author: qwint <qwint.42@gmail.com>
Date:   Thu Dec 12 15:36:56 2024 -0500

    Core: cast all the settings values so they don't try to get pickled later #4362

commit 1ca8d3e4a8b4a4a3850a0829c7c934bc4f8475c6
Author: qwint <qwint.42@gmail.com>
Date:   Thu Dec 12 15:24:38 2024 -0500

    Docs: add description of Indirect Condition problem (#4295)

    * Docs: Dev FAQ - About indirect conditions

    I wrote up a big effortpost about indirect conditions for nex on the [DS3 3.0 PR](https://github.com/ArchipelagoMW/Archipelago/pull/3128#discussion_r1693843193).

    The version I'm [PRing to the world API document](https://github.com/ArchipelagoMW/Archipelago/pull/3552) is very brief and unnuanced, because I'd rather people use too many indirect conditions than too few.
    But that might leave some devs wanting to know more.

    I think that comment on nex's DS3 PR is probably the best detailed explanation for indirect conditions that exists currently.

    So I think it's good if it exists somewhere. And the FAQ doc seems like the best place right now, because I don't want to write an entirely new doc at the moment.

    * Actually copy in the text

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: qwint <qwint.42@gmail.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: qwint <qwint.42@gmail.com>

    * Update apworld_dev_faq.md

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update apworld_dev_faq.md

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Update apworld_dev_faq.md

    * Update docs/apworld_dev_faq.md

    Co-authored-by: qwint <qwint.42@gmail.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: qwint <qwint.42@gmail.com>

    * fix the last couple of wording issues I have with the indirect condition section to apworld dev faq doc

    * I didn't like that wording

    * Apply suggestions from code review

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Apply suggestions from code review

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * Update docs/apworld_dev_faq.md

    * Update docs/apworld_dev_faq.md

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    ---------

    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

commit 9815306875f8c6a4d683679a090babc0b4f96e0d
Author: qwint <qwint.42@gmail.com>
Date:   Thu Dec 12 14:30:49 2024 -0500

    Docs: Use ModuleUpdate.py #3785

commit d7736950cd48d3df9ee35ff1167dc6586172903e
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Thu Dec 12 19:42:14 2024 +0100

    The Witness: Panel Hunt Plando (#3549)

    * Add panel hunt plando option

    * Keys are strs

    * oops

    * better message

    * ,

    * this doesn ot need to be here

    * don't replace pre picked panels

    * Update options.py

    * rebase error

    * rebase error

    * oops

    * Mypy

    * ruff

    * another rebase error

    * actually this is a stupid change too

    * bring over that change:tm:

    * Update entity_hunt.py

    * Update entity_hunt.py

    * Update entity_hunt.py

commit f5e3677ef1ec741f830e6ce3d231a25dca7c2689
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Thu Dec 12 18:04:27 2024 +0000

    Pokemon Emerald: Fix invalid escape sequence warnings (#4328)

    Generation on Python 3.12 would print SyntaxWarnings due to invalid '\d'
    escape sequences added in #3832.

    Use raw strings to avoid `\` being used to escape characters.

commit 144d612c527ac02eb290c8e7960c61c6b2fe1d79
Author: josephwhite <damasta21th@aol.com>
Date:   Thu Dec 12 08:50:48 2024 -0500

    Super Mario 64: Rework logic for 100 Coins (#4131)

    * sm64ex: Rework logic for 100 Coins

    * sm64ex: 100 Coins Vanilla Option

    * sm64ex: Avoiding raw int comparisons for 100 coin option

    * sm64ex: Change 100 coin option from toggle to choice

    * sm64ex: use snake_case for 100 coin option

    * just use "vanilla" for option comparison (exempt-medic feedback)

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * sm64ex: remove vanilla 100 coins from item pool to remove overfilling stars

    * yeah

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Remove range condition (35 is the min for total stars)

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    ---------

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

commit 3acbe9ece14ba792ea0c50bf3623e0e377cb18f3
Author: LiquidCat64 <74896918+LiquidCat64@users.noreply.github.com>
Date:   Thu Dec 12 06:47:47 2024 -0700

    Castlevania: Circle of the Moon - Implement New Game (#3299)

    * Add the cotm package with working seed playthrough generation.

    * Add the proper event flag IDs for the Item codes.

    * Oooops. Put the world completion condition in!

    * Adjust the game name and abbreviations.

    * Implement more settings.

    * Account for too many start_inventory_from_pool cards with Halve DSS Cards Placed.

    * Working (albeit very sloooooooooooow) ROM patching.

    * Screw you, bsdiff! AP Procedure Patch for life!

    * Nuke stage_assert_generate as the ROM is no longer needed for that.

    * Working item writing and position adjusting.

    * Fix the magic item graphics in Locations wherein they can be fixed.

    * Enable sub-weapon shuffle

    * Get the seed display working.

    * Get the enemy item drop randomization working. Phew!

    * Enemy drop rando and seed display fixes.

    * Functional Countdown + Early Double setting

    * Working multiworld (yay!)

    * Fix item links and demo shenanigans.

    * Add Wii U VC hash and a docs section explaining the rereleases.

    * Change all client read/writes to EWRAM instead of Combined WRAM.

    * Custom text insertion foundations.

    * Working text converter and word wrap detector.

    * More refinements to the text wrap system.

    * Well and truly working sent/received messages.

    * Add DeathLink and Battle Arena goal options.

    * Add tracker stuff, unittests, all locations countdown, presets.

    * Add to README, CODEOWNERS, and inno_setup

    * Add to README, CODEOWNERS, and inno_setup

    * Address some suggestions/problems.

    * Switch the Items and Locations to using dataclasses.

    * Add note about the alternate classes to the Game Page.

    * Oooops, typo!

    * Touch up the Options descriptions.

    * Fix Battle Arena flag being detected incorrectly on connection and name the locked location/item pairs better.

    * Implement option groups

    * Swap the Lizard-man Locations into their correct Regions.

    * Local start inventory, better DeathLink message handling, handle receiving over 255 of an item.

    * Update the PopTracker pack links to no longer point to the Releases page.

    * Add Skip Dialogues option.

    * Update the presets for the accessibility rework.

    * Swap the choices in the accessibility preset options.

    * Uhhhhhhh...just see the apworld v4 changelog for this one.

    * Ooops, typo!

    * .

    * Bunch of small stuff

    * Correctly change "Fake" to "Breakable" in this comment.

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Make can_touch_water one line.

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Make broke_iron_maidens one line.

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Fix majors countdown and make can_open_ceremonial_door one line.

    * Make the Trap AP Item less obvious.

    * Add Progression + Useful stuff, patcher handling for incompatible versions, and fix some mypy stuff.

    * Better option groups.

    * Change Early Double to Early Escape Item.

    * Update DeathLink description and ditch the Menu region.

    * Fix the Start Broken choice for Iron Maiden Behavior

    * Remove the forced option change with Arena goal + required All Bosses and Arena.

    * Update the Game Page with the removal of the forced option combination change.

    * Fix client potential to send packets nonstop.

    * More review addressing.

    * Fix the new select_drop code.

    * Fix the new select_drop code for REAL this time.

    * Send another LocationScout if we send Location checks without having the Location info.

    ---------

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
    Co-authored-by: Exempt-Medic <ExemptMedic@Gmail.com>
    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>

commit 7d0b701a2df01b93cf292c231d38c4753e6f0715
Author: Scipio Wright <scipiowright@gmail.com>
Date:   Thu Dec 12 06:54:03 2024 -0500

    TUNIC: Change rule for heir access in non-hex quest #4365

commit f91537fb481e58ff429929f7919a288f3630ba04
Author: Justus Lind <DeamonHunter@users.noreply.github.com>
Date:   Thu Dec 12 18:18:19 2024 +1000

    Muse Dash: Remove bad option defaults. #4340

commit 3c5ec49dbee129579573ab7528ddb87185f9fc9a
Author: Jouramie <16137441+Jouramie@users.noreply.github.com>
Date:   Thu Dec 12 03:17:19 2024 -0500

    Stardew Valley: Fix potential incompletable seed when starting winter  (#4361)

    * make moss available with any season except winter

    * add tool and region requirement for moss

commit 9a37a136a1ab02c561b704a144b6424eac5db416
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Tue Dec 10 21:13:45 2024 +0100

    The Witness: Add more panels to the "doors: panels" mode (#2916)

    * Add more panels that should be panels

    * Make it so the caves panel items don't exist in early caves

    * Remove unused import

    * oops

    * Remove Jungle to Monastery Garden from usefulification list

    * Add a basic test

    * ruff

    ---------

    Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>

commit 54a0a5ac0002ff1edf858441891625600b69e812
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Tue Dec 10 21:06:06 2024 +0100

    The Witness: Put progression + useful on some items. (#4027)

    * proguseful

    * ruff

    * variable rename

    * variable rename

    * Better (?) comment

    * Better way to do this? I guess

    * sure

    * ruff

    * Eh, it's not worth it. Here's the much simpler version

    * don't need this now

    * Improve some classification checks while we're at it

    * Only proguseful obelisk keys if eps are individual

commit 704f14ffcd80d32a4c0ffed4bdf4cf38324b0dc5
Author: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Date:   Tue Dec 10 14:37:54 2024 -0500

    Core: Add toggles_as_bools to options.as_dict (#3770)

    * Add toggles_as_bools to options.as_dict

    * Update Options.py

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

    * Add param to docstring

    * if -> elif

    ---------

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

commit 925fb967d3274e64a8f88b73d81b97ce51c6d0d2
Author: Star Rauchenberger <fefferburbia@gmail.com>
Date:   Tue Dec 10 14:36:38 2024 -0500

    Lingo: Fix number hunt issues on panels mode (#4342)

commit 5dd19fccd0dc89966095c93c3fdb3ad72b4bea08
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Tue Dec 10 20:35:36 2024 +0100

    MultiServer/CommonClient: We forgot about Item Links again (Hint Priority) (#4314)

    * Vi don't forget about itemlinks challenge difficulty impossible

    * People other than Vi also don't forget about ItemLinks challenge difficulty impossible

commit 781100a571fe7e4850272a8899c5ef9d078f19d8
Author: Jouramie <16137441+Jouramie@users.noreply.github.com>
Date:   Tue Dec 10 14:26:33 2024 -0500

    CI: remove version restriction on pytest-subtests (#4356)

    This reverts commit e3b5451672c694c12974801f5c89cc172db3ff5a.

commit 3fb0b57d19b9c223107308c84605e05e6b16e1cf
Author: black-sliver <59490463+black-sliver@users.noreply.github.com>
Date:   Tue Dec 10 20:09:36 2024 +0100

    Core: fix exceptions coming from LocationStore (#4358)

    * Speedups: add instructions for ASAN

    * Speedups: move typevars out of classes

    * Speedups, NetUtils: raise correct exceptions

    * Speedups: double-check malloc

    * Tests: more LocationStore tests

commit f79657b41a8aa7904193331b7ae181e0ff9ab967
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Tue Dec 10 19:53:42 2024 +0100

    WebHost: disable abbreviations for argparse (#4352)

commit 4a5ba756b6d0d26b40a8c3ca5bb3ea3e1ed931b3
Author: black-sliver <59490463+black-sliver@users.noreply.github.com>
Date:   Tue Dec 10 02:44:41 2024 +0100

    WebHost: Set Generator memory limit to 4GiB (#4319)

    * WebHost: Set Generator memory limit to 4GiB

    * WebHost: make generator memory limit configurable, better naming

    * Update WebHostLib/__init__.py

    Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>

    * Update docs/webhost configuration sample.yaml

    ---------

    Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>

commit 0b3d34ab24ffab023800e6230ca95e840cdcb683
Author: black-sliver <59490463+black-sliver@users.noreply.github.com>
Date:   Tue Dec 10 02:25:09 2024 +0100

    CI: update scan-build to v19 (#4338)

commit aa22b62b41226b62734988da0b5dcd6f5bff7a33
Author: Jouramie <16137441+Jouramie@users.noreply.github.com>
Date:   Mon Dec 9 15:17:25 2024 -0500

    Stardew Valley: Force deactivation of Mr. Qi's special orders when ginger island is deactivated (#4348)

commit 51c4fe8f67511850a7d26fe07a183242683034f1
Author: Jouramie <16137441+Jouramie@users.noreply.github.com>
Date:   Sun Dec 8 21:00:30 2024 -0500

    Stardew Valley: Fix a bug where walnutsanity would get deactivated even tho ginger island got forced activated (and move some files) (#4311)

commit 26f9720e69d33af5f55950d4bc197460f39df3ab
Author: Louis M <prog@tioui.com>
Date:   Sun Dec 8 20:18:00 2024 -0500

    Aquaria: mega refactoring (#3810)

    This PR is mainly refactoring. Here is what changed:
    - Changing item names so that each words are capitalized (`Energy Form` instead of `Energy form`)
    - Removing duplication of string literal by using:
      - Constants for items and locations,
      - Region's name attribute for entrances,
    - Clarify some documentations,
    - Adding some region to be more representative of the game and to remove listing of locations in the rules (prioritize entrance rules over individual location rules).

    This is the other minor modifications that are not refactoring:
    - Adding an early bind song option since that can be used to exit starting area.
    - Changing Sun God to Lumerean God to be coherent with the other gods.
    - Changing Home Water to Home Waters and Open Water to Open Waters to be coherent with the game.
    - Removing a rules to have an attack to go in Mithalas Cathedral since you can to get some checks in it without an attack.
    - Adding some options to slot data to be used with Poptracker.
    - Fixing a little but still potentially logic breaking bug.

commit 1f712d9a8754103e2bbeb13075f460ff366d55df
Author: qwint <qwint.42@gmail.com>
Date:   Sun Dec 8 19:59:40 2024 -0500

    Various Worlds: use / explicitly for pkgutil (#4232)

commit 5b4d7c752670b9cdf79258792e8045d968a54e96
Author: Scipio Wright <scipiowright@gmail.com>
Date:   Sun Dec 8 19:58:49 2024 -0500

    TUNIC: Add Shield to Ladder Storage logic (#4146)

commit a948697f3a2387d13862a194690c39af8da2dbd8
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Mon Dec 9 00:57:34 2024 +0000

    Raft: Place locked items in create_items and fix get_pre_fill_items (#4250)

    * Raft: Place locked items in create_items and fix get_pre_fill_items

    `pre_fill` runs after item plando, and item plando could place an item
    at a location where Raft was intending to place a locked item, which
    would crash generation.

    This patch moves the placement of these locked items earlier, into
    `create_items`.

    Setting items into `multiworld.raft_frequencyItemsPerPlayer` for each
    player has been replaced with passing `frequencyItems` to the new
    `place_frequencyItems` function.

    `setLocationItem` and `setLocationItemFromRegion` have been moved into
    the new `place_frequencyItems` function so that they can capture the
    `frequencyItems` argument variable.

    The `get_pre_fill_items` function could return a list of all previously
    placed items across the entire multiworld which was not correct. It
    should have returned the items in
    `multiworld.raft_frequencyItemsPerPlayer[self.player]`. Now that these
    items are placed in `create_items` instead of `pre_fill`,
    `get_pre_fill_items` is no longer necessary and has been removed.

    * self.multiworld.get_location -> self.get_location

    Changed the occurences in the modified code.

commit e3b5451672c694c12974801f5c89cc172db3ff5a
Author: qwint <qwint.42@gmail.com>
Date:   Sun Dec 8 14:43:16 2024 -0500

    CI: cap pytest-subtest version (#4344)

commit 6c69f590cf18d1224445ee86da7c85c7663f5fb7
Author: black-sliver <59490463+black-sliver@users.noreply.github.com>
Date:   Sun Dec 8 02:22:56 2024 +0100

    WebHost: fix host room not updating (ports in) slot table (#4308)

commit c9625e1b35c36866ee727128fe73808580f37145
Author: LeonarthCG <33758848+LeonarthCG@users.noreply.github.com>
Date:   Sat Dec 7 11:29:27 2024 +0100

    Saving Princess: implement new game (#3238)

    * Saving Princess: initial commit

    * settings -> options

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * settings -> options

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * replace RegionData class with List[str]

    RegionData was only wrapping a List[str], so we can directly use List[str]

    * world: MultiWorld -> multiworld: MultiWorld

    * use world's random instead of multiworld's

    * use state's has_any and has_all where applicable

    * remove unused StartInventory import

    * reorder PerGameCommonOptions

    * fix relative AutoWorld import

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * clean up double spaces

    * local commands -> Local Commands

    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>

    * remove redundant which items section

    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>

    * game info rework

    * clean up item count redundancy

    * add game to readme and codeowners

    * fix get_region_entrance return type

    * world.multiworld.get -> world.get

    * add more events

    added events for the boss kills that open the gate, as well as for system power being restored

    these only apply if expanded pool is not selected

    * add client/autoupdater to launcher

    * reorder commands in game info

    * update docs with automated installation info

    * add quick links to doc

    * Update setup_en.md

    * remove standalone saving princess client

    * doc fixes

    * code improvements and redundant default removal

    as suggested by @Exempt-Medic
    this includes the removal of events from the item/location name to id, as well as checking for the player name being ASCII

    * add option to change launch coammnd

    the LaunchCommand option is filled to either the executable or wine with the necessary arguments based on Utils.is_windows

    * simplify valid install check

    * mod installer improvements

    now deletes possible existing files before installing the mod

    * add option groups and presets

    * add required client version

    * update docs about cheat items pop-ups

    items sent directly by the server (such as with starting inventory) now have pop-ups just like any other item

    * add Steam Input issue to faq

    * Saving Princess: BRAINOS requires all weapons

    * Saving Princess: Download dll and patch together

    Previously, gm-apclientpp.dll was downloaded from its own repo
    With this update, the dll is instead extracted from the same zip as the game's patch

    * Saving Princess: Add URI launch support

    * Saving Princess: goal also requires all weapons

    given it's past brainos

    * Saving Princess: update docs

    automatic connection support was added, docs now reflect this

    * Saving Princess: extend([item]) -> append(item)

    * Saving Princess: automatic connection validation

    also parses the slot, password and host:port into parameters for the game

    * Saving Princess: change subprocess .run to .Popen

    This keeps the game from freezing the launcher while it is running

    ---------

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>
    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>
    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>

commit ced93022b67532e8172fd217a7d3a7bd205b8177
Author: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>
Date:   Fri Dec 6 01:15:26 2024 -0500

    Adventure: Remove unused variables (#4301)

    * Remove unused variables

    * Provide old parameters to comment

commit f4b926ebbe491dc9a064b5d17bdd95051a5c6496
Author: Bryce Wilson <gyroscope15@gmail.com>
Date:   Thu Dec 5 07:33:21 2024 -0800

    Pokemon Emerald: Exclude sacred ash post champion (#4207)

    * Pokemon Emerald: Exclude sacred ash post champion

    * Pokemon Emerald: Remove .value from toggle option check

commit 203d89d1d38102800bfc0aa4c5338f7fc3113dec
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 5 10:32:45 2024 -0500

    LADX: upstream logic updates (#3963)

    * Fully updates requirements.py to live LADXR (#19)

    * Updates dungeon2.py to LADXR-Live (#20)

    No logic changes or bugfix are in this file. It is only code cleanup.

    * Update dungeon1.py (#21)

    - The Three of a Kind with Bomb is moved from Normal to Hard Logic

    The rest is code cleanup.

    lines 22-25 | 22-26 & 33 | 34 remain different in AP | Upstream with no effective difference

    * Fully updates dungeon3.py to LADXR-live (#22)

    Logic Changes:
    - Hard mode now considers killing the enemies in the top room with pot

    Everything else is cleanup.

    * Fully update dungeon4.py to LADXR-live logic (#23)

    Logic Changes:
    - Hard Logic: Removes Feather requirement from grabbing the Pit Key
    - Hell logic: new hookshot clip (line 64)
    - Hell logic: hookshot spam over the first pit of crossroads, then buffer down (line 69)
    - Hell logic: push block left of keyblock up, then shaq jump off the left wall and pause buffer to land on keyblock.
    - Hell logic: split zol for more entities, and clip through the block left of keyblock by hookshot spam

    The rest is code cleanup

    * Updates dungeon5.py mostly to LADXR-Live Logic (#24)

    Logic Changes:
    - Hell logic: use zoomerang dashing left to get an unclipped boots superjump off the right wall over the block. reverse is push block (line 69)

    The rest is cleanup.

    The upstream splits the post_gohma region into pre_gohma, gohma and post_gohma. I did not implement this yet as I do not know the implications. To port this the following lines need to be changed (AP | LADXR):
    18 | 18-20;
    55 | 58;
    65 | 68-69

    * Fully update dungeon6.py logic (#25)

    Logic Changes:
    - Hard logic: allow damage boosting past the mini thwomps
    - Glitched logic: bomb triggering elephants in two cases

    Everything else is cleanup

    * Fully update dungeon7.py to LADXR-live logic (#26)

    Logic Changes:
    - Hard logic: Three of a Kind is now possible with bombs only

    Everything else is code cleanup

    * Fully updates dungeon8.py to LADXR-live (#27)

    Logic change:
    - Hard logic: allows to drop the Gibdos into holes as a way to kill them
    - Glitched logic: underground section with fire balls jumping up out of lava. Use boots superjump off left wall to jump over the pot blocking the way

    The rest is code cleanup

    * Fully update dungeonColor.py to LADXR-live (#28)

    Logic changes:
    - Normal logic: Karakoros now need power bracelet to put them into their holes
    - Hard logic: Karakoros without power bracelet but with weapon
    - Hell logic: Karakoros with only bombs

    Everything else is code cleanup

    * Updating overworld.py (#29)

    * Updating overworld.py

    This tries to update all logic of the Overworld.

    Logic changes include:
    - Normal logic: requires hookshot or shield to traverse Armos Cave
    - Hard logic: Traverse Armos Cave with nothing (formerly normal logic)
    - Hard logic: get the animal village bomb cave check with jump and boomerang
    - Hard logic: use rooster to go to D7
    - Lots of Jesus Rooster Jumps

    I stopped counting and need to go over this again.

    Also, please investigate line 474 AP because it's removed in LADXR-Upstream and I don't know why.

    * remove featherless fisher under bridge from hard

    it was moved to hell upstream and its already present in our code

    ---------

    Co-authored-by: Alex Nordstrom <a.l.nordstrom@gmail.com>

    * fixes

    * add test messages

    * Adds Pegasus Boots to the test (#31)

    * Fix d6 boss_key logic (#30)

    * restore hardmode logic

    * higher logic fixes

    * add bush requirement to the raft
    in case the player needs to farm rupees to play again

    ---------

    Co-authored-by: palex00 <32203971+palex00@users.noreply.github.com>

commit 4d42814f5d6a7315bb177f76d1f690ff6454b9ef
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 5 06:06:52 2024 -0500

    LADX: more item groups, location groups, keysanity preset (#3936)

    * add groups and a preset

    * formatting

    * typing

    * alias groups for progressive items

    * add bush breakers item group

    * fix typo

    * some manual location groups

    * drop dummy dungeon items from groups

commit d80069385dc6166c2333d2c2360d47861a138d87
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 5 06:03:16 2024 -0500

    LADX: tweak in-game hints (#3920)

    * dont show local player name in hint

    * add option to disable hints

    ---------

    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>

commit 85a0d59f739a199bf4e72612d29183f86d00a66e
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Thu Dec 5 04:23:26 2024 -0500

    LADX: text shuffle exclusions (#3919)

    * text shuffle exclusions
    Exclude owl statues, library books, goal sign, signpost maze, and various rupee prices from text shuffle

    * clearer variable name

commit 58f22053048b97fd18d07843ea63638657257420
Author: nmorale5 <76963132+nmorale5@users.noreply.github.com>
Date:   Thu Dec 5 01:48:33 2024 -0500

    Pokemon RB: Fix Incorrect Hidden Item Location in Seafoam Islands B2F (#4304)

commit 769fbc55a9043f323684f6400424167eed2cea80
Author: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>
Date:   Wed Dec 4 02:51:56 2024 -0500

    HK: Remove unused variables and imports (#4303)

    * Remove unused variables and imports

    * Accidental duplication

commit f43fa612d502c3b5ed307d97f266e6acc8eaa937
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Wed Dec 4 05:39:29 2024 +0100

    The Witness: Another small access rule optimisation #4256

commit 5b0de6b6c77b76a7f40285565d4f688fb662e412
Author: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Date:   Tue Dec 3 16:51:58 2024 -0500

    FFMQ: No Longer Allow Inaccessible Useful Items (#4323)

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

commit ac8a206d4685e015494dd67f9a9e7ab2411773b3
Author: threeandthreee <a.l.nordstrom@gmail.com>
Date:   Tue Dec 3 00:59:55 2024 -0500

    LADX: combine warp options (#4325)

    * combine warp options

    * fix

    * fix typo

    * mark old options as removed

commit 6896d631db6ab24dfef67538ff7e7a7c18ff560f
Author: Jouramie <16137441+Jouramie@users.noreply.github.com>
Date:   Tue Dec 3 00:23:13 2024 -0500

    Stardew Valley: Fix a bug in equals between Or and And rules #4326

commit 6f2e1c2a7ea8395c1674124c1c7e51ffbd1bb7d9
Author: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>
Date:   Mon Dec 2 21:02:18 2024 -0500

    Lingo: Optimize imports and remove unused parameter (#4305)

commit ffe0221deb41d93b5a2e5a663a43e96beec058db
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Tue Dec 3 03:00:56 2024 +0100

    Core: log process ID (#4290)

commit 18e8d50768eff7ac6416048fd1d39b40551793b7
Author: Bryce Wilson <gyroscope15@gmail.com>
Date:   Mon Dec 2 17:52:20 2024 -0800

    Pokemon Emerald: Clean up dexsanity spoiler and hints (#3832)

    * Pokemon Emerald: Clean up dexsanity spoiler and hints

    * Pokemon Emerald: Add +, do less hacks

    * Pokemon Emerald: Update changelog

    * Pokemon Emerald: Replace arrow with word in changelog

    * Pokemon Emerald: Fix changelog

commit 81b9a53a376df3f55f76abe941796fc7aef69e89
Author: Mysteryem <Mysteryem@users.noreply.github.com>
Date:   Tue Dec 3 01:51:10 2024 +0000

    KH2: Add missing indirect conditions for Final region access (#3923)

    * KH2: Add missing indirect conditions for Final region access

    Entrances to the Final region require being able to reach any one of a
    number of locations, but for a location to be reachable, its parent
    region must also be reachable, so indirect conditions must be added for
    these regions.

    * Use World.get_location

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Use World.get_location, for real this time

    ---------

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

commit b6ab91fe4b5491c1d754aba35885f7b6e1923263
Author: Star Rauchenberger <fefferburbia@gmail.com>
Date:   Mon Dec 2 20:50:30 2024 -0500

    LADX: Remove duplicate Magnifying Lens item (#3684)

    * LADX: Magnifying Glass fixes

    Removed the duplicate item (Magnifying Lens), and made the real one a filler item.

    * Update worlds/ladx/Items.py

    Co-authored-by: threeandthreee <alex@3and3.dev>

    ---------

    Co-authored-by: threeandthreee <alex@3and3.dev>

commit f26cda07db5cb9046088a6f0c4710071c7bcfc69
Author: Emily <35015090+EmilyV99@users.noreply.github.com>
Date:   Sun Dec 1 09:16:36 2024 -0500

    Core: Hint Priority fixes (#4315)

    * Update hint priority docs

    * Update network protocol.md

    * Add error on `UpdateHint` trying to change to `HINT_FOUND`

    * Update network protocol.md

    * fix: precollected hint priority

commit ecc3094c70b3ee1f3e18d9299c03198564ec261a
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Sun Dec 1 08:33:43 2024 +0100

    Launcher: launch without delay on URI without choice (#4279)

commit 17b3ee6eaf326249c477b20ae976794817efc3ee
Author: Benjamin S Wolf <jokeserver@gmail.com>
Date:   Sat Nov 30 20:18:00 2024 -0800

    Core: warn if a yaml is empty (#4117)

    * Core: warn if a yaml is empty

    * WebHost: ignore empty yaml

    Generate: log which yaml documents are empty

    * Actually remove empty yamls from weight_cache

    * More verbose variable name

    ---------

    Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>

commit 284e7797c5523180968016728790bf5128315c61
Author: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Date:   Sat Nov 30 23:10:43 2024 -0500

    Adventure: create_item AttributeError -> KeyError #4219

commit 62ce42440b703fba2ba544604f51690f388b7f33
Author: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Date:   Sat Nov 30 23:03:13 2024 -0500

    Super Metroid: KeyError on invalid item name #4222

commit 7b755408fa41e72b4ecf0f1e9029fe0c21ab85ee
Author: Natalie Weizenbaum <nweiz@google.com>
Date:   Sat Nov 30 20:00:06 2024 -0800

    DS3: Clarify location names for Yoel and Yuria items (#3881)

    * DS3: Clarify location names for Yoel and Yuria items

    * Fix encodings for `detailed_location_descriptions.py`

    * Fix one more typo

commit ed721dd0c14aec3cb332a010f52bca43fddc2886
Author: Alex Nordstrom <a.l.nordstrom@gmail.com>
Date:   Sat Nov 30 22:58:10 2024 -0500

    LADX: Implement various upstream adjustments (#3829)

    * magnifying lens changes

    https://github.com/daid/LADXR/pull/156

    * restore enemy visibility in mermaid statue cave

    https://github.com/daid/LADXR/pull/155

    * mermaid statue scale bugfix

    https://github.com/daid/LADXR/pull/163

    * restore vanilla map when rooster is an item

    https://github.com/daid/LADXR/pull/132

    * fix

    * fixes to magnifying lens changes

    * load marin singing even if you have marin date
    https://github.com/daid/LADXR/commit/4feb3099a3f3a144739094f88a4024def6f79767

    * Revert "load marin singing even if you have marin date"

    This reverts commit a7a546ed3f7a2b9c9bcb095984cc64319a4f7855.

    * always patch tradequest
    not upstream, but included in this PR because it touches the same parts of the code. https://discord.com/channels/731205301247803413/1227373762412937347

    * marin date fix

    * fix logic

commit 1a5d22ca7890175275ef8b77c31cc0dce705d85a
Author: Benjamin S Wolf <jokeserver@gmail.com>
Date:   Sat Nov 30 19:51:26 2024 -0800

    Core: Add new error message for item count when defined as a set instead of a dict (#4100)

    * Core: New error message if item count is a set

    * Apply suggestion for error message

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    * Apply item count error suggestion

    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>

    ---------

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>

commit 21dbfd2472a517f4885b018c24ef14173d6d6cae
Author: josephwhite <damasta21th@aol.com>
Date:   Sat Nov 30 22:33:36 2024 -0500

    Multiserver: Add argument for timestamping STDOUT (#4266)

    * core: add server arg for timestamping STDOUT

    * Multiserver: Implicitly use default write_mode arg in init_logging

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

    ---------

    Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

commit 472d2d54061d3ebe88a4f2577f9e510445c74bcb
Author: Jarno <jarnowesthof@gmail.com>
Date:   Sun Dec 1 04:11:45 2024 +0100

    Timespinner: Implemented support for universal tracker (#3771)

    * Implemented slot data interpretation

    * Fixed talaria attached to be taken into logic

commit 3af2b1dc666cd03a2aa85044b24995adf0360833
Author: Kaito Sinclaire <ks@rosenthalcastle.org>
Date:   Sat Nov 30 19:10:43 2024 -0800

    id Tech 1 games: Add command line instructions/info (#3757)

commit 6cfc3a46670232db873d7ce362c9e99e23ebaa03
Author: Eric Newport <kethinov@gmail.com>
Date:   Sat Nov 30 19:10:00 2024 -0800

    Docs: Improved sm64ex advanced setup docs (#3741)

    * Improved sm64ex advanced setup docs

    This edit clarifies some things that are not obvious in the version that is currently live on the site.

    This should prevent others from needing to go spelunking in Discord chat history to figure out how to do advanced builds.

    * Update worlds/sm64ex/docs/setup_en.md

    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>

    * copyediting

    ---------

    Co-authored-by: Nicholas Saylor <79181893+nicholassaylor@users.noreply.github.com>

commit 992657750c30094c8a4b5734104dcda8b0547622
Author: Rensen3 <127029481+Rensen3@users.noreply.github.com>
Date:   Sun Dec 1 04:09:22 2024 +0100

    YGO06: add Item groups (#3737)

    * YGO06: adds item groups

    * YGO06: Change lists to sets

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

    * YGO06: fix imports

    ---------

    Co-authored-by: Scipio Wright <scipiowright@gmail.com>

commit a67688749f556c631b3e1423c03f64d6151a5cb4
Author: Jouramie <16137441+Jouramie@users.noreply.github.com>
Date:   Sat Nov 30 21:52:07 2024 -0500

    Stardew Valley: Refactor skill progression to use new feature system (#3662)

    * create a first draft of the feature

    * use feature in items and locations

    * add content to more places

    * use feature in logic

    * replace option check by feature

    * remove unused code

    * remove weird white space

    * some import nitpicking

    * flip negative if

commit f735416bdac39db987ffb8af4b0d7bc09846c172
Author: Kaito Sinclaire <ks@rosenthalcastle.org>
Date:   Sat Nov 30 18:46:34 2024 -0800

    id Tech 1: Clean up difficulty options (#4298)

commit e5374eb8b81ac9913f4618f660d6f3c65b63261a
Author: palex00 <32203971+palex00@users.noreply.github.com>
Date:   Sun Dec 1 03:22:02 2024 +0100

    [PKMN RB] Make Encounters in one location unique (#3994)

    * Makes encounters in a location generate unique Pokémon

    * vyneras actually got it to work

    * V5 Update Fix Part 1

    * Part 2

    * final puzzle piece

commit b83b48629de128a0b04c71b40ea4dc8b9aafc6e8
Author: black-sliver <59490463+black-sliver@users.noreply.github.com>
Date:   Sat Nov 30 17:23:28 2024 +0100

    Core: rework python version check (#4294)

    * Docs: update min required version

    and add comment about security.

    * Core: rework python version check

    * CI: set min micro update for build and release

commit ca6792a8a7c5f82e3a8c539c7f0d23e44b181c4f
Author: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Date:   Sat Nov 30 10:08:41 2024 -0500

    Blasphemous: Add start_inventory_from_pool (#4217)

commit 7cbd50a2e6f646870f0309a9f8c93bfe24f3a18a
Author: qwint <qwint.42@gmail.com>
Date:   Sat Nov 30 10:02:32 2024 -0500

    HK: add item group for dream nail(s) (#4069)

commit d6da3bc899cd11e76a5a6da4fb6870134341d080
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Sat Nov 30 06:53:28 2024 +0100

    Factorio: add Atomic Cliff Remover Trap (#4282)

commit 9eaca9527783d88e176119e7b2f436a374159357
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Sat Nov 30 04:11:28 2024 +0100

    WebHost: add a page to manage session cookie (#4173)

commit c1b27f79ac4107e5b253f8cf68fcbfb64d9a11f8
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Sat Nov 30 04:11:03 2024 +0100

    Core: cull events from multidata spheres (#3623)

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

commit 0705f6e6c06baa33d60573e0a201385ba6e27ca4
Author: Fabian Dill <Berserker66@users.noreply.github.com>
Date:   Sat Nov 30 04:08:17 2024 +0100

    Factorio: option groups (#4293)

commit a537d8eb65a0b85210504691ef420cfdb8d7f3b3
Author: qwint <qwint.42@gmail.com>
Date:   Fri Nov 29 21:58:52 2024 -0500

    Launcher: support Component icons inside apworlds (#3629)

    * Add kivy overrides to allow AsyncImage source paths of the format ap:worlds.module/subpath/to/data.png that use pkgutil to load files from within an apworld

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

    * Apply suggestions from code review

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

    * change original-load variable name for clarity per review

    * add comment to record pkgutil format

    * remove dependency on PIL

    * i hate typing

    ---------

    Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>

commit 845a60495589e7b25a8d3f225c5aac40cb153826
Author: qwint <qwint.42@gmail.com>
Date:   Fri Nov 29 21:40:14 2024 -0500

    MultiServer: !status shows Ready status (#3598)

    * Makes !status show a note if the slot is in Status Ready

    * update variable name for better clarity

commit 7adb673a80a4fcaf8c5ca87369c5851fe2d7a0bf
Author: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Date:   Sat Nov 30 03:37:08 2024 +0100

    Core: "Fix" Priority Fill (#3592)

    * Priority fill -> Don't use one item per player

    * fix unit test thing

    * Ok, I think this should do it properly

commit 72e88bb493b465ad2cfb1c4250c9bed60fb220fa
Author: lordlou <87331798+lordlou@users.noreply.github.com>
Date:   Fri Nov 29 21:36:00 2024 -0500

    SMZ3: generate without rom (#3461)

    * - SM now displays message when getting an item outside for someone else (fills ROM item table)

    This is dependant on modifications done to sm_randomizer_rom project

    * First working MultiWorld SM

    * some missing things:

    - player name inject in ROM and get in client
    - end game get from ROM in client
    - send self item to server
    - add player names table in ROM

    * replaced CollectionState inheritance from SMBoolManager with a composition of an array of it (required to generation more than one SM world, which is still fails but i…
AustinSumigray pushed a commit to AustinSumigray/Archipelago that referenced this pull request Jan 4, 2025
* Fully updates requirements.py to live LADXR (ArchipelagoMW#19)

* Updates dungeon2.py to LADXR-Live (ArchipelagoMW#20)

No logic changes or bugfix are in this file. It is only code cleanup.

* Update dungeon1.py (ArchipelagoMW#21)

- The Three of a Kind with Bomb is moved from Normal to Hard Logic

The rest is code cleanup.

lines 22-25 | 22-26 & 33 | 34 remain different in AP | Upstream with no effective difference

* Fully updates dungeon3.py to LADXR-live (ArchipelagoMW#22)

Logic Changes:
- Hard mode now considers killing the enemies in the top room with pot

Everything else is cleanup.

* Fully update dungeon4.py to LADXR-live logic (ArchipelagoMW#23)

Logic Changes:
- Hard Logic: Removes Feather requirement from grabbing the Pit Key
- Hell logic: new hookshot clip (line 64)
- Hell logic: hookshot spam over the first pit of crossroads, then buffer down (line 69)
- Hell logic: push block left of keyblock up, then shaq jump off the left wall and pause buffer to land on keyblock.
- Hell logic: split zol for more entities, and clip through the block left of keyblock by hookshot spam

The rest is code cleanup

* Updates dungeon5.py mostly to LADXR-Live Logic (ArchipelagoMW#24)

Logic Changes:
- Hell logic: use zoomerang dashing left to get an unclipped boots superjump off the right wall over the block. reverse is push block (line 69)

The rest is cleanup.

The upstream splits the post_gohma region into pre_gohma, gohma and post_gohma. I did not implement this yet as I do not know the implications. To port this the following lines need to be changed (AP | LADXR):
18 | 18-20;
55 | 58;
65 | 68-69

* Fully update dungeon6.py logic (ArchipelagoMW#25)

Logic Changes:
- Hard logic: allow damage boosting past the mini thwomps
- Glitched logic: bomb triggering elephants in two cases

Everything else is cleanup

* Fully update dungeon7.py to LADXR-live logic (ArchipelagoMW#26)

Logic Changes:
- Hard logic: Three of a Kind is now possible with bombs only

Everything else is code cleanup

* Fully updates dungeon8.py to LADXR-live (ArchipelagoMW#27)

Logic change:
- Hard logic: allows to drop the Gibdos into holes as a way to kill them
- Glitched logic: underground section with fire balls jumping up out of lava. Use boots superjump off left wall to jump over the pot blocking the way


The rest is code cleanup

* Fully update dungeonColor.py to LADXR-live (ArchipelagoMW#28)

Logic changes:
- Normal logic: Karakoros now need power bracelet to put them into their holes
- Hard logic: Karakoros without power bracelet but with weapon
- Hell logic: Karakoros with only bombs

Everything else is code cleanup

* Updating overworld.py (ArchipelagoMW#29)

* Updating overworld.py

This tries to update all logic of the Overworld.

Logic changes include:
- Normal logic: requires hookshot or shield to traverse Armos Cave
- Hard logic: Traverse Armos Cave with nothing (formerly normal logic)
- Hard logic: get the animal village bomb cave check with jump and boomerang
- Hard logic: use rooster to go to D7
- Lots of Jesus Rooster Jumps

I stopped counting and need to go over this again.

Also, please investigate line 474 AP because it's removed in LADXR-Upstream and I don't know why.

* remove featherless fisher under bridge from hard

it was moved to hell upstream and its already present in our code

---------

Co-authored-by: Alex Nordstrom <a.l.nordstrom@gmail.com>

* fixes

* add test messages

* Adds Pegasus Boots to the test (ArchipelagoMW#31)

* Fix d6 boss_key logic (ArchipelagoMW#30)

* restore hardmode logic

* higher logic fixes

* add bush requirement to the raft
in case the player needs to farm rupees to play again

---------

Co-authored-by: palex00 <32203971+palex00@users.noreply.github.com>
Silvris pushed a commit to Silvris/Archipelago that referenced this pull request Jan 7, 2025
* add salt_and_sanctuary implementation

Proposing an implementation of Salt and Sanctuary for Keymaster's Keep. This is a 2D Souls-like Metroidvania based around exploring new regions with equipment and completing bosses rushes by killing "Mages". This is intended to create a series of objectives to randomize kill order and occasionally the equipment required to do so.

* Update salt_and_sacrifice.py

fixed syntax issues
NewSoupVi pushed a commit that referenced this pull request Jan 15, 2025
* Fix certain items not being added to slot data

* Change where items get added to slot data

* Add initial grass randomizer stuff

* Fix rules

* Update grass.py

Improve location names

* Remove wand and gun from logic

* Update __init__.py

* Fix logic for two pieces of grass in atoll

* Make early bushes only contain grass

* Backport changes to grass rando (#20)

* Backport changes to grass rando

* add_rule instead of set_rule for the special cases, add special cases for back of swamp laurels area cause I should've made a new region for the swamp upper entrance

* Remove item name group for grass

* Update grass rando option descriptions

- Also ignore grass fill for single player games

* Ignore grass fill option for solo rando

* Update er_rules.py

* Fix pre fill issue

* Remove duplicate option

* Add excluded grass locations back

* Hide grass fill option from simple ui options page

* Check for start with sword before setting grass rules

* Update worlds/tunic/options.py

Co-authored-by: Scipio Wright <scipiowright@gmail.com>

* Exclude grass from get_filler_item_name

- non-grass rando games were accidentally seeing grass items get shuffled in as filler, which is funny but probably shouldn't happen

* Update worlds/tunic/__init__.py

Co-authored-by: Scipio Wright <scipiowright@gmail.com>

* Apply suggestions from code review

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Co-authored-by: Scipio Wright <scipiowright@gmail.com>

* change the rest of grass_fill to local_fill

* Filter out grass from filler_items

* remove -> discard

* Update worlds/tunic/__init__.py

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

* change has_stick to has_melee

* Update grass list with combat logic regions

* More fixes from combat logic merge

* Fix some dumb stuff (#21)

* Reorganize pre fill for grass

* Update option value passthrough

* Update __init__.py

* Fix region name

* Make separate pools for the grass and non-grass fills (#22)

* Make separate pools for the grass and non-grass fills

* Update worlds/tunic/__init__.py

Co-authored-by: Scipio Wright <scipiowright@gmail.com>

* Fix those things in the PR (#23)

* Use excludable property

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

---------

Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants