 062d6eeace
			
		
	
	062d6eeace
	
	
	
		
			
			- Added more progressive locations and associated items. - Added an option to enable materials/consumables/estus randomization, some players complain about the number of locations and the randomness of those items. - Added an option to add DLC Items and Locations to the pool, the player must own both the ASHES OF ARIANDEL and the RINGED CITY DLC. Co-authored-by: Br00ty <83629348+Br00ty@users.noreply.github.com> Co-authored-by: Friðberg Reynir Traustason <fridberg.traustason@gmail.com>
		
			
				
	
	
		
			37 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import sys
 | |
| 
 | |
| from BaseClasses import Item
 | |
| from worlds.dark_souls_3.data.items_data import item_tables, dlc_shields_table, dlc_weapons_upgrade_10_table, \
 | |
|     dlc_weapons_upgrade_5_table, dlc_goods_table, dlc_spells_table, dlc_armor_table, dlc_ring_table, dlc_misc_table, dlc_goods_2_table
 | |
| 
 | |
| 
 | |
| class DarkSouls3Item(Item):
 | |
|     game: str = "Dark Souls III"
 | |
| 
 | |
|     dlc_set = {**dlc_shields_table, **dlc_weapons_upgrade_10_table, **dlc_weapons_upgrade_5_table,
 | |
|                **dlc_goods_table, **dlc_spells_table, **dlc_armor_table, **dlc_ring_table, **dlc_misc_table}
 | |
| 
 | |
|     dlc_progressive = {**dlc_goods_2_table}
 | |
| 
 | |
|     @staticmethod
 | |
|     def get_name_to_id() -> dict:
 | |
|         base_id = 100000
 | |
|         table_offset = 100
 | |
| 
 | |
|         output = {}
 | |
|         for i, table in enumerate(item_tables):
 | |
|             if len(table) > table_offset:
 | |
|                 raise Exception("An item table has {} entries, that is more than {} entries (table #{})".format(len(table), table_offset, i))
 | |
|             output.update({name: id for id, name in enumerate(table, base_id + (table_offset * i))})
 | |
| 
 | |
|         return output
 | |
| 
 | |
|     @staticmethod
 | |
|     def is_dlc_item(name) -> bool:
 | |
|         return name in DarkSouls3Item.dlc_set
 | |
| 
 | |
|     @staticmethod
 | |
|     def is_dlc_progressive(name) -> bool:
 | |
|         return name in DarkSouls3Item.dlc_progressive
 | |
| 
 |