-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Autopelago: Implement New Game #5789
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
Open
airbreather
wants to merge
190
commits into
ArchipelagoMW:main
Choose a base branch
from
airbreather:autopelago
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
+2,830
−0
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Lots of stuff copy-pasted from ArchipIDLE for now.
changed items 1-33
more items up to number 48
items up to 102 now
items customized up to 225
…equivalent to what the game currently implements.
…k to be done to make it something that I'm happy with seeing here.
…ocation than item?
…ving too many of our "extra" rats dominate the other games, but then ALLOW FOR the "extra" rats to count so that the actual playthrough won't get stuck as hard
added items for three specific games: stardew, oot, and poke red. and a couple of standard items for good measure
first off: streamlining item defs
… the same file as the locations
I perhaps could add "anymore" to that, but TBH it hasn't been helpful AT ALL since we added Rat Pack.
instead of having to declare the type of each item (useful/trap/filler), calculate based on the weights of its auras. this revealed that some items marked as "useful" were actually harmful on balance, so they have been slightly buffed.
…1.0.0 that's ready for a PR to be opened against core.
Setup guide to come in a bit.
…nce the items and locations are about to be handled in different files that can't mutually reference one another (though locations might import from items).
benny-dreamly
approved these changes
Jan 5, 2026
Contributor
benny-dreamly
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this was a joy to code review, and I've used the new web version, and don't have any issues. LGTM
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: peer-review
Issue/PR has not been reviewed by enough people yet.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is this fixing or adding?
Autopelago, a game that plays itself. Discord: https://discord.com/channels/731205301247803413/1307517897194868768
The game was built specifically for Archipelago. The original intent of this game was to help someone practice solo in a more realistic setting than ArchipIDLE — it has logic, buffs, debuffs, and fillers instead of just a static number of items — but the community have found other creative uses for a game like this.
The client is a web app. The client source code lives at https://github.com/airbreather/Autopelago. The latest released version is also hosted on https://autopelago.app.
There's a bit of an Easter egg feature that replaces some of the default items with others based on what other games are present in the multiworld. e.g., when the multiworld has Ocarina of Time in it, then the game will add a Silver Skulltula Token.
How was this tested?
There's a couple of standard tests in a standard test class making sure that all the logic works as the client says it should, plus a couple more test classes to do a trivial smoke test to see that the Easter egg items get added when (and only when) their corresponding world is also present.
That, of course, on top of a little over 1 year of community engagement and feedback in its custom-game state.
If this makes graphical changes, please attach screenshots.
No graphical changes.
I'm familiar with Autopelago as a custom APWorld. What's changing here?
Briefly: once this gets promoted to Core, it gets harder to change later (both the client AND the world), so I've made some major quality-of-life improvements that will make this future as smooth as it realistically can be (at the cost of the past few days being a bit wild to wire it all together 😅).
Whereas the custom APWorld file has always required the client to bake in knowledge of what all the items do, I wouldn't be happy with that limitation surviving into core. SOME of the items still do need to be baked in, of course, but for the version I'm submitting to core, it will actually write into the slot data a snapshot of:
"each item" here includes items that aren't added to the item pool, since you can theoretically
/sendanything.Also, whereas the custom APWorld has always had to say for each item "this item is useful" / "this item is a trap" / "this item is filler", this version determines it based on the relative power of each individual buff or debuff.
I've also split the definitions of the non-progression items out into one file per game.
Combining all of the above with some quirky magic to read the files dynamically, it should be easier than ever for anyone to add items, without every single addition requiring an update to the companion web app in order to come fully online.