Fork of Archipelago Multi-Game Randomizer and Server that runs on https://ap.hollymcfarland.com
Go to file
espeon65536 a6e1e14fee
Ocarina of Time: Itemlinks and bugfixes (#1157)
* OoT: ER improvements
Include dungeon rewards in itempool to allow for ER improvement
Better validate_world function by checking for multi-entrance incompatibility more efficiently
Fix some generation failures by ensuring all entrances placed with logic
Introduce bias to some interior entrance placement to improve generation rate

* OoT: fix overworld ER spoiler information

* OoT: rewrite dungeon item placement algorithm
in particular, no longer assumes that exactly the number of vanilla keys is present, which lets it place more or fewer items.

* OoT: auto-send more locations
Now should autosend cows, DMT/DMC great fairies, medigoron, and bombchu salesman
This should be every check autosending. these ones are super weird for some reason and didn't get fixed with the others

* OoT: add items forced local by settings to AP's local_items

* OoT: fast-fill shop junk items

* OoT: ensure that Kokiri Shop is always reachable immediately in closed forest
hence Deku Shield can be bought to leave the forest

* OoT: randomize internal connect name
Connect name is now a random 16-character string.
This should prevent any issues with connecting to a room with the wrong ROM with probability almost 1.

* OoT: introduce TrackRandomRange for trials hint and mq dungeon maps

* OoT: enable proper itemlinking of songs and dungeon items, with restricted placements according to player settings

* OoT: barren hint oversight fix

* OoT: allow NL + ER to roll properly

* OoT: 3.8 compatibility
set and list builtins don't have proper typing support until 3.9, apparently

* OoT: remove Gerudo Membership Card location from the pool if fortress open and card not randomized
another long-standing bug squished

* OoT: exclude locations in the itemlink song fill if they aren't also priority

* OoT: prevent data bleed when client isn't closed between different game connections
I don't understand why people keep doing this

* OoT: linter appeasement
it was a real error though

* fixing merge conflicts is hard

* oot merge update #2

* OoT: removed accidentally duplicated code
2022-11-02 09:32:08 +01:00
.github CI: use build_exe in automated build 2022-10-28 20:59:06 +02:00
WebHostLib Templates: Update template output and add min and max comments for named special_range options. (#1164) 2022-11-01 18:07:56 -05:00
data Ocarina of Time: Itemlinks and bugfixes (#1157) 2022-11-02 09:32:08 +01:00
docs Core: add generic handling of excluded locations 2022-11-01 14:08:24 +01:00
test Zillion: fix unreproducible seeds (#1166) 2022-11-01 14:45:17 +01:00
typings/kivy Zillion: map tracker in client (#1136) 2022-10-27 02:30:22 -07:00
worlds Ocarina of Time: Itemlinks and bugfixes (#1157) 2022-11-02 09:32:08 +01:00
.gitignore New Game: Zillion (#1081) 2022-10-20 19:41:11 +02:00
BaseClasses.py Core: improve fulfills_accessibility performance 2022-11-01 14:08:24 +01:00
ChecksFinderClient.py ChecksFinder: Linux support via wine (#795) 2022-07-19 07:44:04 +02:00
CommonClient.py CommonClient: Some GUI polish (#1139) 2022-11-01 06:54:40 +01:00
FF1Client.py FF1: fix FF1Client messaging and scoped lua messaging with printjson 2022-09-12 01:19:51 +02:00
FactorioClient.py Factorio: Added ability to chat from within the game. (#1068) 2022-10-28 00:45:26 +02:00
Fill.py Core: Fix early items bug with priority locations (#1167) 2022-10-31 22:26:55 -05:00
Generate.py Core: make player name case-insensitive 2022-10-30 17:12:00 +01:00
LICENSE update Copyright 2022-02-17 19:03:11 -08:00
Launcher.py New Game: Zillion (#1081) 2022-10-20 19:41:11 +02:00
LttPAdjuster.py Core: SNI Client Refactor (#1083) 2022-10-25 19:54:43 +02:00
Main.py Zillion: validate rescue item links (#1140) 2022-10-28 21:56:50 +02:00
MinecraftClient.py MinecraftClient: Linux fixes (#668) 2022-06-19 04:54:10 -07:00
ModuleUpdate.py SoE: update to v042 and balancing changes (#1125) 2022-10-21 23:26:40 +02:00
MultiServer.py Core: make player name case-insensitive 2022-10-30 17:12:00 +01:00
NetUtils.py Core: some typing and docs in various parts of the interface (#1060) 2022-09-28 23:54:10 +02:00
OoTAdjuster.py Options: change displayname to display_name 2022-02-02 16:29:29 +01:00
OoTClient.py Ocarina of Time: Itemlinks and bugfixes (#1157) 2022-11-02 09:32:08 +01:00
Options.py Templates: Update template output and add min and max comments for named special_range options. (#1164) 2022-11-01 18:07:56 -05:00
Patch.py Core: SNI Client Refactor (#1083) 2022-10-25 19:54:43 +02:00
PokemonClient.py [Pokemon] Fixes and updates (#1108) 2022-11-01 07:02:15 +01:00
README.md New Game: Zillion (#1081) 2022-10-20 19:41:11 +02:00
SNIClient.py Core: SNI Client Refactor (#1083) 2022-10-25 19:54:43 +02:00
Starcraft2Client.py SC2: New Settings, Logic improvements (#1110) 2022-10-26 12:24:54 +02:00
Utils.py Factorio: revamped location system (#1147) 2022-10-28 21:00:06 +02:00
WebHost.py WebHost: optimize imports 2022-10-17 01:24:02 +02:00
ZillionClient.py Zillion: map tracker in client (#1136) 2022-10-27 02:30:22 -07:00
host.yaml Factorio: Added ability to chat from within the game. (#1068) 2022-10-28 00:45:26 +02:00
inno_setup.iss New Game: Zillion (#1081) 2022-10-20 19:41:11 +02:00
kvui.py CommonClient: Some GUI polish (#1139) 2022-11-01 06:54:40 +01:00
meta.yaml Generate: return of the meta mystery 2021-11-21 18:09:06 +01:00
playerSettings.yaml Templates: Update template output and add min and max comments for named special_range options. (#1164) 2022-11-01 18:07:56 -05:00
pytest.ini use pytest for github unittests 2020-04-29 18:44:03 +02:00
requirements.txt Core: update modules 2022-09-03 09:55:47 +02:00
setup.py AppImage: provide LD_LIBRARY_PATH 2022-10-07 22:24:14 +02:00

README.md

Archipelago Discord Shield | Install

Archipelago provides a generic framework for developing multiworld capability for game randomizers. In all cases, presently, Archipelago is also the randomizer itself.

Currently, the following games are supported:

  • The Legend of Zelda: A Link to the Past
  • Factorio
  • Minecraft
  • Subnautica
  • Slay the Spire
  • Risk of Rain 2
  • The Legend of Zelda: Ocarina of Time
  • Timespinner
  • Super Metroid
  • Secret of Evermore
  • Final Fantasy
  • Rogue Legacy
  • VVVVVV
  • Raft
  • Super Mario 64
  • Meritous
  • Super Metroid/Link to the Past combo randomizer (SMZ3)
  • ChecksFinder
  • ArchipIDLE
  • Hollow Knight
  • The Witness
  • Sonic Adventure 2: Battle
  • Starcraft 2: Wings of Liberty
  • Donkey Kong Country 3
  • Dark Souls 3
  • Super Mario World
  • Pokémon Red and Blue
  • Hylics 2
  • Overcooked! 2
  • Zillion

For setup and instructions check out our tutorials page. Downloads can be found at Releases, including compiled windows binaries.

History

Archipelago is built upon a strong legacy of brilliant hobbyists. We want to honor that legacy by showing it here. The repositories which Archipelago is built upon, inspired by, or otherwise owes its gratitude to are:

We recognize that there is a strong community of incredibly smart people that have come before us and helped pave the path. Just because one person's name may be in a repository title does not mean that only one person made that project happen. We can't hope to perfectly cover every single contribution that lead up to Archipelago but we hope to honor them fairly.

Path to the Archipelago

Archipelago was directly forked from bonta0's multiworld_31 branch of ALttPEntranceRandomizer (this project has a long legacy of its own, please check it out linked above) on January 12, 2020. The repository was then named to MultiWorld-Utilities to better encompass its intended function. As Archipelago matured, then known as "Berserker's MultiWorld" by some, we found it necessary to transform our repository into a root level repository (as opposed to a 'forked repo') and change the name (which came later) to better reflect our project.

Running Archipelago

For most people all you need to do is head over to the releases page then download and run the appropriate installer. The installers function on Windows only.

If you are running Archipelago from a non-Windows system then the likely scenario is that you are comfortable running source code directly. Please see our doc on running Archipelago from source.

This project makes use of multiple other projects. We wouldn't be here without these other repositories and the contributions of their developers, past and present.

Contributing

For contribution guidelines, please see our Contributing doc.

FAQ

For Frequently asked questions, please see the website's FAQ Page.

Code of Conduct

Please refer to our code of conduct.