Skip to main content

Yanfei

Practical config

Use yanfei in configs. Aliases: None listed.

Code

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

Combo recipes

Scarlet Seal charged attack

Build seals, then spend them with charged attack.

Code

while .yanfei.seal-count < 3 {
  yanfei attack;
}
yanfei charge;

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 yanfei_basic_loop() {
  if .yanfei.skill.ready {
    yanfei skill;
  }
  if .yanfei.burst.ready {
    yanfei burst;
  }
  yanfei attack:3;
}

Wait while .yanfei.seal-count is active

Number of Scarlet Seals.

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 .yanfei.seal-count > 0 && f() - start < 300 {
  yanfei attack;
}

Use attack[travel=...]

Projectile travel time. Default 10 frames.

attack[travel=...]

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

Code

yanfei attack[travel=10];

Use low_plunge[collision=...]

0 for no collision dmg (default), 1 for collision dmg.

low_plunge[collision=...]

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

Code

yanfei low_plunge[collision=0];

Actions you can write

attack usable directly

Code

yanfei attack:3;

charge usable directly

Code

yanfei attack, charge;

skill usable directly

Code

yanfei skill;

burst usable directly

Code

yanfei burst;

low_plunge Previous action must be a jump buffed via Xianyun's burst for example.

Code

yanfei low_plunge[collision=0];

high_plunge Previous action must be a jump buffed via Xianyun's burst for example.

Code

yanfei high_plunge[collision=0];

dash usable directly

Code

yanfei dash;

jump usable directly

Code

yanfei jump;

walk No action followed by walk (except low_plunge and high_plunge) has proper frames.

Code

yanfei walk;

swap usable directly

Code

yanfei swap;

Special action params

attack[travel=...] - Projectile travel time. Default 10 frames.

Code

yanfei attack[travel=10];

low_plunge[collision=...] - 0 for no collision dmg (default), 1 for collision dmg.

Code

yanfei low_plunge[collision=0];

high_plunge[collision=...] - 0 for no collision dmg (default), 1 for collision dmg.

Code

yanfei high_plunge[collision=0];

Fields for conditions

.yanfei.seal-count - Number of Scarlet Seals.

Code

if .yanfei.seal-count > 0 {
  # action here
}

Frames

Video credit: Kolibri#7675
Count: Sheet (credit: Kolibri#7675)

Hitlag Data

AbilityHalt TimeScaleDefense HaltDeployable
Q-ElementalBurst00.01truefalse

AoE Data

AbilityShapeCenterOffset XOffset YRadiusFan AngleBox XBox YNotes
N1CirclePrimaryTarget--0.75----
N2CirclePrimaryTarget--0.75----
N3CirclePrimaryTarget--0.75----

Known issues

Does not have any known issues

Names

  • yanfei

Legal Actions

AbilityLegalNotes
attack-
charge-
aim-
skill-
burst-
low_plungePrevious action must be a jump buffed via Xianyun's burst for example.
high_plungePrevious action must be a jump buffed via Xianyun's burst for example.
dash-
jump-
walkNo action followed by walk (except low_plunge and high_plunge) has proper frames.
swap-

Params

AbilityParamDescription
attacktravelProjectile travel time. Default 10 frames.
low_plungecollision0 for no collision dmg (default), 1 for collision dmg.
high_plungecollision0 for no collision dmg (default), 1 for collision dmg.

Fields

FieldDescription
.yanfei.seal-count
Number of Scarlet Seals.
If more than one field is available, then either field will work.