Docs: rework main ap setup guide (#1853)

* rework main ap setup guide

* review updates

* add blurb about re-opening rooms and user-content

* more review suggestions

* remove dead links. Windows blurb
This commit is contained in:
Aaron Wagener 2023-06-28 19:06:18 -05:00 committed by GitHub
parent 07e3fbe845
commit 122d404145
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 154 additions and 77 deletions

View File

@ -32,7 +32,6 @@
<h2>Tutorials</h2>
<ul>
<li><a href="/tutorial/Archipelago/setup/en">Multiworld Setup Tutorial</a></li>
<li><a href="/tutorial/Archipelago/using_website/en">Website User Guide</a></li>
<li><a href="/tutorial/Archipelago/mac/en">Setup Guide for Mac</a></li>
<li><a href="/tutorial/Archipelago/commands/en">Server and Client Commands</a></li>
<li><a href="/tutorial/Archipelago/advanced_settings/en">Advanced YAML Guide</a></li>

View File

@ -19,15 +19,13 @@ class GenericWeb(WebWorld):
'English', 'mac_en.md','mac/en', ['Bicoloursnake'])
plando = Tutorial('Archipelago Plando Guide', 'A guide to understanding and using plando for your game.',
'English', 'plando_en.md', 'plando/en', ['alwaysintreble', 'Alchav'])
setup = Tutorial('Multiworld Setup Tutorial',
'A guide to setting up the Archipelago software to generate and host multiworld games on your computer.',
setup = Tutorial('Getting Started',
'A guide to setting up the Archipelago software, and generating, hosting, and connecting to '
'multiworld games.',
'English', 'setup_en.md', 'setup/en', ['alwaysintreble'])
triggers = Tutorial('Archipelago Triggers Guide', 'A guide to setting up and using triggers in your game settings.',
'English', 'triggers_en.md', 'triggers/en', ['alwaysintreble'])
using_website = Tutorial('Archipelago Website User Guide',
'A guide to using the Archipelago website to generate multiworlds or host pre-generated multiworlds.',
'English', 'using_website_en.md', 'using_website/en', ['alwaysintreble'])
tutorials = [setup, using_website, mac, commands, advanced_settings, triggers, plando]
tutorials = [setup, mac, commands, advanced_settings, triggers, plando]
class GenericWorld(World):

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 KiB

View File

@ -1,27 +1,35 @@
# Archipelago Setup Guide
This guide is intended to provide an overview of how to install, set up, and run the Archipelago multiworld software.
This guide should take about 5 minutes to read.
This guide is intended to provide an overview of how to:
- Install, set up, and run the Archipelago multiworld software
- Generate and host multiworlds
- Connect to the multiworld after hosting has begun
This is a general overview. For more specific steps, reference the relevant game's [setup guide](/tutorial).
Some steps also assume use of Windows, so may vary with your OS.
## Installing the Archipelago software
The most recent public release of Archipelago can be found on the GitHub Releases page. GitHub Releases
page: [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases).
The most recent public release of Archipelago can be found on the GitHub Releases page:
[Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases).
Run the exe file, and after accepting the license agreement you will be prompted on which components you would like to
Run the exe file, and after accepting the license agreement you will be asked which components you would like to
install.
The generator allows you to generate multiworld games on your computer. The ROM setups are required if anyone in the
game that you generate wants to play any of those games as they are needed to generate the relevant patch files.
game that you generate wants to play any of those games as they are needed to generate the relevant patch files. If you
do not own the game, uncheck the relevant box. If you gain the game later, the installer can be run again to install and
set up new components.
The server will allow you to host the multiworld on your machine. Hosting on your machine requires forwarding the port
you are hosting on. The default port for Archipelago is `38281`. If you are unsure how to do this there are plenty of
other guides on the internet that will be more suited to your hardware.
The `Clients` are what are used to connect your game to the multiworld. If the game/games you plan to play are available
here go ahead and install these as well. If the game you choose to play is supported by Archipelago but not listed in
the installation check the setup guide for that game. Installing a client for a ROM based game requires you to have a
legally obtained ROM for that game as well.
The `Clients` are what are used to connect your game to the multiworld. If the game you plan to play is available
here, go ahead and install its client as well. If the game you choose to play is supported by Archipelago but not listed
in the installation, check the setup guide for that game. Installing a client for a ROM based game requires you to have
a legally obtained ROM for that game as well.
## Generating a game
@ -31,14 +39,14 @@ YAML is the file format which Archipelago uses in order to configure a player's
game you will be playing as well as the settings you would like for that game.
YAML is a format very similar to JSON however it is made to be more human-readable. If you are ever unsure of the
validity of your YAML file you may check the file by uploading it to the check page on the Archipelago website. Check
page: [YAML Validation Page](/mysterycheck)
validity of your YAML file you may check the file by uploading it to the check page on the Archipelago website:
[YAML Validation Page](/mysterycheck)
### Creating a YAML
YAML files may be generated on the Archipelago website by visiting the games page and clicking the "Settings Page" link
under any game. Clicking "Export Settings" in a game's settings page will download the YAML to your system. Games
page: [Archipelago Games List](/games)
YAML files may be generated on the Archipelago website by visiting the [games page](/games) and clicking the
"Settings Page" link under the relevant game. Clicking "Export Settings" in a game's settings page will download the
YAML to your system.
In a multiworld there must be one YAML per world. Any number of players can play on each world using either the game's
native coop system or using Archipelago's coop support. Each world will hold one slot in the multiworld and will have a
@ -47,39 +55,144 @@ slot name and, if the relevant game requires it, files to associate it with that
If multiple people plan to play in one world cooperatively then they will only need one YAML for their coop world. If
each player is planning on playing their own game then they will each need a YAML.
### Gather All Player YAMLs
### Generating a single player game
#### On the website
The easiest way to get started playing an Archipelago generated game, after following the base setup from the game's
setup guide, is to find the game on the [Archipelago Games List](/games), click on `Settings Page`, set the settings for
how you want to play, and click `Generate Game` at the bottom of the page. This will create a page for the seed, from
which you can create a room, and then [connect](#connecting-to-an-archipelago-server).
If you have downloaded the settings, or have created a settings file manually, this file can be uploaded on the
[Generation Page](/generate) where you can also set any specific hosting settings.
#### On your local installation
To generate a game on your local machine, make sure to install the Archipelago software, and ensure to select the
`Generator` component, as well as the `ROM setup` for any games you will want to play. Navigate to your Archipelago
installation (usually C:\ProgramData\Archipelago), and place the settings file you have either created or downloaded
from the website in the `Players` folder.
Run `ArchipelagoGenerate.exe`, and it will inform you whether the generation was successful or not. If successful, there
will be an output zip in the `output` folder (usually named something like `AP_XXXXX.zip`). This will contain all
relevant information to the session, including the spoiler log, if one was generated.
### Generating a multiplayer game
Archipelago is a multi-game multiworld architecture, so any number of players and any number of games may be used to
generate. Of note, the website currently has a maximum generated player count of 30. If you would like to generate a game
larger than that, it must be done on a local installation. Generally, it is better to generate locally to free server
resources, and host the resulting multiworld on the website.
#### Gather All Player YAMLs
All players that wish to play in the generated multiworld must have a YAML file which contains the settings that they
wish to play with.
wish to play with. One person should gather all files from all participants in the generated multiworld. It is possible
for a single player to have multiple games, or even multiple slots of a single game, but each YAML must have a unique
player name.
Typically, a single participant of the multiworld will gather the YAML files from all other players. After getting the
YAML files of each participant for your multiworld game they can be compressed into a ZIP folder to then be uploaded to
the multiworld generator page. Multiworld generator
page: [Archipelago Seed Generator Page](/generate)
#### On the website
#### Rolling a YAML Locally
Gather all player YAML files into a single place, and compress them into a zip file. This can be done by pressing
ctrl/cmd + clicking on each file until all are selected, right-clicking one of the files, and clicking
`compress to ZIP file` or `send to > compressed folder`.
It is possible to roll the multiworld locally, using a local Archipelago installation. This is done by entering the
installation directory of the Archipelago installation and placing each YAML file in the `Players` folder. If the folder
does not exist then it can be created manually.
Navigate to the [Generate Page](/generate), select the host settings you would like, click on `Upload File`, and
select the newly created zip from the opened window.
After filling the `Players` folder the `ArchipelagoGenerate.exe` program should be run in order to generate a
multiworld. The output of this process is placed in the `output` folder.
After some time, you will be redirected to a seed info page that will display the generated seed, the time it was
created, the number of players, the spoiler (if one was created) and all rooms created from this seed.
#### Changing local host settings for generation
#### On your local installation
It is possible to generate the multiworld locally, using a local Archipelago installation. This is done by entering the
Archipelago installation folder (usually C:\ProgramData\Archipelago) and placing each YAML file in the `Players` folder.
If the folder does not exist then it must be created manually. The files here should not be compressed.
After filling the `Players` folder, the `ArchipelagoGenerate.exe` program should be run in order to generate a
multiworld. The output of this process is placed in the `output` folder (usually named something like `AP_XXXXX.zip`).
##### Changing local host settings for generation
Sometimes there are various settings that you may want to change before rolling a seed such as enabling race mode,
auto-release, plando support, or setting a password.
All of these settings plus other options are able to be changed by modifying the `host.yaml` file in the Archipelago
All of these settings, plus other options, may be changed by modifying the `host.yaml` file in the Archipelago
installation folder. The settings chosen here are baked into the `.archipelago` file that gets output with the other
files after generation so if rolling locally ensure this file is edited to your liking *before* rolling the seed.
files after generation, so if you are rolling locally, ensure this file is edited to your liking **before** rolling the
seed. This file is overwritten when running the Archipelago Installation software. If you have changed settings in this
file, and would like to retain them, you may rename the file to `options.yaml`.
## Hosting an Archipelago Server
The output of rolling a YAML will be a `.archipelago` file which can be subsequently uploaded to the Archipelago host
game page. Archipelago host game page: [Archipelago Seed Upload Page](/uploads)
When a multiworld seed is generated, the multidata will be output as a `.archipelago`. If the game was generated locally,
a compressed folder will be in `/output` and will contain the `.archipelago`, the spoiler log, and any relevant files
for the generated games.
The `.archipelago` file may be run locally in order to host the multiworld on the local machine. This is done by
running `ArchipelagoServer.exe` and pointing the resulting file selection prompt to the `.archipelago` file that was
generated.
### Hosting on the website
After a seed page has been created on the website, clicking on `Create Room` will create a new server instance, and a
page that can be linked to the other players, so they can all see the connection info, obtain their data files, and
connect to the multiworld. Simply click on the url in the title bar, copy the link, and send it to your friends. Room
servers will shut down after 2 hours of inactivity, saving the multiworld progress. By returning to the room page, the
room server can be started back up, and the multiworld can continue to be played. If the link to the room is lost, the
creator of the room can find it on their [User Content Page](/user-content). The person who created the room becomes the
"owner" of the room, and as such has access to the server console. Clearing cookies will remove access to this console,
and there is no way to regain it. If a server password was set when generating the multiworld game, server admin
privileges may be gained by entering `!admin <password>` from the `ArchipelagoTextClient.exe`.
#### The room page
![Screenshot of Room Page](/static/generated/docs/Archipelago/example_room.png)
1. Server/Host Name
2. Port
3. Slot Name
4. Download link for data files
5. Link to tracker page for this player
#### From a website generated game
After generating a game on the website, you will be redirected to the seed page. To begin playing click on `Create Room`
to create a new room page and server for your game.
#### From a locally generated game
After generating a game, a compressed folder will be output to the `/output` folder. Go to the
[Archipelago Host Game Page](/uploads), click on `Upload File`, navigate to your Archipelago installation, and select
the generated folder. This will create a new seed page using the information from this folder.
### Hosting on a local machine
The `.archipelago` file may be extracted from the compressed file. Double-clicking the file will then open
`ArchipelagoServer.exe` in order to host the multiworld on the local machine. Alternatively, running
`ArchipelagoServer.exe` and pointing the resulting file selection prompt to the `.archipelago` file or the generated
compressed folder will begin hosting.
## Connecting to an Archipelago Server
The actual method of connection will vary depending on the game, so follow that game's setup guide, but all games will
use the same general connection info noted here.
### Connection Info
For connecting from the game to the server, the connection info is needed for any of the game clients. Games that use
data files will usually contain the connection info within these files, when hosted on the Archipelago website. If the
information needs to be entered manually, it is usually comprised of four different sections.
* `Server`, `Server Name` or `Host Name` are all used interchangeably as the domain or IP address of the server. If the
game is being hosted on the main Archipelago website this will be `archipelago.gg`. If the game is being hosted on your
own local machine `localhost` will work. If the game is being hosted on another person's computer then you enter that
person's public IP address.
* `Port` is which port on the domain or IP address the game is being hosted on. On the website room pages, this is
displayed as `archipelago.gg:<port>`. Most clients will accept that information being entered directly as is. If the
information needs to be entered separately, then the port is the sequence of numbers after the `:`, and the `:` does
not need to be entered. If a game is being hosted from the `ArchipelagoServer.exe`, this will default to `38281` but may
be changed in the `host.yaml`.
* `Slot Name` is the name of your player slot that you are connecting to. This is the same as the name that was set
when creating your [YAML file](#creating-a-yaml). If the game is hosted on the website, this is also displayed on the
room page. The name is case-sensitive.
* `Password` is the password set by the host in order to join the multiworld. By default, this will be empty and is almost
never required, but one can be set when generating the game. Generally, leave this field blank when it exists,
unless you know that a password was set, and what that password is.

View File

@ -1,33 +0,0 @@
# Using the Archipelago Website
This guide encompasses the use cases for rolling and hosting multiworld games on the Archipelago website. This guide
should only take a couple of minutes to read.
## Rolling the Seed On the Website
1. After gathering the YAML files together in one location, select all the files and compress them into a `.ZIP` file.
2. Next go to the "Generate Game" page. Generate game
page: [Archipelago Seed Generation Page](/generate). Here, you can adjust some server settings
such as release rules and the cost for a player to use a hint before generation.
3. After adjusting the host settings to your liking click on the Upload File button and using the explorer window that
opens, navigate to the location where you zipped the player files and upload this zip. The page will generate your
game and refresh multiple times to check on completion status.
4. After the generation completes you will be on a Seed Info page that provides the seed, the date/time of creation, a
link to the spoiler log, if available, and links to any rooms created from this seed.
5. To begin playing, click on "Create New Room", which will take you to the room page. From here you can navigate back
to the Seed Info page or to the Tracker page. Sharing the link to the room page with your friends will provide them
with the necessary info and files for them to connect to the multiworld.
## Hosting a Pre-Generated Multiworld on the Website
The easiest and most recommended method is to generate the game on the website which will allow you to create a private
room with all the necessary files you can share, as well as hosting the game and supporting item trackers for various
games.
If for some reason the seed was rolled on a machine, then either the resulting zip file or the
resulting `AP_XXXXX.archipelago` inside the zip file can be uploaded to the host game page. Host game
page: [Archipelago Seed Upload Page](/uploads)
This will give a page with the seed info and a link to the spoiler log, if it exists. Click on "Create New Room" and
then share the link to the resulting page the other players so that they can download their patches or mods. The room
will also have a link to a Multiworld Tracker and tell you what the players need to connect to from their clients.

View File

@ -55,7 +55,7 @@ To completely remove *OC2-Modding*, navigate to your game's installation folder
2. Export your yaml file and use it to generate a new randomized game
*For instructions on how to generate an Archipelago game, refer to the [Archipelago Web Guide](../../../../tutorial/Archipelago/using_website/en)*
*For instructions on how to generate an Archipelago game, refer to the [Archipelago Setup Guide](../../../../tutorial/Archipelago/setup/en)*
## Joining a MultiWorld Game

View File

@ -142,4 +142,4 @@ change to green. Congratulations on successfully joining a multiworld game!
## Hosting a MultiWorld game
The recommended way to host a game is to use our hosting service on the [seed generation page](/generate). Or check out
the Archipelago website guide for more information: [Archipelago Website Guide](/tutorial/Archipelago/using_website/en)
the Archipelago website guide for more information: [Archipelago Setup Guide](/tutorial/Archipelago/setup/en)