- Use this fork of Dolphin https://github.com/Felk/dolphin/releases.
- Turn on "Scripting" logs and set Verbosity to "Error" or any option below (not "Notice").
- Under "Scripts", click "Add new Scripts" and select your Python script.
General:
- Generation of Spoiler Log
.txt
file - Generation of Randomized Map
.graphml
file - Option to manually choose a seed, or to get a random seed
Transitions:
- Randomization of almost all basic transitions in the game
- Option to manually choose a starting area, or to get a random starting area
- Option to make all transitions 2-directional, or to allow 1-directional transitions
- Option to skip both Jaguar fights entirely, or to keep them as normal
- Option to immediately spawn in the Spirit Fight when entering a temple, or to enter normally
Shaman Shop:
- Randomization of Shaman Shop prices
- Option to disable maps from the Shaman Shop, or to let them remain
- Further options for Shaman Shop prices
- Use this fork of Dolphin https://github.com/Felk/dolphin/releases.
- Turn on "Scripting" logs and set Verbosity to "Error" or any option below (not "Notice").
- Download the randomizer zip file, either:
- latest release:
- from #randomizer channel on Discord;
- release artefacts (requires a GitHub account);
- development build:
- zip it yourself using
pack-rando.ps1
; - development builds (requires a GitHub account);
- zip it yourself using
- latest release:
- Open this zip file and drop "Scripts" at the root of your Dolphin installation (the location and names are important!).
- Configurations are found in
Scripts/Entrance Randomizer/CONFIGS.py
. - In Dolphin, under "Scripts", click "Add new Scripts" and select
Scripts/Entrance Randomizer/__main__.py
. - Enjoy and watch logs for errors 🙂
In order to display the generated map take these steps:
- Go to https://graphonline.ru/en/
- Under "Graph" choose "Import from file" and choose your generated
.graphml
file - Under "Algorithms" choose "Arrange the graph"
- Enjoy your map! You can freely move the dots, and you can use multiple features under the "Algorithms" tab (like "Find all paths" for instance)
- You can also save your map at any time by choosing "Graph" --> "Export to file"
- To generate a new random seed, simply reload the script.
- Saving and Loading is not supported by this randomizer. You can still do it, but the results will be unpredictable.
- This means "audio glitch", where sometimes the in-game music gets messed up and becomes very loud, currently has no solution while playing the randomizer.
- Some seeds will result in impossible to complete configurations, because you might need some items to progress that you don't have yet.
- When using
LINKED_TRANSITIONS = False
the generated.graphml
map will become very hard to read, given the extreme amount of connections that will be drawn. - In rare occasions, a transition might send you to the game-intended level instead of the level decided by the randomizer (this is an issue with the script patching the destination).
- In rare occasions, a transition might not make you enter a level from the correct entrance, but make you enter from the default entrance instead
- The odds of this happening increase dramatically if at any point in the run Harry died or a save file was loaded.
- Some linked transitions are not spawning at the right entrance and use the default entrance instead. Known cases:
- Jungle Canyon from Punchau Shrine
- Bittenbinder's Camp from Mysterious Temple
- Use this fork of Dolphin https://github.com/Felk/dolphin/releases.
- Turn on "Scripting" logs and set Verbosity to "Error" or any option below (not "Notice").
- Clone this repository.
- Run
symlink-scripts.ps1 "<path to dolphin-scripting>"
. - In Dolphin, under "Scripts", click "Add new Scripts" and select
Scripts/Entrance Randomizer/__main__.py
.
This section serves as a reminder for myself. To create a new release:
- Run version-bump.ps1.
- Push to
main
. Any change toCHANGELOG.md
should trigger a release pack. - Share on Discord with a link to the latest release section.
- Unpin old version message, pin new version message.