Skip to main content

Skirk

Practical config

Use skirk in configs. Aliases: None listed.

Code

skirk char lvl=90/90 cons=0 talent=9,9,9;
skirk add weapon="favoniussword" refine=5 lvl=90/90;
skirk add set="emblemofseveredfate" count=4;
skirk add stats hp=4780 atk=311 atk%=0.466 cr=0.311 cd=0.622 er=0.110;

Combo recipes

First rotation nuke toggle

Use a boolean to run the heavy first rotation once, then fall back to the normal route.

let first_rot_nuke = true

A variable you control. Flip it to false when you want the normal route only.

attack:5, dash

Comma chains actions in order. This is easier to read than one action per line.

Code

let first_rot_nuke = true;

if first_rot_nuke {
  skirk burst;
  skirk skill,
        attack:5, dash,
        attack:2, charge, dash,
        attack:5, dash,
        attack:5, dash,
        attack:2, charge, dash,
        attack:5, dash,
        attack;
} else {
  skirk skill;
  skirk attack:5, dash, attack:2, charge;
}

Serpent's Subtlety guard

If you need enough resource before bursting, wait with a timeout.

.skirk.serpents_subtlety < 50

Waits until Skirk has enough resource for the planned burst route.

timeout 180

If the resource never arrives, the script continues instead of freezing.

Code

let start = f();
while .skirk.serpents_subtlety < 50 && f() - start < 180 {
  wait(1);
}
if .skirk.burst.ready {
  skirk burst;
}

Safe basic loop

This is the safest starter pattern. It checks if skill/burst are ready before pressing them, then uses attacks as filler. Use it when you do not know a character combo yet.

if .character.skill.ready

This reads the cooldown. If it says ready, the action can be used now. If it is false, the sim skips that action.

attack:3

`attack:3` means three normal attacks in a row. Change the number while you test.

No infinite loop here

This helper runs once when you call it. Put the repeated rotation outside, in your main `for` loop.

Code

fn skirk_basic_loop() {
  if .skirk.skill.ready {
    skirk skill;
  }
  if .skirk.burst.ready {
    skirk burst;
  }
  skirk attack:3;
}

Wait while .skirk.serpents_subtlety is active

Amount of Serpent's Subtlety.

Live state

This is not a setup value. It is the current simulator state at that frame.

Timeout

The frame limit stops the config from freezing if the state never changes.

Code

let start = f();
while .skirk.serpents_subtlety > 0 && f() - start < 300 {
  skirk attack;
}

Wait while .skirk.void_rifts is active

Number of Void Rifts on the field.

Live state

This is not a setup value. It is the current simulator state at that frame.

Timeout

The frame limit stops the config from freezing if the state never changes.

Code

let start = f();
while .skirk.void_rifts > 0 && f() - start < 300 {
  skirk attack;
}

Wait while .skirk.a4_stacks is active

Number of A4 stacks.

Live state

This is not a setup value. It is the current simulator state at that frame.

Timeout

The frame limit stops the config from freezing if the state never changes.

Code

let start = f();
while .skirk.a4_stacks > 0 && f() - start < 300 {
  skirk attack;
}

Start with start_serpents_subtlety

Set the starting amount of Serpent's Subtlety stacks. Default 100.

+params=[...]

Character params go on the `char` line.

Code

skirk char lvl=90/90 cons=0 talent=9,9,9 +params=[start_serpents_subtlety=1];

Use skill[hold=...]

0 for Tap (default), value between 1 and 184 for Hold. The number determines the hold E duration in frames.

skill[hold=...]

Action params go inside brackets on the exact action you are casting.

Code

skirk skill[hold=1];

Actions you can write

attack usable directly

Code

skirk attack:3;

charge usable directly

Code

skirk attack, charge;

skill usable directly

Code

skirk skill;

burst usable directly

Code

skirk burst;

dash usable directly

Code

skirk dash;

jump usable directly

Code

skirk jump;

walk usable directly

Code

skirk walk;

swap usable directly

Code

skirk swap;

Special action params

-[start_serpents_subtlety=...] - Set the starting amount of Serpent's Subtlety stacks. Default 100.

Code

skirk -[start_serpents_subtlety=1];

skill[hold=...] - 0 for Tap (default), value between 1 and 184 for Hold. The number determines the hold E duration in frames.

Code

skirk skill[hold=1];

Fields for conditions

.skirk.serpents_subtlety - Amount of Serpent's Subtlety.

Code

if .skirk.serpents_subtlety > 0 {
  # action here
}

.skirk.void_rifts - Number of Void Rifts on the field.

Code

if .skirk.void_rifts > 0 {
  # action here
}

.skirk.a4_stacks - Number of A4 stacks.

Code

if .skirk.a4_stacks > 0 {
  # action here
}

.skirk.c6_stacks - Number of C6 stacks.

Code

if .skirk.c6_stacks > 0 {
  # action here
}

Frames

Video credit: charliex3000
Count: Sheet (credit: caramielle.)

Hitlag Data

AbilityHalt TimeScaleDefense HaltDeployable
N10.020.01falsefalse
N20.030.01falsefalse
N3-10.030.01falsefalse
N40.050.01falsefalse
N50.060.01falsefalse
E-N10.020.01falsefalse
E-N20.030.01falsefalse
E-N3-10.030.01falsefalse
E-N4-10.030.01falsefalse
E-N50.060.01falsefalse

AoE Data

AbilityShapeCenterOffset XOffset YRadiusFan AngleBox XBox YNotes
N1CirclePlayer-0.32----
N2CirclePlayer--0.32.2----
N3-1BoxPlayer--1.8--2.53.5-
N3-2BoxPlayer--1.8--2.53.5-
N4BoxPlayer--1--2.56-
N5CirclePlayer--0.33.2----
E-N1BoxPlayer--0.4--75-
E-N2BoxPlayer--0.4--73.5-
E-N3-1BoxPlayer--0.4--63.5-
E-N3-2BoxPlayer--0.2--63.5-
E-N4-1BoxPlayer--0.5--56-
E-N4-2BoxPlayer--0.5--56-
E-N5BoxPlayer--0.4--116-

Known issues

Does not have any known issues

Names

  • skirk

Legal Actions

AbilityLegalNotes
attack-
charge-
aim-
skillCannot be used in Seven-Phase Flash.
burst-
low_plunge-
high_plunge-
dash-
jump-
walk-
swap-

Params

AbilityParamDescription
-start_serpents_subtletySet the starting amount of Serpent's Subtlety stacks. Default 100.
skillhold0 for Tap (default), value between 1 and 184 for Hold. The number determines the hold E duration in frames.

Fields

FieldDescription
.skirk.serpents_subtlety
Amount of Serpent's Subtlety.
.skirk.void_rifts
Number of Void Rifts on the field.
.skirk.a4_stacks
Number of A4 stacks.
.skirk.c6_stacks
Number of C6 stacks.
If more than one field is available, then either field will work.