Fix for old pot shuffle

Fix for mystery startinventory
Update mystery example
This commit is contained in:
aerinon
2022-02-25 13:18:37 -07:00
parent 78442ab41a
commit 0b64b15e9e
5 changed files with 20 additions and 9 deletions

View File

@@ -31,7 +31,7 @@ from Utils import output_path, parse_player_names
from source.item.FillUtil import create_item_pool_config, massage_item_pool, district_item_pool_config from source.item.FillUtil import create_item_pool_config, massage_item_pool, district_item_pool_config
from source.tools.BPS import create_bps_from_data from source.tools.BPS import create_bps_from_data
__version__ = '1.0.1.7-v' __version__ = '1.0.1.8-v'
from source.classes.BabelFish import BabelFish from source.classes.BabelFish import BabelFish

View File

@@ -257,6 +257,8 @@ def roll_settings(weights):
if get_choice(item, inventoryweights) == 'on': if get_choice(item, inventoryweights) == 'on':
startitems.append(item) startitems.append(item)
ret.startinventory = ','.join(startitems) ret.startinventory = ','.join(startitems)
if len(startitems) > 0:
ret.usestartinventory = True
if 'rom' in weights: if 'rom' in weights:
romweights = weights['rom'] romweights = weights['rom']

View File

@@ -382,7 +382,7 @@ def shuffle_pots(world, player):
elif old_pot.item == PotItem.Switch: elif old_pot.item == PotItem.Switch:
available_pots = (pot for pot in new_pots if (pot.room == old_pot.room or pot.room in movable_switch_rooms[old_pot.room]) and not (pot.flags & PotFlags.NoSwitch)) available_pots = (pot for pot in new_pots if (pot.room == old_pot.room or pot.room in movable_switch_rooms[old_pot.room]) and not (pot.flags & PotFlags.NoSwitch))
elif old_pot.item == PotItem.Key: elif old_pot.item == PotItem.Key:
if world.doorShuffle[player] == 'vanilla' and not world.retro[player] and world.keydropshuffle[player] == 'none' and world.logic[player] != 'nologic': if world.doorShuffle[player] == 'vanilla' and not world.retro[player] and world.pottery[player] == 'none' and world.logic[player] != 'nologic':
available_pots = (pot for pot in new_pots if pot.room not in invalid_key_rooms) available_pots = (pot for pot in new_pots if pot.room not in invalid_key_rooms)
else: else:
available_pots = new_pots available_pots = new_pots

View File

@@ -147,6 +147,10 @@ Same as above but both small keys and bigs keys of the dungeon are not allowed o
#### Volatile #### Volatile
* 1.0.1.8
* Updated mystery_example.yml
* Fixed usestartinventory with mystery
* Fixed a bug with the old pot shuffle (crashed when used)
* 1.0.1.7 * 1.0.1.7
* Expanded Mystery logic options (e.g. owglitches) * Expanded Mystery logic options (e.g. owglitches)
* Allowed Mystery.py to create BPS patches * Allowed Mystery.py to create BPS patches

View File

@@ -7,10 +7,15 @@
1: 2 1: 2
2: 2 2: 2
3: 4 3: 4
keydropshuffle: dropshuffle:
none: 1 on: 1
keydrops: 1 off: 1
potsanity: 1 pottery:
none: 4
keys: 1
cave: 1
dungeon: 1
lottery: 1
shopsanity: shopsanity:
on: 1 on: 1
off: 1 off: 1
@@ -125,10 +130,10 @@
easy: 1 easy: 1
hard: 1 hard: 1
expert: 0 expert: 0
startinventory:
Pegasus Boots: on
rom: rom:
quickswap: quickswap: on
on: 1
off: 0
heartcolor: heartcolor:
red: 1 red: 1
blue: 1 blue: 1