From 5121b0d09bedbd115fbb1a495c663f7ea10a5d5c Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Mon, 29 Nov 2021 22:26:08 -0500 Subject: [PATCH 01/31] WebHost: Edit Archipelago category guides and enabled two-spaced nested lists. --- WebHostLib/static/assets/tutorial.js | 1 + .../archipelago/advanced_settings_en.md | 162 +++++++++--------- .../assets/tutorial/archipelago/setup_en.md | 103 +++++------ .../tutorial/archipelago/using_website_en.md | 26 +++ .../static/assets/tutorial/tutorials.json | 16 +- 5 files changed, 162 insertions(+), 146 deletions(-) create mode 100644 WebHostLib/static/assets/tutorial/archipelago/using_website_en.md diff --git a/WebHostLib/static/assets/tutorial.js b/WebHostLib/static/assets/tutorial.js index 72fa2b632e06..e943c6292116 100644 --- a/WebHostLib/static/assets/tutorial.js +++ b/WebHostLib/static/assets/tutorial.js @@ -23,6 +23,7 @@ window.addEventListener('load', () => { showdown.setOption('tables', true); showdown.setOption('strikethrough', true); showdown.setOption('literalMidWordUnderscores', true); + showdown.setOption('disableForced4SpacesIndentedSublists', true); tutorialWrapper.innerHTML += (new showdown.Converter()).makeHtml(results); adjustHeaderWidth(); diff --git a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md index 0432efb862e4..f217dc0bff3d 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md @@ -1,23 +1,23 @@ -# Advanced Game Options Guide +# Advanced YAML Guide +This guide covers more the more advanced options available in YAML files. This guide is intended for the user who is intent on editing their YAML file manually. This guide should take about 10 minutes to read. +If you would like to generate a basic, fully playable, YAML without editing a file then visit the settings page for the game you intend to play. -The Archipelago system generates games using player configuration files as input. Generally these are going to be -YAML files and each player will have one of these containing their custom settings for the randomized game they want to play. -On the website when you customize your settings from one of the game player settings pages which you can reach from the -[supported games page](/games). Clicking on the export settings button at the bottom will provide you with a pre-filled out -YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every -option with every available setting for the available options. +The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: https://archipelago.gg/games + +Clicking on the "Export Settings" button at the bottom-left will provide you with a pre-filled YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every option with every available setting for the available options. + +## YAML Overview +The Archipelago system generates games using player configuration files as input. These are going to be YAML files and each world will have one of these containing their custom settings for the game that world will play. ## YAML Formatting -YAML files are a format of human-readable markup config files. The basic syntax -of a yaml file will have `root` and then different levels of `nested` text that the generator "reads" in order to determine -your settings. To nest text, the correct syntax is **two spaces over** from its root option. A YAML file can be edited -with whatever text editor you choose to use though I personally recommend that you use [Sublime Text](https://www.sublimetext.com/). -This program out of the box supports the correct formatting for the YAML file, so you will be able to tab and get proper -highlighting for any potential errors made while editing the file. If using any other text editor such as Notepad or -Notepad++ whenever you move to nest an option that it is done with two spaces and not tabs. - -Typical YAML format will look as follows: +YAML files are a format of human-readable config files. The basic syntax of a yaml file will have a `root` node and then different levels of `nested` nodes that the generator reads in order to determine your settings. + +To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: https://www.sublimetext.com + +This program out of the box supports the correct formatting for the YAML file, so you will be able to use the tab key and get proper highlighting for any potential errors made while editing the file. If using any other text editor you should ensure your indentation is done correctly with two spaces. + +A typical YAML file will look like: ```yaml root_option: nested_option_one: @@ -28,69 +28,60 @@ root_option: option_two_setting_two: 43 ``` -In Archipelago YAML options are always written out in full lowercase with underscores separating any words. The numbers -following the colons here are weights. The generator will read the weight of every option the roll that option that many -times, the next option as many times as its numbered and so forth. For the above example `nested_option_one` will have -`option_one_setting_one` 1 time and `option_one_setting_two` 0 times so `option_one_setting_one` is guaranteed to occur. -For `nested_option_two`, `option_two_setting_one` will be rolled 14 times and `option_two_setting_two` will be rolled 43 -times against each other. This means `option_two_setting_two` will be more likely to occur but it isn't guaranteed adding -more randomness and "mystery" to your settings. Every configurable setting supports weights. +In Archipelago, YAML options are always written out in full lowercase with underscores separating any words. The numbers following the colons here are weights. The generator will read the weight of every option the roll that option that many times, the next option as many times as its numbered and so forth. + +For the above example `nested_option_one` will have `option_one_setting_one` 1 time and `option_one_setting_two` 0 times so `option_one_setting_one` is guaranteed to occur. + +For `nested_option_two`, `option_two_setting_one` will be rolled 14 times and `option_two_setting_two` will be rolled 43 times against each other. This means `option_two_setting_two` will be more likely to occur, but it isn't guaranteed adding more randomness and "mystery" to your settings. + +Every configurable setting supports weights. ### Root Options -Currently there are only a few options that are root options. Everything else should be nested within one of these root -options or in some cases nested within other nested options. The only options that should exist in root are `description`, -`name`, `game`, `requires`, `accessibility`, `progression_balancing`, `triggers`, and the name of the games you want -settings for. -* `description` is ignored by the generator and is simply a good way for you to organize if you have multiple files using -this to detail the intention of the file. -* `name` is the player name you would like to use and is used for your slot data to connect with most games. This can also -be filled with multiple names each having a weight to it. -* `game` is where either your chosen game goes or if you would like can be filled with multiple games each with different -weights. -* `requires` details different requirements from the generator for the YAML to work as you expect it to. Generally this -is good for detailing the version of Archipelago this YAML was prepared for as if it is rolled on an older version may be -missing settings and as such will not work as expected. If any plando is used in the file then requiring it here to ensure -it will be used is good practice. -* `accessibility` determines the level of access to the game the generation will expect you to have in order to reach your -completion goal. This supports `items`, `locations`, and `none` and is set to `locations` by default. - * `items` will guarantee you can acquire all items in your world but may not be able to access all locations. This mostly -comes into play if there is any entrance shuffle in the seed as locations without items in them can be placed in areas -that make them unreachable. - * `none` will only guarantee that the seed is beatable. You will be guaranteed able to finish the seed logically but -may not be able to access all locations or acquire all items. A good example of this is having a big key in the big chest +Currently, there are only a few options that are root options. Everything else should be nested within one of these root options or in some cases nested within other nested options. The only options that should exist in root are `description`, `name`, `game`, `requires`, `accessibility`, `progression_balancing`, `triggers`, and the name of the games you want settings for. + +* `description` is ignored by the generator and is simply a good way for you to organize if you have multiple files using this to detail the intention of the file. + +* `name` is the player name you would like to use and is used for your slot data to connect with most games. This can also be filled with multiple names each having a weight to it. + +* `game` is where either your chosen game goes or if you would like can be filled with multiple games each with different weights. + +* `requires` details different requirements from the generator for the YAML to work as you expect it to. Generally this is good for detailing the version of Archipelago this YAML was prepared for as if it is rolled on an older version may be missing settings and as such will not work as expected. If any plando is used in the file then requiring it here to ensure it will be used is good practice. + +* `accessibility` determines the level of access to the game the generation will expect you to have in order to reach your completion goal. This supports `items`, `locations`, and `none` and is set to `locations` by default. + * `locations` will guarantee all locations are accessible in your world. + * `items` will guarantee you can acquire all items in your world but may not be able to access all locations. This mostly comes into play if there is any entrance shuffle in the seed as locations without items in them can be placed in areas that make them unreachable. + * `none` will only guarantee that the seed is beatable. You will be guaranteed able to finish the seed logically but may not be able to access all locations or acquire all items. A good example of this is having a big key in the big chest in a dungeon in ALTTP making it impossible to get and finish the dungeon. -* `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This -primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that -players almost always have something to do. This can be turned `on` or `off` and is `on` by default. -* `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more -about this [here](/tutorial/archipelago/triggers/en). + +* `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that players almost always have something to do. This can be turned `on` or `off` and is `on` by default. + +* `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: https://archipelago.gg/tutorial/archipelago/triggers/en ### Game Options -One of your root settings will be the name of the game you would like to populate with settings in the format -`GameName`. since it is possible to give a weight to any option it is possible to have one file that can generate a seed -for you where you don't know which game you'll play. For these cases you'll want to fill the game options for every game -that can be rolled by these settings. If a game can be rolled it **must** have a settings section even if it is empty. +One of your root settings will be the name of the game you would like to populate with settings. Since it is possible to give a weight to any option it is possible to have one file that can generate a seed for you where you don't know which game you'll play. For these cases you'll want to fill the game options for every game that can be rolled by these settings. If a game can be rolled it **must** have a settings section even if it is empty. #### Universal Game Options Some options in Archipelago can be used by every game but must still be placed within the relevant game's section. -Currently, these options are `start_inventory`, `start_hints`, `local_items`, `non_local_items`, `start_location_hints`, -`exclude_locations`, and various [plando options](tutorial/archipelago/plando/en). -* `start_inventory` will give any items defined here to you at the beginning of your game. The format for this must be -the name as it appears in the game files and the amount you would like to start with. For example `Rupees(5): 6` which -will give you 30 rupees. -* `start_hints` gives you free server hints for the defined item/s at the beginning of the game allowing you to hint for -the location without using any hint points. + +Currently, these options are `start_inventory`, `start_hints`, `local_items`, `non_local_items`, `start_location_hints`, `exclude_locations`, and various plando options. + +See the plando guide for more info on plando options. Plando guide: https://archipelago.gg/tutorial/archipelago/plando/en + +* `start_inventory` will give any items defined here to you at the beginning of your game. The format for this must be the name as it appears in the game files and the amount you would like to start with. For example `Rupees(5): 6` which will give you the item `Rupees(5)` six times, totalling 30 rupees. + +* `start_hints` gives you free server hints for the defined item/s at the beginning of the game allowing you to hint for the location without using any hint points. + * `local_items` will force any items you want to be in your world instead of being in another world. -* `non_local_items` is the inverse of `local_items` forcing any items you want to be in another world and won't be located -in your own. -* `start_location_hints` allows you to define a location which you can then hint for to find out what item is located in -it to see how important the location is. -* `exclude_locations` lets you define any locations that you don't want to do and during generation will force a "junk" -item which isn't necessary for progression to go in these locations. -### Example +* `non_local_items` is the inverse of `local_items` forcing any items you want to be in another world and won't be located in your own. + +* `start_location_hints` allows you to define a location which you can then hint for to find out what item is located in it to see how important the location is. + +* `exclude_locations` lets you define any locations that you don't want to do and during generation will force a "junk" item which isn't necessary for progression to go in these locations. + +### Example YAML ```yaml @@ -133,28 +124,33 @@ triggers: #### This is a fully functional yaml file that will do all the following things: * `description` gives us a general overview so if we pull up this file later we can understand the intent. + * `name` is `Example Player` and this will be used in the server console when sending and receiving items. + * `game` is set to `A Link to the Past` meaning that is what game we will play with this file. + * `requires` is set to require release version 0.2.0 or higher. -* `accesibility` is set to `none` which will set this seed to beatable only meaning some locations and items may be -completely inaccessible but the seed will still be completable. -* `progression_balancing` is set on meaning we will likely receive important items earlier increasing the chance of having -things to do. + +* `accesibility` is set to `none` which will set this seed to beatable only meaning some locations and items may be completely inaccessible but the seed will still be completable. + +* `progression_balancing` is set on meaning we will likely receive important items earlier increasing the chance of having things to do. + * `A Link to the Past` defines a location for us to nest all the game options we would like to use for our game `A Link to the Past`. -* `smallkey_shuffle` is an option for A Link to the Past which determines how dungeon small keys are shuffled. In this example -we have a 1/2 chance for them to either be placed in their original dungeon and a 1/2 chance for them to be placed anywhere -amongst the multiworld. -* `start_inventory` defines an area for us to determine what items we would like to start the seed with. For this example -we have: + +* `smallkey_shuffle` is an option for A Link to the Past which determines how dungeon small keys are shuffled. In this example we have a 1/2 chance for them to either be placed in their original dungeon and a 1/2 chance for them to be placed anywhere amongst the multiworld. + +* `start_inventory` defines an area for us to determine what items we would like to start the seed with. For this example we have: * `Pegasus Boots: 1` which gives us 1 copy of the Pegasus Boots * `Bombs (3)` gives us 2 packs of 3 bombs or 6 total bombs + * `start_hints` gives us a starting hint for the hammer available at the beginning of the multiworld which we can use with no cost. -* `local_items` forces the `Bombos`, `Ether`, and `Quake` medallions to all be placed within our own world, meaning we -have to find it ourselves. + +* `local_items` forces the `Bombos`, `Ether`, and `Quake` medallions to all be placed within our own world, meaning we have to find it ourselves. + * `non_local_items` forces the `Moon Pearl` to be placed in someone else's world, meaning we won't be able to find it. -* `start_location_hints` gives us a starting hint for the `Spike Cave` location available at the beginning of the multiworld -that can be used for no cost. + +* `start_location_hints` gives us a starting hint for the `Spike Cave` location available at the beginning of the multiworld that can be used for no cost. + * `exclude_locations` forces a not important item to be placed on the `Cave 45` location. -* `triggers` allows us to define a trigger such that if our `smallkey_shuffle` option happens to roll the `any_world` -result it will also ensure that `bigkey_shuffle`, `map_shuffle`, and `compass_shuffle` are also forced to the `any_world` -result. \ No newline at end of file + +* `triggers` allows us to define a trigger such that if our `smallkey_shuffle` option happens to roll the `any_world` result it will also ensure that `bigkey_shuffle`, `map_shuffle`, and `compass_shuffle` are also forced to the `any_world` result. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md index ec8cc2734814..cfd1dafb966c 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md @@ -1,79 +1,58 @@ # 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. ## Installing the Archipelago software The most recent public release of Archipelago can be found [here](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 install. -The generator allows you to generate multiworld games on your computer. The ROM setups are optional but are required if +Run the exe file, and after accepting the license agreement you will be prompted on 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. The server will allow you to host the multiworld on your machine but this also requires you to port forward. The +files. + +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 you use to connect your game to the multiworld. If the +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 relevant tutorial. +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 +### What is a YAML? +YAML is the file format which Archipelago uses in order to configure a player's world. It allows you to dictate which 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: https://archipelago.gg/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: https://archipelago.gg/games + 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 -slot name and, if the relevant game requires it, files to associate it with that multiworld. If multiple people plan to -play in one world cooperatively then they will only need one YAML for their coop world, but if each player is planning on -playing their own game then they will each need a YAML. These YAML files can be generated by going to the relevant game's -player settings page, entering the name they want to use for the game, setting the options to what they would like to -play with and then clicking on the export settings button. This will then download a YAML file that will contain all of -these options and this can then be given to whoever is going to generate the game. - -### Gather all player YAMLS +native coop system or using Archipelago's coop support. Each world will hold one slot in the multiworld and will have a +slot name and, if the relevant game requires it, files to associate it with that multiworld. + +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 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. -A YAML is a file which contains human readable markup. In other words, this is a settings file kind of like an INI file or a TOML file. -Each player can go to the game's player settings page in order to determine the settings how they want them and then download a YAML file containing these settings. -After getting the YAML files of each participant for your multiworld game, these can all either be placed together in the -`Archipelago\Players` folder or compressed into a ZIP folder to then be uploaded to the [website generator](/generate). -If rolling locally ensure that the folder is clear of any files you do not wish to include in the game such as the -included default player settings files. + +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: https://archipelago.gg/generate + +#### Rolling a YAML Locally + +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. + +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. The output wll be a `.archipelago` file which can be subsequently uploaded to the Archipelago host game page. Archipelago host game page: https://archipelago.gg/uploads + +The `.AP` 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. #### 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-forfeit, 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 base `Archipelago` folder. The settings chosen here are baked into -the serverdata 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. +auto-forfeit, plando support, or setting a password. -### Rolling the seed - -#### On the Website -After gathering the YAML files together in one location, select all of the files and compress them into a .zip folder. -Next go to the [Start Playing](/start-playing) page and click on `generate a randomized game` to reach the website generator. -Here, you can adjust some server settings such as forfeit rules and the cost for a player to use a hint before generation. -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. 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. -To begin playing, click on `Create New Room`, which will take you to the room page. From here you can navigate back to thse -Seed Info page or to the Tracker page. Sharing the link to this page with your friends will provide them with the -necessary info and files for them to connect to the multiworld. - -#### Rolling using the generation program -After gathering the YAML files together in the `Archipelago\Players` folder, run the program `ArchipelagoGenerate.exe` -in the base `Archipelago` folder. This will then open a console window and either silently close itself or spit out an -error. If you receive an error, it is likely due to an error in the YAML file. If the error is unhelpful in figuring -out the issue asking in the ***#tech-support*** channel of our Discord for help with finding it is highly recommended. -The generator will put a zip folder into your `Archipelago\output` folder with the format `AP_XXXXXXXXX`.zip. -This contains the patch files and relevant mods for the players as well as the serverdata for the host. - -## Hosting a multiworld - -### Uploading the seed to 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 [upload page](/uploads). This will give a page with the seed info and have a -link to the spoiler if it exists. Click on Create New room and then share the link for the room with 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. - -### Hosting a seed locally -For this we'll assume you have already port forwarding `38281` and have generated a seed that is still in the `outputs` -folder. Next, you'll want to run `ArchipelagoServer.exe`. A window will open in order to open the multiworld data for the -game. You can either use the generated zip folder or extract the .archipelago file and use it. If everything worked correctly the console window should tell you it's now hosting a game with the IP, port, and password that clients will need in order to connect. -Extract the patch and mod files then send those to your friends, and you're done! +All of these settings plus other options are able to 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. diff --git a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md new file mode 100644 index 000000000000..b0ea5111a92e --- /dev/null +++ b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md @@ -0,0 +1,26 @@ +# 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: https://archipelago.gg/generate. Here, you can adjust some server settings such as forfeit 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: https://archipelago.gg/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. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/tutorials.json b/WebHostLib/static/assets/tutorial/tutorials.json index 67f33e161283..7286ff769b44 100644 --- a/WebHostLib/static/assets/tutorial/tutorials.json +++ b/WebHostLib/static/assets/tutorial/tutorials.json @@ -17,7 +17,21 @@ ] }, { - "name": "Using Advanced Settings", + "name": "Archipelago Website User Guide", + "description": "A guide to using the Archipelago website to generate multiworlds or host pre-generated multiworlds.", + "files": [ + { + "language": "English", + "filename": "archipelago/using_website.md", + "link": "archipelago/using_website/en", + "authors": [ + "alwaysintreble" + ] + } + ] + }, + { + "name": "Advanced YAML Guide", "description": "A guide to reading yaml files and editing them to fully customize your game.", "files": [ { From ac020199307bb91971cb38edb1e2f87b874a161b Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Mon, 29 Nov 2021 22:34:28 -0500 Subject: [PATCH 02/31] WebHost: Begin removing unnecessary line breaks. --- WebHostLib/static/assets/faq/faq_en.md | 43 ++++++---------- .../assets/tutorial/archipelago/plando_en.md | 50 ++++++------------- .../assets/tutorial/archipelago/setup_en.md | 30 +++-------- .../tutorial/archipelago/triggers_en.md | 19 ++----- 4 files changed, 43 insertions(+), 99 deletions(-) diff --git a/WebHostLib/static/assets/faq/faq_en.md b/WebHostLib/static/assets/faq/faq_en.md index 5159fff78ecb..9772de0c4fe6 100644 --- a/WebHostLib/static/assets/faq/faq_en.md +++ b/WebHostLib/static/assets/faq/faq_en.md @@ -2,51 +2,36 @@ ## What is a randomizer? A randomizer is a modification of a video game which reorganizes the items required to progress through the game. -A normal play-through of a game might require you to use item A to unlock item B, then C, and so forth. In a -randomized game, you might first find item C, then A, then B. +A normal play-through of a game might require you to use item A to unlock item B, then C, and so forth. In a randomized game, you might first find item C, then A, then B. -This transforms games from a linear experience into a puzzle, presenting players with a new challenge each time they -play a randomized game. Putting items in non-standard locations can require the player to think about the game world -and the items they encounter in new and interesting ways. +This transforms games from a linear experience into a puzzle, presenting players with a new challenge each time they play a randomized game. Putting items in non-standard locations can require the player to think about the game world and the items they encounter in new and interesting ways. ## What happens if an item is placed somewhere it is impossible to get? -The randomizer has many strict sets of rules it must follow when generating a game. One of the functions of these -rules is to ensure items necessary to complete the game will be accessible to the player. Many games also have a -subset of rules allowing certain items to be placed in normally unreachable locations, provided the player has -indicated they are comfortable exploiting certain glitches in the game. +The randomizer has many strict sets of rules it must follow when generating a game. One of the functions of these rules is to ensure items necessary to complete the game will be accessible to the player. Many games also have a subset of rules allowing certain items to be placed in normally unreachable locations, provided the player has indicated they are comfortable exploiting certain glitches in the game. ## What is a multi-world? -While a randomizer shuffles a game, a multi-world randomizer shuffles that game for multiple players. For example, -in a two player multi-world, players A and B each get their own randomized version of a game, called seeds. In each -player's game, they may find items which belong to the other player. If player A finds an item which belongs to -player B, the item will be sent to player B's world over the internet. +While a randomizer shuffles a game, a multi-world randomizer shuffles that game for multiple players. For example, in a two player multi-world, players A and B each get their own randomized version of a game, called seeds. In each player's game, they may find items which belong to the other player. If player A finds an item which belongs to player B, the item will be sent to player B's world over the internet. -This creates a cooperative experience during multi-world games, requiring players to rely upon each other to complete -their game. +This creates a cooperative experience during multi-world games, requiring players to rely upon each other to complete their game. ## What happens if a person has to leave early? -If a player must leave early, they can use Archipelago's forfeit system. When a player forfeits their game, all -the items in that game which belong to other players are sent out automatically, so other players can continue to -play. +If a player must leave early, they can use Archipelago's forfeit system. When a player forfeits their game, all the items in that game which belong to other players are sent out automatically, so other players can continue to play. ## What does multi-game mean? -While a multi-world game traditionally requires all players to be playing the same game, a multi-game multi-world -allows players to randomize any of a number of supported games, and send items between them. This allows players of -different games to interact with one another in a single multiplayer environment. +While a multi-world game traditionally requires all players to be playing the same game, a multi-game multi-world allows players to randomize any of a number of supported games, and send items between them. This allows players of different games to interact with one another in a single multiplayer environment. ## Can I generate a single-player game with Archipelago? -Yes. All our supported games can be generated as single-player experiences, and so long as you download the software, -the website is not required to generate them. +Yes. All our supported games can be generated as single-player experiences, and so long as you download the software, the website is not required to generate them. ## How do I get started? -If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, -please join our [Discord server](https://discord.gg/8Z65BR2). There are always people ready to answer any questions +If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join our discord server at https://discord.gg/archipelago. There are always people ready to answer any questions you might have. ## I want to add a game to the Archipelago randomizer. How do I do that? -The best way to get started is to take a look at our [code on GitHub](https://github.com/ArchipelagoMW/Archipelago). -There, you will find examples of games in the [worlds](https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds) -folder, as well as some [documentation](https://github.com/ArchipelagoMW/Archipelago/tree/main/docs) on our -network interfaces. +The best way to get started is to take a look at our code on GitHub at https://github.com/ArchipelagoMW/Archipelago. + +There you will find examples of games in the worlds folder at https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds. + +You may also find developer documentation in the docs folder at https://github.com/ArchipelagoMW/Archipelago/tree/main/docs. If you have more questions, feel free to ask in the **#archipelago-dev** channel on our Discord. diff --git a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md index 7b2cdeee9486..88e2d083109d 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md @@ -2,25 +2,20 @@ ## What is Plando? The purposes of randomizers is to randomize the items in a game to give a new experience. -Plando takes this concept and changes it up by allowing you to plan out certain aspects of the game by placing certain -items in certain locations, certain bosses in certain rooms, edit text for certain NPCs/signs, or even force certain region -connections. Each of these options are going to be detailed separately as `item plando`, `boss plando`, `text plando`, -and `connection plando`. Every game in archipelago supports item plando but the other plando options are only supported +Plando takes this concept and changes it up by allowing you to plan out certain aspects of the game by placing certain items in certain locations, certain bosses in certain rooms, edit text for certain NPCs/signs, or even force certain region +connections. Each of these options are going to be detailed separately as `item plando`, `boss plando`, `text plando`, and `connection plando`. Every game in archipelago supports item plando but the other plando options are only supported by certain games. Currently, Minecraft and LTTP both support connection plando, but only LTTP supports text and boss plando. ### Enabling Plando On the website plando will already be enabled. If you will be generating the game locally plando features must be enabled (opt-in). -* To opt-in go to the archipelago installation (default: `C:\ProgramData\Archipelago`), open the host.yaml with a text -editor and find the `plando_options` key. The available plando modules can be enabled by adding them after this such as -`plando_options: bosses, items, texts, connections`. +* To opt-in go to the archipelago installation (default: `C:\ProgramData\Archipelago`), open the host.yaml with a text editor and find the `plando_options` key. The available plando modules can be enabled by adding them after this such as `plando_options: bosses, items, texts, connections`. ## Item Plando -Item plando allows a player to place an item in a specific location or specific locations, place multiple items into -a list of specific locations both in their own game or in another player's game. **Note that there's a very good chance that +Item plando allows a player to place an item in a specific location or specific locations, place multiple items into a list of specific locations both in their own game or in another player's game. **Note that there's a very good chance that cross-game plando could very well be broken i.e. placing on of your items in someone else's world playing a different game.** + * The options for item plando are `from_pool`, `world`, `percentage`, `force`, and either item and location, or items and locations. - * `from_pool` determines if the item should be taken *from* the item pool or *added* to it. This can be true or false -and defaults to true if omitted. + * `from_pool` determines if the item should be taken *from* the item pool or *added* to it. This can be true or false and defaults to true if omitted. * `world` is the target world to place the item in. * It gets ignored if only one world is generated. * Can be a number, name, true, false, or null. False is the default. @@ -29,13 +24,11 @@ and defaults to true if omitted. * If set to true it will be any player's world besides your own. * If set to false it will target your own world. * If set to null it will target a random world in the multiworld. - * `force` determines whether the generator will fail if the item can't be placed in the location can be true, false, -or silent. Silent is the default. + * `force` determines whether the generator will fail if the item can't be placed in the location can be true, false, or silent. Silent is the default. * If set to true the item must be placed and the generator will throw an error if it is unable to do so. * If set to false the generator will log a warning if the placement can't be done but will still generate. * If set to silent and the placement fails it will be ignored entirely. - * `percentage` is the percentage chance for the relevant block to trigger. This can be any value from 0 to 100 and if -omitted will default to 100. + * `percentage` is the percentage chance for the relevant block to trigger. This can be any value from 0 to 100 and if omitted will default to 100. * Single Placement is when you use a plando block to place a single item at a single location. * `item` is the item you would like to place and `location` is the location to place it. * Multi Placement uses a plando block to place multiple items in multiple locations until either list is exhausted. @@ -120,26 +113,19 @@ plando_items: percentage: 80 force: true ``` -1. This block has a 50% chance to occur, and if it does will place either the Empire Orb or Radiant Orb on another player's -Starter Chest 1 and removes the chosen item from the item pool. -2. This block will always trigger and will place the player's swords, bow, magic meter, strength upgrades, and hookshots -in their own dungeon major item chests. +1. This block has a 50% chance to occur, and if it does will place either the Empire Orb or Radiant Orb on another player's Starter Chest 1 and removes the chosen item from the item pool. +2. This block will always trigger and will place the player's swords, bow, magic meter, strength upgrades, and hookshots in their own dungeon major item chests. 3. This block will always trigger and will lock boss relics on the bosses. -4. This block has an 80% chance of occuring and when it does will place all but 1 of the items randomly among the four -locations chosen here. +4. This block has an 80% chance of occuring and when it does will place all but 1 of the items randomly among the four locations chosen here. ## Boss Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the -[relevant guide](/tutorial/zelda3/plando/en) +As this is currently only supported by A Link to the Past instead of explaining here please refer to the [relevant guide](/tutorial/zelda3/plando/en) ## Text Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the -[relevant guide](/tutorial/zelda3/plando/en) +As this is currently only supported by A Link to the Past instead of explaining here please refer to the [relevant guide](/tutorial/zelda3/plando/en) ## Connections Plando -This is currently only supported by Minecraft and A Link to the Past. As the way that these games interact with -their connections is different I will only explain the basics here while more specifics for Link to the Past connection -plando can be found in its plando guide. +This is currently only supported by Minecraft and A Link to the Past. As the way that these games interact with their connections is different I will only explain the basics here while more specifics for Link to the Past connection plando can be found in its plando guide. * The options for connections are `percentage`, `entrance`, `exit`, and `direction`. Each of these options support subweights. * `percentage` is the percentage chance for this connection from 0 to 100 and defaults to 100. * Every connection has an `entrance` and an `exit`. These can be unlinked like in A Link to the Past insanity entrance shuffle. @@ -172,9 +158,5 @@ plando_connections: direction: both ``` -1. These connections are decoupled so going into the lake hylia cave shop will take you to the inside of cave 45 and -when you leave the interior you will exit to the cave 45 ledge. Going into the cave 45 entrance will then take you to the -lake hylia cave shop. Walking into the entrance for the old man cave and Agahnim's Tower entrance will both take you to -their locations as normal but leaving old man cave will exit at Agahnim's Tower. -2. This will force a nether fortress and a village to be the overworld structures for your game. Note that for the Minecraft -connection plando to work structure shuffle must be enabled. \ No newline at end of file +1. These connections are decoupled so going into the lake hylia cave shop will take you to the inside of cave 45 and when you leave the interior you will exit to the cave 45 ledge. Going into the cave 45 entrance will then take you to the lake hylia cave shop. Walking into the entrance for the old man cave and Agahnim's Tower entrance will both take you to their locations as normal but leaving old man cave will exit at Agahnim's Tower. +2. This will force a nether fortress and a village to be the overworld structures for your game. Note that for the Minecraft connection plando to work structure shuffle must be enabled. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md index cfd1dafb966c..05c311591ab2 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md @@ -2,20 +2,14 @@ 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. ## Installing the Archipelago software -The most recent public release of Archipelago can be found [here](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 install. +The most recent public release of Archipelago can be found [here](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 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. +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. -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 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. +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. ## Generating a game @@ -27,13 +21,9 @@ YAML is a format very similar to JSON however it is made to be more human-readab ### 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: https://archipelago.gg/games -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 -slot name and, if the relevant game requires it, files to associate it with that multiworld. +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 slot name and, if the relevant game requires it, files to associate it with that multiworld. -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. +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 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. @@ -49,10 +39,6 @@ After filling the `Players` folder the `ArchipelagoGenerate.exe` program should The `.AP` 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. #### 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-forfeit, plando support, or setting a password. +Sometimes there are various settings that you may want to change before rolling a seed such as enabling race mode, auto-forfeit, 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 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. +All of these settings plus other options are able to 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. diff --git a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md index 2e59d8278d48..d7e1d8fe29b1 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md @@ -1,18 +1,12 @@ # Archipelago Triggers Guide ## What are triggers? -Triggers allow you to customize your game settings by allowing you to define certain options or even a variety of -settings to occur or "trigger" under certain conditions. These are essentially "if, then statements" for options in your game. -A good example of what you can do with triggers is the custom -[mercenary mode](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) -that was created using entirely triggers and plando. For more information on plando you can reference -[this guide](/tutorial/archipelago/plando/en) or [this guide](/tutorial/zelda3/plando/en). +Triggers allow you to customize your game settings by allowing you to define certain options or even a variety of settings to occur or "trigger" under certain conditions. These are essentially "if, then statements" for options in your game. A good example of what you can do with triggers is the custom [mercenary mode](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) that was created using entirely triggers and plando. For more information on plando you can reference [this guide](/tutorial/archipelago/plando/en) or [this guide](/tutorial/zelda3/plando/en). ## Trigger use Triggers have to be defined in the root of the yaml file meaning it must be outside of a game section. The best place to do this is the bottom of the yaml. -- Triggers comprise of the trigger section and then each trigger must have an `option_category`, `option_name`, and -`option_result` from which it will react to and then an `options` section where the definition of what will happen. +- Triggers comprise of the trigger section and then each trigger must have an `option_category`, `option_name`, and `option_result` from which it will react to and then an `options` section where the definition of what will happen. - `option_category` is the defining section from which the option is defined in. - Example: `A Link to the Past` - This is the root category the option is located in. If the option you're triggering off of is in root then you @@ -22,10 +16,8 @@ would use `null`, otherwise this is the game for which you want this option trig - This can be any option from any category defined in the yaml file in either root or a game section except for `game`. - `option_result` is the result of this option setting from which you would like to react. - Example: `15` - - Each trigger must be used for exactly one option result. If you would like the same thing to occur with multiple -results you would need multiple triggers for this. -- `options` is where you define what will happen when this is detected. This can be something as simple as ensuring -another option also gets selected or placing an item in a certain location. + - Each trigger must be used for exactly one option result. If you would like the same thing to occur with multiple results you would need multiple triggers for this. +- `options` is where you define what will happen when this is detected. This can be something as simple as ensuring another option also gets selected or placing an item in a certain location. - Example: ```yaml A Link to the Past: @@ -53,8 +45,7 @@ The above examples all together will end up looking like this: Rupees(300): 2 ``` -For this example if the generator happens to roll 15 shuffled in shop item slots for your game you'll be granted 600 rupees at the beginning. -These can also be used to change other options. +For this example if the generator happens to roll 15 shuffled in shop item slots for your game you'll be granted 600 rupees at the beginning. These can also be used to change other options. For example: ```yaml From 56ef918a10cbdb3a2502f8184f78c1a4a830f5f5 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Tue, 30 Nov 2021 19:07:38 -0500 Subject: [PATCH 03/31] WebHost: Remove unnecessary linebreaks and reformat links in game info pages. --- .../assets/gameInfo/en_A Link to the Past.md | 16 +++++--------- .../static/assets/gameInfo/en_Factorio.md | 22 +++++-------------- .../assets/gameInfo/en_Final Fantasy.md | 13 +++-------- .../static/assets/gameInfo/en_Minecraft.md | 3 +-- .../assets/gameInfo/en_Ocarina of Time.md | 3 +-- .../assets/gameInfo/en_Risk of Rain 2.md | 19 +++++----------- .../assets/gameInfo/en_Secret of Evermore.md | 20 +++++------------ .../static/assets/gameInfo/en_Subnautica.md | 12 ++++------ .../assets/gameInfo/en_Super Metroid.md | 13 ++++------- .../static/assets/gameInfo/en_Timespinner.md | 17 +++++--------- 10 files changed, 41 insertions(+), 97 deletions(-) diff --git a/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md b/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md index 9faa46e07115..52c94bef6c44 100644 --- a/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md +++ b/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md @@ -1,26 +1,20 @@ # A Link to the Past ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game -is always able to be completed, but because of the item shuffle the player may need to access certain areas before -they would in the vanilla game. +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. ## What items and locations get shuffled? -All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could -contain any of those items may have their contents changed. +All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to -limit certain items to your own world. +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. ## What does another world's item look like in LttP? Items belonging to other worlds are represented by a Power Star from Super Mario World. ## When the player receives an item, what happens? -When the player receives an item, Link will hold the item above his head and display it to the world. It's good for -business! +When the player receives an item, Link will hold the item above his head and display it to the world. It's good for business! diff --git a/WebHostLib/static/assets/gameInfo/en_Factorio.md b/WebHostLib/static/assets/gameInfo/en_Factorio.md index 1a4ee3fc7e0f..ba3df2ee21b3 100644 --- a/WebHostLib/static/assets/gameInfo/en_Factorio.md +++ b/WebHostLib/static/assets/gameInfo/en_Factorio.md @@ -1,29 +1,19 @@ # Factorio ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -In Factorio, the research tree is shuffled, causing certain technologies to be obtained in a non-standard order. -Recipe costs, technology requirements, and science pack requirements may also be shuffled at the player's discretion. +In Factorio, the research tree is shuffled, causing certain technologies to be obtained in a non-standard order. Recipe costs, technology requirements, and science pack requirements may also be shuffled at the player's discretion. ## What Factorio items can appear in other players' worlds? -Factorio's technologies are removed from its tech tree and placed into other players' worlds. When those technologies -are found, they are sent back to Factorio along with, optionally, free samples of those technologies. +Factorio's technologies are removed from its tech tree and placed into other players' worlds. When those technologies are found, they are sent back to Factorio along with, optionally, free samples of those technologies. ## What is a free sample? -A free sample is a single or stack of items in Factorio, granted by a technology received from another world. For -example, receiving the technology -`Portable Solar Panel` may also grant the player a stack of portable solar panels, -and place them directly into the player's inventory. +A free sample is a single or stack of items in Factorio, granted by a technology received from another world. For example, receiving the technology `Portable Solar Panel` may also grant the player a stack of portable solar panels, and place them directly into the player's inventory. ## What does another world's item look like in Factorio? -In Factorio, items which need to be sent to other worlds appear in the tech tree as new research items. They are -represented by the Archipelago icon, and must be researched as if it were a normal technology. Upon successful -completion of research, the item will be sent to its home world. +In Factorio, items which need to be sent to other worlds appear in the tech tree as new research items. They are represented by the Archipelago icon, and must be researched as if it were a normal technology. Upon successful completion of research, the item will be sent to its home world. ## When the engineer receives an item, what happens? -When the player receives a technology, it is instantly learned and able to be crafted. A message will appear in the -chat log to notify the player, and if free samples are enabled the player may also receive some items directly to -their inventory. +When the player receives a technology, it is instantly learned and able to be crafted. A message will appear in the chat log to notify the player, and if free samples are enabled the player may also receive some items directly to their inventory. diff --git a/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md b/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md index 40628ce17d58..1c30bd1f06c7 100644 --- a/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md +++ b/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md @@ -1,16 +1,10 @@ # Final Fantasy 1 (NES) ## Where is the settings page? -Unlike most games on Archipelago.gg, Final Fantasy 1's settings are controlled entirely by the original randomzier. -You can find an exhaustive list of documented settings [here](https://finalfantasyrandomizer.com/) +Unlike most games on Archipelago.gg, Final Fantasy 1's settings are controlled entirely by the original randomzier. You can find an exhaustive list of documented settings on the FFR website: [https://finalfantasyrandomizer.com](https://finalfantasyrandomizer.com) ## What does randomization do to this game? -A better questions is what isn't randomized at this point. Enemies stats and spell, character spells, shop inventory -and boss stats and spells are all commonly randomized. Unlike most other randomizers it is also most standard to shuffle -progression items and non-progression items into separate pools and then redistribute them to their respective -locations. So ,for example, Princess Sarah may have the CANOE instead of the LUTE; however, she will never have a Heal -Pot or some armor. There are plenty of other things that can be randomized on our -[main randomizer site](https://finalfantasyrandomizer.com/) +A better questions is what isn't randomized at this point. Enemies stats and spell, character spells, shop inventory and boss stats and spells are all commonly randomized. Unlike most other randomizers it is also most standard to shuffle progression items and non-progression items into separate pools and then redistribute them to their respective locations. So ,for example, Princess Sarah may have the CANOE instead of the LUTE; however, she will never have a Heal Pot or some armor. There are plenty of other things that can be randomized on the main randomizer site: [https://finalfantasyrandomizer.com](https://finalfantasyrandomizer.com/) Some features are not currently supported by AP. A non-exhaustive list includes: - Shard Hunt @@ -20,5 +14,4 @@ Some features are not currently supported by AP. A non-exhaustive list includes: Currently, only progression items can appear in other players' worlds. Armor, Weapons and Consumable Items can not. ## What does another world's item look like in Final Fantasy -All local and remote items appear the same. It will say that you received an item and then BOTH the client log and -the emulator will display what was found external to the in-game text box. +All local and remote items appear the same. It will say that you received an item and then BOTH the client log and the emulator will display what was found external to the in-game text box. diff --git a/WebHostLib/static/assets/gameInfo/en_Minecraft.md b/WebHostLib/static/assets/gameInfo/en_Minecraft.md index ac438ef2e36b..ade814be5eec 100644 --- a/WebHostLib/static/assets/gameInfo/en_Minecraft.md +++ b/WebHostLib/static/assets/gameInfo/en_Minecraft.md @@ -1,8 +1,7 @@ # Minecraft ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? Recipes are removed from the crafting book and shuffled into the item pool. It can also optionally change which diff --git a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md index 6de5cca4b78b..467585aad89b 100644 --- a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md +++ b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md @@ -1,8 +1,7 @@ # Ocarina of Time ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game diff --git a/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md b/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md index 86949169884e..a749848de303 100644 --- a/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md +++ b/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md @@ -1,14 +1,10 @@ # Risk of Rain 2 ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -Risk of Rain is already a random game, by virtue of being a roguelite. The Archipelago mod implements pure multiworld -functionality in which certain chests (made clear via a location check progress bar) will send an item out to the -multiworld. The items that _would have been_ in those chests will be returned to the Risk of Rain player via grants -by other players in other worlds. +Risk of Rain is already a random game, by virtue of being a roguelite. The Archipelago mod implements pure multiworld functionality in which certain chests (made clear via a location check progress bar) will send an item out to the multiworld. The items that _would have been_ in those chests will be returned to the Risk of Rain player via grants by other players in other worlds. ## What Risk of Rain items can appear in other players' worlds? The Risk of Rain items are: @@ -22,15 +18,10 @@ The Risk of Rain items are: Each item grants you a random in-game item from the category it belongs to. -When an item is granted by another world to the Risk of Rain player (one of the items listed above) then a random -in-game item of that tier will appear in the Risk of Rain player's inventory. If the item grant is an `Equipment` -and the player already has an equipment item equipped then the _item that was equipped_ will be dropped on the ground -and _the new equipment_ will take it's place. (If you want the old one back, pick it up.) +When an item is granted by another world to the Risk of Rain player (one of the items listed above) then a random in-game item of that tier will appear in the Risk of Rain player's inventory. If the item grant is an `Equipment` and the player already has an equipment item equipped then the _item that was equipped_ will be dropped on the ground and _the new equipment_ will take it's place. (If you want the old one back, pick it up.) ## What does another world's item look like in Risk of Rain? -When the Risk of Rain player fills up their location check bar then the next spawned item will become an item grant for another -player's world. The item in Risk of Rain will disappear in a poof of smoke and the grant will automatically go out to the multiworld. +When the Risk of Rain player fills up their location check bar then the next spawned item will become an item grant for another player's world. The item in Risk of Rain will disappear in a poof of smoke and the grant will automatically go out to the multiworld. ## What is the item pickup step? -The item pickup step is a YAML setting which allows you to set how many items you need to spawn before the _next_ -item that is spawned disappears (in a poof of smoke) and goes out to the multiworld. +The item pickup step is a YAML setting which allows you to set how many items you need to spawn before the _next_ item that is spawned disappears (in a poof of smoke) and goes out to the multiworld. diff --git a/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md b/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md index 255cbc72e105..9298eb256e5e 100644 --- a/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md +++ b/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md @@ -1,29 +1,21 @@ # Secret of Evermore ## Where is the settings page? -The player settings page for this game is located here. It contains all options -necessary to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -Items which would normally be acquired throughout the game have been moved around! Progression logic remains, -so the game is always able to be completed. However, because of the item shuffle, the player may need to access certain -areas before they would in the vanilla game. For example, the Windwalker (flying machine) is accessible as soon as any -weapon is obtained. +Items which would normally be acquired throughout the game have been moved around! Progression logic remains, so the game is always able to be completed. However, because of the item shuffle, the player may need to access certain areas before they would in the vanilla game. For example, the Windwalker (flying machine) is accessible as soon as any weapon is obtained. -Additional help can be found in the [guide](https://github.com/black-sliver/evermizer/blob/feat-mw/guide.md). +Additional help can be found in the Evermizer guide: [https://github.com/black-sliver/evermizer/blob/feat-mw/guide.md](https://github.com/black-sliver/evermizer/blob/feat-mw/guide.md). ## What items and locations get shuffled? -All gourds/chests/pots, boss drops and alchemists are shuffled. Alchemy ingredients, sniff spot items, call bead spells -and the dog can be randomized using yaml options. +All gourds/chests/pots, boss drops and alchemists are shuffled. Alchemy ingredients, sniff spot items, call bead spells and the dog can be randomized using yaml options. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed in another player's world. -Specific items can be limited to your own world using plando. +Any of the items which can be shuffled may also be placed in another player's world. Specific items can be limited to your own world using plando. ## What does another world's item look like in Secret of Evermore? Secret of Evermore will display "Sent an Item". Check the client output if you want to know which. ## What happens when the player receives an item? -When the player receives an item, a popup will appear to show which item was received. Items won't be received while a -script is active such as when visiting Nobilia Market or during most Boss Fights. Once all scripts have ended, items -will be received. +When the player receives an item, a popup will appear to show which item was received. Items won't be received while a script is active such as when visiting Nobilia Market or during most Boss Fights. Once all scripts have ended, items will be received. diff --git a/WebHostLib/static/assets/gameInfo/en_Subnautica.md b/WebHostLib/static/assets/gameInfo/en_Subnautica.md index 4007741149b6..3b63c3ac8e44 100644 --- a/WebHostLib/static/assets/gameInfo/en_Subnautica.md +++ b/WebHostLib/static/assets/gameInfo/en_Subnautica.md @@ -1,26 +1,22 @@ # Subnautica ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -The most noticeable change is the complete removal of freestanding technologies. The technology blueprints normally -awarded from scanning those items have been shuffled into location checks throughout the AP item pool. +The most noticeable change is the complete removal of freestanding technologies. The technology blueprints normally awarded from scanning those items have been shuffled into location checks throughout the AP item pool. ## What is the goal of Subnautica when randomized? The goal remains unchanged. Cure the plague, build the Neptune Escape Rocket, and escape into space. ## What items and locations get shuffled? -Most of the technologies the player will need throughout the game will be shuffled. Location checks in Subnautica are -data pads and technology lockers. +Most of the technologies the player will need throughout the game will be shuffled. Location checks in Subnautica are data pads and technology lockers. ## Which items can be in another player's world? Most technologies may be shuffled into another player's world. ## What does another world's item look like in Subnautica? -Location checks in Subnautica are data pads and technology lockers. Opening one of these will send an item to -another player's world. +Location checks in Subnautica are data pads and technology lockers. Opening one of these will send an item to another player's world. ## When the player receives a technology, what happens? When the player receives a technology, the chat log displays a notification the technology has been received. diff --git a/WebHostLib/static/assets/gameInfo/en_Super Metroid.md b/WebHostLib/static/assets/gameInfo/en_Super Metroid.md index 3ec2ff500e23..362c4aafdb9e 100644 --- a/WebHostLib/static/assets/gameInfo/en_Super Metroid.md +++ b/WebHostLib/static/assets/gameInfo/en_Super Metroid.md @@ -1,21 +1,16 @@ # Super Metroid ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game -is always able to be completed, but because of the item shuffle the player may need to access certain areas before -they would in the vanilla game. +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. ## What items and locations get shuffled? -All power-ups and ammunition can be shuffled, and all locations in the game which could contain any of those items -may have their contents changed. +All power-ups and ammunition can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to -limit certain items to your own world. +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. ## What does another world's item look like in Super Metroid? A unique item sprite has been added to the game to represent items belonging to another world. diff --git a/WebHostLib/static/assets/gameInfo/en_Timespinner.md b/WebHostLib/static/assets/gameInfo/en_Timespinner.md index 577b164d9ddb..dee709a59428 100644 --- a/WebHostLib/static/assets/gameInfo/en_Timespinner.md +++ b/WebHostLib/static/assets/gameInfo/en_Timespinner.md @@ -1,28 +1,23 @@ # Timespinner ## Where is the settings page? -The player settings page for this game is located here. It contains all the options -you need to configure and export a config file. +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game -is always able to be completed, but because of the item shuffle the player may need to access certain areas before -they would in the vanilla game. All rings and spells are also randomized into those item locations, therefor you can no longer craft them at the alchemist +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. All rings and spells are also randomized into those item locations, therefore you can no longer craft them at the alchemist ## What is the goal of Timespinner when randomized? The goal remains unchanged. Kill the Sandman\Nightmare! ## What items and locations get shuffled? -All main inventory items, orbs, collectables, and familiers can be shuffled, and all locations in the game which could -contain any of those items may have their contents changed. +All main inventory items, orbs, collectables, and familiars can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to -limit certain items to your own world. +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. ## What does another world's item look like in Timespinner? -Items belonging to other worlds are represented by the vanilla item [Elemental Beads](https://timespinnerwiki.com/Use_Items), Elemental Beads have no use in the randomizer +Items belonging to other worlds are represented by the vanilla item Elemental Beads \([Wiki Link](https://timespinnerwiki.com/Use_Items)\), Elemental Beads have no use in the randomizer. ## When the player receives an item, what happens? -When the player receives an item, the same items popup will be displayed as when you would normally obtain the item +When the player receives an item, the same items popup will be displayed as when you would normally obtain the item. From fc210c2d1804fd098713b14312a7c926e409f7fa Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Tue, 30 Nov 2021 19:34:39 -0500 Subject: [PATCH 04/31] WebHost: Make URLs explicit in FAQ and Archipelago category tutorials. Remove unnecessary newlines and other tweaks. --- WebHostLib/static/assets/faq/faq_en.md | 9 ++- .../archipelago/advanced_settings_en.md | 8 +-- .../assets/tutorial/archipelago/plando_en.md | 60 +++++++++---------- .../assets/tutorial/archipelago/setup_en.md | 12 ++-- .../tutorial/archipelago/triggers_en.md | 18 ++++-- .../tutorial/archipelago/using_website_en.md | 4 +- 6 files changed, 60 insertions(+), 51 deletions(-) diff --git a/WebHostLib/static/assets/faq/faq_en.md b/WebHostLib/static/assets/faq/faq_en.md index 9772de0c4fe6..3505f7a1fd86 100644 --- a/WebHostLib/static/assets/faq/faq_en.md +++ b/WebHostLib/static/assets/faq/faq_en.md @@ -1,8 +1,7 @@ # Frequently Asked Questions ## What is a randomizer? -A randomizer is a modification of a video game which reorganizes the items required to progress through the game. -A normal play-through of a game might require you to use item A to unlock item B, then C, and so forth. In a randomized game, you might first find item C, then A, then B. +A randomizer is a modification of a video game which reorganizes the items required to progress through the game. A normal play-through of a game might require you to use item A to unlock item B, then C, and so forth. In a randomized game, you might first find item C, then A, then B. This transforms games from a linear experience into a puzzle, presenting players with a new challenge each time they play a randomized game. Putting items in non-standard locations can require the player to think about the game world and the items they encounter in new and interesting ways. @@ -28,10 +27,10 @@ If you are ready to start randomizing games, or want to start playing your favor you might have. ## I want to add a game to the Archipelago randomizer. How do I do that? -The best way to get started is to take a look at our code on GitHub at https://github.com/ArchipelagoMW/Archipelago. +The best way to get started is to take a look at our code on GitHub at [https://github.com/ArchipelagoMW/Archipelago](https://github.com/ArchipelagoMW/Archipelago). -There you will find examples of games in the worlds folder at https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds. +There you will find examples of games in the worlds folder at [https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds](https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds). -You may also find developer documentation in the docs folder at https://github.com/ArchipelagoMW/Archipelago/tree/main/docs. +You may also find developer documentation in the docs folder at [https://github.com/ArchipelagoMW/Archipelago/tree/main/docs](https://github.com/ArchipelagoMW/Archipelago/tree/main/docs). If you have more questions, feel free to ask in the **#archipelago-dev** channel on our Discord. diff --git a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md index f217dc0bff3d..aaf42c61f82e 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md @@ -3,7 +3,7 @@ This guide covers more the more advanced options available in YAML files. This g If you would like to generate a basic, fully playable, YAML without editing a file then visit the settings page for the game you intend to play. -The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: https://archipelago.gg/games +The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: [https://archipelago.gg/games](https://archipelago.gg/games) Clicking on the "Export Settings" button at the bottom-left will provide you with a pre-filled YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every option with every available setting for the available options. @@ -13,7 +13,7 @@ The Archipelago system generates games using player configuration files as input ## YAML Formatting YAML files are a format of human-readable config files. The basic syntax of a yaml file will have a `root` node and then different levels of `nested` nodes that the generator reads in order to determine your settings. -To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: https://www.sublimetext.com +To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: [https://www.sublimetext.com](https://www.sublimetext.com) This program out of the box supports the correct formatting for the YAML file, so you will be able to use the tab key and get proper highlighting for any potential errors made while editing the file. If using any other text editor you should ensure your indentation is done correctly with two spaces. @@ -55,7 +55,7 @@ in a dungeon in ALTTP making it impossible to get and finish the dungeon. * `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that players almost always have something to do. This can be turned `on` or `off` and is `on` by default. -* `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: https://archipelago.gg/tutorial/archipelago/triggers/en + * `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: [https://archipelago.gg/tutorial/archipelago/triggers/en](https://archipelago.gg/tutorial/archipelago/triggers/en) ### Game Options @@ -67,7 +67,7 @@ Some options in Archipelago can be used by every game but must still be placed w Currently, these options are `start_inventory`, `start_hints`, `local_items`, `non_local_items`, `start_location_hints`, `exclude_locations`, and various plando options. -See the plando guide for more info on plando options. Plando guide: https://archipelago.gg/tutorial/archipelago/plando/en +See the plando guide for more info on plando options. Plando guide: [https://archipelago.gg/tutorial/archipelago/plando/en](https://archipelago.gg/tutorial/archipelago/plando/en) * `start_inventory` will give any items defined here to you at the beginning of your game. The format for this must be the name as it appears in the game files and the amount you would like to start with. For example `Rupees(5): 6` which will give you the item `Rupees(5)` six times, totalling 30 rupees. diff --git a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md index 88e2d083109d..7697c731d3a7 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md @@ -1,14 +1,11 @@ # Archipelago Plando Guide +This guide details the use of the plando modules available with Archipelago. This guide is intended for a more advanced user who has more in-depth knowledge of the randomizer they're playing as well as experience editing YAML files. This guide should take about 10 minutes to read. ## What is Plando? -The purposes of randomizers is to randomize the items in a game to give a new experience. -Plando takes this concept and changes it up by allowing you to plan out certain aspects of the game by placing certain items in certain locations, certain bosses in certain rooms, edit text for certain NPCs/signs, or even force certain region -connections. Each of these options are going to be detailed separately as `item plando`, `boss plando`, `text plando`, and `connection plando`. Every game in archipelago supports item plando but the other plando options are only supported -by certain games. Currently, Minecraft and LTTP both support connection plando, but only LTTP supports text and boss plando. +The purposes of randomizers is to randomize the items in a game to give a new experience. Plando takes this concept and changes it up by allowing you to plan out certain aspects of the game by placing certain items in certain locations, certain bosses in certain rooms, edit text for certain NPCs/signs, or even force certain region connections. Each of these options are going to be detailed separately as `item plando`, `boss plando`, `text plando`, and `connection plando`. Every game in archipelago supports item plando but the other plando options are only supported by certain games. Currently, Minecraft and LTTP both support connection plando, but only LTTP supports text and boss plando. ### Enabling Plando -On the website plando will already be enabled. If you will be generating the game locally plando features must be enabled (opt-in). -* To opt-in go to the archipelago installation (default: `C:\ProgramData\Archipelago`), open the host.yaml with a text editor and find the `plando_options` key. The available plando modules can be enabled by adding them after this such as `plando_options: bosses, items, texts, connections`. +On the website plando will already be enabled. If you will be generating the game locally plando features must be enabled manually (opt-in). To opt-in go to the archipelago installation directory (default: `C:\ProgramData\Archipelago`), open the host.yaml with a text editor and find the `plando_options` key. The available plando modules can be enabled by adding them after this such as `plando_options: bosses, items, texts, connections`. ## Item Plando Item plando allows a player to place an item in a specific location or specific locations, place multiple items into a list of specific locations both in their own game or in another player's game. **Note that there's a very good chance that @@ -37,29 +34,30 @@ cross-game plando could very well be broken i.e. placing on of your items in som * Using the multi placement method, placements are picked randomly. ### Available Items -* [A Link to the Past](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) -* [Factorio Non-Progressive](https://wiki.factorio.com/Technologies) Note that these use the *internal names*. For example, `advanced-electronics` -* [Factorio Progressive](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374) -* [Minecraft](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14) -* [Ocarina of Time](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61) -* [Risk of Rain 2](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8) -* [Slay the Spire](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13) -* [Subnautica](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json) -* [Timespinner](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11) +* A Link to the Past: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) +* Factorio Non-Progressive: [https://wiki.factorio.com/Technologies](https://wiki.factorio.com/Technologies) + * Note that these use the *internal names*. For example, `advanced-electronics` +* Factorio Progressive: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374) +* Minecraft: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14) +* Ocarina of Time: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61) +* Risk of Rain 2: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8) +* Slay the Spire: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13) +* Subnautica: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json) +* Timespinner: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11) ### Available Locations -* [A Link to the Past](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429) -* [Factorio](https://wiki.factorio.com/Technologies) Same as items -* [Minecraft](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18) -* [Ocarina of Time](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38) -* [Risk of Rain 2](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17) This is a special -case. The locations are "ItemPickup[number]" up to the maximum set in the yaml. -* [Slay the Spire](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py) -* [Subnautica](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json) -* [Timespinner](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13) - - -A list of all available items and locations can also be found in the [server's datapackage](/api/datapackage). +* A Link to the Past: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429) +* Factorio: [https://wiki.factorio.com/Technologies](https://wiki.factorio.com/Technologies) +* Minecraft: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18) +* Ocarina of Time: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38) +* Risk of Rain 2: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17) + * This is a special case. The locations are "ItemPickup[number]" up to the maximum set in the yaml. +* Slay the Spire: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py) +* Subnautica: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json) +* Timespinner: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13) + + +A list of all available items and locations can also be found in the server's datapackage. Data package JSON: [click here](/api/datapackage). ### Examples ```yaml plando_items: @@ -119,10 +117,10 @@ plando_items: 4. This block has an 80% chance of occuring and when it does will place all but 1 of the items randomly among the four locations chosen here. ## Boss Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the [relevant guide](/tutorial/zelda3/plando/en) +As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [click here](/tutorial/zelda3/plando/en) ## Text Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the [relevant guide](/tutorial/zelda3/plando/en) +As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [click here](/tutorial/zelda3/plando/en) ## Connections Plando This is currently only supported by Minecraft and A Link to the Past. As the way that these games interact with their connections is different I will only explain the basics here while more specifics for Link to the Past connection plando can be found in its plando guide. @@ -131,9 +129,9 @@ This is currently only supported by Minecraft and A Link to the Past. As the way * Every connection has an `entrance` and an `exit`. These can be unlinked like in A Link to the Past insanity entrance shuffle. * `direction` can be `both`, `entrance`, or `exit` and determines in which direction this connection will operate. -[Link to the Past connections](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) +Link to the Past connections: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) -[Minecraft connections](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62) +Minecraft connections: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62) ### Examples ```yaml diff --git a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md index 05c311591ab2..7bf6353cdfba 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md @@ -2,7 +2,9 @@ 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. ## Installing the Archipelago software -The most recent public release of Archipelago can be found [here](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 install. +The most recent public release of Archipelago can be found on the GitHub Releases page. GitHub Releases page: [https://github.com/ArchipelagoMW/Archipelago/releases](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 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. @@ -16,10 +18,10 @@ game/games you plan to play are available here go ahead and install these as wel ### What is a YAML? YAML is the file format which Archipelago uses in order to configure a player's world. It allows you to dictate which 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: https://archipelago.gg/mysterycheck +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: [https://archipelago.gg/mysterycheck](https://archipelago.gg/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: https://archipelago.gg/games +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: [https://archipelago.gg/games](https://archipelago.gg/games) 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 slot name and, if the relevant game requires it, files to associate it with that multiworld. @@ -28,13 +30,13 @@ If multiple people plan to play in one world cooperatively then they will only n ### 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. -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: https://archipelago.gg/generate +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: [https://archipelago.gg/generate](https://archipelago.gg/generate) #### Rolling a YAML Locally 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. -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. The output wll be a `.archipelago` file which can be subsequently uploaded to the Archipelago host game page. Archipelago host game page: https://archipelago.gg/uploads +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. The output wll be a `.archipelago` file which can be subsequently uploaded to the Archipelago host game page. Archipelago host game page: [https://archipelago.gg/uploads](https://archipelago.gg/uploads) The `.AP` 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. diff --git a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md index d7e1d8fe29b1..9758d03ce14e 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md @@ -1,12 +1,22 @@ # Archipelago Triggers Guide +This guide details the use of the Archipelago YAML trigger system. This guide is intended for a more advanced user with more in-depth knowledge of Archipelago YAML options as well as experience editing YAML files. This guide should take about 5 minutes to read. ## What are triggers? -Triggers allow you to customize your game settings by allowing you to define certain options or even a variety of settings to occur or "trigger" under certain conditions. These are essentially "if, then statements" for options in your game. A good example of what you can do with triggers is the custom [mercenary mode](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) that was created using entirely triggers and plando. For more information on plando you can reference [this guide](/tutorial/archipelago/plando/en) or [this guide](/tutorial/zelda3/plando/en). +Triggers allow you to customize your game settings by allowing you to define one or many options which only occur under specific conditions. These are essentially "if, then" statements for options in your game. +A good example of what you can do with triggers is the custom mercenary mode YAML that was created using entirely triggers and plando. + +Mercenary mode YAML: [https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) + +For more information on plando you can reference the general plando guide or the Link to the Past plando guide. + +General plando guide: [click here](/tutorial/archipelago/plando/en) + +Link to the Past plando guide: [click here](/tutorial/zelda3/plando/en) ## Trigger use -Triggers have to be defined in the root of the yaml file meaning it must be outside of a game section. +Triggers have to be defined in the root of the yaml file meaning it must be outside a game section. The best place to do this is the bottom of the yaml. -- Triggers comprise of the trigger section and then each trigger must have an `option_category`, `option_name`, and `option_result` from which it will react to and then an `options` section where the definition of what will happen. +- Triggers comprise the trigger section and then each trigger must have an `option_category`, `option_name`, and `option_result` from which it will react to and then an `options` section where the definition of what will happen. - `option_category` is the defining section from which the option is defined in. - Example: `A Link to the Past` - This is the root category the option is located in. If the option you're triggering off of is in root then you @@ -57,4 +67,4 @@ For example: Timespinner: Inverted: true ``` -In this example if your world happens to roll SpecificKeycards then your game will also start in inverted. \ No newline at end of file +In this example if your world happens to roll `SpecificKeycards` then your game will also start in inverted. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md index b0ea5111a92e..ebffca157066 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md @@ -3,7 +3,7 @@ This guide encompasses the use cases for rolling and hosting multiworld games on ## 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: https://archipelago.gg/generate. Here, you can adjust some server settings such as forfeit rules and the cost for a player to use a hint before generation. +2. Next go to the "Generate Game" page. Generate game page: [https://archipelago.gg/generate](https://archipelago.gg/generate). Here, you can adjust some server settings such as forfeit 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. @@ -18,7 +18,7 @@ The easiest and most recommended method is to generate the game on the website w 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: https://archipelago.gg/uploads +inside the zip file can be uploaded to the host game page. Host game page: [https://archipelago.gg/uploads](https://archipelago.gg/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 From 52d8da16f6fcdc4d7e9182609d088e32502daf60 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Tue, 30 Nov 2021 20:00:05 -0500 Subject: [PATCH 05/31] WebHost: Alter FF1, Factorio, and Archipelago setup guides to consolidate information and remove unnecessary linebreaks. --- .../assets/tutorial/archipelago/setup_en.md | 9 +- .../assets/tutorial/factorio/setup_en.md | 73 +++++------- .../assets/tutorial/ff1/multiworld_en.md | 108 ++++-------------- 3 files changed, 57 insertions(+), 133 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md index 7bf6353cdfba..5bc92492a61d 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md @@ -36,11 +36,14 @@ Typically, a single participant of the multiworld will gather the YAML files fro 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. -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. The output wll be a `.archipelago` file which can be subsequently uploaded to the Archipelago host game page. Archipelago host game page: [https://archipelago.gg/uploads](https://archipelago.gg/uploads) - -The `.AP` 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. +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. #### 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-forfeit, 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 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. + +## 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: [https://archipelago.gg/uploads](https://archipelago.gg/uploads) + +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. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/factorio/setup_en.md b/WebHostLib/static/assets/tutorial/factorio/setup_en.md index 0586278f092d..47e9c2c1d371 100644 --- a/WebHostLib/static/assets/tutorial/factorio/setup_en.md +++ b/WebHostLib/static/assets/tutorial/factorio/setup_en.md @@ -2,36 +2,33 @@ ## Required Software ##### Players -- [Factorio](https://factorio.com) - Needed by Players and Hosts +- Factorio: [https://factorio.com](https://factorio.com) + - Needed by Players and Hosts ##### Server Hosts -- [Factorio](https://factorio.com) - Needed by Players and Hosts -- [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) - Needed by Hosts +- Factorio: [https://factorio.com](https://factorio.com) + - Needed by Players and Hosts +- Archipelago: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) + - Needed by Hosts ## Create a Config (.yaml) File ### What is a config file and why do I need one? -Your config file contains a set of configuration options which provide the generator with information about how it -should generate your game. Each player of a multiworld will provide their own config file. This setup allows each -player to enjoy an experience customized for their taste, and different players in the same multiworld can all have -different options. +Your config file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. ### Where do I get a config file? -The [Player Settings](/games/Factorio/player-settings) page on the website allows you to configure -your personal settings and export a config file from them. +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Factorio player settings page: [click here](/games/Factorio/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on -the [YAML Validator](/mysterycheck) page. +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML Validator page: [click here](/mysterycheck) ## Connecting to Someone Else's Factorio Game -Connecting to someone else's game is the simplest way to play Factorio with Archipelago. It allows multiple -people to play in a single world, all contributing to the completion of the seed. +Connecting to someone else's game is the simplest way to play Factorio with Archipelago. It allows multiple people to play in a single world, all contributing to the completion of the seed. 1. Acquire the Archipelago mod for this seed. It should be named `AP_*.zip`, where `*` is the seed number. 2. Copy the mod file into your Factorio `mods` folder, which by default is located at: -`C:\Users\YourName\AppData\Roaming\Factorio\mods` -3. Get the server address from the person hosting the game you are joining +`C:\Users\\AppData\Roaming\Factorio\mods` +3. Get the server address from the person hosting the game you are joining. 4. Launch Factorio 5. Click on "Multiplayer" in the main menu 6. Click on "Connect to address" @@ -41,8 +38,7 @@ people to play in a single world, all contributing to the completion of the seed ## Prepare to Host Your Own Factorio Game ### Defining Some Terms -In Archipelago, multiple Factorio worlds may be played simultaneously. Each of these worlds must be hosted by a -Factorio server, which is connected to the Archipelago Server via middleware. +In Archipelago, multiple Factorio worlds may be played simultaneously. Each of these worlds must be hosted by a Factorio server, which is connected to the Archipelago Server via middleware. This guide uses the following terms to refer to the software: - **Factorio Client** - The Factorio instance which will be used to play the game. @@ -59,48 +55,39 @@ Factorio Clients may connect to this server. - A running modded Factorio Client ### Dedicated Server Setup -To play Factorio with Archipelago, a dedicated server setup is required. This dedicated Factorio Server must be -installed separately from your main Factorio Client installation. The recommended way to install two instances -of Factorio on your computer is to download the Factorio installer file directly from -[factorio.com](https://factorio.com/download). +To play Factorio with Archipelago, a dedicated server setup is required. This dedicated Factorio Server must be installed separately from your main Factorio Client installation. The recommended way to install two instances of Factorio on your computer is to download the Factorio installer file directly from factorio.com: [https://factorio.com/download](https://factorio.com/download). #### If you purchased Factorio on Steam, GOG, etc. -You can register your copy of Factorio on [factorio.com](https://factorio.com/). You will be required to -create an account, if you have not done so already. As part of that process, you will be able to enter your -Factorio product code. This will allow you to download the game directly from their website. +You can register your copy of Factorio on factorio.com: [https://factorio.com/](https://factorio.com/). You will be required to create an account, if you have not done so already. As part of that process, you will be able to enter your Factorio product code. This will allow you to download the game directly from their website. #### Download the Standalone Version -It is recommended to download the standalone version of Factorio for use as a dedicated server. Doing so prevents -any potential conflicts with your currently-installed version of Factorio. Download the file by clicking on the -button appropriate to your operating system, and extract the folder to a convenient location (we recommend -C:\Factorio or similar).
- +It is recommended to download the standalone version of Factorio for use as a dedicated server. Doing so prevents any potential conflicts with your currently-installed version of Factorio. Download the file by clicking on the button appropriate to your operating system, and extract the folder to a convenient location (we recommend `C:\Factorio` or similar). -Next, you should launch your Factorio Server by running `factorio.exe`, which is located at: `bin/x64/factorio.exe`. -You will be asked to log-in to your Factorio account using the same credentials you used on Factorio's website. -After you have logged in, you may close the game. +![](/static/assets/tutorial/factorio/factorio-download.png) + +Next, you should launch your Factorio Server by running `factorio.exe`, which is located at: `bin/x64/factorio.exe`. You will be asked to log in to your Factorio account using the same credentials you used on Factorio's website. After you have logged in, you may close the game. #### Configure your Archipelago Installation -You must modify your `host.yaml` file inside your Archipelago installation directory so that it points to your -standalone Factorio executable. Here is an example of the appropriate setup, note the double `\\` are required: +You must modify your `host.yaml` file inside your Archipelago installation directory so that it points to your standalone Factorio executable. Here is an example of the appropriate setup, note the double `\\` are required: ```yaml factorio_options: executable: C:\\factorio\\bin\\x64\\factorio" ``` -With all that complete, you are now able to... +This allows you to host your own Factorio game. -## Host Your Own Factorio Game +## Hosting Your Own Factorio Game 1. Obtain the Factorio mod for this Archipelago seed. It should be named `AP_*.zip`, where `*` is the seed number. 2. Install the mod into your Factorio Server by copying the zip file into the `mods` folder. 3. Install the mod into your Factorio Client by copying the zip file into the `mods` folder, which is likely located at `C:\Users\YourName\AppData\Roaming\Factorio\mods`. 4. Obtain the Archipelago Server address from the website's host room, or from the server host. -5. Run your Archipelago Client, which is named `ArchilepagoFactorioClient.exe`. This was installed along with -Archipelago if you chose to include it during the installation process. +5. Run your Archipelago Client, which is named `ArchilepagoFactorioClient.exe`. This was installed along with Archipelago if you chose to include it during the installation process. 6. Enter `/connect [server-address]` into the input box at the bottom of the Archipelago Client and press "Enter" -
+ +![](/static/assets/tutorial/factorio/connect-to-ap-server.png) + 7. Launch your Factorio Client 8. Click on "Multiplayer" in the main menu 9. Click on "Connect to address" @@ -113,7 +100,7 @@ server, you can also issue the `!help` command to learn about additional command ## Allowing Other People to Join Your Game 1. Ensure your Archipelago Client is running. 2. Ensure port `34197` is forwarded to the computer running the Archipelago Client. -3. Obtain your IP address by visiting [this website](https://whatismyip.com/). +3. Obtain your IP address by visiting whatismyip.com: [https://whatismyip.com/](https://whatismyip.com/). 4. Provide your IP address to anyone you want to join your game, and have them follow the steps for "Connecting to Someone Else's Factorio Game" above. @@ -123,6 +110,6 @@ The contents of this file may help you troubleshoot an issue on your own and is people in Archipelago. ## Additional Resources -- [Alternate Tutorial by Umenen](https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4) -- [Factorio Speedrun Guide](https://www.youtube.com/watch?v=ExLrmK1c7tA) -- [Factorio Wiki](https://wiki.factorio.com/) +- Alternate Tutorial by Umenen: [https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4](https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4) +- Factorio Speedrun Guide: [https://www.youtube.com/watch?v=ExLrmK1c7tA](https://www.youtube.com/watch?v=ExLrmK1c7tA) +- Factorio Wiki: [https://wiki.factorio.com/](https://wiki.factorio.com/) diff --git a/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md b/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md index 543b33df527d..b8bdce8a6324 100644 --- a/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md @@ -1,14 +1,14 @@ # Final Fantasy 1 (NES) Multiworld Setup Guide ## Required Software -- The FF1Client which is bundled with [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) -- The [BizHawk](http://tasvideos.org/BizHawk.html) emulator. Versions 2.3.1 and higher are supported. - Version 2.7 is recommended -- Your Final Fantasy (USA Edition) ROM file, probably named `Final Fantasy (USA).nes`. Neither Archipelago.gg nor the - Final Fantasy Randomizer Community can supply you with this. +- The FF1Client + - Bundled with Archipelago: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) +- The BizHawk emulator. Versions 2.3.1 and higher are supported. Version 2.7 is recommended + - [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) +- Your legally obtained Final Fantasy (USA Edition) ROM file, probably named `Final Fantasy (USA).nes`. Neither Archipelago.gg nor the Final Fantasy Randomizer Community can supply you with this. ## Installation Procedures -1. Download and install the latest version of [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) +1. Download and install the latest version of Archipelago. 1. On Windows, download Setup.Archipelago..exe and run it 2. Assign Bizhawk version 2.3.1 or higher as your default program for launching `.nes` files. 1. Extract your Bizhawk folder to your Desktop, or somewhere you will remember. Below are optional additional @@ -18,97 +18,31 @@ 3. Scroll to the bottom of the list and click the grey text **Look for another App on this PC** 4. Browse for `EmuHawk.exe` located inside your Bizhawk folder (from step 1) and click **Open**. -## Playing a Multiworld -Playing a multiworld on Archipelago.gg has 3 key components: -1. The Server which is hosting a game for all players. -2. The Client Program. For Final Fantasy 1, it is a standalone program but other randomizers may build it in. -3. The Game itself, in this case running on Bizhawk, which then connects to the Client running on your computer. - -To set this up the following steps are required: -1. (Each Player) Generate your own yaml file and randomized ROM -2. (Host Only) Generate a randomized game with you and 0 or more players using Archipelago -3. (Host Only) Run the Archipelago Server -4. (Each Player) Run your client program and connect it to the Server -5. (Each Player) Run your game and connect it to your client program -6. (Each Player) Play the game and have fun! - -### Obtaining your Archipelago yaml file and randomized ROM +## Obtaining your Archipelago yaml file and randomized ROM Unlike most other Archipelago.gg games Final Fantasy 1 is randomized by the -[main randomizer](https://finalfantasyrandomizer.com/). Generate a game by going to the site and performing the -following steps: -1. Select the randomization options (also known as `Flags` in the community) of your choice. If you do not know what -you prefer, or it is your first time playing select the "Archipelago" preset on the main page. +main randomizer at [https://finalfantasyrandomizer.com/](https://finalfantasyrandomizer.com/). + +Generate a game by going to the site and performing the following steps: +1. Select the randomization options (also known as `Flags` in the community) of your choice. If you do not know what you prefer, or it is your first time playing select the "Archipelago" preset on the main page. 2. Go to the `Beta` tab and ensure `Archipelago` is enabled. Set your player name to any name that represents you. 3. Upload you `Final Fantasy(USA).nes` (and click `Remember ROM` for the future!) 4. Press the `NEW` button beside `Seed` a few times 5. Click `GENERATE ROM` -It should download two files. One is the `*.nes` file which your emulator will run and the other is the yaml file -required by Archipelago.gg - -### Generating the Multiworld and Starting the Server -The game can be generated locally or by Archipelago.gg. - -#### Generating on Archipelago.gg (Recommended) -1. Gather all yaml files -2. Create a zip file containing all of the yaml files. Make sure it is a `*.zip` not a `*.7z` or a `*.rar` -3. Navigate to the [Generate Page](https://archipelago.gg/generate) and click `Upload File` - 1. For your first game keep `Forfeit Permission` as `Automatic on goal completion`. Forfeiting actually means - giving out all of the items remaining in your game in this case so you do not block anyone else. - 2. For your first game keep `Hint Cost` at 10% -4. Select your zip file - -#### Generating Locally -1. Navigate to your Archipelago install directory -2. Empty the `Players` directory then fill it with one yaml per player including your own which you got from the - finalfantasyrandomizer website above -3. Run `ArchipelagoGenerate.exe` (double-click it in File Explorer) -4. You will find your generated game in the `output` directory +It should download two files. One is the `*.nes` file which your emulator will run and the other is the yaml file required by Archipelago.gg -#### Starting the server -If you generated on Archipelago.gg click `Create New Room` on the results page to start your server -If you generated locally simply navigate to the [Host Game Page](https://archipelago.gg/uploads) and upload the file -in the `output` directory - -### Running the Client Program and Connecting to the Server +## Running the Client Program and Connecting to the Server 1. Navigate to your Archipelago install folder and run `ArchipelagoFF1Client.exe` -2. Notice the `/connect command` on the server hosting page (It should look like `/connect archipelago.gg:*****` where - ***** are numbers) -3. Type the connect command into the client OR add the port to the pre-populated address on the top bar (it should - already say `archipelago.gg`) and click `connect` +2. Notice the `/connect command` on the server hosting page (It should look like `/connect archipelago.gg:*****` where ***** are numbers) +3. Type the connect command into the client OR add the port to the pre-populated address on the top bar (it should already say `archipelago.gg`) and click `connect` -#### Running Your Game and Connecting to the Client Program -1. Open Bizhawk 2.3.1 or higher and load your ROM OR - click your ROM file if it is already associated with the extension `*.nes` +### Running Your Game and Connecting to the Client Program +1. Open Bizhawk 2.3.1 or higher and load your ROM OR click your ROM file if it is already associated with the extension `*.nes` 2. Click on the Tools menu and click on **Lua Console** 3. Click the folder button to open a new Lua script. (CTL-O or **Script** -> **Open Script**) 4. Navigate to the location you installed Archipelago to. Open data/lua/FF1/ff1_connector.lua - 1. If it gives a `NLua.Exceptions.LuaScriptException: .\socket.lua:13: module 'socket.core' not found:` exception - close your emulator entirely, restart it and re-run these steps - 2. If it says `Must use a version of bizhawk 2.3.1 or higher`, double-check your Bizhawk version by clicking - **Help** -> **About** - -### Play the game -When the client shows both NES and server are connected you are good to go. You can check the connection status of the -NES at any time by running `/nes` - -### Helpful Commands -Commands are broken into two types: `/` and `!` commands. The difference is that `/commands` are local to your machine -and game whereas `!` commands ask the server. Most of the time you can use local commands. - -#### Local Commands -- `/connect
` connect to the multiworld server -- `/disconnect` if you accidentally connected to the wrong port run this to disconnect and then reconnect using -- `/nes` Shows the current status of the NES connection -- `/received` Displays all the items you have found or been sent -- `/missing` Displays all the locations along with their current status (checked/missing) -- Just typing anything will broadcast a message to all players - -#### Remote Commands -- `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some locations -to earn a hint. You can check how many you have by just running `!hint` -- `!forfeit` If you didn't turn on auto-forfeit or you allowed forfeiting prior to goal completion. Remember that -"forfeiting" actually means sending out your remaining items in your world + 1. If it gives a `NLua.Exceptions.LuaScriptException: .\socket.lua:13: module 'socket.core' not found:` exception close your emulator entirely, restart it and re-run these steps + 2. If it says `Must use a version of bizhawk 2.3.1 or higher`, double-check your Bizhawk version by clicking **Help** -> **About** -#### Host only (on Archipelago.gg) -`/forfeit ` Forfeits someone regardless of settings and game completion status +## Play the game +When the client shows both NES and server are connected you are good to go. You can check the connection status of the NES at any time by running `/nes` From 385f41d461fbf64a71fbab091a3afdac7d314d38 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 19:53:58 -0500 Subject: [PATCH 06/31] WebHost: Draft of commands documentation. --- .../tutorial/archipelago/commands_en.md | 24 +++++++++++++++++++ .../static/assets/tutorial/tutorials.json | 15 ++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 WebHostLib/static/assets/tutorial/archipelago/commands_en.md diff --git a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md new file mode 100644 index 000000000000..d076b6c32ace --- /dev/null +++ b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md @@ -0,0 +1,24 @@ +### Helpful Commands +Commands are split into two types: client commands and server commands. Client commands are commands which are executed by the client and do not affect the Archipelago remote session. Server commands are commands which are executed by the Archipelago server and affect the Archipelago session or otherwise provide feedback from the server. + +In clients which have their own commands the commands are typically prepended by a forward slash:`/`. Remote commands are always submitted to the server prepended with an exclamation point: `!`. + +#### Local Commands +The following list is a list of client commands which may be available to you through your Archipelago client. You execute these commands in your client window. + +- `/connect ` Connect to the multiworld server. +- `/disconnect` Disconnects you from your current session. +- `/nes` Shows the current status of the NES connection, when applicable. +- `/snes` Shows the current status of the SNES connection, when applicable. +- `/received` Displays all the items you have found or been sent. +- `/missing` Displays all the locations along with their current status (checked/missing). +- Just typing anything will broadcast a message to all players + +#### Remote Commands +- `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some locations +to earn a hint. You can check how many you have by just running `!hint` +- `!forfeit` If you didn't turn on auto-forfeit or you allowed forfeiting prior to goal completion. Remember that "forfeiting" actually means sending out your remaining items in your world. +- `!collect` Grants you all of the remaining checks in your world. Can only be used after your goal is complete or you have forfeited. + +#### Host only (on Archipelago.gg or in your server console) +- `/forfeit ` Forfeits someone regardless of settings and game completion status diff --git a/WebHostLib/static/assets/tutorial/tutorials.json b/WebHostLib/static/assets/tutorial/tutorials.json index 7286ff769b44..e93642a6b304 100644 --- a/WebHostLib/static/assets/tutorial/tutorials.json +++ b/WebHostLib/static/assets/tutorial/tutorials.json @@ -30,6 +30,21 @@ } ] }, + { + "name": "Archipelago Server and Client Commands", + "description": "A guide detailing the commands available to the user when participating in an Archipelago session.", + "files": [ + { + "language": "English", + "filename": "archipelago/commands_en.md", + "link": "archipelago/commands/en", + "authors": [ + "jat2980", + "Ijwu" + ] + } + ] + }, { "name": "Advanced YAML Guide", "description": "A guide to reading yaml files and editing them to fully customize your game.", From 40805ee870cfb262ac7a290da4ffc7f826660639 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:04:44 -0500 Subject: [PATCH 07/31] WebHost: Update English Minecraft documentation. --- .../assets/tutorial/minecraft/minecraft_en.md | 40 ++++++++----------- 1 file changed, 16 insertions(+), 24 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md index 5cb7ef8244e2..be0b19db8943 100644 --- a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md +++ b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md @@ -1,21 +1,19 @@ # Minecraft Randomizer Setup Guide #Automatic Hosting Install -- download and install [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) and choose the `Minecraft Client` module +- Download and install Archipelago at: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) + - Choose the `Minecraft Client` module during the installation. ## Required Software -- [Minecraft Java Edition](https://www.minecraft.net/en-us/store/minecraft-java-edition) +- Minecraft Java Edition from: [https://www.minecraft.net/en-us/store/minecraft-java-edition](https://www.minecraft.net/en-us/store/minecraft-java-edition) ## Configuring your YAML file ### What is a YAML file and why do I need one? -Your YAML file contains a set of configuration options which provide the generator with information about how -it should generate your game. Each player of a multiworld will provide their own YAML file. This setup allows -each player to enjoy an experience customized for their taste, and different players in the same multiworld -can all have different options. +See the guide on setting up a basic YAML at the Archipelago setup guide: [click here](/tutorial/archipelago/setup/en) -### Where do I get a YAML file? +### What Does a YAML Look Like for Minecraft? A basic minecraft yaml will look like this. ```yaml description: Basic Minecraft Yaml @@ -86,35 +84,29 @@ Minecraft: ## Joining a MultiWorld Game -### Obtain your Minecraft data file +### Obtain Your Minecraft Data File **Only one yaml file needs to be submitted per minecraft world regardless of how many players play on it.** -When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that -is done, the host will provide you with either a link to download your data file, or with a zip file containing -everyone's data files. Your data file should have a `.apmc` extension. +When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that is done, the host will provide you with either a link to download your data file, or with a zip file containing everyone's data files. Your data file should have a `.apmc` extension. -double click on your `.apmc` file to have the minecraft client auto-launch the installed forge server. +Double-click on your `.apmc` file to have the minecraft client auto-launch the installed forge server. ### Connect to the MultiServer -After having placed your data file in the `APData` folder, start the Forge server and make sure you have OP -status by typing `/op YourMinecraftUsername` in the forge server console then connecting in your Minecraft client. +If you are running Forge manually, you must place the `.apmc` file in your `APData` folder in the Forge installation directory. If the `APData` folder does not exist then you may create it. After having placed your data file in the `APData` folder, start the Forge server and make sure you have OP status by typing `/op YourMinecraftUsername` in the forge server console then connecting in your Minecraft client. -Once in game type `/connect (Port) (Password)` where `` is the address of the -Archipelago server. `(Port)` is only required if the Archipelago server is not using the default port of 38281. `(Password)` -is only required if the Archipleago server you are using has a password set. +In all cases, no matter how the Forge server is hosted: once you are in game type `/connect (Port) (Password)` where `` is the address of the Archipelago server. `(Port)` is only required if the Archipelago server is not using the default port of 38281. `(Password)` is only required if the Archipelago server you are using has a password set. ### Play the game -When the console tells you that you have joined the room, you're ready to begin playing. Congratulations -on successfully joining a multiworld game! At this point any additional minecraft players may connect to your -forge server. +When the console tells you that you have joined the room, you're ready to begin playing. Congratulations on successfully joining a multiworld game! At this point any additional minecraft players may connect to your forge server. When you are ready to start the game use the `/start` command within the Minecraft game. ## Manual Installation Procedures -this is only required if you wish to set up a forge install yourself, its recommended to just use the Archipelago Installer. +This is only required if you wish to set up a forge install yourself, it's recommended to just use the Archipelago Installer. + ###Required Software -- [Minecraft Forge](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) -- [Minecraft Archipelago Randomizer Mod](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) -**DO NOT INSTALL THIS ON YOUR CLIENT** +- Minecraft Forge from: [https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) +- Minecraft Archipelago Randomizer Mod from: [https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) + - **DO NOT INSTALL THIS ON YOUR CLIENT** ### Dedicated Server Setup Only one person has to do this setup and host a dedicated server for everyone else playing to connect to. 1. Download the 1.16.5 **Minecraft Forge** installer from the link above, making sure to download the most recent recommended version. From d45bbb89b9d888d689532e21cd0f6ad7b00ec019 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:14:53 -0500 Subject: [PATCH 08/31] WebHost: Update English SoE documentation. --- .../secret-of-evermore/multiworld_en.md | 67 ++++++++----------- 1 file changed, 28 insertions(+), 39 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md index 278f6b7a3db5..ce46e8e2dcfb 100644 --- a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md @@ -1,57 +1,50 @@ # Secret of Evermore Setup Guide ## Required Software -- [SNI](https://github.com/alttpo/sni/releases) v0.0.59 or newer (included in Archipelago 0.2.1 setup) +- SNI from: [https://github.com/alttpo/sni/releases](https://github.com/alttpo/sni/releases) + - v0.0.59 or newer (included in Archipelago 0.2.1 setup) - Hardware or software capable of loading and playing SNES ROM files - - An emulator capable of connecting to SNI with ROM access - - [snes9x-rr](https://github.com/gocha/snes9x-rr/releases) or - - [BizHawk](http://tasvideos.org/BizHawk.html) or - - [bsnes-plus-nwa](https://github.com/black-sliver/bsnes-plus) - - Or SD2SNES, [FXPak Pro](https://krikzz.com/store/home/54-fxpak-pro.html), or other compatible hardware -- Your Secret of Evermore US ROM file, probably named `Secret of Evermore (USA).sfc` + - An emulator capable of connecting to SNI with ROM access. Any one of the following will work: + - snes9x-rr from: [https://github.com/gocha/snes9x-rr/releases](https://github.com/gocha/snes9x-rr/releases) + - BizHawk from: [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) + - bsnes-plus-nwa from: [https://github.com/black-sliver/bsnes-plus](https://github.com/black-sliver/bsnes-plus) + - Or SD2SNES, FXPak Pro ([https://krikzz.com/store/home/54-fxpak-pro.html](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware. +- Your legally obtained Secret of Evermore US ROM file, probably named `Secret of Evermore (USA).sfc` ## Create a Config (.yaml) File ### What is a config file and why do I need one? -Your config file contains a set of configuration options which provide the generator with information about how -it should generate your game. Each player of a multiworld will provide their own config file. This setup allows -each player to enjoy an experience customized for their taste, and different players in the same multiworld -can all have different options. +See the guide on setting up a basic YAML at the Archipelago setup guide: [click here](/tutorial/archipelago/setup/en) ### Where do I get a config file? -The [Player Settings](/games/Secret%20of%20Evermore/player-settings) page on the website allows you to configure your -personal settings and export a config file from them. +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [click here](/games/Secret%20of%20Evermore/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the -[YAML Validator](/mysterycheck) page. +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page: [click here](/mysterycheck) ## Generating a Single-Player Game -Stand-alone "Evermizer" has a way of balancing single-player games, but may not always be on par feature-wise. -Head over to [evermizer.com](https://evermizer.com) if you want to try the official stand-alone, otherwise read below. +Stand-alone "Evermizer" has a way of balancing single-player games, but may not always be on par feature-wise. Head over to [https://evermizer.com](https://evermizer.com) if you want to try the official stand-alone, otherwise read below. -1. Navigate to the [Player Settings](/games/Secret%20of%20Evermore/player-settings) page, configure your options, and +1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. + - Player Settings page: [click here](/games/Secret%20of%20Evermore/player-settings) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. -5. Run your patch file through [apbpatch](https://evermizer.com/apbpatch) and load it in your emulator or console. +5. Run your patch file through the apbpatch on evermizer.com and load it in your emulator or console. + * apbpatch page: [click here](https://evermizer.com/apbpatch) ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM -When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that -is done, the host will provide you with either a link to download your patch file, or with a zip file containing -everyone's patch files. Your patch file should have a `.apsoe` extension. +When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apsoe` extension. -Put your patch file on your desktop or somewhere convenient, open [apbpatch](https://evermizer.com/apbpatch) and -generate your ROM from it. Load the ROM file in your emulator or console. +Put your patch file on your desktop or somewhere convenient, open the apbpatch page on evermizer.com and generate your ROM from it. Load the ROM file in your emulator or console. apbpatch page: [https://evermizer.com/apbpatch](https://evermizer.com/apbpatch) ### Connect to SNI #### With an emulator -Start SNI either from the Archipelago install folder or the stand-alone version. -If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. +Start SNI either from the Archipelago install folder or the stand-alone version. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. ##### snes9x-rr 1. Load your ROM file if it hasn't already been loaded. @@ -81,35 +74,31 @@ This should automatically connect to SNI. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not -done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware -[here](https://github.com/RedGuyyyy/sd2snes/releases). Other hardware may find helpful information -[on this page](http://usb2snes.com/#supported-platforms). +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [https://github.com/RedGuyyyy/sd2snes/releases](https://github.com/RedGuyyyy/sd2snes/releases) + +Other hardware may find helpful information on the usb2snes platforms page: [http://usb2snes.com/#supported-platforms](http://usb2snes.com/#supported-platforms) 1. Copy the ROM file to your SD card. 2. Load the ROM file from the menu. ### Open the client -Open [ap-soeclient](http://evermizer.com/apclient) in a modern browser. Do not switch tabs, open it in a new window -if you want to use the browser while playing. Do not minimize the window with the client. +Open ap-soeclient ([http://evermizer.com/apclient](http://evermizer.com/apclient)) in a modern browser. Do not switch tabs, open it in a new window if you want to use the browser while playing. Do not minimize the window with the client. The client should automatically connect to SNI, the "SNES" status should change to green. ### Connect to the Archipelago Server -Enter `/connect server:port` in the client's command prompt and press enter. You'll find `server:port` on the same page -that had the patch file. +Enter `/connect server:port` in the client's command prompt and press enter. You'll find `server:port` on the same page that had the patch file. ### Play the game -When the game is loaded but not yet past the intro cutscene, the "Game" status is yellow. When the client shows "AP" as -green and "Game" as yellow, you're ready to play. The intro can be skipped pressing the START button and "Game" should -change to green. Congratulations on successfully joining a multiworld game! +When the game is loaded but not yet past the intro cutscene, the "Game" status is yellow. When the client shows "AP" as green and "Game" as yellow, you're ready to play. The intro can be skipped pressing the START button and "Game" should 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](/generate). The process is relatively simple: +The recommended way to host a game is to use our hosting service. The process is relatively simple: 1. Collect config files from your players. 2. Create a zip file containing your players' config files. -3. Upload that zip file to the website linked above. +3. Upload that zip file to the generate page. + - Generate page: [click here](/generate) 4. Wait a moment while the seed is generated. 5. When the seed is generated, you will be redirected to a "Seed Info" page. 6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, From bfa4d06ecf401f05e775d5d93e66e5d6adbb614f Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:16:38 -0500 Subject: [PATCH 09/31] WebHost: Update English Subnautica documentation. --- WebHostLib/static/assets/tutorial/Subnautica/setup_en.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md b/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md index 2fcae0e4110f..99ccc17abd0f 100644 --- a/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md +++ b/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md @@ -2,9 +2,9 @@ ## Required Software -- [Subnautica](https://store.steampowered.com/app/264710/Subnautica/) -- [QModManager4](https://www.nexusmods.com/subnautica/mods/201) -- [Archipelago Mod for Subnautica](https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases) +- Subnautica from: [https://store.steampowered.com/app/264710/Subnautica/](https://store.steampowered.com/app/264710/Subnautica/) +- QModManager4 from: [https://www.nexusmods.com/subnautica/mods/201](https://www.nexusmods.com/subnautica/mods/201) +- Archipelago Mod for Subnautica from: [https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases](https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases) ## Installation Procedures @@ -29,4 +29,4 @@ If you don't see the connect window check that you see a qmodmanager_log-Subnaut 3. In PlayerName enter your "name" field from the yaml, or website config. -4. Hit Connect. If it says succesfully authenticated you can now create a new savegame or resume the correct savegame. \ No newline at end of file +4. Hit Connect. If it says successfully authenticated you can now create a new savegame or resume the correct savegame. \ No newline at end of file From b7ff5d9a57a70406fb7a580ca117d24b99cde5c4 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:22:18 -0500 Subject: [PATCH 10/31] WebHost: Update English Super Metroid documentation. --- .../tutorial/super-metroid/multiworld_en.md | 66 ++++++++----------- 1 file changed, 26 insertions(+), 40 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md index 88f8b8446938..1decebb6586d 100644 --- a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md @@ -1,15 +1,16 @@ # Super Metroid Setup Guide ## Required Software -- [Super Metroid Client](https://github.com/ArchipelagoMW/SuperMetroidClient/releases) +- Super Metroid Client from: [https://github.com/ArchipelagoMW/SuperMetroidClient/releases](https://github.com/ArchipelagoMW/SuperMetroidClient/releases) - **sniConnector.lua** (located on the client download page) -- [SNI](https://github.com/alttpo/sni/releases) (Included in the Super Metroid Client) +- SNI from: [https://github.com/alttpo/sni/releases](https://github.com/alttpo/sni/releases) + - Included in the Super Metroid Client - Hardware or software capable of loading and playing SNES ROM files - - An emulator capable of connecting to SNI - ([snes9x Multitroid](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), - [BizHawk](http://tasvideos.org/BizHawk.html)) - - An SD2SNES, [FXPak Pro](https://krikzz.com/store/home/54-fxpak-pro.html), or other compatible hardware -- Your Super Metroid ROM file, probably named `Super Metroid (Japan, USA).sfc` + - An emulator capable of connecting to SNI such as: + - snes9x Multitroid from: [https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), + - BizHawk from: [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) + - An SD2SNES, FXPak Pro ([https://krikzz.com/store/home/54-fxpak-pro.html](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware +- Your legally obtained Super Metroid ROM file, probably named `Super Metroid (Japan, USA).sfc` ## Installation Procedures @@ -32,45 +33,35 @@ for launching ROM files. ## Create a Config (.yaml) File ### What is a config file and why do I need one? -Your config file contains a set of configuration options which provide the generator with information about how -it should generate your game. Each player of a multiworld will provide their own config file. This setup allows -each player to enjoy an experience customized for their taste, and different players in the same multiworld -can all have different options. +See the guide on setting up a basic YAML at the Archipelago setup guide: [click here](/tutorial/archipelago/setup/en) ### Where do I get a config file? -The [Player Settings](/games/Super%20Metroid/player-settings) page on the website allows you to configure your -personal settings and export a config file from them. +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [click here](/games/Super%20Metroid/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the -[YAML Validator](/mysterycheck) page. +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML validator page: [click here](/mysterycheck) ## Generating a Single-Player Game -1. Navigate to the [Player Settings](/games/Super%20Metroid/player-settings) page, configure your options, and click +1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. + - Player Settings page: [click here](/games/Super%20Metroid/player-settings) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. -5. Double-click on your patch file, and the Super Metroid Client will launch automatically, create your ROM from - the patch file, and open your emulator for you. +5. Double-click on your patch file, and the Super Metroid Client will launch automatically, create your ROM from the patch file, and open your emulator for you. 6. Since this is a single-player game, you will no longer need the client, so feel free to close it. ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM -When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that -is done, the host will provide you with either a link to download your patch file, or with a zip file containing -everyone's patch files. Your patch file should have a `.apm3` extension. +When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apm3` extension. -Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically -launch the client, and will also create your ROM in the same place as your patch file. +Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically launch the client, and will also create your ROM in the same place as your patch file. ### Connect to the client #### With an emulator -When the client launched automatically, SNI should have also automatically launched in the background. -If this is its first time launching, you may be prompted to allow it to communicate through the Windows -Firewall. +When the client launched automatically, SNI should have also automatically launched in the background. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. ##### snes9x Multitroid 1. Load your ROM file if it hasn't already been loaded. @@ -90,33 +81,28 @@ Firewall. 5. Select the `sniConnector.lua` file you downloaded above #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not -done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware -[here](https://github.com/RedGuyyyy/sd2snes/releases). Other hardware may find helpful information -[on this page](http://usb2snes.com/#supported-platforms). +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [https://github.com/RedGuyyyy/sd2snes/releases](https://github.com/RedGuyyyy/sd2snes/releases) + +Other hardware may find helpful information on the usb2snes platforms page: [http://usb2snes.com/#supported-platforms](http://usb2snes.com/#supported-platforms) 1. Close your emulator, which may have auto-launched. 2. Power on your device and load the ROM. ### Connect to the Archipelago Server -The patch file which launched your client should have automatically connected you to the AP Server. -There are a few reasons this may not happen however, including if the game is hosted on the website but -was generated elsewhere. If the client window shows "Server Status: Not Connected", simply ask the host -for the address of the server, and copy/paste it into the "Server" input field then press enter. +The patch file which launched your client should have automatically connected you to the AP Server. There are a few reasons this may not happen however, including if the game is hosted on the website but was generated elsewhere. If the client window shows "Server Status: Not Connected", simply ask the host for the address of the server, and copy/paste it into the "Server" input field then press enter. -The client will attempt to reconnect to the new server address, and should momentarily show "Server -Status: Connected". +The client will attempt to reconnect to the new server address, and should momentarily show "Server Status: Connected". ### Play the game -When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations -on successfully joining a multiworld game! +When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations on successfully joining a multiworld game! ## Hosting a MultiWorld game -The recommended way to host a game is to use our [hosting service](/generate). The process is relatively simple: +The recommended way to host a game is to use our hosting service. The process is relatively simple: 1. Collect config files from your players. 2. Create a zip file containing your players' config files. -3. Upload that zip file to the website linked above. +3. Upload that zip file to the Generate page above. + - Generate page: [click here](/generate) 4. Wait a moment while the seed is generated. 5. When the seed is generated, you will be redirected to a "Seed Info" page. 6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, From 5b399bff890b3e4641c38bc7c66a560e011c79e6 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:25:19 -0500 Subject: [PATCH 11/31] WebHost: Update English Timespinner documentation. --- .../static/assets/tutorial/timespinner/setup_en.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md index 9dec349b5ed5..c24a6dee3718 100644 --- a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md +++ b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md @@ -2,16 +2,22 @@ ## Required Software -- [Timespinner (steam)](https://store.steampowered.com/app/368620/Timespinner/) or [Timespinner (drm free)](https://www.humblebundle.com/store/timespinner) -- [Timespinner Randomizer](https://github.com/JarnoWesthof/TsRandomizer) +- One of: + - Timespinner (steam) from: [https://store.steampowered.com/app/368620/Timespinner/](https://store.steampowered.com/app/368620/Timespinner/) + - Timespinner (drm free) from: [https://www.humblebundle.com/store/timespinner](https://www.humblebundle.com/store/timespinner) +- Timespinner Randomizer from: [https://github.com/JarnoWesthof/TsRandomizer](https://github.com/JarnoWesthof/TsRandomizer) ## General Concept -The timespinner Randomizer loads Timespinner.exe from the same folder, and alters its state in memory to allow for randomization of the items +The timespinner Randomizer loads Timespinner.exe from the same folder, and alters its state in memory to allow for randomization of the items. ## Installation Procedures -Download latest version of [Timespinner Randomizer](https://github.com/JarnoWesthof/TsRandomizer) you can find the .zip files on the releases page, download the zip for your current platform. Then extract the zip to the folder where your Timespinner game is installed. Then just run TsRandomizer.exe instead of Timespinner.exe to start the game in randomized mode, for more info see the [readme](https://github.com/JarnoWesthof/TsRandomizer) +Download latest version of Timespinner randomizer you can find the .zip files on the releases page, download the zip for your current platform. Then extract the zip to the folder where your Timespinner game is installed. Then just run TsRandomizer.exe instead of Timespinner.exe to start the game in randomized mode, for more info see the Timespinner randomizer readme. + +Timespinner Randomizer downloads page: [https://github.com/JarnoWesthof/TsRandomizer](https://github.com/JarnoWesthof/TsRandomizer) + +Timespinner Randomizer readme page: [https://github.com/JarnoWesthof/TsRandomizer](https://github.com/JarnoWesthof/TsRandomizer) ## Joining a MultiWorld Game From 71e5348cbbd2acb98b717b328ae4ce25e60d6de7 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:39:24 -0500 Subject: [PATCH 12/31] WebHost: I have not been doing hyperlinks in an accessible fashion. I thought I was. I have failed you. Follow this advice: https://www.imperial.ac.uk/staff/tools-and-reference/web-guide/training-and-events/materials/accessibility/links/ --- .../assets/tutorial/Subnautica/setup_en.md | 6 ++-- .../assets/tutorial/minecraft/minecraft_en.md | 10 +++--- .../static/assets/tutorial/ror2/setup_en.md | 4 +-- .../secret-of-evermore/multiworld_en.md | 32 +++++++++---------- .../tutorial/super-metroid/multiworld_en.md | 24 +++++++------- .../assets/tutorial/timespinner/setup_en.md | 10 +++--- 6 files changed, 43 insertions(+), 43 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md b/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md index 99ccc17abd0f..42c30ee692f9 100644 --- a/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md +++ b/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md @@ -2,9 +2,9 @@ ## Required Software -- Subnautica from: [https://store.steampowered.com/app/264710/Subnautica/](https://store.steampowered.com/app/264710/Subnautica/) -- QModManager4 from: [https://www.nexusmods.com/subnautica/mods/201](https://www.nexusmods.com/subnautica/mods/201) -- Archipelago Mod for Subnautica from: [https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases](https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases) +- Subnautica from: [Subnautica Steam Store Page](https://store.steampowered.com/app/264710/Subnautica/) +- QModManager4 from: [QModManager4 Nexus Mods Page](https://www.nexusmods.com/subnautica/mods/201) +- Archipelago Mod for Subnautica from: [Subnautica Archipelago Mod Releases Page](https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases) ## Installation Procedures diff --git a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md index be0b19db8943..8257553daa30 100644 --- a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md +++ b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md @@ -1,17 +1,17 @@ # Minecraft Randomizer Setup Guide #Automatic Hosting Install -- Download and install Archipelago at: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) +- Download and install Archipelago at: [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) - Choose the `Minecraft Client` module during the installation. ## Required Software -- Minecraft Java Edition from: [https://www.minecraft.net/en-us/store/minecraft-java-edition](https://www.minecraft.net/en-us/store/minecraft-java-edition) +- Minecraft Java Edition from: [Minecraft Java Edition Store Page](https://www.minecraft.net/en-us/store/minecraft-java-edition) ## Configuring your YAML file ### What is a YAML file and why do I need one? -See the guide on setting up a basic YAML at the Archipelago setup guide: [click here](/tutorial/archipelago/setup/en) +See the guide on setting up a basic YAML at the Archipelago setup guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) ### What Does a YAML Look Like for Minecraft? A basic minecraft yaml will look like this. @@ -104,8 +104,8 @@ When the console tells you that you have joined the room, you're ready to begin This is only required if you wish to set up a forge install yourself, it's recommended to just use the Archipelago Installer. ###Required Software -- Minecraft Forge from: [https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) -- Minecraft Archipelago Randomizer Mod from: [https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) +- Minecraft Forge from: [Minecraft Forge Download Page](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) +- Minecraft Archipelago Randomizer Mod from: [AP Randomizer Forge Server Mod Releases Page](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) - **DO NOT INSTALL THIS ON YOUR CLIENT** ### Dedicated Server Setup Only one person has to do this setup and host a dedicated server for everyone else playing to connect to. diff --git a/WebHostLib/static/assets/tutorial/ror2/setup_en.md b/WebHostLib/static/assets/tutorial/ror2/setup_en.md index 2c8fa68c5852..856970f74e63 100644 --- a/WebHostLib/static/assets/tutorial/ror2/setup_en.md +++ b/WebHostLib/static/assets/tutorial/ror2/setup_en.md @@ -4,12 +4,12 @@ ### Install r2modman Head on over to the r2modman page on Thunderstore and follow the installation instructions. -[https://thunderstore.io/package/ebkr/r2modman/](https://thunderstore.io/package/ebkr/r2modman/) +[r2modman Page](https://thunderstore.io/package/ebkr/r2modman/) ### Install Archipelago Mod using r2modman You can install the Archipelago mod using r2modman in one of two ways. -[https://thunderstore.io/package/ArchipelagoMW/Archipelago/](https://thunderstore.io/package/ArchipelagoMW/Archipelago/) +[Archipelago Mod Download Page](https://thunderstore.io/package/ArchipelagoMW/Archipelago/) One, you can use the Thunderstore website and click on the "Install with Mod Manager" link. diff --git a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md index ce46e8e2dcfb..a75dd4c1df06 100644 --- a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md @@ -1,45 +1,45 @@ # Secret of Evermore Setup Guide ## Required Software -- SNI from: [https://github.com/alttpo/sni/releases](https://github.com/alttpo/sni/releases) +- SNI from: [SNI Releases Page](https://github.com/alttpo/sni/releases) - v0.0.59 or newer (included in Archipelago 0.2.1 setup) - Hardware or software capable of loading and playing SNES ROM files - An emulator capable of connecting to SNI with ROM access. Any one of the following will work: - - snes9x-rr from: [https://github.com/gocha/snes9x-rr/releases](https://github.com/gocha/snes9x-rr/releases) - - BizHawk from: [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) - - bsnes-plus-nwa from: [https://github.com/black-sliver/bsnes-plus](https://github.com/black-sliver/bsnes-plus) - - Or SD2SNES, FXPak Pro ([https://krikzz.com/store/home/54-fxpak-pro.html](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware. + - snes9x-rr from: [snes9x-rr Releases Page](https://github.com/gocha/snes9x-rr/releases) + - BizHawk from: [BizHawk Website](http://tasvideos.org/BizHawk.html) + - bsnes-plus-nwa from: [bsnes-plus GitHub](https://github.com/black-sliver/bsnes-plus) + - Or SD2SNES, FXPak Pro ([FXPak Pro Store Page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware. - Your legally obtained Secret of Evermore US ROM file, probably named `Secret of Evermore (USA).sfc` ## Create a Config (.yaml) File ### What is a config file and why do I need one? -See the guide on setting up a basic YAML at the Archipelago setup guide: [click here](/tutorial/archipelago/setup/en) +See the guide on setting up a basic YAML at the Archipelago setup guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [click here](/games/Secret%20of%20Evermore/player-settings) +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [Secret of Evermore Player Settings PAge](/games/Secret%20of%20Evermore/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page: [click here](/mysterycheck) +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page: [YAML Validation page](/mysterycheck) ## Generating a Single-Player Game -Stand-alone "Evermizer" has a way of balancing single-player games, but may not always be on par feature-wise. Head over to [https://evermizer.com](https://evermizer.com) if you want to try the official stand-alone, otherwise read below. +Stand-alone "Evermizer" has a way of balancing single-player games, but may not always be on par feature-wise. Head over to the [Evermizer Website](https://evermizer.com) if you want to try the official stand-alone, otherwise read below. 1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. - - Player Settings page: [click here](/games/Secret%20of%20Evermore/player-settings) + - Player Settings page: [Secret of Evermore Player Settings Page](/games/Secret%20of%20Evermore/player-settings) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. 5. Run your patch file through the apbpatch on evermizer.com and load it in your emulator or console. - * apbpatch page: [click here](https://evermizer.com/apbpatch) + * apbpatch page: [Evermizer apbpatch Page](https://evermizer.com/apbpatch) ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apsoe` extension. -Put your patch file on your desktop or somewhere convenient, open the apbpatch page on evermizer.com and generate your ROM from it. Load the ROM file in your emulator or console. apbpatch page: [https://evermizer.com/apbpatch](https://evermizer.com/apbpatch) +Put your patch file on your desktop or somewhere convenient, open the apbpatch page on evermizer.com and generate your ROM from it. Load the ROM file in your emulator or console. apbpatch page: [Evermizer apbpatch Page](https://evermizer.com/apbpatch) ### Connect to SNI @@ -74,15 +74,15 @@ This should automatically connect to SNI. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [https://github.com/RedGuyyyy/sd2snes/releases](https://github.com/RedGuyyyy/sd2snes/releases) +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [SD2SNES Releases Page](https://github.com/RedGuyyyy/sd2snes/releases) -Other hardware may find helpful information on the usb2snes platforms page: [http://usb2snes.com/#supported-platforms](http://usb2snes.com/#supported-platforms) +Other hardware may find helpful information on the usb2snes platforms page: [usb2snes Supported Platforms Page](http://usb2snes.com/#supported-platforms) 1. Copy the ROM file to your SD card. 2. Load the ROM file from the menu. ### Open the client -Open ap-soeclient ([http://evermizer.com/apclient](http://evermizer.com/apclient)) in a modern browser. Do not switch tabs, open it in a new window if you want to use the browser while playing. Do not minimize the window with the client. +Open ap-soeclient ([Evermizer Archipelago Client Page](http://evermizer.com/apclient)) in a modern browser. Do not switch tabs, open it in a new window if you want to use the browser while playing. Do not minimize the window with the client. The client should automatically connect to SNI, the "SNES" status should change to green. @@ -98,7 +98,7 @@ The recommended way to host a game is to use our hosting service. The process is 1. Collect config files from your players. 2. Create a zip file containing your players' config files. 3. Upload that zip file to the generate page. - - Generate page: [click here](/generate) + - Generate page: [WebHost Seed Generation Page](/generate) 4. Wait a moment while the seed is generated. 5. When the seed is generated, you will be redirected to a "Seed Info" page. 6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, diff --git a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md index 1decebb6586d..216dd0b6a1d2 100644 --- a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md @@ -1,15 +1,15 @@ # Super Metroid Setup Guide ## Required Software -- Super Metroid Client from: [https://github.com/ArchipelagoMW/SuperMetroidClient/releases](https://github.com/ArchipelagoMW/SuperMetroidClient/releases) +- Super Metroid Client from: [Super Metroid Client Releases Page](https://github.com/ArchipelagoMW/SuperMetroidClient/releases) - **sniConnector.lua** (located on the client download page) -- SNI from: [https://github.com/alttpo/sni/releases](https://github.com/alttpo/sni/releases) +- SNI from: [SNI Releases Page](https://github.com/alttpo/sni/releases) - Included in the Super Metroid Client - Hardware or software capable of loading and playing SNES ROM files - An emulator capable of connecting to SNI such as: - - snes9x Multitroid from: [https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), - - BizHawk from: [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) - - An SD2SNES, FXPak Pro ([https://krikzz.com/store/home/54-fxpak-pro.html](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware + - snes9x Multitroid from: [snes9x Multitroid Download](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), + - BizHawk from: [BizHawk Website](http://tasvideos.org/BizHawk.html) + - An SD2SNES, FXPak Pro ([FXPak Pro Store Page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware - Your legally obtained Super Metroid ROM file, probably named `Super Metroid (Japan, USA).sfc` ## Installation Procedures @@ -33,18 +33,18 @@ for launching ROM files. ## Create a Config (.yaml) File ### What is a config file and why do I need one? -See the guide on setting up a basic YAML at the Archipelago setup guide: [click here](/tutorial/archipelago/setup/en) +See the guide on setting up a basic YAML at the Archipelago setup guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [click here](/games/Super%20Metroid/player-settings) +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [Super Metroid Player Settings Page](/games/Super%20Metroid/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML validator page: [click here](/mysterycheck) +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML validator page: [YAML Validation page](/mysterycheck) ## Generating a Single-Player Game 1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. - - Player Settings page: [click here](/games/Super%20Metroid/player-settings) + - Player Settings page: [Super Metroid Player Settings Page](/games/Super%20Metroid/player-settings) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. @@ -81,9 +81,9 @@ When the client launched automatically, SNI should have also automatically launc 5. Select the `sniConnector.lua` file you downloaded above #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [https://github.com/RedGuyyyy/sd2snes/releases](https://github.com/RedGuyyyy/sd2snes/releases) +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [SD2SNES Releases Page](https://github.com/RedGuyyyy/sd2snes/releases) -Other hardware may find helpful information on the usb2snes platforms page: [http://usb2snes.com/#supported-platforms](http://usb2snes.com/#supported-platforms) +Other hardware may find helpful information on the usb2snes platforms page: [usb2snes Supported Platforms Page](http://usb2snes.com/#supported-platforms) 1. Close your emulator, which may have auto-launched. 2. Power on your device and load the ROM. @@ -102,7 +102,7 @@ The recommended way to host a game is to use our hosting service. The process is 1. Collect config files from your players. 2. Create a zip file containing your players' config files. 3. Upload that zip file to the Generate page above. - - Generate page: [click here](/generate) + - Generate page: [WebHost Seed Generation Page](/generate) 4. Wait a moment while the seed is generated. 5. When the seed is generated, you will be redirected to a "Seed Info" page. 6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, diff --git a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md index c24a6dee3718..3fe2c460c1ef 100644 --- a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md +++ b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md @@ -3,9 +3,9 @@ ## Required Software - One of: - - Timespinner (steam) from: [https://store.steampowered.com/app/368620/Timespinner/](https://store.steampowered.com/app/368620/Timespinner/) - - Timespinner (drm free) from: [https://www.humblebundle.com/store/timespinner](https://www.humblebundle.com/store/timespinner) -- Timespinner Randomizer from: [https://github.com/JarnoWesthof/TsRandomizer](https://github.com/JarnoWesthof/TsRandomizer) + - Timespinner (steam) from: [Timespinner Steam Store Page](https://store.steampowered.com/app/368620/Timespinner/) + - Timespinner (drm free) from: [Timespinner Humble Store Page](https://www.humblebundle.com/store/timespinner) +- Timespinner Randomizer from: [Timespinner Randomizer GitHub](https://github.com/JarnoWesthof/TsRandomizer) ## General Concept @@ -15,9 +15,9 @@ The timespinner Randomizer loads Timespinner.exe from the same folder, and alter Download latest version of Timespinner randomizer you can find the .zip files on the releases page, download the zip for your current platform. Then extract the zip to the folder where your Timespinner game is installed. Then just run TsRandomizer.exe instead of Timespinner.exe to start the game in randomized mode, for more info see the Timespinner randomizer readme. -Timespinner Randomizer downloads page: [https://github.com/JarnoWesthof/TsRandomizer](https://github.com/JarnoWesthof/TsRandomizer) +Timespinner Randomizer downloads page: [Timespinner Randomizer Releases](https://github.com/JarnoWesthof/TsRandomizer/releases) -Timespinner Randomizer readme page: [https://github.com/JarnoWesthof/TsRandomizer](https://github.com/JarnoWesthof/TsRandomizer) +Timespinner Randomizer readme page: [Timespinner Randomizer GitHub](https://github.com/JarnoWesthof/TsRandomizer) ## Joining a MultiWorld Game From 0968730382eab2074bd40eca9ac5057663e5f73c Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 20:42:17 -0500 Subject: [PATCH 13/31] WebHost: Continue my hyperlink redemption arc. --- WebHostLib/static/assets/gameInfo/en_A Link to the Past.md | 2 +- WebHostLib/static/assets/gameInfo/en_Factorio.md | 2 +- WebHostLib/static/assets/gameInfo/en_Final Fantasy.md | 4 ++-- WebHostLib/static/assets/gameInfo/en_Minecraft.md | 2 +- WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md | 2 +- WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md | 2 +- WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md | 4 ++-- WebHostLib/static/assets/gameInfo/en_Subnautica.md | 2 +- WebHostLib/static/assets/gameInfo/en_Super Metroid.md | 2 +- WebHostLib/static/assets/gameInfo/en_Timespinner.md | 4 ++-- 10 files changed, 13 insertions(+), 13 deletions(-) diff --git a/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md b/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md index 52c94bef6c44..1799da2cbdfa 100644 --- a/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md +++ b/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md @@ -1,7 +1,7 @@ # A Link to the Past ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [LttP Player Settings Page](../player-settings). ## What does randomization do to this game? Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. diff --git a/WebHostLib/static/assets/gameInfo/en_Factorio.md b/WebHostLib/static/assets/gameInfo/en_Factorio.md index ba3df2ee21b3..b0ca91269b01 100644 --- a/WebHostLib/static/assets/gameInfo/en_Factorio.md +++ b/WebHostLib/static/assets/gameInfo/en_Factorio.md @@ -1,7 +1,7 @@ # Factorio ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Factorio Player Settings Page](../player-settings). ## What does randomization do to this game? In Factorio, the research tree is shuffled, causing certain technologies to be obtained in a non-standard order. Recipe costs, technology requirements, and science pack requirements may also be shuffled at the player's discretion. diff --git a/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md b/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md index 1c30bd1f06c7..087d37a41eff 100644 --- a/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md +++ b/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md @@ -1,10 +1,10 @@ # Final Fantasy 1 (NES) ## Where is the settings page? -Unlike most games on Archipelago.gg, Final Fantasy 1's settings are controlled entirely by the original randomzier. You can find an exhaustive list of documented settings on the FFR website: [https://finalfantasyrandomizer.com](https://finalfantasyrandomizer.com) +Unlike most games on Archipelago.gg, Final Fantasy 1's settings are controlled entirely by the original randomzier. You can find an exhaustive list of documented settings on the FFR website: [FF1R Website](https://finalfantasyrandomizer.com/) ## What does randomization do to this game? -A better questions is what isn't randomized at this point. Enemies stats and spell, character spells, shop inventory and boss stats and spells are all commonly randomized. Unlike most other randomizers it is also most standard to shuffle progression items and non-progression items into separate pools and then redistribute them to their respective locations. So ,for example, Princess Sarah may have the CANOE instead of the LUTE; however, she will never have a Heal Pot or some armor. There are plenty of other things that can be randomized on the main randomizer site: [https://finalfantasyrandomizer.com](https://finalfantasyrandomizer.com/) +A better questions is what isn't randomized at this point. Enemies stats and spell, character spells, shop inventory and boss stats and spells are all commonly randomized. Unlike most other randomizers it is also most standard to shuffle progression items and non-progression items into separate pools and then redistribute them to their respective locations. So ,for example, Princess Sarah may have the CANOE instead of the LUTE; however, she will never have a Heal Pot or some armor. There are plenty of other things that can be randomized on the main randomizer site: [FF1R Website](https://finalfantasyrandomizer.com/) Some features are not currently supported by AP. A non-exhaustive list includes: - Shard Hunt diff --git a/WebHostLib/static/assets/gameInfo/en_Minecraft.md b/WebHostLib/static/assets/gameInfo/en_Minecraft.md index ade814be5eec..8fff28cea365 100644 --- a/WebHostLib/static/assets/gameInfo/en_Minecraft.md +++ b/WebHostLib/static/assets/gameInfo/en_Minecraft.md @@ -1,7 +1,7 @@ # Minecraft ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Minecraft Player Settings Page](../player-settings). ## What does randomization do to this game? Recipes are removed from the crafting book and shuffled into the item pool. It can also optionally change which diff --git a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md index 467585aad89b..2902994d2b1c 100644 --- a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md +++ b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md @@ -1,7 +1,7 @@ # Ocarina of Time ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Ocarina of Time Player Settings Page](../player-settings). ## What does randomization do to this game? Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game diff --git a/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md b/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md index a749848de303..df87a0372a6d 100644 --- a/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md +++ b/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md @@ -1,7 +1,7 @@ # Risk of Rain 2 ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Risk of Rain 2 Player Settings Page](../player-settings). ## What does randomization do to this game? Risk of Rain is already a random game, by virtue of being a roguelite. The Archipelago mod implements pure multiworld functionality in which certain chests (made clear via a location check progress bar) will send an item out to the multiworld. The items that _would have been_ in those chests will be returned to the Risk of Rain player via grants by other players in other worlds. diff --git a/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md b/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md index 9298eb256e5e..7c5c0335fd86 100644 --- a/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md +++ b/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md @@ -1,12 +1,12 @@ # Secret of Evermore ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Secret of Evermore Player Settings Page](../player-settings). ## What does randomization do to this game? Items which would normally be acquired throughout the game have been moved around! Progression logic remains, so the game is always able to be completed. However, because of the item shuffle, the player may need to access certain areas before they would in the vanilla game. For example, the Windwalker (flying machine) is accessible as soon as any weapon is obtained. -Additional help can be found in the Evermizer guide: [https://github.com/black-sliver/evermizer/blob/feat-mw/guide.md](https://github.com/black-sliver/evermizer/blob/feat-mw/guide.md). +Additional help can be found in the [Evermizer guide](https://github.com/black-sliver/evermizer/blob/feat-mw/guide.md). ## What items and locations get shuffled? All gourds/chests/pots, boss drops and alchemists are shuffled. Alchemy ingredients, sniff spot items, call bead spells and the dog can be randomized using yaml options. diff --git a/WebHostLib/static/assets/gameInfo/en_Subnautica.md b/WebHostLib/static/assets/gameInfo/en_Subnautica.md index 3b63c3ac8e44..850c60d0fe9b 100644 --- a/WebHostLib/static/assets/gameInfo/en_Subnautica.md +++ b/WebHostLib/static/assets/gameInfo/en_Subnautica.md @@ -1,7 +1,7 @@ # Subnautica ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Subnautica Player Settings Page](../player-settings). ## What does randomization do to this game? The most noticeable change is the complete removal of freestanding technologies. The technology blueprints normally awarded from scanning those items have been shuffled into location checks throughout the AP item pool. diff --git a/WebHostLib/static/assets/gameInfo/en_Super Metroid.md b/WebHostLib/static/assets/gameInfo/en_Super Metroid.md index 362c4aafdb9e..a189c3440cd0 100644 --- a/WebHostLib/static/assets/gameInfo/en_Super Metroid.md +++ b/WebHostLib/static/assets/gameInfo/en_Super Metroid.md @@ -1,7 +1,7 @@ # Super Metroid ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Super Metroid Player Settings Page](../player-settings). ## What does randomization do to this game? Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. diff --git a/WebHostLib/static/assets/gameInfo/en_Timespinner.md b/WebHostLib/static/assets/gameInfo/en_Timespinner.md index dee709a59428..dadee0fd3a81 100644 --- a/WebHostLib/static/assets/gameInfo/en_Timespinner.md +++ b/WebHostLib/static/assets/gameInfo/en_Timespinner.md @@ -1,7 +1,7 @@ # Timespinner ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [click here](../player-settings). +The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Timespinner Player Settings Page](../player-settings). ## What does randomization do to this game? Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. All rings and spells are also randomized into those item locations, therefore you can no longer craft them at the alchemist @@ -16,7 +16,7 @@ All main inventory items, orbs, collectables, and familiars can be shuffled, and Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. ## What does another world's item look like in Timespinner? -Items belonging to other worlds are represented by the vanilla item Elemental Beads \([Wiki Link](https://timespinnerwiki.com/Use_Items)\), Elemental Beads have no use in the randomizer. +Items belonging to other worlds are represented by the vanilla item Elemental Beads ([Elemental Beads Wiki Page](https://timespinnerwiki.com/Use_Items)), Elemental Beads have no use in the randomizer. ## When the player receives an item, what happens? When the player receives an item, the same items popup will be displayed as when you would normally obtain the item. From a8694cfb79a5c9d16b74ee7b16f3935166973159 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Thu, 2 Dec 2021 21:00:06 -0500 Subject: [PATCH 14/31] WebHost: Fix hyperlink accessibility in general AP guides. --- .../archipelago/advanced_settings_en.md | 8 ++-- .../assets/tutorial/archipelago/plando_en.md | 45 ++++++++++--------- .../assets/tutorial/archipelago/setup_en.md | 10 ++--- .../tutorial/archipelago/triggers_en.md | 6 +-- .../tutorial/archipelago/using_website_en.md | 4 +- 5 files changed, 37 insertions(+), 36 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md index aaf42c61f82e..f1ad9b8abe7a 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md @@ -3,7 +3,7 @@ This guide covers more the more advanced options available in YAML files. This g If you would like to generate a basic, fully playable, YAML without editing a file then visit the settings page for the game you intend to play. -The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: [https://archipelago.gg/games](https://archipelago.gg/games) +The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: [Archipelago Games List](https://archipelago.gg/games) Clicking on the "Export Settings" button at the bottom-left will provide you with a pre-filled YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every option with every available setting for the available options. @@ -13,7 +13,7 @@ The Archipelago system generates games using player configuration files as input ## YAML Formatting YAML files are a format of human-readable config files. The basic syntax of a yaml file will have a `root` node and then different levels of `nested` nodes that the generator reads in order to determine your settings. -To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: [https://www.sublimetext.com](https://www.sublimetext.com) +To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: [SublimeText Website](https://www.sublimetext.com) This program out of the box supports the correct formatting for the YAML file, so you will be able to use the tab key and get proper highlighting for any potential errors made while editing the file. If using any other text editor you should ensure your indentation is done correctly with two spaces. @@ -55,7 +55,7 @@ in a dungeon in ALTTP making it impossible to get and finish the dungeon. * `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that players almost always have something to do. This can be turned `on` or `off` and is `on` by default. - * `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: [https://archipelago.gg/tutorial/archipelago/triggers/en](https://archipelago.gg/tutorial/archipelago/triggers/en) + * `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: [Archipelago Triggers Guide](https://archipelago.gg/tutorial/archipelago/triggers/en) ### Game Options @@ -67,7 +67,7 @@ Some options in Archipelago can be used by every game but must still be placed w Currently, these options are `start_inventory`, `start_hints`, `local_items`, `non_local_items`, `start_location_hints`, `exclude_locations`, and various plando options. -See the plando guide for more info on plando options. Plando guide: [https://archipelago.gg/tutorial/archipelago/plando/en](https://archipelago.gg/tutorial/archipelago/plando/en) +See the plando guide for more info on plando options. Plando guide: [Archipelago Plando Guide](https://archipelago.gg/tutorial/archipelago/plando/en) * `start_inventory` will give any items defined here to you at the beginning of your game. The format for this must be the name as it appears in the game files and the amount you would like to start with. For example `Rupees(5): 6` which will give you the item `Rupees(5)` six times, totalling 30 rupees. diff --git a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md index 7697c731d3a7..297d630810f7 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md @@ -34,30 +34,31 @@ cross-game plando could very well be broken i.e. placing on of your items in som * Using the multi placement method, placements are picked randomly. ### Available Items -* A Link to the Past: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) -* Factorio Non-Progressive: [https://wiki.factorio.com/Technologies](https://wiki.factorio.com/Technologies) +* A Link to the Past: [Link to the Past Item List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) +* Factorio Non-Progressive: [Factorio Technologies Wiki List](https://wiki.factorio.com/Technologies) * Note that these use the *internal names*. For example, `advanced-electronics` -* Factorio Progressive: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374) -* Minecraft: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14) -* Ocarina of Time: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61) -* Risk of Rain 2: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8) -* Slay the Spire: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13) -* Subnautica: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json) -* Timespinner: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11) +* Factorio Progressive: [Factorio Progressive Technologies List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374) +* Minecraft: [Minecraft Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14) +* Ocarina of Time: [Ocarina of Time Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61) +* Risk of Rain 2: [Risk of Rain 2 Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8) +* Slay the Spire: [Slay the Spire Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13) +* Subnautica: [Subnautica Items List JSON File](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json) +* Timespinner: [Timespinner Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11) ### Available Locations -* A Link to the Past: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429) -* Factorio: [https://wiki.factorio.com/Technologies](https://wiki.factorio.com/Technologies) -* Minecraft: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18) -* Ocarina of Time: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38) -* Risk of Rain 2: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17) +* A Link to the Past: [Link to the Past Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429) +* Factorio: [Factorio Technologies List Wiki](https://wiki.factorio.com/Technologies) + * In Factorio the location names are the same as the item names. +* Minecraft: [Minecraft Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18) +* Ocarina of Time: [Ocarina of Time Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38) +* Risk of Rain 2: [Risk of Rain 2 Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17) * This is a special case. The locations are "ItemPickup[number]" up to the maximum set in the yaml. -* Slay the Spire: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py) -* Subnautica: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json) -* Timespinner: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13) +* Slay the Spire: [Slay the Spire Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py) +* Subnautica: [Subnautica Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json) +* Timespinner: [Timespinner Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13) -A list of all available items and locations can also be found in the server's datapackage. Data package JSON: [click here](/api/datapackage). +A list of all available items and locations can also be found in the server's datapackage. Data package JSON: [DataPackage JSON](/api/datapackage). ### Examples ```yaml plando_items: @@ -117,10 +118,10 @@ plando_items: 4. This block has an 80% chance of occuring and when it does will place all but 1 of the items randomly among the four locations chosen here. ## Boss Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [click here](/tutorial/zelda3/plando/en) +As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) ## Text Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [click here](/tutorial/zelda3/plando/en) +As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) ## Connections Plando This is currently only supported by Minecraft and A Link to the Past. As the way that these games interact with their connections is different I will only explain the basics here while more specifics for Link to the Past connection plando can be found in its plando guide. @@ -129,9 +130,9 @@ This is currently only supported by Minecraft and A Link to the Past. As the way * Every connection has an `entrance` and an `exit`. These can be unlinked like in A Link to the Past insanity entrance shuffle. * `direction` can be `both`, `entrance`, or `exit` and determines in which direction this connection will operate. -Link to the Past connections: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) +Link to the Past connections: [Link to the Past Connections List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) -Minecraft connections: [https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62) +Minecraft connections: [Minecraft Connections List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62) ### Examples ```yaml diff --git a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md index 5bc92492a61d..a3456f4878b0 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md @@ -2,7 +2,7 @@ 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. ## Installing the Archipelago software -The most recent public release of Archipelago can be found on the GitHub Releases page. GitHub Releases page: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases). +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). Run the exe file, and after accepting the license agreement you will be prompted on which components you would like to install. @@ -18,10 +18,10 @@ game/games you plan to play are available here go ahead and install these as wel ### What is a YAML? YAML is the file format which Archipelago uses in order to configure a player's world. It allows you to dictate which 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: [https://archipelago.gg/mysterycheck](https://archipelago.gg/mysterycheck) +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) ### 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: [https://archipelago.gg/games](https://archipelago.gg/games) +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) 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 slot name and, if the relevant game requires it, files to associate it with that multiworld. @@ -30,7 +30,7 @@ If multiple people plan to play in one world cooperatively then they will only n ### 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. -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: [https://archipelago.gg/generate](https://archipelago.gg/generate) +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](https://archipelago.gg/generate) #### Rolling a YAML Locally @@ -44,6 +44,6 @@ Sometimes there are various settings that you may want to change before rolling All of these settings plus other options are able to 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. ## 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: [https://archipelago.gg/uploads](https://archipelago.gg/uploads) +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](https://archipelago.gg/uploads) 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. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md index 9758d03ce14e..3424d9fee0a0 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md @@ -5,13 +5,13 @@ This guide details the use of the Archipelago YAML trigger system. This guide is Triggers allow you to customize your game settings by allowing you to define one or many options which only occur under specific conditions. These are essentially "if, then" statements for options in your game. A good example of what you can do with triggers is the custom mercenary mode YAML that was created using entirely triggers and plando. -Mercenary mode YAML: [https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) +Mercenary mode YAML: [Mercenary Mode YAML on GitHub](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) For more information on plando you can reference the general plando guide or the Link to the Past plando guide. -General plando guide: [click here](/tutorial/archipelago/plando/en) +General plando guide: [Archipelago Plando Guide](/tutorial/archipelago/plando/en) -Link to the Past plando guide: [click here](/tutorial/zelda3/plando/en) +Link to the Past plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) ## Trigger use Triggers have to be defined in the root of the yaml file meaning it must be outside a game section. diff --git a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md index ebffca157066..62ca3a2a61f1 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md @@ -3,7 +3,7 @@ This guide encompasses the use cases for rolling and hosting multiworld games on ## 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: [https://archipelago.gg/generate](https://archipelago.gg/generate). Here, you can adjust some server settings such as forfeit rules and the cost for a player to use a hint before generation. +2. Next go to the "Generate Game" page. Generate game page: [Archipelago Seed Generation Page](https://archipelago.gg/generate). Here, you can adjust some server settings such as forfeit 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. @@ -18,7 +18,7 @@ The easiest and most recommended method is to generate the game on the website w 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: [https://archipelago.gg/uploads](https://archipelago.gg/uploads) +inside the zip file can be uploaded to the host game page. Host game page: [Archipelago Seed Upload Page](https://archipelago.gg/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 From df299349688adb0aa2b4d8d355145a128551195b Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 21:21:16 -0500 Subject: [PATCH 15/31] WebHost: Fix hyperlink accessibility in Factorio guide. --- .../assets/tutorial/factorio/setup_en.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/factorio/setup_en.md b/WebHostLib/static/assets/tutorial/factorio/setup_en.md index 47e9c2c1d371..f356c8b22edd 100644 --- a/WebHostLib/static/assets/tutorial/factorio/setup_en.md +++ b/WebHostLib/static/assets/tutorial/factorio/setup_en.md @@ -2,13 +2,13 @@ ## Required Software ##### Players -- Factorio: [https://factorio.com](https://factorio.com) +- Factorio: [Factorio Official Website](https://factorio.com) - Needed by Players and Hosts ##### Server Hosts -- Factorio: [https://factorio.com](https://factorio.com) +- Factorio: [Factorio Official Website](https://factorio.com) - Needed by Players and Hosts -- Archipelago: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) +- Archipelago: [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) - Needed by Hosts ## Create a Config (.yaml) File @@ -17,10 +17,10 @@ Your config file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Factorio player settings page: [click here](/games/Factorio/player-settings) +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Factorio player settings page: [Factorio Settings Page](/games/Factorio/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML Validator page: [click here](/mysterycheck) +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML Validator page: [Yaml Validation Page](/mysterycheck) ## Connecting to Someone Else's Factorio Game Connecting to someone else's game is the simplest way to play Factorio with Archipelago. It allows multiple people to play in a single world, all contributing to the completion of the seed. @@ -55,15 +55,15 @@ Factorio Clients may connect to this server. - A running modded Factorio Client ### Dedicated Server Setup -To play Factorio with Archipelago, a dedicated server setup is required. This dedicated Factorio Server must be installed separately from your main Factorio Client installation. The recommended way to install two instances of Factorio on your computer is to download the Factorio installer file directly from factorio.com: [https://factorio.com/download](https://factorio.com/download). +To play Factorio with Archipelago, a dedicated server setup is required. This dedicated Factorio Server must be installed separately from your main Factorio Client installation. The recommended way to install two instances of Factorio on your computer is to download the Factorio installer file directly from factorio.com: [Factorio Official Website Download Page](https://factorio.com/download). #### If you purchased Factorio on Steam, GOG, etc. -You can register your copy of Factorio on factorio.com: [https://factorio.com/](https://factorio.com/). You will be required to create an account, if you have not done so already. As part of that process, you will be able to enter your Factorio product code. This will allow you to download the game directly from their website. +You can register your copy of Factorio on factorio.com: [Factorio Official Website](https://factorio.com/). You will be required to create an account, if you have not done so already. As part of that process, you will be able to enter your Factorio product code. This will allow you to download the game directly from their website. #### Download the Standalone Version It is recommended to download the standalone version of Factorio for use as a dedicated server. Doing so prevents any potential conflicts with your currently-installed version of Factorio. Download the file by clicking on the button appropriate to your operating system, and extract the folder to a convenient location (we recommend `C:\Factorio` or similar). -![](/static/assets/tutorial/factorio/factorio-download.png) +![Factorio Download Options](/static/assets/tutorial/factorio/factorio-download.png) Next, you should launch your Factorio Server by running `factorio.exe`, which is located at: `bin/x64/factorio.exe`. You will be asked to log in to your Factorio account using the same credentials you used on Factorio's website. After you have logged in, you may close the game. @@ -86,7 +86,7 @@ at `C:\Users\YourName\AppData\Roaming\Factorio\mods`. 5. Run your Archipelago Client, which is named `ArchilepagoFactorioClient.exe`. This was installed along with Archipelago if you chose to include it during the installation process. 6. Enter `/connect [server-address]` into the input box at the bottom of the Archipelago Client and press "Enter" -![](/static/assets/tutorial/factorio/connect-to-ap-server.png) +![Factorio Client for Archipelago Connection Command](/static/assets/tutorial/factorio/connect-to-ap-server.png) 7. Launch your Factorio Client 8. Click on "Multiplayer" in the main menu @@ -100,7 +100,7 @@ server, you can also issue the `!help` command to learn about additional command ## Allowing Other People to Join Your Game 1. Ensure your Archipelago Client is running. 2. Ensure port `34197` is forwarded to the computer running the Archipelago Client. -3. Obtain your IP address by visiting whatismyip.com: [https://whatismyip.com/](https://whatismyip.com/). +3. Obtain your IP address by visiting whatismyip.com: [WhatIsMyIP Website](https://whatismyip.com/). 4. Provide your IP address to anyone you want to join your game, and have them follow the steps for "Connecting to Someone Else's Factorio Game" above. @@ -110,6 +110,6 @@ The contents of this file may help you troubleshoot an issue on your own and is people in Archipelago. ## Additional Resources -- Alternate Tutorial by Umenen: [https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4](https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4) -- Factorio Speedrun Guide: [https://www.youtube.com/watch?v=ExLrmK1c7tA](https://www.youtube.com/watch?v=ExLrmK1c7tA) -- Factorio Wiki: [https://wiki.factorio.com/](https://wiki.factorio.com/) +- Alternate Tutorial by Umenen: [Factorio (Steam) Archipelago Setup Guide for Windows](https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4) +- Factorio Speedrun Guide: [Factorio Speedrun Guide by Nefrums](https://www.youtube.com/watch?v=ExLrmK1c7tA) +- Factorio Wiki: [Factorio Official Wiki](https://wiki.factorio.com/) From b9c2e7636cf4d78cc7793d0a96be71cd37acf6f6 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 22:41:05 -0500 Subject: [PATCH 16/31] WebHost: Continue hyperlink fixes and consolidate website usage info to website user guide. --- WebHostLib/static/assets/faq/faq_en.md | 8 +- .../assets/tutorial/minecraft/minecraft_en.md | 1 + .../secret-of-evermore/multiworld_en.md | 14 +--- .../assets/tutorial/zelda3/multiworld_en.md | 76 ++++++------------- 4 files changed, 30 insertions(+), 69 deletions(-) diff --git a/WebHostLib/static/assets/faq/faq_en.md b/WebHostLib/static/assets/faq/faq_en.md index 3505f7a1fd86..f439dc0ed475 100644 --- a/WebHostLib/static/assets/faq/faq_en.md +++ b/WebHostLib/static/assets/faq/faq_en.md @@ -23,14 +23,14 @@ While a multi-world game traditionally requires all players to be playing the sa Yes. All our supported games can be generated as single-player experiences, and so long as you download the software, the website is not required to generate them. ## How do I get started? -If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join our discord server at https://discord.gg/archipelago. There are always people ready to answer any questions +If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join our discord server at the [Archipelago Discord](https://discord.gg/archipelago). There are always people ready to answer any questions you might have. ## I want to add a game to the Archipelago randomizer. How do I do that? -The best way to get started is to take a look at our code on GitHub at [https://github.com/ArchipelagoMW/Archipelago](https://github.com/ArchipelagoMW/Archipelago). +The best way to get started is to take a look at our code on GitHub at [Archipelago GitHub Page](https://github.com/ArchipelagoMW/Archipelago). -There you will find examples of games in the worlds folder at [https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds](https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds). +There you will find examples of games in the worlds folder at [/worlds Folder in Archipelago Code](https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds). -You may also find developer documentation in the docs folder at [https://github.com/ArchipelagoMW/Archipelago/tree/main/docs](https://github.com/ArchipelagoMW/Archipelago/tree/main/docs). +You may also find developer documentation in the docs folder at [/docs Folder in Archipelago Code](https://github.com/ArchipelagoMW/Archipelago/tree/main/docs). If you have more questions, feel free to ask in the **#archipelago-dev** channel on our Discord. diff --git a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md index 8257553daa30..1a7e2e66b147 100644 --- a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md +++ b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md @@ -107,6 +107,7 @@ This is only required if you wish to set up a forge install yourself, it's recom - Minecraft Forge from: [Minecraft Forge Download Page](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) - Minecraft Archipelago Randomizer Mod from: [AP Randomizer Forge Server Mod Releases Page](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) - **DO NOT INSTALL THIS ON YOUR CLIENT** + ### Dedicated Server Setup Only one person has to do this setup and host a dedicated server for everyone else playing to connect to. 1. Download the 1.16.5 **Minecraft Forge** installer from the link above, making sure to download the most recent recommended version. diff --git a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md index a75dd4c1df06..82fcde5bbb6b 100644 --- a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md @@ -93,16 +93,4 @@ Enter `/connect server:port` in the client's command prompt and press enter. You When the game is loaded but not yet past the intro cutscene, the "Game" status is yellow. When the client shows "AP" as green and "Game" as yellow, you're ready to play. The intro can be skipped pressing the START button and "Game" should 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. The process is relatively simple: - -1. Collect config files from your players. -2. Create a zip file containing your players' config files. -3. Upload that zip file to the generate page. - - Generate page: [WebHost Seed Generation Page](/generate) -4. Wait a moment while the seed is generated. -5. When the seed is generated, you will be redirected to a "Seed Info" page. -6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, - so they may download their patch files from there. -7. Note that a link to a MultiWorld Tracker is at the top of the room page. The tracker shows the progress of all - players in the game. Any observers may also be given the link to this page. -8. Once all players have joined, you may begin playing. +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) diff --git a/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md b/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md index 737de947bd09..7b2c26896b9c 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md @@ -1,15 +1,18 @@ # A Link to the Past Randomizer Setup Guide ## Required Software -- [Z3Client](https://github.com/ArchipelagoMW/Z3Client/releases) or the SNIClient included with -[Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) - - If installing Archipelago, make sure to check the box for SNIClient -> A Link to the Past Patch Setup during install, or SNI will not be included -- [SNI](https://github.com/alttpo/sni/releases) (Included in both Z3Client and SNIClient) +- A client, one of: + - Z3Client: [Z3Client Releases Page](https://github.com/ArchipelagoMW/Z3Client/releases) + - SNIClient included with Archipelago: + [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) + - If installing Archipelago, make sure to check the box for SNIClient -> A Link to the Past Patch Setup during install, or SNI will not be included +- Super Nintendo Interface (SNI): [SNI Releases Page](https://github.com/alttpo/sni/releases) + - (Included in both Z3Client and SNIClient) - Hardware or software capable of loading and playing SNES ROM files - - An emulator capable of connecting to SNI - ([snes9x Multitroid](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), - [BizHawk](http://tasvideos.org/BizHawk.html)) - - An SD2SNES, [FXPak Pro](https://krikzz.com/store/home/54-fxpak-pro.html), or other compatible hardware + - An emulator capable of connecting to SNI, one of: + - snes9x_Multitroid: [snes9x Multitroid Download in Google Drive](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz) + - BizHawk: [BizHawk Official Website](http://tasvideos.org/BizHawk.html) + - An SD2SNES, FXPak Pro ([FXPak Pro Store page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware - Your Japanese v1.0 ROM file, probably named `Zelda no Densetsu - Kamigami no Triforce (Japan).sfc` ## Installation Procedures @@ -29,45 +32,33 @@ for launching ROM files. ## Create a Config (.yaml) File ### What is a config file and why do I need one? -Your config file contains a set of configuration options which provide the generator with information about how -it should generate your game. Each player of a multiworld will provide their own config file. This setup allows -each player to enjoy an experience customized for their taste, and different players in the same multiworld -can all have different options. +Your config file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. ### Where do I get a config file? -The [Player Settings](/games/A%20Link%20to%20the%20Past/player-settings) page on the website allows you to configure -your personal settings and export a config file from them. +The Player Settings page on the website allows you to configure your personal settings and export a config file from them. ([Player Settings Page for A Link to the Past](/games/A%20Link%20to%20the%20Past/player-settings)) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the -[YAML Validator](/mysterycheck) page. +If you would like to validate your config file to make sure it works, you may do so on the YAML Validation page. ([YAML Validation Page](/mysterycheck)) ## Generating a Single-Player Game -1. Navigate to the [Player Settings](/games/A%20Link%20to%20the%20Past/player-settings) page, configure your options, - and click the "Generate Game" button. +1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. ([Player Settings for A Link to the Past](/games/A%20Link%20to%20the%20Past/player-settings)) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. -5. Double-click on your patch file, and the Z3Client will launch automatically, create your ROM from - the patch file, and open your emulator for you. +5. Double-click on your patch file, and the Z3Client will launch automatically, create your ROM from the patch file, and open your emulator for you. 6. Since this is a single-player game, you will no longer need the client, so feel free to close it. ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM -When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that -is done, the host will provide you with either a link to download your patch file, or with a zip file containing -everyone's patch files. Your patch file should have a `.apbp` extension. +When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apbp` extension. -Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically -launch the client, and will also create your ROM in the same place as your patch file. +Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically launch the client, and will also create your ROM in the same place as your patch file. ### Connect to the client #### With an emulator -When the client launched automatically, SNI should have also automatically launched in the background. -If this is its first time launching, you may be prompted to allow it to communicate through the Windows -Firewall. +When the client launched automatically, SNI should have also automatically launched in the background. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. ##### snes9x Multitroid 1. Load your ROM file if it hasn't already been loaded. @@ -91,37 +82,18 @@ Firewall. - SNIClient users should look in their Archipelago folder for `/sni/Connector.lua` #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not -done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware -[here](https://github.com/RedGuyyyy/sd2snes/releases). Other hardware may find helpful information -[on this page](http://usb2snes.com/#supported-platforms). +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware [from the sd2snes releases page](https://github.com/RedGuyyyy/sd2snes/releases). Other hardware may find helpful information [on the usb2snes supported platforms page](http://usb2snes.com/#supported-platforms). 1. Close your emulator, which may have auto-launched. 2. Power on your device and load the ROM. ### Connect to the Archipelago Server -The patch file which launched your client should have automatically connected you to the AP Server. -There are a few reasons this may not happen however, including if the game is hosted on the website but -was generated elsewhere. If the client window shows "Server Status: Not Connected", simply ask the host -for the address of the server, and copy/paste it into the "Server" input field then press enter. +The patch file which launched your client should have automatically connected you to the AP Server. There are a few reasons this may not happen however, including if the game is hosted on the website but was generated elsewhere. If the client window shows "Server Status: Not Connected", simply ask the host for the address of the server, and copy/paste it into the "Server" input field then press enter. -The client will attempt to reconnect to the new server address, and should momentarily show "Server -Status: Connected". +The client will attempt to reconnect to the new server address, and should momentarily show "Server Status: Connected". ### Play the game -When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations -on successfully joining a multiworld game! +When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations on successfully joining a multiworld game! ## Hosting a MultiWorld game -The recommended way to host a game is to use our [hosting service](/generate). The process is relatively simple: - -1. Collect config files from your players. -2. Create a zip file containing your players' config files. -3. Upload that zip file to the website linked above. -4. Wait a moment while the seed is generated. -5. When the seed is generated, you will be redirected to a "Seed Info" page. -6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, - so they may download their patch files from there. -7. Note that a link to a MultiWorld Tracker is at the top of the room page. The tracker shows the progress of all - players in the game. Any observers may also be given the link to this page. -8. Once all players have joined, you may begin playing. +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) \ No newline at end of file From 16c8256f0b6fd7367b7d536e0fa132fff0f1b242 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 22:54:45 -0500 Subject: [PATCH 17/31] WebHost: Undo a negative consequence of merging from Main --- .../archipelago/advanced_settings_en.md | 146 +++++++++--------- 1 file changed, 70 insertions(+), 76 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md index 3763d43ccdec..958a883718b3 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md @@ -1,23 +1,23 @@ -# Advanced Game Options Guide +# Advanced YAML Guide +This guide covers more the more advanced options available in YAML files. This guide is intended for the user who is intent on editing their YAML file manually. This guide should take about 10 minutes to read. +If you would like to generate a basic, fully playable, YAML without editing a file then visit the settings page for the game you intend to play. -The Archipelago system generates games using player configuration files as input. Generally these are going to be -YAML files and each player will have one of these containing their custom settings for the randomized game they want to play. -On the website when you customize your settings from one of the game player settings pages which you can reach from the -[supported games page](/games). Clicking on the export settings button at the bottom will provide you with a pre-filled out -YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every -option with every available setting for the available options. +The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: [Archipelago Games List](https://archipelago.gg/games) + +Clicking on the "Export Settings" button at the bottom-left will provide you with a pre-filled YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every option with every available setting for the available options. + +## YAML Overview +The Archipelago system generates games using player configuration files as input. These are going to be YAML files and each world will have one of these containing their custom settings for the game that world will play. ## YAML Formatting -YAML files are a format of human-readable markup config files. The basic syntax -of a yaml file will have `root` and then different levels of `nested` text that the generator "reads" in order to determine -your settings. To nest text, the correct syntax is **two spaces over** from its root option. A YAML file can be edited -with whatever text editor you choose to use though I personally recommend that you use [Sublime Text](https://www.sublimetext.com/). -This program out of the box supports the correct formatting for the YAML file, so you will be able to tab and get proper -highlighting for any potential errors made while editing the file. If using any other text editor such as Notepad or -Notepad++ whenever you move to nest an option that it is done with two spaces and not tabs. - -Typical YAML format will look as follows: +YAML files are a format of human-readable config files. The basic syntax of a yaml file will have a `root` node and then different levels of `nested` nodes that the generator reads in order to determine your settings. + +To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: [SublimeText Website](https://www.sublimetext.com) + +This program out of the box supports the correct formatting for the YAML file, so you will be able to use the tab key and get proper highlighting for any potential errors made while editing the file. If using any other text editor you should ensure your indentation is done correctly with two spaces. + +A typical YAML file will look like: ```yaml root_option: nested_option_one: @@ -28,49 +28,38 @@ root_option: option_two_setting_two: 43 ``` -In Archipelago YAML options are always written out in full lowercase with underscores separating any words. The numbers -following the colons here are weights. The generator will read the weight of every option the roll that option that many -times, the next option as many times as its numbered and so forth. For the above example `nested_option_one` will have -`option_one_setting_one` 1 time and `option_one_setting_two` 0 times so `option_one_setting_one` is guaranteed to occur. -For `nested_option_two`, `option_two_setting_one` will be rolled 14 times and `option_two_setting_two` will be rolled 43 -times against each other. This means `option_two_setting_two` will be more likely to occur but it isn't guaranteed adding -more randomness and "mystery" to your settings. Every configurable setting supports weights. +In Archipelago, YAML options are always written out in full lowercase with underscores separating any words. The numbers following the colons here are weights. The generator will read the weight of every option the roll that option that many times, the next option as many times as its numbered and so forth. + +For the above example `nested_option_one` will have `option_one_setting_one` 1 time and `option_one_setting_two` 0 times so `option_one_setting_one` is guaranteed to occur. + +For `nested_option_two`, `option_two_setting_one` will be rolled 14 times and `option_two_setting_two` will be rolled 43 times against each other. This means `option_two_setting_two` will be more likely to occur, but it isn't guaranteed adding more randomness and "mystery" to your settings. + +Every configurable setting supports weights. ### Root Options -Currently there are only a few options that are root options. Everything else should be nested within one of these root -options or in some cases nested within other nested options. The only options that should exist in root are `description`, -`name`, `game`, `requires`, `accessibility`, `progression_balancing`, `triggers`, and the name of the games you want -settings for. -* `description` is ignored by the generator and is simply a good way for you to organize if you have multiple files using -this to detail the intention of the file. -* `name` is the player name you would like to use and is used for your slot data to connect with most games. This can also -be filled with multiple names each having a weight to it. -* `game` is where either your chosen game goes or if you would like can be filled with multiple games each with different -weights. -* `requires` details different requirements from the generator for the YAML to work as you expect it to. Generally this -is good for detailing the version of Archipelago this YAML was prepared for as if it is rolled on an older version may be -missing settings and as such will not work as expected. If any plando is used in the file then requiring it here to ensure -it will be used is good practice. -* `accessibility` determines the level of access to the game the generation will expect you to have in order to reach your -completion goal. This supports `items`, `locations`, and `none` and is set to `locations` by default. - * `items` will guarantee you can acquire all items in your world but may not be able to access all locations. This mostly -comes into play if there is any entrance shuffle in the seed as locations without items in them can be placed in areas -that make them unreachable. - * `none` will only guarantee that the seed is beatable. You will be guaranteed able to finish the seed logically but -may not be able to access all locations or acquire all items. A good example of this is having a big key in the big chest +Currently, there are only a few options that are root options. Everything else should be nested within one of these root options or in some cases nested within other nested options. The only options that should exist in root are `description`, `name`, `game`, `requires`, `accessibility`, `progression_balancing`, `triggers`, and the name of the games you want settings for. + +* `description` is ignored by the generator and is simply a good way for you to organize if you have multiple files using this to detail the intention of the file. + +* `name` is the player name you would like to use and is used for your slot data to connect with most games. This can also be filled with multiple names each having a weight to it. + +* `game` is where either your chosen game goes or if you would like can be filled with multiple games each with different weights. + +* `requires` details different requirements from the generator for the YAML to work as you expect it to. Generally this is good for detailing the version of Archipelago this YAML was prepared for as if it is rolled on an older version may be missing settings and as such will not work as expected. If any plando is used in the file then requiring it here to ensure it will be used is good practice. + +* `accessibility` determines the level of access to the game the generation will expect you to have in order to reach your completion goal. This supports `items`, `locations`, and `none` and is set to `locations` by default. + * `locations` will guarantee all locations are accessible in your world. + * `items` will guarantee you can acquire all items in your world but may not be able to access all locations. This mostly comes into play if there is any entrance shuffle in the seed as locations without items in them can be placed in areas that make them unreachable. + * `none` will only guarantee that the seed is beatable. You will be guaranteed able to finish the seed logically but may not be able to access all locations or acquire all items. A good example of this is having a big key in the big chest in a dungeon in ALTTP making it impossible to get and finish the dungeon. -* `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This -primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that -players almost always have something to do. This can be turned `on` or `off` and is `on` by default. -* `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more -about this [here](/tutorial/archipelago/triggers/en). + +* `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that players almost always have something to do. This can be turned `on` or `off` and is `on` by default. + + * `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: [Archipelago Triggers Guide](/tutorial/archipelago/triggers/en) ### Game Options -One of your root settings will be the name of the game you would like to populate with settings in the format -`GameName`. since it is possible to give a weight to any option it is possible to have one file that can generate a seed -for you where you don't know which game you'll play. For these cases you'll want to fill the game options for every game -that can be rolled by these settings. If a game can be rolled it **must** have a settings section even if it is empty. +One of your root settings will be the name of the game you would like to populate with settings. Since it is possible to give a weight to any option it is possible to have one file that can generate a seed for you where you don't know which game you'll play. For these cases you'll want to fill the game options for every game that can be rolled by these settings. If a game can be rolled it **must** have a settings section even if it is empty. #### Universal Game Options @@ -85,14 +74,14 @@ See the plando guide for more info on plando options. Plando guide: [Archipelago * `start_hints` gives you free server hints for the defined item/s at the beginning of the game allowing you to hint for the location without using any hint points. * `local_items` will force any items you want to be in your world instead of being in another world. -* `non_local_items` is the inverse of `local_items` forcing any items you want to be in another world and won't be located -in your own. -* `start_location_hints` allows you to define a location which you can then hint for to find out what item is located in -it to see how important the location is. -* `exclude_locations` lets you define any locations that you don't want to do and during generation will force a "junk" -item which isn't necessary for progression to go in these locations. -### Example +* `non_local_items` is the inverse of `local_items` forcing any items you want to be in another world and won't be located in your own. + +* `start_location_hints` allows you to define a location which you can then hint for to find out what item is located in it to see how important the location is. + +* `exclude_locations` lets you define any locations that you don't want to do and during generation will force a "junk" item which isn't necessary for progression to go in these locations. + +### Example YAML ```yaml @@ -135,28 +124,33 @@ triggers: #### This is a fully functional yaml file that will do all the following things: * `description` gives us a general overview so if we pull up this file later we can understand the intent. + * `name` is `Example Player` and this will be used in the server console when sending and receiving items. + * `game` is set to `A Link to the Past` meaning that is what game we will play with this file. + * `requires` is set to require release version 0.2.0 or higher. -* `accesibility` is set to `none` which will set this seed to beatable only meaning some locations and items may be -completely inaccessible but the seed will still be completable. -* `progression_balancing` is set on meaning we will likely receive important items earlier increasing the chance of having -things to do. + +* `accesibility` is set to `none` which will set this seed to beatable only meaning some locations and items may be completely inaccessible but the seed will still be completable. + +* `progression_balancing` is set on meaning we will likely receive important items earlier increasing the chance of having things to do. + * `A Link to the Past` defines a location for us to nest all the game options we would like to use for our game `A Link to the Past`. -* `smallkey_shuffle` is an option for A Link to the Past which determines how dungeon small keys are shuffled. In this example -we have a 1/2 chance for them to either be placed in their original dungeon and a 1/2 chance for them to be placed anywhere -amongst the multiworld. -* `start_inventory` defines an area for us to determine what items we would like to start the seed with. For this example -we have: + +* `smallkey_shuffle` is an option for A Link to the Past which determines how dungeon small keys are shuffled. In this example we have a 1/2 chance for them to either be placed in their original dungeon and a 1/2 chance for them to be placed anywhere amongst the multiworld. + +* `start_inventory` defines an area for us to determine what items we would like to start the seed with. For this example we have: * `Pegasus Boots: 1` which gives us 1 copy of the Pegasus Boots * `Bombs (3)` gives us 2 packs of 3 bombs or 6 total bombs + * `start_hints` gives us a starting hint for the hammer available at the beginning of the multiworld which we can use with no cost. -* `local_items` forces the `Bombos`, `Ether`, and `Quake` medallions to all be placed within our own world, meaning we -have to find it ourselves. + +* `local_items` forces the `Bombos`, `Ether`, and `Quake` medallions to all be placed within our own world, meaning we have to find it ourselves. + * `non_local_items` forces the `Moon Pearl` to be placed in someone else's world, meaning we won't be able to find it. -* `start_location_hints` gives us a starting hint for the `Spike Cave` location available at the beginning of the multiworld -that can be used for no cost. + +* `start_location_hints` gives us a starting hint for the `Spike Cave` location available at the beginning of the multiworld that can be used for no cost. + * `exclude_locations` forces a not important item to be placed on the `Cave 45` location. -* `triggers` allows us to define a trigger such that if our `smallkey_shuffle` option happens to roll the `any_world` -result it will also ensure that `bigkey_shuffle`, `map_shuffle`, and `compass_shuffle` are also forced to the `any_world` -result. \ No newline at end of file + +* `triggers` allows us to define a trigger such that if our `smallkey_shuffle` option happens to roll the `any_world` result it will also ensure that `bigkey_shuffle`, `map_shuffle`, and `compass_shuffle` are also forced to the `any_world` result. \ No newline at end of file From 3f49c169bb23b9c2bb257b3d555d8d13f6d5ca2f Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 23:01:18 -0500 Subject: [PATCH 18/31] WebHost: Remove newlines and rework hyperlinks in Z5 guide. --- .../static/assets/tutorial/zelda5/setup_en.md | 26 ++++++++----------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/zelda5/setup_en.md b/WebHostLib/static/assets/tutorial/zelda5/setup_en.md index eaf1621deb8d..fe7c760dd99f 100644 --- a/WebHostLib/static/assets/tutorial/zelda5/setup_en.md +++ b/WebHostLib/static/assets/tutorial/zelda5/setup_en.md @@ -2,17 +2,18 @@ ## Important -As we are using Z5Client and Bizhawk, this guide is only applicable to Windows. +As we are using Z5Client and BizHawk, this guide is only applicable to Windows. ## Required Software -- [bizhawk+script+Z5Client](https://github.com/ArchipelagoMW/Z5Client/releases) We recommend download Z5Client-setup as it makes some steps automatic. +- BizHawk and Z5Client from: [Z5Client Releases Page](https://github.com/ArchipelagoMW/Z5Client/releases) + - We recommend download Z5Client-setup as it makes some steps automatic. ## Install Emulator and client Download getBizhawk.ps1 from previous link. Place it on the folder where you want your emulator to be installed, right click on it and select "Run with PowerShell". This will download all the needed dependencies used by the emulator. This can take a while. -It is strongly recommended to associate N64 rom extension (\*.n64) to the Bizhawk we've just installed. To do so, we simple have to search any N64 rom we happened to own, right click and select "Open with...", we unfold the list that appears and select the bottom option "Look for another application", we browse to Bizhawk folder and select EmuHawk.exe +It is strongly recommended to associate N64 rom extension (\*.n64) to the BizHawk we've just installed. To do so, we simply have to search any N64 rom we happened to own, right click and select "Open with...", we unfold the list that appears and select the bottom option "Look for another application", we browse to BizHawk folder and select EmuHawk.exe Place the ootMulti.lua file from the previous link inside the "lua" folder from the just installed emulator. @@ -21,14 +22,11 @@ Install the Z5Client using its setup. ## Configuring your YAML file ### What is a YAML file and why do I need one? -Your YAML file contains a set of configuration options which provide the generator with information about how -it should generate your game. Each player of a multiworld will provide their own YAML file. This setup allows -each player to enjoy an experience customized for their taste, and different players in the same multiworld -can all have different options. +Your YAML file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own YAML file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. ### Where do I get a YAML file? -A basic OOT yaml will look like this. There are lots of cosmetic options that have been removed for the sake of this tutorial, if you want to see a complete list, download [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) and look for the sample file in the "Players" folder. +A basic OOT yaml will look like this. There are lots of cosmetic options that have been removed for the sake of this tutorial, if you want to see a complete list, download Archipelago from the [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) and look for the sample file in the "Players" folder. ```yaml description: Default Ocarina of Time Template # Used to describe your yaml. Useful if you have multiple files # Your name in-game. Spaces will be replaced with underscores and there is a 16 character limit @@ -371,17 +369,15 @@ Ocarina of Time: ### Obtain your OOT patch file -When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that -is done, the host will provide you with either a link to download your data file, or with a zip file containing -everyone's data files. Your data file should have a `.z5ap` extension. +When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that is done, the host will provide you with either a link to download your data file, or with a zip file containing everyone's data files. Your data file should have a `.z5ap` extension. -Double click on your `.z5ap` file to start Z5Client and start the ROM patch process. Once the process is finished (this can take a while), the emulator will be started automatically (If we associated the extension to the emulator as recommended) +Double-click on your `.z5ap` file to start Z5Client and start the ROM patch process. Once the process is finished (this can take a while), the emulator will be started automatically (If we associated the extension to the emulator as recommended) -### Connect to multiserver +### Connect to the Multiserver Once both the Z5Client and the emulator are started we must connect them. Within the emulator we click on the "Tools" menu and select "Lua console". In the new window click on the folder icon and look for the ootMulti.lua file. Once the file is loaded it will connect automatically to Z5Client. -Note: We strongly advise you don't open any emulator menu while it and Z5client are connected, as the script will halt and disconnects can happen. If you get disconnected just double click on the script again. +Note: We strongly advise you don't open any emulator menu while it and Z5client are connected, as the script will halt and disconnects can happen. If you get disconnected just double-click on the script again. -To connect the client to the multiserver simply put address:port on the textfield on top and press enter (if the server uses password, type on the bottom textfield /connect
: [password], to connect) +To connect the client to the multiserver simply put `
:` on the textfield on top and press enter (if the server uses password, type in the bottom textfield `/connect
: [password]`) Now you are ready to start your adventure in Hyrule. \ No newline at end of file From abbcb6dc728473b1dc4340b750d51330b86f2e35 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 23:06:40 -0500 Subject: [PATCH 19/31] WebHost: Remove links to any MSU pack downloads or pages. --- .../static/assets/tutorial/zelda3/msu1_en.md | 32 ++++--------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md b/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md index f749f4a94189..a425906dd497 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md +++ b/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md @@ -1,23 +1,15 @@ # MSU-1 Setup Guide ## What is MSU-1? -MSU-1 allows for the use of custom in-game music. It works on original hardware, the SuperNT, and certain emulators. -This guide will explain how to find custom music packages, often called MSU packs, and how to configure -them for use with original hardware, the SuperNT, and the snes9x emulator. +MSU-1 allows for the use of custom in-game music. It works on original hardware, the SuperNT, and certain emulators. This guide will explain how to find custom music packages, often called MSU packs, and how to configure them for use with original hardware, the SuperNT, and the snes9x emulator. ## Where to find MSU Packs -MSU packs are constantly in development. You can find a list of completed packs, as well as in-development packs on -[this Google Spreadsheet](https://docs.google.com/spreadsheets/d/1XRkR4Xy6S24UzYkYBAOv-VYWPKZIoUKgX04RbjF128Q). +MSU packs are constantly in development. We won't link to any packs as most include ripped music from other media. ## What an MSU pack should look like -MSU packs contain many files, most of which are the music files which will be used when playing the game. These files -should be named similarly, with a hyphenated number at the end, and with a `.pcm` extension. It does not matter what -each music file is named, so long as they all follow the same pattern. The most popular filename you will find is -`alttp_msu-X.pcm`, where X is replaced by a number. +MSU packs contain many files, most of which are the music files which will be used when playing the game. These files should be named similarly, with a hyphenated number at the end, and with a `.pcm` extension. It does not matter what each music file is named, so long as they all follow the same pattern. The most popular filename you will find is `alttp_msu-X.pcm`, where X is replaced by a number. -There is one other type of file you should find inside an MSU pack's folder. This file indicates to the hardware or -to the emulator that MSU should be enabled for this game. This file should be named similarly to the other files in -the folder, but will have a `.msu` extension and be 0 KB in size. +There is one other type of file you should find inside an MSU pack's folder. This file indicates to the hardware or to the emulator that MSU should be enabled for this game. This file should be named similarly to the other files in the folder, but will have a `.msu` extension and be 0 KB in size. A short example of the contents of an MSU pack folder are as follows: ``` @@ -30,8 +22,7 @@ alttp_msu-34.pcm ``` ## How to use an MSU Pack -In all cases, you must rename your ROM file to match the pattern of names inside your MSU pack's folder, then place -your ROM file inside that folder. +In all cases, you must rename your ROM file to match the pattern of names inside your MSU pack's folder, then place your ROM file inside that folder. This will cause the folder contents to look like the following: ``` @@ -63,15 +54,4 @@ alttp_msu-34.pcm 9. Navigate into your MSU pack folder and load your ROM. ## A word of caution to streamers -Many MSU packs use copyrighted music which is not permitted for use on platforms like Twitch and YouTube. -If you choose to stream music from an MSU pack, please ensure you have permission to do so. If you stream -music which has not been licensed to you, or licensed for use in a stream in general, your VOD may be muted. -In the worst case, you may receive a DMCA take-down notice. Please be careful to only stream music for which -you have the rights to do so. - -##### Stream-safe MSU packs -Below is a list of MSU packs which, so far as we know, are safe to stream. More will be added to this list as -we learn of them. If you know of any we missed, please let us know! -- Vanilla Game Music -- [Smooth McGroove](https://drive.google.com/open?id=1JDa1jCKg5hG0Km6xNpmIgf4kDMOxVp3n) -- Zelda community member Amarith assembled the following list for the purpose of competitive restreams. While we have not ourselves verified this list, all submissions required VoD proof they were not muted. Generally speaking, MSU-1 packs are less safe if they contain lyrics at any point. This list was only tested on Twitch and results for other platforms may vary. [Restream-Safe List](https://tinyurl.com/MSUsApprovedForLeagueChannels) +Many MSU packs use copyrighted music which is not permitted for use on platforms like Twitch and YouTube. If you choose to stream music from an MSU pack, please ensure you have permission to do so. If you stream music which has not been licensed to you, or licensed for use in a stream in general, your VOD may be muted. In the worst case, you may receive a DMCA take-down notice. Please be careful to only stream music for which you have the rights to do so. \ No newline at end of file From 92125052431f5645be3b65b80bb36e2aecc4c6d8 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 23:17:25 -0500 Subject: [PATCH 20/31] WebHost: Remove newline from FAQ. --- WebHostLib/static/assets/faq/faq_en.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/WebHostLib/static/assets/faq/faq_en.md b/WebHostLib/static/assets/faq/faq_en.md index f439dc0ed475..eb8f4c17f67c 100644 --- a/WebHostLib/static/assets/faq/faq_en.md +++ b/WebHostLib/static/assets/faq/faq_en.md @@ -23,8 +23,7 @@ While a multi-world game traditionally requires all players to be playing the sa Yes. All our supported games can be generated as single-player experiences, and so long as you download the software, the website is not required to generate them. ## How do I get started? -If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join our discord server at the [Archipelago Discord](https://discord.gg/archipelago). There are always people ready to answer any questions -you might have. +If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join our discord server at the [Archipelago Discord](https://discord.gg/archipelago). There are always people ready to answer any questions you might have. ## I want to add a game to the Archipelago randomizer. How do I do that? The best way to get started is to take a look at our code on GitHub at [Archipelago GitHub Page](https://github.com/ArchipelagoMW/Archipelago). From a864b893b8388a2b3776813358226bb353294935 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Sun, 19 Dec 2021 23:29:04 -0500 Subject: [PATCH 21/31] WebHost: Newlines must die. --- .../static/assets/gameInfo/en_Minecraft.md | 13 +++------- .../assets/gameInfo/en_Ocarina of Time.md | 13 +++------- .../tutorial/archipelago/commands_en.md | 7 +++-- .../tutorial/archipelago/triggers_en.md | 3 +-- .../tutorial/archipelago/using_website_en.md | 22 +++++----------- .../assets/tutorial/factorio/setup_en.md | 3 +-- .../assets/tutorial/ff1/multiworld_en.md | 3 +-- .../static/assets/tutorial/ror2/setup_en.md | 14 +++------- .../tutorial/super-metroid/multiworld_en.md | 6 ++--- .../assets/tutorial/timespinner/setup_en.md | 2 +- .../assets/tutorial/zelda3/plando_en.md | 26 +++++++------------ 11 files changed, 36 insertions(+), 76 deletions(-) diff --git a/WebHostLib/static/assets/gameInfo/en_Minecraft.md b/WebHostLib/static/assets/gameInfo/en_Minecraft.md index 8fff28cea365..ca7ddb8df567 100644 --- a/WebHostLib/static/assets/gameInfo/en_Minecraft.md +++ b/WebHostLib/static/assets/gameInfo/en_Minecraft.md @@ -4,18 +4,13 @@ The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Minecraft Player Settings Page](../player-settings). ## What does randomization do to this game? -Recipes are removed from the crafting book and shuffled into the item pool. It can also optionally change which -structures appear in each dimension. Crafting recipes are re-learned when they are received from other players as -item checks, and occasionally when completing your own achievements. +Recipes are removed from the crafting book and shuffled into the item pool. It can also optionally change which structures appear in each dimension. Crafting recipes are re-learned when they are received from other players as item checks, and occasionally when completing your own achievements. ## What is considered a location check in minecraft? -Location checks in are completed when the player completes various Minecraft achievements. Opening the advancements -menu in-game by pressing "L" will display outstanding achievements. +Location checks in are completed when the player completes various Minecraft achievements. Opening the advancements menu in-game by pressing "L" will display outstanding achievements. ## When the player receives an item, what happens? -When the player receives an item in Minecraft, it either unlocks crafting recipes or puts items into the player's -inventory directly. +When the player receives an item in Minecraft, it either unlocks crafting recipes or puts items into the player's inventory directly. ## What is the victory condition? -Victory is achieved when the player kills the Ender Dragon, enters the portal in The End, and completes the credits -sequence either by skipping it or watching hit play out. +Victory is achieved when the player kills the Ender Dragon, enters the portal in The End, and completes the credits sequence either by skipping it or watching hit play out. diff --git a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md index 2902994d2b1c..d4e0457d42af 100644 --- a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md +++ b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md @@ -4,22 +4,17 @@ The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Ocarina of Time Player Settings Page](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game -is always able to be completed, but because of the item shuffle the player may need to access certain areas before -they would in the vanilla game. +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. ## What items and locations get shuffled? -All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could -contain any of those items may have their contents changed. Gold Skultulla locations may also be included as necessary +All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. Gold Skultulla locations may also be included as necessary checks at the user's discretion. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to -limit certain items to your own world. +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. ## What does another world's item look like in OoT? Items belonging to other worlds are represented by an Ocarina of Time. ## When the player receives an item, what happens? -When the player receives an item, Link will hold the item above his head and display it to the world. It's good for -business! +When the player receives an item, Link will hold the item above his head and display it to the world. It's good for business! diff --git a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md index d076b6c32ace..423f6fd09096 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md @@ -15,10 +15,9 @@ The following list is a list of client commands which may be available to you th - Just typing anything will broadcast a message to all players #### Remote Commands -- `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some locations -to earn a hint. You can check how many you have by just running `!hint` -- `!forfeit` If you didn't turn on auto-forfeit or you allowed forfeiting prior to goal completion. Remember that "forfeiting" actually means sending out your remaining items in your world. -- `!collect` Grants you all of the remaining checks in your world. Can only be used after your goal is complete or you have forfeited. +- `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some locations to earn a hint. You can check how many you have by just running `!hint` +- `!forfeit` If you didn't turn on auto-forfeit or if you allowed forfeiting prior to goal completion. Remember that "forfeiting" actually means sending out your remaining items in your world. +- `!collect` Grants you all the remaining checks in your world. Can only be used after your goal is complete or when you have forfeited. #### Host only (on Archipelago.gg or in your server console) - `/forfeit ` Forfeits someone regardless of settings and game completion status diff --git a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md index 3424d9fee0a0..36f1cbbf6143 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md @@ -2,8 +2,7 @@ This guide details the use of the Archipelago YAML trigger system. This guide is intended for a more advanced user with more in-depth knowledge of Archipelago YAML options as well as experience editing YAML files. This guide should take about 5 minutes to read. ## What are triggers? -Triggers allow you to customize your game settings by allowing you to define one or many options which only occur under specific conditions. These are essentially "if, then" statements for options in your game. -A good example of what you can do with triggers is the custom mercenary mode YAML that was created using entirely triggers and plando. +Triggers allow you to customize your game settings by allowing you to define one or many options which only occur under specific conditions. These are essentially "if, then" statements for options in your game. A good example of what you can do with triggers is the custom mercenary mode YAML that was created using entirely triggers and plando. Mercenary mode YAML: [Mercenary Mode YAML on GitHub](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) diff --git a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md index 62ca3a2a61f1..dd4b243f6ca0 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md @@ -4,23 +4,13 @@ This guide encompasses the use cases for rolling and hosting multiworld games on ## 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](https://archipelago.gg/generate). Here, you can adjust some server settings such as forfeit 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. +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. +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](https://archipelago.gg/uploads) +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](https://archipelago.gg/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. \ No newline at end of file +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. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/factorio/setup_en.md b/WebHostLib/static/assets/tutorial/factorio/setup_en.md index f356c8b22edd..1147c0489f2b 100644 --- a/WebHostLib/static/assets/tutorial/factorio/setup_en.md +++ b/WebHostLib/static/assets/tutorial/factorio/setup_en.md @@ -105,8 +105,7 @@ server, you can also issue the `!help` command to learn about additional command "Connecting to Someone Else's Factorio Game" above. ## Troubleshooting -In case any problems should occur, the Archipelago Client will create a file `FactorioClient.txt` in the `/logs`. -The contents of this file may help you troubleshoot an issue on your own and is vital for requesting help from other +In case any problems should occur, the Archipelago Client will create a file `FactorioClient.txt` in the `/logs`. The contents of this file may help you troubleshoot an issue on your own and is vital for requesting help from other people in Archipelago. ## Additional Resources diff --git a/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md b/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md index b8bdce8a6324..68c057eef898 100644 --- a/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md @@ -19,8 +19,7 @@ 4. Browse for `EmuHawk.exe` located inside your Bizhawk folder (from step 1) and click **Open**. ## Obtaining your Archipelago yaml file and randomized ROM -Unlike most other Archipelago.gg games Final Fantasy 1 is randomized by the -main randomizer at [https://finalfantasyrandomizer.com/](https://finalfantasyrandomizer.com/). +Unlike most other Archipelago.gg games Final Fantasy 1 is randomized by the main randomizer at [https://finalfantasyrandomizer.com/](https://finalfantasyrandomizer.com/). Generate a game by going to the site and performing the following steps: 1. Select the randomization options (also known as `Flags` in the community) of your choice. If you do not know what you prefer, or it is your first time playing select the "Archipelago" preset on the main page. diff --git a/WebHostLib/static/assets/tutorial/ror2/setup_en.md b/WebHostLib/static/assets/tutorial/ror2/setup_en.md index 856970f74e63..76926aff07a9 100644 --- a/WebHostLib/static/assets/tutorial/ror2/setup_en.md +++ b/WebHostLib/static/assets/tutorial/ror2/setup_en.md @@ -13,24 +13,18 @@ You can install the Archipelago mod using r2modman in one of two ways. One, you can use the Thunderstore website and click on the "Install with Mod Manager" link. -You can also search for the "Archipelago" mod in the r2modman interface. -The mod manager should automatically install all necessary dependencies as well. +You can also search for the "Archipelago" mod in the r2modman interface. The mod manager should automatically install all necessary dependencies as well. ### Running the Modded Game -Click on the "Start modded" button in the top left in r2modman to start the game with the -Archipelago mod installed. +Click on the "Start modded" button in the top left in r2modman to start the game with the Archipelago mod installed. ## Joining an Archipelago Session -There will be a menu button on the right side of the screen in the character select menu. -Click it in order to bring up the in lobby mod config. -From here you can expand the Archipelago sections and fill in the relevant info. -Keep password blank if there is no password on the server. +There will be a menu button on the right side of the screen in the character select menu. Click it in order to bring up the in lobby mod config. From here you can expand the Archipelago sections and fill in the relevant info. Keep password blank if there is no password on the server. Simply check `Enable Archipelago?` and when you start the run it will automatically connect. ## Gameplay -The Risk of Rain 2 players send checks by causing items to spawn in-game. That means opening chests or killing bosses, generally. -An item check is only sent out after a certain number of items are picked up. This count is configurable in the player's YAML. +The Risk of Rain 2 players send checks by causing items to spawn in-game. That means opening chests or killing bosses, generally. An item check is only sent out after a certain number of items are picked up. This count is configurable in the player's YAML. ## YAML Settings An example YAML would look like this: diff --git a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md index 216dd0b6a1d2..ecfea8dd0a92 100644 --- a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md @@ -105,8 +105,6 @@ The recommended way to host a game is to use our hosting service. The process is - Generate page: [WebHost Seed Generation Page](/generate) 4. Wait a moment while the seed is generated. 5. When the seed is generated, you will be redirected to a "Seed Info" page. -6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, - so they may download their patch files from there. -7. Note that a link to a MultiWorld Tracker is at the top of the room page. The tracker shows the progress of all - players in the game. Any observers may also be given the link to this page. +6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, so they may download their patch files from there. +7. Note that a link to a MultiWorld Tracker is at the top of the room page. The tracker shows the progress of all players in the game. Any observers may also be given the link to this page. 8. Once all players have joined, you may begin playing. diff --git a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md index 3fe2c460c1ef..bcfc42e0c60f 100644 --- a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md +++ b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md @@ -9,7 +9,7 @@ ## General Concept -The timespinner Randomizer loads Timespinner.exe from the same folder, and alters its state in memory to allow for randomization of the items. +The Timespinner Randomizer loads Timespinner.exe from the same folder, and alters its state in memory to allow for randomization of the items. ## Installation Procedures diff --git a/WebHostLib/static/assets/tutorial/zelda3/plando_en.md b/WebHostLib/static/assets/tutorial/zelda3/plando_en.md index 8075347337fc..9285f2ab37c5 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/plando_en.md +++ b/WebHostLib/static/assets/tutorial/zelda3/plando_en.md @@ -2,22 +2,17 @@ ## Configuration 1. Plando features have to be enabled first, before they can be used (opt-in). -2. To do so, go to your installation directory (Windows default: `C:\ProgramData\Archipelago`), - then open the host.yaml file with a text editor. -3. In it, you're looking for the option key `plando_options`. To enable all plando modules you can set the - value to - `bosses, items, texts, connections` +2. To do so, go to your installation directory (Windows default: `C:\ProgramData\Archipelago`), then open the host.yaml file with a text editor. +3. In it, you're looking for the option key `plando_options`. To enable all plando modules you can set the value to `bosses, items, texts, connections` ## Modules ### Bosses -- This module is enabled by default and available to be used on - [https://archipelago.gg/generate](/generate) +- This module is enabled by default and available to be used on [https://archipelago.gg/generate](/generate) - Plando versions of boss shuffles can be added like any other boss shuffle option in a yaml and weighted. -- Boss Plando works as a list of instructions from left to right, if any arenas are empty at the end, - it defaults to vanilla -- Instructions are separated by a semicolon +- Boss Plando works as a list of instructions from left to right, if any arenas are empty at the end, it defaults to vanilla. +- Instructions are separated by a semicolon. - Available Instructions: - Direct Placement: - Example: `Eastern Palace-Trinexx` @@ -119,8 +114,7 @@ plando_items: from_pool: true ``` -1. has a 50% chance to occur, which if it does places either the Lamp or Fire Rod in one's own -Link's House and removes the picked item from the item pool. +1. has a 50% chance to occur, which if it does places either the Lamp or Fire Rod in one's own Link's House and removes the picked item from the item pool. 2. Always triggers and places the Swords and Bows into one's own Big Chests 3. Locks Pendants to The Light World and therefore Crystals to dark world @@ -147,9 +141,8 @@ plando_texts: uncle_dying_sewer: 1 percentage: 50 ``` -![Uncle Example](https://cdn.discordapp.com/attachments/731214280439103580/794953870903083058/unknown.png) -This has a 50% chance to trigger at all. If it does, it throws a coin between `uncle_leaving_text` and -`uncle_dying_sewer`, then places the text "This is a plando. You've been warned." at that location. +![Example plando text at Uncle](https://cdn.discordapp.com/attachments/731214280439103580/794953870903083058/unknown.png) +This has a 50% chance to trigger at all. If it does, it throws a coin between `uncle_leaving_text` and `uncle_dying_sewer`, then places the text "This is a plando. You've been warned." at that location. ### Connections - This module is disabled by default. @@ -177,5 +170,4 @@ plando_connections: The first block connects the overworld entrance that normally leads to Link's House to put you into the HC West Wing instead, exiting from within there will put you at the Overworld exiting Link's House. -Without the second block, you'd still exit from within Link's House to outside Link's House and the left side -Balcony Entrance would still lead into HC West Wing +Without the second block, you'd still exit from within Link's House to outside Link's House and the left side Balcony Entrance would still lead into HC West Wing From 3e16593bb7768d05fc8c8502a82fdebcfc41dcae Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Mon, 27 Dec 2021 16:08:14 -0500 Subject: [PATCH 22/31] WebHost: Wrap SoE guide at 120 chars at request of black-sliver. --- .../secret-of-evermore/multiworld_en.md | 75 +++++++++++++------ 1 file changed, 54 insertions(+), 21 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md index 82fcde5bbb6b..03a395eaeee5 100644 --- a/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/secret-of-evermore/multiworld_en.md @@ -1,32 +1,41 @@ # Secret of Evermore Setup Guide ## Required Software + - SNI from: [SNI Releases Page](https://github.com/alttpo/sni/releases) - - v0.0.59 or newer (included in Archipelago 0.2.1 setup) + - v0.0.59 or newer (included in Archipelago 0.2.1 setup) - Hardware or software capable of loading and playing SNES ROM files - An emulator capable of connecting to SNI with ROM access. Any one of the following will work: - snes9x-rr from: [snes9x-rr Releases Page](https://github.com/gocha/snes9x-rr/releases) - BizHawk from: [BizHawk Website](http://tasvideos.org/BizHawk.html) - bsnes-plus-nwa from: [bsnes-plus GitHub](https://github.com/black-sliver/bsnes-plus) - - Or SD2SNES, FXPak Pro ([FXPak Pro Store Page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware. + - Or SD2SNES, FXPak Pro ([FXPak Pro Store Page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other + compatible hardware. - Your legally obtained Secret of Evermore US ROM file, probably named `Secret of Evermore (USA).sfc` ## Create a Config (.yaml) File ### What is a config file and why do I need one? -See the guide on setting up a basic YAML at the Archipelago setup guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) + +See the guide on setting up a basic YAML at the Archipelago setup +guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [Secret of Evermore Player Settings PAge](/games/Secret%20of%20Evermore/player-settings) + +The Player Settings page on the website allows you to configure your personal settings and export a config file from +them. Player settings page: [Secret of Evermore Player Settings PAge](/games/Secret%20of%20Evermore/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page: [YAML Validation page](/mysterycheck) + +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator +page: [YAML Validation page](/mysterycheck) ## Generating a Single-Player Game -Stand-alone "Evermizer" has a way of balancing single-player games, but may not always be on par feature-wise. Head over to the [Evermizer Website](https://evermizer.com) if you want to try the official stand-alone, otherwise read below. -1. Navigate to the Player Settings page, configure your options, and - click the "Generate Game" button. +Stand-alone "Evermizer" has a way of balancing single-player games, but may not always be on par feature-wise. Head over +to the [Evermizer Website](https://evermizer.com) if you want to try the official stand-alone, otherwise read below. + +1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. - Player Settings page: [Secret of Evermore Player Settings Page](/games/Secret%20of%20Evermore/player-settings) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. @@ -37,16 +46,24 @@ Stand-alone "Evermizer" has a way of balancing single-player games, but may not ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM -When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apsoe` extension. -Put your patch file on your desktop or somewhere convenient, open the apbpatch page on evermizer.com and generate your ROM from it. Load the ROM file in your emulator or console. apbpatch page: [Evermizer apbpatch Page](https://evermizer.com/apbpatch) +When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, +the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch +files. Your patch file should have a `.apsoe` extension. + +Put your patch file on your desktop or somewhere convenient, open the apbpatch page on evermizer.com and generate your +ROM from it. Load the ROM file in your emulator or console. apbpatch +page: [Evermizer apbpatch Page](https://evermizer.com/apbpatch) ### Connect to SNI #### With an emulator -Start SNI either from the Archipelago install folder or the stand-alone version. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. + +Start SNI either from the Archipelago install folder or the stand-alone version. If this is its first time launching, +you may be prompted to allow it to communicate through the Windows Firewall. ##### snes9x-rr + 1. Load your ROM file if it hasn't already been loaded. 2. Click on the File menu and hover on **Lua Scripting** 3. Click on **New Lua Script Window...** @@ -60,8 +77,9 @@ Start SNI either from the Archipelago install folder or the stand-alone version. * If the script window complains about "Bad EXE format", use the other Connector above (x86 <-> x64) ##### BizHawk -1. Ensure you have the BSNES core loaded. You may do this by clicking on the Tools menu in BizHawk and following - these menu options: + +1. Ensure you have the BSNES core loaded. You may do this by clicking on the Tools menu in BizHawk and following these + menu options: `Config --> Cores --> SNES --> BSNES` Once you have changed the loaded core, you must restart BizHawk. 2. Load your ROM file if it hasn't already been loaded. @@ -70,27 +88,42 @@ Start SNI either from the Archipelago install folder or the stand-alone version. 5. Select any `Connector.lua` file from your SNI installation ##### bsnes-plus-nwa -This should automatically connect to SNI. -If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. + +This should automatically connect to SNI. If this is its first time launching, you may be prompted to allow it to +communicate through the Windows Firewall. #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [SD2SNES Releases Page](https://github.com/RedGuyyyy/sd2snes/releases) -Other hardware may find helpful information on the usb2snes platforms page: [usb2snes Supported Platforms Page](http://usb2snes.com/#supported-platforms) +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do +this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES +releases page: [SD2SNES Releases Page](https://github.com/RedGuyyyy/sd2snes/releases) + +Other hardware may find helpful information on the usb2snes platforms +page: [usb2snes Supported Platforms Page](http://usb2snes.com/#supported-platforms) 1. Copy the ROM file to your SD card. 2. Load the ROM file from the menu. ### Open the client -Open ap-soeclient ([Evermizer Archipelago Client Page](http://evermizer.com/apclient)) in a modern browser. Do not switch tabs, open it in a new window if you want to use the browser while playing. Do not minimize the window with the client. + +Open ap-soeclient ([Evermizer Archipelago Client Page](http://evermizer.com/apclient)) in a modern browser. Do not +switch tabs, open it in a new window if you want to use the browser while playing. Do not minimize the window with the +client. The client should automatically connect to SNI, the "SNES" status should change to green. ### Connect to the Archipelago Server -Enter `/connect server:port` in the client's command prompt and press enter. You'll find `server:port` on the same page that had the patch file. + +Enter `/connect server:port` in the client's command prompt and press enter. You'll find `server:port` on the same page +that had the patch file. ### Play the game -When the game is loaded but not yet past the intro cutscene, the "Game" status is yellow. When the client shows "AP" as green and "Game" as yellow, you're ready to play. The intro can be skipped pressing the START button and "Game" should change to green. Congratulations on successfully joining a multiworld game! + +When the game is loaded but not yet past the intro cutscene, the "Game" status is yellow. When the client shows "AP" as +green and "Game" as yellow, you're ready to play. The intro can be skipped pressing the START button and "Game" should +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 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) From e2f61636cc57ab7fca6d8dd17fe5dbe948a1af57 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Fri, 31 Dec 2021 14:12:22 -0500 Subject: [PATCH 23/31] WebHost: Undo all softwrapping changes because people don't like it. Fair enough! --- WebHostLib/static/assets/faq/faq_en.md | 52 +++-- .../assets/gameInfo/en_A Link to the Past.md | 22 +- .../static/assets/gameInfo/en_Factorio.md | 27 ++- .../assets/gameInfo/en_Final Fantasy.md | 22 +- .../static/assets/gameInfo/en_Minecraft.md | 21 +- .../assets/gameInfo/en_Ocarina of Time.md | 22 +- .../assets/gameInfo/en_Risk of Rain 2.md | 26 ++- .../assets/gameInfo/en_Secret of Evermore.md | 24 ++- .../static/assets/gameInfo/en_Subnautica.md | 19 +- .../assets/gameInfo/en_Super Metroid.md | 19 +- .../static/assets/gameInfo/en_Timespinner.md | 25 ++- .../assets/tutorial/Subnautica/setup_en.md | 19 +- .../archipelago/advanced_settings_en.md | 148 +++++++++---- .../tutorial/archipelago/commands_en.md | 23 +- .../assets/tutorial/archipelago/plando_en.md | 200 ++++++++++++------ .../assets/tutorial/archipelago/setup_en.md | 76 +++++-- .../tutorial/archipelago/triggers_en.md | 50 +++-- .../tutorial/archipelago/using_website_en.md | 35 ++- .../assets/tutorial/factorio/setup_en.md | 95 ++++++--- .../assets/tutorial/ff1/multiworld_en.md | 56 +++-- .../assets/tutorial/minecraft/minecraft_en.md | 37 +++- .../assets/tutorial/minecraft/minecraft_es.md | 95 +++++---- .../assets/tutorial/minecraft/minecraft_sv.md | 60 ++++-- .../static/assets/tutorial/ror2/setup_en.md | 29 ++- .../tutorial/super-metroid/multiworld_en.md | 94 +++++--- .../assets/tutorial/timespinner/setup_en.md | 33 ++- .../static/assets/tutorial/zelda3/msu1_en.md | 31 ++- .../static/assets/tutorial/zelda3/msu1_es.md | 48 +++-- .../static/assets/tutorial/zelda3/msu1_fr.md | 43 ++-- .../assets/tutorial/zelda3/multiworld_de.md | 112 +++++----- .../assets/tutorial/zelda3/multiworld_en.md | 102 ++++++--- .../assets/tutorial/zelda3/multiworld_es.md | 148 ++++++++----- .../assets/tutorial/zelda3/multiworld_fr.md | 158 ++++++++------ .../assets/tutorial/zelda3/plando_en.md | 55 +++-- .../static/assets/tutorial/zelda5/setup_en.md | 42 +++- .../static/assets/tutorial/zelda5/setup_es.md | 53 +++-- 36 files changed, 1444 insertions(+), 677 deletions(-) diff --git a/WebHostLib/static/assets/faq/faq_en.md b/WebHostLib/static/assets/faq/faq_en.md index eb8f4c17f67c..e90fe10227d8 100644 --- a/WebHostLib/static/assets/faq/faq_en.md +++ b/WebHostLib/static/assets/faq/faq_en.md @@ -1,35 +1,63 @@ # Frequently Asked Questions ## What is a randomizer? -A randomizer is a modification of a video game which reorganizes the items required to progress through the game. A normal play-through of a game might require you to use item A to unlock item B, then C, and so forth. In a randomized game, you might first find item C, then A, then B. -This transforms games from a linear experience into a puzzle, presenting players with a new challenge each time they play a randomized game. Putting items in non-standard locations can require the player to think about the game world and the items they encounter in new and interesting ways. +A randomizer is a modification of a video game which reorganizes the items required to progress through the game. A +normal play-through of a game might require you to use item A to unlock item B, then C, and so forth. In a randomized +game, you might first find item C, then A, then B. + +This transforms games from a linear experience into a puzzle, presenting players with a new challenge each time they +play a randomized game. Putting items in non-standard locations can require the player to think about the game world and +the items they encounter in new and interesting ways. ## What happens if an item is placed somewhere it is impossible to get? -The randomizer has many strict sets of rules it must follow when generating a game. One of the functions of these rules is to ensure items necessary to complete the game will be accessible to the player. Many games also have a subset of rules allowing certain items to be placed in normally unreachable locations, provided the player has indicated they are comfortable exploiting certain glitches in the game. + +The randomizer has many strict sets of rules it must follow when generating a game. One of the functions of these rules +is to ensure items necessary to complete the game will be accessible to the player. Many games also have a subset of +rules allowing certain items to be placed in normally unreachable locations, provided the player has indicated they are +comfortable exploiting certain glitches in the game. ## What is a multi-world? -While a randomizer shuffles a game, a multi-world randomizer shuffles that game for multiple players. For example, in a two player multi-world, players A and B each get their own randomized version of a game, called seeds. In each player's game, they may find items which belong to the other player. If player A finds an item which belongs to player B, the item will be sent to player B's world over the internet. -This creates a cooperative experience during multi-world games, requiring players to rely upon each other to complete their game. +While a randomizer shuffles a game, a multi-world randomizer shuffles that game for multiple players. For example, in a +two player multi-world, players A and B each get their own randomized version of a game, called seeds. In each player's +game, they may find items which belong to the other player. If player A finds an item which belongs to player B, the +item will be sent to player B's world over the internet. + +This creates a cooperative experience during multi-world games, requiring players to rely upon each other to complete +their game. ## What happens if a person has to leave early? -If a player must leave early, they can use Archipelago's forfeit system. When a player forfeits their game, all the items in that game which belong to other players are sent out automatically, so other players can continue to play. + +If a player must leave early, they can use Archipelago's forfeit system. When a player forfeits their game, all the +items in that game which belong to other players are sent out automatically, so other players can continue to play. ## What does multi-game mean? -While a multi-world game traditionally requires all players to be playing the same game, a multi-game multi-world allows players to randomize any of a number of supported games, and send items between them. This allows players of different games to interact with one another in a single multiplayer environment. + +While a multi-world game traditionally requires all players to be playing the same game, a multi-game multi-world allows +players to randomize any of a number of supported games, and send items between them. This allows players of different +games to interact with one another in a single multiplayer environment. ## Can I generate a single-player game with Archipelago? -Yes. All our supported games can be generated as single-player experiences, and so long as you download the software, the website is not required to generate them. + +Yes. All our supported games can be generated as single-player experiences, and so long as you download the software, +the website is not required to generate them. ## How do I get started? -If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join our discord server at the [Archipelago Discord](https://discord.gg/archipelago). There are always people ready to answer any questions you might have. + +If you are ready to start randomizing games, or want to start playing your favorite randomizer with others, please join +our discord server at the [Archipelago Discord](https://discord.gg/archipelago). There are always people ready to answer +any questions you might have. ## I want to add a game to the Archipelago randomizer. How do I do that? -The best way to get started is to take a look at our code on GitHub at [Archipelago GitHub Page](https://github.com/ArchipelagoMW/Archipelago). -There you will find examples of games in the worlds folder at [/worlds Folder in Archipelago Code](https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds). +The best way to get started is to take a look at our code on GitHub +at [Archipelago GitHub Page](https://github.com/ArchipelagoMW/Archipelago). + +There you will find examples of games in the worlds folder +at [/worlds Folder in Archipelago Code](https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds). -You may also find developer documentation in the docs folder at [/docs Folder in Archipelago Code](https://github.com/ArchipelagoMW/Archipelago/tree/main/docs). +You may also find developer documentation in the docs folder +at [/docs Folder in Archipelago Code](https://github.com/ArchipelagoMW/Archipelago/tree/main/docs). If you have more questions, feel free to ask in the **#archipelago-dev** channel on our Discord. diff --git a/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md b/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md index 1799da2cbdfa..4ecd2e6348d4 100644 --- a/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md +++ b/WebHostLib/static/assets/gameInfo/en_A Link to the Past.md @@ -1,20 +1,32 @@ # A Link to the Past ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [LttP Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [LttP Player Settings Page](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. + +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is +always able to be completed, but because of the item shuffle the player may need to access certain areas before they +would in the vanilla game. ## What items and locations get shuffled? -All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. + +All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could +contain any of those items may have their contents changed. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. + +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit +certain items to your own world. ## What does another world's item look like in LttP? + Items belonging to other worlds are represented by a Power Star from Super Mario World. ## When the player receives an item, what happens? -When the player receives an item, Link will hold the item above his head and display it to the world. It's good for business! + +When the player receives an item, Link will hold the item above his head and display it to the world. It's good for +business! diff --git a/WebHostLib/static/assets/gameInfo/en_Factorio.md b/WebHostLib/static/assets/gameInfo/en_Factorio.md index b0ca91269b01..7ea54a1405b9 100644 --- a/WebHostLib/static/assets/gameInfo/en_Factorio.md +++ b/WebHostLib/static/assets/gameInfo/en_Factorio.md @@ -1,19 +1,34 @@ # Factorio ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Factorio Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Factorio Player Settings Page](../player-settings). ## What does randomization do to this game? -In Factorio, the research tree is shuffled, causing certain technologies to be obtained in a non-standard order. Recipe costs, technology requirements, and science pack requirements may also be shuffled at the player's discretion. + +In Factorio, the research tree is shuffled, causing certain technologies to be obtained in a non-standard order. Recipe +costs, technology requirements, and science pack requirements may also be shuffled at the player's discretion. ## What Factorio items can appear in other players' worlds? -Factorio's technologies are removed from its tech tree and placed into other players' worlds. When those technologies are found, they are sent back to Factorio along with, optionally, free samples of those technologies. + +Factorio's technologies are removed from its tech tree and placed into other players' worlds. When those technologies +are found, they are sent back to Factorio along with, optionally, free samples of those technologies. ## What is a free sample? -A free sample is a single or stack of items in Factorio, granted by a technology received from another world. For example, receiving the technology `Portable Solar Panel` may also grant the player a stack of portable solar panels, and place them directly into the player's inventory. + +A free sample is a single or stack of items in Factorio, granted by a technology received from another world. For +example, receiving the technology `Portable Solar Panel` may also grant the player a stack of portable solar panels, and +place them directly into the player's inventory. ## What does another world's item look like in Factorio? -In Factorio, items which need to be sent to other worlds appear in the tech tree as new research items. They are represented by the Archipelago icon, and must be researched as if it were a normal technology. Upon successful completion of research, the item will be sent to its home world. + +In Factorio, items which need to be sent to other worlds appear in the tech tree as new research items. They are +represented by the Archipelago icon, and must be researched as if it were a normal technology. Upon successful +completion of research, the item will be sent to its home world. ## When the engineer receives an item, what happens? -When the player receives a technology, it is instantly learned and able to be crafted. A message will appear in the chat log to notify the player, and if free samples are enabled the player may also receive some items directly to their inventory. + +When the player receives a technology, it is instantly learned and able to be crafted. A message will appear in the chat +log to notify the player, and if free samples are enabled the player may also receive some items directly to their +inventory. diff --git a/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md b/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md index e25981a1df96..a74cd42f7335 100644 --- a/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md +++ b/WebHostLib/static/assets/gameInfo/en_Final Fantasy.md @@ -1,14 +1,26 @@ # Final Fantasy 1 (NES) ## Where is the settings page? -Unlike most games on Archipelago.gg, Final Fantasy 1's settings are controlled entirely by the original randomzier. You can find an exhaustive list of documented settings on the FFR website: [FF1R Website](https://finalfantasyrandomizer.com/) + +Unlike most games on Archipelago.gg, Final Fantasy 1's settings are controlled entirely by the original randomzier. You +can find an exhaustive list of documented settings on the FFR +website: [FF1R Website](https://finalfantasyrandomizer.com/) ## What does randomization do to this game? -A better questions is what isn't randomized at this point. Enemies stats and spell, character spells, shop inventory and boss stats and spells are all commonly randomized. Unlike most other randomizers it is also most standard to shuffle progression items and non-progression items into separate pools and then redistribute them to their respective locations. So ,for example, Princess Sarah may have the CANOE instead of the LUTE; however, she will never have a Heal Pot or some armor. There are plenty of other things that can be randomized on the main randomizer site: [FF1R Website](https://finalfantasyrandomizer.com/) + +A better questions is what isn't randomized at this point. Enemies stats and spell, character spells, shop inventory and +boss stats and spells are all commonly randomized. Unlike most other randomizers it is also most standard to shuffle +progression items and non-progression items into separate pools and then redistribute them to their respective +locations. So ,for example, Princess Sarah may have the CANOE instead of the LUTE; however, she will never have a Heal +Pot or some armor. There are plenty of other things that can be randomized on the main randomizer +site: [FF1R Website](https://finalfantasyrandomizer.com/) ## What Final Fantasy items can appear in other players' worlds? -All items can appear in other players worlds. This includes consumables, shards, weapons, armor and, of course, -key items. + +All items can appear in other players worlds. This includes consumables, shards, weapons, armor and, of course, key +items. ## What does another world's item look like in Final Fantasy -All local and remote items appear the same. It will say that you received an item and then BOTH the client log and the emulator will display what was found external to the in-game text box. + +All local and remote items appear the same. It will say that you received an item and then BOTH the client log and the +emulator will display what was found external to the in-game text box. diff --git a/WebHostLib/static/assets/gameInfo/en_Minecraft.md b/WebHostLib/static/assets/gameInfo/en_Minecraft.md index ca7ddb8df567..b38f611afbfd 100644 --- a/WebHostLib/static/assets/gameInfo/en_Minecraft.md +++ b/WebHostLib/static/assets/gameInfo/en_Minecraft.md @@ -1,16 +1,27 @@ # Minecraft ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Minecraft Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Minecraft Player Settings Page](../player-settings). ## What does randomization do to this game? -Recipes are removed from the crafting book and shuffled into the item pool. It can also optionally change which structures appear in each dimension. Crafting recipes are re-learned when they are received from other players as item checks, and occasionally when completing your own achievements. + +Recipes are removed from the crafting book and shuffled into the item pool. It can also optionally change which +structures appear in each dimension. Crafting recipes are re-learned when they are received from other players as item +checks, and occasionally when completing your own achievements. ## What is considered a location check in minecraft? -Location checks in are completed when the player completes various Minecraft achievements. Opening the advancements menu in-game by pressing "L" will display outstanding achievements. + +Location checks in are completed when the player completes various Minecraft achievements. Opening the advancements menu +in-game by pressing "L" will display outstanding achievements. ## When the player receives an item, what happens? -When the player receives an item in Minecraft, it either unlocks crafting recipes or puts items into the player's inventory directly. + +When the player receives an item in Minecraft, it either unlocks crafting recipes or puts items into the player's +inventory directly. ## What is the victory condition? -Victory is achieved when the player kills the Ender Dragon, enters the portal in The End, and completes the credits sequence either by skipping it or watching hit play out. + +Victory is achieved when the player kills the Ender Dragon, enters the portal in The End, and completes the credits +sequence either by skipping it or watching hit play out. diff --git a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md index d4e0457d42af..79e16a838724 100644 --- a/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md +++ b/WebHostLib/static/assets/gameInfo/en_Ocarina of Time.md @@ -1,20 +1,32 @@ # Ocarina of Time ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Ocarina of Time Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Ocarina of Time Player Settings Page](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. + +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is +always able to be completed, but because of the item shuffle the player may need to access certain areas before they +would in the vanilla game. ## What items and locations get shuffled? -All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. Gold Skultulla locations may also be included as necessary + +All main inventory items, collectables, and ammunition can be shuffled, and all locations in the game which could +contain any of those items may have their contents changed. Gold Skultulla locations may also be included as necessary checks at the user's discretion. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. + +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit +certain items to your own world. ## What does another world's item look like in OoT? + Items belonging to other worlds are represented by an Ocarina of Time. ## When the player receives an item, what happens? -When the player receives an item, Link will hold the item above his head and display it to the world. It's good for business! + +When the player receives an item, Link will hold the item above his head and display it to the world. It's good for +business! diff --git a/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md b/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md index df87a0372a6d..8737c882ed3c 100644 --- a/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md +++ b/WebHostLib/static/assets/gameInfo/en_Risk of Rain 2.md @@ -1,13 +1,21 @@ # Risk of Rain 2 ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Risk of Rain 2 Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Risk of Rain 2 Player Settings Page](../player-settings). ## What does randomization do to this game? -Risk of Rain is already a random game, by virtue of being a roguelite. The Archipelago mod implements pure multiworld functionality in which certain chests (made clear via a location check progress bar) will send an item out to the multiworld. The items that _would have been_ in those chests will be returned to the Risk of Rain player via grants by other players in other worlds. + +Risk of Rain is already a random game, by virtue of being a roguelite. The Archipelago mod implements pure multiworld +functionality in which certain chests (made clear via a location check progress bar) will send an item out to the +multiworld. The items that _would have been_ in those chests will be returned to the Risk of Rain player via grants by +other players in other worlds. ## What Risk of Rain items can appear in other players' worlds? + The Risk of Rain items are: + * `Common Item` (White items) * `Uncommon Item` (Green items) * `Boss Item` (Yellow items) @@ -18,10 +26,18 @@ The Risk of Rain items are: Each item grants you a random in-game item from the category it belongs to. -When an item is granted by another world to the Risk of Rain player (one of the items listed above) then a random in-game item of that tier will appear in the Risk of Rain player's inventory. If the item grant is an `Equipment` and the player already has an equipment item equipped then the _item that was equipped_ will be dropped on the ground and _the new equipment_ will take it's place. (If you want the old one back, pick it up.) +When an item is granted by another world to the Risk of Rain player (one of the items listed above) then a random +in-game item of that tier will appear in the Risk of Rain player's inventory. If the item grant is an `Equipment` and +the player already has an equipment item equipped then the _item that was equipped_ will be dropped on the ground and _ +the new equipment_ will take it's place. (If you want the old one back, pick it up.) ## What does another world's item look like in Risk of Rain? -When the Risk of Rain player fills up their location check bar then the next spawned item will become an item grant for another player's world. The item in Risk of Rain will disappear in a poof of smoke and the grant will automatically go out to the multiworld. + +When the Risk of Rain player fills up their location check bar then the next spawned item will become an item grant for +another player's world. The item in Risk of Rain will disappear in a poof of smoke and the grant will automatically go +out to the multiworld. ## What is the item pickup step? -The item pickup step is a YAML setting which allows you to set how many items you need to spawn before the _next_ item that is spawned disappears (in a poof of smoke) and goes out to the multiworld. + +The item pickup step is a YAML setting which allows you to set how many items you need to spawn before the _next_ item +that is spawned disappears (in a poof of smoke) and goes out to the multiworld. diff --git a/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md b/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md index c1f91f859b86..ea9b302f3b81 100644 --- a/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md +++ b/WebHostLib/static/assets/gameInfo/en_Secret of Evermore.md @@ -1,21 +1,35 @@ # Secret of Evermore ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Secret of Evermore Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Secret of Evermore Player Settings Page](../player-settings). ## What does randomization do to this game? -Items which would normally be acquired throughout the game have been moved around! Progression logic remains, so the game is always able to be completed. However, because of the item shuffle, the player may need to access certain areas before they would in the vanilla game. For example, the Windwalker (flying machine) is accessible as soon as any weapon is obtained. + +Items which would normally be acquired throughout the game have been moved around! Progression logic remains, so the +game is always able to be completed. However, because of the item shuffle, the player may need to access certain areas +before they would in the vanilla game. For example, the Windwalker (flying machine) is accessible as soon as any weapon +is obtained. Additional help can be found in the [Evermizer guide](https://github.com/black-sliver/evermizer/blob/master/guide.md). ## What items and locations get shuffled? -All gourds/chests/pots, boss drops and alchemists are shuffled. Alchemy ingredients, sniff spot items, call bead spells and the dog can be randomized using yaml options. + +All gourds/chests/pots, boss drops and alchemists are shuffled. Alchemy ingredients, sniff spot items, call bead spells +and the dog can be randomized using yaml options. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed in another player's world. Specific items can be limited to your own world using plando. + +Any of the items which can be shuffled may also be placed in another player's world. Specific items can be limited to +your own world using plando. ## What does another world's item look like in Secret of Evermore? + Secret of Evermore will display "Sent an Item". Check the client output if you want to know which. ## What happens when the player receives an item? -When the player receives an item, a popup will appear to show which item was received. Items won't be received while a script is active such as when visiting Nobilia Market or during most Boss Fights. Once all scripts have ended, items will be received. + +When the player receives an item, a popup will appear to show which item was received. Items won't be received while a +script is active such as when visiting Nobilia Market or during most Boss Fights. Once all scripts have ended, items +will be received. diff --git a/WebHostLib/static/assets/gameInfo/en_Subnautica.md b/WebHostLib/static/assets/gameInfo/en_Subnautica.md index 850c60d0fe9b..0949dd1d5fd2 100644 --- a/WebHostLib/static/assets/gameInfo/en_Subnautica.md +++ b/WebHostLib/static/assets/gameInfo/en_Subnautica.md @@ -1,23 +1,34 @@ # Subnautica ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Subnautica Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Subnautica Player Settings Page](../player-settings). ## What does randomization do to this game? -The most noticeable change is the complete removal of freestanding technologies. The technology blueprints normally awarded from scanning those items have been shuffled into location checks throughout the AP item pool. + +The most noticeable change is the complete removal of freestanding technologies. The technology blueprints normally +awarded from scanning those items have been shuffled into location checks throughout the AP item pool. ## What is the goal of Subnautica when randomized? + The goal remains unchanged. Cure the plague, build the Neptune Escape Rocket, and escape into space. ## What items and locations get shuffled? -Most of the technologies the player will need throughout the game will be shuffled. Location checks in Subnautica are data pads and technology lockers. + +Most of the technologies the player will need throughout the game will be shuffled. Location checks in Subnautica are +data pads and technology lockers. ## Which items can be in another player's world? + Most technologies may be shuffled into another player's world. ## What does another world's item look like in Subnautica? -Location checks in Subnautica are data pads and technology lockers. Opening one of these will send an item to another player's world. + +Location checks in Subnautica are data pads and technology lockers. Opening one of these will send an item to another +player's world. ## When the player receives a technology, what happens? + When the player receives a technology, the chat log displays a notification the technology has been received. diff --git a/WebHostLib/static/assets/gameInfo/en_Super Metroid.md b/WebHostLib/static/assets/gameInfo/en_Super Metroid.md index a189c3440cd0..9d09b0d8b40a 100644 --- a/WebHostLib/static/assets/gameInfo/en_Super Metroid.md +++ b/WebHostLib/static/assets/gameInfo/en_Super Metroid.md @@ -1,20 +1,31 @@ # Super Metroid ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Super Metroid Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Super Metroid Player Settings Page](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. + +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is +always able to be completed, but because of the item shuffle the player may need to access certain areas before they +would in the vanilla game. ## What items and locations get shuffled? -All power-ups and ammunition can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. + +All power-ups and ammunition can be shuffled, and all locations in the game which could contain any of those items may +have their contents changed. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. + +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit +certain items to your own world. ## What does another world's item look like in Super Metroid? + A unique item sprite has been added to the game to represent items belonging to another world. ## When the player receives an item, what happens? + When the player receives an item, a text box will appear to show which item was received, and from whom. diff --git a/WebHostLib/static/assets/gameInfo/en_Timespinner.md b/WebHostLib/static/assets/gameInfo/en_Timespinner.md index dadee0fd3a81..a794cef31d87 100644 --- a/WebHostLib/static/assets/gameInfo/en_Timespinner.md +++ b/WebHostLib/static/assets/gameInfo/en_Timespinner.md @@ -1,23 +1,38 @@ # Timespinner ## Where is the settings page? -The player settings page for this game contains all the options you need to configure and export a config file. Player settings page link: [Timespinner Player Settings Page](../player-settings). + +The player settings page for this game contains all the options you need to configure and export a config file. Player +settings page link: [Timespinner Player Settings Page](../player-settings). ## What does randomization do to this game? -Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is always able to be completed, but because of the item shuffle the player may need to access certain areas before they would in the vanilla game. All rings and spells are also randomized into those item locations, therefore you can no longer craft them at the alchemist + +Items which the player would normally acquire throughout the game have been moved around. Logic remains, so the game is +always able to be completed, but because of the item shuffle the player may need to access certain areas before they +would in the vanilla game. All rings and spells are also randomized into those item locations, therefore you can no +longer craft them at the alchemist ## What is the goal of Timespinner when randomized? + The goal remains unchanged. Kill the Sandman\Nightmare! ## What items and locations get shuffled? -All main inventory items, orbs, collectables, and familiars can be shuffled, and all locations in the game which could contain any of those items may have their contents changed. + +All main inventory items, orbs, collectables, and familiars can be shuffled, and all locations in the game which could +contain any of those items may have their contents changed. ## Which items can be in another player's world? -Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit certain items to your own world. + +Any of the items which can be shuffled may also be placed into another player's world. It is possible to choose to limit +certain items to your own world. ## What does another world's item look like in Timespinner? -Items belonging to other worlds are represented by the vanilla item Elemental Beads ([Elemental Beads Wiki Page](https://timespinnerwiki.com/Use_Items)), Elemental Beads have no use in the randomizer. + +Items belonging to other worlds are represented by the vanilla item Elemental +Beads ([Elemental Beads Wiki Page](https://timespinnerwiki.com/Use_Items)), Elemental Beads have no use in the +randomizer. ## When the player receives an item, what happens? + When the player receives an item, the same items popup will be displayed as when you would normally obtain the item. diff --git a/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md b/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md index 42c30ee692f9..39d292938df1 100644 --- a/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md +++ b/WebHostLib/static/assets/tutorial/Subnautica/setup_en.md @@ -4,26 +4,31 @@ - Subnautica from: [Subnautica Steam Store Page](https://store.steampowered.com/app/264710/Subnautica/) - QModManager4 from: [QModManager4 Nexus Mods Page](https://www.nexusmods.com/subnautica/mods/201) -- Archipelago Mod for Subnautica from: [Subnautica Archipelago Mod Releases Page](https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases) - +- Archipelago Mod for Subnautica + from: [Subnautica Archipelago Mod Releases Page](https://github.com/Berserker66/ArchipelagoSubnauticaModSrc/releases) ## Installation Procedures 1. Install QModManager4 as per its instructions. -2. The folder you installed QModManager4 into will now have a /QMods directory. It might appear after a start of Subnautica. You can also create this folder yourself. +2. The folder you installed QModManager4 into will now have a /QMods directory. It might appear after a start of + Subnautica. You can also create this folder yourself. 3. Unpack the Archipelago Mod into this folder, so that Subnautica/QMods/Archipelago/ is a valid path. -4. Start Subnautica. You should see a Connect Menu in the topleft of your main Menu. +4. Start Subnautica. You should see a Connect Menu in the topleft of your main Menu. ## Troubleshooting -If you don't see the connect window check that you see a qmodmanager_log-Subnautica.txt in Subnautica, if not QModManager4 is not correctly installed, otherwise open it and look for `[Info : BepInEx] Loading [Archipelago 1.0.0.0]`, version number doesn't matter. If it doesn't show this, then QModManager4 didn't find the Archipelago mod, so check your paths. - +If you don't see the connect window check that you see a qmodmanager_log-Subnautica.txt in Subnautica, if not +QModManager4 is not correctly installed, otherwise open it and look +for `[Info : BepInEx] Loading [Archipelago 1.0.0.0]`, version number doesn't matter. If it doesn't show this, then +QModManager4 didn't find the Archipelago mod, so check your paths. + ## Joining a MultiWorld Game -1. In Host, enter the address of the server, such as archipelago.gg:38281, your server host should be able to tell you this. +1. In Host, enter the address of the server, such as archipelago.gg:38281, your server host should be able to tell you + this. 2. In Password enter the server password if one exists, otherwise leave blank. diff --git a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md index 958a883718b3..4eacc24365f4 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/advanced_settings_en.md @@ -1,23 +1,38 @@ # Advanced YAML Guide -This guide covers more the more advanced options available in YAML files. This guide is intended for the user who is intent on editing their YAML file manually. This guide should take about 10 minutes to read. -If you would like to generate a basic, fully playable, YAML without editing a file then visit the settings page for the game you intend to play. +This guide covers more the more advanced options available in YAML files. This guide is intended for the user who is +intent on editing their YAML file manually. This guide should take about 10 minutes to read. -The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the game you would like. Supported games page: [Archipelago Games List](https://archipelago.gg/games) +If you would like to generate a basic, fully playable, YAML without editing a file then visit the settings page for the +game you intend to play. -Clicking on the "Export Settings" button at the bottom-left will provide you with a pre-filled YAML with your options. The player settings page also has an option to download a fully filled out yaml containing every option with every available setting for the available options. +The settings page can be found on the supported games page, just click the "Settings Page" link under the name of the +game you would like. Supported games page: [Archipelago Games List](https://archipelago.gg/games) + +Clicking on the "Export Settings" button at the bottom-left will provide you with a pre-filled YAML with your options. +The player settings page also has an option to download a fully filled out yaml containing every option with every +available setting for the available options. ## YAML Overview -The Archipelago system generates games using player configuration files as input. These are going to be YAML files and each world will have one of these containing their custom settings for the game that world will play. + +The Archipelago system generates games using player configuration files as input. These are going to be YAML files and +each world will have one of these containing their custom settings for the game that world will play. ## YAML Formatting -YAML files are a format of human-readable config files. The basic syntax of a yaml file will have a `root` node and then different levels of `nested` nodes that the generator reads in order to determine your settings. -To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text website: [SublimeText Website](https://www.sublimetext.com) +YAML files are a format of human-readable config files. The basic syntax of a yaml file will have a `root` node and then +different levels of `nested` nodes that the generator reads in order to determine your settings. + +To nest text, the correct syntax is to indent **two spaces over** from its root option. A YAML file can be edited with +whatever text editor you choose to use though I personally recommend that you use Sublime Text. Sublime text +website: [SublimeText Website](https://www.sublimetext.com) -This program out of the box supports the correct formatting for the YAML file, so you will be able to use the tab key and get proper highlighting for any potential errors made while editing the file. If using any other text editor you should ensure your indentation is done correctly with two spaces. +This program out of the box supports the correct formatting for the YAML file, so you will be able to use the tab key +and get proper highlighting for any potential errors made while editing the file. If using any other text editor you +should ensure your indentation is done correctly with two spaces. A typical YAML file will look like: + ```yaml root_option: nested_option_one: @@ -28,58 +43,93 @@ root_option: option_two_setting_two: 43 ``` -In Archipelago, YAML options are always written out in full lowercase with underscores separating any words. The numbers following the colons here are weights. The generator will read the weight of every option the roll that option that many times, the next option as many times as its numbered and so forth. +In Archipelago, YAML options are always written out in full lowercase with underscores separating any words. The numbers +following the colons here are weights. The generator will read the weight of every option the roll that option that many +times, the next option as many times as its numbered and so forth. -For the above example `nested_option_one` will have `option_one_setting_one` 1 time and `option_one_setting_two` 0 times so `option_one_setting_one` is guaranteed to occur. +For the above example `nested_option_one` will have `option_one_setting_one` 1 time and `option_one_setting_two` 0 times +so `option_one_setting_one` is guaranteed to occur. -For `nested_option_two`, `option_two_setting_one` will be rolled 14 times and `option_two_setting_two` will be rolled 43 times against each other. This means `option_two_setting_two` will be more likely to occur, but it isn't guaranteed adding more randomness and "mystery" to your settings. +For `nested_option_two`, `option_two_setting_one` will be rolled 14 times and `option_two_setting_two` will be rolled 43 +times against each other. This means `option_two_setting_two` will be more likely to occur, but it isn't guaranteed +adding more randomness and "mystery" to your settings. Every configurable setting supports weights. ### Root Options -Currently, there are only a few options that are root options. Everything else should be nested within one of these root options or in some cases nested within other nested options. The only options that should exist in root are `description`, `name`, `game`, `requires`, `accessibility`, `progression_balancing`, `triggers`, and the name of the games you want settings for. -* `description` is ignored by the generator and is simply a good way for you to organize if you have multiple files using this to detail the intention of the file. +Currently, there are only a few options that are root options. Everything else should be nested within one of these root +options or in some cases nested within other nested options. The only options that should exist in root +are `description`, `name`, `game`, `requires`, `accessibility`, `progression_balancing`, `triggers`, and the name of the +games you want settings for. + +* `description` is ignored by the generator and is simply a good way for you to organize if you have multiple files + using this to detail the intention of the file. -* `name` is the player name you would like to use and is used for your slot data to connect with most games. This can also be filled with multiple names each having a weight to it. +* `name` is the player name you would like to use and is used for your slot data to connect with most games. This can + also be filled with multiple names each having a weight to it. -* `game` is where either your chosen game goes or if you would like can be filled with multiple games each with different weights. +* `game` is where either your chosen game goes or if you would like can be filled with multiple games each with + different weights. -* `requires` details different requirements from the generator for the YAML to work as you expect it to. Generally this is good for detailing the version of Archipelago this YAML was prepared for as if it is rolled on an older version may be missing settings and as such will not work as expected. If any plando is used in the file then requiring it here to ensure it will be used is good practice. +* `requires` details different requirements from the generator for the YAML to work as you expect it to. Generally this + is good for detailing the version of Archipelago this YAML was prepared for as if it is rolled on an older version may + be missing settings and as such will not work as expected. If any plando is used in the file then requiring it here to + ensure it will be used is good practice. -* `accessibility` determines the level of access to the game the generation will expect you to have in order to reach your completion goal. This supports `items`, `locations`, and `none` and is set to `locations` by default. - * `locations` will guarantee all locations are accessible in your world. - * `items` will guarantee you can acquire all items in your world but may not be able to access all locations. This mostly comes into play if there is any entrance shuffle in the seed as locations without items in them can be placed in areas that make them unreachable. - * `none` will only guarantee that the seed is beatable. You will be guaranteed able to finish the seed logically but may not be able to access all locations or acquire all items. A good example of this is having a big key in the big chest -in a dungeon in ALTTP making it impossible to get and finish the dungeon. +* `accessibility` determines the level of access to the game the generation will expect you to have in order to reach + your completion goal. This supports `items`, `locations`, and `none` and is set to `locations` by default. + * `locations` will guarantee all locations are accessible in your world. + * `items` will guarantee you can acquire all items in your world but may not be able to access all locations. This + mostly comes into play if there is any entrance shuffle in the seed as locations without items in them can be + placed in areas that make them unreachable. + * `none` will only guarantee that the seed is beatable. You will be guaranteed able to finish the seed logically but + may not be able to access all locations or acquire all items. A good example of this is having a big key in the + big chest in a dungeon in ALTTP making it impossible to get and finish the dungeon. -* `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. This primarily involves moving necessary progression items into earlier logic spheres to make the games more accessible so that players almost always have something to do. This can be turned `on` or `off` and is `on` by default. +* `progression_balancing` is a system the Archipelago generator uses to try and reduce "BK mode" as much as possible. + This primarily involves moving necessary progression items into earlier logic spheres to make the games more + accessible so that players almost always have something to do. This can be turned `on` or `off` and is `on` by + default. - * `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read more triggers in the triggers guide. Triggers guide: [Archipelago Triggers Guide](/tutorial/archipelago/triggers/en) + * `triggers` is one of the more advanced options that allows you to create conditional adjustments. You can read + more triggers in the triggers guide. Triggers + guide: [Archipelago Triggers Guide](/tutorial/archipelago/triggers/en) ### Game Options -One of your root settings will be the name of the game you would like to populate with settings. Since it is possible to give a weight to any option it is possible to have one file that can generate a seed for you where you don't know which game you'll play. For these cases you'll want to fill the game options for every game that can be rolled by these settings. If a game can be rolled it **must** have a settings section even if it is empty. +One of your root settings will be the name of the game you would like to populate with settings. Since it is possible to +give a weight to any option it is possible to have one file that can generate a seed for you where you don't know which +game you'll play. For these cases you'll want to fill the game options for every game that can be rolled by these +settings. If a game can be rolled it **must** have a settings section even if it is empty. #### Universal Game Options Some options in Archipelago can be used by every game but must still be placed within the relevant game's section. -Currently, these options are `start_inventory`, `start_hints`, `local_items`, `non_local_items`, `start_location_hints`, `exclude_locations`, and various plando options. +Currently, these options are `start_inventory`, `start_hints`, `local_items`, `non_local_items`, `start_location_hints` +, `exclude_locations`, and various plando options. -See the plando guide for more info on plando options. Plando guide: [Archipelago Plando Guide](/tutorial/archipelago/plando/en) +See the plando guide for more info on plando options. Plando +guide: [Archipelago Plando Guide](/tutorial/archipelago/plando/en) -* `start_inventory` will give any items defined here to you at the beginning of your game. The format for this must be the name as it appears in the game files and the amount you would like to start with. For example `Rupees(5): 6` which will give you the item `Rupees(5)` six times, totalling 30 rupees. +* `start_inventory` will give any items defined here to you at the beginning of your game. The format for this must be + the name as it appears in the game files and the amount you would like to start with. For example `Rupees(5): 6` which + will give you the item `Rupees(5)` six times, totalling 30 rupees. -* `start_hints` gives you free server hints for the defined item/s at the beginning of the game allowing you to hint for the location without using any hint points. +* `start_hints` gives you free server hints for the defined item/s at the beginning of the game allowing you to hint for + the location without using any hint points. * `local_items` will force any items you want to be in your world instead of being in another world. -* `non_local_items` is the inverse of `local_items` forcing any items you want to be in another world and won't be located in your own. +* `non_local_items` is the inverse of `local_items` forcing any items you want to be in another world and won't be + located in your own. -* `start_location_hints` allows you to define a location which you can then hint for to find out what item is located in it to see how important the location is. +* `start_location_hints` allows you to define a location which you can then hint for to find out what item is located in + it to see how important the location is. -* `exclude_locations` lets you define any locations that you don't want to do and during generation will force a "junk" item which isn't necessary for progression to go in these locations. +* `exclude_locations` lets you define any locations that you don't want to do and during generation will force a "junk" + item which isn't necessary for progression to go in these locations. ### Example YAML @@ -88,7 +138,7 @@ See the plando guide for more info on plando options. Plando guide: [Archipelago description: An example using various advanced options name: Example Player game: A Link to the Past -requires: +requires: version: 0.2.0 accessibility: none progression_balancing: on @@ -123,6 +173,7 @@ triggers: ``` #### This is a fully functional yaml file that will do all the following things: + * `description` gives us a general overview so if we pull up this file later we can understand the intent. * `name` is `Example Player` and this will be used in the server console when sending and receiving items. @@ -131,26 +182,37 @@ triggers: * `requires` is set to require release version 0.2.0 or higher. -* `accesibility` is set to `none` which will set this seed to beatable only meaning some locations and items may be completely inaccessible but the seed will still be completable. +* `accesibility` is set to `none` which will set this seed to beatable only meaning some locations and items may be + completely inaccessible but the seed will still be completable. -* `progression_balancing` is set on meaning we will likely receive important items earlier increasing the chance of having things to do. +* `progression_balancing` is set on meaning we will likely receive important items earlier increasing the chance of + having things to do. -* `A Link to the Past` defines a location for us to nest all the game options we would like to use for our game `A Link to the Past`. +* `A Link to the Past` defines a location for us to nest all the game options we would like to use for our + game `A Link to the Past`. -* `smallkey_shuffle` is an option for A Link to the Past which determines how dungeon small keys are shuffled. In this example we have a 1/2 chance for them to either be placed in their original dungeon and a 1/2 chance for them to be placed anywhere amongst the multiworld. +* `smallkey_shuffle` is an option for A Link to the Past which determines how dungeon small keys are shuffled. In this + example we have a 1/2 chance for them to either be placed in their original dungeon and a 1/2 chance for them to be + placed anywhere amongst the multiworld. -* `start_inventory` defines an area for us to determine what items we would like to start the seed with. For this example we have: - * `Pegasus Boots: 1` which gives us 1 copy of the Pegasus Boots - * `Bombs (3)` gives us 2 packs of 3 bombs or 6 total bombs +* `start_inventory` defines an area for us to determine what items we would like to start the seed with. For this + example we have: + * `Pegasus Boots: 1` which gives us 1 copy of the Pegasus Boots + * `Bombs (3)` gives us 2 packs of 3 bombs or 6 total bombs -* `start_hints` gives us a starting hint for the hammer available at the beginning of the multiworld which we can use with no cost. +* `start_hints` gives us a starting hint for the hammer available at the beginning of the multiworld which we can use + with no cost. -* `local_items` forces the `Bombos`, `Ether`, and `Quake` medallions to all be placed within our own world, meaning we have to find it ourselves. +* `local_items` forces the `Bombos`, `Ether`, and `Quake` medallions to all be placed within our own world, meaning we + have to find it ourselves. * `non_local_items` forces the `Moon Pearl` to be placed in someone else's world, meaning we won't be able to find it. -* `start_location_hints` gives us a starting hint for the `Spike Cave` location available at the beginning of the multiworld that can be used for no cost. +* `start_location_hints` gives us a starting hint for the `Spike Cave` location available at the beginning of the + multiworld that can be used for no cost. * `exclude_locations` forces a not important item to be placed on the `Cave 45` location. -* `triggers` allows us to define a trigger such that if our `smallkey_shuffle` option happens to roll the `any_world` result it will also ensure that `bigkey_shuffle`, `map_shuffle`, and `compass_shuffle` are also forced to the `any_world` result. \ No newline at end of file +* `triggers` allows us to define a trigger such that if our `smallkey_shuffle` option happens to roll the `any_world` + result it will also ensure that `bigkey_shuffle`, `map_shuffle`, and `compass_shuffle` are also forced to + the `any_world` result. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md index 423f6fd09096..627e4ba530dd 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md @@ -1,10 +1,16 @@ ### Helpful Commands -Commands are split into two types: client commands and server commands. Client commands are commands which are executed by the client and do not affect the Archipelago remote session. Server commands are commands which are executed by the Archipelago server and affect the Archipelago session or otherwise provide feedback from the server. -In clients which have their own commands the commands are typically prepended by a forward slash:`/`. Remote commands are always submitted to the server prepended with an exclamation point: `!`. +Commands are split into two types: client commands and server commands. Client commands are commands which are executed +by the client and do not affect the Archipelago remote session. Server commands are commands which are executed by the +Archipelago server and affect the Archipelago session or otherwise provide feedback from the server. + +In clients which have their own commands the commands are typically prepended by a forward slash:`/`. Remote commands +are always submitted to the server prepended with an exclamation point: `!`. #### Local Commands -The following list is a list of client commands which may be available to you through your Archipelago client. You execute these commands in your client window. + +The following list is a list of client commands which may be available to you through your Archipelago client. You +execute these commands in your client window. - `/connect ` Connect to the multiworld server. - `/disconnect` Disconnects you from your current session. @@ -15,9 +21,14 @@ The following list is a list of client commands which may be available to you th - Just typing anything will broadcast a message to all players #### Remote Commands -- `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some locations to earn a hint. You can check how many you have by just running `!hint` -- `!forfeit` If you didn't turn on auto-forfeit or if you allowed forfeiting prior to goal completion. Remember that "forfeiting" actually means sending out your remaining items in your world. -- `!collect` Grants you all the remaining checks in your world. Can only be used after your goal is complete or when you have forfeited. + +- `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some + locations to earn a hint. You can check how many you have by just running `!hint` +- `!forfeit` If you didn't turn on auto-forfeit or if you allowed forfeiting prior to goal completion. Remember that " + forfeiting" actually means sending out your remaining items in your world. +- `!collect` Grants you all the remaining checks in your world. Can only be used after your goal is complete or when you + have forfeited. #### Host only (on Archipelago.gg or in your server console) + - `/forfeit ` Forfeits someone regardless of settings and game completion status diff --git a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md index 297d630810f7..3850276f3cfb 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/plando_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/plando_en.md @@ -1,68 +1,109 @@ # Archipelago Plando Guide -This guide details the use of the plando modules available with Archipelago. This guide is intended for a more advanced user who has more in-depth knowledge of the randomizer they're playing as well as experience editing YAML files. This guide should take about 10 minutes to read. + +This guide details the use of the plando modules available with Archipelago. This guide is intended for a more advanced +user who has more in-depth knowledge of the randomizer they're playing as well as experience editing YAML files. This +guide should take about 10 minutes to read. ## What is Plando? -The purposes of randomizers is to randomize the items in a game to give a new experience. Plando takes this concept and changes it up by allowing you to plan out certain aspects of the game by placing certain items in certain locations, certain bosses in certain rooms, edit text for certain NPCs/signs, or even force certain region connections. Each of these options are going to be detailed separately as `item plando`, `boss plando`, `text plando`, and `connection plando`. Every game in archipelago supports item plando but the other plando options are only supported by certain games. Currently, Minecraft and LTTP both support connection plando, but only LTTP supports text and boss plando. + +The purposes of randomizers is to randomize the items in a game to give a new experience. Plando takes this concept and +changes it up by allowing you to plan out certain aspects of the game by placing certain items in certain locations, +certain bosses in certain rooms, edit text for certain NPCs/signs, or even force certain region connections. Each of +these options are going to be detailed separately as `item plando`, `boss plando`, `text plando`, +and `connection plando`. Every game in archipelago supports item plando but the other plando options are only supported +by certain games. Currently, Minecraft and LTTP both support connection plando, but only LTTP supports text and boss +plando. ### Enabling Plando -On the website plando will already be enabled. If you will be generating the game locally plando features must be enabled manually (opt-in). To opt-in go to the archipelago installation directory (default: `C:\ProgramData\Archipelago`), open the host.yaml with a text editor and find the `plando_options` key. The available plando modules can be enabled by adding them after this such as `plando_options: bosses, items, texts, connections`. + +On the website plando will already be enabled. If you will be generating the game locally plando features must be +enabled manually (opt-in). To opt-in go to the archipelago installation directory ( +default: `C:\ProgramData\Archipelago`), open the host.yaml with a text editor and find the `plando_options` key. The +available plando modules can be enabled by adding them after this such +as `plando_options: bosses, items, texts, connections`. ## Item Plando -Item plando allows a player to place an item in a specific location or specific locations, place multiple items into a list of specific locations both in their own game or in another player's game. **Note that there's a very good chance that -cross-game plando could very well be broken i.e. placing on of your items in someone else's world playing a different game.** - -* The options for item plando are `from_pool`, `world`, `percentage`, `force`, and either item and location, or items and locations. - * `from_pool` determines if the item should be taken *from* the item pool or *added* to it. This can be true or false and defaults to true if omitted. - * `world` is the target world to place the item in. - * It gets ignored if only one world is generated. - * Can be a number, name, true, false, or null. False is the default. - * If a number is used it targets that slot or player number in the multiworld. - * If a name is used it will target the world with that player name. - * If set to true it will be any player's world besides your own. - * If set to false it will target your own world. - * If set to null it will target a random world in the multiworld. - * `force` determines whether the generator will fail if the item can't be placed in the location can be true, false, or silent. Silent is the default. - * If set to true the item must be placed and the generator will throw an error if it is unable to do so. - * If set to false the generator will log a warning if the placement can't be done but will still generate. - * If set to silent and the placement fails it will be ignored entirely. - * `percentage` is the percentage chance for the relevant block to trigger. This can be any value from 0 to 100 and if omitted will default to 100. - * Single Placement is when you use a plando block to place a single item at a single location. - * `item` is the item you would like to place and `location` is the location to place it. - * Multi Placement uses a plando block to place multiple items in multiple locations until either list is exhausted. - * `items` defines the items to use and a number letting you place multiple of it. - * `locations` is a list of possible locations those items can be placed in. - * Using the multi placement method, placements are picked randomly. + +Item plando allows a player to place an item in a specific location or specific locations, place multiple items into a +list of specific locations both in their own game or in another player's game. **Note that there's a very good chance +that cross-game plando could very well be broken i.e. placing on of your items in someone else's world playing a +different game.** + +* The options for item plando are `from_pool`, `world`, `percentage`, `force`, and either item and location, or items + and locations. + * `from_pool` determines if the item should be taken *from* the item pool or *added* to it. This can be true or + false and defaults to true if omitted. + * `world` is the target world to place the item in. + * It gets ignored if only one world is generated. + * Can be a number, name, true, false, or null. False is the default. + * If a number is used it targets that slot or player number in the multiworld. + * If a name is used it will target the world with that player name. + * If set to true it will be any player's world besides your own. + * If set to false it will target your own world. + * If set to null it will target a random world in the multiworld. + * `force` determines whether the generator will fail if the item can't be placed in the location can be true, false, + or silent. Silent is the default. + * If set to true the item must be placed and the generator will throw an error if it is unable to do so. + * If set to false the generator will log a warning if the placement can't be done but will still generate. + * If set to silent and the placement fails it will be ignored entirely. + * `percentage` is the percentage chance for the relevant block to trigger. This can be any value from 0 to 100 and + if omitted will default to 100. + * Single Placement is when you use a plando block to place a single item at a single location. + * `item` is the item you would like to place and `location` is the location to place it. + * Multi Placement uses a plando block to place multiple items in multiple locations until either list is exhausted. + * `items` defines the items to use and a number letting you place multiple of it. + * `locations` is a list of possible locations those items can be placed in. + * Using the multi placement method, placements are picked randomly. ### Available Items -* A Link to the Past: [Link to the Past Item List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) -* Factorio Non-Progressive: [Factorio Technologies Wiki List](https://wiki.factorio.com/Technologies) - * Note that these use the *internal names*. For example, `advanced-electronics` -* Factorio Progressive: [Factorio Progressive Technologies List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374) -* Minecraft: [Minecraft Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14) -* Ocarina of Time: [Ocarina of Time Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61) -* Risk of Rain 2: [Risk of Rain 2 Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8) -* Slay the Spire: [Slay the Spire Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13) -* Subnautica: [Subnautica Items List JSON File](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json) -* Timespinner: [Timespinner Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11) + +* A Link to the + Past: [Link to the Past Item List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) +* Factorio Non-Progressive: [Factorio Technologies Wiki List](https://wiki.factorio.com/Technologies) + * Note that these use the *internal names*. For example, `advanced-electronics` +* Factorio + Progressive: [Factorio Progressive Technologies List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/factorio/Technologies.py#L374) +* +Minecraft: [Minecraft Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Items.py#L14) +* Ocarina of + Time: [Ocarina of Time Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/Items.py#L61) +* Risk of Rain + 2: [Risk of Rain 2 Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Items.py#L8) +* Slay the + Spire: [Slay the Spire Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Items.py#L13) +* +Subnautica: [Subnautica Items List JSON File](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/items.json) +* +Timespinner: [Timespinner Items List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Items.py#L11) ### Available Locations -* A Link to the Past: [Link to the Past Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429) -* Factorio: [Factorio Technologies List Wiki](https://wiki.factorio.com/Technologies) - * In Factorio the location names are the same as the item names. -* Minecraft: [Minecraft Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18) -* Ocarina of Time: [Ocarina of Time Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38) -* Risk of Rain 2: [Risk of Rain 2 Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17) - * This is a special case. The locations are "ItemPickup[number]" up to the maximum set in the yaml. -* Slay the Spire: [Slay the Spire Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py) -* Subnautica: [Subnautica Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json) -* Timespinner: [Timespinner Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13) +* A Link to the + Past: [Link to the Past Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L429) +* Factorio: [Factorio Technologies List Wiki](https://wiki.factorio.com/Technologies) + * In Factorio the location names are the same as the item names. +* +Minecraft: [Minecraft Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Locations.py#L18) +* Ocarina of + Time: [Ocarina of Time Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/oot/LocationList.py#L38) +* Risk of Rain + 2: [Risk of Rain 2 Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/ror2/Locations.py#L17) + * This is a special case. The locations are "ItemPickup[number]" up to the maximum set in the yaml. +* Slay the + Spire: [Slay the Spire Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/spire/Locations.py) +* +Subnautica: [Subnautica Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/subnautica/locations.json) +* +Timespinner: [Timespinner Locations List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/timespinner/Locations.py#L13) + +A list of all available items and locations can also be found in the server's datapackage. Data package +JSON: [DataPackage JSON](/api/datapackage). -A list of all available items and locations can also be found in the server's datapackage. Data package JSON: [DataPackage JSON](/api/datapackage). ### Examples + ```yaml plando_items: -# example block 1 - Timespinner + # example block 1 - Timespinner - item: Empire Orb: 1 Radiant Orb: 1 @@ -70,8 +111,8 @@ plando_items: from_pool: true world: true percentage: 50 - -# example block 2 - Ocarina of Time + + # example block 2 - Ocarina of Time - items: Kokiri Sword: 1 Biggoron Sword: 1 @@ -90,8 +131,8 @@ plando_items: - Shadow Temple Hover Boots Chest - Spirit Temple Silver Gauntlets Chest world: false - -# example block 3 - Slay the Spire + + # example block 3 - Slay the Spire - items: Boss Relic: 3 locations: @@ -99,7 +140,7 @@ plando_items: Boss Relic 2 Boss Relic 3 -# example block 4 - Factorio + # example block 4 - Factorio - items: progressive-electric-energy-distribution: 2 electric-energy-accumulators: 1 @@ -112,32 +153,49 @@ plando_items: percentage: 80 force: true ``` -1. This block has a 50% chance to occur, and if it does will place either the Empire Orb or Radiant Orb on another player's Starter Chest 1 and removes the chosen item from the item pool. -2. This block will always trigger and will place the player's swords, bow, magic meter, strength upgrades, and hookshots in their own dungeon major item chests. + +1. This block has a 50% chance to occur, and if it does will place either the Empire Orb or Radiant Orb on another + player's Starter Chest 1 and removes the chosen item from the item pool. +2. This block will always trigger and will place the player's swords, bow, magic meter, strength upgrades, and hookshots + in their own dungeon major item chests. 3. This block will always trigger and will lock boss relics on the bosses. -4. This block has an 80% chance of occuring and when it does will place all but 1 of the items randomly among the four locations chosen here. +4. This block has an 80% chance of occuring and when it does will place all but 1 of the items randomly among the four + locations chosen here. ## Boss Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) + +As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando +guide. Z3 plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) ## Text Plando -As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando guide. Z3 plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) + +As this is currently only supported by A Link to the Past instead of explaining here please refer to the Z3 plando +guide. Z3 plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) ## Connections Plando -This is currently only supported by Minecraft and A Link to the Past. As the way that these games interact with their connections is different I will only explain the basics here while more specifics for Link to the Past connection plando can be found in its plando guide. -* The options for connections are `percentage`, `entrance`, `exit`, and `direction`. Each of these options support subweights. + +This is currently only supported by Minecraft and A Link to the Past. As the way that these games interact with their +connections is different I will only explain the basics here while more specifics for Link to the Past connection plando +can be found in its plando guide. + +* The options for connections are `percentage`, `entrance`, `exit`, and `direction`. Each of these options support + subweights. * `percentage` is the percentage chance for this connection from 0 to 100 and defaults to 100. -* Every connection has an `entrance` and an `exit`. These can be unlinked like in A Link to the Past insanity entrance shuffle. +* Every connection has an `entrance` and an `exit`. These can be unlinked like in A Link to the Past insanity entrance + shuffle. * `direction` can be `both`, `entrance`, or `exit` and determines in which direction this connection will operate. -Link to the Past connections: [Link to the Past Connections List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) +Link to the Past +connections: [Link to the Past Connections List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) -Minecraft connections: [Minecraft Connections List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62) +Minecraft +connections: [Minecraft Connections List in the Code](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/minecraft/Regions.py#L62) ### Examples + ```yaml plando_connections: -# example block 1 - Link to the Past + # example block 1 - Link to the Past - entrance: Cave Shop (Lake Hylia) exit: Cave 45 direction: entrance @@ -147,8 +205,8 @@ plando_connections: - entrance: Agahnims Tower exit: Old Man Cave Exit (West) direction: exit - -# example block 2 - Minecraft + + # example block 2 - Minecraft - entrance: Overworld Structure 1 exit: Nether Fortress direction: both @@ -157,5 +215,9 @@ plando_connections: direction: both ``` -1. These connections are decoupled so going into the lake hylia cave shop will take you to the inside of cave 45 and when you leave the interior you will exit to the cave 45 ledge. Going into the cave 45 entrance will then take you to the lake hylia cave shop. Walking into the entrance for the old man cave and Agahnim's Tower entrance will both take you to their locations as normal but leaving old man cave will exit at Agahnim's Tower. -2. This will force a nether fortress and a village to be the overworld structures for your game. Note that for the Minecraft connection plando to work structure shuffle must be enabled. \ No newline at end of file +1. These connections are decoupled so going into the lake hylia cave shop will take you to the inside of cave 45 and + when you leave the interior you will exit to the cave 45 ledge. Going into the cave 45 entrance will then take you to + the lake hylia cave shop. Walking into the entrance for the old man cave and Agahnim's Tower entrance will both take + you to their locations as normal but leaving old man cave will exit at Agahnim's Tower. +2. This will force a nether fortress and a village to be the overworld structures for your game. Note that for the + Minecraft connection plando to work structure shuffle must be enabled. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md index a3456f4878b0..1792c57077b8 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/setup_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/setup_en.md @@ -1,49 +1,85 @@ # 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. +This guide should take about 5 minutes to read. ## 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). -Run the exe file, and after accepting the license agreement you will be prompted on which components you would like to install. +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). + +Run the exe file, and after accepting the license agreement you will be prompted on 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. +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. -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 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/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. ## Generating a game ### What is a YAML? -YAML is the file format which Archipelago uses in order to configure a player's world. It allows you to dictate which 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) +YAML is the file format which Archipelago uses in order to configure a player's world. It allows you to dictate which +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) ### 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) -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 slot name and, if the relevant game requires it, files to associate it with that multiworld. +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) + +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 +slot name and, if the relevant game requires it, files to associate it with that multiworld. -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. +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 -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. -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](https://archipelago.gg/generate) +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. + +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](https://archipelago.gg/generate) #### Rolling a YAML Locally -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. +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. -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 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. #### 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-forfeit, 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 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. +Sometimes there are various settings that you may want to change before rolling a seed such as enabling race mode, +auto-forfeit, 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 +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. ## 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](https://archipelago.gg/uploads) -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. \ No newline at end of file +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](https://archipelago.gg/uploads) + +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. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md index 36f1cbbf6143..545672fec3da 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/triggers_en.md @@ -1,38 +1,53 @@ # Archipelago Triggers Guide -This guide details the use of the Archipelago YAML trigger system. This guide is intended for a more advanced user with more in-depth knowledge of Archipelago YAML options as well as experience editing YAML files. This guide should take about 5 minutes to read. + +This guide details the use of the Archipelago YAML trigger system. This guide is intended for a more advanced user with +more in-depth knowledge of Archipelago YAML options as well as experience editing YAML files. This guide should take +about 5 minutes to read. ## What are triggers? -Triggers allow you to customize your game settings by allowing you to define one or many options which only occur under specific conditions. These are essentially "if, then" statements for options in your game. A good example of what you can do with triggers is the custom mercenary mode YAML that was created using entirely triggers and plando. -Mercenary mode YAML: [Mercenary Mode YAML on GitHub](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) +Triggers allow you to customize your game settings by allowing you to define one or many options which only occur under +specific conditions. These are essentially "if, then" statements for options in your game. A good example of what you +can do with triggers is the custom mercenary mode YAML that was created using entirely triggers and plando. + +Mercenary mode +YAML: [Mercenary Mode YAML on GitHub](https://github.com/alwaysintreble/Archipelago-yaml-dump/blob/main/Snippets/Mercenary%20Mode%20Snippet.yaml) -For more information on plando you can reference the general plando guide or the Link to the Past plando guide. +For more information on plando you can reference the general plando guide or the Link to the Past plando guide. General plando guide: [Archipelago Plando Guide](/tutorial/archipelago/plando/en) Link to the Past plando guide: [LttP Plando Guide](/tutorial/zelda3/plando/en) ## Trigger use -Triggers have to be defined in the root of the yaml file meaning it must be outside a game section. -The best place to do this is the bottom of the yaml. -- Triggers comprise the trigger section and then each trigger must have an `option_category`, `option_name`, and `option_result` from which it will react to and then an `options` section where the definition of what will happen. + +Triggers have to be defined in the root of the yaml file meaning it must be outside a game section. The best place to do +this is the bottom of the yaml. + +- Triggers comprise the trigger section and then each trigger must have an `option_category`, `option_name`, + and `option_result` from which it will react to and then an `options` section where the definition of what will + happen. - `option_category` is the defining section from which the option is defined in. - Example: `A Link to the Past` - - This is the root category the option is located in. If the option you're triggering off of is in root then you -would use `null`, otherwise this is the game for which you want this option trigger to activate. + - This is the root category the option is located in. If the option you're triggering off of is in root then you + would use `null`, otherwise this is the game for which you want this option trigger to activate. - `option_name` is the option setting from which the triggered choice is going to react to. - - Example: `shop_item_slots` - - This can be any option from any category defined in the yaml file in either root or a game section except for `game`. + - Example: `shop_item_slots` + - This can be any option from any category defined in the yaml file in either root or a game section except + for `game`. - `option_result` is the result of this option setting from which you would like to react. - Example: `15` - - Each trigger must be used for exactly one option result. If you would like the same thing to occur with multiple results you would need multiple triggers for this. -- `options` is where you define what will happen when this is detected. This can be something as simple as ensuring another option also gets selected or placing an item in a certain location. - - Example: + - Each trigger must be used for exactly one option result. If you would like the same thing to occur with multiple + results you would need multiple triggers for this. +- `options` is where you define what will happen when this is detected. This can be something as simple as ensuring + another option also gets selected or placing an item in a certain location. + - Example: ```yaml A Link to the Past: start_inventory: Rupees (300): 2 ``` + This format must be: ```yaml @@ -42,7 +57,9 @@ This format must be: ``` ### Examples + The above examples all together will end up looking like this: + ```yaml triggers: - option_category: A Link to the Past @@ -54,9 +71,11 @@ The above examples all together will end up looking like this: Rupees(300): 2 ``` -For this example if the generator happens to roll 15 shuffled in shop item slots for your game you'll be granted 600 rupees at the beginning. These can also be used to change other options. +For this example if the generator happens to roll 15 shuffled in shop item slots for your game you'll be granted 600 +rupees at the beginning. These can also be used to change other options. For example: + ```yaml triggers: - option_category: Timespinner @@ -66,4 +85,5 @@ For example: Timespinner: Inverted: true ``` + In this example if your world happens to roll `SpecificKeycards` then your game will also start in inverted. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md index dd4b243f6ca0..7a9ae2fef714 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/using_website_en.md @@ -1,16 +1,33 @@ # 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. + +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](https://archipelago.gg/generate). Here, you can adjust some server settings such as forfeit 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. + +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](https://archipelago.gg/generate). Here, you can adjust some server settings + such as forfeit 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](https://archipelago.gg/uploads) +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](https://archipelago.gg/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. \ No newline at end of file +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. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/factorio/setup_en.md b/WebHostLib/static/assets/tutorial/factorio/setup_en.md index 1147c0489f2b..aa866d5ab95c 100644 --- a/WebHostLib/static/assets/tutorial/factorio/setup_en.md +++ b/WebHostLib/static/assets/tutorial/factorio/setup_en.md @@ -1,33 +1,46 @@ # Factorio Randomizer Setup Guide ## Required Software + ##### Players -- Factorio: [Factorio Official Website](https://factorio.com) - - Needed by Players and Hosts + +- Factorio: [Factorio Official Website](https://factorio.com) + - Needed by Players and Hosts ##### Server Hosts -- Factorio: [Factorio Official Website](https://factorio.com) - - Needed by Players and Hosts -- Archipelago: [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) - - Needed by Hosts + +- Factorio: [Factorio Official Website](https://factorio.com) + - Needed by Players and Hosts +- Archipelago: [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) + - Needed by Hosts ## Create a Config (.yaml) File ### What is a config file and why do I need one? -Your config file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. + +Your config file contains a set of configuration options which provide the generator with information about how it +should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player +to enjoy an experience customized for their taste, and different players in the same multiworld can all have different +options. ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Factorio player settings page: [Factorio Settings Page](/games/Factorio/player-settings) + +The Player Settings page on the website allows you to configure your personal settings and export a config file from +them. Factorio player settings page: [Factorio Settings Page](/games/Factorio/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML Validator page: [Yaml Validation Page](/mysterycheck) + +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML +Validator page: [Yaml Validation Page](/mysterycheck) ## Connecting to Someone Else's Factorio Game -Connecting to someone else's game is the simplest way to play Factorio with Archipelago. It allows multiple people to play in a single world, all contributing to the completion of the seed. + +Connecting to someone else's game is the simplest way to play Factorio with Archipelago. It allows multiple people to +play in a single world, all contributing to the completion of the seed. 1. Acquire the Archipelago mod for this seed. It should be named `AP_*.zip`, where `*` is the seed number. 2. Copy the mod file into your Factorio `mods` folder, which by default is located at: -`C:\Users\\AppData\Roaming\Factorio\mods` + `C:\Users\\AppData\Roaming\Factorio\mods` 3. Get the server address from the person hosting the game you are joining. 4. Launch Factorio 5. Click on "Multiplayer" in the main menu @@ -38,16 +51,20 @@ Connecting to someone else's game is the simplest way to play Factorio with Arch ## Prepare to Host Your Own Factorio Game ### Defining Some Terms -In Archipelago, multiple Factorio worlds may be played simultaneously. Each of these worlds must be hosted by a Factorio server, which is connected to the Archipelago Server via middleware. + +In Archipelago, multiple Factorio worlds may be played simultaneously. Each of these worlds must be hosted by a Factorio +server, which is connected to the Archipelago Server via middleware. This guide uses the following terms to refer to the software: + - **Factorio Client** - The Factorio instance which will be used to play the game. -- **Factorio Server** - The Factorio instance which will be used to host the Factorio world. Any number of -Factorio Clients may connect to this server. +- **Factorio Server** - The Factorio instance which will be used to host the Factorio world. Any number of Factorio + Clients may connect to this server. - **Archipelago Client** - The middleware software used to connect the Factorio Server to the Archipelago Server. - **Archipelago Server** - The central Archipelago server, which connects all games to each other. ### What a Playable State Looks Like + - An Archipelago Server - The generated Factorio Mod, created as a result of running `ArchipelagoGenerate.exe` - One running instance of `ArchipelagoFactorioClient.exe` (the Archipelago Client) per Factorio world @@ -55,23 +72,39 @@ Factorio Clients may connect to this server. - A running modded Factorio Client ### Dedicated Server Setup -To play Factorio with Archipelago, a dedicated server setup is required. This dedicated Factorio Server must be installed separately from your main Factorio Client installation. The recommended way to install two instances of Factorio on your computer is to download the Factorio installer file directly from factorio.com: [Factorio Official Website Download Page](https://factorio.com/download). + +To play Factorio with Archipelago, a dedicated server setup is required. This dedicated Factorio Server must be +installed separately from your main Factorio Client installation. The recommended way to install two instances of +Factorio on your computer is to download the Factorio installer file directly from +factorio.com: [Factorio Official Website Download Page](https://factorio.com/download). #### If you purchased Factorio on Steam, GOG, etc. -You can register your copy of Factorio on factorio.com: [Factorio Official Website](https://factorio.com/). You will be required to create an account, if you have not done so already. As part of that process, you will be able to enter your Factorio product code. This will allow you to download the game directly from their website. + +You can register your copy of Factorio on factorio.com: [Factorio Official Website](https://factorio.com/). You will be +required to create an account, if you have not done so already. As part of that process, you will be able to enter your +Factorio product code. This will allow you to download the game directly from their website. #### Download the Standalone Version -It is recommended to download the standalone version of Factorio for use as a dedicated server. Doing so prevents any potential conflicts with your currently-installed version of Factorio. Download the file by clicking on the button appropriate to your operating system, and extract the folder to a convenient location (we recommend `C:\Factorio` or similar). + +It is recommended to download the standalone version of Factorio for use as a dedicated server. Doing so prevents any +potential conflicts with your currently-installed version of Factorio. Download the file by clicking on the button +appropriate to your operating system, and extract the folder to a convenient location (we recommend `C:\Factorio` or +similar). ![Factorio Download Options](/static/assets/tutorial/factorio/factorio-download.png) -Next, you should launch your Factorio Server by running `factorio.exe`, which is located at: `bin/x64/factorio.exe`. You will be asked to log in to your Factorio account using the same credentials you used on Factorio's website. After you have logged in, you may close the game. +Next, you should launch your Factorio Server by running `factorio.exe`, which is located at: `bin/x64/factorio.exe`. You +will be asked to log in to your Factorio account using the same credentials you used on Factorio's website. After you +have logged in, you may close the game. #### Configure your Archipelago Installation -You must modify your `host.yaml` file inside your Archipelago installation directory so that it points to your standalone Factorio executable. Here is an example of the appropriate setup, note the double `\\` are required: + +You must modify your `host.yaml` file inside your Archipelago installation directory so that it points to your +standalone Factorio executable. Here is an example of the appropriate setup, note the double `\\` are required: + ```yaml factorio_options: - executable: C:\\factorio\\bin\\x64\\factorio" + executable: C:\\factorio\\bin\\x64\\factorio" ``` This allows you to host your own Factorio game. @@ -81,9 +114,10 @@ This allows you to host your own Factorio game. 1. Obtain the Factorio mod for this Archipelago seed. It should be named `AP_*.zip`, where `*` is the seed number. 2. Install the mod into your Factorio Server by copying the zip file into the `mods` folder. 3. Install the mod into your Factorio Client by copying the zip file into the `mods` folder, which is likely located -at `C:\Users\YourName\AppData\Roaming\Factorio\mods`. + at `C:\Users\YourName\AppData\Roaming\Factorio\mods`. 4. Obtain the Archipelago Server address from the website's host room, or from the server host. -5. Run your Archipelago Client, which is named `ArchilepagoFactorioClient.exe`. This was installed along with Archipelago if you chose to include it during the installation process. +5. Run your Archipelago Client, which is named `ArchilepagoFactorioClient.exe`. This was installed along with + Archipelago if you chose to include it during the installation process. 6. Enter `/connect [server-address]` into the input box at the bottom of the Archipelago Client and press "Enter" ![Factorio Client for Archipelago Connection Command](/static/assets/tutorial/factorio/connect-to-ap-server.png) @@ -94,21 +128,26 @@ at `C:\Users\YourName\AppData\Roaming\Factorio\mods`. 10. Enter `localhost` into the server address box 11. Click "Connect" -For additional client features, issue the `/help` command in the Archipelago Client. Once connected to the AP -server, you can also issue the `!help` command to learn about additional commands like `!hint`. +For additional client features, issue the `/help` command in the Archipelago Client. Once connected to the AP server, +you can also issue the `!help` command to learn about additional commands like `!hint`. ## Allowing Other People to Join Your Game + 1. Ensure your Archipelago Client is running. 2. Ensure port `34197` is forwarded to the computer running the Archipelago Client. 3. Obtain your IP address by visiting whatismyip.com: [WhatIsMyIP Website](https://whatismyip.com/). 4. Provide your IP address to anyone you want to join your game, and have them follow the steps for -"Connecting to Someone Else's Factorio Game" above. + "Connecting to Someone Else's Factorio Game" above. ## Troubleshooting -In case any problems should occur, the Archipelago Client will create a file `FactorioClient.txt` in the `/logs`. The contents of this file may help you troubleshoot an issue on your own and is vital for requesting help from other -people in Archipelago. + +In case any problems should occur, the Archipelago Client will create a file `FactorioClient.txt` in the `/logs`. The +contents of this file may help you troubleshoot an issue on your own and is vital for requesting help from other people +in Archipelago. ## Additional Resources -- Alternate Tutorial by Umenen: [Factorio (Steam) Archipelago Setup Guide for Windows](https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4) + +- Alternate Tutorial by + Umenen: [Factorio (Steam) Archipelago Setup Guide for Windows](https://docs.google.com/document/d/1yZPAaXB-QcetD8FJsmsFrenAHO5V6Y2ctMAyIoT9jS4) - Factorio Speedrun Guide: [Factorio Speedrun Guide by Nefrums](https://www.youtube.com/watch?v=ExLrmK1c7tA) - Factorio Wiki: [Factorio Official Wiki](https://wiki.factorio.com/) diff --git a/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md b/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md index 68c057eef898..7bda47e6888d 100644 --- a/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/ff1/multiworld_en.md @@ -1,47 +1,65 @@ # Final Fantasy 1 (NES) Multiworld Setup Guide ## Required Software + - The FF1Client - - Bundled with Archipelago: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) + - Bundled with + Archipelago: [https://github.com/ArchipelagoMW/Archipelago/releases](https://github.com/ArchipelagoMW/Archipelago/releases) - The BizHawk emulator. Versions 2.3.1 and higher are supported. Version 2.7 is recommended - - [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) -- Your legally obtained Final Fantasy (USA Edition) ROM file, probably named `Final Fantasy (USA).nes`. Neither Archipelago.gg nor the Final Fantasy Randomizer Community can supply you with this. + - [http://tasvideos.org/BizHawk.html](http://tasvideos.org/BizHawk.html) +- Your legally obtained Final Fantasy (USA Edition) ROM file, probably named `Final Fantasy (USA).nes`. Neither + Archipelago.gg nor the Final Fantasy Randomizer Community can supply you with this. ## Installation Procedures + 1. Download and install the latest version of Archipelago. - 1. On Windows, download Setup.Archipelago..exe and run it + 1. On Windows, download Setup.Archipelago..exe and run it 2. Assign Bizhawk version 2.3.1 or higher as your default program for launching `.nes` files. - 1. Extract your Bizhawk folder to your Desktop, or somewhere you will remember. Below are optional additional - steps for loading ROMs more conveniently - 1. Right-click on a ROM file and select **Open with...** - 2. Check the box next to **Always use this app to open .nes files** - 3. Scroll to the bottom of the list and click the grey text **Look for another App on this PC** - 4. Browse for `EmuHawk.exe` located inside your Bizhawk folder (from step 1) and click **Open**. + 1. Extract your Bizhawk folder to your Desktop, or somewhere you will remember. Below are optional additional steps + for loading ROMs more conveniently + 1. Right-click on a ROM file and select **Open with...** + 2. Check the box next to **Always use this app to open .nes files** + 3. Scroll to the bottom of the list and click the grey text **Look for another App on this PC** + 4. Browse for `EmuHawk.exe` located inside your Bizhawk folder (from step 1) and click **Open**. ## Obtaining your Archipelago yaml file and randomized ROM -Unlike most other Archipelago.gg games Final Fantasy 1 is randomized by the main randomizer at [https://finalfantasyrandomizer.com/](https://finalfantasyrandomizer.com/). + +Unlike most other Archipelago.gg games Final Fantasy 1 is randomized by the main randomizer +at [https://finalfantasyrandomizer.com/](https://finalfantasyrandomizer.com/). Generate a game by going to the site and performing the following steps: -1. Select the randomization options (also known as `Flags` in the community) of your choice. If you do not know what you prefer, or it is your first time playing select the "Archipelago" preset on the main page. + +1. Select the randomization options (also known as `Flags` in the community) of your choice. If you do not know what you + prefer, or it is your first time playing select the "Archipelago" preset on the main page. 2. Go to the `Beta` tab and ensure `Archipelago` is enabled. Set your player name to any name that represents you. 3. Upload you `Final Fantasy(USA).nes` (and click `Remember ROM` for the future!) 4. Press the `NEW` button beside `Seed` a few times 5. Click `GENERATE ROM` -It should download two files. One is the `*.nes` file which your emulator will run and the other is the yaml file required by Archipelago.gg +It should download two files. One is the `*.nes` file which your emulator will run and the other is the yaml file +required by Archipelago.gg ## Running the Client Program and Connecting to the Server + 1. Navigate to your Archipelago install folder and run `ArchipelagoFF1Client.exe` -2. Notice the `/connect command` on the server hosting page (It should look like `/connect archipelago.gg:*****` where ***** are numbers) -3. Type the connect command into the client OR add the port to the pre-populated address on the top bar (it should already say `archipelago.gg`) and click `connect` +2. Notice the `/connect command` on the server hosting page (It should look like `/connect archipelago.gg:*****` + where ***** are numbers) +3. Type the connect command into the client OR add the port to the pre-populated address on the top bar (it should + already say `archipelago.gg`) and click `connect` ### Running Your Game and Connecting to the Client Program -1. Open Bizhawk 2.3.1 or higher and load your ROM OR click your ROM file if it is already associated with the extension `*.nes` + +1. Open Bizhawk 2.3.1 or higher and load your ROM OR click your ROM file if it is already associated with the + extension `*.nes` 2. Click on the Tools menu and click on **Lua Console** 3. Click the folder button to open a new Lua script. (CTL-O or **Script** -> **Open Script**) 4. Navigate to the location you installed Archipelago to. Open data/lua/FF1/ff1_connector.lua - 1. If it gives a `NLua.Exceptions.LuaScriptException: .\socket.lua:13: module 'socket.core' not found:` exception close your emulator entirely, restart it and re-run these steps - 2. If it says `Must use a version of bizhawk 2.3.1 or higher`, double-check your Bizhawk version by clicking **Help** -> **About** + 1. If it gives a `NLua.Exceptions.LuaScriptException: .\socket.lua:13: module 'socket.core' not found:` exception + close your emulator entirely, restart it and re-run these steps + 2. If it says `Must use a version of bizhawk 2.3.1 or higher`, double-check your Bizhawk version by clicking ** + Help** -> **About** ## Play the game -When the client shows both NES and server are connected you are good to go. You can check the connection status of the NES at any time by running `/nes` + +When the client shows both NES and server are connected you are good to go. You can check the connection status of the +NES at any time by running `/nes` diff --git a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md index 08cd4791698d..cfb8a14549a3 100644 --- a/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md +++ b/WebHostLib/static/assets/tutorial/minecraft/minecraft_en.md @@ -2,42 +2,59 @@ ## Required Software -- Minecraft Java Edition from the [Minecraft Java Edition Store Page](https://www.minecraft.net/en-us/store/minecraft-java-edition) (update 1.17.1) -- Archipelago from the [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) - - (select `Minecraft Client` during installation.) +- Minecraft Java Edition from + the [Minecraft Java Edition Store Page](https://www.minecraft.net/en-us/store/minecraft-java-edition) (update 1.17.1) +- Archipelago from the [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) + - (select `Minecraft Client` during installation.) ## Configuring your YAML file ### What is a YAML file and why do I need one? -See the guide on setting up a basic YAML at the Archipelago setup guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) + +See the guide on setting up a basic YAML at the Archipelago setup +guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) ### Where do I get a YAML file? + You can customize your settings by visiting the [Minecraft Player Settings Page](/games/Minecraft/player-settings) ## Joining a MultiWorld Game ### Obtain Your Minecraft Data File + **Only one yaml file needs to be submitted per minecraft world regardless of how many players play on it.** -When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that is done, the host will provide you with either a link to download your data file, or with a zip file containing everyone's data files. Your data file should have a `.apmc` extension. +When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that is done, +the host will provide you with either a link to download your data file, or with a zip file containing everyone's data +files. Your data file should have a `.apmc` extension. -Double-click on your `.apmc` file to have the Minecraft client auto-launch the installed forge server. Make sure to leave this window open as this is your server console. +Double-click on your `.apmc` file to have the Minecraft client auto-launch the installed forge server. Make sure to +leave this window open as this is your server console. ### Connect to the MultiServer + Using minecraft 1.17.1 connect to the server `localhost`. -Once you are in game type `/connect (Port) (Password)` where `` is the address of the Archipelago server. `(Port)` is only required if the Archipelago server is not using the default port of 38281. `(Password)` is only required if the Archipelago server you are using has a password set. +Once you are in game type `/connect (Port) (Password)` where `` is the address of the +Archipelago server. `(Port)` is only required if the Archipelago server is not using the default port of +38281. `(Password)` is only required if the Archipelago server you are using has a password set. ### Play the game -When the console tells you that you have joined the room, you're all set. Congratulations on successfully joining a multiworld game! At this point any additional minecraft players may connect to your forge server. To start the game once everyone is ready use the command `/start`. +When the console tells you that you have joined the room, you're all set. Congratulations on successfully joining a +multiworld game! At this point any additional minecraft players may connect to your forge server. To start the game once +everyone is ready use the command `/start`. ## Manual Installation -It is highly recommended to ues the Archipelago installer to handle the installation of the forge server for you. support will not be given for those wishing to manually install forge. For those of you who know how, and wish to do so, the following links are the versions of the software we use. + +It is highly recommended to ues the Archipelago installer to handle the installation of the forge server for you. +support will not be given for those wishing to manually install forge. For those of you who know how, and wish to do so, +the following links are the versions of the software we use. ### Manual install Software links + - [Minecraft Forge Download Page](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.17.1.html) - [Minecraft Archipelago Randomizer Mod Releases Page](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) -**DO NOT INSTALL THIS ON YOUR CLIENT** + **DO NOT INSTALL THIS ON YOUR CLIENT** - [Java 16 Download Page](https://docs.aws.amazon.com/corretto/latest/corretto-16-ug/downloads-list.html) diff --git a/WebHostLib/static/assets/tutorial/minecraft/minecraft_es.md b/WebHostLib/static/assets/tutorial/minecraft/minecraft_es.md index 8cd35fba841e..e827ac7947ae 100644 --- a/WebHostLib/static/assets/tutorial/minecraft/minecraft_es.md +++ b/WebHostLib/static/assets/tutorial/minecraft/minecraft_es.md @@ -1,7 +1,9 @@ # Guia instalación de Minecraft Randomizer -#Instalacion automatica para el huesped de partida -- descarga e instala [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) and activa el modulo `Minecraft Client` +# Instalacion automatica para el huesped de partida + +- descarga e instala [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) and activa el + modulo `Minecraft Client` ## Software Requerido @@ -10,13 +12,15 @@ ## Configura tu fichero YAML ### Que es un fichero YAML y potque necesito uno? -Tu fichero YAML contiene un numero de opciones que proveen al generador con informacion sobre como debe generar tu juego. -Cada jugador de un multiworld entregara u propio fichero YAML. -Esto permite que cada jugador disfrute de una experiencia personalizada a su gusto y diferentes jugadores dentro del mismo multiworld -pueden tener diferentes opciones + +Tu fichero YAML contiene un numero de opciones que proveen al generador con informacion sobre como debe generar tu +juego. Cada jugador de un multiworld entregara u propio fichero YAML. Esto permite que cada jugador disfrute de una +experiencia personalizada a su gusto y diferentes jugadores dentro del mismo multiworld pueden tener diferentes opciones ### Where do I get a YAML file? + Un fichero basico yaml para minecraft tendra este aspecto. + ```yaml description: Basic Minecraft Yaml # Tu nombre en el juego. Espacios seran sustituidos por guinoes bajos y @@ -31,52 +35,52 @@ progression_balancing: on Minecraft: # Numero de logros requeridos (87 max) para que aparezca el Ender Dragon y completar el juego. - advancement_goal: 50 - + advancement_goal: 50 + # Numero de trozos de huevo de dragon a obtener (30 max) antes de que el Ender Dragon aparezca. - egg_shards_required: 10 - + egg_shards_required: 10 + # Numero de huevos disponibles en la partida (30 max). - egg_shards_available: 15 - + egg_shards_available: 15 + # Modifica el nivel de objetos logicamente requeridos para # explorar areas peligrosas y luchar contra jefes. - combat_difficulty: + combat_difficulty: easy: 0 normal: 1 hard: 0 - + # Si off, los logros que dependan de suerte o sean tediosos tendran objetos de apoyo, no necesarios para completar el juego. - include_hard_advancements: + include_hard_advancements: on: 0 off: 1 - + # Si off, los logros muy dificiles tendran objetos de apoyo, no necesarios para completar el juego. # Solo afecta a How Did We Get Here? and Adventuring Time. - include_insane_advancements: + include_insane_advancements: on: 0 off: 1 - + # Algunos logros requieren derrotar al Ender Dragon; # Si esto se queda en off, dichos logros no tendran objetos necesarios. - include_postgame_advancements: + include_postgame_advancements: on: 0 off: 1 - + # Permite el mezclado de villas, puesto, fortalezas, bastiones y ciudades de END. - shuffle_structures: + shuffle_structures: on: 0 off: 1 - + # Añade brujulas de estructura al juego, # apuntaran a la estructura correspondiente mas cercana. - structure_compasses: + structure_compasses: on: 0 off: 1 - + # Reemplaza un porcentaje de objetos innecesarios por trampas abeja # las cuales crearan multiples abejas agresivas alrededor de los jugadores cuando se reciba. - bee_traps: + bee_traps: 0: 1 25: 0 50: 0 @@ -87,44 +91,57 @@ Minecraft: ## Unirse a un juego MultiWorld ### Obten tu ficheros de datos Minecraft + **Solo un fichero yaml es necesario por mundo minecraft, sin importar el numero de jugadores que jueguen en el.** -Cuando te unes a un juego multiworld, se te pedirá que entregues tu fichero YAML a quien sea que hospede el juego multiworld (no confundir con hospedar el mundo minecraft). -Una vez la generación acabe, el anfitrión te dará un enlace a tu fichero de datos o un zip con los ficheros de todos. -Tu fichero de datos tiene una extensión `.apmc`. +Cuando te unes a un juego multiworld, se te pedirá que entregues tu fichero YAML a quien sea que hospede el juego +multiworld (no confundir con hospedar el mundo minecraft). Una vez la generación acabe, el anfitrión te dará un enlace a +tu fichero de datos o un zip con los ficheros de todos. Tu fichero de datos tiene una extensión `.apmc`. Haz doble click en tu fichero `.apmc` para que se arranque el cliente de minecraft y el servidor forge se ejecute. ### Conectar al multiserver + Despues de poner tu fichero en el directorio `APData`, arranca el Forge server y asegurate que tienes el estado OP tecleando `/op TuUsuarioMinecraft` en la consola del servidor y entonces conectate con tu cliente Minecraft. -Una vez en juego introduce `/connect (Port) ()` donde `` es la dirección del servidor. `(Port)` solo es requerido si el servidor Archipelago no esta usando el puerto por defecto 38281. +Una vez en juego introduce `/connect (Port) ()` donde `` es la dirección del +servidor. `(Port)` solo es requerido si el servidor Archipelago no esta usando el puerto por defecto 38281. `()` solo se necesita si el servidor Archipleago tiene un password activo. - ### Jugar al juego -Cuando la consola te diga que te has unido a la sala, estas lista/o para empezar a jugar. Felicidades -por unirte exitosamente a un juego multiworld! Llegados a este punto cualquier jugador adicional puede conectarse a tu servidor forge. + +Cuando la consola te diga que te has unido a la sala, estas lista/o para empezar a jugar. Felicidades por unirte +exitosamente a un juego multiworld! Llegados a este punto cualquier jugador adicional puede conectarse a tu servidor +forge. ## Procedimiento de instalación manual + Solo es requerido si quieres usar una instalacion de forge por ti mismo, recomendamos usar el instalador de Archipelago -###Software Requerido + +### Software Requerido + - [Minecraft Forge](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) - [Minecraft Archipelago Randomizer Mod](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) -**NO INSTALES ESTO EN TU CLIENTE MINECRAFT** - + **NO INSTALES ESTO EN TU CLIENTE MINECRAFT** ### Instalación de servidor dedicado -Solo una persona ha de realizar este proceso y hospedar un servidor dedicado para que los demas jueguen conectandose a él. -1. Descarga el instalador de **Minecraft Forge** 1.16.5 desde el enlace proporcionado, siempre asegurandose de bajar la version mas reciente. + +Solo una persona ha de realizar este proceso y hospedar un servidor dedicado para que los demas jueguen conectandose a +él. + +1. Descarga el instalador de **Minecraft Forge** 1.16.5 desde el enlace proporcionado, siempre asegurandose de bajar la + version mas reciente. 2. Ejecuta el fichero `forge-1.16.5-xx.x.x-installer.jar` y elije **install server**. - - En esta pagina elegiras ademas donde instalar el servidor, importante recordar esta localización en el siguiente paso. + - En esta pagina elegiras ademas donde instalar el servidor, importante recordar esta localización en el siguiente + paso. 3. Navega al directorio donde hayas instalado el servidor y abre `forge-1.16.5-xx.x.x.jar` - - La primera vez que lances el servidor se cerrara (o no aparecerá nada en absoluto), debería haber un fichero nuevo en el directorio llamado `eula.txt`, el cual que contiene un enlace al EULA de minecraft, cambia la linea a `eula=true` para aceptar el EULA y poder utilizar el software de servidor. + - La primera vez que lances el servidor se cerrara (o no aparecerá nada en absoluto), debería haber un fichero nuevo + en el directorio llamado `eula.txt`, el cual que contiene un enlace al EULA de minecraft, cambia la linea + a `eula=true` para aceptar el EULA y poder utilizar el software de servidor. - Esto creara la estructura de directorios apropiada para el siguiente paso 4. Coloca el fichero `aprandomizer-x.x.x.jar` del segundo enlace en el directorio `mods` diff --git a/WebHostLib/static/assets/tutorial/minecraft/minecraft_sv.md b/WebHostLib/static/assets/tutorial/minecraft/minecraft_sv.md index a8eb6921a3c8..eb799024c28d 100644 --- a/WebHostLib/static/assets/tutorial/minecraft/minecraft_sv.md +++ b/WebHostLib/static/assets/tutorial/minecraft/minecraft_sv.md @@ -3,29 +3,39 @@ ## Nödvändig Mjukvara ### Server Värd + - [Minecraft Forge](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html) - [Minecraft Archipelago Randomizer Mod](https://github.com/KonoTyran/Minecraft_AP_Randomizer/releases) ### Spelare + - [Minecraft Java Edition](https://www.minecraft.net/en-us/store/minecraft-java-edition) ## Installationsprocedurer ### Tillägnad + Bara en person behöver göra denna uppsättning och vara värd för en server för alla andra spelare att koppla till. -1. Ladda ner 1.16.5 **Minecraft Forge** installeraren från länken ovanför och se till att ladda ner den senaste rekommenderade versionen. + +1. Ladda ner 1.16.5 **Minecraft Forge** installeraren från länken ovanför och se till att ladda ner den senaste + rekommenderade versionen. 2. Kör `forge-1.16.5-xx.x.x-installer.jar` filen och välj **installera server**. - - På denna sida kommer du också välja vart du ska installera servern för att komma ihåg denna katalog. Detta är viktigt för nästa steg. + - På denna sida kommer du också välja vart du ska installera servern för att komma ihåg denna katalog. Detta är + viktigt för nästa steg. 3. Navigera till vart du har installerat servern och öppna `forge-1.16.5-xx.x.x-installer.jar` - - Under första serverstart så kommer den att stängas ner och fråga dig att acceptera Minecrafts EULA. En ny fil kommer skapas vid namn `eula.txt` som har en länk till Minecrafts EULA, och en linje som du behöver byta till `eula=true` för att acceptera Minecrafts EULA. + - Under första serverstart så kommer den att stängas ner och fråga dig att acceptera Minecrafts EULA. En ny fil + kommer skapas vid namn `eula.txt` som har en länk till Minecrafts EULA, och en linje som du behöver byta + till `eula=true` för att acceptera Minecrafts EULA. - Detta kommer skapa de lämpliga katalogerna för dig att placera filerna i de följande steget. -4. Placera `aprandomizer-x.x.x.jar` länken ovanför i `mods` mappen som ligger ovanför installationen av din forge server. +4. Placera `aprandomizer-x.x.x.jar` länken ovanför i `mods` mappen som ligger ovanför installationen av din forge + server. - Kör servern igen. Den kommer ladda up och generera den nödvändiga katalogen `APData` för när du är redo att spela! ### Grundläggande Spelaruppsättning + - Köp och installera Minecraft från länken ovanför. **Du är klar**. @@ -33,10 +43,12 @@ Bara en person behöver göra denna uppsättning och vara värd för en server f Andra spelare behöver endast ha en 'Vanilla' omodifierad version av Minecraft för att kunna spela! ### Avancerad Spelaruppsättning + ***Detta är inte nödvändigt för att spela ett slumpmässigt Minecraftspel.*** Dock så är det rekommenderat eftersom det hjälper att göra upplevelsen mer trevligt. #### Rekommenderade Moddar + - [JourneyMap](https://www.curseforge.com/minecraft/mc-mods/journeymap) (Minimap) @@ -52,17 +64,20 @@ Dock så är det rekommenderat eftersom det hjälper att göra upplevelsen mer t ## Konfigurera Din YAML-fil ### Vad är en YAML-fil och varför behöver jag en? -Din YAML-fil behåller en uppsättning av konfigurationsalternativ som ger generatorn med information om hur -den borde generera ditt spel. Varje spelare i en multivärld kommer behöva ge deras egen YAML-fil. Denna uppsättning tillåter -varje spelare att an njuta av en upplevelse anpassade för deras smaker, och olika spelare i samma multivärld -kan ha helt olika alternativ. + +Din YAML-fil behåller en uppsättning av konfigurationsalternativ som ger generatorn med information om hur den borde +generera ditt spel. Varje spelare i en multivärld kommer behöva ge deras egen YAML-fil. Denna uppsättning tillåter varje +spelare att an njuta av en upplevelse anpassade för deras smaker, och olika spelare i samma multivärld kan ha helt olika +alternativ. ### Vart kan jag få tag i en YAML-fil? + En grundläggande Minecraft YAML kommer se ut så här. + ```yaml description: Template Name # Ditt spelnamn. Mellanslag kommer bli omplacerad med understräck och det är en 16-karaktärsgräns. -name: YourName +name: YourName game: Minecraft accessibility: locations progression_balancing: off @@ -88,27 +103,32 @@ shuffle_structures: off: 0 ``` -För mer detaljer om vad varje inställning gör, kolla standardinställningen `PlayerSettings.yaml` som kommer med Archipelago-installationen. +För mer detaljer om vad varje inställning gör, kolla standardinställningen `PlayerSettings.yaml` som kommer med +Archipelago-installationen. ## Gå med i ett Multivärld-spel ### Skaffa din Minecraft data-fil + **Endast en YAML-fil behöver användats per Minecraft-värld oavsett hur många spelare det är som spelar.** -När du går med it ett Multivärld spel så kommer du bli ombedd att lämna in din YAML-fil till personen som värdar. När detta -är klart så kommer värden att ge dig antingen en länk till att ladda ner din data-fil, eller mer en zip-fil som innehåller allas data-filer. -Din data-fil borde ha en `.apmc` -extension. +När du går med it ett Multivärld spel så kommer du bli ombedd att lämna in din YAML-fil till personen som värdar. När +detta är klart så kommer värden att ge dig antingen en länk till att ladda ner din data-fil, eller mer en zip-fil som +innehåller allas data-filer. Din data-fil borde ha en `.apmc` -extension. Lägg din data-fil i dina forge-servrar `APData` -mapp. Se till att ta bort alla tidigare data-filer som var i där förut. ### Koppla till Multiservern -Efter du har placerat din data-fil i `APData` -mappen, starta forge-servern och se till att you har OP-status -genom att skriva `/op DittAnvändarnamn` i forger-serverns konsol innan du kopplar dig till din Minecraft klient. -När du är inne i spelet, skriv `/connect ()` där `` är addressen av -Archipelago-servern. `()` är endast nödvändigt om Archipelago-servern som du använder har ett tillsatt lösenord. + +Efter du har placerat din data-fil i `APData` -mappen, starta forge-servern och se till att you har OP-status genom att +skriva `/op DittAnvändarnamn` i forger-serverns konsol innan du kopplar dig till din Minecraft klient. När du är inne i +spelet, skriv `/connect ()` där `` är addressen av +Archipelago-servern. `()` är endast nödvändigt om Archipelago-servern som du använder har ett tillsatt +lösenord. ### Spela spelet -När konsolen har informerat att du har gått med i rummet så är du redo att börja spela. Grattis -att du har lykats med att gått med i ett Multivärld-spel! Vid detta tillfälle, alla ytterligare Minecraft-spelare må koppla -in till din forge-server. + +När konsolen har informerat att du har gått med i rummet så är du redo att börja spela. Grattis att du har lykats med +att gått med i ett Multivärld-spel! Vid detta tillfälle, alla ytterligare Minecraft-spelare må koppla in till din +forge-server. diff --git a/WebHostLib/static/assets/tutorial/ror2/setup_en.md b/WebHostLib/static/assets/tutorial/ror2/setup_en.md index 76926aff07a9..73f47081e963 100644 --- a/WebHostLib/static/assets/tutorial/ror2/setup_en.md +++ b/WebHostLib/static/assets/tutorial/ror2/setup_en.md @@ -1,33 +1,46 @@ # Risk of Rain 2 Setup Guide ## Install using r2modman + ### Install r2modman + Head on over to the r2modman page on Thunderstore and follow the installation instructions. [r2modman Page](https://thunderstore.io/package/ebkr/r2modman/) ### Install Archipelago Mod using r2modman + You can install the Archipelago mod using r2modman in one of two ways. [Archipelago Mod Download Page](https://thunderstore.io/package/ArchipelagoMW/Archipelago/) One, you can use the Thunderstore website and click on the "Install with Mod Manager" link. -You can also search for the "Archipelago" mod in the r2modman interface. The mod manager should automatically install all necessary dependencies as well. +You can also search for the "Archipelago" mod in the r2modman interface. The mod manager should automatically install +all necessary dependencies as well. ### Running the Modded Game + Click on the "Start modded" button in the top left in r2modman to start the game with the Archipelago mod installed. ## Joining an Archipelago Session -There will be a menu button on the right side of the screen in the character select menu. Click it in order to bring up the in lobby mod config. From here you can expand the Archipelago sections and fill in the relevant info. Keep password blank if there is no password on the server. + +There will be a menu button on the right side of the screen in the character select menu. Click it in order to bring up +the in lobby mod config. From here you can expand the Archipelago sections and fill in the relevant info. Keep password +blank if there is no password on the server. Simply check `Enable Archipelago?` and when you start the run it will automatically connect. ## Gameplay -The Risk of Rain 2 players send checks by causing items to spawn in-game. That means opening chests or killing bosses, generally. An item check is only sent out after a certain number of items are picked up. This count is configurable in the player's YAML. + +The Risk of Rain 2 players send checks by causing items to spawn in-game. That means opening chests or killing bosses, +generally. An item check is only sent out after a certain number of items are picked up. This count is configurable in +the player's YAML. ## YAML Settings + An example YAML would look like this: + ```yaml description: Ijwu-ror2 name: Ijwu @@ -76,10 +89,11 @@ Risk of Rain 2: | item_pool_presets | A simple toggle to determine whether the item_weight presets are used or the custom item pool as defined below | true/false | | custom item weights | Each defined item here is a single item in the pool that will have a weight against the other items when the item pool gets generated. These values can be modified to adjust how frequently certain items appear | 0-100| +Using the example YAML above: the Risk of Rain 2 player will have 15 total items which they can pick up for other +players. (total_locations = 15) -Using the example YAML above: the Risk of Rain 2 player will have 15 total items which they can pick up for other players. (total_locations = 15) - -They will have 15 items waiting for them in the item pool which will be distributed out to the multiworld. (total_locations = 15) +They will have 15 items waiting for them in the item pool which will be distributed out to the multiworld. ( +total_locations = 15) They will complete a location check every second item. (item_pickup_step = 1) @@ -89,4 +103,5 @@ The player will also start with a `Dio's Best Friend`. (start_with_revive = true The player will have lunar items shuffled into the item pool on their behalf. (enable_lunar = true) -The player will have the default preset generated item pool with the custom item weights being ignored. (item_weights: default and item_pool_presets: true) +The player will have the default preset generated item pool with the custom item weights being ignored. (item_weights: +default and item_pool_presets: true) diff --git a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md index ecfea8dd0a92..0d0bc5c6e61f 100644 --- a/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/super-metroid/multiworld_en.md @@ -1,69 +1,89 @@ # Super Metroid Setup Guide ## Required Software -- Super Metroid Client from: [Super Metroid Client Releases Page](https://github.com/ArchipelagoMW/SuperMetroidClient/releases) + +- Super Metroid Client + from: [Super Metroid Client Releases Page](https://github.com/ArchipelagoMW/SuperMetroidClient/releases) - **sniConnector.lua** (located on the client download page) - SNI from: [SNI Releases Page](https://github.com/alttpo/sni/releases) - - Included in the Super Metroid Client + - Included in the Super Metroid Client - Hardware or software capable of loading and playing SNES ROM files - An emulator capable of connecting to SNI such as: - - snes9x Multitroid from: [snes9x Multitroid Download](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), - - BizHawk from: [BizHawk Website](http://tasvideos.org/BizHawk.html) - - An SD2SNES, FXPak Pro ([FXPak Pro Store Page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware + - snes9x Multitroid + from: [snes9x Multitroid Download](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), + - BizHawk from: [BizHawk Website](http://tasvideos.org/BizHawk.html) + - An SD2SNES, FXPak Pro ([FXPak Pro Store Page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other + compatible hardware - Your legally obtained Super Metroid ROM file, probably named `Super Metroid (Japan, USA).sfc` ## Installation Procedures ### Windows Setup + 1. Download and install the Super Metroid Client from the link above, making sure to install the most recent version. -**The file is located in the assets section at the bottom of the version information**. + **The file is located in the assets section at the bottom of the version information**. 2. During setup, you will be asked to locate your base ROM file. This is your Super Metroid ROM file. -3. If you are using an emulator, you should assign your Lua capable emulator as your default program -for launching ROM files. - 1. Extract your emulator's folder to your Desktop, or somewhere you will remember. +3. If you are using an emulator, you should assign your Lua capable emulator as your default program for launching ROM + files. + 1. Extract your emulator's folder to your Desktop, or somewhere you will remember. 2. Right-click on a ROM file and select **Open with...** 3. Check the box next to **Always use this app to open .sfc files** 4. Scroll to the bottom of the list and click the grey text **Look for another App on this PC** - 5. Browse for your emulator's `.exe` file and click **Open**. This file should be located inside - the folder you extracted in step one. + 5. Browse for your emulator's `.exe` file and click **Open**. This file should be located inside the folder you + extracted in step one. ### Macintosh Setup + - We need volunteers to help fill this section! Please contact **Farrak Kilhn** on Discord if you want to help. ## Create a Config (.yaml) File ### What is a config file and why do I need one? -See the guide on setting up a basic YAML at the Archipelago setup guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) + +See the guide on setting up a basic YAML at the Archipelago setup +guide: [Basic Multiworld Setup Guide](/tutorial/archipelago/setup/en) ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. Player settings page: [Super Metroid Player Settings Page](/games/Super%20Metroid/player-settings) + +The Player Settings page on the website allows you to configure your personal settings and export a config file from +them. Player settings page: [Super Metroid Player Settings Page](/games/Super%20Metroid/player-settings) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML validator page: [YAML Validation page](/mysterycheck) + +If you would like to validate your config file to make sure it works, you may do so on the YAML Validator page. YAML +validator page: [YAML Validation page](/mysterycheck) ## Generating a Single-Player Game -1. Navigate to the Player Settings page, configure your options, and click - the "Generate Game" button. - - Player Settings page: [Super Metroid Player Settings Page](/games/Super%20Metroid/player-settings) + +1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. + - Player Settings page: [Super Metroid Player Settings Page](/games/Super%20Metroid/player-settings) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. -5. Double-click on your patch file, and the Super Metroid Client will launch automatically, create your ROM from the patch file, and open your emulator for you. +5. Double-click on your patch file, and the Super Metroid Client will launch automatically, create your ROM from the + patch file, and open your emulator for you. 6. Since this is a single-player game, you will no longer need the client, so feel free to close it. ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM -When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apm3` extension. -Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically launch the client, and will also create your ROM in the same place as your patch file. +When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, +the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch +files. Your patch file should have a `.apm3` extension. + +Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically launch the +client, and will also create your ROM in the same place as your patch file. ### Connect to the client #### With an emulator -When the client launched automatically, SNI should have also automatically launched in the background. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. + +When the client launched automatically, SNI should have also automatically launched in the background. If this is its +first time launching, you may be prompted to allow it to communicate through the Windows Firewall. ##### snes9x Multitroid + 1. Load your ROM file if it hasn't already been loaded. 2. Click on the File menu and hover on **Lua Scripting** 3. Click on **New Lua Script Window...** @@ -71,8 +91,9 @@ When the client launched automatically, SNI should have also automatically launc 5. Select the `sniConnector.lua` file you downloaded above ##### BizHawk -1. Ensure you have the BSNES core loaded. You may do this by clicking on the Tools menu in BizHawk and following - these menu options: + +1. Ensure you have the BSNES core loaded. You may do this by clicking on the Tools menu in BizHawk and following these + menu options: `Config --> Cores --> SNES --> BSNES` Once you have changed the loaded core, you must restart BizHawk. 2. Load your ROM file if it hasn't already been loaded. @@ -81,30 +102,43 @@ When the client launched automatically, SNI should have also automatically launc 5. Select the `sniConnector.lua` file you downloaded above #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES releases page: [SD2SNES Releases Page](https://github.com/RedGuyyyy/sd2snes/releases) -Other hardware may find helpful information on the usb2snes platforms page: [usb2snes Supported Platforms Page](http://usb2snes.com/#supported-platforms) +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do +this now. SD2SNES and FXPak Pro users may download the appropriate firmware on the SD2SNES releases page. SD2SNES +releases page: [SD2SNES Releases Page](https://github.com/RedGuyyyy/sd2snes/releases) + +Other hardware may find helpful information on the usb2snes platforms +page: [usb2snes Supported Platforms Page](http://usb2snes.com/#supported-platforms) 1. Close your emulator, which may have auto-launched. 2. Power on your device and load the ROM. ### Connect to the Archipelago Server -The patch file which launched your client should have automatically connected you to the AP Server. There are a few reasons this may not happen however, including if the game is hosted on the website but was generated elsewhere. If the client window shows "Server Status: Not Connected", simply ask the host for the address of the server, and copy/paste it into the "Server" input field then press enter. + +The patch file which launched your client should have automatically connected you to the AP Server. There are a few +reasons this may not happen however, including if the game is hosted on the website but was generated elsewhere. If the +client window shows "Server Status: Not Connected", simply ask the host for the address of the server, and copy/paste it +into the "Server" input field then press enter. The client will attempt to reconnect to the new server address, and should momentarily show "Server Status: Connected". ### Play the game -When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations on successfully joining a multiworld game! + +When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations on +successfully joining a multiworld game! ## Hosting a MultiWorld game + The recommended way to host a game is to use our hosting service. The process is relatively simple: 1. Collect config files from your players. 2. Create a zip file containing your players' config files. 3. Upload that zip file to the Generate page above. - - Generate page: [WebHost Seed Generation Page](/generate) + - Generate page: [WebHost Seed Generation Page](/generate) 4. Wait a moment while the seed is generated. 5. When the seed is generated, you will be redirected to a "Seed Info" page. -6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, so they may download their patch files from there. -7. Note that a link to a MultiWorld Tracker is at the top of the room page. The tracker shows the progress of all players in the game. Any observers may also be given the link to this page. +6. Click "Create New Room". This will take you to the server page. Provide the link to this page to your players, so + they may download their patch files from there. +7. Note that a link to a MultiWorld Tracker is at the top of the room page. The tracker shows the progress of all + players in the game. Any observers may also be given the link to this page. 8. Once all players have joined, you may begin playing. diff --git a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md index bcfc42e0c60f..000250d9fb03 100644 --- a/WebHostLib/static/assets/tutorial/timespinner/setup_en.md +++ b/WebHostLib/static/assets/tutorial/timespinner/setup_en.md @@ -3,34 +3,42 @@ ## Required Software - One of: - - Timespinner (steam) from: [Timespinner Steam Store Page](https://store.steampowered.com/app/368620/Timespinner/) - - Timespinner (drm free) from: [Timespinner Humble Store Page](https://www.humblebundle.com/store/timespinner) + - Timespinner (steam) from: [Timespinner Steam Store Page](https://store.steampowered.com/app/368620/Timespinner/) + - Timespinner (drm free) from: [Timespinner Humble Store Page](https://www.humblebundle.com/store/timespinner) - Timespinner Randomizer from: [Timespinner Randomizer GitHub](https://github.com/JarnoWesthof/TsRandomizer) ## General Concept -The Timespinner Randomizer loads Timespinner.exe from the same folder, and alters its state in memory to allow for randomization of the items. +The Timespinner Randomizer loads Timespinner.exe from the same folder, and alters its state in memory to allow for +randomization of the items. ## Installation Procedures -Download latest version of Timespinner randomizer you can find the .zip files on the releases page, download the zip for your current platform. Then extract the zip to the folder where your Timespinner game is installed. Then just run TsRandomizer.exe instead of Timespinner.exe to start the game in randomized mode, for more info see the Timespinner randomizer readme. +Download latest version of Timespinner randomizer you can find the .zip files on the releases page, download the zip for +your current platform. Then extract the zip to the folder where your Timespinner game is installed. Then just run +TsRandomizer.exe instead of Timespinner.exe to start the game in randomized mode, for more info see the Timespinner +randomizer readme. -Timespinner Randomizer downloads page: [Timespinner Randomizer Releases](https://github.com/JarnoWesthof/TsRandomizer/releases) +Timespinner Randomizer downloads +page: [Timespinner Randomizer Releases](https://github.com/JarnoWesthof/TsRandomizer/releases) Timespinner Randomizer readme page: [Timespinner Randomizer GitHub](https://github.com/JarnoWesthof/TsRandomizer) - + ## Joining a MultiWorld Game 1. Run TsRandomizer.exe 2. Select "New Game" -3. Switch "<< Select Seed >>" to "<< Archiplago >>" by pressing left on the controller or keyboard +3. Switch "<< Select Seed >>" to "<< Archiplago >>" by pressing left on the controller or keyboard 4. Select "<< Archiplago >>" to open a new menu where you can enter your Archipelago login credentails - * NOTE: the input fields support Ctrl + V pasting of values + * NOTE: the input fields support Ctrl + V pasting of values 5. Select "Connect" -6. If all went well you will be taken back the difficulty selection menu and the game will start as soon as you select a difficulty +6. If all went well you will be taken back the difficulty selection menu and the game will start as soon as you select a + difficulty ## YAML Settings + An example YAML would look like this: + ```yaml description: Default Timespinner Template name: Lunais{number} # Your name in-game. Spaces will be replaced with underscores and there is a 16 character limit @@ -61,6 +69,9 @@ Timespinner: false: 50 true: 50 ``` -* All Options are either enabled or not, if values are specified for both true & false the generator will select one based on weight + +* All Options are either enabled or not, if values are specified for both true & false the generator will select one + based on weight * The Timespinner Randomizer option "StinkyMaw" is currently always enabled for Archipelago generated seeds -* The Timespinner Randomizer options "ProgressiveVerticalMovement" & "ProgressiveKeycards" are currently not supported on Archipelago generated seeds \ No newline at end of file +* The Timespinner Randomizer options "ProgressiveVerticalMovement" & "ProgressiveKeycards" are currently not supported + on Archipelago generated seeds \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md b/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md index a425906dd497..617f262ef599 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md +++ b/WebHostLib/static/assets/tutorial/zelda3/msu1_en.md @@ -1,17 +1,28 @@ # MSU-1 Setup Guide ## What is MSU-1? -MSU-1 allows for the use of custom in-game music. It works on original hardware, the SuperNT, and certain emulators. This guide will explain how to find custom music packages, often called MSU packs, and how to configure them for use with original hardware, the SuperNT, and the snes9x emulator. + +MSU-1 allows for the use of custom in-game music. It works on original hardware, the SuperNT, and certain emulators. +This guide will explain how to find custom music packages, often called MSU packs, and how to configure them for use +with original hardware, the SuperNT, and the snes9x emulator. ## Where to find MSU Packs + MSU packs are constantly in development. We won't link to any packs as most include ripped music from other media. ## What an MSU pack should look like -MSU packs contain many files, most of which are the music files which will be used when playing the game. These files should be named similarly, with a hyphenated number at the end, and with a `.pcm` extension. It does not matter what each music file is named, so long as they all follow the same pattern. The most popular filename you will find is `alttp_msu-X.pcm`, where X is replaced by a number. -There is one other type of file you should find inside an MSU pack's folder. This file indicates to the hardware or to the emulator that MSU should be enabled for this game. This file should be named similarly to the other files in the folder, but will have a `.msu` extension and be 0 KB in size. +MSU packs contain many files, most of which are the music files which will be used when playing the game. These files +should be named similarly, with a hyphenated number at the end, and with a `.pcm` extension. It does not matter what +each music file is named, so long as they all follow the same pattern. The most popular filename you will find +is `alttp_msu-X.pcm`, where X is replaced by a number. + +There is one other type of file you should find inside an MSU pack's folder. This file indicates to the hardware or to +the emulator that MSU should be enabled for this game. This file should be named similarly to the other files in the +folder, but will have a `.msu` extension and be 0 KB in size. A short example of the contents of an MSU pack folder are as follows: + ``` List of files inside an MSU pack folder: alttp_msu.msu @@ -22,9 +33,12 @@ alttp_msu-34.pcm ``` ## How to use an MSU Pack -In all cases, you must rename your ROM file to match the pattern of names inside your MSU pack's folder, then place your ROM file inside that folder. + +In all cases, you must rename your ROM file to match the pattern of names inside your MSU pack's folder, then place your +ROM file inside that folder. This will cause the folder contents to look like the following: + ``` List of files inside an MSU pack folder: alttp_msu.msu @@ -36,13 +50,16 @@ alttp_msu-34.pcm ``` ### With snes9x + 1. Load the ROM file from snes9x. ### With SD2SNES / FXPak on original hardware + 1. Load the MSU pack folder onto your SD2SNES / FXPak. 2. Navigate into the MSU pack folder and load your ROM. ### With SD2SNES / FXPak on SuperNT + 1. Load the MSU pack folder onto your SD2SNES / FXPak. 2. Power on your SuperNT and navigate to the `Settings` menu. 3. Enter the `Audio` settings. @@ -54,4 +71,8 @@ alttp_msu-34.pcm 9. Navigate into your MSU pack folder and load your ROM. ## A word of caution to streamers -Many MSU packs use copyrighted music which is not permitted for use on platforms like Twitch and YouTube. If you choose to stream music from an MSU pack, please ensure you have permission to do so. If you stream music which has not been licensed to you, or licensed for use in a stream in general, your VOD may be muted. In the worst case, you may receive a DMCA take-down notice. Please be careful to only stream music for which you have the rights to do so. \ No newline at end of file + +Many MSU packs use copyrighted music which is not permitted for use on platforms like Twitch and YouTube. If you choose +to stream music from an MSU pack, please ensure you have permission to do so. If you stream music which has not been +licensed to you, or licensed for use in a stream in general, your VOD may be muted. In the worst case, you may receive a +DMCA take-down notice. Please be careful to only stream music for which you have the rights to do so. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/zelda3/msu1_es.md b/WebHostLib/static/assets/tutorial/zelda3/msu1_es.md index b815ba275702..8829e90a51b0 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/msu1_es.md +++ b/WebHostLib/static/assets/tutorial/zelda3/msu1_es.md @@ -1,24 +1,31 @@ # MSU-1 Guía de instalación ## Que es MSU-1? -MSU-1 permite el uso de música personalizada durante el juego. Funciona en hardware original, la SuperNT, y algunos emuladores. -Esta guiá explicará como encontrar los packs de música personalizada, comúnmente llamados pack MSU, y como configurarlos -para su uso en hardware original, la SuperNT, and el emulador snes9x. + +MSU-1 permite el uso de música personalizada durante el juego. Funciona en hardware original, la SuperNT, y algunos +emuladores. Esta guiá explicará como encontrar los packs de música personalizada, comúnmente llamados pack MSU, y como +configurarlos para su uso en hardware original, la SuperNT, and el emulador snes9x. ## Donde encontrar packs MSU -Los packs MSU están constantemente en desarrollo. Puedes encontrar una lista de pack completos, al igual que packs en desarrollo en + +Los packs MSU están constantemente en desarrollo. Puedes encontrar una lista de pack completos, al igual que packs en +desarrollo en [esta hoja de calculo Google](https://docs.google.com/spreadsheets/d/1XRkR4Xy6S24UzYkYBAOv-VYWPKZIoUKgX04RbjF128Q). ## Que pinta debe tener un pack MSU -Los packs MSU contienen muchos ficheros, la mayoria de los cuales son los archivos de música que se usaran durante el juego. Estos ficheros -deben tener un nombre similar, con un guión seguido por un número al final, y tienen extensión`.pcm`. No importa como se llame -cada archivo de música, siempre y cuando todos sigan el mismo patrón. El nombre más popular es + +Los packs MSU contienen muchos ficheros, la mayoria de los cuales son los archivos de música que se usaran durante el +juego. Estos ficheros deben tener un nombre similar, con un guión seguido por un número al final, y tienen +extensión`.pcm`. No importa como se llame cada archivo de música, siempre y cuando todos sigan el mismo patrón. El +nombre más popular es `alttp_msu-X.pcm`, donde X es un número. -Hay otro tipo de fichero que deberias encontrar en el directorio de un pack MSU. Este archivo indica al hardware o -emulador que MSU debe ser activado para este juego. El fichero tiene un nombre similar al resto, pero tiene como extensión `.msu` y su tamaño es 0 KB. +Hay otro tipo de fichero que deberias encontrar en el directorio de un pack MSU. Este archivo indica al hardware o +emulador que MSU debe ser activado para este juego. El fichero tiene un nombre similar al resto, pero tiene como +extensión `.msu` y su tamaño es 0 KB. Un pequeño ejemplo de los contenidos de un directorio que contiene un pack MSU: + ``` Lista de ficheros dentro de un directorio de pack MSU: alttp_msu.msu @@ -29,10 +36,12 @@ alttp_msu-34.pcm ``` ## Como usar un pack MSU -En todos los casos, debes renombrar tu fichero de ROM para que coincida con el resto de nombres de fichero del directorio, y copiar/pegar tu fichero rom -dentro de dicho directorio. + +En todos los casos, debes renombrar tu fichero de ROM para que coincida con el resto de nombres de fichero del +directorio, y copiar/pegar tu fichero rom dentro de dicho directorio. Esto hara que los contenidos del directorio sean los siguientes: + ``` Lista de ficheros dentro del directorio de pack MSU: alttp_msu.msu @@ -44,13 +53,16 @@ alttp_msu-34.pcm ``` ### Con snes9x + 1. Carga el fichero de rom en snes9x. ### Con SD2SNES / FXPak en hardware original + 1. Carga tu directorio de pack MSU en tu SD2SNES / FXPak. 2. Navega hasta el directorio de pack MSU y carga la ROM ### Con SD2SNES / FXPak en SuperNT + 1. Carga tu directorio de pack MSU en tu SD2SNES / FXPak. 2. Enciende tu SuperNT y navega al menú `Settings`. 3. Entra en la opcion `Audio`. @@ -62,13 +74,17 @@ alttp_msu-34.pcm 9. Navega hasta el directorio de pack MSU y carga la ROM ## Aviso a streamers -Muchos packs MSU usan música con derechos de autor la cual no esta permitido su uso en plataformas como Twitch o YouTube. -Si elijes hacer stream de dicha música, tu VOD puede ser silenciado. En el peor caso, puedes recibir una orden de eliminación DMCA. -Por favor, tened cuidado y solo streamear música para la cual tengas los derechos para hacerlo. + +Muchos packs MSU usan música con derechos de autor la cual no esta permitido su uso en plataformas como Twitch o +YouTube. Si elijes hacer stream de dicha música, tu VOD puede ser silenciado. En el peor caso, puedes recibir una orden +de eliminación DMCA. Por favor, tened cuidado y solo streamear música para la cual tengas los derechos para hacerlo. ##### Packs MSU seguros para Stream -A continuación enumeramos los packs MSU que, packs which, por lo que sabemos, son seguros para vuestras retransmisiones. Se iran añadiendo mas conforme -vayamos enterandonos. Si sabes alguno que podamos haber olvidado, por favor haznoslo saber! + +A continuación enumeramos los packs MSU que, packs which, por lo que sabemos, son seguros para vuestras retransmisiones. +Se iran añadiendo mas conforme vayamos enterandonos. Si sabes alguno que podamos haber olvidado, por favor haznoslo +saber! + - Musica del juego original - [Smooth McGroove](https://drive.google.com/open?id=1JDa1jCKg5hG0Km6xNpmIgf4kDMOxVp3n) diff --git a/WebHostLib/static/assets/tutorial/zelda3/msu1_fr.md b/WebHostLib/static/assets/tutorial/zelda3/msu1_fr.md index 33c2035a0ab5..0fba56b677c3 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/msu1_fr.md +++ b/WebHostLib/static/assets/tutorial/zelda3/msu1_fr.md @@ -1,25 +1,31 @@ # Guide d'installation de MSU-1 ## Qu'est-ce que MSU-1 ? -MSU-1 permet l'utilisation de musiques en jeu personnalisées. Cela fonctionne sur une console originale, sur SuperNT, et sur certains émulateurs. -Ce guide explique comment trouver des packs de musiques personnalisées, couremment appelées packs MSU, et comment les configurer -pour les utiliser sur console, sur SuperNT et sur l'émulateur snes9x. + +MSU-1 permet l'utilisation de musiques en jeu personnalisées. Cela fonctionne sur une console originale, sur SuperNT, et +sur certains émulateurs. Ce guide explique comment trouver des packs de musiques personnalisées, couremment appelées +packs MSU, et comment les configurer pour les utiliser sur console, sur SuperNT et sur l'émulateur snes9x. ## Où trouver des packs MSU -Les packs MSU sont constamment en développement. Vous pouvez trouver une liste de packs complétés, ainsi que des packs en développement sur + +Les packs MSU sont constamment en développement. Vous pouvez trouver une liste de packs complétés, ainsi que des packs +en développement sur [cette feuille de calcul Google](https://docs.google.com/spreadsheets/d/1XRkR4Xy6S24UzYkYBAOv-VYWPKZIoUKgX04RbjF128Q). ## A quoi ressemble un pack MSU -Les packs MSU contiennent beaucoup de fichiers, la plupart étant des fichiers musicaux qui seront utilisés en cours de jeu. Ces fichiers -doivent être nommés de façon similaire, avec un nombre derrière le tiret, puis l'extension `.pcm`. Le nom de chaque fichier -n'importe pas, du moment qu'ils suivent tous le même motif. Le nom le plus populaire que vous verrez est + +Les packs MSU contiennent beaucoup de fichiers, la plupart étant des fichiers musicaux qui seront utilisés en cours de +jeu. Ces fichiers doivent être nommés de façon similaire, avec un nombre derrière le tiret, puis l'extension `.pcm`. Le +nom de chaque fichier n'importe pas, du moment qu'ils suivent tous le même motif. Le nom le plus populaire que vous +verrez est `alttp_msu-X.pcm`, où X est remplacé par un nombre. -Il existe un autre type de fichier que vous devriez trouver dans le dossier d'un pack MSU. Ce fichier indique au matériel -ou à l'émulateur que MSU doit être activé pour ce jeu. Ce fichier doit être nommé de façon similaires aux autres dans -le dossier, mais il aura une extension `.msu` et pèsera 0 KB. +Il existe un autre type de fichier que vous devriez trouver dans le dossier d'un pack MSU. Ce fichier indique au +matériel ou à l'émulateur que MSU doit être activé pour ce jeu. Ce fichier doit être nommé de façon similaires aux +autres dans le dossier, mais il aura une extension `.msu` et pèsera 0 KB. Voici un exemple de ce à quoi ressemble le dossier d'un pack MSU : + ``` Liste des fichiers dans le dossier d'un pack MSU : alttp_msu.msu @@ -30,10 +36,12 @@ alttp_msu-34.pcm ``` ## Comment utiliser un pack MSU -Dans tous les cas, vosu devez renommer votre fichier ROM pour qu'il corresponde au même motif que les autres fichiers dans le dossier du pack MSU, -ensuite vous placez votre fichier ROM dans ce dossier. + +Dans tous les cas, vosu devez renommer votre fichier ROM pour qu'il corresponde au même motif que les autres fichiers +dans le dossier du pack MSU, ensuite vous placez votre fichier ROM dans ce dossier. Le contenu du dossier ressemblera alors à ceci : + ``` Liste des fichiers dans le dossier d'un pack MSU : alttp_msu.msu @@ -45,13 +53,16 @@ alttp_msu-34.pcm ``` ### Avec snes9x + 1. Chargez le fichier ROM depuis snes9x. ### Avec un SD2SNES / FXPak sur une console originale + 1. Mettez le dossier du pack MSU avec la ROM sur votre SD2SNES / FXPak. 2. Naviguez vers ce dossier et chargez votre ROM. ### Avec un SD2SNES / FXPak sur SuperNT + 1. Mettez le dossier du pack MSU avec la ROM sur votre SD2SNES / FXPak. 2. Allumez votre SuperNT et naviguez vers le menu `Settings` (paramètres). 3. Entrez dans les paramètres `Audio`. @@ -63,6 +74,8 @@ alttp_msu-34.pcm 9. Naviguez vers le dossier du pack MSU et chargez votre ROM. ## Avertissement pour les streamers -Beaucoup de packs MSU utilisent des musiques copyrightées ce qui n'est pas permis sur des plateformes comme Twitch et YouTube. -Si vous choisissez de streamer des musiques copyrightées, votre VOD sera peut-être rendue muette. Dans le pire des cas, vous pourriez recevoir -une plainte DMCA pour faire retirer la vidéo. Faites attention à streamer uniquement des musiques pour lesquelles vous avez le droit. \ No newline at end of file + +Beaucoup de packs MSU utilisent des musiques copyrightées ce qui n'est pas permis sur des plateformes comme Twitch et +YouTube. Si vous choisissez de streamer des musiques copyrightées, votre VOD sera peut-être rendue muette. Dans le pire +des cas, vous pourriez recevoir une plainte DMCA pour faire retirer la vidéo. Faites attention à streamer uniquement des +musiques pour lesquelles vous avez le droit. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/zelda3/multiworld_de.md b/WebHostLib/static/assets/tutorial/zelda3/multiworld_de.md index 51ac60205462..8f1e859c444d 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/multiworld_de.md +++ b/WebHostLib/static/assets/tutorial/zelda3/multiworld_de.md @@ -1,6 +1,7 @@ # A Link to the Past Randomizer Setup Guide ## Benötigte Software + - [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) - [SNI](https://github.com/alttpo/sni/releases) (Integriert in Archipelago) - Hardware oder Software zum Laden und Abspielen von SNES Rom-Dateien fähig zu einer Internetverbindung @@ -13,44 +14,49 @@ ## Installation Schritt für Schritt ### Windows -1. Lade die Multiworld Utilities herunter und führe die Installation aus. Sei sicher, dass du immer die -aktuellste Version installiert hast.**Die Datei befindet sich im "assets"-Kasten unter der jeweiligen Versionsinfo!**. -Für normale Multiworld-Spiele lädst du die `Setup.Archipelago.exe` herunter. - - Für den Doorrandomizer muss die alternative doors-Variante geladen werden. - - Während der Installation fragt dich das Programm nach der japanischen 1.0 ROM-Datei. Wenn du die Software - bereits installiert hast und einfach nur updaten willst, wirst du nicht nochmal danach gefragt. - - Es kann auch sein,dass der Installer Microsoft Visual C++ installieren möchte. - Wenn du das bereits installiert hast (durch Steam oder andere Programme), wirst du nicht nochmal danach gefragt. + +1. Lade die Multiworld Utilities herunter und führe die Installation aus. Sei sicher, dass du immer die aktuellste + Version installiert hast.**Die Datei befindet sich im "assets"-Kasten unter der jeweiligen Versionsinfo!**. Für + normale Multiworld-Spiele lädst du die `Setup.Archipelago.exe` herunter. + - Für den Doorrandomizer muss die alternative doors-Variante geladen werden. + - Während der Installation fragt dich das Programm nach der japanischen 1.0 ROM-Datei. Wenn du die Software bereits + installiert hast und einfach nur updaten willst, wirst du nicht nochmal danach gefragt. + - Es kann auch sein,dass der Installer Microsoft Visual C++ installieren möchte. Wenn du das bereits installiert + hast (durch Steam oder andere Programme), wirst du nicht nochmal danach gefragt. 2. Wenn du einen Emulator benutzt, so ist es sinnvoll, ihn als Standard zum Abspielen für .sfc-dateien einzustellen. 1. Entpacke oder Installiere deinen Emulator(-Ordner) an einen Ort, den du auch wiederfindest 2. Rechtsklicke auf eine .sfc-Datei und wähle **Öffnen mit...** 3. Mache einen Haken in die Box bei **Immer diese App zum Öffnen von .sfc Dateien benutzen **. 4. Scrolle zum Ende und wähle **Weitere Apps** und nochmal am Ende **Andere App auf diesem PC suchen** auswählen. - 5. Suche nach der .exe-Datei des Emulators deiner Wahl und wähle **Öffnen**. - Diese Datei befindet sich dort, wo den Emulator in Schritt 1 enpackt/installiert hast. + 5. Suche nach der .exe-Datei des Emulators deiner Wahl und wähle **Öffnen**. Diese Datei befindet sich dort, wo den + Emulator in Schritt 1 enpackt/installiert hast. + +### Macintosh -### Macintosh - Es werden freiwillige Helfer gesucht! Meldet euch doch bei **Farrak Kilhn** auf Discord, wenn ihr helfen wollt! ## Erstellen deiner YAML-Datei ### Was ist eine YAML-Datei und wofür brauche ich die? -Deine persönliche YAML-Datei beinhaltet eine Reihe von Einstellungen, die der Zufallsgenerator zum Erstellen -von deinem Spiel benötigt. Jeder Spieler einer Multiworld stellt seine eigene YAML-Datei zur Verfügung. Dadurch kann -jeder Spieler sein Spiel nach seinem eigenen Geschmack gestalten, während andere Spieler unabhängig davon ihre eigenen -Einstellungen wählen können! + +Deine persönliche YAML-Datei beinhaltet eine Reihe von Einstellungen, die der Zufallsgenerator zum Erstellen von deinem +Spiel benötigt. Jeder Spieler einer Multiworld stellt seine eigene YAML-Datei zur Verfügung. Dadurch kann jeder Spieler +sein Spiel nach seinem eigenen Geschmack gestalten, während andere Spieler unabhängig davon ihre eigenen Einstellungen +wählen können! ### Wo bekomme ich so eine YAML-Datei her? -Die [Player Settings](/games/A Link to the Past/player-settings) Seite auf der Website ermöglicht das einfache Erstellen und Herunterladen -deiner eigenen `yaml` Datei. Drei verschiedene Voreinstellungen können dort gespeichert werden. + +Die [Player Settings](/games/A Link to the Past/player-settings) Seite auf der Website ermöglicht das einfache Erstellen +und Herunterladen deiner eigenen `yaml` Datei. Drei verschiedene Voreinstellungen können dort gespeichert werden. ### Deine YAML-Datei ist gewichtet! + Die **Player Settings** Seite hat eine Menge Optionen, die man per Schieber einstellen kann. Das ermöglicht es, -verschiedene Optionen mit unterschiedlichen Wahrscheinlichkeiten in einer Kategorie ausgewürfelt zu werden +verschiedene Optionen mit unterschiedlichen Wahrscheinlichkeiten in einer Kategorie ausgewürfelt zu werden -Als Beispiel kann man sich die Option "Map Shuffle" als einen Eimer mit Zetteln zur Abstimmung Vorstellen. -So kann man beispielsweise für die Option "On" 20 Zettel mit dieser Option einwerfen und 40 Zettel mit "Off". +Als Beispiel kann man sich die Option "Map Shuffle" als einen Eimer mit Zetteln zur Abstimmung Vorstellen. So kann man +beispielsweise für die Option "On" 20 Zettel mit dieser Option einwerfen und 40 Zettel mit "Off". Entsprechend in diesem Beispiel liegen dann 60 Zettel im Eimer. 20 für "On" und 40 für "Off". Um die Option festzulegen, "greift" der Generator in den Eimer und holt sich zufällig einen Zettel heraus. Entsprechend ist die @@ -60,30 +66,35 @@ Wenn du eine Option nicht gewählt haben möchtest, setze ihren Wert einfach auf (Es muss aber mindestens eine Option pro Kategorie einen Wert größer Null besitzen, sonst funktioniert die yaml nicht!) ### Überprüfung deiner YAML-Datei -Wenn man sichergehen will, ob die YAML-Datei funktioniert, kann man dies -bei der [YAML Validator](/mysterycheck) Seite tun. + +Wenn man sichergehen will, ob die YAML-Datei funktioniert, kann man dies bei der [YAML Validator](/mysterycheck) Seite +tun. ## ein Einzelspielerspiel erstellen + 1. Navigiere zur [Generator Seite](/generate) und lade dort deine YAML-Datei hoch. -2. Dir wird eine "Seed Info"-Seite angezeigt, wo du deine Patch-Datei herunterladen kannst. -3. Doppelklicke die Patchdatei und der Emulator sollte nach kurzer Verzögerung mit dem gepatchten Rom starten. - Der Client ist soweit unnötig für Einzelspielerspiele, also kannst diesen und das WebUI einfach schließen. +2. Dir wird eine "Seed Info"-Seite angezeigt, wo du deine Patch-Datei herunterladen kannst. +3. Doppelklicke die Patchdatei und der Emulator sollte nach kurzer Verzögerung mit dem gepatchten Rom starten. Der + Client ist soweit unnötig für Einzelspielerspiele, also kannst diesen und das WebUI einfach schließen. ## Einem MultiWorld-Spiel beitreten ### Erhalte deine Patch-Datei und erstelle dein ROM + Wenn du an einem MultiWorld-Spiel teilnehmen möchtest, wirst du in der Regel vom Host nach deiner YAML-Datei gefragt. -Sobald du diese weitergegeben hast, wird der Host einen Link bereitstellen, wo du deinen Patch oder eine .zip-Datei -mit allen Patches herunterladen kannst. Die Patch-Datei hat immer die Endung `.apbp`. +Sobald du diese weitergegeben hast, wird der Host einen Link bereitstellen, wo du deinen Patch oder eine .zip-Datei mit +allen Patches herunterladen kannst. Die Patch-Datei hat immer die Endung `.apbp`. ### Mit dem Client verbinden #### Via Emulator -Wenn der client den Emulator automatisch gestartet hat, wird SNI ebenfalls im Hintergrund gestartet. -Wenn dies das erste Mal ist, wird möglicherweise ein Fenster angezeigt, wo man bestätigen muss, dass das Programm -durch die Windows Firewall kommunizieren darf. + +Wenn der client den Emulator automatisch gestartet hat, wird SNI ebenfalls im Hintergrund gestartet. Wenn dies das erste +Mal ist, wird möglicherweise ein Fenster angezeigt, wo man bestätigen muss, dass das Programm durch die Windows Firewall +kommunizieren darf. ##### snes9x Multitroid + 1. Lade die Entsprechende ROM-Datei, wenn sie nicht schon automatisch geladen wurde. 2. Klicke auf den Reiter "File" oben im Menü und wähle **Lua Scripting** 3. Klicke auf **New Lua Script Window...** @@ -94,8 +105,9 @@ durch die Windows Firewall kommunizieren darf. "Snes Device: Connected" mit demselben Namen dort steht (in der oberen linken Ecke). ##### BizHawk -1. Stelle sicher, dass der BSNES-Core in Bizhawk geladen wird. Dazu musst du auf das Tools-Menü in Bizhawk klicken - und folgende Optionen wählen: + +1. Stelle sicher, dass der BSNES-Core in Bizhawk geladen wird. Dazu musst du auf das Tools-Menü in Bizhawk klicken und + folgende Optionen wählen: `Config --> Cores --> SNES --> BSNES` 2. Lade die entsprechende ROM-Datei, wenn sie nicht schon automatisch geladen wurde. 3. Klicke auf das Tools-Menü und klicke auf **Lua Console** @@ -106,32 +118,34 @@ durch die Windows Firewall kommunizieren darf. "Snes Device: Connected" mit demselben Namen dort steht (in der oberen linken Ecke) #### Mit (Original-)Hardware -Dieser Guide setzt voraus, dass du schon die entsprechende Firmware für dein Gerät heruntergeladen hast! Wenn du -das noch nicht getan hast, so tue dies am besten jetzt! SD2SNES und FXPak Pro Nutzer finden die passende Firmware + +Dieser Guide setzt voraus, dass du schon die entsprechende Firmware für dein Gerät heruntergeladen hast! Wenn du das +noch nicht getan hast, so tue dies am besten jetzt! SD2SNES und FXPak Pro Nutzer finden die passende Firmware [hier](https://github.com/RedGuyyyy/sd2snes/releases). Nutzer ähnlicher Hardware finden Hilfestellung [auf dieser Seite](http://usb2snes.com/#supported-platforms). - 1. Schließe deinen Emulator, falls er automatisch gestartet haben sollte. 2. Start SNI 3. Starte deine (Original-)Konsole und lade die ROM-Datei. -4. Schaue auf dein Clientfenster, welches nun "Snes Device: Connected" und den namen deiner Konsole - zeigen sollte. +4. Schaue auf dein Clientfenster, welches nun "Snes Device: Connected" und den namen deiner Konsole zeigen sollte. ### Mit dem MultiServer verbinden + Die Patch-Datei, welche auch den Client gestartet hat, sollte dich automatisch mit dem MultiServer verbunden haben. -Manchmal ist dies nicht der Fall, auch wenn das Spiel auf der Webseite gehostet wird, aber woanders erstellt wurde. -Wenn die WebUI vom Client "Server Status: Not Connected" zeigt, frag deinen Host nach der passenden Adresse -und trage sie einfach in das Textfeld neben "Server" ein und drücke Enter. +Manchmal ist dies nicht der Fall, auch wenn das Spiel auf der Webseite gehostet wird, aber woanders erstellt wurde. Wenn +die WebUI vom Client "Server Status: Not Connected" zeigt, frag deinen Host nach der passenden Adresse und trage sie +einfach in das Textfeld neben "Server" ein und drücke Enter. Der Client wird versuchen auf die neue Adresse zu verbinden und nach einer Weile "Server Status: Connected" zeigen. Sollte nach einer Weile der Client sich nicht verbunden haben, lade die Seite neu. ### Spiele das Spiel! -Wenn der Client anzeigt, dass sowohl das SNES-Gerät (oder Emulator) und der Server verbunden sind, -können du und deine Freunde loslegen! Glückwunsch zum erfolgreichen Beitritt zu einem Multiworld-Spiel ;) + +Wenn der Client anzeigt, dass sowohl das SNES-Gerät (oder Emulator) und der Server verbunden sind, können du und deine +Freunde loslegen! Glückwunsch zum erfolgreichen Beitritt zu einem Multiworld-Spiel ;) ## Ein Multiworld-Spiel hosten + Die Empfohlene Art, ein Spiel zu hosten, ist, den Service auf [der website](/generate) zu nutzen. Das Ganze ist recht einfach: @@ -140,11 +154,11 @@ Die Empfohlene Art, ein Spiel zu hosten, ist, den Service auf 3. Lade diesen Zip-Ordner auf der oben genannten Website hoch. 4. Warte einen Moment, wenn das Spiel erstellt wird. 5. Wenn das Spiel erstellt wurde, wirst du auf eine "Seed Info"-Seite weitergeleitet. -6. Klicke auf "Create New Room". Du wirst auf die Serverseite gebracht. Gib diesen Link deinen Mitspielern, - sodass sie ihre Patch-Dateien von dort herunterladen können. - **Anmerkung:** Die Patch-Dateien von dieser Seite ermöglichen es den Spielern, - automatisch auf den Server zu verbinden. Die Patch-Dateien von der "Seed Info"-Seite tun dies nicht! -7. Oben auf der Serverseite ist ein Link zum MultiWorld-Tracker zum aktuellen Spiel zu finden. Gib diesen Link - ebenfalls deinen Mitspielern, so dass ihr alle den Fortschritt eures Spiels verfolgen könnt! Ihr könnt ihn - auch an Zuschauer weitergeben, so dass sie auf dem Laufenden bleiben. +6. Klicke auf "Create New Room". Du wirst auf die Serverseite gebracht. Gib diesen Link deinen Mitspielern, sodass sie + ihre Patch-Dateien von dort herunterladen können. + **Anmerkung:** Die Patch-Dateien von dieser Seite ermöglichen es den Spielern, automatisch auf den Server zu + verbinden. Die Patch-Dateien von der "Seed Info"-Seite tun dies nicht! +7. Oben auf der Serverseite ist ein Link zum MultiWorld-Tracker zum aktuellen Spiel zu finden. Gib diesen Link ebenfalls + deinen Mitspielern, so dass ihr alle den Fortschritt eures Spiels verfolgen könnt! Ihr könnt ihn auch an Zuschauer + weitergeben, so dass sie auf dem Laufenden bleiben. 8. Wenn alle Spieler verbunden sind, könnt ihr mit dem Spiel loslegen! Viel Spaß! diff --git a/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md b/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md index d0cd95470403..ce3ab541488f 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md +++ b/WebHostLib/static/assets/tutorial/zelda3/multiworld_en.md @@ -1,100 +1,136 @@ # A Link to the Past Randomizer Setup Guide ## Required Software + - A client, one of: - - Z3Client: [Z3Client Releases Page](https://github.com/ArchipelagoMW/Z3Client/releases) - - SNIClient included with Archipelago: - [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) - - If installing Archipelago, make sure to check the box for SNIClient -> A Link to the Past Patch Setup during install, or SNI will not be included -- Super Nintendo Interface (SNI): [SNI Releases Page](https://github.com/alttpo/sni/releases) - - (Included in both Z3Client and SNIClient) + - Z3Client: [Z3Client Releases Page](https://github.com/ArchipelagoMW/Z3Client/releases) + - SNIClient included with Archipelago: + [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) + - If installing Archipelago, make sure to check the box for SNIClient -> A Link to the Past Patch Setup during + install, or SNI will not be included +- Super Nintendo Interface (SNI): [SNI Releases Page](https://github.com/alttpo/sni/releases) + - (Included in both Z3Client and SNIClient) - Hardware or software capable of loading and playing SNES ROM files - An emulator capable of connecting to SNI, one of: - - snes9x_Multitroid: [snes9x Multitroid Download in Google Drive](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz) - - BizHawk: [BizHawk Official Website](http://tasvideos.org/BizHawk.html) - - An SD2SNES, FXPak Pro ([FXPak Pro Store page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other compatible hardware + - + snes9x_Multitroid: [snes9x Multitroid Download in Google Drive](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz) + - BizHawk: [BizHawk Official Website](http://tasvideos.org/BizHawk.html) + - An SD2SNES, FXPak Pro ([FXPak Pro Store page](https://krikzz.com/store/home/54-fxpak-pro.html)), or other + compatible hardware - Your Japanese v1.0 ROM file, probably named `Zelda no Densetsu - Kamigami no Triforce (Japan).sfc` ## Installation Procedures + 1. Download and install your preferred client from the link above, making sure to install the most recent version. -**The installer file is located in the assets section at the bottom of the version information**. + **The installer file is located in the assets section at the bottom of the version information**. - During setup, you will be asked to locate your base ROM file. This is your Japanese Link to the Past ROM file. -2. If you are using an emulator, you should assign your Lua capable emulator as your default program -for launching ROM files. - 1. Extract your emulator's folder to your Desktop, or somewhere you will remember. +2. If you are using an emulator, you should assign your Lua capable emulator as your default program for launching ROM + files. + 1. Extract your emulator's folder to your Desktop, or somewhere you will remember. 2. Right-click on a ROM file and select **Open with...** 3. Check the box next to **Always use this app to open .sfc files** 4. Scroll to the bottom of the list and click the grey text **Look for another App on this PC** - 5. Browse for your emulator's `.exe` file and click **Open**. This file should be located inside - the folder you extracted in step one. + 5. Browse for your emulator's `.exe` file and click **Open**. This file should be located inside the folder you + extracted in step one. ## Create a Config (.yaml) File ### What is a config file and why do I need one? -Your config file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. + +Your config file contains a set of configuration options which provide the generator with information about how it +should generate your game. Each player of a multiworld will provide their own config file. This setup allows each player +to enjoy an experience customized for their taste, and different players in the same multiworld can all have different +options. ### Where do I get a config file? -The Player Settings page on the website allows you to configure your personal settings and export a config file from them. ([Player Settings Page for A Link to the Past](/games/A%20Link%20to%20the%20Past/player-settings)) + +The Player Settings page on the website allows you to configure your personal settings and export a config file from +them. ([Player Settings Page for A Link to the Past](/games/A%20Link%20to%20the%20Past/player-settings)) ### Verifying your config file -If you would like to validate your config file to make sure it works, you may do so on the YAML Validation page. ([YAML Validation Page](/mysterycheck)) + +If you would like to validate your config file to make sure it works, you may do so on the YAML Validation +page. ([YAML Validation Page](/mysterycheck)) ## Generating a Single-Player Game -1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" button. ([Player Settings for A Link to the Past](/games/A%20Link%20to%20the%20Past/player-settings)) + +1. Navigate to the Player Settings page, configure your options, and click the "Generate Game" + button. ([Player Settings for A Link to the Past](/games/A%20Link%20to%20the%20Past/player-settings)) 2. You will be presented with a "Seed Info" page. 3. Click the "Create New Room" link. 4. You will be presented with a server page, from which you can download your patch file. -5. Double-click on your patch file, and the Z3Client will launch automatically, create your ROM from the patch file, and open your emulator for you. +5. Double-click on your patch file, and the Z3Client will launch automatically, create your ROM from the patch file, and + open your emulator for you. 6. Since this is a single-player game, you will no longer need the client, so feel free to close it. ## Joining a MultiWorld Game ### Obtain your patch file and create your ROM -When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch files. Your patch file should have a `.apbp` extension. -Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically launch the client, and will also create your ROM in the same place as your patch file. +When you join a multiworld game, you will be asked to provide your config file to whoever is hosting. Once that is done, +the host will provide you with either a link to download your patch file, or with a zip file containing everyone's patch +files. Your patch file should have a `.apbp` extension. + +Put your patch file on your desktop or somewhere convenient, and double click it. This should automatically launch the +client, and will also create your ROM in the same place as your patch file. ### Connect to the client #### With an emulator -When the client launched automatically, SNI should have also automatically launched in the background. If this is its first time launching, you may be prompted to allow it to communicate through the Windows Firewall. + +When the client launched automatically, SNI should have also automatically launched in the background. If this is its +first time launching, you may be prompted to allow it to communicate through the Windows Firewall. ##### snes9x Multitroid + 1. Load your ROM file if it hasn't already been loaded. 2. Click on the File menu and hover on **Lua Scripting** 3. Click on **New Lua Script Window...** 4. In the new window, click **Browse...** 5. Select the connector lua file included with your client - - Z3Client users should download `sniConnector.lua` from the client download page - - SNIClient users should look in their Archipelago folder for `/sni/lua` + - Z3Client users should download `sniConnector.lua` from the client download page + - SNIClient users should look in their Archipelago folder for `/sni/lua` ##### BizHawk -1. Ensure you have the BSNES core loaded. You may do this by clicking on the Tools menu in BizHawk and following - these menu options: + +1. Ensure you have the BSNES core loaded. You may do this by clicking on the Tools menu in BizHawk and following these + menu options: `Config --> Cores --> SNES --> BSNES` Once you have changed the loaded core, you must restart BizHawk. 2. Load your ROM file if it hasn't already been loaded. 3. Click on the Tools menu and click on **Lua Console** 4. Click Script -> Open Script... 5. Select the `Connector.lua` file you downloaded above - - Z3Client users should download `sniConnector.lua` from the client download page - - SNIClient users should look in their Archipelago folder for `/sni/lua` + - Z3Client users should download `sniConnector.lua` from the client download page + - SNIClient users should look in their Archipelago folder for `/sni/lua` 6. Run the script by double-clicking it in the listing #### With hardware -This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do this now. SD2SNES and FXPak Pro users may download the appropriate firmware [from the sd2snes releases page](https://github.com/RedGuyyyy/sd2snes/releases). Other hardware may find helpful information [on the usb2snes supported platforms page](http://usb2snes.com/#supported-platforms). + +This guide assumes you have downloaded the correct firmware for your device. If you have not done so already, please do +this now. SD2SNES and FXPak Pro users may download the appropriate +firmware [from the sd2snes releases page](https://github.com/RedGuyyyy/sd2snes/releases). Other hardware may find +helpful information [on the usb2snes supported platforms page](http://usb2snes.com/#supported-platforms). 1. Close your emulator, which may have auto-launched. 2. Power on your device and load the ROM. ### Connect to the Archipelago Server -The patch file which launched your client should have automatically connected you to the AP Server. There are a few reasons this may not happen however, including if the game is hosted on the website but was generated elsewhere. If the client window shows "Server Status: Not Connected", simply ask the host for the address of the server, and copy/paste it into the "Server" input field then press enter. + +The patch file which launched your client should have automatically connected you to the AP Server. There are a few +reasons this may not happen however, including if the game is hosted on the website but was generated elsewhere. If the +client window shows "Server Status: Not Connected", simply ask the host for the address of the server, and copy/paste it +into the "Server" input field then press enter. The client will attempt to reconnect to the new server address, and should momentarily show "Server Status: Connected". ### Play the game -When the client shows both SNES Device and Server as connected, you're ready to begin playing. Congratulations on successfully joining a multiworld game! + +When the client shows both SNES Device and Server as connected, you're ready to begin playing. 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) \ No newline at end of file + +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) \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/zelda3/multiworld_es.md b/WebHostLib/static/assets/tutorial/zelda3/multiworld_es.md index b8383b6ac2c1..e01306a63e84 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/multiworld_es.md +++ b/WebHostLib/static/assets/tutorial/zelda3/multiworld_es.md @@ -7,6 +7,7 @@ ## Software requerido + - [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) - [QUsb2Snes](https://github.com/Skarsnik/QUsb2snes/releases) (Incluido en Multiworld Utilities) - Hardware o software capaz de cargar y ejecutar archivos de ROM de SNES @@ -19,85 +20,109 @@ ## Procedimiento de instalación ### Instalación en Windows -1. Descarga e instala MultiWorld Utilities desde el enlace anterior, asegurando que instalamos la versión más reciente. -**El archivo esta localizado en la sección "assets" en la parte inferior de la información de versión**. Si tu intención es jugar la versión normal de multiworld, necesitarás el archivo `Setup.Archipelago.exe` - - Si estas interesado en jugar la variante que aleatoriza las puertas internas de las mazmorras, necesitaras bajar 'Setup.BerserkerMultiWorld.Doors.exe' - - Durante el proceso de instalación, se te pedirá donde esta situado tu archivo ROM japonés v1.0. Si ya habías instalado este software con anterioridad y simplemente estas actualizando, no se te pedirá la localización del archivo una segunda vez. - - Puede ser que el programa pida la instalación de Microsoft Visual C++. Si ya lo tienes en tu ordenador (posiblemente por que un juego de Steam ya lo haya instalado), el instalador no te pedirá su instalación. -2. Si estas usando un emulador, deberías asignar la versión capaz de ejecutar scripts Lua como programa por defecto para lanzar ficheros de ROM de SNES. +1. Descarga e instala MultiWorld Utilities desde el enlace anterior, asegurando que instalamos la versión más reciente. + **El archivo esta localizado en la sección "assets" en la parte inferior de la información de versión**. Si tu + intención es jugar la versión normal de multiworld, necesitarás el archivo `Setup.Archipelago.exe` + - Si estas interesado en jugar la variante que aleatoriza las puertas internas de las mazmorras, necesitaras bajar ' + Setup.BerserkerMultiWorld.Doors.exe' + - Durante el proceso de instalación, se te pedirá donde esta situado tu archivo ROM japonés v1.0. Si ya habías + instalado este software con anterioridad y simplemente estas actualizando, no se te pedirá la localización del + archivo una segunda vez. + - Puede ser que el programa pida la instalación de Microsoft Visual C++. Si ya lo tienes en tu ordenador ( + posiblemente por que un juego de Steam ya lo haya instalado), el instalador no te pedirá su instalación. + +2. Si estas usando un emulador, deberías asignar la versión capaz de ejecutar scripts Lua como programa por defecto para + lanzar ficheros de ROM de SNES. 1. Extrae tu emulador al escritorio, o cualquier sitio que después recuerdes. 2. Haz click derecho en un fichero de ROM (ha de tener la extensión sfc) y selecciona **Abrir con...** 3. Marca la opción **Usar siempre esta aplicación para abrir los archivos .sfc** - 4. Baja hasta el final de la lista y haz click en la opción **Buscar otra aplicación en el equipo** (Si usas Windows 10 es posible que debas hacer click en **Más aplicaciones**) - 5. Busca el archivo .exe de tu emulador y haz click en **Abrir**. Este archivo debe estar en el directorio donde extrajiste en el paso 1. + 4. Baja hasta el final de la lista y haz click en la opción **Buscar otra aplicación en el equipo** (Si usas Windows + 10 es posible que debas hacer click en **Más aplicaciones**) + 5. Busca el archivo .exe de tu emulador y haz click en **Abrir**. Este archivo debe estar en el directorio donde + extrajiste en el paso 1. ### Instalación en Macintosh -- ¡Necesitamos voluntarios para rellenar esta seccion! Contactad con **Farrak Kilhn** (en inglés) en Discord si queréis ayudar. + +- ¡Necesitamos voluntarios para rellenar esta seccion! Contactad con **Farrak Kilhn** (en inglés) en Discord si queréis + ayudar. ## Configurar tu archivo YAML ### Que es un archivo YAML y por qué necesito uno? -Tu archivo YAML contiene un conjunto de opciones de configuración que proveen al generador con información sobre como debe generar tu juego. -Cada jugador en una partida de multiworld proveerá su propio fichero YAML. Esta configuración permite -que cada jugador disfrute de una experiencia personalizada a su gusto, y cada jugador dentro de la misma partida de multiworld puede tener diferentes opciones. + +Tu archivo YAML contiene un conjunto de opciones de configuración que proveen al generador con información sobre como +debe generar tu juego. Cada jugador en una partida de multiworld proveerá su propio fichero YAML. Esta configuración +permite que cada jugador disfrute de una experiencia personalizada a su gusto, y cada jugador dentro de la misma partida +de multiworld puede tener diferentes opciones. ### Donde puedo obtener un fichero YAML? -La página "[Generate Game](/games/A%20Link%20to%20the%20Past/player-settings)" en el sitio web te permite configurar tu configuración personal y -descargar un fichero "YAML". + +La página "[Generate Game](/games/A%20Link%20to%20the%20Past/player-settings)" en el sitio web te permite configurar tu +configuración personal y descargar un fichero "YAML". ### Configuración YAML avanzada + Una version mas avanzada del fichero Yaml puede ser creada usando la pagina ["Weighted settings"](/weighted-settings), -la cual te permite tener almacenadas hasta 3 preajustes. La pagina "Weighted Settings" tiene muchas opciones representadas con controles deslizantes. Esto permite -elegir cuan probable los valores de una categoría pueden ser elegidos sobre otros de la misma. +la cual te permite tener almacenadas hasta 3 preajustes. La pagina "Weighted Settings" tiene muchas opciones +representadas con controles deslizantes. Esto permite elegir cuan probable los valores de una categoría pueden ser +elegidos sobre otros de la misma. -Por ejemplo, imagina que el generador crea un cubo llamado "map_shuffle", y pone trozos de papel doblado en él por cada sub-opción. -Ademas imaginemos que tu valor elegido para "on" es 20 y el elegido para "off" es 40. +Por ejemplo, imagina que el generador crea un cubo llamado "map_shuffle", y pone trozos de papel doblado en él por cada +sub-opción. Ademas imaginemos que tu valor elegido para "on" es 20 y el elegido para "off" es 40. -Por tanto, en este ejemplo, habrán 60 trozos de papel. 20 para "on" y 40 para "off". -Cuando el generador esta decidiendo si activar o no "map shuffle" para tu partida, -meterá la mano en el cubo y sacara un trozo de papel al azar. En este ejemplo, -es mucho mas probable (2 de cada 3 veces (40/60)) que "map shuffle" esté desactivado. +Por tanto, en este ejemplo, habrán 60 trozos de papel. 20 para "on" y 40 para "off". Cuando el generador esta decidiendo +si activar o no "map shuffle" para tu partida, meterá la mano en el cubo y sacara un trozo de papel al azar. En este +ejemplo, es mucho mas probable (2 de cada 3 veces (40/60)) que "map shuffle" esté desactivado. -Si quieres que una opción no pueda ser escogida, simplemente asigna el valor 0 a dicha opción. Recuerda que cada opción debe tener - al menos un valor mayor que cero, si no la generación fallará. +Si quieres que una opción no pueda ser escogida, simplemente asigna el valor 0 a dicha opción. Recuerda que cada opción +debe tener al menos un valor mayor que cero, si no la generación fallará. ### Verificando tu archivo YAML + Si quieres validar que tu fichero YAML para asegurarte que funciona correctamente, puedes hacerlo en la pagina [YAML Validator](/mysterycheck). ## Generar una partida para un jugador -1. Navega a [la pagina Generate game](/games/A%20Link%20to%20the%20Past/player-settings), configura tus opciones, haz click en el boton "Generate game". + +1. Navega a [la pagina Generate game](/games/A%20Link%20to%20the%20Past/player-settings), configura tus opciones, haz + click en el boton "Generate game". 2. Se te redigirá a una pagina "Seed Info", donde puedes descargar tu archivo de parche. -3. Haz doble click en tu fichero de parche, y el emulador debería ejecutar tu juego automáticamente. Como el - Cliente no es necesario para partidas de un jugador, puedes cerrarlo junto a la pagina web (que tiene como titulo "Multiworld WebUI") que se ha abierto automáticamente. +3. Haz doble click en tu fichero de parche, y el emulador debería ejecutar tu juego automáticamente. Como el Cliente no + es necesario para partidas de un jugador, puedes cerrarlo junto a la pagina web (que tiene como titulo "Multiworld + WebUI") que se ha abierto automáticamente. ## Unirse a una partida MultiWorld ### Obtener el fichero de parche y crea tu ROM + Cuando te unes a una partida multiworld, debes proveer tu fichero YAML a quien sea el creador de la partida. Una vez -este hecho, el creador te devolverá un enlace para descargar el parche o un fichero zip conteniendo todos los ficheros de parche de la partida -Tu fichero de parche debe tener la extensión `.bmbp`. +este hecho, el creador te devolverá un enlace para descargar el parche o un fichero zip conteniendo todos los ficheros +de parche de la partida Tu fichero de parche debe tener la extensión `.bmbp`. -Pon tu fichero de parche en el escritorio o en algún sitio conveniente, y haz doble click. Esto debería ejecutar automáticamente -el cliente, y ademas creara la rom en el mismo directorio donde este el fichero de parche. +Pon tu fichero de parche en el escritorio o en algún sitio conveniente, y haz doble click. Esto debería ejecutar +automáticamente el cliente, y ademas creara la rom en el mismo directorio donde este el fichero de parche. ### Conectar al cliente #### Con emulador -Cuando el cliente se lance automáticamente, QUsb2Snes debería haberse ejecutado también. -Si es la primera vez que lo ejecutas, puedes ser que el firewall de Windows te pregunte si le permites la comunicación. + +Cuando el cliente se lance automáticamente, QUsb2Snes debería haberse ejecutado también. Si es la primera vez que lo +ejecutas, puedes ser que el firewall de Windows te pregunte si le permites la comunicación. ##### snes9x Multitroid + 1. Carga tu fichero de ROM, si no lo has hecho ya 2. Abre el menu "File" y situa el raton en **Lua Scripting** 3. Haz click en **New Lua Script Window...** 4. En la nueva ventana, haz click en **Browse...** -5. Navega hacia el directorio donde este situado snes9x Multitroid, entra en el directorio `lua`, y escoge `multibridge.lua` -6. Observa que se ha asignado un nombre al dispositivo, y el cliente muestra "SNES Device: Connected", con el mismo nombre - en la esquina superior izquierda. +5. Navega hacia el directorio donde este situado snes9x Multitroid, entra en el directorio `lua`, y + escoge `multibridge.lua` +6. Observa que se ha asignado un nombre al dispositivo, y el cliente muestra "SNES Device: Connected", con el mismo + nombre en la esquina superior izquierda. ##### BizHawk + 1. Asegurate que se ha cargado el nucleo BSNES. Debes hacer esto en el menu Tools y siguiento estas opciones: `Config --> Cores --> SNES --> BSNES` Una vez cambiado el nucleo cargado, Bizhawk ha de ser reiniciado. @@ -107,14 +132,16 @@ Si es la primera vez que lo ejecutas, puedes ser que el firewall de Windows te p 5. Navega al directorio de instalación de MultiWorld Utilities, y en los siguiente directorios: `QUsb2Snes/Qusb2Snes/LuaBridge` 6. Selecciona `luabridge.lua` y haz click en Abrir. -7. Observa que se ha asignado un nombre al dispositivo, y el cliente muestra "SNES Device: Connected", con el mismo nombre - en la esquina superior izquierda. +7. Observa que se ha asignado un nombre al dispositivo, y el cliente muestra "SNES Device: Connected", con el mismo + nombre en la esquina superior izquierda. #### Con Hardware -Esta guía asume que ya has descargado el firmware correcto para tu dispositivo. Si no lo has hecho ya, hazlo ahora. -Los usuarios de SD2SNES y FXPak Pro pueden descargar el firmware apropiado + +Esta guía asume que ya has descargado el firmware correcto para tu dispositivo. Si no lo has hecho ya, hazlo ahora. Los +usuarios de SD2SNES y FXPak Pro pueden descargar el firmware apropiado [aqui](https://github.com/RedGuyyyy/sd2snes/releases). Los usuarios de otros dispositivos pueden encontrar información [en esta página](http://usb2snes.com/#supported-platforms). + 1. Cierra tu emulador, el cual debe haberse autoejecutado. 2. Cierra QUsb2Snes, el cual fue ejecutado junto al cliente. 3. Ejecuta la version correcta de QUsb2Snes (v0.7.16). @@ -122,19 +149,22 @@ Los usuarios de SD2SNES y FXPak Pro pueden descargar el firmware apropiado 5. Observa en el cliente que ahora muestra "SNES Device: Connected", y aparece el nombre del dispositivo. ### Conecta al MultiServer -El fichero de parche que ha lanzado el cliente debe haberte conectado automaticamente al MultiServer. -Hay algunas razonas por las que esto puede que no pase, incluyendo que el juego este hospedado en el sitio web pero -se genero en algún otro sitio. Si el cliente muestra "Server Status: Not Connected", preguntale al creador de la partida -la dirección del servidor, copiala en el campo "Server" y presiona Enter. -El cliente intentara conectarse a esta nueva dirección, y debería mostrar "Server -Status: Connected" en algún momento. Si el cliente no se conecta al cabo de un rato, puede ser que necesites refrescar la pagina web. +El fichero de parche que ha lanzado el cliente debe haberte conectado automaticamente al MultiServer. Hay algunas +razonas por las que esto puede que no pase, incluyendo que el juego este hospedado en el sitio web pero se genero en +algún otro sitio. Si el cliente muestra "Server Status: Not Connected", preguntale al creador de la partida la dirección +del servidor, copiala en el campo "Server" y presiona Enter. + +El cliente intentara conectarse a esta nueva dirección, y debería mostrar "Server Status: Connected" en algún momento. +Si el cliente no se conecta al cabo de un rato, puede ser que necesites refrescar la pagina web. ### Jugando -Cuando ambos SNES Device and Server aparezcan como "connected", estas listo para empezar a jugar. Felicidades -por unirte satisfactoriamente a una partida de multiworld! + +Cuando ambos SNES Device and Server aparezcan como "connected", estas listo para empezar a jugar. Felicidades por unirte +satisfactoriamente a una partida de multiworld! ## Hospedando una partida de multiworld + La manera recomendad para hospedar una partida es usar el servicio proveído en [el sitio web](/generate). El proceso es relativamente sencillo: @@ -143,28 +173,34 @@ La manera recomendad para hospedar una partida es usar el servicio proveído en 3. Carga el fichero zip en el sitio web enlazado anteriormente. 4. Espera a que la seed sea generada. 5. Cuando esto acabe, se te redigirá a una pagina titulada "Seed Info". -6. Haz click en "Create New Room". Esto te llevara a la pagina del servidor. Pasa el enlace a esta pagina a los jugadores - para que puedan descargar los ficheros de parche de ahi. +6. Haz click en "Create New Room". Esto te llevara a la pagina del servidor. Pasa el enlace a esta pagina a los + jugadores para que puedan descargar los ficheros de parche de ahi. **Nota:** Los ficheros de parche de esta pagina permiten a los jugadores conectarse al servidor automaticamente, mientras que los de la pagina "Seed info" no. -7. Hay un enlace a un MultiWorld Tracker en la parte superior de la pagina de la sala. Deberías pasar también este enlace - a los jugadores para que puedan ver el progreso de la partida. A los observadores también se les puede pasar este enlace. +7. Hay un enlace a un MultiWorld Tracker en la parte superior de la pagina de la sala. Deberías pasar también este + enlace a los jugadores para que puedan ver el progreso de la partida. A los observadores también se les puede pasar + este enlace. 8. Una vez todos los jugadores se han unido, podeis empezar a jugar. ## Auto-Tracking + Si deseas usar auto-tracking para tu partida, varios programas ofrecen esta funcionalidad. El programa recomentdado actualmente es: [OpenTracker](https://github.com/trippsc2/OpenTracker/releases). ### Instalación + 1. Descarga el fichero de instalacion apropiado para tu ordenador (Usuarios de windows quieren el fichero ".msi"). -2. Durante el proceso de insatalación, puede que se te pida instalar Microsoft Visual Studio Build Tools. Un enlace - este programa se muestra durante la proceso, y debe ser ejecutado manualmente. +2. Durante el proceso de insatalación, puede que se te pida instalar Microsoft Visual Studio Build Tools. Un enlace este + programa se muestra durante la proceso, y debe ser ejecutado manualmente. ### Activar auto-tracking -1. Con OpenTracker ejecutado, haz click en el menu Tracking en la parte superior de la ventana, y elige **AutoTracker...** + +1. Con OpenTracker ejecutado, haz click en el menu Tracking en la parte superior de la ventana, y elige ** + AutoTracker...** 2. Click the **Get Devices** button 3. Selecciona tu "SNES device" de la lista -4. Si quieres que las llaves y los objetos de mazmorra tambien sean marcados, activa la caja con nombre **Race Illegal Tracking** +4. Si quieres que las llaves y los objetos de mazmorra tambien sean marcados, activa la caja con nombre **Race Illegal + Tracking** 5. Haz click en el boton **Start Autotracking** 6. Cierra la ventana AutoTracker, ya que deja de ser necesaria \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/zelda3/multiworld_fr.md b/WebHostLib/static/assets/tutorial/zelda3/multiworld_fr.md index b8e5e71d357a..e0f7a5813903 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/multiworld_fr.md +++ b/WebHostLib/static/assets/tutorial/zelda3/multiworld_fr.md @@ -7,102 +7,126 @@ ## Logiciels requis + - [Archipelago](https://github.com/ArchipelagoMW/Archipelago/releases) - [QUsb2Snes](https://github.com/Skarsnik/QUsb2snes/releases) (Inclus dans les utilitaires précédents) - Une solution logicielle ou matérielle capable de charger et de lancer des fichiers ROM de SNES - Un émulateur capable d'éxécuter des scripts Lua ([snes9x Multitroid](https://drive.google.com/drive/folders/1_ej-pwWtCAHYXIrvs5Hro16A1s9Hi3Jz), [BizHawk](http://tasvideos.org/BizHawk.html)) - - Un SD2SNES, [FXPak Pro](https://krikzz.com/store/home/54-fxpak-pro.html), ou une autre solution matérielle compatible + - Un SD2SNES, [FXPak Pro](https://krikzz.com/store/home/54-fxpak-pro.html), ou une autre solution matérielle + compatible - Le fichier ROM de la v1.0 japonaise, sûrement nommé `Zelda no Densetsu - Kamigami no Triforce (Japan).sfc` ## Procédure d'installation ### Installation sur Windows -1. Téléchargez et installez les utilitaires du MultiWorld à l'aide du lien au-dessus, faites attention à bien installer la version la plus récente. -**Le fichier se situe dans la section "assets" en bas des informations de version**. Si vous voulez jouer des parties classiques de multiworld, -téléchargez `Setup.BerserkerMultiWorld.exe` - - Si vous voulez jouer à la version alternative avec le mélangeur de portes dans les donjons, vous téléchargez le fichier - `Setup.BerserkerMultiWorld.Doors.exe`. - - Durant le processus d'installation, il vous sera demandé de localiser votre ROM v1.0 japonaise. Si vous avez déjà installé le logiciel - auparavant et qu'il s'agit simplement d'une mise à jour, la localisation de la ROM originale ne sera pas requise. - - Il vous sera peut-être également demandé d'installer Microsoft Visual C++. Si vous le possédez déjà (possiblement parce qu'un - jeu Steam l'a déjà installé), l'installateur ne reproposera pas de l'installer. - -2. Si vous utilisez un émulateur, il est recommandé d'assigner votre émulateur capable d'éxécuter des scripts Lua comme programme -par défaut pour ouvrir vos ROMs. - 1. Extrayez votre dossier d'émulateur sur votre Bureau, ou à un endroit dont vous vous souviendrez. + +1. Téléchargez et installez les utilitaires du MultiWorld à l'aide du lien au-dessus, faites attention à bien installer + la version la plus récente. + **Le fichier se situe dans la section "assets" en bas des informations de version**. Si vous voulez jouer des parties + classiques de multiworld, téléchargez `Setup.BerserkerMultiWorld.exe` + - Si vous voulez jouer à la version alternative avec le mélangeur de portes dans les donjons, vous téléchargez le + fichier + `Setup.BerserkerMultiWorld.Doors.exe`. + - Durant le processus d'installation, il vous sera demandé de localiser votre ROM v1.0 japonaise. Si vous avez déjà + installé le logiciel auparavant et qu'il s'agit simplement d'une mise à jour, la localisation de la ROM originale + ne sera pas requise. + - Il vous sera peut-être également demandé d'installer Microsoft Visual C++. Si vous le possédez déjà (possiblement + parce qu'un jeu Steam l'a déjà installé), l'installateur ne reproposera pas de l'installer. + +2. Si vous utilisez un émulateur, il est recommandé d'assigner votre émulateur capable d'éxécuter des scripts Lua comme + programme par défaut pour ouvrir vos ROMs. + 1. Extrayez votre dossier d'émulateur sur votre Bureau, ou à un endroit dont vous vous souviendrez. 2. Faites un clic droit sur un fichier ROM et sélectionnez **Ouvrir avec...** 3. Cochez la case à côté de **Toujours utiliser cette application pour ouvrir les fichiers .sfc** 4. Descendez jusqu'en bas de la liste et sélectionnez **Rechercher une autre application sur ce PC** - 5. Naviguez dans les dossiers jusqu'au fichier `.exe` de votre émulateur et choisissez **Ouvrir**. Ce fichier devrait - se trouver dans le dossier que vous avez extrait à la première étape. + 5. Naviguez dans les dossiers jusqu'au fichier `.exe` de votre émulateur et choisissez **Ouvrir**. Ce fichier + devrait se trouver dans le dossier que vous avez extrait à la première étape. ### Installation sur Mac -- Des volontaires sont recherchés pour remplir cette section ! Contactez **Farrak Kilhn** sur Discord si vous voulez aider. + +- Des volontaires sont recherchés pour remplir cette section ! Contactez **Farrak Kilhn** sur Discord si vous voulez + aider. ## Configurer son fichier YAML ### Qu'est-ce qu'un fichier YAML et pourquoi en ai-je besoin ? -Votre fichier YAML contient un ensemble d'options de configuration qui fournissent au générateur des informations -sur comment il devrait générer votre seed. Chaque joueur d'un multiwolrd devra fournir son propre fichier YAML. Cela permet à chaque -joueur d'apprécier une expérience customisée selon ses goûts, et les différents joueurs d'un même multiworld peuvent avoir différentes options. + +Votre fichier YAML contient un ensemble d'options de configuration qui fournissent au générateur des informations sur +comment il devrait générer votre seed. Chaque joueur d'un multiwolrd devra fournir son propre fichier YAML. Cela permet +à chaque joueur d'apprécier une expérience customisée selon ses goûts, et les différents joueurs d'un même multiworld +peuvent avoir différentes options. ### Où est-ce que j'obtiens un fichier YAML ? -La page [Génération de partie](/games/A%20Link%20to%20the%20Past/player-settings) vous permet de configurer vos paramètres personnels et de les exporter vers un fichier YAML. + +La page [Génération de partie](/games/A%20Link%20to%20the%20Past/player-settings) vous permet de configurer vos +paramètres personnels et de les exporter vers un fichier YAML. ### Configuration avancée du fichier YAML -Une version plus avancée du fichier YAML peut être créée en utilisant la page des [paramètres de pondération](/weighted-settings), qui vous permet -de configurer jusqu'à trois préréglages. Cette page a de nombreuses options qui sont essentiellement représentées avec des curseurs glissants. -Cela vous permet de choisir quelles sont les chances qu'une certaine option apparaisse par rapport aux autres disponibles dans une même catégorie. + +Une version plus avancée du fichier YAML peut être créée en utilisant la page +des [paramètres de pondération](/weighted-settings), qui vous permet de configurer jusqu'à trois préréglages. Cette page +a de nombreuses options qui sont essentiellement représentées avec des curseurs glissants. Cela vous permet de choisir +quelles sont les chances qu'une certaine option apparaisse par rapport aux autres disponibles dans une même catégorie. Par exemple, imaginez que le générateur crée un seau étiqueté "Mélange des cartes", et qu'il place un morceau de papier pour chaque sous-option. Imaginez également que la valeur pour "On" est 20 et la valeur pour "Off" est 40. -Dans cet exemple, il y a soixante morceaux de papier dans le seau : vingt pour "On" et quarante pour "Off". Quand le générateur -décide s'il doit oui ou non activer le mélange des cartes pour votre partie, , il tire aléatoirement un papier dans le seau. -Dans cet exemple, il y a de plus grandes chances d'avoir le mélange de cartes désactivé. +Dans cet exemple, il y a soixante morceaux de papier dans le seau : vingt pour "On" et quarante pour "Off". Quand le +générateur décide s'il doit oui ou non activer le mélange des cartes pour votre partie, , il tire aléatoirement un +papier dans le seau. Dans cet exemple, il y a de plus grandes chances d'avoir le mélange de cartes désactivé. -S'il y a une option dont vous ne voulez jamais, mettez simplement sa valeur à zéro. N'oubliez pas qu'il faut que pour chaque paramètre il faut -au moins une option qui soit paramétrée sur un nombre strictement positif. +S'il y a une option dont vous ne voulez jamais, mettez simplement sa valeur à zéro. N'oubliez pas qu'il faut que pour +chaque paramètre il faut au moins une option qui soit paramétrée sur un nombre strictement positif. ### Vérifier son fichier YAML + Si vous voulez valider votre fichier YAML pour être sûr qu'il fonctionne, vous pouvez le vérifier sur la page du [Validateur de YAML](/mysterycheck). ## Générer une partie pour un joueur -1. Aller sur la page [Génération de partie](/games/A%20Link%20to%20the%20Past/player-settings), configurez vos options, et cliquez sur le bouton "Generate Game". + +1. Aller sur la page [Génération de partie](/games/A%20Link%20to%20the%20Past/player-settings), configurez vos options, + et cliquez sur le bouton "Generate Game". 2. Il vous sera alors présenté une page d'informations sur la seed, où vous pourrez télécharger votre patch. 3. Double-cliquez sur le patch et l'émulateur devrait se lancer automatiquement avec la seed. Etant donné que le client -n'est pas requis pour les parties à un joueur, vous pouvez le fermer ainsi que l'interface Web (WebUI). + n'est pas requis pour les parties à un joueur, vous pouvez le fermer ainsi que l'interface Web (WebUI). ## Rejoindre un MultiWorld ### Obtenir son patch et créer sa ROM -Quand vous rejoignez un multiworld, il vous sera demandé de fournir votre fichier YAML à celui qui héberge la partie -ou s'occupe de la génération. Une fois cela fait, l'hôte vous fournira soit un lien pour télécharger votre patch, soit un fichier `.zip` contenant -les patchs de tous les joueurs. Votre patch devrait avoir l'extension `.bmbp`. -Placez votre patch sur votre bureau ou dans un dossier simple d'accès, et double-cliquez dessus. Cela devrait lancer automatiquement -le client, et devrait créer la ROM dans le même dossier que votre patch. +Quand vous rejoignez un multiworld, il vous sera demandé de fournir votre fichier YAML à celui qui héberge la partie ou +s'occupe de la génération. Une fois cela fait, l'hôte vous fournira soit un lien pour télécharger votre patch, soit un +fichier `.zip` contenant les patchs de tous les joueurs. Votre patch devrait avoir l'extension `.bmbp`. + +Placez votre patch sur votre bureau ou dans un dossier simple d'accès, et double-cliquez dessus. Cela devrait lancer +automatiquement le client, et devrait créer la ROM dans le même dossier que votre patch. ### Se connecter au client #### Avec un émulateur -Quand le client se lance automatiquement, QUsb2Snes devrait se lancer automatiquement également en arrière-plan. -Si c'est la première fois qu'il démarre, il vous sera peut-être demandé de l'autoriser à communiquer -à travers le pare-feu Windows. + +Quand le client se lance automatiquement, QUsb2Snes devrait se lancer automatiquement également en arrière-plan. Si +c'est la première fois qu'il démarre, il vous sera peut-être demandé de l'autoriser à communiquer à travers le pare-feu +Windows. ##### snes9x Multitroid + 1. Chargez votre ROM si ce n'est pas déjà fait. 2. Cliquez sur le menu "File" et survolez l'option **Lua Scripting** 3. Cliquez alors sur **New Lua Script Window...** 4. Dans la nouvelle fenêtre, sélectionnez **Browse...** -5. Dirigez vous vers le dossier où vous avez extrait snes9x Multitroid, allez dans le dossier `lua`, puis choisissez `multibridge.lua` -6. Remarquez qu'un nom vous a été assigné, et que l'interface Web affiche "SNES Device: Connected", avec ce même nom dans le coin en haut à gauche. +5. Dirigez vous vers le dossier où vous avez extrait snes9x Multitroid, allez dans le dossier `lua`, puis + choisissez `multibridge.lua` +6. Remarquez qu'un nom vous a été assigné, et que l'interface Web affiche "SNES Device: Connected", avec ce même nom + dans le coin en haut à gauche. ##### BizHawk -1. Assurez vous d'avoir le coeur BSNES chargé. Cela est possible en cliquant sur le menu "Tools" de BizHawk et suivant ces options de menu : + +1. Assurez vous d'avoir le coeur BSNES chargé. Cela est possible en cliquant sur le menu "Tools" de BizHawk et suivant + ces options de menu : `Config --> Cores --> SNES --> BSNES` Une fois le coeur changé, vous devez redémarrer BizHawk. 2. Chargez votre ROM si ce n'est pas déjà fait. @@ -111,11 +135,13 @@ Si c'est la première fois qu'il démarre, il vous sera peut-être demandé de l 5. Dirigez vous vers le dossier d'installation des utilitaires du MultiWorld, puis dans les dossiers suivants : `QUsb2Snes/Qusb2Snes/LuaBridge` 6. Sélectionnez `luabridge.lua` et cliquez sur "Open". -7. Remarquez qu'un nom vous a été assigné, et que l'interface Web affiche "SNES Device: Connected", avec ce même nom dans le coin en haut à gauche. +7. Remarquez qu'un nom vous a été assigné, et que l'interface Web affiche "SNES Device: Connected", avec ce même nom + dans le coin en haut à gauche. #### Avec une solution matérielle -Ce guide suppose que vous avez télchargé le bon micro-logiciel pour votre appareil. Si ce n'est pas déjà le cas, faites le maintenant. -Les utilisateurs de SD2SNES et de FXPak Pro peuvent télécharger le micro-logiciel approprié + +Ce guide suppose que vous avez télchargé le bon micro-logiciel pour votre appareil. Si ce n'est pas déjà le cas, faites +le maintenant. Les utilisateurs de SD2SNES et de FXPak Pro peuvent télécharger le micro-logiciel approprié [ici](https://github.com/RedGuyyyy/sd2snes/releases). Pour les autres solutions, de l'aide peut être trouvée [sur cette page](http://usb2snes.com/#supported-platforms). @@ -126,20 +152,24 @@ Les utilisateurs de SD2SNES et de FXPak Pro peuvent télécharger le micro-logic 5. Remarquez que l'interface Web affiche "SNES Device: Connected", avec le nom de votre appareil. ### Se connecter au MultiServer -Le patch qui a lancé le client devrait vous avoir connecté automatiquement au MultiServer. -Il y a cependant quelques cas où cela peut ne pas se produire, notamment si le multiworld est hébergé sur ce site, mais a été généré ailleurs. -Si l'interface Web affiche "Server Status: Not Connected", demandez simplement à l'hôte l'adresse du serveur, -et copiez/collez la dans le champ "Server" puis appuyez sur Entrée. -Le client essaiera de vous reconnecter à la nouvelle adresse du serveur, et devrait mentionner "Server -Status: Connected". Si le client ne se connecte pas après quelques instants, il faudra peut-être rafraîchir la page de l'interface Web. +Le patch qui a lancé le client devrait vous avoir connecté automatiquement au MultiServer. Il y a cependant quelques cas +où cela peut ne pas se produire, notamment si le multiworld est hébergé sur ce site, mais a été généré ailleurs. Si +l'interface Web affiche "Server Status: Not Connected", demandez simplement à l'hôte l'adresse du serveur, et +copiez/collez la dans le champ "Server" puis appuyez sur Entrée. + +Le client essaiera de vous reconnecter à la nouvelle adresse du serveur, et devrait mentionner "Server Status: +Connected". Si le client ne se connecte pas après quelques instants, il faudra peut-être rafraîchir la page de +l'interface Web. ### Jouer au jeu + Une fois que l'interface Web affiche que la SNES et le serveur sont connectés, vous êtes prêt à jouer. Félicitations pour avoir rejoint un multiworld ! ## Héberger un MultiWorld -La méthode recommandée pour héberger une partie est d'utiliser le service d'hébergement fourni par + +La méthode recommandée pour héberger une partie est d'utiliser le service d'hébergement fourni par [le site](https://berserkermulti.world/generate). Le processus est relativement simple : 1. Récupérez les fichiers YAML des joueurs. @@ -147,26 +177,32 @@ La méthode recommandée pour héberger une partie est d'utiliser le service d'h 3. Téléversez l'archive zip sur le lien ci-dessus. 4. Attendez un moment que les seed soient générées. 5. Lorsque les seeds sont générées, vous serez redirigé vers une page d'informations "Seed Info". -6. Cliquez sur "Create New Room". Cela vous amènera à la page du serveur. Fournissez le lien de cette page aux autres joueurs - afin qu'ils puissent récupérer leurs patchs. +6. Cliquez sur "Create New Room". Cela vous amènera à la page du serveur. Fournissez le lien de cette page aux autres + joueurs afin qu'ils puissent récupérer leurs patchs. **Note:** Les patchs fournis sur cette page permettront aux joueurs de se connecteur automatiquement au serveur, tandis que ceux de la page "Seed Info" non. -7. Remarquez qu'un lien vers le traqueur du MultiWorld est en haut de la page de la salle. Vous devriez également fournir ce lien aux joueurs - pour qu'ils puissent suivre la progression de la partie. N'importe quel personne voulant observer devrait avoir accès à ce lien. +7. Remarquez qu'un lien vers le traqueur du MultiWorld est en haut de la page de la salle. Vous devriez également + fournir ce lien aux joueurs pour qu'ils puissent suivre la progression de la partie. N'importe quel personne voulant + observer devrait avoir accès à ce lien. 8. Une fois que tous les joueurs ont rejoint, vous pouvez commencer à jouer. ## Auto-tracking + Si vous voulez utiliser l'auto-tracking, plusieurs logiciels offrent cette possibilité. Le logiciel recommandé pour l'auto-tracking actuellement est [OpenTracker](https://github.com/trippsc2/OpenTracker/releases). ### Installation -1. Téléchargez le fichier d'installation approprié pour votre ordinateur (Les utilisateurs Windows voudront le fichier `.msi`). -2. Durant le processus d'installation, il vous sera peut-être demandé d'installer les outils "Microsoft Visual Studio Build Tools". Un -lien est fourni durant l'installation d'OpenTracker, et celle des outils doit se faire manuellement. - + +1. Téléchargez le fichier d'installation approprié pour votre ordinateur (Les utilisateurs Windows voudront le + fichier `.msi`). +2. Durant le processus d'installation, il vous sera peut-être demandé d'installer les outils "Microsoft Visual Studio + Build Tools". Un lien est fourni durant l'installation d'OpenTracker, et celle des outils doit se faire manuellement. + ### Activer l'auto-tracking -1. Une fois OpenTracker démarré, cliquez sur le menu "Tracking" en haut de la fenêtre, puis choisissez **AutoTracker...** + +1. Une fois OpenTracker démarré, cliquez sur le menu "Tracking" en haut de la fenêtre, puis choisissez ** + AutoTracker...** 2. Appuyez sur le bouton **Get Devices** 3. Sélectionnez votre appareil SNES dans la liste déroulante. 4. Si vous voulez tracquer les petites clés ainsi que les objets des donjons, cochez la case **Race Illegal Tracking** diff --git a/WebHostLib/static/assets/tutorial/zelda3/plando_en.md b/WebHostLib/static/assets/tutorial/zelda3/plando_en.md index 9285f2ab37c5..36322d9933d1 100644 --- a/WebHostLib/static/assets/tutorial/zelda3/plando_en.md +++ b/WebHostLib/static/assets/tutorial/zelda3/plando_en.md @@ -1,9 +1,12 @@ # A Link to the Past Randomizer Plando Guide ## Configuration + 1. Plando features have to be enabled first, before they can be used (opt-in). -2. To do so, go to your installation directory (Windows default: `C:\ProgramData\Archipelago`), then open the host.yaml file with a text editor. -3. In it, you're looking for the option key `plando_options`. To enable all plando modules you can set the value to `bosses, items, texts, connections` +2. To do so, go to your installation directory (Windows default: `C:\ProgramData\Archipelago`), then open the host.yaml + file with a text editor. +3. In it, you're looking for the option key `plando_options`. To enable all plando modules you can set the value + to `bosses, items, texts, connections` ## Modules @@ -11,10 +14,11 @@ - This module is enabled by default and available to be used on [https://archipelago.gg/generate](/generate) - Plando versions of boss shuffles can be added like any other boss shuffle option in a yaml and weighted. -- Boss Plando works as a list of instructions from left to right, if any arenas are empty at the end, it defaults to vanilla. +- Boss Plando works as a list of instructions from left to right, if any arenas are empty at the end, it defaults to + vanilla. - Instructions are separated by a semicolon. - Available Instructions: - - Direct Placement: + - Direct Placement: - Example: `Eastern Palace-Trinexx` - Takes a particular Arena and particular boss, then places that boss into that arena - Ganons Tower has 3 placements, `Ganons Tower Top`, `Ganons Tower Middle` and `Ganons Tower Bottom` @@ -24,12 +28,13 @@ - In this example, it would fill Desert Palace, but not Tower of Hera. - Boss Shuffle: - Example: `simple` - - Runs a particular boss shuffle mode to finish construction instead of vanilla placement, typically used as - a last instruction. + - Runs a particular boss shuffle mode to finish construction instead of vanilla placement, typically used as + a last instruction. - [Available Bosses](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Bosses.py#L135) - [Available Arenas](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Bosses.py#L150) #### Examples + ```yaml boss_shuffle: Turtle Rock-Trinexx;basic: 1 @@ -37,14 +42,15 @@ boss_shuffle: Mothula: 3 Ganons Tower Bottom-Kholdstare;Trinexx;Kholdstare: 4 ``` -1. Would be basic boss shuffle but prevent Trinexx from appearing outside of Turtle Rock, - as there's only one Trinexx in the pool + +1. Would be basic boss shuffle but prevent Trinexx from appearing outside of Turtle Rock, as there's only one Trinexx in + the pool 2. Regular full boss shuffle. With a 2 in 10 chance to occur. 3. A Mothula Singularity, as Mothula works in any arena. 4. A Trinexx -> Kholdstare Singularity that prevents ice Trinexx in GT - ### Items + - This module is disabled by default. - Has the options from_pool, world, percentage, force and either item and location or items and locations - All of these options support subweights @@ -72,12 +78,13 @@ boss_shuffle: - items denotes the items to use, can be given a number to have multiple of that item - locations lists the possible locations those items can be placed in - placements are picked randomly, not sorted in any way -- Warning: Placing non-Dungeon Prizes on Prize locations and - Prizes on non-Prize locations will break the game in various ways. +- Warning: Placing non-Dungeon Prizes on Prize locations and Prizes on non-Prize locations will break the game in + various ways. - [Available Items](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Items.py#L52) - [Available Locations](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Regions.py#L434) #### Examples + ```yaml plando_items: - item: # 1 @@ -114,25 +121,28 @@ plando_items: from_pool: true ``` -1. has a 50% chance to occur, which if it does places either the Lamp or Fire Rod in one's own Link's House and removes the picked item from the item pool. +1. has a 50% chance to occur, which if it does places either the Lamp or Fire Rod in one's own Link's House and removes + the picked item from the item pool. 2. Always triggers and places the Swords and Bows into one's own Big Chests 3. Locks Pendants to The Light World and therefore Crystals to dark world ### Texts + - This module is disabled by default. - Has the options `text`, `at`, and `percentage` - percentage is the percentage chance for this text to be placed, can be omitted entirely for 100% - text is the text to be placed. - can be weighted. - - `\n` is a newline. + - `\n` is a newline. - `@` is the entered player's name. - Warning: Text Mapper does not support full unicode. - [Alphabet](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Text.py#L758) - at is the location within the game to attach the text to. - can be weighted. - [List of targets](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/Text.py#L1499) - + #### Example + ```yaml plando_texts: - text: "This is a plando.\nYou've been warned." @@ -141,10 +151,13 @@ plando_texts: uncle_dying_sewer: 1 percentage: 50 ``` + ![Example plando text at Uncle](https://cdn.discordapp.com/attachments/731214280439103580/794953870903083058/unknown.png) -This has a 50% chance to trigger at all. If it does, it throws a coin between `uncle_leaving_text` and `uncle_dying_sewer`, then places the text "This is a plando. You've been warned." at that location. +This has a 50% chance to trigger at all. If it does, it throws a coin between `uncle_leaving_text` +and `uncle_dying_sewer`, then places the text "This is a plando. You've been warned." at that location. ### Connections + - This module is disabled by default. - Has the options `percentage`, `entrance`, `exit` and `direction`. - All options support subweights @@ -153,10 +166,11 @@ This has a 50% chance to trigger at all. If it does, it throws a coin between `u - entrance is the overworld door - exit is the underworld exit - direction can be `both`, `entrance` or `exit` -- doors can be found in [this file](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) - +- doors can be found + in [this file](https://github.com/ArchipelagoMW/Archipelago/blob/main/worlds/alttp/EntranceShuffle.py#L3852) #### Example + ```yaml plando_connections: - entrance: Links House @@ -167,7 +181,8 @@ plando_connections: direction: both ``` -The first block connects the overworld entrance that normally leads to Link's House -to put you into the HC West Wing instead, exiting from within there will put you at the Overworld exiting Link's House. +The first block connects the overworld entrance that normally leads to Link's House to put you into the HC West Wing +instead, exiting from within there will put you at the Overworld exiting Link's House. -Without the second block, you'd still exit from within Link's House to outside Link's House and the left side Balcony Entrance would still lead into HC West Wing +Without the second block, you'd still exit from within Link's House to outside Link's House and the left side Balcony +Entrance would still lead into HC West Wing diff --git a/WebHostLib/static/assets/tutorial/zelda5/setup_en.md b/WebHostLib/static/assets/tutorial/zelda5/setup_en.md index fe7c760dd99f..ccbdab2a1081 100644 --- a/WebHostLib/static/assets/tutorial/zelda5/setup_en.md +++ b/WebHostLib/static/assets/tutorial/zelda5/setup_en.md @@ -6,14 +6,18 @@ As we are using Z5Client and BizHawk, this guide is only applicable to Windows. ## Required Software -- BizHawk and Z5Client from: [Z5Client Releases Page](https://github.com/ArchipelagoMW/Z5Client/releases) - - We recommend download Z5Client-setup as it makes some steps automatic. +- BizHawk and Z5Client from: [Z5Client Releases Page](https://github.com/ArchipelagoMW/Z5Client/releases) + - We recommend download Z5Client-setup as it makes some steps automatic. ## Install Emulator and client -Download getBizhawk.ps1 from previous link. Place it on the folder where you want your emulator to be installed, right click on it and select "Run with PowerShell". This will download all the needed dependencies used by the emulator. This can take a while. +Download getBizhawk.ps1 from previous link. Place it on the folder where you want your emulator to be installed, right +click on it and select "Run with PowerShell". This will download all the needed dependencies used by the emulator. This +can take a while. -It is strongly recommended to associate N64 rom extension (\*.n64) to the BizHawk we've just installed. To do so, we simply have to search any N64 rom we happened to own, right click and select "Open with...", we unfold the list that appears and select the bottom option "Look for another application", we browse to BizHawk folder and select EmuHawk.exe +It is strongly recommended to associate N64 rom extension (\*.n64) to the BizHawk we've just installed. To do so, we +simply have to search any N64 rom we happened to own, right click and select "Open with...", we unfold the list that +appears and select the bottom option "Look for another application", we browse to BizHawk folder and select EmuHawk.exe Place the ootMulti.lua file from the previous link inside the "lua" folder from the just installed emulator. @@ -22,11 +26,18 @@ Install the Z5Client using its setup. ## Configuring your YAML file ### What is a YAML file and why do I need one? -Your YAML file contains a set of configuration options which provide the generator with information about how it should generate your game. Each player of a multiworld will provide their own YAML file. This setup allows each player to enjoy an experience customized for their taste, and different players in the same multiworld can all have different options. + +Your YAML file contains a set of configuration options which provide the generator with information about how it should +generate your game. Each player of a multiworld will provide their own YAML file. This setup allows each player to enjoy +an experience customized for their taste, and different players in the same multiworld can all have different options. ### Where do I get a YAML file? -A basic OOT yaml will look like this. There are lots of cosmetic options that have been removed for the sake of this tutorial, if you want to see a complete list, download Archipelago from the [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) and look for the sample file in the "Players" folder. +A basic OOT yaml will look like this. There are lots of cosmetic options that have been removed for the sake of this +tutorial, if you want to see a complete list, download Archipelago from +the [Archipelago Releases Page](https://github.com/ArchipelagoMW/Archipelago/releases) and look for the sample file in +the "Players" folder. + ```yaml description: Default Ocarina of Time Template # Used to describe your yaml. Useful if you have multiple files # Your name in-game. Spaces will be replaced with underscores and there is a 16 character limit @@ -369,15 +380,24 @@ Ocarina of Time: ### Obtain your OOT patch file -When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that is done, the host will provide you with either a link to download your data file, or with a zip file containing everyone's data files. Your data file should have a `.z5ap` extension. +When you join a multiworld game, you will be asked to provide your YAML file to whoever is hosting. Once that is done, +the host will provide you with either a link to download your data file, or with a zip file containing everyone's data +files. Your data file should have a `.z5ap` extension. -Double-click on your `.z5ap` file to start Z5Client and start the ROM patch process. Once the process is finished (this can take a while), the emulator will be started automatically (If we associated the extension to the emulator as recommended) +Double-click on your `.z5ap` file to start Z5Client and start the ROM patch process. Once the process is finished (this +can take a while), the emulator will be started automatically (If we associated the extension to the emulator as +recommended) ### Connect to the Multiserver -Once both the Z5Client and the emulator are started we must connect them. Within the emulator we click on the "Tools" menu and select "Lua console". In the new window click on the folder icon and look for the ootMulti.lua file. Once the file is loaded it will connect automatically to Z5Client. -Note: We strongly advise you don't open any emulator menu while it and Z5client are connected, as the script will halt and disconnects can happen. If you get disconnected just double-click on the script again. +Once both the Z5Client and the emulator are started we must connect them. Within the emulator we click on the "Tools" +menu and select "Lua console". In the new window click on the folder icon and look for the ootMulti.lua file. Once the +file is loaded it will connect automatically to Z5Client. + +Note: We strongly advise you don't open any emulator menu while it and Z5client are connected, as the script will halt +and disconnects can happen. If you get disconnected just double-click on the script again. -To connect the client to the multiserver simply put `
:` on the textfield on top and press enter (if the server uses password, type in the bottom textfield `/connect
: [password]`) +To connect the client to the multiserver simply put `
:` on the textfield on top and press enter (if the +server uses password, type in the bottom textfield `/connect
: [password]`) Now you are ready to start your adventure in Hyrule. \ No newline at end of file diff --git a/WebHostLib/static/assets/tutorial/zelda5/setup_es.md b/WebHostLib/static/assets/tutorial/zelda5/setup_es.md index 49109cedfa5d..193866fba72c 100644 --- a/WebHostLib/static/assets/tutorial/zelda5/setup_es.md +++ b/WebHostLib/static/assets/tutorial/zelda5/setup_es.md @@ -6,13 +6,19 @@ Al usar el cliente y bizhawk, esta guia solo es aplicable en Windows. ## Software Requerido -- [bizhawk+script+Z5Client](https://github.com/ArchipelagoMW/Z5Client/releases) Recomendamos bajar el setup de Z5client ya que automatizara varios pasos mas adelante +- [bizhawk+script+Z5Client](https://github.com/ArchipelagoMW/Z5Client/releases) Recomendamos bajar el setup de Z5client + ya que automatizara varios pasos mas adelante ## Instala emulador y cliente -Descarga el fichero getBizhawk.ps1 del enlace anterior. Colocalo en la carpeta donde desees instalar el emulador, haz click derecho en él y selecciona "Ejecutar con PowerShell". Esto descargará todas las dependencias necesarias para el emulador. Puede tardar un rato. +Descarga el fichero getBizhawk.ps1 del enlace anterior. Colocalo en la carpeta donde desees instalar el emulador, haz +click derecho en él y selecciona "Ejecutar con PowerShell". Esto descargará todas las dependencias necesarias para el +emulador. Puede tardar un rato. -Es recomendable asociar la extensión de las roms de N64 (\*.n64) al bizhawk que hemos instalado anteriormente. Para hacerlo simplemente debemos buscar alguna rom de n64 que tengamos, hacer click derecho, seleccionar "Abrir con...", desplegar la lista y buscar la opción "Buscar otra aplicación", navegar hasta el directorio de bizhawk y seleccionar EmuHawk.exe +Es recomendable asociar la extensión de las roms de N64 (\*.n64) al bizhawk que hemos instalado anteriormente. Para +hacerlo simplemente debemos buscar alguna rom de n64 que tengamos, hacer click derecho, seleccionar "Abrir con...", +desplegar la lista y buscar la opción "Buscar otra aplicación", navegar hasta el directorio de bizhawk y seleccionar +EmuHawk.exe Situa el fichero ootMulti.lua del enlace anterior en la carpeta "lua" del emulador recien instalado. @@ -21,16 +27,21 @@ Instala el cliente Z5Client. ## Configura tu fichero YAML ### Que es un fichero YAML y por qué necesito uno? -Tu fichero YAML contiene un numero de opciones que proveen al generador con información sobre como debe generar tu juego. -Cada jugador de un multiworld entregara u propio fichero YAML. -Esto permite que cada jugador disfrute de una experiencia personalizada a su gusto y diferentes jugadores dentro del mismo multiworld -pueden tener diferentes opciones + +Tu fichero YAML contiene un numero de opciones que proveen al generador con información sobre como debe generar tu +juego. Cada jugador de un multiworld entregara u propio fichero YAML. Esto permite que cada jugador disfrute de una +experiencia personalizada a su gusto y diferentes jugadores dentro del mismo multiworld pueden tener diferentes opciones ### Where do I get a YAML file? -Un fichero basico yaml para OOT tendra este aspecto. (Hay muchas opciones cosméticas que se han ignorado para este tutorial, si quieres ver una lista completa, descarga (Archipelago)[https://github.com/ArchipelagoMW/Archipelago/releases] y buscar el fichero de ejemplo en el directorio "Players")) + +Un fichero basico yaml para OOT tendra este aspecto. (Hay muchas opciones cosméticas que se han ignorado para este +tutorial, si quieres ver una lista completa, descarga ( +Archipelago)[https://github.com/ArchipelagoMW/Archipelago/releases] y buscar el fichero de ejemplo en el directorio " +Players")) + ```yaml description: Default Ocarina of Time Template # Describe tu fichero yalm -\# Tu nombre en el juego. Los espacio seran reemplazados por _ y hay un limite de 16 caracteres + \# Tu nombre en el juego. Los espacio seran reemplazados por _ y hay un limite de 16 caracteres name: YourName{number} game: Ocarina of Time: 1 @@ -355,18 +366,26 @@ Ocarina of Time: ### Obten tu parche +Cuando te unes a un juego multiworld, se te pedirá que entregues tu fichero YAML a quien sea que hospede el juego +multiworld. Una vez la generación acabe, el anfitrión te dará un enlace a tu fichero de datos o un zip con los ficheros +de todos. Tu fichero de datos tiene una extensión `.z5ap`. -Cuando te unes a un juego multiworld, se te pedirá que entregues tu fichero YAML a quien sea que hospede el juego multiworld. -Una vez la generación acabe, el anfitrión te dará un enlace a tu fichero de datos o un zip con los ficheros de todos. -Tu fichero de datos tiene una extensión `.z5ap`. - -Haz doble click en tu fichero `.z5ap` para que se arranque el Z5Client y realize el parcheado de la ROM. Una vez acabe el parcheado de la rom (esto puede llevar un tiempo) se abrira automaticamente el emulador (Si se ha asociado la extensión al emulador tal como hemos recomendado) +Haz doble click en tu fichero `.z5ap` para que se arranque el Z5Client y realize el parcheado de la ROM. Una vez acabe +el parcheado de la rom (esto puede llevar un tiempo) se abrira automaticamente el emulador (Si se ha asociado la +extensión al emulador tal como hemos recomendado) ### Conectar al multiserver -Una vez arrancado tanto el Z5Client como el emulador hay que conectarlo entre ellos, para ello simplemente accede al menú "Tools" y selecciona "Lua console". En la nueva ventana, dale al icono de la carpeta y busca el fichero ootMulti.lua. Al cargar dicho fichero se conectara automaticamente con el cliente. -Nota: Es muy recomendable que no se abra ningún menú del emulador mientras esten emulador y Z5Client conectados, ya que el script de conexión se para en ese caso y pueden provocar desconexiones. Si se pierde la conexion, simplemente haz doble click en el script de nuevo. +Una vez arrancado tanto el Z5Client como el emulador hay que conectarlo entre ellos, para ello simplemente accede al +menú "Tools" y selecciona "Lua console". En la nueva ventana, dale al icono de la carpeta y busca el fichero +ootMulti.lua. Al cargar dicho fichero se conectara automaticamente con el cliente. + +Nota: Es muy recomendable que no se abra ningún menú del emulador mientras esten emulador y Z5Client conectados, ya que +el script de conexión se para en ese caso y pueden provocar desconexiones. Si se pierde la conexion, simplemente haz +doble click en el script de nuevo. -Para conectar el cliente con el servidor simplemente pon la direccion_IP:puerto en la caja de texto de arriba y presiona enter (si el servidor tiene contraseña, en la caja de texto de abajo escribir /connect direccion:puerto contraseña, para conectar) +Para conectar el cliente con el servidor simplemente pon la direccion_IP:puerto en la caja de texto de arriba y presiona +enter (si el servidor tiene contraseña, en la caja de texto de abajo escribir /connect direccion:puerto contraseña, para +conectar) Y ya estas listo, para emprender tu aventura por Hyrule. \ No newline at end of file From 1891c95ae308d806fcf1604df14c7958de5154d2 Mon Sep 17 00:00:00 2001 From: Hussein Farran Date: Tue, 4 Jan 2022 18:34:00 -0500 Subject: [PATCH 24/31] WebHost: Fix up more links and expand commands list. --- .../tutorial/archipelago/commands_en.md | 47 +++++++++++++++++-- .../assets/tutorial/ff1/multiworld_en.md | 11 +++-- .../assets/tutorial/minecraft/minecraft_en.md | 2 +- .../tutorial/rogue-legacy/rogue-legacy_en.md | 4 +- 4 files changed, 54 insertions(+), 10 deletions(-) diff --git a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md index 627e4ba530dd..84122400bbdf 100644 --- a/WebHostLib/static/assets/tutorial/archipelago/commands_en.md +++ b/WebHostLib/static/assets/tutorial/archipelago/commands_en.md @@ -12,15 +12,41 @@ are always submitted to the server prepended with an exclamation point: `!`. The following list is a list of client commands which may be available to you through your Archipelago client. You execute these commands in your client window. +The following commands are available in these clients: SNIClient, FactorioClient, FF1Client. + - `/connect ` Connect to the multiworld server. - `/disconnect` Disconnects you from your current session. -- `/nes` Shows the current status of the NES connection, when applicable. -- `/snes` Shows the current status of the SNES connection, when applicable. - `/received` Displays all the items you have found or been sent. - `/missing` Displays all the locations along with their current status (checked/missing). +- `/items` Lists all the item names for the current game. +- `/locations` Lists all the location names for the current game. +- `/ready` Sends ready status to the server. +- `/help` Returns a list of available commands. +- `/license` Returns the software licensing information. - Just typing anything will broadcast a message to all players +##### FF1Client Only +The following command is only available when using the FF1Client for the Final Fantasy Randomizer. + +- `/nes` Shows the current status of the NES connection. + +##### SNIClient Only +The following command is only available when using the SNIClient for SNES based games. + +- `/snes` Attempts to connect to your SNES device via SNI. +- `/snes_close` Closes the current SNES connection. +- `/slow_mode` Toggles on or off slow mode, which limits the rate in which you receive items. + +##### FactorioClient Only +The following command is only available when using the FactorioClient to play Factorio with Archipelago. + +- `/factorio ` Sends the command argument to the Factorio server as a command. + #### Remote Commands +Remote commands may be executed by any client which allows for sending text chat to the Archipelago server. If your +client does not allow for sending chat then you may connect to your game slot with the TextClient which comes with the +Archipelago installation. In order to execute the command you need to merely send a text message with the command, +including the exclamation point. - `!hint ` Tells you at which location in whose game your Item is. Note you need to have checked some locations to earn a hint. You can check how many you have by just running `!hint` @@ -31,4 +57,19 @@ execute these commands in your client window. #### Host only (on Archipelago.gg or in your server console) -- `/forfeit ` Forfeits someone regardless of settings and game completion status +- `/help` Returns a list of commands available in the console. +- `/license` Returns the software licensing information. +- `/countdown ` Starts a countdown which is sent to all players via text chat. Defaults to 10 seconds if no + argument is provided. +- `/options` Lists the server's current options, including password in plaintext. +- `/save` Saves the state of the current multiworld. Note that the server autosaves on a minute basis. +- `/players` List currently connected players. +- `/exit` Shutdown the server +- `/alias ` Assign a player an alias. +- `/collect ` Send out any items remaining in the multiworld belonging to the given player. +- `/forfeit ` Forfeits someone regardless of settings and game completion status +- `/allow_forfeit ` Allows the given player to use the `!forfeit` command. +- `/forbid_forfeit ` Bars the given player from using the `!forfeit` command. +- `/send ` Grants the given player the specified item. +- `/hint ` Sned out a hint for the given item or location for the specified player. +- `/option