Greatly reduced number of items marked as never_excluded due to the performance implications it brings

This commit is contained in:
Jarno Westhof 2021-10-11 11:41:45 +02:00 committed by Fabian Dill
parent 78443bffac
commit 065931cae7
2 changed files with 41 additions and 43 deletions

View File

@ -22,8 +22,8 @@ item_table: Dict[str, ItemData] = {
'Combat Helmet': ItemData('Equipment', 1337010, 0), 'Combat Helmet': ItemData('Equipment', 1337010, 0),
'Captain\'s Cap': ItemData('Equipment', 1337011), 'Captain\'s Cap': ItemData('Equipment', 1337011),
'Lab Glasses': ItemData('Equipment', 1337012), 'Lab Glasses': ItemData('Equipment', 1337012),
'Empire Crown': ItemData('Equipment', 1337013, never_exclude=True), 'Empire Crown': ItemData('Equipment', 1337013),
'Viletian Crown': ItemData('Equipment', 1337014, never_exclude=True), 'Viletian Crown': ItemData('Equipment', 1337014),
'Sunglasses': ItemData('Equipment', 1337015, 0), 'Sunglasses': ItemData('Equipment', 1337015, 0),
'Old Coat': ItemData('Equipment', 1337016), 'Old Coat': ItemData('Equipment', 1337016),
'Trendy Jacket': ItemData('Equipment', 1337017, 0), 'Trendy Jacket': ItemData('Equipment', 1337017, 0),
@ -38,8 +38,8 @@ item_table: Dict[str, ItemData] = {
'Military Armor': ItemData('Equipment', 1337026, 0), 'Military Armor': ItemData('Equipment', 1337026, 0),
'Captain\'s Uniform': ItemData('Equipment', 1337027), 'Captain\'s Uniform': ItemData('Equipment', 1337027),
'Lab Coat': ItemData('Equipment', 1337028), 'Lab Coat': ItemData('Equipment', 1337028),
'Empress Robe': ItemData('Equipment', 1337029, never_exclude=True), 'Empress Robe': ItemData('Equipment', 1337029),
'Princess Dress': ItemData('Equipment', 1337030, never_exclude=True), 'Princess Dress': ItemData('Equipment', 1337030),
'Eternal Coat': ItemData('Equipment', 1337031, never_exclude=True), 'Eternal Coat': ItemData('Equipment', 1337031, never_exclude=True),
'Synthetic Plume': ItemData('Equipment', 1337032, 0), 'Synthetic Plume': ItemData('Equipment', 1337032, 0),
'Cheveur Plume': ItemData('Equipment', 1337033, 0), 'Cheveur Plume': ItemData('Equipment', 1337033, 0),
@ -50,9 +50,9 @@ item_table: Dict[str, ItemData] = {
'Chaos Stole': ItemData('Equipment', 1337038, 0), 'Chaos Stole': ItemData('Equipment', 1337038, 0),
'Pendulum': ItemData('Equipment', 1337039, never_exclude=True), 'Pendulum': ItemData('Equipment', 1337039, never_exclude=True),
'Chaos Horn': ItemData('Equipment', 1337040, 0), 'Chaos Horn': ItemData('Equipment', 1337040, 0),
'Filigree Clasp': ItemData('Equipment', 1337041, never_exclude=True), 'Filigree Clasp': ItemData('Equipment', 1337041),
'Azure Stole': ItemData('Equipment', 1337042, 0), 'Azure Stole': ItemData('Equipment', 1337042, 0),
'Ancient Coin': ItemData('Equipment', 1337043, never_exclude=True), 'Ancient Coin': ItemData('Equipment', 1337043),
'Shiny Rock': ItemData('Equipment', 1337044, 0), 'Shiny Rock': ItemData('Equipment', 1337044, 0),
'Galaxy Earrings': ItemData('Equipment', 1337045, never_exclude=True), 'Galaxy Earrings': ItemData('Equipment', 1337045, never_exclude=True),
'Selen\'s Bangle': ItemData('Equipment', 1337046, never_exclude=True), 'Selen\'s Bangle': ItemData('Equipment', 1337046, never_exclude=True),
@ -140,42 +140,42 @@ item_table: Dict[str, ItemData] = {
'Wyrm Brooch': ItemData('Relic', 1337128), 'Wyrm Brooch': ItemData('Relic', 1337128),
'Greed Brooch': ItemData('Relic', 1337129), 'Greed Brooch': ItemData('Relic', 1337129),
'Eternal Brooch': ItemData('Relic', 1337130), 'Eternal Brooch': ItemData('Relic', 1337130),
'Blue Orb': ItemData('Orb Melee', 1337131, never_exclude=True), 'Blue Orb': ItemData('Orb Melee', 1337131),
'Blade Orb': ItemData('Orb Melee', 1337132, never_exclude=True), 'Blade Orb': ItemData('Orb Melee', 1337132),
'Fire Orb': ItemData('Orb Melee', 1337133, never_exclude=True, progression=True), 'Fire Orb': ItemData('Orb Melee', 1337133, progression=True),
'Plasma Orb': ItemData('Orb Melee', 1337134, never_exclude=True, progression=True), 'Plasma Orb': ItemData('Orb Melee', 1337134, progression=True),
'Iron Orb': ItemData('Orb Melee', 1337135, never_exclude=True), 'Iron Orb': ItemData('Orb Melee', 1337135),
'Ice Orb': ItemData('Orb Melee', 1337136, never_exclude=True), 'Ice Orb': ItemData('Orb Melee', 1337136),
'Wind Orb': ItemData('Orb Melee', 1337137, never_exclude=True), 'Wind Orb': ItemData('Orb Melee', 1337137),
'Gun Orb': ItemData('Orb Melee', 1337138, never_exclude=True), 'Gun Orb': ItemData('Orb Melee', 1337138),
'Umbra Orb': ItemData('Orb Melee', 1337139, never_exclude=True), 'Umbra Orb': ItemData('Orb Melee', 1337139),
'Empire Orb': ItemData('Orb Melee', 1337140, never_exclude=True), 'Empire Orb': ItemData('Orb Melee', 1337140),
'Eye Orb': ItemData('Orb Melee', 1337141, never_exclude=True), 'Eye Orb': ItemData('Orb Melee', 1337141),
'Blood Orb': ItemData('Orb Melee', 1337142, never_exclude=True), 'Blood Orb': ItemData('Orb Melee', 1337142),
'Forbidden Tome': ItemData('Orb Melee', 1337143, never_exclude=True), 'Forbidden Tome': ItemData('Orb Melee', 1337143),
'Shattered Orb': ItemData('Orb Melee', 1337144, never_exclude=True), 'Shattered Orb': ItemData('Orb Melee', 1337144),
'Nether Orb': ItemData('Orb Melee', 1337145, never_exclude=True), 'Nether Orb': ItemData('Orb Melee', 1337145),
'Radiant Orb': ItemData('Orb Melee', 1337146, never_exclude=True), 'Radiant Orb': ItemData('Orb Melee', 1337146),
'Aura Blast': ItemData('Orb Spell', 1337147, never_exclude=True), 'Aura Blast': ItemData('Orb Spell', 1337147),
'Colossal Blade': ItemData('Orb Spell', 1337148, never_exclude=True), 'Colossal Blade': ItemData('Orb Spell', 1337148),
'Infernal Flames': ItemData('Orb Spell', 1337149, never_exclude=True, progression=True), 'Infernal Flames': ItemData('Orb Spell', 1337149, progression=True),
'Plasma Geyser': ItemData('Orb Spell', 1337150, never_exclude=True, progression=True), 'Plasma Geyser': ItemData('Orb Spell', 1337150, progression=True),
'Colossal Hammer': ItemData('Orb Spell', 1337151, never_exclude=True), 'Colossal Hammer': ItemData('Orb Spell', 1337151),
'Frozen Spires': ItemData('Orb Spell', 1337152, never_exclude=True), 'Frozen Spires': ItemData('Orb Spell', 1337152),
'Storm Eye': ItemData('Orb Spell', 1337153, never_exclude=True), 'Storm Eye': ItemData('Orb Spell', 1337153),
'Arm Cannon': ItemData('Orb Spell', 1337154, never_exclude=True), 'Arm Cannon': ItemData('Orb Spell', 1337154),
'Dark Flames': ItemData('Orb Spell', 1337155, never_exclude=True), 'Dark Flames': ItemData('Orb Spell', 1337155),
'Aura Serpent': ItemData('Orb Spell', 1337156, never_exclude=True), 'Aura Serpent': ItemData('Orb Spell', 1337156),
'Chaos Blades': ItemData('Orb Spell', 1337157, never_exclude=True), 'Chaos Blades': ItemData('Orb Spell', 1337157),
'Crimson Vortex': ItemData('Orb Spell', 1337158, never_exclude=True), 'Crimson Vortex': ItemData('Orb Spell', 1337158),
'Djinn Inferno': ItemData('Orb Spell', 1337159, never_exclude=True, progression=True), 'Djinn Inferno': ItemData('Orb Spell', 1337159, progression=True),
'Bombardment': ItemData('Orb Spell', 1337160, never_exclude=True), 'Bombardment': ItemData('Orb Spell', 1337160),
'Corruption': ItemData('Orb Spell', 1337161, never_exclude=True), 'Corruption': ItemData('Orb Spell', 1337161),
'Lightwall': ItemData('Orb Spell', 1337162, never_exclude=True, progression=True), 'Lightwall': ItemData('Orb Spell', 1337162, progression=True),
'Bleak Ring': ItemData('Orb Passive', 1337163, never_exclude=True), 'Bleak Ring': ItemData('Orb Passive', 1337163, never_exclude=True),
'Scythe Ring': ItemData('Orb Passive', 1337164), 'Scythe Ring': ItemData('Orb Passive', 1337164),
'Pyro Ring': ItemData('Orb Passive', 1337165, never_exclude=True, progression=True), 'Pyro Ring': ItemData('Orb Passive', 1337165, progression=True),
'Royal Ring': ItemData('Orb Passive', 1337166, never_exclude=True, progression=True), 'Royal Ring': ItemData('Orb Passive', 1337166, progression=True),
'Shield Ring': ItemData('Orb Passive', 1337167), 'Shield Ring': ItemData('Orb Passive', 1337167),
'Icicle Ring': ItemData('Orb Passive', 1337168), 'Icicle Ring': ItemData('Orb Passive', 1337168),
'Tailwind Ring': ItemData('Orb Passive', 1337169), 'Tailwind Ring': ItemData('Orb Passive', 1337169),

View File

@ -144,9 +144,7 @@ def create_item_with_correct_settings(world: MultiWorld, player: int, name: str)
data = item_table[name] data = item_table[name]
item = Item(name, data.progression, data.code, player) item = Item(name, data.progression, data.code, player)
item.never_exclude = data.never_exclude
if world.exclude_locations[player]: # Doubles performance to not set item exclusion when its not required
item.never_exclude = data.never_exclude
if not item.advancement: if not item.advancement:
return item return item