* PMDs now check to make sure you have enough unlockers for all of them before any are in logic, to avoid softlocks * Adds Humor and BlckMnd to the pool and sets logic for Villain and Comedian. Patch not yet updated to remove starting inventory * Adds Serenade as a check * Fixes hide and seek completion to use proper Yoka Zoo map. Updates bsdiff patch to 1.2 * Adds option for excluding Secret Area, and item/location groups for further customization * Update worlds/mmbn3/Locations.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Update worlds/mmbn3/Regions.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Update worlds/mmbn3/__init__.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Update worlds/mmbn3/__init__.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Update worlds/mmbn3/__init__.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> * Replaces can_reach generic with can_reach_region or can_reach_location, where applciable * Unlocker is now a progression item, Excluded Locations is now a Set * Missed a merge marker * Excluded locations is no longer a set since you can't append to a set with += * Excluded locations is now a set again since you apparent can append to a set with |= * Replaces more lists with sets. Fixes wording in option descriptions * Update worlds/mmbn3/__init__.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
from dataclasses import dataclass
 | 
						|
from Options import Choice, Range, DefaultOnToggle, Toggle, PerGameCommonOptions
 | 
						|
 | 
						|
 | 
						|
class ExtraRanks(Range):
 | 
						|
    """
 | 
						|
    How many extra Undernet Ranks to add to the pool in place of filler items.
 | 
						|
    The more ranks there are, the faster the game will go.
 | 
						|
    Depending on your other options, you might not have enough filler items to replace.
 | 
						|
    If generation errors occur, consider reducing this value.
 | 
						|
    """
 | 
						|
    display_name = "Extra Undernet Ranks"
 | 
						|
    range_start = 0
 | 
						|
    range_end = 16
 | 
						|
    default = 0
 | 
						|
 | 
						|
 | 
						|
class IncludeJobs(DefaultOnToggle):
 | 
						|
    """
 | 
						|
    Whether Jobs can contain progression or useful items.
 | 
						|
    """
 | 
						|
    display_name = "Include Jobs"
 | 
						|
 | 
						|
 | 
						|
class IncludeSecretArea(Toggle):
 | 
						|
    """
 | 
						|
    Whether the Secret Area (including Serenade) can contain progression or useful items.
 | 
						|
    """
 | 
						|
    display_name = "Include Secret Area"
 | 
						|
 | 
						|
# Possible logic options:
 | 
						|
# - Include Number Trader
 | 
						|
# - Include Secret Area
 | 
						|
# - Overworld Item Restrictions
 | 
						|
# - Cybermetro Locked Shortcuts
 | 
						|
 | 
						|
 | 
						|
class TradeQuestHinting(Choice):
 | 
						|
    """
 | 
						|
    Whether NPCs offering Chip Trades should show what item they provide.
 | 
						|
    None - NPCs will not provide any information on what item they will give
 | 
						|
    Partial - NPCs will state if an item is progression or not, but not the specific item
 | 
						|
    Full - NPCs will state what item they will give, providing an Archipelago Hint when doing so
 | 
						|
    """
 | 
						|
    display_name = "Trade Quest Hinting"
 | 
						|
    option_none = 0
 | 
						|
    option_partial = 1
 | 
						|
    option_full = 2
 | 
						|
    default = 2
 | 
						|
 | 
						|
 | 
						|
@dataclass
 | 
						|
class MMBN3Options(PerGameCommonOptions):
 | 
						|
    extra_ranks: ExtraRanks
 | 
						|
    include_jobs: IncludeJobs
 | 
						|
    include_secret: IncludeSecretArea
 | 
						|
    trade_quest_hinting: TradeQuestHinting
 | 
						|
     |