Revenant
Undead
monster no drops or experience [1]
Gain 100% of Physical Damage as Extra Cold Damage
Your hits can't be Evaded
cannot be afflicted [1]
cannot be tagged by sentinel [1]
cannot have affliction mods [1]
cannot have azmeri dust [1]
cant possess this [1]
cant touch this [1]
monster no talismans [1]
SpectreN
TagsCaster, fire_affinity, ghost, ghost_armour, ghost_blood, is_unarmed, melee, not_dex, not_str, physical_affinity, undead, very_slow_movement
Life
300%
Energy Shield From Life
20%
Ailment Threshold
300%
Resistance
0 40 0 0
Damage
60%
Accuracy
100%
Critical Strike Chance
+5%
Critical Strike Multiplier
+130%
Attack Distance
6 ~ 15
Attack Time
1.995 Second
Damage Spread
±20%
Experience
200%
Model Size
100%
Type
VaalWraithUltimatum
Metadata
Revenant
Level
68
Life
19,300
Armour
28,790
Evasion Rating
4,739
Energy Shield
3,676
Damage
224
Spell Damage
224
Accuracy
580
Attack Time
1.995
Experience
20,510
Minion Life
4,186
Minion Energy Shield
797
Minion Damage
179
Ailment Threshold
19,300
Chill
61
Shock
61
Brittle
345
Scorch
61
Sap
169
Phys Convert Ele
240%
UltimatumMeleeApplyRuin
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Default Attack
Base Damage: 179–269
Critical Strike Chance: 5%
Attack Time: 1.995 sec
Strike your foes down with a powerful blow.
apply ultimatum ruin on hit [1]
skill can fire arrows [1]
skill can fire wand projectiles [1]
MPSPhantasmBasicRuin
Spell, Projectile, ProjectilesFromUser, Triggerable
Cast Time: 1.17 sec
Deals 649.9 to 974.8 Fire Damage
apply ultimatum ruin on hit [1]
base is projectile [1]
maintain projectile direction when using contact position [1]
monster projectile variation [188]
projectile uses contact position [1]
spell maximum action distance +% [-40]
use scaled contact offset [1]
MPSRevenantRuinSpray
Spell, Projectile, ProjectilesFromUser, Triggerable
Cast Time: 3 sec
Cooldown Time: 12 sec
Deals 620.7 to 931 Fire Damage
Fires 6 additional Projectiles
apply ultimatum ruin on hit [1]
base is projectile [1]
monster projectile variation [188]
projectile uses contact direction [1]
projectile uses contact position [1]
spell maximum action distance +% [-40]
total projectile spread angle override [80]
use scaled contact offset [1]
EAAUltimatumRevenantTeleport
Spell
Cast Time: 1.13 sec
Cooldown Time: 4 sec
action attack or cast time uses animation length [1]
skill cannot be knocked back [1]
skill cannot be stunned [1]
MPSUltimatumRevanantRuinSpray2
Spell, Projectile, ProjectilesFromUser, Triggerable
Cast Time: 0.75 sec
Deals 649.9 to 974.8 Fire Damage
Fires 2 additional Projectiles
apply ultimatum ruin on hit [1]
base is projectile [1]
maintain projectile direction when using contact position [1]
monster projectile variation [188]
projectile uses contact position [1]
spell maximum action distance +% [-20]
use scaled contact offset [1]

Object Type

version 2
extends "Metadata/Monsters/LeagueUltimatum/UltimatumMonsterBase"

Stats
{
	immune_to_curses = 1
	immune_to_auras_from_other_entities = 1
	set_item_drop_slots = 0
	set_monster_no_drops_or_experience = 1
	set_monster_do_not_fracture = 1
	set_max_frenzy_charges = 0
	set_max_endurance_charges = 0
	set_max_power_charges = 0
	base_cannot_be_stunned = 1
	cannot_be_knocked_back = 1
	set_phase_through_objects = 1
}

Actor
{
	slow_animations_go_to_idle = false
}

Life
{
	corpse_usable = false
}

StateMachine
{
	define_shared_state = "no_ruin_epk"
}

Object Type Codes

version 2
extends "Metadata/Monsters/LeagueUltimatum/UltimatumMonsterBase"

BaseEvents
{
	on_construction_complete =
	"
		AddEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk );
		Delay( 1, { RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk ); } );
	"

	on_sleep = "RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk );"
}

Life
{
	on_death = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_out.epk );"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/LeagueUltimatum/Wraith/Revenant"] = {
    name = "Revenant",
    life = 3,
    energyShield = 0.2,
    fireResist = 0,
    coldResist = 40,
    lightningResist = 0,
    chaosResist = 0,
    damage = 0.6,
    damageSpread = 0.2,
    attackTime = 1.995,
    attackRange = 15,
    accuracy = 1,
    skillList = {
        "UltimatumMeleeApplyRuin",
        "MPSUltimatumRevanantRuinSpray2",
        "EAAUltimatumRevenantTeleport",
        "MPSPhantasmBasicRuin",
        "MPSRevenantRuinSpray",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["UltimatumMeleeApplyRuin"] = {
    name = "Default Attack",
    hidden = true,
    color = "4",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Strike your foes down with a powerful blow.",
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Multistrikeable] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "apply_ultimatum_ruin_on_hit",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSUltimatumRevanantRuinSpray2"] = {
    name = "MPSUltimatumRevanantRuinSpray2",
    hidden = true,
    color = "4",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.75,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "monster_projectile_variation",
        "spell_maximum_action_distance_+%",
        "number_of_additional_projectiles",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "maintain_projectile_direction_when_using_contact_position",
        "apply_ultimatum_ruin_on_hit",
        "base_is_projectile",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 188, -20, 2, levelRequirement = 0, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAUltimatumRevenantTeleport"] = {
    name = "EAAUltimatumRevenantTeleport",
    hidden = true,
    color = "4",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.13,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSPhantasmBasicRuin"] = {
    name = "MPSPhantasmBasicRuin",
    hidden = true,
    color = "4",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.17,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "monster_projectile_variation",
        "spell_maximum_action_distance_+%",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "maintain_projectile_direction_when_using_contact_position",
        "apply_ultimatum_ruin_on_hit",
        "base_is_projectile",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 188, -40, levelRequirement = 0, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSRevenantRuinSpray"] = {
    name = "MPSRevenantRuinSpray",
    hidden = true,
    color = "4",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 3,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "monster_projectile_variation",
        "spell_maximum_action_distance_+%",
        "number_of_additional_projectiles",
        "total_projectile_spread_angle_override",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "projectile_uses_contact_direction",
        "apply_ultimatum_ruin_on_hit",
        "base_is_projectile",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 188, -40, 6, 80, levelRequirement = 0, statInterpolation = {3, 3},  cost = { }, },
    },
}
monster no drops or experience [1]
FamilyMonsterNoDropsOrExperience
DomainsMonster (3)
GenerationTypeUnique (3)
Req. level1
Stats
  • monster no drops or experience Min: 1 Max: 1 Global
  • Gain 100% of Physical Damage as Extra Cold Damage
    FamilyPhysicalAddedAsCold
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • physical damage % to add as cold Min: 100 Max: 100 Global
  • Craft Tagsphysical_damage elemental_damage Damage Physical Elemental Cold
    Your hits can't be Evaded
    FamilyAlwaysHits
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • global always hit Min: 1 Max: 1 Global
  • Craft TagsAttack
    cannot be afflicted [1]
    cannot be tagged by sentinel [1]
    cannot have affliction mods [1]
    cannot have azmeri dust [1]
    cant possess this [1]
    cant touch this [1]
    monster no talismans [1]
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • cant touch this Min: 1 Max: 1 Global
  • cant possess this Min: 1 Max: 1 Global
  • cannot be afflicted Min: 1 Max: 1 Global
  • monster no talismans Min: 1 Max: 1 Global
  • cannot have azmeri dust Min: 1 Max: 1 Global
  • cannot have affliction mods Min: 1 Max: 1 Global
  • cannot be tagged by sentinel Min: 1 Max: 1 Global
  • keyval
    Stats.item_drop_slots0
    Stats.energy_shield_recharge_rate_per_minute_%2000
    Stats.mana_regeneration_rate_per_minute_%100
    Stats.base_maximum_mana200
    Stats.maximum_physical_damage_reduction_%75
    Stats.max_viper_strike_orbs4
    Stats.base_maximum_all_resistances_%75
    Stats.max_fuse_arrow_orbs5
    Stats.max_fire_beam_stacks8
    Stats.max_charged_attack_stacks10
    Stats.base_critical_strike_multiplier130
    Stats.critical_ailment_dot_multiplier_+30
    Stats.max_endurance_charges0
    Stats.max_frenzy_charges0
    Stats.max_power_charges0
    Stats.base_attack_speed_+%_per_frenzy_charge4
    Stats.base_attack_speed_+%_per_frenzy_charge_if_not_player_minion11
    Stats.base_cast_speed_+%_per_frenzy_charge4
    Stats.base_cast_speed_+%_per_frenzy_charge_if_not_player_minion11
    Stats.movement_velocity_+%_per_frenzy_charge_if_not_player_minion5
    Stats.object_inherent_damage_+%_final_per_frenzy_charge4
    Stats.physical_damage_reduction_%_per_endurance_charge4
    Stats.physical_damage_reduction_%_per_endurance_charge_if_not_player_minion11
    Stats.resist_all_elements_%_per_endurance_charge4
    Stats.resist_all_elements_%_per_endurance_charge_if_not_player_minion11
    Stats.critical_strike_chance_+%_per_power_charge50
    Stats.critical_strike_chance_+%_per_power_charge_if_not_player_minion150
    Stats.maximum_block_%75
    Stats.base_maximum_spell_block_%75
    Stats.base_number_of_totems_allowed1
    Stats.base_number_of_traps_allowed3
    Stats.base_number_of_remote_mines_allowed5
    Stats.movement_velocity_cap128
    Stats.maximum_life_leech_rate_%_per_minute1200
    Stats.maximum_mana_leech_rate_%_per_minute1200
    Stats.maximum_energy_shield_leech_rate_%_per_minute600
    Stats.monster_ignite_damage_+%_final-72
    Stats.monster_bleeding_damage_+%_final-86
    Stats.monster_poison_damage_+%_final-50
    Stats.bleeding_moving_damage_%_of_base_override500
    Stats.max_azurite_debuff_stacks10
    Stats.impaled_debuff_base_duration_ms8000
    Stats.impaled_debuff_number_of_reflected_hits5
    Stats.ignore_skill_weapon_restrictions1
    Stats.base_total_number_of_sigils_allowed3
    Stats.maximum_life_leech_amount_per_leech_%_max_life10
    Stats.maximum_mana_leech_amount_per_leech_%_max_mana10
    Stats.maximum_energy_shield_leech_amount_per_leech_%_max_energy_shield10
    Stats.object_inherent_melee_hit_stun_duration_+%_final20
    Stats.scale_melee_range_to_actor_scale1
    Stats.use_melee_pattern_range1
    Stats.actor_scale_+%_limit100
    Stats.damage_taken_when_hit_+%_final_per_fortification-1
    Stats.base_max_fortification20
    Stats.soul_eater_maximum_stacks45
    Stats.monster_beyond_portal_chance_+%_final-75
    Stats.monster_hellscape_charge_+%-75
    Stats.monster_affliction_reward_kills_+%-75
    Stats.monster_no_drops1
    Stats.additional_life_scaling_index19
    Stats.immune_to_curses1
    Stats.immune_to_auras_from_other_entities1
    Stats.monster_no_drops_or_experience1
    Stats.monster_do_not_fracture1
    Stats.base_cannot_be_stunned1
    Stats.cannot_be_knocked_back1
    Stats.phase_through_objects1
    ObjectMagicProperties.stat_description_listMetadata/StatDescriptions/monster_stat_descriptions.txt
    Positioned.blockingtrue
    Positioned.team0
    Positioned.serialise_collidabletrue
    BaseEvents.server_onlytrue
    Actor.basic_actionMove, Flee, StrafeLeft, StrafeRight, Advance, DoNothing, MonsterPickup
    Actor.slow_animations_go_to_idletrue, false
    Actor.on_start_action =
    Actor.",
    Actor.IfCurrentActionStat( apply_ultimatum_ruin_on_hit, 1, { SetStateTo( ruinous, 1 ); } );
    Actor.on_end_or_destroy_actionSetStateTo( ruinous, 0 );
    StateMachine.define_shared_state =
    StateMachine.",
    StateMachine.ruinous;
    StateMachine.disintegrated;
    StateMachine.altar_attacker;
    StateMachine.define_shared_stateno_ruin_epk
    Life.corpse_sink_time_ms10000
    Life.corpse_usablefalse
    Revenant
    Undead
    monster no drops or experience [1]
    Gain 100% of Physical Damage as Extra Cold Damage
    Your hits can't be Evaded
    cannot be afflicted [1]
    cannot be tagged by sentinel [1]
    cannot have affliction mods [1]
    cannot have azmeri dust [1]
    cant possess this [1]
    cant touch this [1]
    monster no talismans [1]
    SpectreN
    TagsCaster, fire_affinity, ghost, ghost_armour, ghost_blood, is_unarmed, melee, not_dex, not_str, physical_affinity, undead, very_slow_movement
    Life
    300%
    Energy Shield From Life
    20%
    Ailment Threshold
    300%
    Resistance
    0 40 0 0
    Damage
    60%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 15
    Attack Time
    1.995 Second
    Damage Spread
    ±20%
    Experience
    200%
    Model Size
    100%
    Type
    VaalWraithUltimatum
    Metadata
    RevenantSupporterCaster
    Level
    68
    Life
    19,300
    Armour
    28,790
    Evasion Rating
    4,739
    Energy Shield
    3,676
    Damage
    224
    Spell Damage
    224
    Accuracy
    580
    Attack Time
    1.995
    Experience
    20,510
    Minion Life
    4,186
    Minion Energy Shield
    797
    Minion Damage
    179
    Ailment Threshold
    19,300
    Chill
    61
    Shock
    61
    Brittle
    345
    Scorch
    61
    Sap
    169
    Phys Convert Ele
    240%
    MPSPhantasmBasicRuinSupporter
    Spell, Projectile, ProjectilesFromUser, Triggerable
    Cast Time: 1.17 sec
    apply supporter map ruin on hit [1]
    base is projectile [1]
    maintain projectile direction when using contact position [1]
    monster projectile variation [188]
    projectile uses contact position [1]
    spell maximum action distance +% [-40]
    use scaled contact offset [1]
    MPSRevenantRuinSpraySupporter
    Spell, Projectile, ProjectilesFromUser, Triggerable
    Cast Time: 3 sec
    Fires 6 additional Projectiles
    apply supporter map ruin on hit [1]
    base is projectile [1]
    monster projectile variation [188]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    spell maximum action distance +% [-40]
    total projectile spread angle override [80]
    use scaled contact offset [1]
    MPSUltimatumRevanantRuinSpraySupporter2
    Spell, Projectile, ProjectilesFromUser, Triggerable
    Cast Time: 0.75 sec
    Fires 2 additional Projectiles
    apply supporter map ruin on hit [1]
    base is projectile [1]
    maintain projectile direction when using contact position [1]
    monster projectile variation [188]
    projectile uses contact position [1]
    spell maximum action distance +% [-20]
    use scaled contact offset [1]
    UltimatumMeleeApplyRuinSupporter
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 179–269
    Critical Strike Chance: 5%
    Attack Time: 1.995 sec
    Strike your foes down with a powerful blow.
    apply supporter map ruin on hit [1]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]

    Object Type

    version 2
    extends "Metadata/Monsters/LeagueUltimatum/UltimatumMonsterBase"
    
    Stats
    {
    	immune_to_curses = 1
    	immune_to_auras_from_other_entities = 1
    	set_item_drop_slots = 0
    	set_monster_no_drops_or_experience = 1
    	set_monster_do_not_fracture = 1
    	set_max_frenzy_charges = 0
    	set_max_endurance_charges = 0
    	set_max_power_charges = 0
    	base_cannot_be_stunned = 1
    	cannot_be_knocked_back = 1
    	set_phase_through_objects = 1
    }
    
    Actor
    {
    	slow_animations_go_to_idle = false
    }
    
    Life
    {
    	corpse_usable = false
    }
    
    StateMachine
    {
    	define_shared_state = "no_ruin_epk"
    }
    
    DiesAfterTime
    {
    	time_until_death =  15.0
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/LeagueUltimatum/UltimatumMonsterBase"
    
    BaseEvents
    {
    	on_construction_complete =
    	"
    		AddEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk );
    		Delay( 1, { RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk ); } );
    	"
    
    	on_sleep = "RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk );"
    }
    
    Life
    {
    	on_death = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_out.epk );"
    }
    
    Preload
    {
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/ruin_counter.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/Audio/Ruin/Ruin1Audio.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/Audio/Ruin/Ruin2Audio.ao"
    	preload_epk = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/ruin_count_02.epk"
    	preload_epk = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/ruin_count_01.epk"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/LeagueUltimatum/Wraith/RevenantSupporterCaster"] = {
        name = "Revenant",
        life = 3,
        energyShield = 0.2,
        fireResist = 0,
        coldResist = 40,
        lightningResist = 0,
        chaosResist = 0,
        damage = 0.6,
        damageSpread = 0.2,
        attackTime = 1.995,
        attackRange = 15,
        accuracy = 1,
        skillList = {
            "UltimatumMeleeApplyRuinSupporter",
            "MPSUltimatumRevanantRuinSpraySupporter2",
            "MPSPhantasmBasicRuinSupporter",
            "MPSRevenantRuinSpraySupporter",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["UltimatumMeleeApplyRuinSupporter"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "apply_supporter_map_ruin_on_hit",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSUltimatumRevanantRuinSpraySupporter2"] = {
        name = "MPSUltimatumRevanantRuinSpraySupporter2",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.75,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "spell_maximum_action_distance_+%",
            "number_of_additional_projectiles",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "maintain_projectile_direction_when_using_contact_position",
            "apply_supporter_map_ruin_on_hit",
            "base_is_projectile",
        },
        levels = {
            [1] = {188, -20, 2, levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSPhantasmBasicRuinSupporter"] = {
        name = "MPSPhantasmBasicRuinSupporter",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "spell_maximum_action_distance_+%",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "maintain_projectile_direction_when_using_contact_position",
            "apply_supporter_map_ruin_on_hit",
            "base_is_projectile",
        },
        levels = {
            [1] = {188, -40, levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSRevenantRuinSpraySupporter"] = {
        name = "MPSRevenantRuinSpraySupporter",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 3,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "spell_maximum_action_distance_+%",
            "number_of_additional_projectiles",
            "total_projectile_spread_angle_override",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "projectile_uses_contact_direction",
            "apply_supporter_map_ruin_on_hit",
            "base_is_projectile",
        },
        levels = {
            [1] = {188, -40, 6, 80, levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    
    monster no drops or experience [1]
    FamilyMonsterNoDropsOrExperience
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster no drops or experience Min: 1 Max: 1 Global
  • Gain 100% of Physical Damage as Extra Cold Damage
    FamilyPhysicalAddedAsCold
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • physical damage % to add as cold Min: 100 Max: 100 Global
  • Craft Tagsphysical_damage elemental_damage Damage Physical Elemental Cold
    Your hits can't be Evaded
    FamilyAlwaysHits
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • global always hit Min: 1 Max: 1 Global
  • Craft TagsAttack
    cannot be afflicted [1]
    cannot be tagged by sentinel [1]
    cannot have affliction mods [1]
    cannot have azmeri dust [1]
    cant possess this [1]
    cant touch this [1]
    monster no talismans [1]
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • cant touch this Min: 1 Max: 1 Global
  • cant possess this Min: 1 Max: 1 Global
  • cannot be afflicted Min: 1 Max: 1 Global
  • monster no talismans Min: 1 Max: 1 Global
  • cannot have azmeri dust Min: 1 Max: 1 Global
  • cannot have affliction mods Min: 1 Max: 1 Global
  • cannot be tagged by sentinel Min: 1 Max: 1 Global
  • keyval
    Stats.item_drop_slots0
    Stats.energy_shield_recharge_rate_per_minute_%2000
    Stats.mana_regeneration_rate_per_minute_%100
    Stats.base_maximum_mana200
    Stats.maximum_physical_damage_reduction_%75
    Stats.max_viper_strike_orbs4
    Stats.base_maximum_all_resistances_%75
    Stats.max_fuse_arrow_orbs5
    Stats.max_fire_beam_stacks8
    Stats.max_charged_attack_stacks10
    Stats.base_critical_strike_multiplier130
    Stats.critical_ailment_dot_multiplier_+30
    Stats.max_endurance_charges0
    Stats.max_frenzy_charges0
    Stats.max_power_charges0
    Stats.base_attack_speed_+%_per_frenzy_charge4
    Stats.base_attack_speed_+%_per_frenzy_charge_if_not_player_minion11
    Stats.base_cast_speed_+%_per_frenzy_charge4
    Stats.base_cast_speed_+%_per_frenzy_charge_if_not_player_minion11
    Stats.movement_velocity_+%_per_frenzy_charge_if_not_player_minion5
    Stats.object_inherent_damage_+%_final_per_frenzy_charge4
    Stats.physical_damage_reduction_%_per_endurance_charge4
    Stats.physical_damage_reduction_%_per_endurance_charge_if_not_player_minion11
    Stats.resist_all_elements_%_per_endurance_charge4
    Stats.resist_all_elements_%_per_endurance_charge_if_not_player_minion11
    Stats.critical_strike_chance_+%_per_power_charge50
    Stats.critical_strike_chance_+%_per_power_charge_if_not_player_minion150
    Stats.maximum_block_%75
    Stats.base_maximum_spell_block_%75
    Stats.base_number_of_totems_allowed1
    Stats.base_number_of_traps_allowed3
    Stats.base_number_of_remote_mines_allowed5
    Stats.movement_velocity_cap128
    Stats.maximum_life_leech_rate_%_per_minute1200
    Stats.maximum_mana_leech_rate_%_per_minute1200
    Stats.maximum_energy_shield_leech_rate_%_per_minute600
    Stats.monster_ignite_damage_+%_final-72
    Stats.monster_bleeding_damage_+%_final-86
    Stats.monster_poison_damage_+%_final-50
    Stats.bleeding_moving_damage_%_of_base_override500
    Stats.max_azurite_debuff_stacks10
    Stats.impaled_debuff_base_duration_ms8000
    Stats.impaled_debuff_number_of_reflected_hits5
    Stats.ignore_skill_weapon_restrictions1
    Stats.base_total_number_of_sigils_allowed3
    Stats.maximum_life_leech_amount_per_leech_%_max_life10
    Stats.maximum_mana_leech_amount_per_leech_%_max_mana10
    Stats.maximum_energy_shield_leech_amount_per_leech_%_max_energy_shield10
    Stats.object_inherent_melee_hit_stun_duration_+%_final20
    Stats.scale_melee_range_to_actor_scale1
    Stats.use_melee_pattern_range1
    Stats.actor_scale_+%_limit100
    Stats.damage_taken_when_hit_+%_final_per_fortification-1
    Stats.base_max_fortification20
    Stats.soul_eater_maximum_stacks45
    Stats.monster_beyond_portal_chance_+%_final-75
    Stats.monster_hellscape_charge_+%-75
    Stats.monster_affliction_reward_kills_+%-75
    Stats.monster_no_drops1
    Stats.additional_life_scaling_index19
    Stats.immune_to_curses1
    Stats.immune_to_auras_from_other_entities1
    Stats.monster_no_drops_or_experience1
    Stats.monster_do_not_fracture1
    Stats.base_cannot_be_stunned1
    Stats.cannot_be_knocked_back1
    Stats.phase_through_objects1
    ObjectMagicProperties.stat_description_listMetadata/StatDescriptions/monster_stat_descriptions.txt
    Positioned.blockingtrue
    Positioned.team0
    Positioned.serialise_collidabletrue
    BaseEvents.server_onlytrue
    Actor.basic_actionMove, Flee, StrafeLeft, StrafeRight, Advance, DoNothing, MonsterPickup
    Actor.slow_animations_go_to_idletrue, false
    Actor.on_start_action =
    Actor.",
    Actor.IfCurrentActionStat( apply_ultimatum_ruin_on_hit, 1, { SetStateTo( ruinous, 1 ); } );
    Actor.on_end_or_destroy_actionSetStateTo( ruinous, 0 );
    StateMachine.define_shared_state =
    StateMachine.",
    StateMachine.ruinous;
    StateMachine.disintegrated;
    StateMachine.altar_attacker;
    StateMachine.define_shared_stateno_ruin_epk
    Life.corpse_sink_time_ms10000
    Life.corpse_usablefalse
    DiesAfterTime.time_until_death 15.0
    Revenant
    Undead
    monster no drops or experience [1]
    Gain 100% of Physical Damage as Extra Cold Damage
    Your hits can't be Evaded
    cannot be afflicted [1]
    cannot be tagged by sentinel [1]
    cannot have affliction mods [1]
    cannot have azmeri dust [1]
    cant possess this [1]
    cant touch this [1]
    monster no talismans [1]
    SpectreN
    TagsCaster, fire_affinity, ghost, ghost_armour, ghost_blood, is_unarmed, melee, not_dex, not_str, physical_affinity, slow_movement, undead
    Life
    300%
    Energy Shield From Life
    20%
    Ailment Threshold
    300%
    Resistance
    0 40 0 0
    Damage
    60%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 15
    Attack Time
    1.995 Second
    Damage Spread
    ±20%
    Experience
    200%
    Model Size
    100%
    Type
    VaalWraithUltimatum
    Metadata
    RevenantSupporterMelee
    Level
    68
    Life
    19,300
    Armour
    28,790
    Evasion Rating
    4,739
    Energy Shield
    3,676
    Damage
    224
    Spell Damage
    224
    Accuracy
    580
    Attack Time
    1.995
    Experience
    20,510
    Minion Life
    4,186
    Minion Energy Shield
    797
    Minion Damage
    179
    Ailment Threshold
    19,300
    Chill
    61
    Shock
    61
    Brittle
    345
    Scorch
    61
    Sap
    169
    Phys Convert Ele
    240%
    UltimatumMeleeApplyRuinSupporter
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 179–269
    Critical Strike Chance: 5%
    Attack Time: 1.995 sec
    Strike your foes down with a powerful blow.
    apply supporter map ruin on hit [1]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    EAAUltimatumRevenantTeleport
    Spell
    Cast Time: 1.13 sec
    Cooldown Time: 4 sec
    action attack or cast time uses animation length [1]
    skill cannot be knocked back [1]
    skill cannot be stunned [1]

    Object Type

    version 2
    extends "Metadata/Monsters/LeagueUltimatum/UltimatumMonsterBase"
    
    Stats
    {
    	immune_to_curses = 1
    	immune_to_auras_from_other_entities = 1
    	set_item_drop_slots = 0
    	set_monster_no_drops_or_experience = 1
    	set_monster_do_not_fracture = 1
    	set_max_frenzy_charges = 0
    	set_max_endurance_charges = 0
    	set_max_power_charges = 0
    	base_cannot_be_stunned = 1
    	cannot_be_knocked_back = 1
    	set_phase_through_objects = 1
    }
    
    Actor
    {
    	slow_animations_go_to_idle = false
    }
    
    Life
    {
    	corpse_usable = false
    }
    
    StateMachine
    {
    	define_shared_state = "no_ruin_epk"
    }
    
    DiesAfterTime
    {
    	time_until_death =  15.0
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/LeagueUltimatum/UltimatumMonsterBase"
    
    BaseEvents
    {
    	on_construction_complete =
    	"
    		AddEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk );
    		Delay( 1, { RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk ); } );
    	"
    
    	on_sleep = "RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_in.epk );"
    }
    
    Life
    {
    	on_death = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/revenant_fade_out.epk );"
    }
    
    Preload
    {
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/ruin_counter.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/Audio/Ruin/Ruin1Audio.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/Audio/Ruin/Ruin2Audio.ao"
    	preload_epk = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/ruin_count_02.epk"
    	preload_epk = "Metadata/Effects/Spells/monsters_effects/League_Ultimatum/mechanics/EPKs/ruin_count_01.epk"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/LeagueUltimatum/Wraith/RevenantSupporterMelee"] = {
        name = "Revenant",
        life = 3,
        energyShield = 0.2,
        fireResist = 0,
        coldResist = 40,
        lightningResist = 0,
        chaosResist = 0,
        damage = 0.6,
        damageSpread = 0.2,
        attackTime = 1.995,
        attackRange = 15,
        accuracy = 1,
        skillList = {
            "UltimatumMeleeApplyRuinSupporter",
            "EAAUltimatumRevenantTeleport",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["UltimatumMeleeApplyRuinSupporter"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "apply_supporter_map_ruin_on_hit",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAUltimatumRevenantTeleport"] = {
        name = "EAAUltimatumRevenantTeleport",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.13,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_cannot_be_stunned",
            "skill_cannot_be_knocked_back",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    
    monster no drops or experience [1]
    FamilyMonsterNoDropsOrExperience
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster no drops or experience Min: 1 Max: 1 Global
  • Gain 100% of Physical Damage as Extra Cold Damage
    FamilyPhysicalAddedAsCold
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • physical damage % to add as cold Min: 100 Max: 100 Global
  • Craft Tagsphysical_damage elemental_damage Damage Physical Elemental Cold
    Your hits can't be Evaded
    FamilyAlwaysHits
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • global always hit Min: 1 Max: 1 Global
  • Craft TagsAttack
    cannot be afflicted [1]
    cannot be tagged by sentinel [1]
    cannot have affliction mods [1]
    cannot have azmeri dust [1]
    cant possess this [1]
    cant touch this [1]
    monster no talismans [1]
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • cant touch this Min: 1 Max: 1 Global
  • cant possess this Min: 1 Max: 1 Global
  • cannot be afflicted Min: 1 Max: 1 Global
  • monster no talismans Min: 1 Max: 1 Global
  • cannot have azmeri dust Min: 1 Max: 1 Global
  • cannot have affliction mods Min: 1 Max: 1 Global
  • cannot be tagged by sentinel Min: 1 Max: 1 Global
  • keyval
    Stats.item_drop_slots0
    Stats.energy_shield_recharge_rate_per_minute_%2000
    Stats.mana_regeneration_rate_per_minute_%100
    Stats.base_maximum_mana200
    Stats.maximum_physical_damage_reduction_%75
    Stats.max_viper_strike_orbs4
    Stats.base_maximum_all_resistances_%75
    Stats.max_fuse_arrow_orbs5
    Stats.max_fire_beam_stacks8
    Stats.max_charged_attack_stacks10
    Stats.base_critical_strike_multiplier130
    Stats.critical_ailment_dot_multiplier_+30
    Stats.max_endurance_charges0
    Stats.max_frenzy_charges0
    Stats.max_power_charges0
    Stats.base_attack_speed_+%_per_frenzy_charge4
    Stats.base_attack_speed_+%_per_frenzy_charge_if_not_player_minion11
    Stats.base_cast_speed_+%_per_frenzy_charge4
    Stats.base_cast_speed_+%_per_frenzy_charge_if_not_player_minion11
    Stats.movement_velocity_+%_per_frenzy_charge_if_not_player_minion5
    Stats.object_inherent_damage_+%_final_per_frenzy_charge4
    Stats.physical_damage_reduction_%_per_endurance_charge4
    Stats.physical_damage_reduction_%_per_endurance_charge_if_not_player_minion11
    Stats.resist_all_elements_%_per_endurance_charge4
    Stats.resist_all_elements_%_per_endurance_charge_if_not_player_minion11
    Stats.critical_strike_chance_+%_per_power_charge50
    Stats.critical_strike_chance_+%_per_power_charge_if_not_player_minion150
    Stats.maximum_block_%75
    Stats.base_maximum_spell_block_%75
    Stats.base_number_of_totems_allowed1
    Stats.base_number_of_traps_allowed3
    Stats.base_number_of_remote_mines_allowed5
    Stats.movement_velocity_cap128
    Stats.maximum_life_leech_rate_%_per_minute1200
    Stats.maximum_mana_leech_rate_%_per_minute1200
    Stats.maximum_energy_shield_leech_rate_%_per_minute600
    Stats.monster_ignite_damage_+%_final-72
    Stats.monster_bleeding_damage_+%_final-86
    Stats.monster_poison_damage_+%_final-50
    Stats.bleeding_moving_damage_%_of_base_override500
    Stats.max_azurite_debuff_stacks10
    Stats.impaled_debuff_base_duration_ms8000
    Stats.impaled_debuff_number_of_reflected_hits5
    Stats.ignore_skill_weapon_restrictions1
    Stats.base_total_number_of_sigils_allowed3
    Stats.maximum_life_leech_amount_per_leech_%_max_life10
    Stats.maximum_mana_leech_amount_per_leech_%_max_mana10
    Stats.maximum_energy_shield_leech_amount_per_leech_%_max_energy_shield10
    Stats.object_inherent_melee_hit_stun_duration_+%_final20
    Stats.scale_melee_range_to_actor_scale1
    Stats.use_melee_pattern_range1
    Stats.actor_scale_+%_limit100
    Stats.damage_taken_when_hit_+%_final_per_fortification-1
    Stats.base_max_fortification20
    Stats.soul_eater_maximum_stacks45
    Stats.monster_beyond_portal_chance_+%_final-75
    Stats.monster_hellscape_charge_+%-75
    Stats.monster_affliction_reward_kills_+%-75
    Stats.monster_no_drops1
    Stats.additional_life_scaling_index19
    Stats.immune_to_curses1
    Stats.immune_to_auras_from_other_entities1
    Stats.monster_no_drops_or_experience1
    Stats.monster_do_not_fracture1
    Stats.base_cannot_be_stunned1
    Stats.cannot_be_knocked_back1
    Stats.phase_through_objects1
    ObjectMagicProperties.stat_description_listMetadata/StatDescriptions/monster_stat_descriptions.txt
    Positioned.blockingtrue
    Positioned.team0
    Positioned.serialise_collidabletrue
    BaseEvents.server_onlytrue
    Actor.basic_actionMove, Flee, StrafeLeft, StrafeRight, Advance, DoNothing, MonsterPickup
    Actor.slow_animations_go_to_idletrue, false
    Actor.on_start_action =
    Actor.",
    Actor.IfCurrentActionStat( apply_ultimatum_ruin_on_hit, 1, { SetStateTo( ruinous, 1 ); } );
    Actor.on_end_or_destroy_actionSetStateTo( ruinous, 0 );
    StateMachine.define_shared_state =
    StateMachine.",
    StateMachine.ruinous;
    StateMachine.disintegrated;
    StateMachine.altar_attacker;
    StateMachine.define_shared_stateno_ruin_epk
    Life.corpse_sink_time_ms10000
    Life.corpse_usablefalse
    DiesAfterTime.time_until_death 15.0
    Revenant MTX /8
    Revenant Helmet
    Changes the appearance of any equipped helmet to the Revenant Helmet.
    Revenant Boots
    Changes the appearance of any equipped boots to the Revenant Boots.
    Revenant Gloves
    Changes the appearance of any equipped gloves to the Revenant Gloves.
    Revenant Body Armour
    Changes the appearance of any equipped body armour to the Revenant Body Armour.
    Revenant Wings
    Adds the Revenant Wings back attachment to any equipped body armour.
    Revenant Sword
    Changes the appearance of any equipped Sword to the Revenant Sword.
    Revenant Character Effect
    Attaches the Revenant Character Effect to your belt.
    Revenant Explosive Arrow Effect
    Your Explosive Arrow becomes a Revenant Effect.
    Edit

    Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.