Alhaitham / Kujou Sara / Fischl / Kirara
62,976 DPS
Senin sonuçların gibi hesaplandı (aynı düşman, rotasyon tekrarlanarak); rotasyonun alındığı topluluk gcsim yapılandırmasındaki build kullanıldı. Kendi build'inin puanı farklı olacaktır.
Kaynak, kendi koşullarında bir rotasyon için 66,116 DPS bildiriyor.
Bu takımın rotasyonu henüz doğrulanmadı. Puan değişebilir.
Kendi build'ini hesapla
Yalnızca oyun içi profilindeki Karakter Galerisi'nde bulunan karakterler yüklenebilir. "Karakter Ayrıntılarını Göster" seçeneğini aç.
Kaynaklar
Rotasyon betiği (gcsim)
active kirara;
let shieldEarlier = true;
fn doActionList() {
for let r=0; r<3; r=r+1 {
kirara skill[short_hold=r>0];
sara skill, aim;
fischl attack, skill;
sara burst;
alhaitham skill[hold=1], low_plunge[short=rand()<1/3],
attack:2, charge, dash,
attack:3, charge;
if shieldEarlier == true {
kirara skill, burst;
}
sara skill;
fischl attack:2, burst;
if shieldEarlier == false {
kirara skill, burst;
}
alhaitham burst;
sara aim;
alhaitham attack:4, charge, dash,
attack:4, charge, dash,
attack:3;
}
}
fn randy(mean, standardDeviation, min, max, display) {
let value = randnorm() * standardDeviation + mean;
if value > max {
value = max;
} else if value < min {
value = min;
}
if display {
print(value);
}
return value;
}
let prev_char_id = -1;
switch {
case .alhaitham.onfield:
prev_char_id = .keys.char.alhaitham;
case .sara.onfield:
prev_char_id = .keys.char.sara;
case .fischl.onfield:
prev_char_id = .keys.char.fischl;
default:
prev_char_id = .keys.char.kirara;
}
let prev_action_id = -1;
let _execute_action = execute_action;
fn execute_action(char_id number, action_id number, p map) {
if prev_char_id != char_id && action_id != .action.swap {
execute_action(char_id, .action.swap, []);
}
if action_id == .action.burst {
while .alhaitham.onfield && !.alhaitham.burst.ready {
alhaitham attack;
}
while .sara.onfield && !.sara.burst.ready {
sara attack;
}
while .fischl.onfield && !.fischl.burst.ready {
fischl attack;
}
while .kirara.onfield && !.kirara.burst.ready {
kirara attack;
}
}
if action_id == .action.swap {
delay(randy(9.5, 1.5, 8, 17, 0));
} else if prev_action_id == .action.attack && action_id != .action.attack && action_id != .action.charge {
delay(randy(3, 1, 0, 6, 0));
} else if prev_action_id != .action.attack {
delay(randy(3, 1, 0, 6, 0));
}
prev_char_id = char_id;
prev_action_id = action_id;
return _execute_action(char_id, action_id, p);
}
doActionList();