Homepage | Development Information | Mirror | Discord
As of 2020 the new Repository is just Randomizer due to massive code and structural changes
This project is based on Piston's ttyd-tools and ported to Twilight Princess by Zephiles
This is template code without any game changing logic whatsoever. It randomizes every item Link gets then turns towards the camera with the item floating above his hands (excluding getting an item for the first time on the ground). This means these items are not randomized in this version:
- Master Sword
- Shadow Crystal
- Horse Call
- Master Sword infused with light
- Shop ammo that doesn't trigger a cutscene
- Floor rupees/arrows/seeds
- Scoopable bottle contents (might be possible in an update from the official version )
- Fished items (might be possible in an update from the official version )
- Keysanity (very complex, might not do it)
- Get the item check in-game
- Open the in-game console (R+Z) before getting another item
- Go to page 3 (named "Debug Info")
- If the lines "Function:", "Source:" and "Dest:" didn't change: it means that we can't randomize that item at the moment since we don't know the trigger that gets called when this item is gotten
- If the line "Source:" does not contain some "->" and the line "Dest:" says: "No Replacement found for this source", it means that item check wasn't found, so:
- It could be abscent from our code
- It could be in the code but with some incorrect data
- If the line "Source:" looks someting like "F_SP08->5->7" and the line "Dest:" says: "No replacement here.", it means that the item check was found and already collected, so:
- The trigger for getting the item might get fired more than once
- There could be a problem with the logic
- If the line "Source:" and the line "Dest:" look someting like "F_SP08->5->7", then the item check was randomized properly
- If any of these cases happen you must take note of:
- page 3 "Debug Info", the lines "Function:", "Source:", "Dest:", "Active Seed:" and "Checksum:"
- page 4 "Item Search", the lines "MetadataID:", "MetadataX:", "MetadataY:" and "MetadataZ:"
- page 5 "Game Info", the lines "CurrentStage:", "NextStage:" and "NextRoom:"
- top right, the randomizer versions
- After this, feel free to mention it in the Discord, where we will look into this item check
- You can also look into the newer releases to see if that problem was already taken care of
After downloading the DevTools you want to adjust some files for the Makefile to match your elf2rel and gcipack path(s)
Linux/Unix:
$ sudo cp /path/to/elf2rel /usr/bin/elf2rel
$ sudo echo 'python3 /path/to/gcipack.py "$@"' > /usr/bin/gcipack && sudo chmod +x /usr/bin/gcipack
In this case the Makefile does not need to be changed, however if you don't want to add the binaries/scripts to your PATH or bin you should edit the Makefile (see Windows variant)
Windows
- Open the Makefile for edit
- Change line 12 from
export ELF2REL := elf2rel
toexport ELF2REL := /path/to/elf2rel.exe
(or/path/to/elf2rel
on linux) - Change line 13 from
export GCIPACK := gcipack
toexport GCIPACK := python3 /path/to/gcipack.py
It is suggested to create a
bin
folder inside the Randomizer and copy the binary/script (elf2rel
,gcipack.py
) inside there - then usebin/elf2rel[.exe]
andbin/gcipack.py
as paths
- AECX for the first versions of the randomizer
- Piston for TTYD-Tools
- Zephiles for porting them to TP and helping to set them up properly aswell as hours of testing, debugging and providing help
- Taka for helping a lot with testing and gathering meta-data for chests
- Skyreon for also helping with REL testing
- Hornlitz for writing down all chests + some information on how to access them
- Jacquaid for his TPHD rando logic and general information
- Dragonbane for providing inifinite amounts of information and being a constant source of Game knowledge
- Everyone who contributed to researching the game and/or was involved in the Ultimate TP Spreadsheet