ผีแสนสยอง
อันเดด
cannot be used as minion [1]
Ghastly Phantasm
SpectreN
Areaที่ซ่อนองค์กร, ที่ซ่อนองค์กร, ที่ซ่อนองค์กร, รังของผู้บงการ
Tagsนักเวท, ghost, ghost_armour, is_unarmed, medium_height, medium_movement, no_cannot_die_aura, no_pantheon_mod, not_dex, not_str, physical_affinity, ranged, undead
Packs
  • ที่ซ่อนองค์กร: ประติมากรรมเสื่อมเสีย, Ravager Maw, Creeping Tangle, ผีที่ถูกตรึง, ผีแสนสยอง
  • ที่ซ่อนองค์กร: ผีที่ถูกตรึง, ผีแสนสยอง, Risen Lackey
  • ที่ซ่อนองค์กร: ผีที่ถูกตรึง, ผีแสนสยอง
  • รังของผู้บงการ: ประติมากรรมเสื่อมเสีย, Ravager Maw, Creeping Tangle, ผีที่ถูกตรึง, ผีแสนสยอง
  • พลังชีวิต
    250%
    Energy Shield From Life
    100%
    Ailment Threshold
    250%
    ค่าต้านทาน
    20 20 20 0
    Damage
    125%
    ความแม่นยำ
    100%
    โอกาสคริติคอล
    +5%
    ตัวคูณคริติคอล
    +130%
    Attack Distance
    6 ~ 6
    Attack Time
    1.17 Second
    Damage Spread
    ±20%
    ค่าประสบการณ์
    125%
    Model Size
    135%
    Type
    BetrayalPhantasm
    Metadata
    BetrayalPhantasm2
    เลเวล
    73
    พลังชีวิต
    27,131
    เกราะ
    42,661
    การหลบหลีก
    5,633
    โล่พลังงาน
    8,348
    Damage
    630
    ความเสียหายเวท
    630
    ความแม่นยำ
    352
    Attack Time
    1.17
    ค่าประสบการณ์
    14,235
    Ailment Threshold
    27,131
    Chill
    86
    Shock
    86
    Brittle
    485
    Scorch
    86
    Sap
    237
    WalkEmergeBetrayal
    walk emerge distance [300]
    BetrayalPhantasmFadingProjectile
    Spell, Projectile, Damage
    โอกาสคริติคอล: 5%
    ประสิทธิภาพการเสริมความเสียหาย: 150%
    เวลาร่าย: 1.17 วินาที
    สร้างความเสียหาย กายภาพ 506.8 ถึง 760.3
    กระสุน เจาะทะลุ ทุกเป้าหมาย
    base is projectile [1]
    monster projectile variation [2]
    use scaled contact offset [1]
    BetrayalPhantasmFadingProjectile2
    Spell, Projectile, Damage
    โอกาสคริติคอล: 5%
    ประสิทธิภาพการเสริมความเสียหาย: 150%
    เวลาร่าย: 1.17 วินาที
    สร้างความเสียหาย กายภาพ 506.8 ถึง 760.3
    กระสุน เจาะทะลุ ทุกเป้าหมาย
    base is projectile [1]
    monster projectile variation [2]
    use scaled contact offset [1]
    MonsterFrostFury
    Spell, Cold, Damage, Area, Duration, Projectile, AreaSpell, ProjectilesNotFromUser
    โอกาสคริติคอล: 5%
    เวลาร่าย: 2.5 วินาที
    คูลดาวน์: 15 วินาที
    สร้างความเสียหาย กายภาพ 135.2 ถึง 202.7
    ระยะเวลาพื้นฐาน 5 วินาที
    base is projectile [1]
    is area damage [1]
    projectile spread radius [3]

    Object Type

    version 2
    extends "Metadata/Monsters/LeagueBetrayal/BetrayalMonsterBase"

    Object Type Codes

    version 2
    extends "Metadata/Monsters/LeagueBetrayal/BetrayalMonsterBase"
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/LeagueBetrayal/BetrayalPhantasm2"] = {
        name = "Ghastly Phantasm",
        life = 2.5,
        energyShield = 1,
        fireResist = 20,
        coldResist = 20,
        lightningResist = 20,
        chaosResist = 0,
        damage = 1.25,
        damageSpread = 0.2,
        attackTime = 1.17,
        attackRange = 6,
        accuracy = 1,
        skillList = {
            "WalkEmergeBetrayal",
            "BetrayalPhantasmFadingProjectile",
            "BetrayalPhantasmFadingProjectile2",
            "MonsterFrostFury",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WalkEmergeBetrayal"] = {
        name = "WalkEmergeBetrayal",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.72,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "walk_emerge_distance",
        },
        levels = {
            [1] = {300, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BetrayalPhantasmFadingProjectile"] = {
        name = "BetrayalPhantasmFadingProjectile",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "base_is_projectile",
            "always_pierce",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 2, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BetrayalPhantasmFadingProjectile2"] = {
        name = "BetrayalPhantasmFadingProjectile2",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "base_is_projectile",
            "always_pierce",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 2, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterFrostFury"] = {
        name = "MonsterFrostFury",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Cold] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Projectile] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.ProjectilesNotFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 2.5,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "projectile_spread_radius",
            "base_is_projectile",
            "is_area_damage",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 5000, 3, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    cannot be used as minion [1]
    IdCannotBeUsedAsMinion
    FamilyCannotBeUsedAsMinion
    DomainsMonster (3)
    GenerationTypeยูนิค (3)
    Req. level1
    Stats
  • cannot be used as minion Min: 1 Max: 1 Global
  • ผีแสนสยอง
    อันเดด
    cannot be used as minion [1]
    Ghastly Phantasm
    SpectreN
    Tagsนักเวท, ghost, ghost_armour, is_unarmed, medium_height, medium_movement, not_dex, not_str, physical_affinity, ranged, undead
    พลังชีวิต
    250%
    Energy Shield From Life
    100%
    Ailment Threshold
    250%
    ค่าต้านทาน
    20 20 20 0
    Damage
    125%
    ความแม่นยำ
    100%
    โอกาสคริติคอล
    +5%
    ตัวคูณคริติคอล
    +130%
    Attack Distance
    6 ~ 6
    Attack Time
    1.17 Second
    Damage Spread
    ±20%
    ค่าประสบการณ์
    125%
    Model Size
    135%
    Type
    BetrayalPhantasm
    Metadata
    BetrayalPhantasmGraveyardMap
    เลเวล
    68
    พลังชีวิต
    16,083
    เกราะ
    28,790
    การหลบหลีก
    4,739
    โล่พลังงาน
    6,127
    Damage
    467
    ความเสียหายเวท
    467
    ความแม่นยำ
    290
    Attack Time
    1.17
    ค่าประสบการณ์
    12,819
    Ailment Threshold
    16,083
    Chill
    51
    Shock
    51
    Brittle
    288
    Scorch
    51
    Sap
    141
    WalkEmergeBetrayal
    walk emerge distance [300]
    BetrayalPhantasmFadingProjectile
    Spell, Projectile, Damage
    โอกาสคริติคอล: 5%
    ประสิทธิภาพการเสริมความเสียหาย: 150%
    เวลาร่าย: 1.17 วินาที
    สร้างความเสียหาย กายภาพ 421.6 ถึง 632.4
    กระสุน เจาะทะลุ ทุกเป้าหมาย
    base is projectile [1]
    monster projectile variation [2]
    use scaled contact offset [1]
    BetrayalPhantasmFadingProjectile2
    Spell, Projectile, Damage
    โอกาสคริติคอล: 5%
    ประสิทธิภาพการเสริมความเสียหาย: 150%
    เวลาร่าย: 1.17 วินาที
    สร้างความเสียหาย กายภาพ 421.6 ถึง 632.4
    กระสุน เจาะทะลุ ทุกเป้าหมาย
    base is projectile [1]
    monster projectile variation [2]
    use scaled contact offset [1]
    MonsterFrostFury
    Spell, Cold, Damage, Area, Duration, Projectile, AreaSpell, ProjectilesNotFromUser
    โอกาสคริติคอล: 5%
    เวลาร่าย: 2.5 วินาที
    คูลดาวน์: 15 วินาที
    สร้างความเสียหาย กายภาพ 112.4 ถึง 168.7
    ระยะเวลาพื้นฐาน 5 วินาที
    base is projectile [1]
    is area damage [1]
    projectile spread radius [3]

    Object Type

    version 2
    extends "Metadata/Monsters/LeagueBetrayal/BetrayalMonsterBase"

    Object Type Codes

    version 2
    extends "Metadata/Monsters/LeagueBetrayal/BetrayalMonsterBase"
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/LeagueBetrayal/BetrayalPhantasmGraveyardMap"] = {
        name = "Ghastly Phantasm",
        life = 2.5,
        energyShield = 1,
        fireResist = 20,
        coldResist = 20,
        lightningResist = 20,
        chaosResist = 0,
        damage = 1.25,
        damageSpread = 0.2,
        attackTime = 1.17,
        attackRange = 6,
        accuracy = 1,
        skillList = {
            "WalkEmergeBetrayal",
            "BetrayalPhantasmFadingProjectile",
            "BetrayalPhantasmFadingProjectile2",
            "MonsterFrostFury",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WalkEmergeBetrayal"] = {
        name = "WalkEmergeBetrayal",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.72,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "walk_emerge_distance",
        },
        levels = {
            [1] = {300, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BetrayalPhantasmFadingProjectile"] = {
        name = "BetrayalPhantasmFadingProjectile",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "base_is_projectile",
            "always_pierce",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 2, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BetrayalPhantasmFadingProjectile2"] = {
        name = "BetrayalPhantasmFadingProjectile2",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "base_is_projectile",
            "always_pierce",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 2, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterFrostFury"] = {
        name = "MonsterFrostFury",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Cold] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Projectile] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.ProjectilesNotFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 2.5,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "projectile_spread_radius",
            "base_is_projectile",
            "is_area_damage",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 5000, 3, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    cannot be used as minion [1]
    IdCannotBeUsedAsMinion
    FamilyCannotBeUsedAsMinion
    DomainsMonster (3)
    GenerationTypeยูนิค (3)
    Req. level1
    Stats
  • cannot be used as minion Min: 1 Max: 1 Global
  • ผีแสนสยอง
    อันเดด
    cannot be used as minion [1]
    Ghastly Phantasm
    SpectreN
    Tagsนักเวท, ghost, ghost_armour, is_unarmed, medium_height, medium_movement, not_dex, not_str, physical_affinity, ranged, undead
    พลังชีวิต
    250%
    Energy Shield From Life
    100%
    Ailment Threshold
    250%
    ค่าต้านทาน
    20 20 20 0
    Damage
    125%
    ความแม่นยำ
    100%
    โอกาสคริติคอล
    +5%
    ตัวคูณคริติคอล
    +130%
    Attack Distance
    6 ~ 6
    Attack Time
    1.17 Second
    Damage Spread
    ±20%
    ค่าประสบการณ์
    125%
    Model Size
    135%
    Type
    BetrayalPhantasm
    Metadata
    BetrayalPhantasmCowardsTrial
    เลเวล
    68
    พลังชีวิต
    16,083
    เกราะ
    28,790
    การหลบหลีก
    4,739
    โล่พลังงาน
    6,127
    Damage
    467
    ความเสียหายเวท
    467
    ความแม่นยำ
    290
    Attack Time
    1.17
    ค่าประสบการณ์
    12,819
    Ailment Threshold
    16,083
    Chill
    51
    Shock
    51
    Brittle
    288
    Scorch
    51
    Sap
    141
    WalkEmergeBetrayal
    walk emerge distance [300]
    BetrayalPhantasmFadingProjectile
    Spell, Projectile, Damage
    โอกาสคริติคอล: 5%
    ประสิทธิภาพการเสริมความเสียหาย: 150%
    เวลาร่าย: 1.17 วินาที
    สร้างความเสียหาย กายภาพ 421.6 ถึง 632.4
    กระสุน เจาะทะลุ ทุกเป้าหมาย
    base is projectile [1]
    monster projectile variation [2]
    use scaled contact offset [1]
    BetrayalPhantasmFadingProjectile2
    Spell, Projectile, Damage
    โอกาสคริติคอล: 5%
    ประสิทธิภาพการเสริมความเสียหาย: 150%
    เวลาร่าย: 1.17 วินาที
    สร้างความเสียหาย กายภาพ 421.6 ถึง 632.4
    กระสุน เจาะทะลุ ทุกเป้าหมาย
    base is projectile [1]
    monster projectile variation [2]
    use scaled contact offset [1]
    MonsterFrostFury
    Spell, Cold, Damage, Area, Duration, Projectile, AreaSpell, ProjectilesNotFromUser
    โอกาสคริติคอล: 5%
    เวลาร่าย: 2.5 วินาที
    คูลดาวน์: 15 วินาที
    สร้างความเสียหาย กายภาพ 112.4 ถึง 168.7
    ระยะเวลาพื้นฐาน 5 วินาที
    base is projectile [1]
    is area damage [1]
    projectile spread radius [3]

    Object Type

    version 2
    extends "Metadata/Monsters/Skeletons/CowardsTrial/CowardsTrialMonsterBase"
    
    Actor
    {
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	slow_animations_go_to_idle = false
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Skeletons/CowardsTrial/CowardsTrialMonsterBase"
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Skeletons/CowardsTrial/BetrayalPhantasmCowardsTrial"] = {
        name = "Ghastly Phantasm",
        life = 2.5,
        energyShield = 1,
        fireResist = 20,
        coldResist = 20,
        lightningResist = 20,
        chaosResist = 0,
        damage = 1.25,
        damageSpread = 0.2,
        attackTime = 1.17,
        attackRange = 6,
        accuracy = 1,
        skillList = {
            "WalkEmergeBetrayal",
            "BetrayalPhantasmFadingProjectile",
            "BetrayalPhantasmFadingProjectile2",
            "MonsterFrostFury",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WalkEmergeBetrayal"] = {
        name = "WalkEmergeBetrayal",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.72,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "walk_emerge_distance",
        },
        levels = {
            [1] = {300, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BetrayalPhantasmFadingProjectile"] = {
        name = "BetrayalPhantasmFadingProjectile",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "base_is_projectile",
            "always_pierce",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 2, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BetrayalPhantasmFadingProjectile2"] = {
        name = "BetrayalPhantasmFadingProjectile2",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.17,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "base_is_projectile",
            "always_pierce",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 2, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterFrostFury"] = {
        name = "MonsterFrostFury",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Cold] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Projectile] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.ProjectilesNotFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 2.5,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "projectile_spread_radius",
            "base_is_projectile",
            "is_area_damage",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 5000, 3, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    cannot be used as minion [1]
    IdCannotBeUsedAsMinion
    FamilyCannotBeUsedAsMinion
    DomainsMonster (3)
    GenerationTypeยูนิค (3)
    Req. level1
    Stats
  • cannot be used as minion Min: 1 Max: 1 Global
  • Edit

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