Skip to content

Latest commit

 

History

History
71 lines (47 loc) · 3.22 KB

running from source.md

File metadata and controls

71 lines (47 loc) · 3.22 KB

Running From Source

If you just want to play and there is a compiled version available on the Archipelago releases page, use that version. These steps are for developers or platforms without compiled releases available.

General

What you'll need:

  • Python 3.8.7 or newer
    • pip (Depending on platform may come included)
  • A C compiler
    • possibly optional, read OS-specific sections

Then run any of the starting point scripts, like Generate.py, and the included ModuleUpdater should prompt to install or update the required modules and after pressing enter proceed to install everything automatically. After this, you should be able to run the programs.

  • With yaml(s) in the Players folder, Generate.py will generate the multiworld archive.
  • MultiServer.py, with the filename of the generated archive as a command line parameter, will host the multiworld locally.
    • --log_network is a command line parameter useful for debugging.
  • WebHost.py will host the website on your computer.
    • You can copy docs/webhost configuration sample.yaml to config.yaml to change WebHost options (like the web hosting port number).
    • As a side effect, WebHost.py creates the template yamls for all the games in WebHostLib/static/generated.

Windows

Recommended steps

macOS

Refer to Guide to Run Archipelago from Source Code on macOS.

Optional: A Link to the Past Enemizer

Only required to generate seeds that include A Link to the Past with certain options enabled. You will receive an error if it is required.

You can get the latest Enemizer release at Enemizer Github releases. It should be dropped as "EnemizerCLI" into the root folder of the project. Alternatively, you can point the Enemizer setting in host.yaml at your Enemizer executable.

Optional: SNI

SNI is required to use SNIClient. If not integrated into the project, it has to be started manually.

You can get the latest SNI release at SNI Github releases. It should be dropped as "SNI" into the root folder of the project. Alternatively, you can point the sni setting in host.yaml at your SNI folder.

Running tests

Run pip install pytest pytest-subtests, then use your IDE to run tests or run pytest from the source folder.