Skip to content

Conversation

@airbreather
Copy link
Contributor

@airbreather airbreather commented Dec 24, 2025

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:

  • which buffs/traps to apply for each item (excluding those with none, of course) and
  • the number of rats granted by each item (that grants at least one, of course)

"each item" here includes items that aren't added to the item pool, since you can theoretically /send anything.

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.

airbreather and others added 30 commits December 31, 2023 16:46
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.
…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
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.
@github-actions github-actions bot added the affects: core Issues/PRs that touch core and may need additional validation. label Dec 24, 2025
@duckboycool duckboycool added the is: new game Pull requests for implementing new games into Archipelago. label Dec 26, 2025
@airbreather airbreather marked this pull request as ready for review December 30, 2025 22:13
@github-actions github-actions bot added the waiting-on: peer-review Issue/PR has not been reviewed by enough people yet. label Dec 30, 2025
Copy link
Contributor

@benny-dreamly benny-dreamly left a 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants