Create the session
An Archipelago session is a seed hosted in a room. The server plays a room that already exists. This page makes one.
- Choose the run options.
- Generate the seed with the Archipelago app.
- Upload the seed to
archipelago.ggand create a room. - Give the server the room address.
Mann vs Machine is not one of the games that ship with Archipelago. So the website cannot generate the seed for you. Your machine generates it, and the website hosts it.
1. Choose the run options
The run options decide how long the run is, how hard it is, and what ends it. The seed keeps them. To change one later, you need a new seed and a new room.
- Launcher: open Settings, then Player options, Rewards, Balancing and Missions.
- Docker: edit the
MVM_lines in.env. - Archipelago app by hand: edit the YAML file. See With the Archipelago app.
Run options describes every option.
2. Generate the seed
With the launcher
- Install the Archipelago app.
Use the same version the launcher pins.
tf2ap.exe -versionprints it. - In the launcher, open Settings, then Player options.
- Press Generate seed. The launcher writes
tf2.yaml, runs the generator, and opens the folder with the result. The result is a.zipnamed likeAP_53174869021847362095.zip.
If Generate seed says it cannot find the Archipelago app, set Archipelago app on the same page to the app's folder.
Check Run Selection, on the Missions page, checks the pool before you generate. It tells you whether the missions you picked hold enough checks for the items of the run.
With the Archipelago app
Use this to play with people in other games, or to edit the YAML by hand.
- Download
tf2_mvm.apworldfrom the release. - Double-click it, or copy it into the app's
custom_worlds/folder. - Get a player file. Either run
tf2ap.exe -yaml tf2.yamlin the launcher, or in the app's Launcher press Generate Template Options and takeTeam Fortress 2 Mann vs Machine.yaml. - Edit the file. Run options.
- Put it into the app's
Players/folder, beside the files of the other players. - Run Generate. The result is in the app's
output/folder.
The name in the file is the slot name. The launcher's Slot name, in
Settings, then Archipelago room, has to match it. The default is tf2.
With Docker
make seed
The command writes the seed into seed/ and prints its name. Keep the files
in seed/. A room you lose comes back from its file.
If the upload fails because of the version, read the Archipelago version in
the footer of the website. Set ARCHIPELAGO_VERSION in deploy/env/versions.env
to it and run make seed again.
3. Upload the seed and create a room
- Open archipelago.gg/uploads.
- Upload the
.zip. - Click Create New Room.
The website asks for no account. The room page shows:
- the room address, like
archipelago.gg:12345, - a link to the tracker, where your players watch the run from a browser.
Every new room gets a new port. Anybody with the address can join the room, so set a password on the room page if the address leaves your friends.
4. Give the server the room address
- Launcher: paste the address into Settings, then Archipelago room. Put the room password there too, if you set one. Save, then press Restart.
- Docker: write the two halves into
.env, thenmake restart:
AP_HOST=archipelago.gg
AP_PORT=12345
AP_TLS=true
AP_PASSWORD=
The status line of the launcher, or the bridge log, then says connected to archipelago.
The room page says tf2 (Team #1) playing Team Fortress 2 Mann vs Machine has
joined.
Host the session yourself
The Docker stack can host the room on your machine. Put these lines in .env:
COMPOSE_PROFILES=selfhost
AP_HOST=archipelago
AP_PORT=38281
AP_TLS=false
make up then starts a third container that generates the seed at its first
start and hosts it. You upload nothing.
What it costs:
- Your players get no room page and no tracker.
- A player in another game needs a second public port.
deploy/compose.ymlsays which.
Next: Run options, or Invite your friends if the session is ready.