Kaedehara Kazuha / Nahida / Fischl / Xianyun

40,803 DPS

Calculated like your results, against the same enemy with the rotation looped, using the build from the community gcsim config the rotation comes from. Your own build will score differently.

The source reports 90,456 DPS for one rotation under its own conditions.

Score your own build

Only characters in the Character Showcase of your in-game profile can be loaded. Turn on "Show Character Details".

Sources

Rotation script (gcsim)
active fischl;
fischl skill;
for let i=0; i<4; i=i+1 {
  
  if .fischl.skill.cd <= 30 {
    fischl attack, skill;
  }

  nahida skill;

    nahida attack;

  while .xianyun.skill.ready {
    xianyun skill, low_plunge;
  }
  xianyun attack, burst; 
  
  while .fischl.skill.cd >= 30 {
    switch {
      
      case !.amy.oz && .amy.burst.ready:
        amy attack:2, burst;
      
      case .kazuha.skill.ready && .kazuha.swap.ready:
        kazuha skill, high_plunge[collision=rand()>0.2];
      case .kazuha.burst.ready && .kazuha.skill.cd  && .kazuha.swap.ready:
        kazuha burst;
      
      case .kazuha.sets.tf == 4 && .status.vvelectro:
        xianyun attack;
      
      case .kazuha.infusion.kazuha-c6-infusion && .previous-action == .action.low_plunge:
        kazuha attack;
      case .kazuha.infusion.kazuha-c6-infusion && .xianyun.status.xianyun-airborne-buff:
        kazuha jump;
        if .airborne {
          kazuha low_plunge[collision=rand()>0.5];
        }
      case .kazuha.infusion.kazuha-c6-infusion && .kazuha.normal > 1 && .stam > 25:
        kazuha charge;
      case .kazuha.infusion.kazuha-c6-infusion:
        kazuha attack;
      
      case .xianyun.onfield && .previous-action == .action.low_plunge:
        xianyun attack;
      case .xianyun.weapon == .keys.weapon.sacfrags && .xianyun.skill.ready && .xianyun.swap.ready:
        xianyun skill, low_plunge;
      case .xianyun.status.xianyun-airborne-buff && .xianyun.swap.ready:
        xianyun jump;
        if .airborne {
          xianyun low_plunge[collision=rand()>0.5];
        }

      default:
        xianyun attack;
    }
  }

  print("done");
}
Calculating… This can take up to a minute.