#Run4fight's workshop

1 messages · Page 1 of 1 (latest)

north forge
#

How to use those overlays ?

  • Open Wynntils Menu (/wynntils menu)
  • Open the Overlay Management section
  • Click on Add Info Box or Add Info bar
    For bars : #1493864184981749800 message
    For Info boxes : #1493864184981749800 message

In the Info Box content, paste the text template part

If a part is written as "none", you don't need to copy/paste, simply ignore it

  • I wanna start to make functions myself, where do I start ?

Function list on website : https://wynntils-functions.ryanzhou.dev/
/wynntils function list [page]

Links :

Assassin : #1493864184981749800 message
Mage : #1493864184981749800 message
Shaman : #1493864184981749800 message
Archer : #1493864184981749800 message
Warrior : #1493864184981749800 message
Global : #1493864184981749800 message
Others : #1493864184981749800 message

if you need a specific overlay / a modification of something already existing, feel free to @me, I don't bite googlycatheartpeek !

#

Assassin

#
  • Info Bar - Vanish duration bar :

#1493864184981749800 message

  • Info Box - Vanish cooldown infobox :

#1493864184981749800 message

  • Info Bar - Nightcloak Knives bar :

#1493864184981749800 message

  • Info Box - Quake indicator (shadestepper heavy melee) :

#1493864184981749800 message

  • Info Box - Mirror image clone tracker :

#1493864184981749800 message

  • Info Box - Clone sacrifice buff tracker :

#1493864184981749800 message

  • Info Box - Bamboozle cooldown tracker :

#1493864184981749800 message

  • Info Box - Noxious effect tracker :

#1493864184981749800 message

  • Info Box - Shadow projection tracker :

#1493864184981749800 message

  • Info Box - Tricks on target :

#1493864184981749800 message

  • Info Box - Smoke bomb duration :

#1493864184981749800 message

  • Info Box - Hop cooldown tracker :

#1493864184981749800 message

  • Info Box - Tricks in a 32blocks radius :

#1493864184981749800 message

#

.

#

Mage

#
  • Info Bar - Sunflare duration/cooldown bar :

#1493864184981749800 message

  • Info Bar - Ophanim custom bar :

#1493864184981749800 message

  • Info Bar - Lightweaver bar :

#1493864184981749800 message

  • Info Bar - Fortitude effect bar :

#1493864184981749800 message

  • Info Box - Freezing sigil cooldown :

#1493864184981749800 message

  • Info Box - Heal timer w/ orphion pulse :

#1493864184981749800 message

  • Info Box - Crystallized counter on target :

#1493864184981749800 message

  • Info Bar - Mana bank + Chaos explosion indicator :

#1493864184981749800 message

#

.

#

Shaman

#
  • Info box - Tribal chant tracker :

#1493864184981749800 message

  • Info bar - Hummingbirds status + timer :

#1493864184981749800 message

  • Info box - Totem timers :

#1493864184981749800 message

#

.

#

Archer

#
  • Info box - Initiator cooldown :

#1493864184981749800 message

  • Info box - Twilight counter on target :

#1493864184981749800 message

  • Info box - Coursing restraints cooldown tracker :

#1493864184981749800 message

  • Info bar - Focus info bar :

#1493864184981749800 message

  • Info box - Leap cooldown tracker :

#1493864184981749800 message

  • Info box - Ghostly trigger tracker :

#1493864184981749800 message

  • Info box - Divine intervention duration :

#1493864184981749800 message

  • Info box - Guardian angel / arrow shield tracker :

#1493864184981749800 message

#

.

#

Warrior

#
  • Info Box - Heavenly trumpet cooldown :

#1493864184981749800 message

  • Info Box - Provoke cooldown :

#1493864184981749800 message

  • Info Box - Cleansing breeze cooldown :

#1493864184981749800 message

  • Info Box - Warscream / Emboldening cry duration tracker :

#1493864184981749800 message

  • Info Bar - Pressure / Warscream duration tracker :

#1493864184981749800 message

  • Info box - Corrupted cooldown tracker :

#1493864184981749800 message

  • Info box - Armour breaker cooldown tracker :

#1493864184981749800 message

  • Info box - Radiance tracker overlay :

#1493864184981749800 message

  • Info box - Holy power overlay :

#1493864184981749800 message

  • Info box - Harmony stacks overlay :

#1493864184981749800 message

  • Info box - Burried Light cooldown :

#1493864184981749800 message

  • Info box - Holy mantle cooldown :

#1493864184981749800 message

  • Info box - Holy mangle tracker (+ cooldown) :

#1493864184981749800 message

#

.

#

General use

#

Combat related :

  • Info Bar - General mana bar showing mana bank as mana (+bank) :

#1493864184981749800 message

  • Info Bar - Custom health bar :

#1493864184981749800 message

  • Info Box - Basic attack cooldown :

#1493864184981749800 message

  • Info Box - Spell casted in row + increased mana cost :

#1493864184981749800 message

  • Info Box - Time since spellcost reset :

#1493864184981749800 message - Not by me

  • Info Box - Damage over 30sec :

#1493864184981749800 message

  • Info Box - DPS meter :

#1493864184981749800 message

  • Info Box - Armor powder effect tracker :

#1493864184981749800 message

  • Info Bar - Weapon powder special tracker :

#1493864184981749800 message

Activity related :

  • Info Bar - Profession exp tracker :

#1493864184981749800 message - Not by me

  • Info Box - Lootrun Drystreak :

#1493864184981749800 message - Not by me

  • Info Box - Raid Drystreak :

#1493864184981749800 message - Not by me

  • Info Box - Hades-free Party overlay :

#1493864184981749800 message

#

.

#

Others :

  • Color template - Rainbow

#1493864184981749800 message

#

Vanish duration bar :

Color template

brightness_shift(
    from_hex("dddddd");
    sub(
        div(
            minecraft_effect_duration("wither");
            100.0
        );
        1.0
    )
)

Text template

{concat( "&8⬣ "; to_background_text( "Vanish"; saturation_shift(from_hex("#999999ff"); 0); saturation_shift(from_hex("#555555ff"); 0); "PILL"; "PILL" ); " "; str(int(div(add(minecraft_effect_duration("wither"); 1);20))); "s" )}

Value template

capped(minecraft_effect_duration("wither") ;100)

Enabled template

and(
    or(
        eq_str(class;"Assassin");
        eq_str(class;"Ninja")
    );
    mt(minecraft_effect_duration("wither");0)
)
#

Vanish cooldown infobox :

Color template

none

Text template

{if_str( status_effect_active("Vanish"); concat( "&8⬣ "; to_background_text( "Vanish"; saturation_shift(from_hex("#999999ff"); 0); saturation_shift(from_hex("#555555ff"); 0); "PILL"; "PILL" ); " "; str(int(val(status_effect_duration("Vanish")))); "s" ); if_str( and( neq(minecraft_effect_duration("invisibility"); -1); or(eq_str(class; "Assassin"); eq_str(class; "Ninja")) ); concat( "&c⬣ "; to_background_text( "Vanish"; saturation_shift(from_hex("#e55555ff"); 0); saturation_shift(from_hex("#8c0000ff"); 0); "PILL"; "PILL" ); "&e Activate" ); concat( "&8⬣ "; to_background_text( "Vanish"; saturation_shift(from_hex("#999999ff"); 0); saturation_shift(from_hex("#555555ff"); 0); "PILL"; "PILL" ); "&a Ready" ) ) )}

Value template

none

Enabled template

and(
    or(
        eq_str(class;"Assassin");
        eq_str(class;"Ninja")
    );
    lte(minecraft_effect_duration("wither");0);
    eq_str(held_item_type;"GearItem")
)
#

Nightcloak knives bar :

Color template

if_custom_color(
    gt(
        max(
            val(status_effect_duration("Nightcloak Knives"));
            val(status_effect_duration("Nightcloak Knife"))
        );
        0
    );
    brightness_shift(
        saturation_shift(
            from_hex("8b0000");
            sub(
                mul(
                    div(
                        max(
                            val(status_effect_duration("Nightcloak Knives"));
                            val(status_effect_duration("Nightcloak Knife"))
                        );
                        40
                    );
                    0.6
                );
                0.3
            )
        );
        sub(
            mul(
                div(
                    max(
                        val(status_effect_duration("Nightcloak Knives"));
                        val(status_effect_duration("Nightcloak Knife"))
                    );
                    40
                );
                0.8
            );
            0.4
        )
    );
    from_hex("4a0000")
)
#

Text template

{concat_st(
    with_color(
        with_font(
            styled_text(
                if(
                    eq(
                        add(
                            int(val(status_effect_modifier("Nightcloak Knives")));
                            int(val(status_effect_modifier("Nightcloak Knife")))
                        );
                        3
                    );
                    from_codepoint(57361);
                    from_codepoint(57368)
                )
            );
            "common"
        );
        from_hex("#ff4d4dff")
    );
    styled_text(" ");
    styled_text(
        to_background_text(
            concat(
                "Nightcloak ";
                str(
                    int(
                        add(
                            int(val(status_effect_modifier("Nightcloak Knives")));
                            int(val(status_effect_modifier("Nightcloak Knife")))
                        )
                    )
                )
            );
            from_hex("#ff4d4dff");
            from_hex("#8b0000ff");
            "PILL";
            "PILL"
        )
    )
)}
#

Value template

capped(
    max(
        val(status_effect_duration("Nightcloak Knives"));
        val(status_effect_duration("Nightcloak Knife"))
    );
    40
)
#

Enabled template

and(
    or(
        eq_str(class;"Assassin");
        eq_str(class;"Ninja")
    );
    or(
        status_effect_active("Nightcloak Knives");
        status_effect_active("Nightcloak Knife")
    )
)
#

Sunflare duration bar :

Color template

if(
    status_effect_active("Sunflare");
    from_hex("#ffdef7");


    if(
        gt(value(status_effect_duration("Sunflare")); 0);
        from_rgb(
            int(mul(
                sub(0; 0);
                1
            ));
            int(sub(
                217;
                mul(
                    div(
                        value(status_effect_duration("Sunflare"));
                        10
                    );
                    60
                )
            ));
            int(sub(
                237;
                mul(
                    div(
                        value(status_effect_duration("Sunflare"));
                        10
                    );
                    60
                )
            ))
        );


        from_rgb(
            int(mul(
                121;
                sub(
                    1;
                    min(
                        div(
                            current(capped(ophanim_healing_percent(); 250));
                            250
                        );
                        1
                    )
                )
            ));
            int(add(
                226;
                mul(
                    min(
                        div(
                            current(capped(ophanim_healing_percent(); 250));
                            250
                        );
                        1
                    );
                    -9
                )
            ));
            int(add(
                228;
                mul(
                    min(
                        div(
                            current(capped(ophanim_healing_percent(); 250));
                            250
                        );
                        1
                    );
                    9
                )
            ))
        )
    )
)
#

Value template

capped(
    int(
        if(
            gt(value(status_effect_duration("Sunflare")); 10);
            10;

            if(
                gt(value(status_effect_duration("Sunflare")); 0);
                value(status_effect_duration("Sunflare"));
                mul(
                    div(
                        ophanim_healing_percent();
                        sub(
                            250;
                            if(
                                eq(aspect_tier("Aspect of Burning Providence");0);0;
                                if(
                                    eq(aspect_tier("Aspect of Burning Providence");1);20;
                                    if(
                                        eq(aspect_tier("Aspect of Burning Providence");2);35;
                                        50
                                    )
                                )
                            )
                        )
                    );
                    10
                )
            )
        )
    );
    10
)
#

Enabled template

and(
    or(
        eq_str(class;"Mage");
        eq_str(class;"Dark Wizard")
    );
    eq_str(held_item_type;"GearItem");
    ophanim_active()
)
#

Custom mana bar with mana bank:

Color template

from_hex("55c8ff")

Text template

{to_fancy_text(
    concat(
        format(mana);
        " / ";
        format(mana_max);
        if(
            gt(int(val(status_effect_modifier("Stored Mana"))); 0);
            concat(
                " (+";
                str(int(val(status_effect_modifier("Stored Mana"))));
                ")"
            );
            ""
        )
    )
)}

Value template

capped(parse_int(str(int(mana_pct))); 100)

Enabled template

none
#

Profession exp tracker :

Color template

if_color(contains_str(held_item; " Gathering Rod T"); from_hex("99f6ff"); if_color(contains_str(held_item; " Gathering Axe T"); from_hex("f4d6a1"); if_color(contains_str(held_item; " Gathering Pickaxe T"); from_hex("e1e1e1"); if_color(contains_str(held_item; " Gathering Scythe T"); from_hex("ffe86b"); from_hex("ffffff")))))

Text template

none

Value template

capped(parse_int(if_str(contains_str(held_item; " Gathering Rod T"); str(int(prof_pct("fishing"))); if_str(contains_str(held_item; " Gathering Axe T"); str(int(prof_pct("woodcutting"))); if_str(contains_str(held_item; " Gathering Pickaxe T"); str(int(prof_pct("mining"))); if_str(contains_str(held_item; " Gathering Scythe T"); str(int(prof_pct("farming"))); ""))))); 100)

Enabled template

contains_str(held_item_name; " Gathering ")
#

Custom health bar :

Color template

if(
            gt(health; health_max);
            from_hex("ffff00");
            from_hex("ff5555")
        )

Text template

{with_color(
        styled_text(
            concat(
                format(health);
                " / ";
                format(health_max)
            )
        );
        if(
            gt(health; health_max);
            from_hex("ffff00");
            from_hex("ff5555")
        )
)}

Value template

capped(parse_int(str(int(health_pct))); 100)

Enabled template

none
#

Run4fight's workshop / WIP

#

moved to : #1493864184981749800 message

#

Lightweaver bar :

Color template

from_hex("#79e2e4")

Text template

{concat_st(
    styled_text(
        to_background_text(
            concat(str(ophanim_healing_percent()); "%");
            from_hex("#9ffff9");
            from_hex("#6fb3b4");
            "PILL";
            "PILL"
        )
    );

    styled_text(" ");

    styled_text(
        str(
            current(
                capped(
                    round(
                        div(
                            sub(
                                ophanim_healing_percent();
                                modulo(
                                    ophanim_healing_percent();
                                    50
                                )
                            );
                            50
                        );
                        0
                    );
                    add(5;
                        if(
                            or(
                                eq(aspect_tier("Light Bender's Embodiment of Celestial Brilliance");1);
                                eq(aspect_tier("Light Bender's Embodiment of Celestial Brilliance");2)
                            );
                            2;
                            if(
                                eq(aspect_tier("Light Bender's Embodiment of Celestial Brilliance");3);
                                3;
                                0
                            )
                        )
                    )
                )
            )
        )
    );

    styled_text(" ");

    with_color(
        with_font(
            styled_text(from_codepoint(57407));
            "common"
        );
        from_hex("#b6fbfc")
    )
)}
#

Value template

capped(
    ophanim_healing_percent();
    mul(50;
        add(5;
            if(
                or(
                    eq(aspect_tier("Light Bender's Embodiment of Celestial Brilliance");1);
                    eq(aspect_tier("Light Bender's Embodiment of Celestial Brilliance");2)
                );
                2;
                if(
                    eq(aspect_tier("Light Bender's Embodiment of Celestial Brilliance");3);
                    3;
                    0
                )
            )
        )
    )
)

Enabled template

ophanim_active()
#

Fortitude effect bar :

Color template

if(
    and(
        status_effect_active("Fortitude");
        string_contains(status_effect_prefix("Fortitude");"⚔")
    );
    from_hex("#0096ed");
    from_hex("#b6fbfc")
)
#

Text template

{if(status_effect_active("Fortitude");
    if(
        string_contains(
            status_effect_prefix("Fortitude");
            "⚔"
        );
        concat_st(
            with_color(
                styled_text("⬤");
                from_hex("#0096ed")
            );
            styled_text(" ");
            styled_text(
                to_background_text(
                    "Fortitude";
                    from_hex("#b6fbfc");
                    from_hex("#0096ed");
                    "PILL";
                    "PILL"
                )
            );
            styled_text(" ");
            styled_text(
                concat(
                    str(
                        round(
                            val(status_effect_duration("Fortitude"));
                            1
                        )
                    );
                    "s"
                )
            )
        );
        concat_st(
            with_color(
                with_font(
                    styled_text(from_codepoint(57383));
                    "common"
                );
                from_hex("#0096ed")
            );
            styled_text(" ");
            styled_text(
                to_background_text(
                    "Fortitude";
                    from_hex("#bfd9da");
                    from_hex("#aaaaaa");
                    "PILL";
                    "PILL"
                )
            );
            styled_text(" ");
            styled_text(
                concat(
                    str(
                        round(
                            val(status_effect_duration("Fortitude"));
                            1
                        )
                    );
                    "s"
                )
            )
        )
    );
    ""
)}
#

Value template

if(
    and(
        status_effect_active("Fortitude");
        string_contains(status_effect_prefix("Fortitude");"⚔")
    );
    capped(
        int(val(status_effect_duration("Fortitude")));
        add(7;
            if(
                eq(aspect_tier("Aspect of Mystic Transfer");1);
                1.25;
                if(
                    eq(aspect_tier("Aspect of Mystic Transfer");2);
                    2.25;
                    if(
                        eq(aspect_tier("Aspect of Mystic Transfer");3);
                        3;
                        0
                    )
                )
            )
        )
    );
    capped(
        int(sub(
            5;
            val(status_effect_duration("Fortitude"))
        ));
        5
    )
)

Enabled template

status_effect_active("Fortitude")
#

Basic attack cooldown :

Color template

none

Text template

{concat(
    str(round(divide(current(held_item_cooldown);20);1));
    "s"
)}

Value template

none

Enabled template

{gt(current(held_item_cooldown);0)}
#

Value template

none

Enabled template

{and(
    gt(debuffs_in_radius_value(20.0; "Marked"); 0); 
    or(
        eq_str(class; "Assassin");
        eq_str(class; "Ninja")
    )
)}
#

Spell casted in row :

Color template

none

Text template

{concat_st(
    styled_text(
        to_background_text(
            "ROW";
            from_hex("#0942be");
            from_hex("#14b0f8");
            "PILL";
            "PILL"
        )
    );
    styled_text(" ");
    with_color(
        styled_text("⚡ ");
        from_hex("#08788b")
    );
    styled_text(
        str(last_spell_repeat_count(true))
    );
    if(
        gt(last_spell_repeat_count(true);1);
        with_color(
            styled_text(
                concat(
                    " (+";
                    str(sub(mul(last_spell_repeat_count(true);5);5));
                    ")"
                )
            );
            from_hex("#099df3")
        );
        styled_text("")
    )
)}

Value template

none

Enabled template

or(
    eq_str(held_item_type;"GearItem");
    lt(recast_ticks;60)
)
#

Time since spell cost reset :

Color template

none

Text template

{concat_st(
    styled_text(
        to_background_text(
            "RST";
            from_hex("#4b0082ff");
            from_hex("#bf77ffff");
            "PILL";
            "PILL"
        )
    );
    styled_text(" ");
    with_color(
        styled_text("⏲ ");
        from_hex("#7d018d")
    );
    with_color(
        styled_text(
            concat(
                str(max(round(div(sub(60; recast_ticks); 20); 1); 0));
                "s"
            )
        );
        from_hex("#a821d1")
    )
)}

Value template

none

Enabled template

or(
    eq_str(held_item_type;"GearItem");
    lt(recast_ticks;60)
)
#

Damage over 30sec :

Color template

none

Text template

{concat_st(
    styled_text(
            to_background_text(
            "30S";
            from_hex("#ffffff");
            from_hex("#066B6AFF");
            "PILL";
            "PILL"
        )
    );
    styled_text(" ");
    styled_text(
        if(
            mte(tdmg(30);1000000);
            concat(str(round(div(tdmg(30);1000000);1)); "m");
            if(
                mte(tdmg(30);1000);
                concat(str(round(div(tdmg(30);1000);1)); "k");
                str(int(tdmg(30)))
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(held_item_type;"GearItem");
    lt(recast_ticks;60)
)
#

DPS meter :

Color template

none

Text template

{concat_st(
    styled_text(
        to_background_text(
            "DPS";
            from_hex("#000000");
            from_hex("#ff9100");
            "PILL";
            "PILL"
        )
    );
    styled_text(" ");
    if(
        mte(adps; 1000000);
        with_color(styled_text(concat(format(adps); " STELLAR!"));rainbow_shader);
        if(
            mte(adps; 700000);
            with_color(styled_text(format(adps));from_hex("#55FFFF"));
            if(
                mte(adps; 500000);
                with_color(styled_text(format(adps));from_hex("#AA0000"));
                if(
                    mte(adps; 400000);
                    with_color(styled_text(format(adps));from_hex("#FF5555"));
                    if(
                        mte(adps; 300000);
                        with_color(styled_text(format(adps));from_hex("#FFAA00"));
                        if(
                            mte(adps; 200000);
                            with_color(styled_text(format(adps));from_hex("#FFFF55"));
                            if(
                                mte(adps; 100000);
                                with_color(styled_text(format(adps));from_hex("#55FF55"));
                                with_color(styled_text(format(adps));from_hex("#AAAAAA"))
                            )
                        )
                    )
                )
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(held_item_type;"GearItem");
    lt(recast_ticks;60)
)
#

Lootrun Dry streak :

Color template

none

Text template

&#0047abff⁤&f&#0047abff&f&#0047abff&f&#0047abff&f&#0047abff&f&#0047abff&f&#0047abff&f&#0047abff &#0047abff&f&#0047abff&f&#0047abff&f&#0047abff &#0047abff&f&#0047abff&f&#0047abff&f&#0047abff&f&#0047abff&f&#0047abff&f⁤&#0047abff\n &7» &#1476ffff&l{dry_b}&7  &8 &#1476ffff&l{dry_s}&7 {concat("\n &7» &#7ab2ffff&l"; string(dry_p); "&7  ")}

Value template

none

Enabled template

none
#

Raid Dry streak :

Color template

none

Text template

{concat("&#bd33a4ff⁤&f&#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff &#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff &#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff&f&#bd33a4ff&f⁤&#bd33a4ff")}\n{concat(" &7» &#dc7acaff&l"; string(dry_raid_reward_pulls); " &7  &8 "; "&#dc7acaff&l"; string(dry_raids_tomes); "&7 \n"; " &7» &#f1cbeaff&l"; string(dry_aspects); " &7  &8 "; "&#f1cbeaff&l"; string(dry_raids_aspects); "&7 ")}

Value template

none

Enabled template

none
#

Freezing sigil cooldown :

Color template

none

Text template

{if(
    status_effect_active("Freezing Sigil");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57383));
                "common"
            );
            from_hex("#0096ed")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Freezing Sigil";
                from_hex("#b6fbfc");
                from_hex("#0096ed");
                "PILL";
                "PILL"
            )
        );
        styled_text(" ");
        styled_text(
            concat(
                str(
                    round(
                        val(status_effect_duration("Freezing Sigil"));
                        1
                    )
                );
                "s"
            )
        )
    );
    styled_text("")
)}

Value template

none

Enabled template

none
#

Orphion pulse heal timer :

Color template

none

Text template

{if(
    gt(sub(60; ticks_since_specific_spell("Heal")); 0);
    concat_st(
        styled_text(
            to_background_text(
                "Heal";
                from_hex("#b6fbfc");
                from_hex("#0096ed");
                "PILL";
                "PILL"
            )
        );
        styled_text(" ");
        with_color(
            styled_text(
                concat(
                    str(
                        int(
                            min(
                                add(
                                    int(
                                        div(
                                            ticks_since_specific_spell("Heal");
                                            30
                                        )
                                    );
                                    1
                                );
                                3
                            )
                        )
                    );
                    "/3"
                )
            );
            from_hex("#b6fbfc")
        );
        styled_text(" ");
        with_color(
            styled_text(
                concat(
                    "(";
                    str(
                        round(
                            div(
                                sub(60; ticks_since_specific_spell("Heal"));
                                20
                            );
                            1
                        )
                    );
                    ")"
                )
            );
            from_hex("#0096ed")
        )
    );
    styled_text("")
)}

Value template

none

Enabled template

eq_str(class;"Mage")
#

Clone sacrifice buff tracker :

Color template

none

Text template

{if(
    status_effect_active("Clone Sacrifice");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57403));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Sacrifice";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" - ";string(round(val(status_effect_duration("Clone Sacrifice"));0))))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57403));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Sacrifice";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

and(
    or(
        eq_str(class;"Assassin");
        eq_str(class;"Ninja")
    );
    eq_str(held_item_type;"GearItem")
)
#

Value template

none

Enabled template

none
#

Crystallized counter on target:

Color template

none

Text template

{concat_st(
    with_color(
        with_font(
            styled_text(from_codepoint(57413));
            "common"
        );
        from_hex("#b6fbfc")
    );
    styled_text(" ");
    styled_text(
        if(lt(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Crystallized");100);
            to_background_text(
                str(int(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Crystallized")));
                from_hex("#b6fbfc");
                from_hex("#6fb3b4");
                "PILL";
                "PILL"
            );
            to_background_text(
                str(int(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Crystallized")));
                from_hex("#a0b1fa");
                from_hex("#6fb3b4");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

gt(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Crystallized"); 0)
#

I think thats all for now

#

Run4fight's workshop

rocky flax
#

is it possile to request some overlays ? 👉 👈

north forge
#

indeed

rocky flax
#

I have multiples requests , lemme organize all that and i'll get back to you ty :p

north forge
chrome perch
#

Do you think it's possible for you to make a custom bar or info Box for when Tribal Chants is active and the Cooldown of each mask ? Thanks you very much

north forge
#

hold on

#

i don't even know how shaman works

#

xD

urban kindle
#

iirc it showing in the status effects

north forge
#

yeah I swapped my shaman for that

#

dw

#

For some reason, this always return false despite being the right character

string_equals(
                status_effect_prefix("Chant of the Fanatic");
                "❁"
            )
#

ok so fanatic will be the most annoying one

north forge
#

-# sorted them properly

#

but still unable to retrieve fanatic duration

#

Template calculated: "{status_effects}" -> [⚔ 30% Strength (00:02),  90% Heretic (**:**), ❁ Chant of the Fanatic (00:00), ⬤ Chant of the Heretic (00:03), ⬤ Chant of the Lunatic (00:04), ⬤ Chant of the Fanatic (00:05)]

{if(string_contains(status_effects;"❁  Chant of the Fanatic");
    "true";
    "false"
)}```
#

always return false

#

:c

north forge
#

putting this on standby, if someone manage to make this work for chant of fanatic
main problem is to find a condition that manage to fetch ONLY the actual effect and not the cooldown to check if its active or not

#

everything else is working beside that

#

-# C++ extention is just for colors on the file

north forge
#

@chrome perch

chrome perch
#

Thanks you very much !! I'll try it now

north forge
#

prob a bit messy since the effect duration seems to be insanely low

#

wait prob did something wrong

chrome perch
#

When i have Fanatic Active, Lunatic goes Active too

prisma venture
#

@north forge status_effect_modifier

#

?

chrome perch
#

And Lunatic goes in Cooldown but not Active

north forge
#

imma redo it entirely with string contains ig

chrome perch
#

And Heretic goes Inactive even though i still have it, it goes off when the CD is finished

north forge
#
[Render thread/INFO]: [System] [CHAT] Template calculated: "{status_effects}§r" -> [§a❁§r  §7Chant of the Fanatic§r §4(00:02)§r, §a⚔§r §730%§r §7Strength§r §4(00:04)§r, §a§r §7110%§r §7Heretic§r §8(**:**)§r, §8⬤§r  §7Chant of the Heretic§r §a(00:06)§r, §8⬤§r  §7Chant of the Lunatic§r §a(00:06)§r, §8⬤§r  §7Chant of the Fanatic§r §a(00:07)§r]
#

Value template

none

Enabled template

or(
        eq_str(class;"Shaman");
        eq_str(class;"Skyseer")
    )
#

@chrome perch

#

tested

#

this one works

chrome perch
#

Thanks you very much !

north forge
#

np :)

chrome perch
#

It work perfectly !

north forge
#

if you need a specific overlay / a modification of something already existing, feel free to @me, I don't bite googlycatheartpeek !

eager ocean
north forge
#

Only if you're a giant worm, butterfly, a parasite or a 50m tall stone golem

#

or the embodiment of light

#

@eager ocean

north forge
#
§a§r §78%§r §7Strength§r §8(00:29)§r,
§a❁§r §729%§r §7Resistance§r §8(00:29)§r,
§6⚘§r  §7Tree Manipulation§r §8(**:**)§r,
§8⬤§r  §7Cleansing Breeze§r §a(00:01)§r,
§8⬤§r  §7Shield§r §8(00:17)§r,
§8⬤§r  §7Provoke§r §a(00:09)§r,
§8⬤§r  §7Heavenly Trumpet§r §8(00:19)§r```
north forge
#

Heavenly trumpet cooldown :

Color template

none

Text template

{if(
    string_contains(status_effects;"⬤§r  §7Heavenly Trumpet§r ");
    concat_st(
        with_shadow_color(
            with_color(
                with_font(
                    styled_text(from_codepoint(57353));
                    "common"
                );
                from_hex("#999999")
            );
            from_hex("#000000")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Trumpet";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Heavenly Trumpet")))); "s"))
    );
    concat_st(
        with_shadow_color(
            with_color(
                with_font(
                    styled_text(from_codepoint(57353));
                    "common"
                );
                from_hex("#f7ab60")
            );
            from_hex("#000000")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Trumpet";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

{or(
    eq_str(class; "Warrior");
    eq_str(class; "Knight")
)}
#

Provoke cooldown :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Provoke§r ");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57386));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Provoke";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Provoke")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57386));
                "common"
            );
            from_hex("#c40808")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Provoke";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

{or(
    eq_str(class; "Warrior");
    eq_str(class; "Knight")
)}
#

Cleansing breeze cooldown :

Color template

none

Text template

{if(
    string_contains(status_effects;"⬤§r  §7Cleansing Breeze§r");
    concat_st(
        with_shadow_color(
            with_color(
                with_font(
                    styled_text(from_codepoint(57398));
                    "common"
                );
                from_hex("#999999")
            );
            from_hex("#000000")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Cleanse";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Cleansing Breeze")))); "s"))
    );
    concat_st(
        with_shadow_color(
            with_color(
                with_font(
                    styled_text(from_codepoint(57398));
                    "common"
                );
                from_hex("#18e4d3")
            );
            from_hex("#000000")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Cleanse";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

{or(
    eq_str(class; "Warrior");
    eq_str(class; "Knight")
)}
north forge
north forge
north forge
#

was juste some notes for a function, used those to make the warrior ones

rocky flax
#

hey again ! is it possible do to an ui for this ?

#

wynn doesnt track it :p

north forge
#

goes from 4 to 1 then turns into rainbow

#

@rocky flax sounds good enough ? :)

#

Initiator cooldown :

Known issues :

Breaks you apply poison to mobs

Color template

none

Text template

{if(lt(seconds_since(last_damage_dealt);4);
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57370));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Initiator";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(" ");
        styled_text(string(sub(4;seconds_since(last_damage_dealt))))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57370));
                "common"
            );
            from_hex("#fcfc54")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Initiator";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

{or(
    eq_str(class; "Archer");
    eq_str(class; "Hunter")
)}
#

@rocky flax

rocky flax
#

ty so much , i can finally play sharp

north forge
subtle ivy
north forge
#

time to swap my shaman archetype again it seems

#

good thing I have 9 stacks of ability reset thing

#

XD

urban kindle
north forge
#

all classes to level 105 was already annoying to do

#

T_T

urban kindle
#

bonus: max all aspect to get the most potential

north forge
#

on my way

#

(I used to play lightbender)

#

ok back to the shaman overlay, putting some notes in there

#

Main issue will be false positive since i'll have to track it with the time haul got casted

urban kindle
north forge
#

so if you cast haul while hummingbirds are out... it will break

urban kindle
#

i am not even close lol

north forge
urban kindle
#

wynnextra aspect menu

north forge
#

ig i'll have to test this mod at some point

north forge
north forge
#

Hummingbird status + timer :

-# Warning : If you cast Haul while your hummingbirds are out, the bar value and color will be incorrect, this is due on how I have to track it, since its based on the last time you used haul.

Color template

#

Text template

-# from @vocal reef - #1467218533418012733 message

{concat("🐦 " ;if(hummingbirds_state; concat("&#00ff00ff"; to_fancy_text("out"));  concat("&#ff0000ff"; to_fancy_text("in"))))}

Value template

capped(
    max(
        sub(
            add(10;
                if(
                    eq(aspect_tier("Aspect of Occupation");1);
                    3.5;
                    if(
                        eq(aspect_tier("Aspect of Occupation");2);
                        6;
                        if(
                            eq(aspect_tier("Aspect of Occupation");3);
                            8.5;
                            if(
                                eq(aspect_tier("Aspect of Occupation");4);
                                10;
                                0
                            )
                        )
                    )
                )
            );
            div(
                if(hummingbirds_state;
                    ticks_since_specific_spell("Haul");
                    4000
                );
                20
            )
        );
        0
    );
    add(10;
        if(
            eq(aspect_tier("Aspect of Occupation");1);
            3.5;
            if(
                eq(aspect_tier("Aspect of Occupation");2);
                6;
                if(
                    eq(aspect_tier("Aspect of Occupation");3);
                    8.5;
                    if(
                        eq(aspect_tier("Aspect of Occupation");4);
                        10;
                        0
                    )
                )
            )
        )
    )
)

Enabled template

{or(
    eq_str(class; "Shaman");
    eq_str(class; "Skyseer")
)}
#

@subtle ivy

#

the color template does a grandient from green to yellow to red (AND OH GOD IT WAS AWFUL TO DO)

subtle ivy
#

Thank you 🙏 so much

north forge
#

Just the color template alone took me 1h

#

XD

subtle ivy
#

I know I tried it once and couldn’t do it

north forge
#

176 lines just for a gradient

#

at least it won't be too bad the next time i'll do one

#

since I made it working once

#

i can do it again

#

oh and ofc, it takes aspects in count :)

#

lil warning :

#

I don't have any way to fix this

#

(yet?)

#

if you need a specific overlay / a modification of something already existing, feel free to @me, I don't bite googlycatheartpeek !

subtle ivy
north forge
south lion
#

Does anyone know why there are no symbols after my DPS meter, and why the font size seems a bit small?😭

north forge
#

wynntils version ?

south lion
north forge
#

and no there is no symbol on this one

#

Stellar pop only when above 1M dps

#

and the color changes with 100K dps thresholds

south lion
#

Got it. Is there a way to adjust the font size?

urban kindle
#

disable that, its vanilla minecraft settings
or just make the font scale of this infobox bigger but it will change the size of the DPS box too

#

dam that horrible when its ON lmao

south lion
#

tysm It’s fixed now.

north forge
#

How to use these overlays - Custom info BOX :

/wynntils menu

#

Overlay Management

#

Add Info Box

#

Open its menu (Default name is Info Box + a number)

#

Paste the respective functions

Info Box content
Color template
Enabled template

#

Make sure this setting is off in your video settings

#

How to use these overlays - Custom info BAR :

/wynntils menu

#

Overlay Management

#

Add Custom Bar

#

Select the model you want with the arrows

#

Find it in the menu (Will be named "Custom Universal Bar + number")

#

Select the texture you want for this bar

#

Paste the different functions

Color Template
Text Template
Value Template
Enabled Template

#

You can edit its height through the height modifier, higher number, higher height
Its width is edited through the position editing

#

Make sure this setting is off in your video settings

#

at least if someone asks, tutorial for both boxes AND bars is done

north forge
#

regex_find(status_effects;"&a&r &72.%&r &7Strength&r &8")

#

Warscream / Emboldening cry duration tracker :

Color template

none

Text template

{if(
    and(
        string_contains(status_effects;"%&r &7Resistance&r");
        string_contains(status_effects;"%&r &7Strength&r")
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57374));
                "common"
            );
            from_hex("#ffd102")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Scream";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        );
        styled_text(" ");
        styled_text(string(val(status_effect_duration("Resistance"))))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57374));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Scream";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

{or(
    eq_str(class; "Warrior");
    eq_str(class; "Knight")
)}
north forge
#

Moved to : #1493864184981749800 message

#

@bitter canopy

#

I let you try it and lmk if there is issues

#

possible to have some false positives on activations, but shouldn't be too common since I try to match the value depending on your aspect and if you have emboldening cry or not (so there is always 2 strength values that can activate it and you would need to have resistance at the same time)

bitter canopy
#

wow that was fast

#

it works!

north forge
bitter canopy
#

im gonna try and tinker with it for a bit, id love for it to be a bar ill see if i can figure out how to add it to the wynnilla ui

halcyon ocean
#

Hey @north forge, I am starting to try to take the function tools in hand. I have a question and you seem used to this.
I am having a hard time figuring out what name Values are. Do you think you could explain please?

north forge
halcyon ocean
#

Oh ok much like a map

#

more like a pair

#

Thx

north forge
#

yeah

#

thats a pair Var/Value

north forge
#

if someone manage to figure out why the or() doesn't work, i'll give him a virtual hug

#

@bitter canopy if you wanna try, thats to turn the pressure thing into a bar :)

bitter canopy
#

Lovely, ive been trying to tinker with it myself using other bars but im not the sharpest shed in the spoon

north forge
#

Thats not currently working

#

but eh

#

if you wanna try to fix this thing

#

im quite struggling

bitter canopy
#

ill be SHOCKED if i get it working

#

im understanding bits and pieces but the whole is beyond me

north forge
#

imma do it with comments so you can understand

bitter canopy
#

i recognize stuff like if(condition; true; false) and current(stat)

#

but im no programmer

north forge
#

Should be more readable with those comments

bitter canopy
#

thank you for all the help, ive been checking out other posts in function stock to try and learn this language

north forge
#

its not a real language, its more doing Legos with functions

#

but thats still a start to understand programming ig

bitter canopy
#

i never really was into legos

#

hehe

north forge
#

okay i fkin hate myself

#

why do I gotta have 2 braincells

#

figured it out

#

moved to : #1493864184981749800 message

#

@bitter canopy

#

with the value template it may help 👀

bitter canopy
#

😨

north forge
#

I have eyes everywhere (except my own functions...)

bitter canopy
#

my hud is so beautiful

#

(im testing random stuff)

north forge
#

what the

#

xD

bitter canopy
#

dude the guy who did wynnilla

#

hes a wizard man!

#

ive just been placing the glyphs i saw in his bar everywhgere over and over and keeping the code pieces that look closer to my endgoal

#

its like evolution except its a dumbass trying to understand wynncode

north forge
#

hold on im dumb, forgot to replace a test value in the value template

#

RAHHH

bitter canopy
#

?!

north forge
#

1sec

#

Value template

#

Enabled template

{or(
    eq_str(class; "Warrior");
    eq_str(class; "Knight")
)}
#

better

#

the only thing that changes is the value template

bitter canopy
#

it works!

north forge
#

just took me 1h30 to figure out I was using & instead of § for the resistance filter

#

which was

#

breaking things

bitter canopy
#

thank you so much 🙂

north forge
#

np

bitter canopy
#

this will be great so my dumbass wont forget to activate pressure scream half the time

north forge
#

if you need anything else, as always @ me

bitter canopy
#

even with the earlier one you sent it helped me a ton

bitter canopy
north forge
#

if you need a specific overlay / a modification of something already existing, feel free to @me, I don't bite googlycatheartpeek !

bitter canopy
#

hehehee it works kinda sorta

#

god this was harder than i thought

halcyon ocean
#

Where do you get the icons like that from?

north forge
#

wynncraft ressourcepack

#

I make them show with /wynncraft function test {status_effects}

#

then copy the character with another mod

#

else you can use from_codepoint(...) like i did on the initiator overlay

#

-1 to go left
+1 to go right

with_font(
                styled_text(from_codepoint(57370));
                "common"
            );
halcyon ocean
#

Ok thanks

halcyon ocean
#
{concat_st(
    with_color(with_font(styled_text(from_codepoint(57362)); "common"); 
        if_color(contains_effect("Strength"); rainbow_shader; from_hex("#555555")));
    styled_text(" ");
    styled_text(to_background_text(
        "Strength";
        if_color(contains_effect("Strength"); from_hex("#000000"); from_hex("#999999"));
        if_color(contains_effect("Strength"); rainbow_shader; from_hex("#555555"));
        "RIBBON";
        if_string(contains_effect("Strength"); "BOX"; "RIBBON")));
    if(contains_effect("Strength");
        styled_text(
            to_background_text(concat("  ";
                    string(int(val(status_effect_modifier("Strength"))));
                    "%  ";
                    string(int(val(status_effect_duration("Strength")))); "s");
                rainbow_shader; from_hex("#472a2a"); "BOX"; "RIBBON")); 
        styled_text(" No")
    )
)}```
I did that as a first try to the functions. Thank you very much for everything you posted, helped a ton and inspired me
#

pictures in 3min (While I wait for my computer to restart)

#

I used a lot of contains_effect, I wonder if some functions are more expensive than others

north forge
# halcyon ocean ```cpp {concat_st( with_color(with_font(styled_text(from_codepoint(57362)); ...

Same but formatted

{concat_st(
    with_color(
        with_font(
            styled_text(
                from_codepoint(57362) // Fist icon
            ); 
            "common"
        ); 
        if_color( //If effect STR on -> Rainbow else gray
            contains_effect("Strength"); 
            rainbow_shader; 
            from_hex("#555555")
            )
        );
        styled_text(" ");
        styled_text(
            to_background_text( 
                "Strength";
                if_color(
                    contains_effect("Strength"); 
                    from_hex("#000000"); 
                    from_hex("#999999")
                );
                if_color(
                    contains_effect("Strength"); 
                    rainbow_shader; 
                    from_hex("#555555")
                );
                "RIBBON";
                if_string(
                    contains_effect("Strength"); 
                    "BOX"; 
                    "RIBBON"
                )
            )
        );
        if(
        contains_effect("Strength");
        styled_text(
            to_background_text(
                concat(
                    "  ";
                    string(
                        int(
                            val(
                                status_effect_modifier("Strength")
                            )
                        )
                    );
                    "%  ";
                    string(
                        int(
                            val(
                                status_effect_duration("Strength")
                            )
                        )
                    ); 
                    "s"
                );
                rainbow_shader; 
                from_hex("#472a2a"); 
                "BOX"; 
                "RIBBON"
            )
        ); 
        styled_text(" No")
    )
)}
#

just makes it a bit more readable x)

halcyon ocean
north forge
#

nice start

#

could be optimized a lot but eh, for a first function thats pretty good

halcyon ocean
#

thxs :)

north forge
#

I wonder if something like this works, never tested

styled_text(
            to_background_text(
                "Strength"
                if(
                    contains_effect("Strength");
                    concat(
                        from_hex("#000000"); 
                        rainbow_shader;
                        "RIBBON";
                        "BOX"
                    );
                    concat(
                        from_hex("#999999"); 
                        from_hex("#555555");
                        "RIBBON";
                        "RIBBON"
                    );
                )
            );
        )
#

welp seems to be unable to parse it

#

prob doesn't like the if

#

even with list instead of concat

#

nevermind list can't work there is no such function

#

welp

#

¯_(ツ)_/¯

halcyon ocean
#

I did an enabled template to hide the boxes when out of combat

lt(
  int(seconds_since(last_damage_dealt));
  10
)```
Do you think it's a good idea to put that? That looks like a lot of checks all of the time
prisma venture
#

{gte(adps;1000)}

prisma venture
#

well

#

4 if statements

#

including colour/shader

halcyon ocean
#

That would still be more checks than none

#

I have no idea if this is taking long / is bad for fpss or smth

prisma venture
#

doesnt really impact performance at all unless you have like 3million checks

hard cipher
#

only regex functions should matter in terms of performance due to the fact functions are stateless

halcyon ocean
halcyon ocean
north forge
#

wish we could fit those icons with a background

halcyon ocean
#

Yeah it really doesnt like special chars

#

Also I noticed that the text template of ophanim is the same one as sunflare. Was that intentionnal?

#

I tried to do my own ophanim bar but I am very much not proud of the code

#

wynntils top, mine down
Since the % is already on another bar I couldn't be bothered to put it back

#

If anything it's less readable cuz of the orb texture

north forge
#

or im dumb ?

#

nevermind

#

ophanim is the wrong one

#

T_T

#

oh ik why

#

because I merged my 2 overlays

#

ophanim AND sunflare iirc

#

imma need to split those two ig

rocky flax
#

hey , do u know what to add in enable to hide the UI during cutscenes ?

north forge
#

¯_(ツ)_/¯

#

ask in #general prob

halcyon ocean
#

not(has_no_gui())

#

I think

patent lion
#

@north forge hi! is it possible to make an overlay for vengeance mID? something to keep track of the damage increase every mana lost

north forge
#

I wish it was possible

#

i play hmelee vengeance...

patent lion
#

cause i just lowk dk when to attack after vanishing

north forge
#

I just use a build where I can proc max mana drain WITH clone sacrifice

north forge
# patent lion same!

btw, for optimal DPS, you want to proc it while under clone sacrifice, its always better than waiting for max mana drain, so you can just use a clone sacrifice overlay and you'll be fine

patent lion
#

i think my trees different lowk

north forge
#

for the non crafted build

fading moon
#

So I'm using the crystallization overlay, and in first person it's fantastic. Makes managing the status actually doable!

However, in third person it seems to become rather unreliable. I'm not sure if this is because of third person mods like shoulder surfing, or otherwise yet.

north forge
north forge
sacred zealot
#

can you make one for shield strike and mantle of the bovemists (warrior paladin)

show shield icon for each shield you have (aspects can add to it) and have it grey if not there, red if used but waiting on next bash to do dmg, or blue when its up? (so i know how many i currently have active instead of having to look how many are circling me)

and have a bar that if:
Shield cooldown - ready / Shields up? - no = rainbow
Shield cooldown - ready / Shields up? - yes = green
Shield cooldown - #'s left / Shields up? - no = red
Shield cooldown - #'s left/ Shields up? - yes = grey

#

kind of like how lightbender has ophi ball gui?

urban kindle
#

mantle counter is bugged atm

north forge
#

when mantle will be fixed

sacred zealot
#

damit

north forge
north forge
north forge
#

just some notes for me

Wind prison : styled_text(from_codepoint(57344))
Quake : styled_text(from_codepoint(57345))
Courage : styled_text(from_codepoint(57346))
Chain lightning : styled_text(from_codepoint(57347))
Curse : styled_text(from_codepoint(57348))

north forge
#

now that I think about it I don't have any way to check which powder special is on the weapon... :d

#

@hollow tulip

hollow tulip
north forge
#

not really

#

but I wanted to display the respective icons

hollow tulip
#

hmmm

north forge
#

you wanted it as a bar or just an overlay ?

hollow tulip
#

i didnt really have a preference :p

#

i also just realized, has no one made a boss health infobox?

north forge
#

idk if you're on if you wanna try

{if(eq(powder_special_charge;100)
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57362));
                "common"
            );
            from_hex("#ffd102")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "powder";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        );
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57362));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                str(powder_special_charge);
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        )
    )
)}
#

can't test myself atm

final reef
#

@north forge do you know if there is there any way to detect when the warp blast ability is triggered/when a mob is hit with melee? it doesnt have an ingame cooldown that can be detected. I looked through the list of functions at https://wynntils-functions.ryanzhou.dev/ and unless i missed something i think the only way to detect if youve hit an enemy is with powder_special_charge if its possible to detect whenever the powder charge increases, or maybe in some way by detecting when held_item_cooldown and last_damage_dealt/time_since_last_damage_dealt trigger at the same time?

spice laurel
north forge
north forge
north forge
#

time to do it again

#

-# Wasn't expecting to wake up with 3 @ in there

north forge
#

Weapon Powder special info bar :

Color template

none

Text template

{if(eq(current(powder_special_charge);100);
    concat_st(
        with_color(
            with_font(
                styled_text("");
                "keybind"
            );
            rainbow_shader
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "powder";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    );
    concat_st(
        with_color(
            with_font(
                styled_text("");
                "keybind"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                concat(string(current(powder_special_charge));"%");
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

powder_special_charge

Enabled template

none
north forge
#

or just the cooldown

north forge
#

so its not really possible

final reef
# north forge so its not really possible

does the powder_special_charge function work? it doesnt matter if the timer gets reset to 4 seconds before it has run out since from testing warp blast seems to constantly build up distortion to a maximum and give it to you when you hit an enemy. so for example if you hit an enemy every other second each attack would give you 4 distortion, if you hit every second each would give you 2 distortion

north forge
#

powder_special_charge just checks the % of charge of your weapon's powder effect

final reef
#

dang, theres no way to detect when an enemy has been hit by a melee attack then im guessing?

north forge
#

afaik no

final reef
#

alright, thanks for info

sacred zealot
#

@north forge this is a big ask but can you make an overlay similar to #1481884663277686856 message but make it only show people in party (no placeholders when not in party) aswell as have a possible limit of a party of 11?

bonus if you can also add the party member's hp in the gui aswell...
(the one i have from the post skips every other place holder for some reason..)

north forge
#

eh

#

funny to see this overlay again

#

since I already worked on improving this

#

imma check that later but yeah, I prob can do that

#

currently working on wynntils at

#

atm

north forge
#

what do you want to be shown exactly ?
party member HP, if they are in range of devout union with in/out, up to 11 members and that hides if you're not in party ?

#

(note for later)

sacred zealot
north forge
#

yeah because of multiple buffs having different ranges

#

altruism/saviour sacrifice/devout union have different ranges so... :d

sacred zealot
#

and hey, you could make it a multiclass gui... lightbender heal range, trickster heal range

#

archer speed boost

north forge
sacred zealot
#

etc

#

yea i dont expect that

north forge
#

the overlay will end up being like 1k lines

#

lmfao

#

yk what ?
if you send me every buff with every single range with/without aspect

#

I may do it

sacred zealot
#

*or split it up for each class

north forge
#

For trickster you prob meant this

sacred zealot
#

yes

north forge
#

and um... how do I track from clone position XD

sacred zealot
#

oh well shoot

north forge
#

its not around you

#

so won't be possible for now

sacred zealot
#

oh, heres a hard one... lightbender. are you able to track shining?

north forge
#

¯_(ツ)_/¯

#

no idea

#

I didn't used hades much in my functions

sacred zealot
#

or better yet this.. can you tell if someone is a specific class / archetype

#

even tho this is another thing of

#

totem not urself

north forge
#

for mates, no clue xd

#

and yeah

#

same issue

#

though totem from shaman is trackable

#

"Nearby acolyte" radius ????

#

xd

#

Thats all the effects I can think of

sacred zealot
north forge
#

¯_(ツ)_/¯

#

no infos

#

could assume totem range ig

#

but not 100% sure

sacred zealot
#

im just using wynnbuider to track all that give pos effects to players

#

ok so for warior: judgement (asume they use it where they stand)
enlightenment
devout union
shine
Second chance
heavenly trumpet
Radiance
Clensing breese
War scream
Calculated Sacrifice/Bated Breath/Masterwork Guardian/Ego/Rhythm of the Seasons/Masterwork Apocalypse/Hero/Apotheosis/Catamaran
before getting into armor or aspects

#

oh boi

#

some of these are redundant or true/false tho

north forge
sacred zealot
#

yea... most of these arnt needed... but you wanted all effects

#

so i put more than what i ask as requested

#

you sure you want me to continue?

north forge
#

Well

sacred zealot
#

or just what i think people would care about?

north forge
#

Second chance isn't for mates afaik

sacred zealot
#

it is... makes nearby immune to dmg

#

i personaly think its redundant as you cant control when it pops. and it only lasts for 3s

#

but it IS a buff

#

and Radiance would just be a true/false flag

#

the range would be in the background.. not shown

north forge
#

ohh

#

we'll keep to those relevant ig ?

#

else it will end up being just a bloated overlay with this kind of buffs

sacred zealot
#

so dont post all the positives? only things people would care about?

north forge
#

yeah ig

sacred zealot
#

mmk

#

does repel only give self buff or team buff?

#

for archer

#

cuz if it was team, it would be a cool i frame tech

#

dont think it is tho

#

archer: only windy feat
+Ignis

north forge
#

Ignis isn't tied to archer

#

altruism*

sacred zealot
#

ik but its something to think about.. after all raids have chests that give altruism aswell.. and any class can pick it up

#

most wont, but you never know

north forge
#

let me introduce you armors :

#

some armor pieces have the mID

#

which I use in my paladin support build for example

sacred zealot
#

mage:
heal
larger heal (Apsara/Deliverance weap)
orphion's pulse

sunflare
gospel of light
interweave (shining)
Dawn

fortitude (active on healed targets in past 10s)

Time dilation (idk how ur gonna calc that)

#

rn im only checking abilitys and weapons

north forge
#

Fortitude is just when people are in heal range tbh
same goes for orphion pulse

prisma venture
#

Time dilation does not need tracking for other player range, shining isn't trackable, fortitude isnt trackable

#

Wait no fortitude is self buff right

sacred zealot
#

nope

north forge
#

for heal I can't track if you have the larger heal node or not

north forge
prisma venture
#

Then no its just heal range

north forge
#

^

prisma venture
sacred zealot
#

isnt it last healed within 10s? so a true/false check>

north forge
#

x)

sacred zealot
#

XD

#

true

north forge
#

imma go eat smth, i'll be back later

sacred zealot
#

tbh i think the only ones that actuualy matter, is archer speed buff
warrior Devout union, enlightenment, Heavenly trumpet
mage: heal range
shaman: within totem range

#

assassin usualy doesnt care what their team is doing

#

lets be honest

north forge
#

I care about the buffs they give but not about what I give x)

sacred zealot
#

at that point make a diff ui for each buff ur getting... a dropdown list..

#

unlesss u care whos giving u it

#

seprate from ur ability cooldowns

north forge
sacred zealot
#

yup

#

altruism on everyone tho no?

north forge
#

nah

#

maybe archer

#

even then

#

noone plays ignis

#

xd

sacred zealot
#

also isnt there raid chest that gives any class a second Devout union?

north forge
#

there is

sacred zealot
#

even tho u shouldnt pick it

#

if ur not warior

north forge
#

though you don't usually take it unless lightbender or already using guardian

sacred zealot
#

yea

north forge
north forge
sacred zealot
#

you mean this?

north forge
#

thats just the formatting I did that breaks it

#

its because of the space between { and if

north forge
timber trout
#

if i want to have some info box for a specific class, what do i type in enabled template? (for shaman this time)

timber trout
#

thanks!

languid valve
#

could you please make one for bak'al grasp cd and armor breaker cd? unless there's one already @north forge ty in advance! aga

north forge
#

not sure how armor breaker works

#

i'll check that once im done on my HIC class

languid valve
#

im assuming it's possible since it's just a cooldown

north forge
languid valve
#

unless you're trying to make an indicator that it's available once you reach 40%

north forge
#

Corrupted cooldown overlay :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Corrupted§r ");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57386));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Corrupted";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Corrupted")))); "s"))
    );
    if(eq(current(capped_corrupted);0);
        concat_st(
            with_color(
                with_font(
                    styled_text(from_codepoint(57386));
                    "common"
                );
                from_hex("#c40808")
            );
            styled_text(" ");
            styled_text(
                to_background_text(
                    "Corrupted";
                    from_hex("#000000");
                    rainbow_shader;
                    "PILL";
                    "PILL"
                )
            )
        );
        concat_st(
            with_color(
                with_font(
                    styled_text(from_codepoint(57386));
                    "common"
                );
                from_hex("#c40808")
            );
            styled_text(" ");
            styled_text(
                to_background_text(
                    "Corrupted";
                    from_hex("#000000");
                    from_hex("#06e636");
                    "PILL";
                    "PILL"
                )
            )
        )
    )
)}

Value template

none

Enabled template

and(
    or(
        eq_str(class;"Warrior");
        eq_str(class;"Knight")
    );
    eq_str(held_item_type;"GearItem")
)
#

Armour Breaker cooldown overlay :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Armour Breaker§r ");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57386));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Armour Breaker";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Armour Breaker")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57386));
                "common"
            );
            from_hex("#c40808")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Armour Breaker";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

and(
    or(
        eq_str(class;"Warrior");
        eq_str(class;"Knight")
    );
    eq_str(held_item_type;"GearItem")
)
languid valve
#

tysm!

#

❤️

north forge
#

Corrupted will turn green once you have more than 1% corrupted

#

rainbow if cooldown off

#

and gray if in cooldown

spice laurel
spice laurel
north forge
#

Value template

none

Enabled template

or(
    eq_str(class;"Warrior");
    eq_str(class;"Knight")
)
north forge
#

Value template

none

Enabled template

and(
    or(
        eq_str(class;"Warrior");
        eq_str(class;"Knight")
    );
    eq_str(held_item_type;"GearItem")
)
#

turns green when holy power > 10
Rainbow when holy power > 25

patent lion
#

@north forge hi! can you make a infobar for chaos explosion? like it will glow ready when it reaches the requirement

north forge
#

arcanist if I have more than 2iq right ?

north forge
patent lion
#

yep!

north forge
#

time to check aspect values

patent lion
#

i have t2 too

#

i forgor what t3 does

north forge
#

nope, 20 every tier, doesnt change

#

will be easier then

patent lion
#

w!

north forge
#

Check if chaos explosion ready : gte(current(capped_mana_bank);sub(120;if(gte( aspect_tier("Arcanist's Embodiment of Total Obliteration");1);20;0)))

north forge
# patent lion w!

No way to make the bar itself glow or smth with shaders so i'll take a bit longer on the color thing than I originally expected

north forge
#

i'll send you in DM a first working version without the color thing

#

should be done in 10/20min

patent lion
#

aight tysm!

bitter canopy
#

would it be possible to.....

#

add the 5 second cooldown for corrupts cooldown after you disable it as a bar

#

its an effect so it should be able to be measured right? 🤔

north forge
#

"add the 5 second cooldown for corrupts cooldown after you disable it as a bar"
wdym ?

bitter canopy
#

when you activate corrupt as fallen and either swap to another weapon or hold shift and use warscream you leave corrupted but a cooldown of five seconds start before you can activate it again

#

this cooldown is seen in wynntills box thingy with every other effect

bitter canopy
#

SWEET

north forge
#

¯_(ツ)_/¯

bitter canopy
#

good enough

north forge
#

lmk if its good enough for you

bitter canopy
#

(status_effects;"§8⬤§r §7Corrupted§r ");

i actually only needed this line

north forge
#

-# check the links to see if its not already existing next time xd

bitter canopy
north forge
#

Welllll

#

i'll split them between archetype eventually

#

ig

bitter canopy
#

oh

#

is that pinned?

north forge
#

can't add pins in there

#

if a mod comes here maybe :d

bitter canopy
#

except simpler since it doesnt have to account for the monk aspect

north forge
#

string_contains(status_effects;"§8⬤§r §7Corrupted§r ")
checks if corrupted is in cooldown or not

#

and returns true/false

#

§8⬤§r is always for a cooldown

#

its the thing there you see just before the effects

north forge
#

might be useful

north forge
#

actually that might be easier to turn the ticktime into 3 separate capped values that goes up to 255 and use percentage() function with from_rgb_percent

north forge
north forge
#

So :

While p1 true : Red = 255, Green increasing from 0 to 255, blue = 0
While p2 true : Red decreasing from 255 to 0, green = 255, blue = 0
While p3 true : Red = 0, green = 255, blue increasing from 0 to 255
While p4 true : Red = 0; green decreasing from 255 to 0, blue = 255
While p5 true : Red increasing from 0 to 255, green = 0, blue = 255
While p6 true : Red = 255, green = 0, blue decreasing from 255 to 0

north forge
#

Was faster than I tought

#

Time to clean that up and the color template will be done hehe

#

Text template

{if(gte(current(capped_mana_bank);sub(120;if(gte( aspect_tier("Arcanist's Embodiment of Total Obliteration");1);20;0)));
    styled_text(
        to_background_text(
            "Chaos explosion";
            from_hex("#000000");
            rainbow_shader;
            "PILL";
            "PILL"
        )
    );
    styled_text(
        to_background_text(
            "Chaos explosion";
            from_hex("#999999");
            from_hex("#555555");
            "PILL";
            "PILL"
        )
    )
)}

Value template

capped_mana_bank

Enabled template

or(
    eq_str(class;"Mage");
    eq_str(class;"Dark Wizard")
)
#

@patent lion

#

:D

north forge
#

if you want it to change color faster/slower, lmk

#

i only have a single value to edit x)

#

Rainbow Color template

from_rgb(if(or(and(gte(int(modulo(ticks;45));0);lt(int(modulo(ticks;45));mul(div(45;6);1)));gte(int(modulo(ticks;45));mul(div(45;6);5)));255;if(and(gte(int(modulo(ticks;45));mul(div(45;6);1));lt(int(modulo(ticks;45));mul(div(45;6);2)));int(sub(255;mul(div(int(modulo(ticks;div(45;6)));div(45;6));255)));if(and(gte(int(modulo(ticks;45));mul(div(45;6);4));lt(int(modulo(ticks;45));mul(div(45;6);5)));int(mul(div(int(modulo(ticks;div(45;6)));div(45;6));255));0)));if(or(and(gte(int(modulo(ticks;45));mul(div(45;6);1));lt(int(modulo(ticks;45));mul(div(45;6);2)));and(gte(int(modulo(ticks;45));mul(div(45;6);2));lt(int(modulo(ticks;45));mul(div(45;6);3))));255;if(and(gte(int(modulo(ticks;45));mul(div(45;6);3));lt(int(modulo(ticks;45));mul(div(45;6);4)));int(sub(255;mul(div(int(modulo(ticks;div(45;6)));div(45;6));255)));if(and(gte(int(modulo(ticks;45));0);lt(int(modulo(ticks;45));mul(div(45;6);1)));int(mul(div(int(modulo(ticks;div(45;6)));div(45;6));255));0)));if(or(and(gte(int(modulo(ticks;45));mul(div(45;6);3));lt(int(modulo(ticks;45));mul(div(45;6);4)));and(gte(int(modulo(ticks;45));mul(div(45;6);4));lt(int(modulo(ticks;45));mul(div(45;6);5))));255;if(gte(int(modulo(ticks;45));mul(div(45;6);5));int(sub(255;mul(div(int(modulo(ticks;div(45;6)));div(45;6));255)));if(and(gte(int(modulo(ticks;45));mul(div(45;6);2));lt(int(modulo(ticks;45));mul(div(45;6);3)));int(mul(div(int(modulo(ticks;div(45;6)));div(45;6));255));0))))

vernal plaza
# north forge

how do i disable the wynncraft mirror image and knive boss bar

hasty garden
#

crystalize tracker doesn't seem to be working for me

north forge
north forge
#

Harmony stacks overlay :

Color template

none

Text template

{if(
    status_effect_active("Harmony");
    if(
        lt(val(status_effect_modifier("Harmony"));10.0);
        concat_st(
            with_color(
                with_font(
                    styled_text("");
                    "common"
                );
                from_hex("#06e636")
            );
            styled_text(" ");
            styled_text(
                to_background_text(
                    concat(string(int(val(status_effect_modifier("Harmony"))));" Harmony");
                    from_hex("#000000");
                    from_hex("#06e636");
                    "PILL";
                    "PILL"
                )
            )
        );
        concat_st(
            with_color(
                with_font(
                    styled_text("");
                    "common"
                );
                rainbow_shader
            );
            styled_text(" ");
            styled_text(
                to_background_text(
                    "MAX Harmony";
                    from_hex("#000000");
                    rainbow_shader;
                    "PILL";
                    "PILL"
                )
            )
        )
    );
    concat_st(
        with_color(
            with_font(
                styled_text("");
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                concat(string(int(val(status_effect_modifier("Harmony"))));" Harmony");
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Warrior");
    eq_str(class;"Knight")
)
#

-# Will work once next wynntils version releases

north forge
cedar pivot
#

👍 🙏

north forge
#

Totem timers infobox (edited @fringe flame [function](#1494597876364607548 message) ) :

Color template

none

Text template

{concat(
  if_str(eq_str(shaman_totem_state(1);"ACTIVE");
    concat(
      to_background_text(
        "Totem 1";
        from_hex("#000000");
        from_hex("#03eeff");
        "BOX";
        "BOX"
      );
      " ";
      str(shaman_totem_time_left(1));
      "s\n"
    );
    ""
  );

  if_str(eq_str(shaman_totem_state(2);"ACTIVE");
    concat(
      to_background_text(
        "Totem 2";
        from_hex("#000000");
        from_hex("#00ff88");
        "BOX";
        "BOX"
      );
      " ";
      str(shaman_totem_time_left(2));
      "s\n"
    );
    ""
  );

  if_str(eq_str(shaman_totem_state(3);"ACTIVE");
    concat(
      to_background_text(
        "Totem 3";
        from_hex("#000000");
        from_hex("#e5ff00");
        "BOX";
        "BOX"
      );
      " ";
      str(shaman_totem_time_left(3));
      "s\n"
    );
    ""
  );

  if_str(eq_str(shaman_totem_state(4);"ACTIVE");
    concat(
      to_background_text(
        "Totem 4";
        from_hex("#000000");
        from_hex("#ff9100");
        "BOX";
        "BOX"
      );
      " ";
      str(shaman_totem_time_left(4));
      "s"
    );
    ""
  )
)}

Value template

none

Enabled template

none
#

oh and if someone don't want the timer to hide, here's the text template :

{concat(
  to_background_text(
    "Totem 1";
    from_hex("#000000");
    from_hex("#03eeff");
    "BOX";
    "BOX"
  );
  " ";
  str(shaman_totem_time_left(1));
  "s\n";

  to_background_text(
    "Totem 2";
    from_hex("#000000");
    from_hex("#00ff88");
    "BOX";
    "BOX"
  );
  " ";
  str(shaman_totem_time_left(2));
  "s\n";

  to_background_text(
    "Totem 3";
    from_hex("#000000");
    from_hex("#e5ff00");
    "BOX";
    "BOX"
  );
  " ";
  str(shaman_totem_time_left(3));
  "s\n";

  to_background_text(
    "Totem 4";
    from_hex("#000000");
    from_hex("#ff9100");
    "BOX";
    "BOX"
  );
  " ";
  str(shaman_totem_time_left(4));
  "s"
)}
fringe flame
#

i do like these vivid colors more

north forge
#

prob all I need for summoner ?

north forge
#

03eeff (blue)
00ff88 (green)
e5ff00 (yellow)
ff9100 (orange)

fringe flame
fringe flame
rocky flax
#

Any possibility to do a full ui for trickster ?theres non available 🙁 And also a tracker for the number of trick on enemy and also soul syphon

north forge
#

beside mirror image and clone sacrifice

rocky flax
#

(i'm putting all of them )
-Shadow projection
-Mirror image
-Clone sacrifice (to know when ur clone can cast spin/smoke bomb )
-Vanish
-bamboozle (very unecessary)
-If noxious haze is active ( standing in a smoke )

For enemy :
-number of trick
-number of soul syphon / how many time it can proc
-maybe the number of debuffs if possible ? With the multiplier of noxious haze shown (idealy)

north forge
#

mirror image and clone sacrifice are already done iirc

#

they are

#

vanish is done too

#

just shadow projection, bamboozle and noxious for buffs/cd

rocky flax
#

Shadow projection didn't use the new ui u use with the rainbow :p

north forge
#

Shadow projection isn't done yet xD

rocky flax
#

Oh i thought i took it from u x)

north forge
prisma venture
#

70+ it drops hard

#

then 125+ is pure torture

rocky flax
#

Nvm then

#

And trick tracking would be rveny nice too , i struggle a lot to see the number on raid boss

prisma venture
#

did you end up figuring out shaders on bars or is it a case of L bozo do a bunch of math

rocky flax
prisma venture
#

eh 100+ aint too bad

rocky flax
#

Woddcutting begs to differ

prisma venture
#

i'd argue sky/avo wood is worse than dernic

#

dernic is just a ws issue

rocky flax
#

Sky wood is worst than dern wood for you? 💀

prisma venture
#

sky sucks man

#

avo is awful

#

dernic is just pop a windy aura/class ws buff

rocky flax
#

Dunno i had a little spot to go around it want too bad

prisma venture
#

time dialation, frenetic mask

rocky flax
#

But man dern is Cork and balls torture

prisma venture
#

you do dern outside lutho?

rocky flax
#

Yep

prisma venture
#

yeah it aint all that bad

#

dreading the fruma mats

#

the woodcutting is kinda balls over there

rocky flax
#

Yea but 40 ish le the 3 star wood is way worth it

prisma venture
#

yeah the new lootsticks are in high demand

#

it'll drop off pretty hard soon tho

north forge
#

so i'll do them anyway

#

-# I need a job...

#

So :

Shadow projection - Done
Mirror image - Done
Clone sacrifice - Done
Vanish - Done
bamboozle - Done
If noxious haze is active - Done


For enemy :

number of trick - Done
number of soul syphon / how many time it can proc - WIP
maybe the number of debuffs if possible ? With the multiplier of noxious haze shown (idealy) - WIP

#

Bamboozle cooldown tracker :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Bamboozle§r");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57388));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Bamboozle";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Bamboozle")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57388));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Bamboozle";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Assassin");
    eq_str(class;"Ninja")
)
#

Noxious effect tracker :

Color template

none

Text template

{if(
    status_effect_active("Noxious");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57406));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Noxious";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57406));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Noxious";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Assassin");
    eq_str(class;"Ninja")
)
#

Shadow projection cooldown tracker :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Shadow Projection§r");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57392));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Projection";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Shadow Projection")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57392));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Projection";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Assassin");
    eq_str(class;"Ninja")
)
north forge
#

not a trickster main so I can't tell what would be useful

north forge
#

Drained isn't supported atm, i'll fix it prob next week

#

same for half trickster debuffs beside trick too

#

eh, i'll have a bit of work ig

#

Enkindled - implemented
Drained - todo
Contaminated - implemented
Confused - implemented
Hypoxia - todo
Distraction -> Same as weakness (wynncraft moment)

rocky flax
#

that would prevent it showing on adds

#

20/30 threshold would be good enough

rocky flax
north forge
#

20 then

#

Tricks on target infobox :

Color template

none

Text template

{concat_st(
    with_color(
        with_font(
            styled_text(from_codepoint(57402));
            "common"
        );
        from_hex("#2d57e0")
    );
    styled_text(" ");
    styled_text(
        if(lt(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Trick");20);
            to_background_text(
                str(int(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Trick")));
                from_hex("#18f7ff");
                from_hex("#2d57e0");
                "PILL";
                "PILL"
            );
            to_background_text(
                str(int(targeted_mob_debuff_value(20.0; 18.0; 35.0; "Trick")));
                from_hex("#080808");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Assassin");
    eq_str(class;"Ninja")
)
north forge
#

:d

rocky flax
#

for soul syphon

north forge
#

yeah

#

i'll add support later

rocky flax
#

np ty 👍

#

would you be down to add a texture pack support if i provide the icons ?

#

oh i forgor mirage for the tracked abilites fuck

#

trickster have way too much cd to track

spice laurel
north forge
#

eh

#

they aren't hard to make tbh

chrome perch
north forge
#

could give it a try

north forge
#

Smokebomb duration infobox :

Color template

none

Text template

{if(lt(ticks_since_specific_spell("Smoke Bomb");mul(100;if(eq(aspect_tier("Aspect of Clouded Vision");1);1.1;if(eq(aspect_tier("Aspect of Clouded Vision");2);1.2;if(eq(aspect_tier("Aspect of Clouded Vision");3);1.3;1)))));concat_st(with_color(with_font(styled_text(from_codepoint(57394));"common");rainbow_shader);styled_text(" ");styled_text(to_background_text("Smoke Bomb";from_hex("#000000");rainbow_shader;"PILL";"PILL"));styled_text(" ");styled_text(concat(string(int(div(sub(mul(100;if(eq(aspect_tier("Aspect of Clouded Vision");1);1.1;if(eq(aspect_tier("Aspect of Clouded Vision");2);1.2;if(eq(aspect_tier("Aspect of Clouded Vision");3);1.3;1))));ticks_since_specific_spell("Smoke Bomb"));20)));"s")));concat_st(with_color(with_font(styled_text(from_codepoint(57394));"common");from_hex("#313236"));styled_text(" ");styled_text(to_background_text("Smoke Bomb";from_hex("#7c7878");from_hex("#313236");"PILL";"PILL"))))}

Value template

none

Enabled template

or(
eq_str(class;"Assassin");
eq_str(class;"Ninja")
)
north forge
#

Mirror image clone tracker :

Color template

none

Text template

{concat_st(
  with_color(
  with_font(
  styled_text(from_codepoint(57410));
  "common"
  );
  from_hex("#c303fd")
  );
  styled_text(" ");
  styled_text(
    to_background_text(
      "Clones";
      from_hex("#34003f");
      from_hex("#c303fd");
      "PILL";
      "PILL"
    )
  );
  with_color(
    styled_text(
      if(and(string_contains(status_effect_prefix("Mirror Image");"⬤");neq(mirror_image_clone(0);1));
        concat(" - ⬤";string(round(val(status_effect_duration("Mirror Image"));0)));
        if(eq(mirror_image_clone(7);1);
          " x8";
            if(eq(mirror_image_clone(6);1);
              " x7";
              if(eq(mirror_image_clone(5);1);
                " x6";
                if(eq(mirror_image_clone(4);1);
                  " x5";
                  if(eq(mirror_image_clone(3);1);
                    " x4";
                      if(eq(mirror_image_clone(2);1);
                      " x3";
                      if(eq(mirror_image_clone(1);1);
                        " x2";
                        if(eq(mirror_image_clone(0);1);
                          " x1";
                          " Inactive"
                      )
                    )
                  )
                )
              )
            )
          )
        )
      )
    );
    from_hex("#c303fd")
  )
)}

Value template

none

Enabled template

none
#

Updated :

Mirror image clone tracker now have an icon to have the same formatting as other overlays
Clone sacrifice now use the gray / rainbow color variation (gray = inactive, rainbow = active)

north forge
ruby torrent
#

incredible work, really appreciate

ruby torrent
rocky flax
#

so hard to do a good ui for trickster

ruby torrent
# north forge .

i mean like how do you know 57370 points to that specific icon

north forge
#

Can't even remember how I found the base icon

#

xD

#

but lowkey just +1/-1 to move and it works

ruby torrent
north forge
#

it prob can

forest swift
#

@north forge Hey, do you happen to have a Twilight Stack overlay?

north forge
#

lemme grab the cristallized one and edit it

#

lmfao

north forge
# forest swift <@358846721733820416> Hey, do you happen to have a Twilight Stack overlay?

Twilight counter on target:

Color template

none

Text template

{concat_st(
    with_color(
        with_font(
            styled_text(from_codepoint(57419));
            "common"
        );
        from_hex("#5900ff")
    );
    styled_text(" ");
    styled_text(
        if(lt(targeted_mob_debuff_value(40.0; 15.0; 35.0; "Twilight");100);
            to_background_text(
                str(int(targeted_mob_debuff_value(40.0; 15.0; 35.0; "Twilight")));
                from_hex("#00ffff");
                from_hex("#0066ff");
                "PILL";
                "PILL"
            );
            to_background_text(
                str(int(targeted_mob_debuff_value(40.0; 15.0; 35.0; "Twilight")));
                from_hex("#0084ff");
                from_hex("#5900ff");
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

gt(targeted_mob_debuff_value(40.0; 15.0; 35.0; "Twilight"); 0)
#

should work

mental sequoia
#

truly the goat

forest swift
#

Wow, that was really fast

north forge
#

took me more than a min because I edited the colors to fit twilight a bit

#

lmk if it needs adjustments

forest swift
#

It's working, but it disappears after about 15 blocks. I use Revolution at about 30+ blocks to get maximum damage. Is there a way to make it reappear at that distance or further?

north forge
#

1sec

#

imma edit the thing above

#

done

#

as always, waiting for feedback

#

40 blocs range should be enough

#

else imma have to do multiple thresholds with different angles

forest swift
#

lemme test

#

yah Working perfectly, thanks bro ❤️

#

the goat

north forge
#

as always, @me for custom overlays :)

prisma venture
prisma venture
ruby torrent
prisma venture
#

the wynn resource pack has many fonts

#

whichever top-layered font covering that unicode char the codepoint points to will show up

#

you can render a diff font with the with_font function

ruby torrent
#

whats top-layered font in this context?
also is there other doc or wiki I can read apart from wynntils functions page

prisma venture
#

ok

#

forget about wynntils

#

minecraft resource packs

#

from_codepoint literally just turns a number into a character

ruby torrent
prisma venture
#

ok i think we're lost in communications here

#

what do you mean codepoint to which unicode

ruby torrent
#

sorry if my wording is in anyway confusing

ruby torrent
hard cipher
#

thats not how fonts works, you set the font first and then type what you want

prisma venture
#

basically if you dont overlay any other font you're fine, if you do the with font identifier lets you pick which font you want to render on the text

#

ie "overlay"

hard cipher
#

like for example {with_font(st("I am in Wynncraft Font!");"language/wynncraft")}, here I set it to language/wynncraft font

prisma venture
#

or what was it "dialogue/xyz/xyz"

#

you just point the with font function to the font you want to use if it takes the same space as other fonts

ruby torrent
#

I can see in language folder, all .json use the same set of characters?

#

What i'm stuck on is exception like common.json

hard cipher
#

the json files has set which characters are used

#

the chars field in each provider are the characters these fonts are using

ruby torrent
#

yes im aware of 

hard cipher
#

yeah, these are some of the characters that common font uses, for another example the space font has over 8 thousands of different characters defined

ruby torrent
#

ok so when i paste those into the browser i can see the hex value

#

which i can turn to decimal

hard cipher
#

there is probably a site that can do it but i dunno never used codepoints myself as I had no need

#

i only remember that 97 is a lol

ruby torrent
#

i think this might be where im stucked on.
with the decimal codepoint i dont have to copy paste 

#

thank alot for your help

prisma venture
#

dont use codepoints unless you need to

#

like to avoid a million if statements you can do math on codepoints

#

outside of that i wouldnt recommend using them simply for readability

ruby torrent
#

no i mean just referencing to the font.png

young yoke
#

@north forge I haven’t been able to get the twilight overlay working. It never shows up and if I delete the enabled template input, I can see the overlay but it never updates and just stays at 0.

north forge
#

do you look at the mob's head ?

young yoke
mental sequoia
#

are you on the latest version of wynntils?

young yoke
urban kindle
#

like it goes down from 10 hits to 9 hits

north forge
#

would be nice

#

I need to figure out how to define the number of hits tho

knotty axle
#

@north forge hey. i actually need a cd/timer for coursing restraints. focus bar. concentration timer.

north forge
#

i'll do that prob tomorrow since its 10pm for me

knotty axle
north forge
#

i'll @ when done

north forge
#

Coursing Restraints cooldown tracker :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Coursing Restraints§r");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57392));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Restraint";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Coursing Restraints")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57392));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Restraint";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Archer");
    eq_str(class;"Hunter")
)
north forge
#

Focus info bar :

Color template

if(gte(current(capped_focus);5);
    from_rgb(if(or(and(gte(int(modulo(ticks;45));0);lt(int(modulo(ticks;45));mul(div(45;6);1)));gte(int(modulo(ticks;45));mul(div(45;6);5)));255;if(and(gte(int(modulo(ticks;45));mul(div(45;6);1));lt(int(modulo(ticks;45));mul(div(45;6);2)));int(sub(255;mul(div(int(modulo(ticks;div(45;6)));div(45;6));255)));if(and(gte(int(modulo(ticks;45));mul(div(45;6);4));lt(int(modulo(ticks;45));mul(div(45;6);5)));int(mul(div(int(modulo(ticks;div(45;6)));div(45;6));255));0)));if(or(and(gte(int(modulo(ticks;45));mul(div(45;6);1));lt(int(modulo(ticks;45));mul(div(45;6);2)));and(gte(int(modulo(ticks;45));mul(div(45;6);2));lt(int(modulo(ticks;45));mul(div(45;6);3))));255;if(and(gte(int(modulo(ticks;45));mul(div(45;6);3));lt(int(modulo(ticks;45));mul(div(45;6);4)));int(sub(255;mul(div(int(modulo(ticks;div(45;6)));div(45;6));255)));if(and(gte(int(modulo(ticks;45));0);lt(int(modulo(ticks;45));mul(div(45;6);1)));int(mul(div(int(modulo(ticks;div(45;6)));div(45;6));255));0)));if(or(and(gte(int(modulo(ticks;45));mul(div(45;6);3));lt(int(modulo(ticks;45));mul(div(45;6);4)));and(gte(int(modulo(ticks;45));mul(div(45;6);4));lt(int(modulo(ticks;45));mul(div(45;6);5))));255;if(gte(int(modulo(ticks;45));mul(div(45;6);5));int(sub(255;mul(div(int(modulo(ticks;div(45;6)));div(45;6));255)));if(and(gte(int(modulo(ticks;45));mul(div(45;6);2));lt(int(modulo(ticks;45));mul(div(45;6);3)));int(mul(div(int(modulo(ticks;div(45;6)));div(45;6));255));0))));
    if(
        gte(current(capped_focus);2);
        from_hex("#36ac00");
        from_hex("#555555")
    )
)
#

Text template

{if(gte(current(capped_focus);5);concat_st(with_color(with_font(styled_text(from_codepoint(57370));"common");rainbow_shader);styled_text(" ");styled_text(to_background_text(concat(str(current(capped_focus)); " Focus");from_hex("#000000");rainbow_shader;"PILL";"PILL")));if(gte(current(capped_focus);2);concat_st(with_color(with_font(styled_text(from_codepoint(57370));"common");from_hex("#36ac00"));styled_text(" ");styled_text(to_background_text(concat(str(current(capped_focus)); " Focus");from_hex("#000000");from_hex("#36ac00");"PILL";"PILL")));concat_st(with_color(with_font(styled_text(from_codepoint(57370));"common");from_hex("#555555"));styled_text(" ");styled_text(to_background_text(concat(str(current(capped_focus)); " Focus");from_hex("#999999");from_hex("#555555");"PILL";"PILL")))))}

Value template

capped_focus

Enabled template

or(
    eq_str(class;"Archer");
    eq_str(class;"Hunter")
)
#

@knotty axle

#

im not sure about what you meant with concentration

rocky flax
# north forge :D

hey , what texture pack do u use to hide the base game life / mana bars ?

north forge
#

none

#

just activate wynntils base ones and put false in enabled template

knotty axle
#

thank u mate

#

and u dont gotta worry bout concentration. not that important

knotty axle
north forge
#

oh

#

fk

#

,_,

#

wait

#

no its in there

#

you have everything in there

knotty axle
#

i mean like i cant find the value template thing with the box.

north forge
#

for focus ?

knotty axle
#

enabled template and others were there

#

no like in general

north forge
#

Ohhh in the settings

knotty axle
#

ye

north forge
#

its called info box content

#

but thats the same thing

knotty axle
#

i did that one what about for value template

north forge
#

did you added a custom bar for focus ?

#

or an info box

knotty axle
#

info box for focus

north forge
#

yeah ok

#

might be the issue

knotty axle
#

ooo

north forge
rocky flax
#

thought this was from a texture pack like theta

knotty axle
sullen bronze
hard cipher
#

that means instead of selecting a custom bar you selected info box

sullen bronze
#

ohh

sullen bronze
#

same for clone sacrifice

#

armour breaker also doesnt work
the ones without a value and color template
maybe im doing smth wrong or need to update smth?

hard cipher
#

are you sure you are pasting value template into value template and text template into text template?

sullen bronze
#

it says "none" for those two

hard cipher
#

well then its an info box and not a bar

sullen bronze
#

ohh ok

#

so it should say "Info Box Content" not "Text Template" just a typo

#

thanks

north forge
north forge
zealous edge
#

is there a leap cd tracker that looks similar to the rift walker trackers? also would it be posslbe to have a guardian angel or arrow storm duration tracker?

north forge
#

guardian angel no
arrow storm, if you have an idea on how long it last, sure
leap I can do it pretty easily (i'll do hop at the same time ig)

all I can do is overlay on wynn since quake is completely bugged ;c

#

@zealous edge

zealous edge
#

ah ic

#

arrow storm is kinda variable tho sicne it depends on how much flint arrows you hit so i was just wondering

north forge
#

then prob not

#

(not possible)

#

can you send me a tree for bolt ?

zealous edge
north forge
#

so thats what makes arrow storm last longer ?

zealous edge
#

yea

north forge
#

is 1 arrow that big of a duration ?

zealous edge
#

well it can stack multiple times

#

dunno cap tho

#

but it does last really long when ramped up

north forge
#

wait I cant even see if you even hit a flint arrow in effects

#

so it can't even be tracked

#

💀

#

ok yeah if you play tstack it changes the duration a lot

#

holy

zealous edge
#

o damn that's tragic 💀

#

yea it lasts really long

#

esp when you have the aspects

north forge
#

I end up like x2 duration if I rightclick with ignis (normal Atk speed)

#

so yeah with a tstack weapon

#

Leap cooldown tracker :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Leap§r");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57363));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Leap";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Leap")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57363));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Leap";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Archer");
    eq_str(class;"Hunter")
)
#

Hop cooldown tracker :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Hop§r");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57363));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Hop";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Hop")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57363));
                "common"
            );
            from_hex("#a60cff")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Hop";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Assassin");
    eq_str(class;"Ninja")
)
north forge
#

for leap

#

but yeah the 2 others aren't possible for now

zealous edge
#

all good ty for leap tho bowing

north forge
#

literally the same as my hop cooldown one

zealous edge
#

i've had this that i grabbed awhile ago from someone in this disc

#

💀

north forge
#

AHAHAHH

#

eh

#

if it works

mental sequoia
#

i slapped it in like 30 seconds when i wanted to make one for myself lmao

zealous edge
#

love it but i needed one that looked similar to my other class bars others it looekd awkward

mental sequoia
#

ya very fair
i would've changed it a while ago if i didnt grow emotionally attached to it

young yoke
#

Is it possible for an overlay for when twains arc main attack from quickdraw is ready?

north forge
#

gives no effects and we cant track how many hit you dealt with phantom ray

north forge
#

Buried Light cooldown tracker :

Color template

none

Text template

{if(
    string_contains(status_effects;"§8⬤§r  §7Buried Light§r");
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57415));
                "common"
            );
            from_hex("#999999")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Buried Light";
                from_hex("#999999");
                from_hex("#555555");
                "PILL";
                "PILL"
            )
        );
        styled_text(concat(" "; str(int(val(status_effect_duration("Buried Light")))); "s"))
    );
    concat_st(
        with_color(
            with_font(
                styled_text(from_codepoint(57415));
                "common"
            );
            from_hex("#ffdb3c")
        );
        styled_text(" ");
        styled_text(
            to_background_text(
                "Buried Light";
                from_hex("#000000");
                rainbow_shader;
                "PILL";
                "PILL"
            )
        )
    )
)}

Value template

none

Enabled template

or(
    eq_str(class;"Warrior");
    eq_str(class;"Knight")
)
sick zodiac
#

only Color template and Enabled template which seem diff

#

oh okay even without adding the value text to anywhere it seems to work nekostupid

hard cipher
sick zodiac
north forge
#

check the guide.

sick zodiac
#

Oh, is that pinned somewhere

#

okay I found the message via ctrl f ty

north forge
#

its literally the main one

#

,_,

sick zodiac
#

I mean pinning it wouldnt be a bad idea it is a lenthy thread

north forge
#

if I had perms to do it

sick zodiac
#

damn 🥀

#

huh wtf I'm changing the names of info boxes and for some reason only Info Box 2 wont let me change its name

#

every time I change it and click save and reopen the menu it goes back to info box 2

#

weird

#

@north forge you think itd be possible to make a per target cooldown for Satsujin?
Perhaps combined with an enemy hp bar overlay and showing the cooldown for that specific enemy under it?

#

thats just the default wynntils focused enemy hp bar rn idk if you have one you made yourself

#

or would make one for this

#

but being able to track satsujin in any way would be amazing

#

(cd reduced by 5s with mythic aspect 2~3 btw)

north forge
#

wish we could track it

#

:')

#

im a shadestepper main

hard cipher
#

What is Satsujin? Iirc it is trackable but I might confuse it with a different thingy

#

Oh wait there is literally a screenshot above 💀

#

If wynncraft doesn't show a cooldown for it then we can't detect it

north forge
#

there is nothing showing when its on CD

sick zodiac
#

💔

#

My only idea would be is

#

when you proc it it eats all marks on an enemy

#

so if you can track marks

#

which should be doable

#

you can track when all the marks disappear at once no?

#

and thats when youd put satsujin on cd

hard cipher
#

Wynntils doesn't track skill tree stuff at all, we would need a system for that first, otherwise the game would constantly do calculations for stuff that you might not have

north forge
hard cipher
#

At best currently you can estimate the cooldown of it by checking the time since you casted backstab

sick zodiac
#

but I saw you made a tracker for like, twilight and crystallized etc debuffs on enemy

#

how are marks any different?

north forge
sick zodiac
#

lmaoo

#

🥀

north forge
#

let me guess

#

I need to update the burst thing tho

hard cipher
# sick zodiac how are marks any different?

Functions check for stuff that are currently present, you cannot check for stuff that has happened before, so at best you can check if rn an enemy has 4 marks, and that's all

north forge
#

oh im wondering, can you check time since powder special ? or only spells are implemented rn ?

hard cipher
#

Spells only

#

Dunno if we even detect casting the special at all

sick zodiac
#

Pff

#

used animosity

north forge
#

oh this one

sick zodiac
#

very similar yes, tho I will be looking at veng later

north forge
#

#PleaseFixQuake

sick zodiac
#

Anyway, how come you cant track marks as a debuff? Isnt it similar to Twilight or Crystallized debuffs? I saw you made tracker for those

hard cipher
#

you should be able to if they are displayed

sick zodiac
#

Yeah they are

hard cipher
#

but that has nothing to do with the cooldown which is not displayed

sick zodiac
#

Yeah but the way Satsujin works is when you proc it it removes ALL marks from the enemy
So you could just
Track marks -> if enemy has 4+ marks and suddenly goes to 0 (normally it decays 1 by 1 over time, ONLY satsujin makes it go from 4+ to 0) that means satsujin procced -> display a 15s cd info box

hard cipher
#

thats not how functions work

sick zodiac
#

I'm just explaining the idea behind my logic

hard cipher
#

again, you can only check for stuff that are right now, you cant check for stuff that were some time ago

sick zodiac
#

Is it really impossible to track "something going from x to 0"?

hard cipher
#

no, because function only check for stuff that are right now

#

you can't check for stuff that were some time ago, you can check if an enemy has 0 marks rn, or if enemy has 4 marks rn but you cant check if enemy had 4 marks 5 seconds ago

sick zodiac
#

hmm

#

What if you used tracking marks + tracking casting powder/backstab
So if enemy has 4+ marks and at the same time you proc powder/backstab on the enemy, put satsujin tracker on 15s cd

hard cipher
#

you can't put tracker for that because its not displayed and again functions check for stuff that are in this specific moment, if something happens 1 second ago then functions wont have information on that, you can't start some arbitrary timer as that just not how functions work

sick zodiac
#

How is that checking for something 1s ago?

hard cipher
#

because you said to start a timer

#

you cant do that with functions

#

they dont "remember" stuff, you cant get data from past, only present

sick zodiac
#

How is Initiator tracker a 4s timer displayed then, even though theres no displayed 4s timer visible anywhere by wynncraft?

#

I thought you could just start a countdown from x sec

hard cipher
#

it checks the time since you last dealt dmg