An Interview with Veetorp – Legend of Zelda Randomizer (ALTTP)

The Legend of Zelda A Link to the past Randomizer grew big in a short time. Today we will be having one of the developers of the program in for the interview. It is Veetorp, one of the lead programmers of this project. Without his dedication, this would never have become as good as it is today.

From several people I have heard that you are the one behind the randomizer code, who first started working on it. What pushed you to make that randomizer?

I rewrote the randomizer code to what it is today based on code that Dessyregt originally wrote in C#. He had written a Super Metroid Randomizer and adapted the ideas from that into A Link to the Past. It wouldn’t be fair to say I first started working on it, but I certainly made it what it is today. For me personally, I love this game, and I love the logic puzzles of all the ways the game allows you to get different things. I am a programmer by nature, so once I got my teeth into it, I couldn’t stop writing code and making it better.

A programmer by nature is a good thing to be these days, and that definitely made the randomizer into a piece of art already. I have seen many runs of this game and played a few randomizes as well. I can agree this is a great game for this. Yet while making the Randomizer, I am sure you have run into many hardships. Like changing the item location would require a lot of work. What was the hardest thing you have encountered so far in making this? 

We have a great team of guys around the project, really brilliant guys. A lot of the time, if something seems impossible, just talking it out with them or asking help has gone a long way. From a randomizer perspective, one of the hardest things has been working out a fill algorithm that is both fast and achieves the most varied results possible, as well as the logic involved in some of the more “interesting” dungeons. Palace of Darkness has had its logic overhauled countless times, including an eight-hour call between me and ChristosOwen, where we tried to figure out every possible way someone could key-lock in the dungeon.

The game itself was almost originally designed to handle moving around items around. Moving 1 item from a chest on one side of the world to another chest is surprisingly easy, but when you modify some of the more interesting item locations, that becomes harder. Bombos Tablet is an example of this. Karkat had to rewrite large portions of the item draw code to enable randomization of the standing items locations like that.

So the normal items itself were easy to move around. Were all item locations found already by the time you started, or did you have to dig deep into the code to find them all?

A fair amount of them were found or created. Most of the recent deep digging into the code has been for all the extras and added modes we have been working on currently and recently.

One of your recently added modes is Key-sanity. Was it easy to implement that, besides changing what the maps and compass do in the game? I can imagine it harder to make sure the keys and dungeon items stayed in their own dungeon.

For Key-sanity we had to create 58 brand new items to the game. The keys, maps, and compasses were tied to their dungeon. The game only had generic versions of these and based the item you got on where you got it. We also had to completely reimagine our randomizer to understand what it meant to find keys outside their own dungeon.

So it required a lot more work after all. Did this reimagining give you any new insights? Any possibility for new game modes or variations?

Very Much so, we have 2 larger variations we are working on right now. It also made the logic a little easier to maintain, although it is a little more complex.

Anything you can reveal about the two larger variations, or is it all a secret for now?

One involves a more Zelda1-esque key situation, currently named Key-Sanity-b. The other one will be a fun surprise.

Sounds interesting, and a possible new article as well when the surprise has been released. But to the other point, today in the daily race, I noticed that Christmas has arrived to Hyrule. While many online games nowadays do something for this season, what inspired you into doing this?

The whole team has thrown around ideas of special randomizers at different times: April Fools, St. Patricks Day, Valentines Day. It struck me this season to really just push for it. It certainly helped that many of the hackers of AlttP could help out with their specific areas of expertise. Plus, it is always fun to spice up the game, it is what we do.

The ice mechanics in the overworld is annoying, but the fact that you don’t need flippers to access several areas also changed the locations you can visit earlier. Did you account for this while making it?

Annoying? Festive! We had a discussion about having the logic account for iced-over lakes and rivers but decided the time would be spent better making all the features we did. I believe in the future we will adjust the logic when we make adjustments like this. The sequence breaks for not having flippers is mostly harmless.

It was an early decision to keep the Ice Physics only on the overworld. Dungeons would have been way too hard, and there would be countless bugs to solve.

And we are all glad that it stayed in the overworld, well maybe except Moldorm. With this festive edition, there is a poem on the site and at the ending as well. As a poet myself, I am wondering who thought up the poem.

That is our very own walking_eye, one of the newest members to the team. I asked for a short description of the mode without giving him too many details, and that poem arrived. It was like getting a gift myself, so amazing.

I can say he has talent. How long will people be able to enjoy the festive randomizer?

Currently, we are planning to keep it available until the new year.

That will give our readers a chance to try it out on the release of the interview. One subject that we did not touch yet, however, are the custom sprites. From what I know of trying to change sprites of SNES games, this is a hell. How did you overcome this?

Surprisingly, Link’s graphics are all in a single location and not compressed. With a few graphic editing tools out there it is actually relatively easy to swap them out for a different set. We also have a large active group of sprite developers that have been pumping them out like candy.

That is a surprise for a SNES game. And the large group is certainly helpful for that as well. What is your favorite sprite so for in this and why?

I really do like them all, laughably original Link is my favorite. It holds so much childhood nostalgia. I will say to try the updated Santa Link, he got a little spruce up for the season.

alttp custom sprites.png

Some of the sprites people can select for the randomizer.

Original Link because of the nostalgia is a good reason. Personally, I prefer to take the Touhou characters. While I will be waiting for more of them to appear, I heard that V28 of the randomizer will appear very soon. What can we expect in that one?

It certainly is getting closer, V28 is adding a feature on the site of a “Daily Game” where is pregenerates 1 game each day of different settings. This way people can play the same game at different times, or try new modes they hadn’t thought of before. We are also updating the link Entrance Randomizer to have some of the new features that Amazing Ampharos has been putting in, like Key-Sanity Entrance Randomizer. There will also be a slew of fixes for the Customizer we put in V27.

That would be very interesting to see. Do you have any tips for new runners of this randomizer? Anything they should begin with?

First I would suggest joining the discord, there are so many great people in the community that are very happy to help out. Then I would certainly suggest playing through the original game, getting a feel for the mechanics is very helpful. This also helps with the general knowledge of Vanilla locations. Then I would suggest watching a few people stream the game, they will give great tips on routing and how to get through certain sticky situations. Don’t get discouraged by your early runs taking over 2 hours, my first rando took me 5 hours. People who sub 1:30 randomizer regularly have played it a lot. And most of all, just have fun playing it.

My first 4 runs ended in unfinished runs, the 4th one sadly due to a crash of my console at Ganon. Crossproduct’s tracker did help me a lot in learning the different item locations and what is required for those. Would you recommend his tracker as well for beginners or do you have a different one in mind?

I would absolutely recommend Crossproduct’s tracker, that guy is both amazing and brilliant. The world map tracker is super valuable to new runners, just knowing where you can go is probably one of the most important things in item randomizer. He is also my roommate for AGDQ (Awesome Games Done Quick) this year.

That is great. We do plan to cover AGDQ as well, even if none of our team can be there. I did not check the schedule of it yet, but will there be a randomizer at it as well?

You’re in for a treat. Saturday night ChristosOwen and Andy will be doing a race.

Living in Europe, I guess I will miss the best stuff once again. Anyway, we are nearing the end of this interview. Do you have any last words to our readers?

Thank you all for your time, I hope you guys get a chance to try the randomizer and enjoy it as much as I do.


For more information about the randomizer, check our previous article where we cover the basics of it here.

Leave a Reply