Add Randomizer & Archipelago functionality to Forge Adventure - #11167
Add Randomizer & Archipelago functionality to Forge Adventure#11167BramTeurlings wants to merge 224 commits into
Conversation
Todo: Save/Load tracked progress in player save file
…into dev_archipelago
…-bosses' into dev_archipelago
…nto dev_archipelago
…en' into dev_archipelago
Now persists all mutations in ArchipelagoData.java Shows pop-ups when receiving rewards Keeps track of victory over bosses Todo: Persist (mini-)boss encounters
Also changed itemID to itemName in ArchipelagoData.java
Dev archipelago - Review
Darkening the card in the shop seems to fail Lots of cleanup and testing needed
Sets are now unlocked on every card reward (change this later) Some sets don't have booster that can be generated from them so we want to think about what to do in that case.
…a mismatched seed.
Disconnect the player when connecting with a mismatched seed.
Respects the gift pack setting now
Fixed town events using quest location cap Removed irrelevant SlotData fields
…lier Implemented gold multiplier
|
waaaaaaaaaay too large I suggest starting with spinning off the unrelated QoL stuff into their own PR first |
|
That's fair, I'll split those up first and mark this as draft for now. |
|
I split off the improved input system and the one-line change for the road detection into this PR: #11168 I'm still working on splitting off some of the other stuff but I'll update this PR once that's done. |
|
I've split this PR up into three other PRs, I think it's probably best to review/merge those first before I make more. |
…hecks Feature/fix boss location checks
|
I have split up the remaining functionality of this PR into Randomizer mode for adventure. Once that PR is merged, I will update this one and make it ready for further review. |
Features:
Randomizer/Archipelago
NewGameScene.javaforge/adventure/archipelagoArchipelagoData.java> Responsible for managing & persisting game data & common logic relevant for either randomizerLocalRandomizer.java> Responsible for managing game logic related to the local randomizer modeArchipelagoRandomizer.java> Responsible for managing game logic related to the archipelago randomizer modeArchipelago.java> Manages the network connection to the Archipelago serverGeneric tweaks in various forge-adventure files
Overhauled input system > #11168
Split between "bosses" and "minibosses" > #11169
decks/bossfolder and all of the other bosses inside of thedecks/minibossfolder.enemies.json, their deck is also moved to the appropriate folder as mentioned in the previous point.enemies.jsonwhile not being a boss at all, the boss label has been removed from these enemies.Improved hit detection for the player on roads
New Archipelago documentation
I can imagine if people don't like the added
.pngfiles indocs/Adventure/Archopelago, please let me know where else I can put them if this is the case.No AI agents were used to develop this project, all code was reviewed by humans before submitting this PR. AI services such as ChatGPT were sparingly used to assist with boilerplate code, some translations and some math.