Skip to content

Secret generator library for The Legend of Zelda: Oracle of Seasons and Oracle of Ages

License

Notifications You must be signed in to change notification settings

fortwoone/pyzora

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyzora

Python decoder library for Zelda OoS/OoA secrets

Documentation Status license

This library has been inspired both by Paulygon's password generator for The Legend of Zelda: Oracle of Seasons/Ages (referred to as the Oracle games from now on) and Amy Nagle (aka kabili207)'s zora-sharp library for C#. It can handle all three types of secrets in the games.

But... what's a secret?

Let me explain. A secret is a password the Oracle games use to transfer data. There are three types of secrets :

  • Game secrets : they allow a player who has finished one of the two games to continue the story in the other game.
  • Ring secrets : once one of the two games is completed, Red Snake in the completed file will generate this kind of secret. It allows the player to transfer all their rings from one game to the other (for this to work, you need to talk to Red Snake in the non-completed file at least once).
  • Memory secrets : during a linked game, exclusive NPCs will spawn on the map. Some of these NPCs can be interacted with to get a short secret to transfer to another NPC in the completed file. The latter NPC will then give the player another code to transfer back to the non-finished file to carry his bonus over. The player might be required to play a minigame before getting the return secret.

As you can see, secrets are pretty vital if you want to have the full experience in The Legend of Zelda: Oracle of Ages/Seasons. (which is why this library exists, duh).

What does pyzora provide?

  • One class per secret type, with its own attributes and uses
  • Reading and writing secrets of any type in both available game regions (Japan and US. Note that PAL releases use the same encoding as US cartridges)
  • Easy to use

Okay, but how am I supposed to install this?

Don't worry! It's very simple! You just need to do the good old pip install pyzora!

If you want to manually install the library with the source code, follow the steps below:

  1. Clone the repository.
  2. Install Python 3.10 or above.
  3. Run this command to get the dependencies :
python3 -m pip install -r requirements.txt
  1. You're good to go!

I noticed a bug or want to contribute!

Found a bug? Don't panic! Simply head towards the Issues section in this repository and describe your problem! A solution will be worked on as soon as possible afterwards.

Want to contribute? You can start by forking the project. Once you're done, open a pull request in the repository, and it'll be reviewed as soon as possible!

About

Secret generator library for The Legend of Zelda: Oracle of Seasons and Oracle of Ages

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages