 d90cf0db65
			
		
	
	d90cf0db65
	
	
	
		
			
			* Draft of SC2 EN documentation update: added hotkey, known issues; enhanced goal and prog balancing description. Added place holder for changes to apply in the French documentation. * Enforced StarCraft over Starcraft, added information on locations in the FR documentation * Removed a mention to a no longer available third link in the required software (since download_data deprecated the need to do it by hand) * First version of FR campaign restriction for sc2; rewriting (FR/EN) of randomizer goal description * Finished description for sc2 AP goal , minor formating * Added, both en/fr, indications that logic is locations wise and not mission wise (i.e. you might need to dip) * Enforced the 120 carac limit to last commit * Removed mention of needing to use the weighted option page to exlcude unit/upgrades since it is not longer the case in AP v0.5.0 * Added mention of /received being different in SC2 client (both language). Added Known issues in the FR version. * Simplified the text a bit and corrected some errors * Enforced, again, Star-C-raft; setting -> option; applied sugg for readability enhancement
		
			
				
	
	
		
			195 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			195 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # StarCraft 2 Randomizer Setup Guide
 | |
| 
 | |
| This guide contains instructions on how to install and troubleshoot the StarCraft 2 Archipelago client, as well as 
 | |
| where to obtain a config file for StarCraft 2.
 | |
| 
 | |
| ## Required Software
 | |
| 
 | |
| - [StarCraft 2](https://starcraft2.com/en-us/)
 | |
|    - While StarCraft 2 Archipelago supports all four campaigns, they are not mandatory to play the randomizer. 
 | |
|    If you do not own certain campaigns, you only need to exclude them in the configuration file of your world.
 | |
| - [The most recent Archipelago release](https://github.com/ArchipelagoMW/Archipelago/releases)
 | |
| 
 | |
| ## How do I install this randomizer?
 | |
| 
 | |
| 1. Install StarCraft 2 and Archipelago using the links above. The StarCraft 2 Archipelago client is downloaded by the 
 | |
| Archipelago installer.
 | |
|    - Linux users should also follow the instructions found at the bottom of this page 
 | |
|      (["Running in Linux"](#running-in-linux)).
 | |
| 2. Run ArchipelagoStarcraft2Client.exe.
 | |
|    - macOS users should instead follow the instructions found at ["Running in macOS"](#running-in-macos) for this step 
 | |
|    only.
 | |
| 3. Type the command `/download_data`. 
 | |
| This will automatically install the Maps and Data files needed to play StarCraft 2 Archipelago.
 | |
| 
 | |
| ## Where do I get a config file (aka "YAML") for this game?
 | |
| 
 | |
| Yaml files are configuration files that tell Archipelago how you'd like your game to be randomized, even if you're only 
 | |
| using default options.
 | |
| When you're setting up a multiworld, every world needs its own yaml file.
 | |
| 
 | |
| There are three basic ways to get a yaml:
 | |
| * You can go to the [Player Options](/games/Starcraft%202/player-options) page, set your options in the GUI, and export 
 | |
| the yaml.
 | |
| * You can generate a template, either by downloading it from the [Player Options](/games/Starcraft%202/player-options) 
 | |
| page or by generating it from the Launcher (`ArchipelagoLauncher.exe`). 
 | |
| The template includes descriptions of each option, you just have to edit it in your text editor of choice.
 | |
| * You can ask someone else to share their yaml to use it for yourself or adjust it as you wish.
 | |
| 
 | |
| Remember the name you enter in the options page or in the yaml file, you'll need it to connect later!
 | |
| 
 | |
| Check out [Creating a YAML](/tutorial/Archipelago/setup/en#creating-a-yaml) for more game-agnostic information.
 | |
| 
 | |
| ### Common yaml questions
 | |
| #### How do I know I set my yaml up correctly?
 | |
| 
 | |
| The simplest way to check is to use the website [validator](/check). 
 | |
| 
 | |
| You can also test it by attempting to generate a multiworld with your yaml. Save your yaml to the `Players/` folder 
 | |
| within your Archipelago installation and run `ArchipelagoGenerate.exe`. 
 | |
| You should see a new `.zip` file within the `output/` folder of your Archipelago installation if things worked 
 | |
| correctly. 
 | |
| It's advisable to run `ArchipelagoGenerate.exe` through a terminal so that you can see the printout, which will include 
 | |
| any errors and the precise output file name if it's successful. 
 | |
| If you don't like terminals, you can also check the log file in the `logs/` folder.
 | |
| 
 | |
| #### What does Progression Balancing do?
 | |
| 
 | |
| For StarCraft 2, this option doesn't have much impact. 
 | |
| It is an Archipelago option designed to balance world progression by swapping items in spheres. 
 | |
| If the Progression Balancing of one world is greater than that of others, items in that world are more likely to be 
 | |
| obtained early, and vice versa if its value is smaller. 
 | |
| However, StarCraft 2 is more permissive regarding the items that can be used to progress, so this option has little 
 | |
| influence on progression in a StarCraft 2 world. 
 | |
| StarCraft 2. 
 | |
| Since this option increases the time required to generate a MultiWorld, we recommend deactivating it (i.e., setting it 
 | |
| to zero) for a StarCraft 2 world.
 | |
| 
 | |
| #### How do I specify items in a list, like in excluded items?
 | |
| 
 | |
| You can look up the syntax for yaml collections in the 
 | |
| [YAML specification](https://yaml.org/spec/1.2.2/#21-collections). 
 | |
| For lists, every item goes on its own line, started with a hyphen:
 | |
| 
 | |
| ```yaml
 | |
| excluded_items:
 | |
|   - Battlecruiser
 | |
|   - Drop-Pods (Kerrigan Tier 7)
 | |
| ```
 | |
| 
 | |
| An empty list is just a matching pair of square brackets: `[]`. 
 | |
| That's the default value in the template, which should let you know to use this syntax.
 | |
| 
 | |
| #### How do I specify items for the starting inventory?
 | |
| 
 | |
| The starting inventory is a YAML mapping rather than a list, which associates an item with the amount you start with. 
 | |
| The syntax looks like the item name, followed by a colon, then a whitespace character, and then the value:
 | |
| 
 | |
| ```yaml
 | |
| start_inventory:
 | |
|   Micro-Filtering: 1
 | |
|   Additional Starting Vespene: 5
 | |
| ```
 | |
| 
 | |
| An empty mapping is just a matching pair of curly braces: `{}`. 
 | |
| That's the default value in the template, which should let you know to use this syntax.
 | |
| 
 | |
| #### How do I know the exact names of items and locations?
 | |
| 
 | |
| The [*datapackage*](/datapackage) page of the Archipelago website provides a complete list of the items and locations 
 | |
| for each game that it currently supports, including StarCraft 2.
 | |
| 
 | |
| You can also look up a complete list of the item names in the 
 | |
| [Icon Repository](https://matthewmarinets.github.io/ap_sc2_icons/) page.
 | |
| This page also contains supplementary information of each item.
 | |
| However, the items shown in that page might differ from those shown in the datapackage page of Archipelago since the 
 | |
| former is generated, most of the time, from beta versions of StarCraft 2 Archipelago undergoing development.
 | |
| 
 | |
| As for the locations, you can see all the locations associated to a mission in your world by placing your cursor over 
 | |
| the mission in the 'StarCraft 2 Launcher' tab in the client.
 | |
| 
 | |
| ## How do I join a MultiWorld game?
 | |
| 
 | |
| 1. Run ArchipelagoStarcraft2Client.exe.
 | |
|    - macOS users should instead follow the instructions found at ["Running in macOS"](#running-in-macos) for this step 
 | |
|    only.
 | |
| 2. Type `/connect [server ip]`.
 | |
|    - If you're running through the website, the server IP should be displayed near the top of the room page.
 | |
| 3. Type your slot name from your YAML when prompted.
 | |
| 4. If the server has a password, enter that when prompted.
 | |
| 5. Once connected, switch to the 'StarCraft 2 Launcher' tab in the client. There, you can see all the missions in your 
 | |
| world. 
 | |
| Unreachable missions will have greyed-out text. Just click on an available mission to start it!
 | |
| 
 | |
| ## The game isn't launching when I try to start a mission.
 | |
| 
 | |
| First, check the log file for issues (stored at `[Archipelago Directory]/logs/SC2Client.txt`). 
 | |
| If you can't figure out the log file, visit our [Discord's](https://discord.com/invite/8Z65BR2) tech-support channel 
 | |
| for help. 
 | |
| Please include a specific description of what's going wrong and attach your log file to your message.
 | |
| 
 | |
| ## My keyboard shortcuts profile is not available when I play *StarCraft 2 Archipelago*.
 | |
| 
 | |
| For your keyboard shortcuts profile to work in Archipelago, you need to copy your shortcuts file from 
 | |
| `Documents/StarCraft II/Accounts/######/Hotkeys` to `Documents/StarCraft II/Hotkeys`. 
 | |
| If the folder doesn't exist, create it.
 | |
| 
 | |
| To enable StarCraft 2 Archipelago to use your profile, follow these steps:
 | |
| 1. Launch StarCraft 2 via the Battle.net application.
 | |
| 2. Change your hotkey profile to the standard mode and accept.
 | |
| 3. Select your custom profile and accept.
 | |
| 
 | |
| You will only need to do this once.
 | |
| 
 | |
| ## Running in macOS
 | |
| 
 | |
| To run StarCraft 2 through Archipelago in macOS, you will need to run the client via source as seen here: 
 | |
| [macOS Guide](/tutorial/Archipelago/mac/en). 
 | |
| Note: to launch the client, you will need to run the command `python3 Starcraft2Client.py`.
 | |
| 
 | |
| ## Running in Linux
 | |
| 
 | |
| To run StarCraft 2 through Archipelago in Linux, you will need to install the game using Wine, then run the Linux build
 | |
| of the Archipelago client.
 | |
| 
 | |
| Make sure you have StarCraft 2 installed using Wine, and that you have followed the
 | |
| [installation procedures](#how-do-i-install-this-randomizer?) to add the Archipelago maps to the correct location. 
 | |
| You will not need to copy the `.dll` files. 
 | |
| If you're having trouble installing or running StarCraft 2 on Linux, it is recommend to use the Lutris installer.
 | |
| 
 | |
| Copy the following into a .sh file, replacing the values of **WINE** and **SC2PATH** variables with the relevant
 | |
| locations, as well as setting **PATH_TO_ARCHIPELAGO** to the directory containing the AppImage if it is not in the same
 | |
| folder as the script.
 | |
| 
 | |
| ```sh
 | |
| # Let the client know we're running SC2 in Wine
 | |
| export SC2PF=WineLinux
 | |
| export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python
 | |
| 
 | |
| # FIXME Replace with path to the version of Wine used to run SC2
 | |
| export WINE="/usr/bin/wine"
 | |
| 
 | |
| # FIXME Replace with path to StarCraft II install folder
 | |
| export SC2PATH="/home/user/Games/starcraft-ii/drive_c/Program Files (x86)/StarCraft II/"
 | |
| 
 | |
| # FIXME Set to directory which contains Archipelago AppImage file
 | |
| PATH_TO_ARCHIPELAGO=
 | |
| 
 | |
| # Gets the latest version of Archipelago AppImage in PATH_TO_ARCHIPELAGO.
 | |
| # If PATH_TO_ARCHIPELAGO is not set, this defaults to the directory containing
 | |
| # this script file.
 | |
| ARCHIPELAGO="$(ls ${PATH_TO_ARCHIPELAGO:-$(dirname $0)}/Archipelago_*.AppImage | sort -r | head -1)"
 | |
| 
 | |
| # Start the Archipelago client
 | |
| $ARCHIPELAGO Starcraft2Client
 | |
| ```
 | |
| 
 | |
| For Lutris installs, you can run `lutris -l` to get the numerical ID of your StarCraft II install, then run the command
 | |
| below, replacing **${ID}** with the numerical ID.
 | |
| 
 | |
|     lutris lutris:rungameid/${ID} --output-script sc2.sh
 | |
| 
 | |
| This will get all of the relevant environment variables Lutris sets to run StarCraft 2 in a script, including the path
 | |
| to the Wine binary that Lutris uses. 
 | |
| You can then remove the line that runs the Battle.Net launcher and copy the code above into the existing script.
 |