The Legend of Zelda: A Link to the Past (ALttP) is one of the best games released for the SNES, and I’d even argue of the franchise as a whole. Over the last few years, I’ve played through different randomized versions of this classic game, trying everything from basic randomized gameplay to randomized enemies and doors.
At its core, the ALttP randomizer (ALttPR), like the base game, is a single player game. Sure, you can give everyone the same randomized seed to race with, but if competition isn’t your thing or you’re looking for a different experience out of ALttPR, there’s simply a limit to what a game you play by yourself is capable of.
Thanks to a mode known as Multiworld, however, a true co-op randomizer experience is easier to realize than you might think.
What is ALttPR Multiworld?
ALttPR Multiworld is a game mode where each player configures the Link to the Past Randomizer settings they would like to play with, then combines them in a zip file to generate a server with seeds that can contain items for all players. Once all players connect to the server, items are delivered to their owners during gameplay as they are discovered.
This means that if you and a couple friends want to play an ALttPR co-op, but one of you wants to do a Triforce Hunt, another wants to play Keysanity, and the last wants to play a normal seed with randomized enemies and bosses, all of you can get what you want while helping each other find the items needed to complete your version of the game!
Pretty awesome, right?
Setting a Multiworld up can be a little tricky the first time, as it is much more involved than rolling a typical ALttPR seed. Once you get it running once though, it’s pretty easy to replicate in a much shorter amount of time.
It is also extremely important you look at my ALttPR setup guide before starting to set up your Multiworld if you aren’t familiar with using Lua Scripting or Lanabean’s guide to Usb2Snes if you’re new to playing randomizers on a flash cart – this guide assumes you’re familiar with the subject matter you need from these 2 articles to play a normal ALttPR seed.
ALttPR Multiworld Setup Guide
A huge thank you to Eriphram for organizing and writing up this information after we tested everything out, and another to the guide written by TalisMK4 and Nicholas Steel that did an excellent job laying out the order of operations for crucial setup steps, especially those involving emulator setup.
Our guide assumes you’re on Windows, but you can probably adapt it for Mac using this setup guide for Archipelago as reference material. It should be noted that the Berserker Multiworld we discuss and Archipelago are two distinctly different Multiworld websites and programs that look extremely similar to each other due to being developed by the same programmer.
More on that after we discuss how to set up Berserker Multiworld.
First, you’ll need to set up 3 programs if you don’t have them already:
- Berserker’s Multiworld 4.1.3
- 7-Zip (or another similar program capable of creating and extracting zipped folders)
Berserker Multiworld 4.1.3 Setup
Go to this GitHub and download the highlighted item in the picture below.
Run the .exe file and follow the instructions in the program for installation. It will set up all needed utilities to run Multiworld. Once it is completed, make sure you restart your computer as required.
Grab the latest version of QUsb2Snes from this GitHub, which will be in a “.7z” format, as pictured below. Make sure you can extract this type of file before going any further. If you cannot, download and install 7-Zip first.
Once QUsb2Snes is downloaded and extracted, run the QUsb2Snes.exe file and an icon should pop up in the taskbar. No windows will pop up, and if you don’t see it, it may be in your hidden icons near your clock, as underlined below.
Each player playing in a Multiworld must create a YAML file, which contains the settings for the type of ALttPR game you wish to play. While you can all choose the same settings if you wish, every person can also have separate settings while playing in the same Multiworld, including goals for finishing the game, difficulty, and any other setting you can normally customize.
It is extremely important for each person to fill out their player name to clearly separate YAML files. When your settings are just the way you want them, click the Export Settings button at the bottom of the page to download them. If you want more in-depth tweaks, you can also go to weighted settings link provided.
Once you have your YAML file, send it to the person hosting your Multiworld. The host will send you a patch or a link to download your patch in return.
Rolling Your Group’s Multiworld and Generating Player Patches
This step is only for the person hosting your Multiworld. If you aren’t the host, skip to the “Apply Your Patch” section below.
Once you have everyone’s YAML files, use 7-Zip or your compression program of choice to put them all into one zipped folder. Once that is done, click on “Upload Config” on the Berserker Multiworld website, and you’ll be taken to a page that looks like this.
Click the Upload button and upload the zip file you created with everyone’s YAML files. Your page will transition to a generation screen before bringing up a Seed Info screen.
Click on Create a New Room, then you can either download everyone’s patch files and distribute them or simply give them the URL of your current page and have them do that themselves.
As the host, you will have the ability to enter commands on this screen, but nobody else will have this privilege. Other players can, however, input commands in their individual command windows later on, so if you are playing with a lot of tech savvy people, everyone needs to agree not to put in commands unless absolutely necessary (though watching the logs is totally fine).
Apply Your Patch
Go to your Start Menu and find the Berserker’s Multiworld file. In the dropdown, select the BerserkerMultiWorld Folder.
This will open it up. I created a patches folder to have a nearby place to patch files. Move your downloaded patch file to the Patches folder, then Launch BersekerLttpAdjuster.exe.
This will launch the patcher program which will also allow you to make last second changes you may have missed to your game. The Base Rom is the unedited rom and the Rom to Adjust will be the patch file provided to you.
When done, click Adjust Rom and that will provide you the needed SFC file.
Optional: If you’re feeling especially confident, you can instead open your patch file, follow the prompt in the command window that opens, and generate the SFC file here instead. This method does automatically open a browser tab and your ROM, both of which you’ll need to close for right now.
Optional: If you want to use an MSU while playing your Multiworld, move your SFC file to your MSU folder and rename it accordingly at this time.
The final steps are dependent on the emulator you want to use. This guide covers RetroArch and a specific build of snes9x involved in other Multiworlds.
Note: Steps 1 and 3 may be skipped if you already have Snes9x-rr set up. A regular Snes9x emulator will not work, as it does not support Lua Scripting.
- Download and extract snes9x-rr-1.60-win32-multitroid2-r5.zip from Multitroid’s Google Drive.
- Run snes9x.exe
- Configure your gamepad
Note: Steps 4-9 MUST be followed in the exact order given.
- Input > Enable Background Input
- Make sure to disable ALL hotkeys so you don’t accidentally change any settings (there are multiple “pages” of hotkeys)
- Right click QUsb2Snes’s icon in your system tray, then hover over the devices menu and enable Lua Bridge & SD2SNES.
- Load the SFC file you created in Snes9x.
- File > Lua Scripting > New Lua Script Window
- Browse… > Navigate to your QUsb2Snes folder, go to the LuaBridge folder, and select luabridge.lua
We will use the snes9x core (the one with no year listed on it), but bsnes core should also work. This setup guide assumes you already have worked with RetroArch before.
- Edit your retroarch.cfg file (can be found in %appData%\RetroArch) to set network_cmd_enable = “true” to true
- Right click QUsb2Snes’s icon in your system tray, then hover over the devices menu and enable Retroarch virtual device. (may not be a needed step)
- Load either of the two cores mentioned above in Retroarch, then load your game.
Optional: If you use an auto-tracker like EmoTracker with either of these setups, you may configure that at this time.
Connect to Multiworld
Once your game is loaded and your Lua Script is running, you are ready to connect to your Multiworld. Go to your Start menu and launch the Berserker MultiWorld program.
This will launch a command window – DO NOT CLOSE THIS
A webpage will also be launched.
The host will give players a command that looks something like this:
Put that command in the bottom command box and you should be connected to the Multiworld and ready to play. If you need to double check the command, it is also available at the same URL where you downloaded your patch.
SD2SNES/FXPAK users may need to use /SNES if there is trouble connecting.
Note: Your seed codes will look different from those of the others playing in your Multiworld – this is normal, as you are playing individual seeds connected through the archipelago server you just joined.
ALttPR Multiworld FAQs
What is the difference between Berserker Multiworld and Archipelago?
Berserker Multiworld is a standalone Multiworld solution designed exclusively for ALttPR. Archipelago is a Multiworld solution that works with many popular games new and old.
Berserker66 is involved in the development of both, and both websites look incredibly similar to one another and are both branded as Archipelago, making it incredibly difficult to discern which is which if you’re just learning about Multiworlds. Of these options, berserkermulti.world is the one we recommend for ALttPR Multiworld due to ease of setup.
Is Berserker Multiworld still supported?
Berserker Multiworld hasn’t received an update since 2021, so odds are it isn’t going to be receiving a lot more updates, particularly since archipelago.gg seems to be where current multiworld environments can be found.
Can I generate and play an ALttPR Multiworld on the archipelago.gg website?
Technically, yes. Unfortunately, if you like playing different game types beyond the standard randomizer like Triforce Hunt or Master Sword Pedestal, Archipelago’s YAML generator doesn’t inherently support these game types like the Berserker Multiworld generator does.
That doesn’t mean it can’t be done – there’s a specifically created YAML file that is available if you ask for it in the Archipelago Discord – but it does mean that you’ll have to tweak that YAML file by hand in a program like Notepad++.
Not a problem if you have a coding background, as the tweaks are simple, but very unfriendly to those who do not. Fortunately, most other setup steps are virtually identical in nature. That said, since Berserker Multiworld works well and has a much more intuitive user interface for ALttPR, it is what we recommend for the average randomizer enthusiast.
Can I use MSUs with a Multiworld?
Yes! The same setup process applies to multiworld seeds as single player seeds.
Can I use a second Lua Script for auto-trackers like EmoTracker?
Yes! Just open up a new Lua Script window and set it up as normal.
Other Video Game Articles You May Enjoy
- Link to the Past Randomizer Guide
- Fxpax Pro Setup for Emotracker Auto Tracking
- How to Connect Nintendo Switch to Laptop
- Games Like Stardew Valley
- Coral Island Tips and Tricks
Braden is a founder of Assorted Meeples and has been a gamer & writer with a vivid imagination all his life. Don’t believe us? Check out his excitement when meeting Goosebumps author R.L. Stine as a kid! An avid Magic: The Gathering spellslinger for over 15 years, you can always convince him to shuffle up for a game (or three!) of Commander.