Fork of Archipelago Multi-Game Randomizer and Server that runs on https://ap.hollymcfarland.com
Go to file
Fabian Dill 031f7e6e21
Update README.md
2020-01-28 13:32:59 +01: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 missing colon (#15) 2020-01-22 18:08:56 +01: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 MSU-1 (#13) 2020-01-22 18:27:25 +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 fix crash by rolling random progressive sword only once. 2020-01-24 00:06:00 +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 MSU-1 (#13) 2020-01-22 18:27:25 +01:00
ModuleUpdate.py introduce PyYAML and make associated changes 2020-01-19 23:30:22 +01: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 improve forfeitplayer 2020-01-24 00:12:23 +01:00
Mystery.py remove debug logging line 2020-01-27 22:55:07 +01: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 Update README.md 2020-01-28 13:32:59 +01:00
Regions.py Small shops refactor, cleanup some inverted mess 2020-01-10 11:41:22 +01:00
Rom.py MSU-1 (#13) 2020-01-22 18:27:25 +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 optimize bytearray creation time and ram use 2020-01-22 17:50:00 +01:00
appveyor.yml Add versioning to MSI installer. 2017-12-02 16:38:35 -05:00
easy.yaml added new options to easy.yaml 2020-01-23 08:36:35 +01:00
requirements.txt Non progressive option (#12) 2020-01-22 06:28:58 +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. You can find a guide here: https://docs.google.com/document/d/1r7qs1-MK7YbFf2d-mEUeTy2wHykIf1ALG9pLtVvUbSw/edit#

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
  • Support for V31 extendedmsu

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
  • /forfeitplayer Playername now works when the player is not currently connected
  • 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, line and character is the culprit
  • Option for progressive items, allowing you to turn them off (see easy.yaml for more info)
  • Rom-Option for extendedmsu (see easy.yaml for more info)