Fork of Archipelago Multi-Game Randomizer and Server that runs on https://ap.hollymcfarland.com
Go to file
Fabian Dill 32a6ac4fdf
Merge pull request #8 from CaitSith2/patch-4
Make 'requirements.txt' be read from module's own...
2020-01-19 21:53:32 +01:00
_vendor Partial implementation of many V31 features 2019-08-10 16:10:47 -04:00
bundle Fix breakage from PyInstaller 3.5's release 2019-07-09 20:26:45 -04:00
data --remote_items toggle: items will no longer be stored in the rom, a connection to a multiworld server will be required to receive them 2020-01-18 09:50:12 +01:00
.gitignore move updater to own module 2020-01-18 15:45:52 +01:00
Adjuster.py Sprites are now player specific, can be chosen from their sprite name rather than file path, support "random" choice and support "randomonhit" enemizer-only option 2020-01-09 02:30:00 +01:00
AdjusterMain.py Multiworld: clients will now be automatically be identified from the rom name and have their names and teams set by the host, meaning those need to be configured during seed gen 2020-01-14 10:42:27 +01:00
BaseClasses.py Add Beemizer and Pot Shuffle to Spoiler Log Output 2020-01-18 12:51:10 -05:00
Bosses.py Individual settings: shufflebosses shuffleenemies enemy_health enemy_damage 2019-12-17 15:55:53 +01:00
Dungeons.py Individual settings: retro 2019-12-17 00:16:02 +01:00
ER_hint_reference.txt Replace keysanity with map/compass/key/bk shuffle 2019-12-13 22:37:52 +01:00
EntranceRandomizer.py --remote_items toggle: items will no longer be stored in the rom, a connection to a multiworld server will be required to receive them 2020-01-18 09:50:12 +01:00
EntranceShuffle.py Inverted: connect lake hylia island to lw 2020-01-01 18:12:23 +01:00
Fill.py Fill: place items for players with no accessibility requirements first 2019-12-18 20:47:35 +01:00
Gui.py Multiworld: clients will now be automatically be identified from the rom name and have their names and teams set by the host, meaning those need to be configured during seed gen 2020-01-14 10:42:27 +01:00
GuiUtils.py Fix json decoding 2018-01-01 12:13:39 -05:00
InvertedRegions.py Small shops refactor, cleanup some inverted mess 2020-01-10 11:41:22 +01:00
ItemList.py Small shops refactor, cleanup some inverted mess 2020-01-10 11:41:22 +01:00
Items.py Implement --startinventory 2020-01-06 19:13:42 +01:00
LICENSE Initial commit 2017-05-15 20:25:24 +02:00
Main.py Add Beemizer and Pot Shuffle to Spoiler Log Output 2020-01-18 12:51:10 -05:00
ModuleUpdate.py Make 'requirements.txt' be read from module's own... 2020-01-19 12:50:04 -08:00
MultiClient.py move updater to own module 2020-01-18 15:45:52 +01:00
MultiMystery.py default MultiMystery to the python version that launched it. 2020-01-19 19:34:20 +01:00
MultiServer.py move updater to own module 2020-01-18 15:45:52 +01:00
Mystery.py Update Mystery.py 2020-01-19 01:25:51 -08:00
Plando.py Multiworld: clients will now be automatically be identified from the rom name and have their names and teams set by the host, meaning those need to be configured during seed gen 2020-01-14 10:42:27 +01:00
Plandomizer_Template.txt Additional v30 updates 2018-09-26 17:34:15 -04:00
README.md Mention Python compat 2020-01-19 19:35:23 +01:00
Regions.py Small shops refactor, cleanup some inverted mess 2020-01-10 11:41:22 +01:00
Rom.py --remote_items toggle: items will no longer be stored in the rom, a connection to a multiworld server will be required to receive them 2020-01-18 09:50:12 +01:00
Rules.py Inverted: connect lake hylia island to lw 2020-01-01 18:12:23 +01:00
Text.py Triforce Hunt turn-in logic 2019-08-28 21:12:44 -04:00
Utils.py Multiworld: clients will now be automatically be identified from the rom name and have their names and teams set by the host, meaning those need to be configured during seed gen 2020-01-14 10:42:27 +01:00
appveyor.yml Add versioning to MSI installer. 2017-12-02 16:38:35 -05:00
easy.yaml Update documentation 2020-01-16 18:55:43 +01:00
requirements.txt re-implement auto-updates 2020-01-18 15:04:39 +01:00

README.md

Berserker's Multiworld Utilities for Bonta's Multiworld

This is a complete fork of Bonta's Multiworld V31, which assumes you already know how to setup and use that project. Instructions here are only for the additions. This is a drop-in replacement with everything from Bonta's Multiworld included.

Additions/Changes

Project

  • Compatible with Python 3.7 and 3.8. Potentially future versions as well.
  • Update modules if they are too old, preventing a crash when trying to connect among potential other issues
  • Autoinstall missing modules
  • Allow newer versions of modules than specified, as they will usually not break compatibility

MultiMystery.py

  • Allows you to generate a Multiworld with individual player mystery weights. Since weights can also be set to 100%, this also allows for individual settings for each player in a regular multiworld. Basis is a .yaml file that sets these weights. You can find an easy.yaml in this project folder to get started.
  • Additional instructions and settings are at the start of the file. Open with a text editor.

MultiServer.py

  • Added a try/except to prevent malformed console commands from crashing the entire server
  • Added /hint command on the server (use just /hint for help on command)
    can be used as /hint Playername Itemname
    All Itemnames can be found in Items.py starting at line 25
    example:
    /hint Berserker Progressive Sword
    Notice (Team #1): [Hint]: Berserker's Progressive Sword can be found in Hype Cave - Top in ahhdurr's World
    Notice (Team #1): [Hint]: Berserker's Progressive Sword can be found in Blind's Hideout - Far Right in Schulzer's World
    Notice (Team #1): [Hint]: Berserker's Progressive Sword can be found in Palace of Darkness - Map Chest in Thorus's World
    Notice (Team #1): [Hint]: Berserker's Progressive Sword can be found in Ganons Tower - Map Chest in Will's World

Mystery.py

  • Defaults to generating a non-race ROM (Bonta's only makes race ROMs at this time) If a race ROM is desired, pass --create-race as argument to it
  • When an error is generated due to a broken .yaml file, it now mentions in the error trace which file it is