<!DOCTYPE html>
<html>
	<head>
		<?php include $_SERVER['DOCUMENT_ROOT'].'/src/common-meta.php';?>
		<title>9iron - SMZ3 Multiworld</title>
	</head>
	<body>
		<?php include $_SERVER['DOCUMENT_ROOT'].'/src/common-header.php';?>
		<div class="content">
			<h1>Setting Up the <i>Super Metroid</i>/<i>The Legend of Zelda - A Link to the Past</i> Multiworld Item Randomizer</h1>
			<p>Disclaimer: Most of this information is duplicated from <a href="https://samus.link/mwinstructions">upstream documentation</a>. If anything here breaks, please consult that guide as the instructions may have changed.</p>
			<div class="subcontainer">
				<h2>1. Installing QUSB2SNES</h2>
				<p>It's a big fancy name that means "driver to allow your emulator to talk to the multiworld server".</p>
				<ol>
					<li><a href="https://github.com/Skarsnik/QUsb2snes/releases">Go here</a></li>
					<li>Download the latest release (expand "Assets" and pick the file that ends in ".exe")</li>
					<li>Put it somewhere</li>
					<li>Run it</li>
					<li>Pick the option for "Enable Lua Bridge (snes9x-rr)" (you may have to right-click the tray icon if you don't get a window when you start the application)</li>
				</ol>
			</div>
			<div class="subcontainer">
				<h2>2. Installing Snes9x-rr</h2>
				<p>We have to install a special emulator to interact with some special tooling and allow items to be sent between worlds.</p>
				<ol>
					<li><a href="https://github.com/gocha/snes9x-rr/releases/">Go here</a></li>
					<li>Download the latest release (ends in "win32.zip")</li>
					<li>Unzip it somewhere</li>
					<li>Run <code>snes9x.exe</code> to start the emulator</li>
					<li>File -&gt; Lua Scripting -&gt; New Lua Script Window</li>
					<li>Load "luabridge.lua" from the directory you ran snes9x out of</li>
				</ol>
			</div>
			<div class="subcontainer">
				<h2>3. Connecting to the Multiworld</h2>
				<p>From here, you have an emulator and a program to expose that emulator to the internet. Now we connect it to the multiworld randomizer engine so you can join the game.</p>
				<ol>
					<li>Ask somebody for the link to the party at <a href="https://samus.link">samus.link</a></li>
					<li>Visit the link in your browser</li>
					<li>Hit the "Connect" button next to your name</li>
					<li>Upload your totally legitimately obtained Super Metroid and ALttP ROMs (the randomizer is very picky about which ones you upload; ask around for the right ones if you don't have them)</li>
					<li>Pick your favorite sprites and colors and energy beep frequency</li>
					<li>Download and play the ROM in snes9x</li>
					<li>Hate life</li>
				</ol>
			</div>
			<div class="subcontainer">
				<h2>4. Playing the Game</h2>
				<p>There are a number of resources available to help you in managing the sheer amount of information that you'll need to keep track of during the randomizer. Make good use of these:</p>
				<ul>
					<li><a href="http://smalttpr.mymm1.com/tracker/">ALttP Item Tracker</a> - Plug in what items you have and it'll tell you where you can go. Accounts for crossing through Super Metroid to get to somewhere you normally couldn't</li>
					<li><a href="https://wiki.supermetroid.run/List_of_rooms">List of Rooms in Super Metroid</a> - The game is huge, so naming each room helps keep track of where you are. You can also see full screenshots of each room</li>
				</ul>
				<p>Also some tips:</p>
				<ul>
					<li>There are several points at which you can softlock in Super Metroid. Save early, save often, and know when to reset</li>
					<li>You start with a full map in Super Metroid detailing every item's location. It's very helpful</li>
					<li>There are many ways to skin a cat, some of them more or less painful than others</li>
				</ul>
				<ul>
					<li>Kakariko Village is incredibly lucrative early on; there are 10-15 items in that area you can acquire with literally no items</li>
					<li>Getting to the Dark World is a huge priority; you need the Moon Pearl and either a Hammer or a Glove to get there</li>
					<li>Certain trees can be pulled in ALttP to yield pickups. The pickups that drop are random for each player</li>
				</ul>
				<ul>
					<li>Just because you CAN get somewhere doesn't mean there will be anything helpful there. Glitches yield sequence breaks, not progression</li>
					<li>Having a trusted third party available to check the spoiler log might not be a bad idea</li>
					<li>Sometimes your progression can be in somebody else's world. If you know there's nothing for you to do, there's no shame in going and getting some Burger King while you wait</li>
				</ul>
			</div>
		</div>
		<?php include $_SERVER['DOCUMENT_ROOT'].'/src/common-footer.php';?>
	</body>
</html>
