Skip to content

Spyro: AHT 1 ‐ Setup Guide & FAQ

Phoenix edited this page Aug 9, 2026 · 6 revisions

Setup Steps

Setting up AHT AP is fairly straightforward, though there are a few extra notes and settings listed that are not strictly required but are useful. The majority of these steps are only required the first time you play AHT AP, and some steps may already be done depending on if you've used Dolphin for other randomizers and have it set up already.

Required Software

  • The NTSC-U GameCube version of AHT (specifically, game ID G5SE7D). In following the rules of the main Archipelago Discord server, this must be a legally-obtained and dumped game file.
  • The latest stable version of the Dolphin emulator (2606, at the time of writing this). Development versions will likely be fine, but are riskier given they are not marked as stable, so we officially advise using the stable version. If you find that a new stable version seems to present issues with AHT AP, let us know ASAP and we can investigate or help you troubleshoot.
  • The latest version of the Archipelago launcher (0.6.7, at the time of writing this). Similarly to Dolphin, if a new Archipelago version is released, we will do our best to make sure AHT AP doesn't lose support, and if issues arise, we will resolve them ASAP.
  • The latest versions of spyro_aht.apworld and AR_Code_version_x.txt. Both are findable on this GitHub repo on the "releases" page. This link will always point to the latest version.

Steps to Generating an AHT Random Seed

  1. Download the above software. Once the Archipelago launcher is installed, be sure to install spyro_aht.apworld by either double clicking it, or opening the launcher and selecting "Install APWorld" and selecting spyro_aht.apworld.
  2. Fully close and restart the Archipelago launcher once you have done that, so that AHT loads up the next time it launches. You can then click "Generate Template Options" to create the YAML file you will use to set all of the various options that are used when generating an AHT seed.
  3. Place the YAML file into the Players folder in your Archipelago installation directory.
  4. Click "generate" in the Archipelago launcher, and it should attempt to generate a seed using the YAML file. Depending on your YAML, if you run into issues with how your YAML was set, you may experience errors or the randomizer may automatically fix issues so that generation has the highest chance of succeeding.
  5. If successful, congratulations! You have 2 options for how to connect to this random seed:
  • A) Click "host" in the Archipelago launcher and you will be prompted to select the random seed that was just created (by default, this is in the output folder of your Archipelago installation). It will set up a network connection (to be connected to with the AHT client later) on your local computer. This usually defaults to localhost:38281 but it may differ.
  • B) Navigate to the Archipelago website and upload your random seed there. Archipelago will create a room online for you to connect to. This will take the form of archipelago.gg:xxxxx with xxxxx being 5 numbers that identify your specific seed's room. If you go too long without interacting with the game, the room may time out and a new number may be generated once it re-opens, so be wary of that if you experience errors connecting after it's been a while.

Steps to Set Up Dolphin

  1. Go to Options -> Configuration -> General and check Enable Cheats.
  2. Right click on "Spyro: A Hero's Tail" in your game list and go to Properties -> AR Codes. Then, click Add New Code and create one called AP or something similar that you will know refers to the Archipelago mod. Open AR_Code_version_x.txt and copy-paste its contents into the Code section of this window, and save it. Make sure you check it in the list of AR Codes so that it is enabled after setting up!
  3. [OPTIONAL] Dolphin has some issues with rendering underwater graphics at times. You have 2 options for fixing this:
  • A) Go to Options -> Graphics Settings -> Hacks and disable both "Store EFB Copies to Texture Only" and "Defer EFB Copies to RAM". This can have a notable impact on performance, so your mileage may vary on if this works well enough for you. If not...
  • B) Alternatively, under Options -> Graphics Settings -> Enhancements, the issue can be dodged entirely if you check Disable Fog. This works well, but disables all fog, which may not be preferred for some people.

Connecting to Your Random Seed

  1. Complete all above steps to prepare Dolphin, generate a seed, and get your seed hosted either locally or on the Archipelago website.
  2. If not already open, open the Archipelago launcher and select "Spyro AHT Client" to open the client. You should also start up the game in Dolphin and get to the main menu. You'll know if the game mod was installed correctly if the main menu has text specifying the game mod version saying "Settings not initialized - Connect client".
  3. In the client, enter the server address in the text box at the top. This will either be archipelago.gg:xxxxx or localhost:xxxxx most likely, depending on how you hosted the seed. After, click "connect". If successful, the game will update to say "Settings initialized." This represents the client loading the necessary information from the random seed and patching the game appropriately.
  4. If this is the first time for this seed, set up a new save file and begin playing! If it's an existing seed, load the save you were using before.

Congratulations, and good luck & have fun playing!

Frequently Asked Questions (FAQ)

I Goaled Early, what gives?

This should only be possible if your seed allows the use of !collect. !collect works by a player auto-checking locations in other games once they goal, to pre-collect their remaining items. Since all of AHT's goals are programmed to work based on completing AHT checks, a badly timed !collect can result in AHT registering goal(s) as "done" early. For example, if you had only 1 Firework left to flame for the "Fireworks" goal and someone in your multiworld uses !collect leading to one of their items being collected from your final Firework check, then your AHT client will register goal then.

Are there item groups?

Yes! Currently, the following item groups are available for use:

  • Elder Abilities (Double Jump, Pole Spin, Wing Shield, and Wall Kick)
  • Collectibles (Dark Gem, Light Gem)
  • Filler (Dragon Egg, Gem Pack, Fire/Electric/Water/Ice Bomb, and 14 generics)
  • Breaths (Fire, Electric, Water, and Ice)
  • Abilities (Swim, Glide, and Charge)
  • Shop Items (Lockpick, Health Unit+, Butterfly Jar, Double Gems, Shockwave)
  • Key Rings (the 14 key rings)
  • Access Cards (the Dragon Kingdom, Lost Cities, Icy Wilderness, Volcanic Isle)
  • Shop Unlocks (names vary depending on open world mode)

How about location groups <pleading emoji>?

Also yes! Currently, the following location groups are available for use:

  • 15 level-based groups (Magma Falls is split into Top and Bottom separately)
  • Shop Items (all 18 or 56 shop items, depending on YAML)
  • Each of the 4 minigame types (Sgt. Byrd, Blink, Sparx, and Turret)
  • Various collectibles (Dark Gems, Dragon Eggs, Light Gems)
  • Locked Chests
  • Fireworks (if enabled in YAML)

What versions of the game are supported?

As noted above, currently only the NTSC-U GameCube version (game ID G5SE7D) is supported for AHT AP currently. PlayStation 2 support was planned earlier in development, and may still happen at some point down the road, but it is unlikely to occur unless the original developer of AHT AP (XuaThaGrate) becomes active in development again. I am significantly less confident in programming clients specifically, and getting PS2 support would require a brand-new client for that, as well as a brand-new game mod developed for the PlayStation 2 version of the game.

What other features are planned? Can I suggest things?

See the future of this project for details! If you have suggestions for new features that aren't mentioned there, I'm always open to hearing them if you message me in the Discord thread for AHT AP in the Archipelago Discord server (I am phoenixaki there).

I think the randomizer wants me to do something I can't do, help!

If you suspect there is something programmed in logically incorrectly, let me know! For example, if the randomizer lists something in the tracker as being in-logic despite you not having the items required to do so. There's a chance the information is correct and there is some other way you're not realizing exists to do it, but I will never be annoyed with questions like this as long as you are respectful and humble about it :) There was a MASSIVE overhaul of the entire randomizer's logic in the 2.0 update, so there's a decent chance some things were done accidentally wrong, in the short-term after the 2.0 release.

Does This Project Use AI?

AI is a hot topic in programming nowadays. The Archipelago Discord server staff encourage randomizer developers to disclose any AI usage (or lack thereof) in their projects for the sake of transparency. The following blurbs are from each of the 3 developers who have worked on AHT AP in some fashion, answering the question of whether AI is something they utilize:

Ebbe (game mod): "While none of the mod's code was generated with AI, in some case where a problem really stumps me and Google results fails to help, I do consult ChatGPT. it's pretty rare though. again its' only if I need help in understanding a problem, not for just spitting out code that I then use. I don't like using code that I didn't write and don't 100% understand." XuaThaGrate (original logic and client programmer): "None of my code has ever or will ever use AI" PhoenixAki (hi that's me, current logic and client programmer): "Virtually none of my contributions utilize AI/LLMs. One very small exception is I briefly asked ChatGPT if it had any good ideas for the humorous generic filler item name ideas for inspiration. Most of them did not hit the mark, but one ("Anger Management for Red") was great, so I took it and then came up with all of the other filler names on my own using it as the base idea."