mirror of
				https://github.com/MarioSpore/Grinch-AP.git
				synced 2025-10-21 20:21:32 -06:00 
			
		
		
		
	
			
				
					
						
					
					4cc216949a9e62edc1050459e3b963bf58a86528
				
			
			
		
	Berserker'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
- Available in precompiled form and guided setup for Windows 64Bit on Releases page.
- 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
- Has support for binary patching to allow legal distribution of multiworld rom files
- Various performance improvements (over 100% faster in most cases)
- Various fixes
- Overworld Glitches Logic
- Newer Entrance Randomizer Logic, allowing more potential item and boss locations
- completely redesigned command interface, with !helpand/help
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 are at the start of the file. Open with a text editor.
- Configuration options in the host.yaml file.
MultiServer.py
- Supports automatic port-forwarding, can be enabled in host.yaml
- improved !playerscommand, mentioning how many players are currently connected of how many expected and who's missing
- /forfeit Playername now works when the player is not currently connected
- Added /hintand!hint, configuration in host.yaml and description in help
- various commands, like /send and /hint use "fuzzy text matching", no longer requiring you to enter a location, player name or item name perfectly
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)
- Option for "timer"
- Option for "dungeon_counters", allowing you to configure the dungeon item counter
- Option for "glitch_boots", allowing to run glitched modes without automatic boots
- Supports new Meta-Mystery mode. Read meta.yaml for details.
- Added dungeonssimpleanddungeonsfullER modes
MultiClient.py
- Awaits a QUsb2Snes connection when started, latching on when available
- completely redesigned command interface, with !helpand/help
- Running it with a patch file will patch out the multiworld rom and then automatically connect to the host that created the multiworld
- Cheating is now controlled by the server and can be disabled through host.yaml
- Automatically starts QUsb2Snes, if it isn't running
- Better reconnect to both snes and server
- State is properly reset, allowing you to keep using the same client across multiworld runs
					Languages
				
				
								
								
									Python
								
								96.9%
							
						
							
								
								
									Lua
								
								0.9%
							
						
							
								
								
									HTML
								
								0.9%
							
						
							
								
								
									Assembly
								
								0.4%
							
						
							
								
								
									CSS
								
								0.2%
							
						
							
								
								
									Other
								
								0.4%
							
						
					