2024-03-15 16:33:03 +00:00
import inspect
from pydoc import describe
from BaseClasses import Item , ItemClassification , MultiWorld
import typing
from . Options import get_option_value , RequiredTactics
from . MissionTables import SC2Mission , SC2Race , SC2Campaign , campaign_mission_table
from . import ItemNames
from worlds . AutoWorld import World
class ItemData ( typing . NamedTuple ) :
code : int
type : str
number : int # Important for bot commands to send the item into the game
race : SC2Race
classification : ItemClassification = ItemClassification . useful
quantity : int = 1
parent_item : typing . Optional [ str ] = None
origin : typing . Set [ str ] = { " wol " }
description : typing . Optional [ str ] = None
important_for_filtering : bool = False
def is_important_for_filtering ( self ) :
return self . important_for_filtering \
or self . classification == ItemClassification . progression \
or self . classification == ItemClassification . progression_skip_balancing
class StarcraftItem ( Item ) :
game : str = " Starcraft 2 "
def get_full_item_list ( ) :
return item_table
SC2WOL_ITEM_ID_OFFSET = 1000
SC2HOTS_ITEM_ID_OFFSET = SC2WOL_ITEM_ID_OFFSET + 1000
SC2LOTV_ITEM_ID_OFFSET = SC2HOTS_ITEM_ID_OFFSET + 1000
# Descriptions
WEAPON_ARMOR_UPGRADE_NOTE = inspect . cleandoc ( """
Must be researched during the mission if the mission type isn ' t set to auto-unlock generic upgrades.
""" )
LASER_TARGETING_SYSTEMS_DESCRIPTION = " Increases vision by 2 and weapon range by 1. "
STIMPACK_SMALL_COST = 10
STIMPACK_SMALL_HEAL = 30
STIMPACK_LARGE_COST = 20
STIMPACK_LARGE_HEAL = 60
STIMPACK_TEMPLATE = inspect . cleandoc ( """
Level 1 : Stimpack : Increases unit movement and attack speed for 15 seconds . Injures the unit for { } life .
Level 2 : Super Stimpack : Instead of injuring the unit , heals the unit for { } life instead .
""" )
STIMPACK_SMALL_DESCRIPTION = STIMPACK_TEMPLATE . format ( STIMPACK_SMALL_COST , STIMPACK_SMALL_HEAL )
STIMPACK_LARGE_DESCRIPTION = STIMPACK_TEMPLATE . format ( STIMPACK_LARGE_COST , STIMPACK_LARGE_HEAL )
SMART_SERVOS_DESCRIPTION = " Increases transformation speed between modes. "
INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE = " {} can be trained from a {} without an attached Tech Lab. "
RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE = " Reduces {} resource and supply cost. "
RESOURCE_EFFICIENCY_NO_SUPPLY_DESCRIPTION_TEMPLATE = " Reduces {} resource cost. "
CLOAK_DESCRIPTION_TEMPLATE = " Allows {} to use the Cloak ability. "
# The items are sorted by their IDs. The IDs shall be kept for compatibility with older games.
item_table = {
# WoL
ItemNames . MARINE :
ItemData ( 0 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 0 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " General-purpose infantry. " ) ,
ItemNames . MEDIC :
ItemData ( 1 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Support trooper. Heals nearby biological units. " ) ,
ItemNames . FIREBAT :
ItemData ( 2 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 2 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Specialized anti-infantry attacker. " ) ,
ItemNames . MARAUDER :
ItemData ( 3 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 3 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Heavy assault infantry. " ) ,
ItemNames . REAPER :
ItemData ( 4 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 4 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Raider. Capable of jumping up and down cliffs. Throws explosive mines. " ) ,
ItemNames . HELLION :
ItemData ( 5 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 5 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Fast scout. Has a flame attack that damages all enemy units in its line of fire. " ) ,
ItemNames . VULTURE :
ItemData ( 6 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 6 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Fast skirmish unit. Can use the Spider Mine ability. " ) ,
ItemNames . GOLIATH :
ItemData ( 7 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 7 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Heavy-fire support unit. " ) ,
ItemNames . DIAMONDBACK :
ItemData ( 8 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 8 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Fast, high-damage hovertank. Rail Gun can fire while the Diamondback is moving. " ) ,
ItemNames . SIEGE_TANK :
ItemData ( 9 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 9 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Heavy tank. Long-range artillery in Siege Mode. " ) ,
ItemNames . MEDIVAC :
ItemData ( 10 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 10 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Air transport. Heals nearby biological units. " ) ,
ItemNames . WRAITH :
ItemData ( 11 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 11 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Highly mobile flying unit. Excellent at surgical strikes. " ) ,
ItemNames . VIKING :
ItemData ( 12 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 12 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Durable support flyer . Loaded with strong anti - capital air missiles .
Can switch into Assault Mode to attack ground units .
"""
) ) ,
ItemNames . BANSHEE :
ItemData ( 13 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 13 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Tactical-strike aircraft. " ) ,
ItemNames . BATTLECRUISER :
ItemData ( 14 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 14 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Powerful warship. " ) ,
ItemNames . GHOST :
ItemData ( 15 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 15 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Infiltration unit . Can use Snipe and Cloak abilities . Can also call down Tactical Nukes .
"""
) ) ,
ItemNames . SPECTRE :
ItemData ( 16 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 16 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Infiltration unit . Can use Ultrasonic Pulse , Psionic Lash , and Cloak .
Can also call down Tactical Nukes .
"""
) ) ,
ItemNames . THOR :
ItemData ( 17 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 17 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Heavy assault mech. " ) ,
# EE units
ItemNames . LIBERATOR :
ItemData ( 18 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 18 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " nco " , " ext " } ,
description = inspect . cleandoc (
"""
Artillery fighter . Loaded with missiles that deal area damage to enemy air targets .
Can switch into Defender Mode to provide siege support .
"""
) ) ,
ItemNames . VALKYRIE :
ItemData ( 19 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 19 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " bw " } ,
description = inspect . cleandoc (
"""
Advanced anti - aircraft fighter .
Able to use cluster missiles that deal area damage to air targets .
"""
) ) ,
ItemNames . WIDOW_MINE :
ItemData ( 20 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 20 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Robotic mine . Launches missiles at nearby enemy units while burrowed .
Attacks deal splash damage in a small area around the target .
Widow Mine is revealed when Sentinel Missile is on cooldown .
"""
) ) ,
ItemNames . CYCLONE :
ItemData ( 21 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 21 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Mobile assault vehicle . Can use Lock On to quickly fire while moving .
"""
) ) ,
ItemNames . HERC :
ItemData ( 22 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 26 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Front - line infantry . Can use Grapple .
"""
) ) ,
ItemNames . WARHOUND :
ItemData ( 23 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 27 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Anti - vehicle mech . Haywire missiles do bonus damage to mechanical units .
"""
) ) ,
# Some other items are moved to Upgrade group because of the way how the bot message is parsed
ItemNames . PROGRESSIVE_TERRAN_INFANTRY_WEAPON :
ItemData ( 100 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 0 , SC2Race . TERRAN ,
quantity = 3 ,
description = inspect . cleandoc (
f """
Increases damage of Terran infantry units .
{ WEAPON_ARMOR_UPGRADE_NOTE }
"""
) ) ,
ItemNames . PROGRESSIVE_TERRAN_INFANTRY_ARMOR :
ItemData ( 102 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 2 , SC2Race . TERRAN ,
quantity = 3 ,
description = inspect . cleandoc (
f """
Increases armor of Terran infantry units .
{ WEAPON_ARMOR_UPGRADE_NOTE }
"""
) ) ,
ItemNames . PROGRESSIVE_TERRAN_VEHICLE_WEAPON :
ItemData ( 103 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 4 , SC2Race . TERRAN ,
quantity = 3 ,
description = inspect . cleandoc (
f """
Increases damage of Terran vehicle units .
{ WEAPON_ARMOR_UPGRADE_NOTE }
"""
) ) ,
ItemNames . PROGRESSIVE_TERRAN_VEHICLE_ARMOR :
ItemData ( 104 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 6 , SC2Race . TERRAN ,
quantity = 3 ,
description = inspect . cleandoc (
f """
Increases armor of Terran vehicle units .
{ WEAPON_ARMOR_UPGRADE_NOTE }
"""
) ) ,
ItemNames . PROGRESSIVE_TERRAN_SHIP_WEAPON :
ItemData ( 105 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 8 , SC2Race . TERRAN ,
quantity = 3 ,
description = inspect . cleandoc (
f """
Increases damage of Terran starship units .
{ WEAPON_ARMOR_UPGRADE_NOTE }
"""
) ) ,
ItemNames . PROGRESSIVE_TERRAN_SHIP_ARMOR :
ItemData ( 106 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 10 , SC2Race . TERRAN ,
quantity = 3 ,
description = inspect . cleandoc (
f """
Increases armor of Terran starship units .
{ WEAPON_ARMOR_UPGRADE_NOTE }
"""
) ) ,
# Upgrade bundle 'number' values are used as indices to get affected 'number's
ItemNames . PROGRESSIVE_TERRAN_WEAPON_UPGRADE : ItemData ( 107 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 0 , SC2Race . TERRAN , quantity = 3 ) ,
ItemNames . PROGRESSIVE_TERRAN_ARMOR_UPGRADE : ItemData ( 108 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 1 , SC2Race . TERRAN , quantity = 3 ) ,
ItemNames . PROGRESSIVE_TERRAN_INFANTRY_UPGRADE : ItemData ( 109 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 2 , SC2Race . TERRAN , quantity = 3 ) ,
ItemNames . PROGRESSIVE_TERRAN_VEHICLE_UPGRADE : ItemData ( 110 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 3 , SC2Race . TERRAN , quantity = 3 ) ,
ItemNames . PROGRESSIVE_TERRAN_SHIP_UPGRADE : ItemData ( 111 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 4 , SC2Race . TERRAN , quantity = 3 ) ,
ItemNames . PROGRESSIVE_TERRAN_WEAPON_ARMOR_UPGRADE : ItemData ( 112 + SC2WOL_ITEM_ID_OFFSET , " Upgrade " , 5 , SC2Race . TERRAN , quantity = 3 ) ,
# Unit and structure upgrades
ItemNames . BUNKER_PROJECTILE_ACCELERATOR :
ItemData ( 200 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 0 , SC2Race . TERRAN ,
parent_item = ItemNames . BUNKER ,
description = " Increases range of all units in the Bunker by 1. " ) ,
ItemNames . BUNKER_NEOSTEEL_BUNKER :
ItemData ( 201 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 1 , SC2Race . TERRAN ,
parent_item = ItemNames . BUNKER ,
description = " Increases the number of Bunker slots by 2. " ) ,
ItemNames . MISSILE_TURRET_TITANIUM_HOUSING :
ItemData ( 202 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 2 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MISSILE_TURRET ,
description = " Increases Missile Turret life by 75. " ) ,
ItemNames . MISSILE_TURRET_HELLSTORM_BATTERIES :
ItemData ( 203 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 3 , SC2Race . TERRAN ,
parent_item = ItemNames . MISSILE_TURRET ,
description = " The Missile Turret unleashes an additional flurry of missiles with each attack. " ) ,
ItemNames . SCV_ADVANCED_CONSTRUCTION :
ItemData ( 204 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 4 , SC2Race . TERRAN ,
description = " Multiple SCVs can construct a structure, reducing its construction time. " ) ,
ItemNames . SCV_DUAL_FUSION_WELDERS :
ItemData ( 205 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 5 , SC2Race . TERRAN ,
description = " SCVs repair twice as fast. " ) ,
ItemNames . PROGRESSIVE_FIRE_SUPPRESSION_SYSTEM :
ItemData ( 206 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 24 , SC2Race . TERRAN ,
quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : While on low health , Terran structures are repaired to half health instead of burning down .
Level 2 : Terran structures are repaired to full health instead of half health
"""
) ) ,
ItemNames . PROGRESSIVE_ORBITAL_COMMAND :
ItemData ( 207 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 26 , SC2Race . TERRAN ,
quantity = 2 , classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Level 1 : Allows Command Centers to use Scanner Sweep and Calldown : MULE abilities .
Level 2 : Orbital Command abilities work even in Planetary Fortress mode .
"""
) ) ,
ItemNames . MARINE_PROGRESSIVE_STIMPACK :
ItemData ( 208 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 0 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . MARINE , quantity = 2 ,
description = STIMPACK_SMALL_DESCRIPTION ) ,
ItemNames . MARINE_COMBAT_SHIELD :
ItemData ( 209 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 9 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . MARINE ,
description = " Increases Marine life by 10. " ) ,
ItemNames . MEDIC_ADVANCED_MEDIC_FACILITIES :
ItemData ( 210 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 10 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIC ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Medics " , " Barracks " ) ) ,
ItemNames . MEDIC_STABILIZER_MEDPACKS :
ItemData ( 211 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 11 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . MEDIC ,
description = " Increases Medic heal speed. Reduces the amount of energy required for each heal. " ) ,
ItemNames . FIREBAT_INCINERATOR_GAUNTLETS :
ItemData ( 212 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 12 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . FIREBAT ,
description = " Increases Firebat ' s damage radius by 40 % " ) ,
ItemNames . FIREBAT_JUGGERNAUT_PLATING :
ItemData ( 213 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 13 , SC2Race . TERRAN ,
parent_item = ItemNames . FIREBAT ,
description = " Increases Firebat ' s armor by 2. " ) ,
ItemNames . MARAUDER_CONCUSSIVE_SHELLS :
ItemData ( 214 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 14 , SC2Race . TERRAN ,
parent_item = ItemNames . MARAUDER ,
description = " Marauder attack temporarily slows all units in target area. " ) ,
ItemNames . MARAUDER_KINETIC_FOAM :
ItemData ( 215 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 15 , SC2Race . TERRAN ,
parent_item = ItemNames . MARAUDER ,
description = " Increases Marauder life by 25. " ) ,
ItemNames . REAPER_U238_ROUNDS :
ItemData ( 216 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 16 , SC2Race . TERRAN ,
parent_item = ItemNames . REAPER ,
description = inspect . cleandoc (
"""
Increases Reaper pistol attack range by 1.
Reaper pistols do additional 3 damage to Light Armor .
"""
) ) ,
ItemNames . REAPER_G4_CLUSTERBOMB :
ItemData ( 217 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 17 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . REAPER ,
description = " Timed explosive that does heavy area damage. " ) ,
ItemNames . CYCLONE_MAG_FIELD_ACCELERATORS :
ItemData ( 218 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 18 , SC2Race . TERRAN ,
parent_item = ItemNames . CYCLONE , origin = { " ext " } ,
description = " Increases Cyclone Lock On damage " ) ,
ItemNames . CYCLONE_MAG_FIELD_LAUNCHERS :
ItemData ( 219 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 19 , SC2Race . TERRAN ,
parent_item = ItemNames . CYCLONE , origin = { " ext " } ,
description = " Increases Cyclone attack range by 2. " ) ,
ItemNames . MARINE_LASER_TARGETING_SYSTEM :
ItemData ( 220 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 8 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MARINE , origin = { " nco " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . MARINE_MAGRAIL_MUNITIONS :
ItemData ( 221 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 20 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . MARINE , origin = { " nco " } ,
description = " Deals 20 damage to target unit. Autocast on attack with a cooldown. " ) ,
ItemNames . MARINE_OPTIMIZED_LOGISTICS :
ItemData ( 222 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 21 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MARINE , origin = { " nco " } ,
description = " Increases Marine training speed. " ) ,
ItemNames . MEDIC_RESTORATION :
ItemData ( 223 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 22 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIC , origin = { " bw " } ,
description = " Removes negative status effects from target allied unit. " ) ,
ItemNames . MEDIC_OPTICAL_FLARE :
ItemData ( 224 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 23 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIC , origin = { " bw " } ,
description = " Reduces vision range of target enemy unit. Disables detection. " ) ,
ItemNames . MEDIC_RESOURCE_EFFICIENCY :
ItemData ( 225 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 24 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIC , origin = { " bw " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Medic " ) ) ,
ItemNames . FIREBAT_PROGRESSIVE_STIMPACK :
ItemData ( 226 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 6 , SC2Race . TERRAN ,
parent_item = ItemNames . FIREBAT , quantity = 2 , origin = { " bw " } ,
description = STIMPACK_LARGE_DESCRIPTION ) ,
ItemNames . FIREBAT_RESOURCE_EFFICIENCY :
ItemData ( 227 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 25 , SC2Race . TERRAN ,
parent_item = ItemNames . FIREBAT , origin = { " bw " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Firebat " ) ) ,
ItemNames . MARAUDER_PROGRESSIVE_STIMPACK :
ItemData ( 228 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 8 , SC2Race . TERRAN ,
parent_item = ItemNames . MARAUDER , quantity = 2 , origin = { " nco " } ,
description = STIMPACK_LARGE_DESCRIPTION ) ,
ItemNames . MARAUDER_LASER_TARGETING_SYSTEM :
ItemData ( 229 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 26 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MARAUDER , origin = { " nco " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . MARAUDER_MAGRAIL_MUNITIONS :
ItemData ( 230 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 27 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MARAUDER , origin = { " nco " } ,
description = " Deals 20 damage to target unit. Autocast on attack with a cooldown. " ) ,
ItemNames . MARAUDER_INTERNAL_TECH_MODULE :
ItemData ( 231 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 28 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MARAUDER , origin = { " nco " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Marauders " , " Barracks " ) ) ,
ItemNames . SCV_HOSTILE_ENVIRONMENT_ADAPTATION :
ItemData ( 232 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 29 , SC2Race . TERRAN ,
classification = ItemClassification . filler , origin = { " bw " } ,
description = " Increases SCV life by 15 and attack speed slightly. " ) ,
ItemNames . MEDIC_ADAPTIVE_MEDPACKS :
ItemData ( 233 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 0 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . MEDIC , origin = { " ext " } ,
description = " Allows Medics to heal mechanical and air units. " ) ,
ItemNames . MEDIC_NANO_PROJECTOR :
ItemData ( 234 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIC , origin = { " ext " } ,
description = " Increases Medic heal range by 2. " ) ,
ItemNames . FIREBAT_INFERNAL_PRE_IGNITER :
ItemData ( 235 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 2 , SC2Race . TERRAN ,
parent_item = ItemNames . FIREBAT , origin = { " bw " } ,
description = " Firebats do an additional 4 damage to Light Armor. " ) ,
ItemNames . FIREBAT_KINETIC_FOAM :
ItemData ( 236 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 3 , SC2Race . TERRAN ,
parent_item = ItemNames . FIREBAT , origin = { " ext " } ,
description = " Increases Firebat life by 100. " ) ,
ItemNames . FIREBAT_NANO_PROJECTORS :
ItemData ( 237 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 4 , SC2Race . TERRAN ,
parent_item = ItemNames . FIREBAT , origin = { " ext " } ,
description = " Increases Firebat attack range by 2 " ) ,
ItemNames . MARAUDER_JUGGERNAUT_PLATING :
ItemData ( 238 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 5 , SC2Race . TERRAN ,
parent_item = ItemNames . MARAUDER , origin = { " ext " } ,
description = " Increases Marauder ' s armor by 2. " ) ,
ItemNames . REAPER_JET_PACK_OVERDRIVE :
ItemData ( 239 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 6 , SC2Race . TERRAN ,
parent_item = ItemNames . REAPER , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Allows the Reaper to fly for 10 seconds .
While flying , the Reaper can attack air units .
"""
) ) ,
ItemNames . HELLION_INFERNAL_PLATING :
ItemData ( 240 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 7 , SC2Race . TERRAN ,
parent_item = ItemNames . HELLION , origin = { " ext " } ,
description = " Increases Hellion and Hellbat armor by 2. " ) ,
ItemNames . VULTURE_AUTO_REPAIR :
ItemData ( 241 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 8 , SC2Race . TERRAN ,
parent_item = ItemNames . VULTURE , origin = { " ext " } ,
description = " Vultures regenerate life. " ) ,
ItemNames . GOLIATH_SHAPED_HULL :
ItemData ( 242 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 9 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . GOLIATH , origin = { " nco " , " ext " } ,
description = " Increases Goliath life by 25. " ) ,
ItemNames . GOLIATH_RESOURCE_EFFICIENCY :
ItemData ( 243 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 10 , SC2Race . TERRAN ,
parent_item = ItemNames . GOLIATH , origin = { " nco " , " bw " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Goliath " ) ) ,
ItemNames . GOLIATH_INTERNAL_TECH_MODULE :
ItemData ( 244 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 11 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . GOLIATH , origin = { " nco " , " bw " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Goliaths " , " Factory " ) ) ,
ItemNames . SIEGE_TANK_SHAPED_HULL :
ItemData ( 245 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 12 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . SIEGE_TANK , origin = { " nco " , " ext " } ,
description = " Increases Siege Tank life by 25. " ) ,
ItemNames . SIEGE_TANK_RESOURCE_EFFICIENCY :
ItemData ( 246 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 13 , SC2Race . TERRAN ,
parent_item = ItemNames . SIEGE_TANK , origin = { " bw " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Siege Tank " ) ) ,
ItemNames . PREDATOR_CLOAK :
ItemData ( 247 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 14 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . PREDATOR , origin = { " ext " } ,
description = CLOAK_DESCRIPTION_TEMPLATE . format ( " Predators " ) ) ,
ItemNames . PREDATOR_CHARGE :
ItemData ( 248 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 15 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . PREDATOR , origin = { " ext " } ,
description = " Allows Predators to intercept enemy ground units. " ) ,
ItemNames . MEDIVAC_SCATTER_VEIL :
ItemData ( 249 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 16 , SC2Race . TERRAN ,
parent_item = ItemNames . MEDIVAC , origin = { " ext " } ,
description = " Medivacs get 100 shields. " ) ,
ItemNames . REAPER_PROGRESSIVE_STIMPACK :
ItemData ( 250 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 10 , SC2Race . TERRAN ,
parent_item = ItemNames . REAPER , quantity = 2 , origin = { " nco " } ,
description = STIMPACK_SMALL_DESCRIPTION ) ,
ItemNames . REAPER_LASER_TARGETING_SYSTEM :
ItemData ( 251 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 17 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . REAPER , origin = { " nco " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . REAPER_ADVANCED_CLOAKING_FIELD :
ItemData ( 252 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 18 , SC2Race . TERRAN ,
parent_item = ItemNames . REAPER , origin = { " nco " } ,
description = " Reapers are permanently cloaked. " ) ,
ItemNames . REAPER_SPIDER_MINES :
ItemData ( 253 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 19 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . REAPER , origin = { " nco " } ,
important_for_filtering = True ,
description = " Allows Reapers to lay Spider Mines. 3 charges per Reaper. " ) ,
ItemNames . REAPER_COMBAT_DRUGS :
ItemData ( 254 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 20 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . REAPER , origin = { " ext " } ,
description = " Reapers regenerate life while out of combat. " ) ,
ItemNames . HELLION_HELLBAT_ASPECT :
ItemData ( 255 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 21 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . HELLION , origin = { " nco " } ,
description = " Allows Hellions to transform into Hellbats. " ) ,
ItemNames . HELLION_SMART_SERVOS :
ItemData ( 256 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 22 , SC2Race . TERRAN ,
parent_item = ItemNames . HELLION , origin = { " nco " } ,
description = " Transforms faster between modes. Hellions can attack while moving. " ) ,
ItemNames . HELLION_OPTIMIZED_LOGISTICS :
ItemData ( 257 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 23 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . HELLION , origin = { " nco " } ,
description = " Increases Hellion training speed. " ) ,
ItemNames . HELLION_JUMP_JETS :
ItemData ( 258 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 24 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . HELLION , origin = { " nco " } ,
description = inspect . cleandoc (
"""
Increases movement speed in Hellion mode .
In Hellbat mode , launches the Hellbat toward enemy ground units and briefly stuns them .
"""
) ) ,
ItemNames . HELLION_PROGRESSIVE_STIMPACK :
ItemData ( 259 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 12 , SC2Race . TERRAN ,
parent_item = ItemNames . HELLION , quantity = 2 , origin = { " nco " } ,
description = STIMPACK_LARGE_DESCRIPTION ) ,
ItemNames . VULTURE_ION_THRUSTERS :
ItemData ( 260 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 25 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . VULTURE , origin = { " bw " } ,
description = " Increases Vulture movement speed. " ) ,
ItemNames . VULTURE_AUTO_LAUNCHERS :
ItemData ( 261 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 26 , SC2Race . TERRAN ,
parent_item = ItemNames . VULTURE , origin = { " bw " } ,
description = " Allows Vultures to attack while moving. " ) ,
ItemNames . SPIDER_MINE_HIGH_EXPLOSIVE_MUNITION :
ItemData ( 262 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 27 , SC2Race . TERRAN ,
origin = { " bw " } ,
description = " Increases Spider mine damage. " ) ,
ItemNames . GOLIATH_JUMP_JETS :
ItemData ( 263 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 28 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . GOLIATH , origin = { " nco " } ,
description = " Allows Goliaths to jump up and down cliffs. " ) ,
ItemNames . GOLIATH_OPTIMIZED_LOGISTICS :
ItemData ( 264 + SC2WOL_ITEM_ID_OFFSET , " Armory 2 " , 29 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . GOLIATH , origin = { " nco " } ,
description = " Increases Goliath training speed. " ) ,
ItemNames . DIAMONDBACK_HYPERFLUXOR :
ItemData ( 265 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 0 , SC2Race . TERRAN ,
parent_item = ItemNames . DIAMONDBACK , origin = { " ext " } ,
description = " Increases Diamondback attack speed. " ) ,
ItemNames . DIAMONDBACK_BURST_CAPACITORS :
ItemData ( 266 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . DIAMONDBACK , origin = { " ext " } ,
description = inspect . cleandoc (
"""
While not attacking , the Diamondback charges its weapon .
The next attack does 10 additional damage .
"""
) ) ,
ItemNames . DIAMONDBACK_RESOURCE_EFFICIENCY :
ItemData ( 267 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 2 , SC2Race . TERRAN ,
parent_item = ItemNames . DIAMONDBACK , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Diamondback " ) ) ,
ItemNames . SIEGE_TANK_JUMP_JETS :
ItemData ( 268 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 3 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . SIEGE_TANK , origin = { " nco " } ,
description = inspect . cleandoc (
"""
Repositions Siege Tank to a target location .
Can be used in either mode and to jump up and down cliffs .
"""
) ) ,
ItemNames . SIEGE_TANK_SPIDER_MINES :
ItemData ( 269 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 4 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . SIEGE_TANK , origin = { " nco " } ,
important_for_filtering = True ,
description = inspect . cleandoc (
"""
Allows Siege Tanks to lay Spider Mines .
Lays 3 Spider Mines at once . 3 charges
"""
) ) ,
ItemNames . SIEGE_TANK_SMART_SERVOS :
ItemData ( 270 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 5 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . SIEGE_TANK , origin = { " nco " } ,
description = SMART_SERVOS_DESCRIPTION ) ,
ItemNames . SIEGE_TANK_GRADUATING_RANGE :
ItemData ( 271 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 6 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . SIEGE_TANK , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Increases the Siege Tank ' s attack range by 1 every 3 seconds while in Siege Mode,
up to a maximum of 5 additional range .
"""
) ) ,
ItemNames . SIEGE_TANK_LASER_TARGETING_SYSTEM :
ItemData ( 272 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 7 , SC2Race . TERRAN ,
parent_item = ItemNames . SIEGE_TANK , origin = { " nco " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . SIEGE_TANK_ADVANCED_SIEGE_TECH :
ItemData ( 273 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 8 , SC2Race . TERRAN ,
parent_item = ItemNames . SIEGE_TANK , origin = { " ext " } ,
description = " Siege Tanks gain +3 armor in Siege Mode. " ) ,
ItemNames . SIEGE_TANK_INTERNAL_TECH_MODULE :
ItemData ( 274 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 9 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . SIEGE_TANK , origin = { " nco " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Siege Tanks " , " Factory " ) ) ,
ItemNames . PREDATOR_RESOURCE_EFFICIENCY :
ItemData ( 275 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 10 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . PREDATOR , origin = { " ext " } ,
description = " Decreases Predator resource and supply cost. " ) ,
ItemNames . MEDIVAC_EXPANDED_HULL :
ItemData ( 276 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 11 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIVAC , origin = { " ext " } ,
description = " Increases Medivac cargo space by 4. " ) ,
ItemNames . MEDIVAC_AFTERBURNERS :
ItemData ( 277 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 12 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIVAC , origin = { " ext " } ,
description = " Ability. Temporarily increases the Medivac ' s movement speed by 70 % . " ) ,
ItemNames . WRAITH_ADVANCED_LASER_TECHNOLOGY :
ItemData ( 278 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 13 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . WRAITH , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Burst Lasers do more damage and can hit both ground and air targets .
Replaces Gemini Missiles weapon .
"""
) ) ,
ItemNames . VIKING_SMART_SERVOS :
ItemData ( 279 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 14 , SC2Race . TERRAN ,
parent_item = ItemNames . VIKING , origin = { " ext " } ,
description = SMART_SERVOS_DESCRIPTION ) ,
ItemNames . VIKING_ANTI_MECHANICAL_MUNITION :
ItemData ( 280 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 15 , SC2Race . TERRAN ,
parent_item = ItemNames . VIKING , origin = { " ext " } ,
description = " Increases Viking damage to mechanical units while in Assault Mode. " ) ,
ItemNames . DIAMONDBACK_ION_THRUSTERS :
ItemData ( 281 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 21 , SC2Race . TERRAN ,
parent_item = ItemNames . DIAMONDBACK , origin = { " ext " } ,
description = " Increases Diamondback movement speed. " ) ,
ItemNames . WARHOUND_RESOURCE_EFFICIENCY :
ItemData ( 282 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 13 , SC2Race . TERRAN ,
parent_item = ItemNames . WARHOUND , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_NO_SUPPLY_DESCRIPTION_TEMPLATE . format ( " Warhound " ) ) ,
ItemNames . WARHOUND_REINFORCED_PLATING :
ItemData ( 283 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 14 , SC2Race . TERRAN ,
parent_item = ItemNames . WARHOUND , origin = { " ext " } ,
description = " Increases Warhound armor by 2. " ) ,
ItemNames . HERC_RESOURCE_EFFICIENCY :
ItemData ( 284 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 15 , SC2Race . TERRAN ,
parent_item = ItemNames . HERC , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " HERC " ) ) ,
ItemNames . HERC_JUGGERNAUT_PLATING :
ItemData ( 285 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 16 , SC2Race . TERRAN ,
2024-03-28 14:38:34 +00:00
parent_item = ItemNames . HERC , origin = { " ext " } ,
2024-03-15 16:33:03 +00:00
description = " Increases HERC armor by 2. " ) ,
ItemNames . HERC_KINETIC_FOAM :
ItemData ( 286 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 17 , SC2Race . TERRAN ,
2024-03-28 14:38:34 +00:00
parent_item = ItemNames . HERC , origin = { " ext " } ,
2024-03-15 16:33:03 +00:00
description = " Increases HERC life by 50. " ) ,
ItemNames . HELLION_TWIN_LINKED_FLAMETHROWER :
ItemData ( 300 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 16 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . HELLION ,
description = " Doubles the width of the Hellion ' s flame attack. " ) ,
ItemNames . HELLION_THERMITE_FILAMENTS :
ItemData ( 301 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 17 , SC2Race . TERRAN ,
parent_item = ItemNames . HELLION ,
description = " Hellions do an additional 10 damage to Light Armor. " ) ,
ItemNames . SPIDER_MINE_CERBERUS_MINE :
ItemData ( 302 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 18 , SC2Race . TERRAN ,
classification = ItemClassification . filler ,
description = " Increases trigger and blast radius of Spider Mines. " ) ,
ItemNames . VULTURE_PROGRESSIVE_REPLENISHABLE_MAGAZINE :
ItemData ( 303 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 16 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . VULTURE , quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : Allows Vultures to replace used Spider Mines . Costs 15 minerals .
Level 2 : Replacing used Spider Mines no longer costs minerals .
"""
) ) ,
ItemNames . GOLIATH_MULTI_LOCK_WEAPONS_SYSTEM :
ItemData ( 304 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 19 , SC2Race . TERRAN ,
parent_item = ItemNames . GOLIATH ,
description = " Goliaths can attack both ground and air targets simultaneously. " ) ,
ItemNames . GOLIATH_ARES_CLASS_TARGETING_SYSTEM :
ItemData ( 305 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 20 , SC2Race . TERRAN ,
parent_item = ItemNames . GOLIATH ,
description = " Increases Goliath ground attack range by 1 and air by 3. " ) ,
ItemNames . DIAMONDBACK_PROGRESSIVE_TRI_LITHIUM_POWER_CELL :
ItemData ( 306 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade 2 " , 4 , SC2Race . TERRAN ,
parent_item = ItemNames . DIAMONDBACK , quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : Tri - Lithium Power Cell : Increases Diamondback attack range by 1.
Level 2 : Tungsten Spikes : Increases Diamondback attack range by 3.
"""
) ) ,
ItemNames . DIAMONDBACK_SHAPED_HULL :
ItemData ( 307 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 22 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . DIAMONDBACK ,
description = " Increases Diamondback life by 50. " ) ,
ItemNames . SIEGE_TANK_MAELSTROM_ROUNDS :
ItemData ( 308 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 23 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . SIEGE_TANK ,
description = " Siege Tanks do an additional 40 damage to the primary target in Siege Mode. " ) ,
ItemNames . SIEGE_TANK_SHAPED_BLAST :
ItemData ( 309 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 24 , SC2Race . TERRAN ,
parent_item = ItemNames . SIEGE_TANK ,
description = " Reduces splash damage to friendly targets while in Siege Mode by 75 % . " ) ,
ItemNames . MEDIVAC_RAPID_DEPLOYMENT_TUBE :
ItemData ( 310 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 25 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIVAC ,
description = " Medivacs deploy loaded troops almost instantly. " ) ,
ItemNames . MEDIVAC_ADVANCED_HEALING_AI :
ItemData ( 311 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 26 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . MEDIVAC ,
description = " Medivacs can heal two targets at once. " ) ,
ItemNames . WRAITH_PROGRESSIVE_TOMAHAWK_POWER_CELLS :
ItemData ( 312 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 18 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . WRAITH , quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : Tomahawk Power Cells : Increases Wraith starting energy by 100.
Level 2 : Unregistered Cloaking Module : Wraiths do not require energy to cloak and remain cloaked .
"""
) ) ,
ItemNames . WRAITH_DISPLACEMENT_FIELD :
ItemData ( 313 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 27 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . WRAITH ,
description = " Wraiths evade 20 % o f incoming attacks while cloaked. " ) ,
ItemNames . VIKING_RIPWAVE_MISSILES :
ItemData ( 314 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 28 , SC2Race . TERRAN ,
parent_item = ItemNames . VIKING ,
description = " Vikings do area damage while in Fighter Mode " ) ,
ItemNames . VIKING_PHOBOS_CLASS_WEAPONS_SYSTEM :
ItemData ( 315 + SC2WOL_ITEM_ID_OFFSET , " Armory 3 " , 29 , SC2Race . TERRAN ,
parent_item = ItemNames . VIKING ,
description = " Increases Viking attack range by 1 in Assault mode and 2 in Fighter mode. " ) ,
ItemNames . BANSHEE_PROGRESSIVE_CROSS_SPECTRUM_DAMPENERS :
ItemData ( 316 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 2 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . BANSHEE , quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : Banshees can remain cloaked twice as long .
Level 2 : Banshees do not require energy to cloak and remain cloaked .
"""
) ) ,
ItemNames . BANSHEE_SHOCKWAVE_MISSILE_BATTERY :
ItemData ( 317 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 0 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . BANSHEE ,
description = " Banshees do area damage in a straight line. " ) ,
ItemNames . BATTLECRUISER_PROGRESSIVE_MISSILE_PODS :
ItemData ( 318 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade 2 " , 2 , SC2Race . TERRAN ,
parent_item = ItemNames . BATTLECRUISER , quantity = 2 ,
description = " Spell. Missile Pods do damage to air targets in a target area. " ) ,
ItemNames . BATTLECRUISER_PROGRESSIVE_DEFENSIVE_MATRIX :
ItemData ( 319 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 20 , SC2Race . TERRAN ,
parent_item = ItemNames . BATTLECRUISER , quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : Spell . For 20 seconds the Battlecruiser gains a shield that can absorb up to 200 damage .
Level 2 : Passive . Battlecruiser gets 200 shields .
"""
) ) ,
ItemNames . GHOST_OCULAR_IMPLANTS :
ItemData ( 320 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 2 , SC2Race . TERRAN ,
parent_item = ItemNames . GHOST ,
description = " Increases Ghost sight range by 3 and attack range by 2. " ) ,
ItemNames . GHOST_CRIUS_SUIT :
ItemData ( 321 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 3 , SC2Race . TERRAN ,
parent_item = ItemNames . GHOST ,
description = " Cloak no longer requires energy to activate or maintain. " ) ,
ItemNames . SPECTRE_PSIONIC_LASH :
ItemData ( 322 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 4 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . SPECTRE ,
description = " Spell. Deals 200 damage to a single target. " ) ,
ItemNames . SPECTRE_NYX_CLASS_CLOAKING_MODULE :
ItemData ( 323 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 5 , SC2Race . TERRAN ,
parent_item = ItemNames . SPECTRE ,
description = " Cloak no longer requires energy to activate or maintain. " ) ,
ItemNames . THOR_330MM_BARRAGE_CANNON :
ItemData ( 324 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 6 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . THOR ,
description = inspect . cleandoc (
"""
Improves 250 mm Strike Cannons ability to deal area damage and stun units in a small area .
Can be also freely aimed on ground .
"""
) ) ,
ItemNames . THOR_PROGRESSIVE_IMMORTALITY_PROTOCOL :
ItemData ( 325 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 22 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . THOR , quantity = 2 ,
description = inspect . cleandoc ( """
Level 1 : Allows destroyed Thors to be reconstructed on the field . Costs Vespene Gas .
Level 2 : Thors are automatically reconstructed after falling for free .
"""
) ) ,
ItemNames . LIBERATOR_ADVANCED_BALLISTICS :
ItemData ( 326 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 7 , SC2Race . TERRAN ,
parent_item = ItemNames . LIBERATOR , origin = { " ext " } ,
description = " Increases Liberator range by 3 in Defender Mode. " ) ,
ItemNames . LIBERATOR_RAID_ARTILLERY :
ItemData ( 327 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 8 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . LIBERATOR , origin = { " nco " } ,
description = " Allows Liberators to attack structures while in Defender Mode. " ) ,
ItemNames . WIDOW_MINE_DRILLING_CLAWS :
ItemData ( 328 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 9 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . WIDOW_MINE , origin = { " ext " } ,
description = " Allows Widow Mines to burrow and unburrow faster. " ) ,
ItemNames . WIDOW_MINE_CONCEALMENT :
ItemData ( 329 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 10 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . WIDOW_MINE , origin = { " ext " } ,
description = " Burrowed Widow Mines are no longer revealed when the Sentinel Missile is on cooldown. " ) ,
ItemNames . MEDIVAC_ADVANCED_CLOAKING_FIELD :
ItemData ( 330 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 11 , SC2Race . TERRAN ,
parent_item = ItemNames . MEDIVAC , origin = { " ext " } ,
description = " Medivacs are permanently cloaked. " ) ,
ItemNames . WRAITH_TRIGGER_OVERRIDE :
ItemData ( 331 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 12 , SC2Race . TERRAN ,
parent_item = ItemNames . WRAITH , origin = { " ext " } ,
description = " Wraith attack speed increases by 10 % with each attack, up to a maximum of 100 % . " ) ,
ItemNames . WRAITH_INTERNAL_TECH_MODULE :
ItemData ( 332 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 13 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . WRAITH , origin = { " bw " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Wraiths " , " Starport " ) ) ,
ItemNames . WRAITH_RESOURCE_EFFICIENCY :
ItemData ( 333 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 14 , SC2Race . TERRAN ,
parent_item = ItemNames . WRAITH , origin = { " bw " } ,
description = RESOURCE_EFFICIENCY_NO_SUPPLY_DESCRIPTION_TEMPLATE . format ( " Wraith " ) ) ,
ItemNames . VIKING_SHREDDER_ROUNDS :
ItemData ( 334 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 15 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . VIKING , origin = { " ext " } ,
description = " Attacks in Assault mode do line splash damage. " ) ,
ItemNames . VIKING_WILD_MISSILES :
ItemData ( 335 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 16 , SC2Race . TERRAN ,
parent_item = ItemNames . VIKING , origin = { " ext " } ,
description = " Launches 5 rockets at the target unit. Each rocket does 25 (40 vs armored) damage. " ) ,
ItemNames . BANSHEE_SHAPED_HULL :
ItemData ( 336 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 17 , SC2Race . TERRAN ,
parent_item = ItemNames . BANSHEE , origin = { " ext " } ,
description = " Increases Banshee life by 100. " ) ,
ItemNames . BANSHEE_ADVANCED_TARGETING_OPTICS :
ItemData ( 337 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 18 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . BANSHEE , origin = { " ext " } ,
description = " Increases Banshee attack range by 2 while cloaked. " ) ,
ItemNames . BANSHEE_DISTORTION_BLASTERS :
ItemData ( 338 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 19 , SC2Race . TERRAN ,
parent_item = ItemNames . BANSHEE , origin = { " ext " } ,
description = " Increases Banshee attack damage by 25 % while cloaked. " ) ,
ItemNames . BANSHEE_ROCKET_BARRAGE :
ItemData ( 339 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 20 , SC2Race . TERRAN ,
parent_item = ItemNames . BANSHEE , origin = { " ext " } ,
description = " Deals 75 damage to enemy ground units in the target area. " ) ,
ItemNames . GHOST_RESOURCE_EFFICIENCY :
ItemData ( 340 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 21 , SC2Race . TERRAN ,
parent_item = ItemNames . GHOST , origin = { " bw " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Ghost " ) ) ,
ItemNames . SPECTRE_RESOURCE_EFFICIENCY :
ItemData ( 341 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 22 , SC2Race . TERRAN ,
parent_item = ItemNames . SPECTRE , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Spectre " ) ) ,
ItemNames . THOR_BUTTON_WITH_A_SKULL_ON_IT :
ItemData ( 342 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 23 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . THOR , origin = { " ext " } ,
description = " Allows Thors to launch nukes. " ) ,
ItemNames . THOR_LASER_TARGETING_SYSTEM :
ItemData ( 343 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 24 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . THOR , origin = { " ext " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . THOR_LARGE_SCALE_FIELD_CONSTRUCTION :
ItemData ( 344 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 25 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . THOR , origin = { " ext " } ,
description = " Allows Thors to be built by SCVs like a structure. " ) ,
ItemNames . RAVEN_RESOURCE_EFFICIENCY :
ItemData ( 345 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 26 , SC2Race . TERRAN ,
parent_item = ItemNames . RAVEN , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_NO_SUPPLY_DESCRIPTION_TEMPLATE . format ( " Raven " ) ) ,
ItemNames . RAVEN_DURABLE_MATERIALS :
ItemData ( 346 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 27 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . RAVEN , origin = { " ext " } ,
description = " Extends timed life duration of Raven ' s summoned objects. " ) ,
ItemNames . SCIENCE_VESSEL_IMPROVED_NANO_REPAIR :
ItemData ( 347 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 28 , SC2Race . TERRAN ,
parent_item = ItemNames . SCIENCE_VESSEL , origin = { " ext " } ,
description = " Nano-Repair no longer requires energy to use. " ) ,
ItemNames . SCIENCE_VESSEL_ADVANCED_AI_SYSTEMS :
ItemData ( 348 + SC2WOL_ITEM_ID_OFFSET , " Armory 4 " , 29 , SC2Race . TERRAN ,
parent_item = ItemNames . SCIENCE_VESSEL , origin = { " ext " } ,
description = " Science Vessel can use Nano-Repair at two targets at once. " ) ,
ItemNames . CYCLONE_RESOURCE_EFFICIENCY :
ItemData ( 349 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 0 , SC2Race . TERRAN ,
parent_item = ItemNames . CYCLONE , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Cyclone " ) ) ,
ItemNames . BANSHEE_HYPERFLIGHT_ROTORS :
ItemData ( 350 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . BANSHEE , origin = { " ext " } ,
description = " Increases Banshee movement speed. " ) ,
ItemNames . BANSHEE_LASER_TARGETING_SYSTEM :
ItemData ( 351 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 2 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . BANSHEE , origin = { " nco " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . BANSHEE_INTERNAL_TECH_MODULE :
ItemData ( 352 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 3 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . BANSHEE , origin = { " nco " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Banshees " , " Starport " ) ) ,
ItemNames . BATTLECRUISER_TACTICAL_JUMP :
ItemData ( 353 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 4 , SC2Race . TERRAN ,
parent_item = ItemNames . BATTLECRUISER , origin = { " nco " , " ext " } ,
description = inspect . cleandoc (
"""
Allows Battlecruisers to warp to a target location anywhere on the map .
"""
) ) ,
ItemNames . BATTLECRUISER_CLOAK :
ItemData ( 354 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 5 , SC2Race . TERRAN ,
parent_item = ItemNames . BATTLECRUISER , origin = { " nco " } ,
description = CLOAK_DESCRIPTION_TEMPLATE . format ( " Battlecruisers " ) ) ,
ItemNames . BATTLECRUISER_ATX_LASER_BATTERY :
ItemData ( 355 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 6 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . BATTLECRUISER , origin = { " nco " } ,
description = inspect . cleandoc (
"""
Battlecruisers can attack while moving ,
do the same damage to both ground and air targets , and fire faster .
"""
) ) ,
ItemNames . BATTLECRUISER_OPTIMIZED_LOGISTICS :
ItemData ( 356 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 7 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . BATTLECRUISER , origin = { " ext " } ,
description = " Increases Battlecruiser training speed. " ) ,
ItemNames . BATTLECRUISER_INTERNAL_TECH_MODULE :
ItemData ( 357 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 8 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . BATTLECRUISER , origin = { " nco " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Battlecruisers " , " Starport " ) ) ,
ItemNames . GHOST_EMP_ROUNDS :
ItemData ( 358 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 9 , SC2Race . TERRAN ,
parent_item = ItemNames . GHOST , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Spell . Does 100 damage to shields and drains all energy from units in the targeted area .
Cloaked units hit by EMP are revealed for a short time .
"""
) ) ,
ItemNames . GHOST_LOCKDOWN :
ItemData ( 359 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 10 , SC2Race . TERRAN ,
parent_item = ItemNames . GHOST , origin = { " bw " } ,
description = " Spell. Stuns a target mechanical unit for a long time. " ) ,
ItemNames . SPECTRE_IMPALER_ROUNDS :
ItemData ( 360 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 11 , SC2Race . TERRAN ,
parent_item = ItemNames . SPECTRE , origin = { " ext " } ,
description = " Spectres do additional damage to armored targets. " ) ,
ItemNames . THOR_PROGRESSIVE_HIGH_IMPACT_PAYLOAD :
ItemData ( 361 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 14 , SC2Race . TERRAN ,
parent_item = ItemNames . THOR , quantity = 2 , origin = { " ext " } ,
description = inspect . cleandoc (
f """
Level 1 : Allows Thors to transform in order to use an alternative air attack .
Level 2 : { SMART_SERVOS_DESCRIPTION }
"""
) ) ,
ItemNames . RAVEN_BIO_MECHANICAL_REPAIR_DRONE :
ItemData ( 363 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 12 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . RAVEN , origin = { " nco " } ,
description = " Spell. Deploys a drone that can heal biological or mechanical units. " ) ,
ItemNames . RAVEN_SPIDER_MINES :
ItemData ( 364 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 13 , SC2Race . TERRAN ,
parent_item = ItemNames . RAVEN , origin = { " nco " } , important_for_filtering = True ,
description = " Spell. Deploys 3 Spider Mines to a target location. " ) ,
ItemNames . RAVEN_RAILGUN_TURRET :
ItemData ( 365 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 14 , SC2Race . TERRAN ,
parent_item = ItemNames . RAVEN , origin = { " nco " } ,
description = inspect . cleandoc (
"""
Spell . Allows Ravens to deploy an advanced Auto - Turret ,
that can attack enemy ground units in a straight line .
"""
) ) ,
ItemNames . RAVEN_HUNTER_SEEKER_WEAPON :
ItemData ( 366 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 15 , SC2Race . TERRAN ,
classification = ItemClassification . progression , parent_item = ItemNames . RAVEN , origin = { " nco " } ,
description = " Allows Ravens to attack with a Hunter-Seeker weapon. " ) ,
ItemNames . RAVEN_INTERFERENCE_MATRIX :
ItemData ( 367 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 16 , SC2Race . TERRAN ,
parent_item = ItemNames . RAVEN , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Spell . Target enemy Mechanical or Psionic unit can ' t attack or use abilities for a short duration.
"""
) ) ,
ItemNames . RAVEN_ANTI_ARMOR_MISSILE :
ItemData ( 368 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 17 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . RAVEN , origin = { " ext " } ,
description = " Spell. Decreases target and nearby enemy units armor by 2. " ) ,
ItemNames . RAVEN_INTERNAL_TECH_MODULE :
ItemData ( 369 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 18 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . RAVEN , origin = { " nco " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Ravens " , " Starport " ) ) ,
ItemNames . SCIENCE_VESSEL_EMP_SHOCKWAVE :
ItemData ( 370 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 19 , SC2Race . TERRAN ,
parent_item = ItemNames . SCIENCE_VESSEL , origin = { " bw " } ,
description = " Spell. Depletes all energy and shields of all units in a target area. " ) ,
ItemNames . SCIENCE_VESSEL_DEFENSIVE_MATRIX :
ItemData ( 371 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 20 , SC2Race . TERRAN ,
parent_item = ItemNames . SCIENCE_VESSEL , origin = { " bw " } ,
description = inspect . cleandoc (
"""
Spell . Provides a target unit with a defensive barrier that can absorb up to 250 damage
"""
) ) ,
ItemNames . CYCLONE_TARGETING_OPTICS :
ItemData ( 372 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 21 , SC2Race . TERRAN ,
parent_item = ItemNames . CYCLONE , origin = { " ext " } ,
description = " Increases Cyclone Lock On casting range and the range while Locked On. " ) ,
ItemNames . CYCLONE_RAPID_FIRE_LAUNCHERS :
ItemData ( 373 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 22 , SC2Race . TERRAN ,
parent_item = ItemNames . CYCLONE , origin = { " ext " } ,
description = " The first 12 shots of Lock On are fired more quickly. " ) ,
ItemNames . LIBERATOR_CLOAK :
ItemData ( 374 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 23 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . LIBERATOR , origin = { " nco " } ,
description = CLOAK_DESCRIPTION_TEMPLATE . format ( " Liberators " ) ) ,
ItemNames . LIBERATOR_LASER_TARGETING_SYSTEM :
ItemData ( 375 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 24 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . LIBERATOR , origin = { " ext " } ,
description = LASER_TARGETING_SYSTEMS_DESCRIPTION ) ,
ItemNames . LIBERATOR_OPTIMIZED_LOGISTICS :
ItemData ( 376 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 25 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . LIBERATOR , origin = { " nco " } ,
description = " Increases Liberator training speed. " ) ,
ItemNames . WIDOW_MINE_BLACK_MARKET_LAUNCHERS :
ItemData ( 377 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 26 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . WIDOW_MINE , origin = { " ext " } ,
description = " Increases Widow Mine Sentinel Missile range. " ) ,
ItemNames . WIDOW_MINE_EXECUTIONER_MISSILES :
ItemData ( 378 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 27 , SC2Race . TERRAN ,
parent_item = ItemNames . WIDOW_MINE , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Reduces Sentinel Missile cooldown .
When killed , Widow Mines will launch several missiles at random enemy targets .
"""
) ) ,
ItemNames . VALKYRIE_ENHANCED_CLUSTER_LAUNCHERS :
ItemData ( 379 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 28 ,
SC2Race . TERRAN , parent_item = ItemNames . VALKYRIE , origin = { " ext " } ,
description = " Valkyries fire 2 additional rockets each volley. " ) ,
ItemNames . VALKYRIE_SHAPED_HULL :
ItemData ( 380 + SC2WOL_ITEM_ID_OFFSET , " Armory 5 " , 29 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . VALKYRIE , origin = { " ext " } ,
description = " Increases Valkyrie life by 50. " ) ,
ItemNames . VALKYRIE_FLECHETTE_MISSILES :
ItemData ( 381 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 0 , SC2Race . TERRAN ,
parent_item = ItemNames . VALKYRIE , origin = { " ext " } ,
description = " Equips Valkyries with Air-to-Surface missiles to attack ground units. " ) ,
ItemNames . VALKYRIE_AFTERBURNERS :
ItemData ( 382 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . VALKYRIE , origin = { " ext " } ,
description = " Ability. Temporarily increases the Valkyries ' s movement speed by 70 % . " ) ,
ItemNames . CYCLONE_INTERNAL_TECH_MODULE :
ItemData ( 383 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 2 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . CYCLONE , origin = { " ext " } ,
description = INTERNAL_TECH_MODULE_DESCRIPTION_TEMPLATE . format ( " Cyclones " , " Factory " ) ) ,
ItemNames . LIBERATOR_SMART_SERVOS :
ItemData ( 384 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 3 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . LIBERATOR , origin = { " nco " } ,
description = SMART_SERVOS_DESCRIPTION ) ,
ItemNames . LIBERATOR_RESOURCE_EFFICIENCY :
ItemData ( 385 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 4 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . LIBERATOR , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_NO_SUPPLY_DESCRIPTION_TEMPLATE . format ( " Liberator " ) ) ,
ItemNames . HERCULES_INTERNAL_FUSION_MODULE :
ItemData ( 386 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 5 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . HERCULES , origin = { " ext " } ,
description = " Hercules can be trained from a Starport without having a Fusion Core. " ) ,
ItemNames . HERCULES_TACTICAL_JUMP :
ItemData ( 387 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 6 , SC2Race . TERRAN ,
parent_item = ItemNames . HERCULES , origin = { " ext " } ,
description = inspect . cleandoc (
"""
Allows Hercules to warp to a target location anywhere on the map .
"""
) ) ,
ItemNames . PLANETARY_FORTRESS_PROGRESSIVE_AUGMENTED_THRUSTERS :
ItemData ( 388 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 28 , SC2Race . TERRAN ,
parent_item = ItemNames . PLANETARY_FORTRESS , origin = { " ext " } , quantity = 2 ,
description = inspect . cleandoc (
"""
Level 1 : Lift Off - Planetary Fortress can lift off .
Level 2 : Armament Stabilizers - Planetary Fortress can attack while lifted off .
"""
) ) ,
ItemNames . PLANETARY_FORTRESS_ADVANCED_TARGETING :
ItemData ( 389 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 7 , SC2Race . TERRAN ,
parent_item = ItemNames . PLANETARY_FORTRESS , origin = { " ext " } ,
description = " Planetary Fortress can attack air units. " ) ,
ItemNames . VALKYRIE_LAUNCHING_VECTOR_COMPENSATOR :
ItemData ( 390 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 8 , SC2Race . TERRAN ,
classification = ItemClassification . filler , parent_item = ItemNames . VALKYRIE , origin = { " ext " } ,
description = " Allows Valkyries to shoot air while moving. " ) ,
ItemNames . VALKYRIE_RESOURCE_EFFICIENCY :
ItemData ( 391 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 9 , SC2Race . TERRAN ,
parent_item = ItemNames . VALKYRIE , origin = { " ext " } ,
description = RESOURCE_EFFICIENCY_DESCRIPTION_TEMPLATE . format ( " Valkyrie " ) ) ,
ItemNames . PREDATOR_PREDATOR_S_FURY :
ItemData ( 392 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 10 , SC2Race . TERRAN ,
parent_item = ItemNames . PREDATOR , origin = { " ext " } ,
description = " Predators can use an attack that jumps between targets. " ) ,
ItemNames . BATTLECRUISER_BEHEMOTH_PLATING :
ItemData ( 393 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 11 , SC2Race . TERRAN ,
parent_item = ItemNames . BATTLECRUISER , origin = { " ext " } ,
description = " Increases Battlecruiser armor by 2. " ) ,
ItemNames . BATTLECRUISER_COVERT_OPS_ENGINES :
ItemData ( 394 + SC2WOL_ITEM_ID_OFFSET , " Armory 6 " , 12 , SC2Race . TERRAN ,
parent_item = ItemNames . BATTLECRUISER , origin = { " nco " } ,
description = " Increases Battlecruiser movement speed. " ) ,
#Buildings
ItemNames . BUNKER :
ItemData ( 400 + SC2WOL_ITEM_ID_OFFSET , " Building " , 0 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Defensive structure. Able to load infantry units, giving them +1 range to their attacks. " ) ,
ItemNames . MISSILE_TURRET :
ItemData ( 401 + SC2WOL_ITEM_ID_OFFSET , " Building " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Anti-air defensive structure. " ) ,
ItemNames . SENSOR_TOWER :
ItemData ( 402 + SC2WOL_ITEM_ID_OFFSET , " Building " , 2 , SC2Race . TERRAN ,
description = " Reveals locations of enemy units at long range. " ) ,
ItemNames . WAR_PIGS :
ItemData ( 500 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 0 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Mercenary Marines " ) ,
ItemNames . DEVIL_DOGS :
ItemData ( 501 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 1 , SC2Race . TERRAN ,
classification = ItemClassification . filler ,
description = " Mercenary Firebats " ) ,
ItemNames . HAMMER_SECURITIES :
ItemData ( 502 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 2 , SC2Race . TERRAN ,
description = " Mercenary Marauders " ) ,
ItemNames . SPARTAN_COMPANY :
ItemData ( 503 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 3 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Mercenary Goliaths " ) ,
ItemNames . SIEGE_BREAKERS :
ItemData ( 504 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 4 , SC2Race . TERRAN ,
description = " Mercenary Siege Tanks " ) ,
ItemNames . HELS_ANGELS :
ItemData ( 505 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 5 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Mercenary Vikings " ) ,
ItemNames . DUSK_WINGS :
ItemData ( 506 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 6 , SC2Race . TERRAN ,
description = " Mercenary Banshees " ) ,
ItemNames . JACKSONS_REVENGE :
ItemData ( 507 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 7 , SC2Race . TERRAN ,
description = " Mercenary Battlecruiser " ) ,
ItemNames . SKIBIS_ANGELS :
ItemData ( 508 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 8 , SC2Race . TERRAN ,
origin = { " ext " } ,
description = " Mercenary Medics " ) ,
ItemNames . DEATH_HEADS :
ItemData ( 509 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 9 , SC2Race . TERRAN ,
origin = { " ext " } ,
description = " Mercenary Reapers " ) ,
ItemNames . WINGED_NIGHTMARES :
ItemData ( 510 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 10 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Mercenary Wraiths " ) ,
ItemNames . MIDNIGHT_RIDERS :
ItemData ( 511 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 11 , SC2Race . TERRAN ,
origin = { " ext " } ,
description = " Mercenary Liberators " ) ,
ItemNames . BRYNHILDS :
ItemData ( 512 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 12 , SC2Race . TERRAN ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Mercenary Valkyries " ) ,
ItemNames . JOTUN :
ItemData ( 513 + SC2WOL_ITEM_ID_OFFSET , " Mercenary " , 13 , SC2Race . TERRAN ,
origin = { " ext " } ,
description = " Mercenary Thor " ) ,
ItemNames . ULTRA_CAPACITORS :
ItemData ( 600 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 0 , SC2Race . TERRAN ,
description = " Increases attack speed of units by 5 % per weapon upgrade. " ) ,
ItemNames . VANADIUM_PLATING :
ItemData ( 601 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 1 , SC2Race . TERRAN ,
description = " Increases the life of units by 5 % per armor upgrade. " ) ,
ItemNames . ORBITAL_DEPOTS :
ItemData ( 602 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 2 , SC2Race . TERRAN ,
description = " Supply depots are built instantly. " ) ,
ItemNames . MICRO_FILTERING :
ItemData ( 603 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 3 , SC2Race . TERRAN ,
description = " Refineries produce Vespene gas 25 % f aster. " ) ,
ItemNames . AUTOMATED_REFINERY :
ItemData ( 604 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 4 , SC2Race . TERRAN ,
description = " Eliminates the need for SCVs in vespene gas production. " ) ,
ItemNames . COMMAND_CENTER_REACTOR :
ItemData ( 605 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 5 , SC2Race . TERRAN ,
description = " Command Centers can train two SCVs at once. " ) ,
ItemNames . RAVEN :
ItemData ( 606 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 22 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Aerial Caster unit. " ) ,
ItemNames . SCIENCE_VESSEL :
ItemData ( 607 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 23 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Aerial Caster unit. Can repair mechanical units. " ) ,
ItemNames . TECH_REACTOR :
ItemData ( 608 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 6 , SC2Race . TERRAN ,
description = " Merges Tech Labs and Reactors into one add on structure to provide both functions. " ) ,
ItemNames . ORBITAL_STRIKE :
ItemData ( 609 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 7 , SC2Race . TERRAN ,
description = " Trained units from Barracks are instantly deployed on rally point. " ) ,
ItemNames . BUNKER_SHRIKE_TURRET :
ItemData ( 610 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 6 , SC2Race . TERRAN ,
parent_item = ItemNames . BUNKER ,
description = " Adds an automated turret to Bunkers. " ) ,
ItemNames . BUNKER_FORTIFIED_BUNKER :
ItemData ( 611 + SC2WOL_ITEM_ID_OFFSET , " Armory 1 " , 7 , SC2Race . TERRAN ,
parent_item = ItemNames . BUNKER ,
description = " Bunkers have more life. " ) ,
ItemNames . PLANETARY_FORTRESS :
ItemData ( 612 + SC2WOL_ITEM_ID_OFFSET , " Building " , 3 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Allows Command Centers to upgrade into a defensive structure with a turret and additional armor .
Planetary Fortresses cannot Lift Off , or cast Orbital Command spells .
"""
) ) ,
ItemNames . PERDITION_TURRET :
ItemData ( 613 + SC2WOL_ITEM_ID_OFFSET , " Building " , 4 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Automated defensive turret. Burrows down while no enemies are nearby. " ) ,
ItemNames . PREDATOR :
ItemData ( 614 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 24 , SC2Race . TERRAN ,
classification = ItemClassification . filler ,
description = " Anti-infantry specialist that deals area damage with each attack. " ) ,
ItemNames . HERCULES :
ItemData ( 615 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 25 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Massive transport ship. " ) ,
ItemNames . CELLULAR_REACTOR :
ItemData ( 616 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 8 , SC2Race . TERRAN ,
description = " All Terran spellcasters get +100 starting and maximum energy. " ) ,
ItemNames . PROGRESSIVE_REGENERATIVE_BIO_STEEL :
ItemData ( 617 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade " , 4 , SC2Race . TERRAN , quantity = 3 ,
classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Allows Terran mechanical units to regenerate health while not in combat .
Each level increases life regeneration speed .
"""
) ) ,
ItemNames . HIVE_MIND_EMULATOR :
ItemData ( 618 + SC2WOL_ITEM_ID_OFFSET , " Building " , 5 , SC2Race . TERRAN ,
ItemClassification . progression ,
description = " Defensive structure. Can permanently Mind Control Zerg units. " ) ,
ItemNames . PSI_DISRUPTER :
ItemData ( 619 + SC2WOL_ITEM_ID_OFFSET , " Building " , 6 , SC2Race . TERRAN ,
classification = ItemClassification . progression ,
description = " Defensive structure. Slows the attack and movement speeds of all nearby Zerg units. " ) ,
ItemNames . STRUCTURE_ARMOR :
ItemData ( 620 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 9 , SC2Race . TERRAN ,
2024-09-26 22:57:21 +00:00
description = " Increases armor of all Terran structures by 2. " , origin = { " ext " } ) ,
2024-03-15 16:33:03 +00:00
ItemNames . HI_SEC_AUTO_TRACKING :
ItemData ( 621 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 10 , SC2Race . TERRAN ,
2024-09-26 22:57:21 +00:00
description = " Increases attack range of all Terran structures by 1. " , origin = { " ext " } ) ,
2024-03-15 16:33:03 +00:00
ItemNames . ADVANCED_OPTICS :
ItemData ( 622 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 11 , SC2Race . TERRAN ,
2024-09-26 22:57:21 +00:00
description = " Increases attack range of all Terran mechanical units by 1. " , origin = { " ext " } ) ,
2024-03-15 16:33:03 +00:00
ItemNames . ROGUE_FORCES :
ItemData ( 623 + SC2WOL_ITEM_ID_OFFSET , " Laboratory " , 12 , SC2Race . TERRAN ,
2024-09-26 22:57:21 +00:00
description = " Mercenary calldowns are no longer limited by charges. " , origin = { " ext " } ) ,
2024-03-15 16:33:03 +00:00
ItemNames . ZEALOT :
ItemData ( 700 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 0 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Powerful melee warrior. Can use the charge ability. " ) ,
ItemNames . STALKER :
ItemData ( 701 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 1 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Ranged attack strider. Can use the Blink ability. " ) ,
ItemNames . HIGH_TEMPLAR :
ItemData ( 702 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 2 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Potent psionic master. Can use the Feedback and Psionic Storm abilities. Can merge into an Archon. " ) ,
ItemNames . DARK_TEMPLAR :
ItemData ( 703 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 3 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Deadly warrior-assassin. Permanently cloaked. Can use the Shadow Fury ability. " ) ,
ItemNames . IMMORTAL :
ItemData ( 704 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 4 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Assault strider. Can use Barrier to absorb damage. " ) ,
ItemNames . COLOSSUS :
ItemData ( 705 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 5 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Battle strider with a powerful area attack. Can walk up and down cliffs. Attacks set fire to the ground, dealing extra damage to enemies over time. " ) ,
ItemNames . PHOENIX :
ItemData ( 706 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 6 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Air superiority starfighter. Can use Graviton Beam and Phasing Armor abilities. " ) ,
ItemNames . VOID_RAY :
ItemData ( 707 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 7 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Surgical strike craft. Has the Prismatic Alignment and Prismatic Range abilities. " ) ,
ItemNames . CARRIER :
ItemData ( 708 + SC2WOL_ITEM_ID_OFFSET , " Unit " , 8 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " wol " , " lotv " } ,
description = " Capital ship. Builds and launches Interceptors that attack enemy targets. Repair Drones heal nearby mechanical units. " ) ,
# Filler items to fill remaining spots
ItemNames . STARTING_MINERALS :
ItemData ( 800 + SC2WOL_ITEM_ID_OFFSET , " Minerals " , 15 , SC2Race . ANY , quantity = 0 ,
classification = ItemClassification . filler ,
description = " Increases the starting minerals for all missions. " ) ,
ItemNames . STARTING_VESPENE :
ItemData ( 801 + SC2WOL_ITEM_ID_OFFSET , " Vespene " , 15 , SC2Race . ANY , quantity = 0 ,
classification = ItemClassification . filler ,
description = " Increases the starting vespene for all missions. " ) ,
ItemNames . STARTING_SUPPLY :
ItemData ( 802 + SC2WOL_ITEM_ID_OFFSET , " Supply " , 2 , SC2Race . ANY , quantity = 0 ,
classification = ItemClassification . filler ,
description = " Increases the starting supply for all missions. " ) ,
# This item is used to "remove" location from the game. Never placed unless plando'd
ItemNames . NOTHING :
ItemData ( 803 + SC2WOL_ITEM_ID_OFFSET , " Nothing Group " , 2 , SC2Race . ANY , quantity = 0 ,
classification = ItemClassification . trap ,
description = " Does nothing. Used to remove a location from the game. " ) ,
# Nova gear
ItemNames . NOVA_GHOST_VISOR :
ItemData ( 900 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 0 , SC2Race . TERRAN , origin = { " nco " } ,
description = " Reveals the locations of enemy units in the fog of war around Nova. Can detect cloaked units. " ) ,
ItemNames . NOVA_RANGEFINDER_OCULUS :
ItemData ( 901 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 1 , SC2Race . TERRAN , origin = { " nco " } ,
description = " Increaases Nova ' s vision range and non-melee weapon attack range by 2. Also increases range of melee weapons by 1. " ) ,
ItemNames . NOVA_DOMINATION :
ItemData ( 902 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 2 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to mind-control a target enemy unit. " ) ,
ItemNames . NOVA_BLINK :
ItemData ( 903 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 3 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to teleport a short distance and cloak for 10s. " ) ,
ItemNames . NOVA_PROGRESSIVE_STEALTH_SUIT_MODULE :
ItemData ( 904 + SC2WOL_ITEM_ID_OFFSET , " Progressive Upgrade 2 " , 0 , SC2Race . TERRAN , quantity = 2 , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = inspect . cleandoc (
"""
Level 1 : Gives Nova the ability to cloak .
Level 2 : Nova is permanently cloaked .
"""
) ) ,
ItemNames . NOVA_ENERGY_SUIT_MODULE :
ItemData ( 905 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 4 , SC2Race . TERRAN , origin = { " nco " } ,
description = " Increases Nova ' s maximum energy and energy regeneration rate. " ) ,
ItemNames . NOVA_ARMORED_SUIT_MODULE :
ItemData ( 906 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 5 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Increases Nova ' s health by 100 and armour by 1. Nova also regenerates life quickly out of combat. " ) ,
ItemNames . NOVA_JUMP_SUIT_MODULE :
ItemData ( 907 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 6 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Increases Nova ' s movement speed and allows her to jump up and down cliffs. " ) ,
ItemNames . NOVA_C20A_CANISTER_RIFLE :
ItemData ( 908 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 7 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Allows Nova to equip the C20A Canister Rifle, which has a ranged attack and allows Nova to cast Snipe. " ) ,
ItemNames . NOVA_HELLFIRE_SHOTGUN :
ItemData ( 909 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 8 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Allows Nova to equip the Hellfire Shotgun, which has a short-range area attack in a cone and allows Nova to cast Penetrating Blast. " ) ,
ItemNames . NOVA_PLASMA_RIFLE :
ItemData ( 910 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 9 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Allows Nova to equip the Plasma Rifle, which has a rapidfire ranged attack and allows Nova to cast Plasma Shot. " ) ,
ItemNames . NOVA_MONOMOLECULAR_BLADE :
ItemData ( 911 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 10 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Allows Nova to equip the Monomolecular Blade, which has a melee attack and allows Nova to cast Dash Attack. " ) ,
ItemNames . NOVA_BLAZEFIRE_GUNBLADE :
ItemData ( 912 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 11 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Allows Nova to equip the Blazefire Gunblade, which has a melee attack and allows Nova to cast Fury of One. " ) ,
ItemNames . NOVA_STIM_INFUSION :
ItemData ( 913 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 12 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to heal herself and temporarily increase her movement and attack speeds. " ) ,
ItemNames . NOVA_PULSE_GRENADES :
ItemData ( 914 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 13 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to throw a grenade dealing large damage in an area. " ) ,
ItemNames . NOVA_FLASHBANG_GRENADES :
ItemData ( 915 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 14 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to throw a grenade to stun enemies and disable detection in a large area. " ) ,
ItemNames . NOVA_IONIC_FORCE_FIELD :
ItemData ( 916 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 15 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to shield herself temporarily. " ) ,
ItemNames . NOVA_HOLO_DECOY :
ItemData ( 917 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 16 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to summon a decoy unit which enemies will prefer to target and takes reduced damage. " ) ,
ItemNames . NOVA_NUKE :
ItemData ( 918 + SC2WOL_ITEM_ID_OFFSET , " Nova Gear " , 17 , SC2Race . TERRAN , origin = { " nco " } ,
classification = ItemClassification . progression ,
description = " Gives Nova the ability to launch tactical nukes built from the Shadow Ops. " ) ,
# HotS
ItemNames . ZERGLING :
ItemData ( 0 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 0 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Fast inexpensive melee attacker. Hatches in pairs from a single larva. Can morph into a Baneling. " ) ,
ItemNames . SWARM_QUEEN :
ItemData ( 1 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 1 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Ranged support caster. Can use the Spawn Creep Tumor and Rapid Transfusion abilities. " ) ,
ItemNames . ROACH :
ItemData ( 2 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 2 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Durable short ranged attacker. Regenerates life quickly when burrowed. " ) ,
ItemNames . HYDRALISK :
ItemData ( 3 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 3 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " High-damage generalist ranged attacker. " ) ,
ItemNames . ZERGLING_BANELING_ASPECT :
ItemData ( 4 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 5 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Anti-ground suicide unit. Does damage over a small area on death. " ) ,
ItemNames . ABERRATION :
ItemData ( 5 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 5 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Durable melee attacker that deals heavy damage and can walk over other units. " ) ,
ItemNames . MUTALISK :
ItemData ( 6 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 6 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Fragile flying attacker. Attacks bounce between targets. " ) ,
ItemNames . SWARM_HOST :
ItemData ( 7 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 7 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Siege unit that attacks by rooting in place and continually spawning Locusts. " ) ,
ItemNames . INFESTOR :
ItemData ( 8 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 8 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Support caster that can move while burrowed. Can use the Fungal Growth, Parasitic Domination, and Consumption abilities. " ) ,
ItemNames . ULTRALISK :
ItemData ( 9 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 9 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Massive melee attacker. Has an area-damage cleave attack. " ) ,
ItemNames . SPORE_CRAWLER :
ItemData ( 10 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 10 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Anti-air defensive structure that can detect cloaked units. " ) ,
ItemNames . SPINE_CRAWLER :
ItemData ( 11 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 11 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " hots " } ,
description = " Anti-ground defensive structure. " ) ,
ItemNames . CORRUPTOR :
ItemData ( 12 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 12 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Anti-air flying attacker specializing in taking down enemy capital ships. " ) ,
ItemNames . SCOURGE :
ItemData ( 13 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 13 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " bw " , " ext " } ,
description = " Flying anti-air suicide unit. Hatches in pairs from a single larva. " ) ,
ItemNames . BROOD_QUEEN :
ItemData ( 14 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 4 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " bw " , " ext " } ,
description = " Flying support caster. Can cast the Ocular Symbiote and Spawn Broodlings abilities. " ) ,
ItemNames . DEFILER :
ItemData ( 15 + SC2HOTS_ITEM_ID_OFFSET , " Unit " , 14 , SC2Race . ZERG ,
classification = ItemClassification . progression , origin = { " bw " } ,
description = " Support caster. Can use the Dark Swarm, Consume, and Plague abilities. " ) ,
ItemNames . PROGRESSIVE_ZERG_MELEE_ATTACK : ItemData ( 100 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 0 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_MISSILE_ATTACK : ItemData ( 101 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 2 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_GROUND_CARAPACE : ItemData ( 102 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 4 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_FLYER_ATTACK : ItemData ( 103 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 6 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_FLYER_CARAPACE : ItemData ( 104 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 8 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
# Upgrade bundle 'number' values are used as indices to get affected 'number's
ItemNames . PROGRESSIVE_ZERG_WEAPON_UPGRADE : ItemData ( 105 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 6 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_ARMOR_UPGRADE : ItemData ( 106 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 7 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_GROUND_UPGRADE : ItemData ( 107 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 8 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_FLYER_UPGRADE : ItemData ( 108 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 9 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . PROGRESSIVE_ZERG_WEAPON_ARMOR_UPGRADE : ItemData ( 109 + SC2HOTS_ITEM_ID_OFFSET , " Upgrade " , 10 , SC2Race . ZERG , quantity = 3 , origin = { " hots " } ) ,
ItemNames . ZERGLING_HARDENED_CARAPACE :
ItemData ( 200 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 0 , SC2Race . ZERG , parent_item = ItemNames . ZERGLING ,
origin = { " hots " } , description = " Increases Zergling health by +10. " ) ,
ItemNames . ZERGLING_ADRENAL_OVERLOAD :
ItemData ( 201 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 1 , SC2Race . ZERG , parent_item = ItemNames . ZERGLING ,
origin = { " hots " } , description = " Increases Zergling attack speed. " ) ,
ItemNames . ZERGLING_METABOLIC_BOOST :
ItemData ( 202 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 2 , SC2Race . ZERG , parent_item = ItemNames . ZERGLING ,
origin = { " hots " } , classification = ItemClassification . filler ,
description = " Increases Zergling movement speed. " ) ,
ItemNames . ROACH_HYDRIODIC_BILE :
ItemData ( 203 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 3 , SC2Race . ZERG , parent_item = ItemNames . ROACH ,
origin = { " hots " } , description = " Roaches deal +8 damage to light targets. " ) ,
ItemNames . ROACH_ADAPTIVE_PLATING :
ItemData ( 204 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 4 , SC2Race . ZERG , parent_item = ItemNames . ROACH ,
origin = { " hots " } , description = " Roaches gain +3 armour when their life is below 50 % . " ) ,
ItemNames . ROACH_TUNNELING_CLAWS :
ItemData ( 205 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 5 , SC2Race . ZERG , parent_item = ItemNames . ROACH ,
origin = { " hots " } , classification = ItemClassification . filler ,
description = " Allows Roaches to move while burrowed. " ) ,
ItemNames . HYDRALISK_FRENZY :
ItemData ( 206 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 6 , SC2Race . ZERG , parent_item = ItemNames . HYDRALISK ,
origin = { " hots " } ,
description = " Allows Hydralisks to use the Frenzy ability, which increases their attack speed by 50 % . " ) ,
ItemNames . HYDRALISK_ANCILLARY_CARAPACE :
ItemData ( 207 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 7 , SC2Race . ZERG , parent_item = ItemNames . HYDRALISK ,
origin = { " hots " } , classification = ItemClassification . filler , description = " Hydralisks gain +20 health. " ) ,
ItemNames . HYDRALISK_GROOVED_SPINES :
ItemData ( 208 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 8 , SC2Race . ZERG , parent_item = ItemNames . HYDRALISK ,
origin = { " hots " } , description = " Hydralisks gain +1 range. " ) ,
ItemNames . BANELING_CORROSIVE_ACID :
ItemData ( 209 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 9 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " hots " } ,
description = " Increases the damage banelings deal to their primary target. Splash damage remains the same. " ) ,
ItemNames . BANELING_RUPTURE :
ItemData ( 210 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 10 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " hots " } ,
classification = ItemClassification . filler ,
description = " Increases the splash radius of baneling attacks. " ) ,
ItemNames . BANELING_REGENERATIVE_ACID :
ItemData ( 211 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 11 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " hots " } ,
classification = ItemClassification . filler ,
description = " Banelings will heal nearby friendly units when they explode. " ) ,
ItemNames . MUTALISK_VICIOUS_GLAIVE :
ItemData ( 212 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 12 , SC2Race . ZERG , parent_item = ItemNames . MUTALISK ,
origin = { " hots " } , description = " Mutalisks attacks will bounce an additional 3 times. " ) ,
ItemNames . MUTALISK_RAPID_REGENERATION :
ItemData ( 213 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 13 , SC2Race . ZERG , parent_item = ItemNames . MUTALISK ,
origin = { " hots " } , description = " Mutalisks will regenerate quickly when out of combat. " ) ,
ItemNames . MUTALISK_SUNDERING_GLAIVE :
ItemData ( 214 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 14 , SC2Race . ZERG , parent_item = ItemNames . MUTALISK ,
origin = { " hots " } , description = " Mutalisks deal increased damage to their primary target. " ) ,
ItemNames . SWARM_HOST_BURROW :
ItemData ( 215 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 15 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " hots " } , classification = ItemClassification . filler ,
description = " Allows Swarm Hosts to burrow instead of root to spawn locusts. " ) ,
ItemNames . SWARM_HOST_RAPID_INCUBATION :
ItemData ( 216 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 16 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " hots " } , description = " Swarm Hosts will spawn locusts 20 % f aster. " ) ,
ItemNames . SWARM_HOST_PRESSURIZED_GLANDS :
ItemData ( 217 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 17 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " hots " } , classification = ItemClassification . progression ,
description = " Allows Swarm Host Locusts to attack air targets. " ) ,
ItemNames . ULTRALISK_BURROW_CHARGE :
ItemData ( 218 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 18 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " hots " } ,
description = " Allows Ultralisks to burrow and charge at enemy units, knocking back and stunning units when it emerges. " ) ,
ItemNames . ULTRALISK_TISSUE_ASSIMILATION :
ItemData ( 219 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 19 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " hots " } , description = " Ultralisks recover health when they deal damage. " ) ,
ItemNames . ULTRALISK_MONARCH_BLADES :
ItemData ( 220 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 20 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " hots " } , description = " Ultralisks gain increased splash damage. " ) ,
ItemNames . CORRUPTOR_CAUSTIC_SPRAY :
ItemData ( 221 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 21 , SC2Race . ZERG , parent_item = ItemNames . CORRUPTOR ,
origin = { " ext " } ,
description = " Allows Corruptors to use the Caustic Spray ability, which deals ramping damage to buildings over time. " ) ,
ItemNames . CORRUPTOR_CORRUPTION :
ItemData ( 222 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 22 , SC2Race . ZERG , parent_item = ItemNames . CORRUPTOR ,
origin = { " ext " } ,
description = " Allows Corruptors to use the Corruption ability, which causes a target enemy unit to take increased damage. " ) ,
ItemNames . SCOURGE_VIRULENT_SPORES :
ItemData ( 223 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 23 , SC2Race . ZERG , parent_item = ItemNames . SCOURGE ,
origin = { " ext " } , description = " Scourge will deal splash damage. " ) ,
ItemNames . SCOURGE_RESOURCE_EFFICIENCY :
ItemData ( 224 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 24 , SC2Race . ZERG , parent_item = ItemNames . SCOURGE ,
origin = { " ext " } , classification = ItemClassification . progression ,
description = " Reduces the cost of Scourge by 50 gas per egg. " ) ,
ItemNames . SCOURGE_SWARM_SCOURGE :
ItemData ( 225 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 25 , SC2Race . ZERG , parent_item = ItemNames . SCOURGE ,
origin = { " ext " } , description = " An extra Scourge will be built from each egg at no additional cost. " ) ,
ItemNames . ZERGLING_SHREDDING_CLAWS :
ItemData ( 226 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 26 , SC2Race . ZERG , parent_item = ItemNames . ZERGLING ,
origin = { " ext " } , description = " Zergling attacks will temporarily reduce their target ' s armour to 0. " ) ,
ItemNames . ROACH_GLIAL_RECONSTITUTION :
ItemData ( 227 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 27 , SC2Race . ZERG , parent_item = ItemNames . ROACH ,
origin = { " ext " } , description = " Increases Roach movement speed. " ) ,
ItemNames . ROACH_ORGANIC_CARAPACE :
ItemData ( 228 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 28 , SC2Race . ZERG , parent_item = ItemNames . ROACH ,
origin = { " ext " } , description = " Increases Roach health by +25. " ) ,
ItemNames . HYDRALISK_MUSCULAR_AUGMENTS :
ItemData ( 229 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 1 " , 29 , SC2Race . ZERG , parent_item = ItemNames . HYDRALISK ,
origin = { " bw " } , description = " Increases Hydralisk movement speed. " ) ,
ItemNames . HYDRALISK_RESOURCE_EFFICIENCY :
ItemData ( 230 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 0 , SC2Race . ZERG , parent_item = ItemNames . HYDRALISK ,
origin = { " bw " } , description = " Reduces Hydralisk resource cost by 25/25 and supply cost by 1. " ) ,
ItemNames . BANELING_CENTRIFUGAL_HOOKS :
ItemData ( 231 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 1 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " ext " } ,
description = " Increases the movement speed of Banelings. " ) ,
ItemNames . BANELING_TUNNELING_JAWS :
ItemData ( 232 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 2 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " ext " } ,
description = " Allows Banelings to move while burrowed. " ) ,
ItemNames . BANELING_RAPID_METAMORPH :
ItemData ( 233 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 3 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " ext " } , description = " Banelings morph faster. " ) ,
ItemNames . MUTALISK_SEVERING_GLAIVE :
ItemData ( 234 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 4 , SC2Race . ZERG , parent_item = ItemNames . MUTALISK ,
origin = { " ext " } , description = " Mutalisk bounce attacks will deal full damage. " ) ,
ItemNames . MUTALISK_AERODYNAMIC_GLAIVE_SHAPE :
ItemData ( 235 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 5 , SC2Race . ZERG , parent_item = ItemNames . MUTALISK ,
origin = { " ext " } , description = " Increases the attack range of Mutalisks by 2. " ) ,
ItemNames . SWARM_HOST_LOCUST_METABOLIC_BOOST :
ItemData ( 236 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 6 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " ext " } , classification = ItemClassification . filler ,
description = " Increases Locust movement speed. " ) ,
ItemNames . SWARM_HOST_ENDURING_LOCUSTS :
ItemData ( 237 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 7 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " ext " } , description = " Increases the duration of Swarm Hosts ' Locusts by 10s. " ) ,
ItemNames . SWARM_HOST_ORGANIC_CARAPACE :
ItemData ( 238 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 8 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " ext " } , description = " Increases Swarm Host health by +40. " ) ,
ItemNames . SWARM_HOST_RESOURCE_EFFICIENCY :
ItemData ( 239 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 9 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " ext " } , description = " Reduces Swarm Host resource cost by 100/25. " ) ,
ItemNames . ULTRALISK_ANABOLIC_SYNTHESIS :
ItemData ( 240 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 10 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " bw " } , classification = ItemClassification . filler ) ,
ItemNames . ULTRALISK_CHITINOUS_PLATING :
ItemData ( 241 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 11 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " bw " } ) ,
ItemNames . ULTRALISK_ORGANIC_CARAPACE :
ItemData ( 242 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 12 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " ext " } ) ,
ItemNames . ULTRALISK_RESOURCE_EFFICIENCY :
ItemData ( 243 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 13 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " bw " } ) ,
ItemNames . DEVOURER_CORROSIVE_SPRAY :
ItemData ( 244 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 14 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_DEVOURER_ASPECT , origin = { " ext " } ) ,
ItemNames . DEVOURER_GAPING_MAW :
ItemData ( 245 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 15 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_DEVOURER_ASPECT , origin = { " ext " } ) ,
ItemNames . DEVOURER_IMPROVED_OSMOSIS :
ItemData ( 246 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 16 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_DEVOURER_ASPECT , origin = { " ext " } ,
classification = ItemClassification . filler ) ,
ItemNames . DEVOURER_PRESCIENT_SPORES :
ItemData ( 247 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 17 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_DEVOURER_ASPECT , origin = { " ext " } ) ,
ItemNames . GUARDIAN_PROLONGED_DISPERSION :
ItemData ( 248 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 18 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_GUARDIAN_ASPECT , origin = { " ext " } ) ,
ItemNames . GUARDIAN_PRIMAL_ADAPTATION :
ItemData ( 249 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 19 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_GUARDIAN_ASPECT , origin = { " ext " } ) ,
ItemNames . GUARDIAN_SORONAN_ACID :
ItemData ( 250 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 20 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_GUARDIAN_ASPECT , origin = { " ext " } ) ,
ItemNames . IMPALER_ADAPTIVE_TALONS :
ItemData ( 251 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 21 , SC2Race . ZERG ,
parent_item = ItemNames . HYDRALISK_IMPALER_ASPECT , origin = { " ext " } ,
classification = ItemClassification . filler ) ,
ItemNames . IMPALER_SECRETION_GLANDS :
ItemData ( 252 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 22 , SC2Race . ZERG ,
parent_item = ItemNames . HYDRALISK_IMPALER_ASPECT , origin = { " ext " } ) ,
ItemNames . IMPALER_HARDENED_TENTACLE_SPINES :
ItemData ( 253 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 23 , SC2Race . ZERG ,
parent_item = ItemNames . HYDRALISK_IMPALER_ASPECT , origin = { " ext " } ) ,
ItemNames . LURKER_SEISMIC_SPINES :
ItemData ( 254 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 24 , SC2Race . ZERG ,
parent_item = ItemNames . HYDRALISK_LURKER_ASPECT , origin = { " ext " } ) ,
ItemNames . LURKER_ADAPTED_SPINES :
ItemData ( 255 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 25 , SC2Race . ZERG ,
parent_item = ItemNames . HYDRALISK_LURKER_ASPECT , origin = { " ext " } ) ,
ItemNames . RAVAGER_POTENT_BILE :
ItemData ( 256 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 26 , SC2Race . ZERG ,
parent_item = ItemNames . ROACH_RAVAGER_ASPECT , origin = { " ext " } ) ,
ItemNames . RAVAGER_BLOATED_BILE_DUCTS :
ItemData ( 257 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 27 , SC2Race . ZERG ,
parent_item = ItemNames . ROACH_RAVAGER_ASPECT , origin = { " ext " } ) ,
ItemNames . RAVAGER_DEEP_TUNNEL :
ItemData ( 258 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 28 , SC2Race . ZERG ,
parent_item = ItemNames . ROACH_RAVAGER_ASPECT , origin = { " ext " } ) ,
ItemNames . VIPER_PARASITIC_BOMB :
ItemData ( 259 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 2 " , 29 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_VIPER_ASPECT , origin = { " ext " } ) ,
ItemNames . VIPER_PARALYTIC_BARBS :
ItemData ( 260 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 0 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_VIPER_ASPECT , origin = { " ext " } ) ,
ItemNames . VIPER_VIRULENT_MICROBES :
ItemData ( 261 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 1 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_VIPER_ASPECT , origin = { " ext " } ) ,
ItemNames . BROOD_LORD_POROUS_CARTILAGE :
ItemData ( 262 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 2 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_BROOD_LORD_ASPECT , origin = { " ext " } ) ,
ItemNames . BROOD_LORD_EVOLVED_CARAPACE :
ItemData ( 263 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 3 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_BROOD_LORD_ASPECT , origin = { " ext " } ) ,
ItemNames . BROOD_LORD_SPLITTER_MITOSIS :
ItemData ( 264 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 4 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_BROOD_LORD_ASPECT , origin = { " ext " } ) ,
ItemNames . BROOD_LORD_RESOURCE_EFFICIENCY :
ItemData ( 265 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 5 , SC2Race . ZERG ,
parent_item = ItemNames . MUTALISK_CORRUPTOR_BROOD_LORD_ASPECT , origin = { " ext " } ) ,
ItemNames . INFESTOR_INFESTED_TERRAN :
ItemData ( 266 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 6 , SC2Race . ZERG , parent_item = ItemNames . INFESTOR ,
origin = { " ext " } ) ,
ItemNames . INFESTOR_MICROBIAL_SHROUD :
ItemData ( 267 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 7 , SC2Race . ZERG , parent_item = ItemNames . INFESTOR ,
origin = { " ext " } ) ,
ItemNames . SWARM_QUEEN_SPAWN_LARVAE :
ItemData ( 268 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 8 , SC2Race . ZERG , parent_item = ItemNames . SWARM_QUEEN ,
origin = { " ext " } ) ,
ItemNames . SWARM_QUEEN_DEEP_TUNNEL :
ItemData ( 269 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 9 , SC2Race . ZERG , parent_item = ItemNames . SWARM_QUEEN ,
origin = { " ext " } ) ,
ItemNames . SWARM_QUEEN_ORGANIC_CARAPACE :
ItemData ( 270 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 10 , SC2Race . ZERG , parent_item = ItemNames . SWARM_QUEEN ,
origin = { " ext " } , classification = ItemClassification . filler ) ,
ItemNames . SWARM_QUEEN_BIO_MECHANICAL_TRANSFUSION :
ItemData ( 271 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 11 , SC2Race . ZERG , parent_item = ItemNames . SWARM_QUEEN ,
origin = { " ext " } ) ,
ItemNames . SWARM_QUEEN_RESOURCE_EFFICIENCY :
ItemData ( 272 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 12 , SC2Race . ZERG , parent_item = ItemNames . SWARM_QUEEN ,
origin = { " ext " } ) ,
ItemNames . SWARM_QUEEN_INCUBATOR_CHAMBER :
ItemData ( 273 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 13 , SC2Race . ZERG , parent_item = ItemNames . SWARM_QUEEN ,
origin = { " ext " } ) ,
ItemNames . BROOD_QUEEN_FUNGAL_GROWTH :
ItemData ( 274 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 14 , SC2Race . ZERG , parent_item = ItemNames . BROOD_QUEEN ,
origin = { " ext " } ) ,
ItemNames . BROOD_QUEEN_ENSNARE :
ItemData ( 275 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 15 , SC2Race . ZERG , parent_item = ItemNames . BROOD_QUEEN ,
origin = { " ext " } ) ,
ItemNames . BROOD_QUEEN_ENHANCED_MITOCHONDRIA :
ItemData ( 276 + SC2HOTS_ITEM_ID_OFFSET , " Mutation 3 " , 16 , SC2Race . ZERG , parent_item = ItemNames . BROOD_QUEEN ,
origin = { " ext " } ) ,
ItemNames . ZERGLING_RAPTOR_STRAIN :
ItemData ( 300 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 0 , SC2Race . ZERG , parent_item = ItemNames . ZERGLING ,
origin = { " hots " } ,
description = " Allows Zerglings to jump up and down cliffs and leap onto enemies. Also increases Zergling attack damage by 2. " ) ,
ItemNames . ZERGLING_SWARMLING_STRAIN :
ItemData ( 301 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 1 , SC2Race . ZERG , parent_item = ItemNames . ZERGLING ,
origin = { " hots " } ,
description = " Zerglings will spawn instantly and with an extra Zergling per egg at no additional cost. " ) ,
ItemNames . ROACH_VILE_STRAIN :
ItemData ( 302 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 2 , SC2Race . ZERG , parent_item = ItemNames . ROACH , origin = { " hots " } ,
description = " Roach attacks will slow the movement and attack speed of enemies. " ) ,
ItemNames . ROACH_CORPSER_STRAIN :
ItemData ( 303 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 3 , SC2Race . ZERG , parent_item = ItemNames . ROACH , origin = { " hots " } ,
description = " Units killed after being attacked by Roaches will spawn 2 Roachlings. " ) ,
ItemNames . HYDRALISK_IMPALER_ASPECT :
ItemData ( 304 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 0 , SC2Race . ZERG , origin = { " hots " } ,
classification = ItemClassification . progression ,
description = " Allows Hydralisks to morph into Impalers. " ) ,
ItemNames . HYDRALISK_LURKER_ASPECT :
ItemData ( 305 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 1 , SC2Race . ZERG , origin = { " hots " } ,
classification = ItemClassification . progression , description = " Allows Hydralisks to morph into Lurkers. " ) ,
ItemNames . BANELING_SPLITTER_STRAIN :
ItemData ( 306 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 6 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " hots " } ,
description = " Banelings will split into two smaller Splitterlings on exploding. " ) ,
ItemNames . BANELING_HUNTER_STRAIN :
ItemData ( 307 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 7 , SC2Race . ZERG ,
parent_item = ItemNames . ZERGLING_BANELING_ASPECT , origin = { " hots " } ,
description = " Allows Banelings to jump up and down cliffs and leap onto enemies. " ) ,
ItemNames . MUTALISK_CORRUPTOR_BROOD_LORD_ASPECT :
ItemData ( 308 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 2 , SC2Race . ZERG , origin = { " hots " } ,
classification = ItemClassification . progression ,
description = " Allows Mutalisks and Corruptors to morph into Brood Lords. " ) ,
ItemNames . MUTALISK_CORRUPTOR_VIPER_ASPECT :
ItemData ( 309 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 3 , SC2Race . ZERG , origin = { " hots " } ,
classification = ItemClassification . progression ,
description = " Allows Mutalisks and Corruptors to morph into Vipers. " ) ,
ItemNames . SWARM_HOST_CARRION_STRAIN :
ItemData ( 310 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 10 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " hots " } , description = " Swarm Hosts will spawn Flying Locusts. " ) ,
ItemNames . SWARM_HOST_CREEPER_STRAIN :
ItemData ( 311 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 11 , SC2Race . ZERG , parent_item = ItemNames . SWARM_HOST ,
origin = { " hots " } , classification = ItemClassification . filler ,
description = " Allows Swarm Hosts to teleport to any creep on the map in vision. Swarm Hosts will spread creep around them when rooted or burrowed. " ) ,
ItemNames . ULTRALISK_NOXIOUS_STRAIN :
ItemData ( 312 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 12 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " hots " } , classification = ItemClassification . filler ,
description = " Ultralisks will periodically spread poison, damaging nearby biological enemies. " ) ,
ItemNames . ULTRALISK_TORRASQUE_STRAIN :
ItemData ( 313 + SC2HOTS_ITEM_ID_OFFSET , " Strain " , 13 , SC2Race . ZERG , parent_item = ItemNames . ULTRALISK ,
origin = { " hots " } , description = " Ultralisks will revive after being killed. " ) ,
ItemNames . KERRIGAN_KINETIC_BLAST : ItemData ( 400 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 0 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_HEROIC_FORTITUDE : ItemData ( 401 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 1 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEAPING_STRIKE : ItemData ( 402 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 2 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_CRUSHING_GRIP : ItemData ( 403 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 3 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_CHAIN_REACTION : ItemData ( 404 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 4 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_PSIONIC_SHIFT : ItemData ( 405 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 5 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_ZERGLING_RECONSTITUTION : ItemData ( 406 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 0 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . filler ) ,
ItemNames . KERRIGAN_IMPROVED_OVERLORDS : ItemData ( 407 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 1 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_AUTOMATED_EXTRACTORS : ItemData ( 408 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 2 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_WILD_MUTATION : ItemData ( 409 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 6 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_SPAWN_BANELINGS : ItemData ( 410 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 7 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_MEND : ItemData ( 411 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 8 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_TWIN_DRONES : ItemData ( 412 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 3 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_MALIGNANT_CREEP : ItemData ( 413 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 4 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_VESPENE_EFFICIENCY : ItemData ( 414 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 5 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_INFEST_BROODLINGS : ItemData ( 415 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 9 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_FURY : ItemData ( 416 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 10 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_ABILITY_EFFICIENCY : ItemData ( 417 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 11 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_APOCALYPSE : ItemData ( 418 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 12 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_SPAWN_LEVIATHAN : ItemData ( 419 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 13 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_DROP_PODS : ItemData ( 420 + SC2HOTS_ITEM_ID_OFFSET , " Ability " , 14 , SC2Race . ZERG , origin = { " hots " } , classification = ItemClassification . progression ) ,
# Handled separately from other abilities
ItemNames . KERRIGAN_PRIMAL_FORM : ItemData ( 421 + SC2HOTS_ITEM_ID_OFFSET , " Primal Form " , 0 , SC2Race . ZERG , origin = { " hots " } ) ,
ItemNames . KERRIGAN_LEVELS_10 : ItemData ( 500 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 10 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_9 : ItemData ( 501 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 9 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_8 : ItemData ( 502 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 8 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_7 : ItemData ( 503 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 7 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_6 : ItemData ( 504 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 6 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_5 : ItemData ( 505 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 5 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_4 : ItemData ( 506 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 4 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression_skip_balancing ) ,
ItemNames . KERRIGAN_LEVELS_3 : ItemData ( 507 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 3 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression_skip_balancing ) ,
ItemNames . KERRIGAN_LEVELS_2 : ItemData ( 508 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 2 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression_skip_balancing ) ,
ItemNames . KERRIGAN_LEVELS_1 : ItemData ( 509 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 1 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression_skip_balancing ) ,
ItemNames . KERRIGAN_LEVELS_14 : ItemData ( 510 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 14 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_35 : ItemData ( 511 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 35 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
ItemNames . KERRIGAN_LEVELS_70 : ItemData ( 512 + SC2HOTS_ITEM_ID_OFFSET , " Level " , 70 , SC2Race . ZERG , origin = { " hots " } , quantity = 0 , classification = ItemClassification . progression ) ,
# Zerg Mercs
ItemNames . INFESTED_MEDICS : ItemData ( 600 + SC2HOTS_ITEM_ID_OFFSET , " Mercenary " , 0 , SC2Race . ZERG , origin = { " ext " } ) ,
ItemNames . INFESTED_SIEGE_TANKS : ItemData ( 601 + SC2HOTS_ITEM_ID_OFFSET , " Mercenary " , 1 , SC2Race . ZERG , origin = { " ext " } ) ,
ItemNames . INFESTED_BANSHEES : ItemData ( 602 + SC2HOTS_ITEM_ID_OFFSET , " Mercenary " , 2 , SC2Race . ZERG , origin = { " ext " } ) ,
# Misc Upgrades
ItemNames . OVERLORD_VENTRAL_SACS : ItemData ( 700 + SC2HOTS_ITEM_ID_OFFSET , " Evolution Pit " , 6 , SC2Race . ZERG , origin = { " bw " } ) ,
# Morphs
ItemNames . MUTALISK_CORRUPTOR_GUARDIAN_ASPECT : ItemData ( 800 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 6 , SC2Race . ZERG , origin = { " bw " } ) ,
ItemNames . MUTALISK_CORRUPTOR_DEVOURER_ASPECT : ItemData ( 801 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 7 , SC2Race . ZERG , origin = { " bw " } ) ,
ItemNames . ROACH_RAVAGER_ASPECT : ItemData ( 802 + SC2HOTS_ITEM_ID_OFFSET , " Morph " , 8 , SC2Race . ZERG , origin = { " ext " } ) ,
# Protoss Units (those that aren't as items in WoL (Prophecy))
ItemNames . OBSERVER : ItemData ( 0 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 9 , SC2Race . PROTOSS ,
classification = ItemClassification . filler , origin = { " wol " } ,
description = " Flying spy. Cloak renders the unit invisible to enemies without detection. " ) ,
ItemNames . CENTURION : ItemData ( 1 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 10 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Powerful melee warrior. Has the Shadow Charge and Darkcoil abilities. " ) ,
ItemNames . SENTINEL : ItemData ( 2 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 11 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Powerful melee warrior. Has the Charge and Reconstruction abilities. " ) ,
ItemNames . SUPPLICANT : ItemData ( 3 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 12 , SC2Race . PROTOSS ,
classification = ItemClassification . filler , important_for_filtering = True , origin = { " ext " } ,
description = " Powerful melee warrior. Has powerful damage resistant shields. " ) ,
ItemNames . INSTIGATOR : ItemData ( 4 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 13 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Ranged support strider. Can store multiple Blink charges. " ) ,
ItemNames . SLAYER : ItemData ( 5 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 14 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Ranged attack strider. Can use the Phase Blink and Phasing Armor abilities. " ) ,
ItemNames . SENTRY : ItemData ( 6 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 15 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Robotic support unit can use the Guardian Shield ability and restore the shields of nearby Protoss units. " ) ,
ItemNames . ENERGIZER : ItemData ( 7 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 16 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Robotic support unit. Can use the Chrono Beam ability and become stationary to power nearby structures. " ) ,
ItemNames . HAVOC : ItemData ( 8 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 17 , SC2Race . PROTOSS ,
origin = { " lotv " } , important_for_filtering = True ,
description = " Robotic support unit. Can use the Target Lock and Force Field abilities and increase the range of nearby Protoss units. " ) ,
ItemNames . SIGNIFIER : ItemData ( 9 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 18 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Potent permanently cloaked psionic master. Can use the Feedback and Crippling Psionic Storm abilities. Can merge into an Archon. " ) ,
ItemNames . ASCENDANT : ItemData ( 10 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 19 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Potent psionic master. Can use the Psionic Orb, Mind Blast, and Sacrifice abilities. " ) ,
ItemNames . AVENGER : ItemData ( 11 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 20 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Deadly warrior-assassin. Permanently cloaked. Recalls to the nearest Dark Shrine upon death. " ) ,
ItemNames . BLOOD_HUNTER : ItemData ( 12 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 21 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Deadly warrior-assassin. Permanently cloaked. Can use the Void Stasis ability. " ) ,
ItemNames . DRAGOON : ItemData ( 13 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 22 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Ranged assault strider. Has enhanced health and damage. " ) ,
ItemNames . DARK_ARCHON : ItemData ( 14 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 23 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Potent psionic master. Can use the Confuse and Mind Control abilities. " ) ,
ItemNames . ADEPT : ItemData ( 15 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 24 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Ranged specialist. Can use the Psionic Transfer ability. " ) ,
ItemNames . WARP_PRISM : ItemData ( 16 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 25 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Flying transport. Can carry units and become stationary to deploy a power field. " ) ,
ItemNames . ANNIHILATOR : ItemData ( 17 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 26 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Assault Strider. Can use the Shadow Cannon ability to damage air and ground units. " ) ,
ItemNames . VANGUARD : ItemData ( 18 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 27 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Assault Strider. Deals splash damage around the primary target. " ) ,
ItemNames . WRATHWALKER : ItemData ( 19 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 28 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Battle strider with a powerful single target attack. Can walk up and down cliffs. " ) ,
ItemNames . REAVER : ItemData ( 20 + SC2LOTV_ITEM_ID_OFFSET , " Unit " , 29 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Area damage siege unit. Builds and launches explosive Scarabs for high burst damage. " ) ,
ItemNames . DISRUPTOR : ItemData ( 21 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 0 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Robotic disruption unit. Can use the Purification Nova ability to deal heavy area damage. " ) ,
ItemNames . MIRAGE : ItemData ( 22 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 1 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Air superiority starfighter. Can use Graviton Beam and Phasing Armor abilities. " ) ,
ItemNames . CORSAIR : ItemData ( 23 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 2 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Air superiority starfighter. Can use the Disruption Web ability. " ) ,
ItemNames . DESTROYER : ItemData ( 24 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 3 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Area assault craft. Can use the Destruction Beam ability to attack multiple units at once. " ) ,
ItemNames . SCOUT : ItemData ( 25 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 4 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Versatile high-speed fighter. " ) ,
ItemNames . TEMPEST : ItemData ( 26 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 5 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Siege artillery craft. Attacks from long range. Can use the Disintegration ability. " ) ,
ItemNames . MOTHERSHIP : ItemData ( 27 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 6 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Ultimate Protoss vessel, Can use the Vortex and Mass Recall abilities. Cloaks nearby units and structures. " ) ,
ItemNames . ARBITER : ItemData ( 28 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 7 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " Army support craft. Has the Stasis Field and Recall abilities. Cloaks nearby units. " ) ,
ItemNames . ORACLE : ItemData ( 29 + SC2LOTV_ITEM_ID_OFFSET , " Unit 2 " , 8 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } ,
description = " Flying caster. Can use the Revelation and Stasis Ward abilities. " ) ,
# Protoss Upgrades
ItemNames . PROGRESSIVE_PROTOSS_GROUND_WEAPON : ItemData ( 100 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 0 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_GROUND_ARMOR : ItemData ( 101 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 2 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_SHIELDS : ItemData ( 102 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 4 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_AIR_WEAPON : ItemData ( 103 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 6 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_AIR_ARMOR : ItemData ( 104 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 8 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
# Upgrade bundle 'number' values are used as indices to get affected 'number's
ItemNames . PROGRESSIVE_PROTOSS_WEAPON_UPGRADE : ItemData ( 105 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 11 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_ARMOR_UPGRADE : ItemData ( 106 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 12 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_GROUND_UPGRADE : ItemData ( 107 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 13 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_AIR_UPGRADE : ItemData ( 108 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 14 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
ItemNames . PROGRESSIVE_PROTOSS_WEAPON_ARMOR_UPGRADE : ItemData ( 109 + SC2LOTV_ITEM_ID_OFFSET , " Upgrade " , 15 , SC2Race . PROTOSS , quantity = 3 , origin = { " wol " , " lotv " } ) ,
# Protoss Buildings
ItemNames . PHOTON_CANNON : ItemData ( 200 + SC2LOTV_ITEM_ID_OFFSET , " Building " , 0 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " wol " , " lotv " } ) ,
ItemNames . KHAYDARIN_MONOLITH : ItemData ( 201 + SC2LOTV_ITEM_ID_OFFSET , " Building " , 1 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " lotv " } ) ,
ItemNames . SHIELD_BATTERY : ItemData ( 202 + SC2LOTV_ITEM_ID_OFFSET , " Building " , 2 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " lotv " } ) ,
# Protoss Unit Upgrades
ItemNames . SUPPLICANT_BLOOD_SHIELD : ItemData ( 300 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 0 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . SUPPLICANT ) ,
ItemNames . SUPPLICANT_SOUL_AUGMENTATION : ItemData ( 301 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 1 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . SUPPLICANT ) ,
ItemNames . SUPPLICANT_SHIELD_REGENERATION : ItemData ( 302 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 2 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . SUPPLICANT ) ,
ItemNames . ADEPT_SHOCKWAVE : ItemData ( 303 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 3 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ADEPT ) ,
ItemNames . ADEPT_RESONATING_GLAIVES : ItemData ( 304 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 4 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ADEPT ) ,
ItemNames . ADEPT_PHASE_BULWARK : ItemData ( 305 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 5 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ADEPT ) ,
ItemNames . STALKER_INSTIGATOR_SLAYER_DISINTEGRATING_PARTICLES : ItemData ( 306 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 6 , SC2Race . PROTOSS , origin = { " ext " } , classification = ItemClassification . progression ) ,
ItemNames . STALKER_INSTIGATOR_SLAYER_PARTICLE_REFLECTION : ItemData ( 307 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 7 , SC2Race . PROTOSS , origin = { " ext " } , classification = ItemClassification . progression ) ,
ItemNames . DRAGOON_HIGH_IMPACT_PHASE_DISRUPTORS : ItemData ( 308 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 8 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . DRAGOON ) ,
ItemNames . DRAGOON_TRILLIC_COMPRESSION_SYSTEM : ItemData ( 309 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 9 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . DRAGOON ) ,
ItemNames . DRAGOON_SINGULARITY_CHARGE : ItemData ( 310 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 10 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . DRAGOON ) ,
ItemNames . DRAGOON_ENHANCED_STRIDER_SERVOS : ItemData ( 311 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 11 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . DRAGOON ) ,
ItemNames . SCOUT_COMBAT_SENSOR_ARRAY : ItemData ( 312 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 12 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . SCOUT ) ,
ItemNames . SCOUT_APIAL_SENSORS : ItemData ( 313 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 13 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . SCOUT ) ,
ItemNames . SCOUT_GRAVITIC_THRUSTERS : ItemData ( 314 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 14 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . SCOUT ) ,
ItemNames . SCOUT_ADVANCED_PHOTON_BLASTERS : ItemData ( 315 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 15 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . SCOUT ) ,
ItemNames . TEMPEST_TECTONIC_DESTABILIZERS : ItemData ( 316 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 16 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . TEMPEST ) ,
ItemNames . TEMPEST_QUANTIC_REACTOR : ItemData ( 317 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 17 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . TEMPEST ) ,
ItemNames . TEMPEST_GRAVITY_SLING : ItemData ( 318 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 18 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . TEMPEST ) ,
ItemNames . PHOENIX_MIRAGE_IONIC_WAVELENGTH_FLUX : ItemData ( 319 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 19 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . PHOENIX_MIRAGE_ANION_PULSE_CRYSTALS : ItemData ( 320 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 20 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . CORSAIR_STEALTH_DRIVE : ItemData ( 321 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 21 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . CORSAIR ) ,
ItemNames . CORSAIR_ARGUS_JEWEL : ItemData ( 322 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 22 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . CORSAIR ) ,
ItemNames . CORSAIR_SUSTAINING_DISRUPTION : ItemData ( 323 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 23 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . CORSAIR ) ,
ItemNames . CORSAIR_NEUTRON_SHIELDS : ItemData ( 324 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 24 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . CORSAIR ) ,
ItemNames . ORACLE_STEALTH_DRIVE : ItemData ( 325 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 25 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ORACLE ) ,
ItemNames . ORACLE_STASIS_CALIBRATION : ItemData ( 326 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 26 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ORACLE ) ,
ItemNames . ORACLE_TEMPORAL_ACCELERATION_BEAM : ItemData ( 327 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 27 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ORACLE ) ,
ItemNames . ARBITER_CHRONOSTATIC_REINFORCEMENT : ItemData ( 328 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 28 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . ARBITER ) ,
ItemNames . ARBITER_KHAYDARIN_CORE : ItemData ( 329 + SC2LOTV_ITEM_ID_OFFSET , " Forge 1 " , 29 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . ARBITER ) ,
ItemNames . ARBITER_SPACETIME_ANCHOR : ItemData ( 330 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 0 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . ARBITER ) ,
ItemNames . ARBITER_RESOURCE_EFFICIENCY : ItemData ( 331 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 1 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . ARBITER ) ,
ItemNames . ARBITER_ENHANCED_CLOAK_FIELD : ItemData ( 332 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 2 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . ARBITER ) ,
ItemNames . CARRIER_GRAVITON_CATAPULT :
ItemData ( 333 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 3 , SC2Race . PROTOSS , origin = { " wol " } ,
parent_item = ItemNames . CARRIER ,
description = " Carriers can launch Interceptors more quickly. " ) ,
ItemNames . CARRIER_HULL_OF_PAST_GLORIES :
ItemData ( 334 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 4 , SC2Race . PROTOSS , origin = { " bw " } ,
parent_item = ItemNames . CARRIER ,
description = " Carriers gain +2 armour. " ) ,
ItemNames . VOID_RAY_DESTROYER_FLUX_VANES :
ItemData ( 335 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 5 , SC2Race . PROTOSS , classification = ItemClassification . filler ,
origin = { " ext " } ,
description = " Increases Void Ray and Destroyer movement speed. " ) ,
ItemNames . DESTROYER_REFORGED_BLOODSHARD_CORE :
ItemData ( 336 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 6 , SC2Race . PROTOSS , origin = { " ext " } ,
parent_item = ItemNames . DESTROYER ,
description = " When fully charged, the Destroyer ' s Destruction Beam weapon does full damage to secondary targets. " ) ,
ItemNames . WARP_PRISM_GRAVITIC_DRIVE :
ItemData ( 337 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 7 , SC2Race . PROTOSS , classification = ItemClassification . filler ,
origin = { " ext " } , parent_item = ItemNames . WARP_PRISM ,
description = " Increases the movement speed of Warp Prisms. " ) ,
ItemNames . WARP_PRISM_PHASE_BLASTER :
ItemData ( 338 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 8 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " ext " } , parent_item = ItemNames . WARP_PRISM ,
description = " Equips Warp Prisms with an auto-attack that can hit ground and air targets. " ) ,
ItemNames . WARP_PRISM_WAR_CONFIGURATION : ItemData ( 339 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 9 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . WARP_PRISM ) ,
ItemNames . OBSERVER_GRAVITIC_BOOSTERS : ItemData ( 340 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 10 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . OBSERVER ) ,
ItemNames . OBSERVER_SENSOR_ARRAY : ItemData ( 341 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 11 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . OBSERVER ) ,
ItemNames . REAVER_SCARAB_DAMAGE : ItemData ( 342 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 12 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . REAVER ) ,
ItemNames . REAVER_SOLARITE_PAYLOAD : ItemData ( 343 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 13 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . REAVER ) ,
ItemNames . REAVER_REAVER_CAPACITY : ItemData ( 344 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 14 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } , parent_item = ItemNames . REAVER ) ,
ItemNames . REAVER_RESOURCE_EFFICIENCY : ItemData ( 345 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 15 , SC2Race . PROTOSS , origin = { " bw " } , parent_item = ItemNames . REAVER ) ,
ItemNames . VANGUARD_AGONY_LAUNCHERS : ItemData ( 346 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 16 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . VANGUARD ) ,
ItemNames . VANGUARD_MATTER_DISPERSION : ItemData ( 347 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 17 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . VANGUARD ) ,
ItemNames . IMMORTAL_ANNIHILATOR_SINGULARITY_CHARGE : ItemData ( 348 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 18 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . IMMORTAL_ANNIHILATOR_ADVANCED_TARGETING_MECHANICS : ItemData ( 349 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 19 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " ext " } ) ,
ItemNames . COLOSSUS_PACIFICATION_PROTOCOL : ItemData ( 350 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 20 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . COLOSSUS ) ,
ItemNames . WRATHWALKER_RAPID_POWER_CYCLING : ItemData ( 351 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 21 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . WRATHWALKER ) ,
ItemNames . WRATHWALKER_EYE_OF_WRATH : ItemData ( 352 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 22 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . WRATHWALKER ) ,
ItemNames . DARK_TEMPLAR_AVENGER_BLOOD_HUNTER_SHROUD_OF_ADUN : ItemData ( 353 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 23 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . DARK_TEMPLAR_AVENGER_BLOOD_HUNTER_SHADOW_GUARD_TRAINING : ItemData ( 354 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 24 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . DARK_TEMPLAR_AVENGER_BLOOD_HUNTER_BLINK : ItemData ( 355 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 25 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " ext " } ) ,
ItemNames . DARK_TEMPLAR_AVENGER_BLOOD_HUNTER_RESOURCE_EFFICIENCY : ItemData ( 356 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 26 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . DARK_TEMPLAR_DARK_ARCHON_MELD : ItemData ( 357 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 27 , SC2Race . PROTOSS , origin = { " bw " } , important_for_filtering = True , parent_item = ItemNames . DARK_TEMPLAR ) ,
ItemNames . HIGH_TEMPLAR_SIGNIFIER_UNSHACKLED_PSIONIC_STORM : ItemData ( 358 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 28 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . HIGH_TEMPLAR_SIGNIFIER_HALLUCINATION : ItemData ( 359 + SC2LOTV_ITEM_ID_OFFSET , " Forge 2 " , 29 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " bw " } ) ,
ItemNames . HIGH_TEMPLAR_SIGNIFIER_KHAYDARIN_AMULET : ItemData ( 360 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 0 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . ARCHON_HIGH_ARCHON : ItemData ( 361 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 1 , SC2Race . PROTOSS , origin = { " ext " } , important_for_filtering = True ) ,
ItemNames . DARK_ARCHON_FEEDBACK : ItemData ( 362 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 2 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . DARK_ARCHON_MAELSTROM : ItemData ( 363 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 3 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . DARK_ARCHON_ARGUS_TALISMAN : ItemData ( 364 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 4 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . ASCENDANT_POWER_OVERWHELMING : ItemData ( 365 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 5 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ASCENDANT ) ,
ItemNames . ASCENDANT_CHAOTIC_ATTUNEMENT : ItemData ( 366 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 6 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ASCENDANT ) ,
ItemNames . ASCENDANT_BLOOD_AMULET : ItemData ( 367 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 7 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ASCENDANT ) ,
ItemNames . SENTRY_ENERGIZER_HAVOC_CLOAKING_MODULE : ItemData ( 368 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 8 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . SENTRY_ENERGIZER_HAVOC_SHIELD_BATTERY_RAPID_RECHARGING : ItemData ( 369 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 9 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . SENTRY_FORCE_FIELD : ItemData ( 370 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 10 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . SENTRY ) ,
ItemNames . SENTRY_HALLUCINATION : ItemData ( 371 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 11 , SC2Race . PROTOSS , classification = ItemClassification . filler , origin = { " ext " } , parent_item = ItemNames . SENTRY ) ,
ItemNames . ENERGIZER_RECLAMATION : ItemData ( 372 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 12 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ENERGIZER ) ,
ItemNames . ENERGIZER_FORGED_CHASSIS : ItemData ( 373 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 13 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . ENERGIZER ) ,
ItemNames . HAVOC_DETECT_WEAKNESS : ItemData ( 374 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 14 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . HAVOC ) ,
ItemNames . HAVOC_BLOODSHARD_RESONANCE : ItemData ( 375 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 15 , SC2Race . PROTOSS , origin = { " ext " } , parent_item = ItemNames . HAVOC ) ,
ItemNames . ZEALOT_SENTINEL_CENTURION_LEG_ENHANCEMENTS : ItemData ( 376 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 16 , SC2Race . PROTOSS , origin = { " bw " } ) ,
ItemNames . ZEALOT_SENTINEL_CENTURION_SHIELD_CAPACITY : ItemData ( 377 + SC2LOTV_ITEM_ID_OFFSET , " Forge 3 " , 17 , SC2Race . PROTOSS , origin = { " bw " } ) ,
# SoA Calldown powers
ItemNames . SOA_CHRONO_SURGE : ItemData ( 700 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 0 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
ItemNames . SOA_PROGRESSIVE_PROXY_PYLON : ItemData ( 701 + SC2LOTV_ITEM_ID_OFFSET , " Progressive Upgrade " , 0 , SC2Race . PROTOSS , origin = { " lotv " } , quantity = 2 ) ,
ItemNames . SOA_PYLON_OVERCHARGE : ItemData ( 702 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 1 , SC2Race . PROTOSS , origin = { " ext " } ) ,
ItemNames . SOA_ORBITAL_STRIKE : ItemData ( 703 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 2 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
ItemNames . SOA_TEMPORAL_FIELD : ItemData ( 704 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 3 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
ItemNames . SOA_SOLAR_LANCE : ItemData ( 705 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 4 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " lotv " } ) ,
ItemNames . SOA_MASS_RECALL : ItemData ( 706 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 5 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
ItemNames . SOA_SHIELD_OVERCHARGE : ItemData ( 707 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 6 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
ItemNames . SOA_DEPLOY_FENIX : ItemData ( 708 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 7 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " lotv " } ) ,
ItemNames . SOA_PURIFIER_BEAM : ItemData ( 709 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 8 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
ItemNames . SOA_TIME_STOP : ItemData ( 710 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 9 , SC2Race . PROTOSS , classification = ItemClassification . progression , origin = { " lotv " } ) ,
ItemNames . SOA_SOLAR_BOMBARDMENT : ItemData ( 711 + SC2LOTV_ITEM_ID_OFFSET , " Spear of Adun " , 10 , SC2Race . PROTOSS , origin = { " lotv " } ) ,
# Generic Protoss Upgrades
ItemNames . MATRIX_OVERLOAD :
ItemData ( 800 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 0 , SC2Race . PROTOSS , origin = { " lotv " } ,
description = r " All friendly units gain 25 % movement speed and 15 % a ttack speed within a Pylon ' s power field and for 15 seconds after leaving it. " ) ,
ItemNames . QUATRO :
ItemData ( 801 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 1 , SC2Race . PROTOSS , origin = { " ext " } ,
description = " All friendly Protoss units gain the equivalent of their +1 armour, attack, and shield upgrades. " ) ,
ItemNames . NEXUS_OVERCHARGE :
ItemData ( 802 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 2 , SC2Race . PROTOSS , origin = { " lotv " } ,
important_for_filtering = True , description = " The Protoss Nexus gains a long-range auto-attack. " ) ,
ItemNames . ORBITAL_ASSIMILATORS :
ItemData ( 803 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 3 , SC2Race . PROTOSS , origin = { " lotv " } ,
description = " Assimilators automatically harvest Vespene Gas without the need for Probes. " ) ,
ItemNames . WARP_HARMONIZATION :
ItemData ( 804 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 4 , SC2Race . PROTOSS , origin = { " lotv " } ,
description = r " Stargates and Robotics Facilities can transform to utilize Warp In technology. Warp In cooldowns are 20 % f aster than original build times. " ) ,
ItemNames . GUARDIAN_SHELL :
ItemData ( 805 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 5 , SC2Race . PROTOSS , origin = { " lotv " } ,
description = " The Spear of Adun passively shields friendly Protoss units before death, making them invulnerable for 5 seconds. Each unit can only be shielded once every 60 seconds. " ) ,
ItemNames . RECONSTRUCTION_BEAM :
ItemData ( 806 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 6 , SC2Race . PROTOSS ,
classification = ItemClassification . progression , origin = { " lotv " } ,
description = " The Spear of Adun will passively heal mechanical units for 5 and non-biological structures for 10 life per second. Up to 3 targets can be repaired at once. " ) ,
ItemNames . OVERWATCH :
ItemData ( 807 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 7 , SC2Race . PROTOSS , origin = { " ext " } ,
description = " Once per second, the Spear of Adun will last-hit a damaged enemy unit that is below 50 health. " ) ,
ItemNames . SUPERIOR_WARP_GATES :
ItemData ( 808 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 8 , SC2Race . PROTOSS , origin = { " ext " } ,
description = " Protoss Warp Gates can hold up to 3 charges of unit warp-ins. " ) ,
ItemNames . ENHANCED_TARGETING :
ItemData ( 809 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 9 , SC2Race . PROTOSS , origin = { " ext " } ,
description = " Protoss defensive structures gain +2 range. " ) ,
ItemNames . OPTIMIZED_ORDNANCE :
ItemData ( 810 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 10 , SC2Race . PROTOSS , origin = { " ext " } ,
description = " Increases the attack speed of Protoss defensive structures by 25 % . " ) ,
ItemNames . KHALAI_INGENUITY :
ItemData ( 811 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 11 , SC2Race . PROTOSS , origin = { " ext " } ,
description = " Pylons, Photon Cannons, Monoliths, and Shield Batteries warp in near-instantly. " ) ,
ItemNames . AMPLIFIED_ASSIMILATORS :
ItemData ( 812 + SC2LOTV_ITEM_ID_OFFSET , " Solarite Core " , 12 , SC2Race . PROTOSS , origin = { " ext " } ,
description = r " Assimilators produce Vespene gas 25 % f aster. " ) ,
}
def get_item_table ( ) :
return item_table
basic_units = {
SC2Race . TERRAN : {
ItemNames . MARINE ,
ItemNames . MARAUDER ,
ItemNames . GOLIATH ,
ItemNames . HELLION ,
ItemNames . VULTURE ,
ItemNames . WARHOUND ,
} ,
SC2Race . ZERG : {
ItemNames . ZERGLING ,
ItemNames . SWARM_QUEEN ,
ItemNames . ROACH ,
ItemNames . HYDRALISK ,
} ,
SC2Race . PROTOSS : {
ItemNames . ZEALOT ,
ItemNames . CENTURION ,
ItemNames . SENTINEL ,
ItemNames . STALKER ,
ItemNames . INSTIGATOR ,
ItemNames . SLAYER ,
ItemNames . DRAGOON ,
ItemNames . ADEPT ,
}
}
advanced_basic_units = {
SC2Race . TERRAN : basic_units [ SC2Race . TERRAN ] . union ( {
ItemNames . REAPER ,
ItemNames . DIAMONDBACK ,
ItemNames . VIKING ,
ItemNames . SIEGE_TANK ,
ItemNames . BANSHEE ,
ItemNames . THOR ,
ItemNames . BATTLECRUISER ,
ItemNames . CYCLONE
} ) ,
SC2Race . ZERG : basic_units [ SC2Race . ZERG ] . union ( {
ItemNames . INFESTOR ,
ItemNames . ABERRATION ,
} ) ,
SC2Race . PROTOSS : basic_units [ SC2Race . PROTOSS ] . union ( {
ItemNames . DARK_TEMPLAR ,
ItemNames . BLOOD_HUNTER ,
ItemNames . AVENGER ,
ItemNames . IMMORTAL ,
ItemNames . ANNIHILATOR ,
ItemNames . VANGUARD ,
} )
}
no_logic_starting_units = {
SC2Race . TERRAN : advanced_basic_units [ SC2Race . TERRAN ] . union ( {
ItemNames . FIREBAT ,
ItemNames . GHOST ,
ItemNames . SPECTRE ,
ItemNames . WRAITH ,
ItemNames . RAVEN ,
ItemNames . PREDATOR ,
ItemNames . LIBERATOR ,
ItemNames . HERC ,
} ) ,
SC2Race . ZERG : advanced_basic_units [ SC2Race . ZERG ] . union ( {
ItemNames . ULTRALISK ,
ItemNames . SWARM_HOST
} ) ,
SC2Race . PROTOSS : advanced_basic_units [ SC2Race . PROTOSS ] . union ( {
ItemNames . CARRIER ,
ItemNames . TEMPEST ,
ItemNames . VOID_RAY ,
ItemNames . DESTROYER ,
ItemNames . COLOSSUS ,
ItemNames . WRATHWALKER ,
ItemNames . SCOUT ,
ItemNames . HIGH_TEMPLAR ,
ItemNames . SIGNIFIER ,
ItemNames . ASCENDANT ,
ItemNames . DARK_ARCHON ,
ItemNames . SUPPLICANT ,
} )
}
not_balanced_starting_units = {
ItemNames . SIEGE_TANK ,
ItemNames . THOR ,
ItemNames . BANSHEE ,
ItemNames . BATTLECRUISER ,
ItemNames . ULTRALISK ,
ItemNames . CARRIER ,
ItemNames . TEMPEST ,
}
def get_basic_units ( world : World , race : SC2Race ) - > typing . Set [ str ] :
logic_level = get_option_value ( world , ' required_tactics ' )
if logic_level == RequiredTactics . option_no_logic :
return no_logic_starting_units [ race ]
elif logic_level == RequiredTactics . option_advanced :
return advanced_basic_units [ race ]
else :
return basic_units [ race ]
# Items that can be placed before resources if not already in
# General upgrades and Mercs
second_pass_placeable_items : typing . Tuple [ str , . . . ] = (
# Global weapon/armor upgrades
ItemNames . PROGRESSIVE_TERRAN_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_TERRAN_WEAPON_UPGRADE ,
ItemNames . PROGRESSIVE_TERRAN_WEAPON_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_WEAPON_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_WEAPON_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_WEAPON_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_WEAPON_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_SHIELDS ,
# Terran Buildings without upgrades
ItemNames . SENSOR_TOWER ,
ItemNames . HIVE_MIND_EMULATOR ,
ItemNames . PSI_DISRUPTER ,
ItemNames . PERDITION_TURRET ,
# Terran units without upgrades
ItemNames . HERC ,
ItemNames . WARHOUND ,
# General Terran upgrades without any dependencies
ItemNames . SCV_ADVANCED_CONSTRUCTION ,
ItemNames . SCV_DUAL_FUSION_WELDERS ,
ItemNames . PROGRESSIVE_FIRE_SUPPRESSION_SYSTEM ,
ItemNames . PROGRESSIVE_ORBITAL_COMMAND ,
ItemNames . ULTRA_CAPACITORS ,
ItemNames . VANADIUM_PLATING ,
ItemNames . ORBITAL_DEPOTS ,
ItemNames . MICRO_FILTERING ,
ItemNames . AUTOMATED_REFINERY ,
ItemNames . COMMAND_CENTER_REACTOR ,
ItemNames . TECH_REACTOR ,
ItemNames . CELLULAR_REACTOR ,
ItemNames . PROGRESSIVE_REGENERATIVE_BIO_STEEL , # Place only L1
ItemNames . STRUCTURE_ARMOR ,
ItemNames . HI_SEC_AUTO_TRACKING ,
ItemNames . ADVANCED_OPTICS ,
ItemNames . ROGUE_FORCES ,
# Mercenaries (All races)
* [ item_name for item_name , item_data in get_full_item_list ( ) . items ( )
if item_data . type == " Mercenary " ] ,
# Kerrigan and Nova levels, abilities and generally useful stuff
* [ item_name for item_name , item_data in get_full_item_list ( ) . items ( )
if item_data . type in ( " Level " , " Ability " , " Evolution Pit " , " Nova Gear " ) ] ,
ItemNames . NOVA_PROGRESSIVE_STEALTH_SUIT_MODULE ,
# Zerg static defenses
ItemNames . SPORE_CRAWLER ,
ItemNames . SPINE_CRAWLER ,
# Defiler, Aberration (no upgrades)
ItemNames . DEFILER ,
ItemNames . ABERRATION ,
# Spear of Adun Abilities
ItemNames . SOA_CHRONO_SURGE ,
ItemNames . SOA_PROGRESSIVE_PROXY_PYLON ,
ItemNames . SOA_PYLON_OVERCHARGE ,
ItemNames . SOA_ORBITAL_STRIKE ,
ItemNames . SOA_TEMPORAL_FIELD ,
ItemNames . SOA_SOLAR_LANCE ,
ItemNames . SOA_MASS_RECALL ,
ItemNames . SOA_SHIELD_OVERCHARGE ,
ItemNames . SOA_DEPLOY_FENIX ,
ItemNames . SOA_PURIFIER_BEAM ,
ItemNames . SOA_TIME_STOP ,
ItemNames . SOA_SOLAR_BOMBARDMENT ,
# Protoss generic upgrades
ItemNames . MATRIX_OVERLOAD ,
ItemNames . QUATRO ,
ItemNames . NEXUS_OVERCHARGE ,
ItemNames . ORBITAL_ASSIMILATORS ,
ItemNames . WARP_HARMONIZATION ,
ItemNames . GUARDIAN_SHELL ,
ItemNames . RECONSTRUCTION_BEAM ,
ItemNames . OVERWATCH ,
ItemNames . SUPERIOR_WARP_GATES ,
ItemNames . KHALAI_INGENUITY ,
ItemNames . AMPLIFIED_ASSIMILATORS ,
# Protoss static defenses
ItemNames . PHOTON_CANNON ,
ItemNames . KHAYDARIN_MONOLITH ,
ItemNames . SHIELD_BATTERY
)
filler_items : typing . Tuple [ str , . . . ] = (
ItemNames . STARTING_MINERALS ,
ItemNames . STARTING_VESPENE ,
ItemNames . STARTING_SUPPLY ,
)
# Defense rating table
# Commented defense ratings are handled in LogicMixin
defense_ratings = {
ItemNames . SIEGE_TANK : 5 ,
# "Maelstrom Rounds": 2,
ItemNames . PLANETARY_FORTRESS : 3 ,
# Bunker w/ Marine/Marauder: 3,
ItemNames . PERDITION_TURRET : 2 ,
ItemNames . VULTURE : 1 ,
ItemNames . BANSHEE : 1 ,
ItemNames . BATTLECRUISER : 1 ,
ItemNames . LIBERATOR : 4 ,
ItemNames . WIDOW_MINE : 1 ,
# "Concealment (Widow Mine)": 1
}
zerg_defense_ratings = {
ItemNames . PERDITION_TURRET : 2 ,
# Bunker w/ Firebat: 2,
ItemNames . LIBERATOR : - 2 ,
ItemNames . HIVE_MIND_EMULATOR : 3 ,
ItemNames . PSI_DISRUPTER : 3 ,
}
air_defense_ratings = {
ItemNames . MISSILE_TURRET : 2 ,
}
kerrigan_levels = [ item_name for item_name , item_data in get_full_item_list ( ) . items ( )
if item_data . type == " Level " and item_data . race == SC2Race . ZERG ]
spider_mine_sources = {
ItemNames . VULTURE ,
ItemNames . REAPER_SPIDER_MINES ,
ItemNames . SIEGE_TANK_SPIDER_MINES ,
ItemNames . RAVEN_SPIDER_MINES ,
}
progressive_if_nco = {
ItemNames . MARINE_PROGRESSIVE_STIMPACK ,
ItemNames . FIREBAT_PROGRESSIVE_STIMPACK ,
ItemNames . BANSHEE_PROGRESSIVE_CROSS_SPECTRUM_DAMPENERS ,
ItemNames . PROGRESSIVE_REGENERATIVE_BIO_STEEL ,
}
progressive_if_ext = {
ItemNames . VULTURE_PROGRESSIVE_REPLENISHABLE_MAGAZINE ,
ItemNames . WRAITH_PROGRESSIVE_TOMAHAWK_POWER_CELLS ,
ItemNames . BATTLECRUISER_PROGRESSIVE_DEFENSIVE_MATRIX ,
ItemNames . BATTLECRUISER_PROGRESSIVE_MISSILE_PODS ,
ItemNames . THOR_PROGRESSIVE_IMMORTALITY_PROTOCOL ,
ItemNames . PROGRESSIVE_FIRE_SUPPRESSION_SYSTEM ,
2024-09-26 22:57:21 +00:00
ItemNames . DIAMONDBACK_PROGRESSIVE_TRI_LITHIUM_POWER_CELL ,
ItemNames . PROGRESSIVE_ORBITAL_COMMAND
2024-03-15 16:33:03 +00:00
}
kerrigan_actives : typing . List [ typing . Set [ str ] ] = [
{ ItemNames . KERRIGAN_KINETIC_BLAST , ItemNames . KERRIGAN_LEAPING_STRIKE } ,
{ ItemNames . KERRIGAN_CRUSHING_GRIP , ItemNames . KERRIGAN_PSIONIC_SHIFT } ,
set ( ) ,
{ ItemNames . KERRIGAN_WILD_MUTATION , ItemNames . KERRIGAN_SPAWN_BANELINGS , ItemNames . KERRIGAN_MEND } ,
set ( ) ,
set ( ) ,
{ ItemNames . KERRIGAN_APOCALYPSE , ItemNames . KERRIGAN_SPAWN_LEVIATHAN , ItemNames . KERRIGAN_DROP_PODS } ,
]
kerrigan_passives : typing . List [ typing . Set [ str ] ] = [
{ ItemNames . KERRIGAN_HEROIC_FORTITUDE } ,
{ ItemNames . KERRIGAN_CHAIN_REACTION } ,
{ ItemNames . KERRIGAN_ZERGLING_RECONSTITUTION , ItemNames . KERRIGAN_IMPROVED_OVERLORDS , ItemNames . KERRIGAN_AUTOMATED_EXTRACTORS } ,
set ( ) ,
{ ItemNames . KERRIGAN_TWIN_DRONES , ItemNames . KERRIGAN_MALIGNANT_CREEP , ItemNames . KERRIGAN_VESPENE_EFFICIENCY } ,
{ ItemNames . KERRIGAN_INFEST_BROODLINGS , ItemNames . KERRIGAN_FURY , ItemNames . KERRIGAN_ABILITY_EFFICIENCY } ,
set ( ) ,
]
kerrigan_only_passives = {
ItemNames . KERRIGAN_HEROIC_FORTITUDE , ItemNames . KERRIGAN_CHAIN_REACTION ,
ItemNames . KERRIGAN_INFEST_BROODLINGS , ItemNames . KERRIGAN_FURY , ItemNames . KERRIGAN_ABILITY_EFFICIENCY ,
}
spear_of_adun_calldowns = {
ItemNames . SOA_CHRONO_SURGE ,
ItemNames . SOA_PROGRESSIVE_PROXY_PYLON ,
ItemNames . SOA_PYLON_OVERCHARGE ,
ItemNames . SOA_ORBITAL_STRIKE ,
ItemNames . SOA_TEMPORAL_FIELD ,
ItemNames . SOA_SOLAR_LANCE ,
ItemNames . SOA_MASS_RECALL ,
ItemNames . SOA_SHIELD_OVERCHARGE ,
ItemNames . SOA_DEPLOY_FENIX ,
ItemNames . SOA_PURIFIER_BEAM ,
ItemNames . SOA_TIME_STOP ,
ItemNames . SOA_SOLAR_BOMBARDMENT
}
spear_of_adun_castable_passives = {
ItemNames . RECONSTRUCTION_BEAM ,
ItemNames . OVERWATCH ,
}
nova_equipment = {
* [ item_name for item_name , item_data in get_full_item_list ( ) . items ( )
if item_data . type == " Nova Gear " ] ,
ItemNames . NOVA_PROGRESSIVE_STEALTH_SUIT_MODULE
}
# 'number' values of upgrades for upgrade bundle items
upgrade_numbers = [
# Terran
{ 0 , 4 , 8 } , # Weapon
{ 2 , 6 , 10 } , # Armor
{ 0 , 2 } , # Infantry
{ 4 , 6 } , # Vehicle
{ 8 , 10 } , # Starship
{ 0 , 2 , 4 , 6 , 8 , 10 } , # All
# Zerg
{ 0 , 2 , 6 } , # Weapon
{ 4 , 8 } , # Armor
{ 0 , 2 , 4 } , # Ground
{ 6 , 8 } , # Flyer
{ 0 , 2 , 4 , 6 , 8 } , # All
# Protoss
{ 0 , 6 } , # Weapon
{ 2 , 4 , 8 } , # Armor
{ 0 , 2 } , # Ground, Shields are handled specially
{ 6 , 8 } , # Air, Shields are handled specially
{ 0 , 2 , 4 , 6 , 8 } , # All
]
# 'upgrade_numbers' indices for all upgrades
upgrade_numbers_all = {
SC2Race . TERRAN : 5 ,
SC2Race . ZERG : 10 ,
SC2Race . PROTOSS : 15 ,
}
# Names of upgrades to be included for different options
upgrade_included_names = [
{ # Individual Items
ItemNames . PROGRESSIVE_TERRAN_INFANTRY_WEAPON ,
ItemNames . PROGRESSIVE_TERRAN_INFANTRY_ARMOR ,
ItemNames . PROGRESSIVE_TERRAN_VEHICLE_WEAPON ,
ItemNames . PROGRESSIVE_TERRAN_VEHICLE_ARMOR ,
ItemNames . PROGRESSIVE_TERRAN_SHIP_WEAPON ,
ItemNames . PROGRESSIVE_TERRAN_SHIP_ARMOR ,
ItemNames . PROGRESSIVE_ZERG_MELEE_ATTACK ,
ItemNames . PROGRESSIVE_ZERG_MISSILE_ATTACK ,
ItemNames . PROGRESSIVE_ZERG_GROUND_CARAPACE ,
ItemNames . PROGRESSIVE_ZERG_FLYER_ATTACK ,
ItemNames . PROGRESSIVE_ZERG_FLYER_CARAPACE ,
ItemNames . PROGRESSIVE_PROTOSS_GROUND_WEAPON ,
ItemNames . PROGRESSIVE_PROTOSS_GROUND_ARMOR ,
ItemNames . PROGRESSIVE_PROTOSS_SHIELDS ,
ItemNames . PROGRESSIVE_PROTOSS_AIR_WEAPON ,
ItemNames . PROGRESSIVE_PROTOSS_AIR_ARMOR ,
} ,
{ # Bundle Weapon And Armor
ItemNames . PROGRESSIVE_TERRAN_WEAPON_UPGRADE ,
ItemNames . PROGRESSIVE_TERRAN_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_WEAPON_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_WEAPON_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_ARMOR_UPGRADE ,
} ,
{ # Bundle Unit Class
ItemNames . PROGRESSIVE_TERRAN_INFANTRY_UPGRADE ,
ItemNames . PROGRESSIVE_TERRAN_VEHICLE_UPGRADE ,
ItemNames . PROGRESSIVE_TERRAN_SHIP_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_GROUND_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_FLYER_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_GROUND_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_AIR_UPGRADE ,
} ,
{ # Bundle All
ItemNames . PROGRESSIVE_TERRAN_WEAPON_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_ZERG_WEAPON_ARMOR_UPGRADE ,
ItemNames . PROGRESSIVE_PROTOSS_WEAPON_ARMOR_UPGRADE ,
}
]
lookup_id_to_name : typing . Dict [ int , str ] = { data . code : item_name for item_name , data in get_full_item_list ( ) . items ( ) if
data . code }
# Map type to expected int
type_flaggroups : typing . Dict [ SC2Race , typing . Dict [ str , int ] ] = {
SC2Race . ANY : {
" Minerals " : 0 ,
" Vespene " : 1 ,
" Supply " : 2 ,
" Goal " : 3 ,
" Nothing Group " : 4 ,
} ,
SC2Race . TERRAN : {
" Armory 1 " : 0 ,
" Armory 2 " : 1 ,
" Armory 3 " : 2 ,
" Armory 4 " : 3 ,
" Armory 5 " : 4 ,
" Armory 6 " : 5 ,
" Progressive Upgrade " : 6 , # Unit upgrades that exist multiple times (Stimpack / Super Stimpack)
" Laboratory " : 7 ,
" Upgrade " : 8 , # Weapon / Armor upgrades
" Unit " : 9 ,
" Building " : 10 ,
" Mercenary " : 11 ,
" Nova Gear " : 12 ,
" Progressive Upgrade 2 " : 13 ,
} ,
SC2Race . ZERG : {
" Ability " : 0 ,
" Mutation 1 " : 1 ,
" Strain " : 2 ,
" Morph " : 3 ,
" Upgrade " : 4 ,
" Mercenary " : 5 ,
" Unit " : 6 ,
" Level " : 7 ,
" Primal Form " : 8 ,
" Evolution Pit " : 9 ,
" Mutation 2 " : 10 ,
" Mutation 3 " : 11
} ,
SC2Race . PROTOSS : {
" Unit " : 0 ,
" Unit 2 " : 1 ,
" Upgrade " : 2 , # Weapon / Armor upgrades
" Building " : 3 ,
" Progressive Upgrade " : 4 ,
" Spear of Adun " : 5 ,
" Solarite Core " : 6 ,
" Forge 1 " : 7 ,
" Forge 2 " : 8 ,
" Forge 3 " : 9 ,
}
}