🔨 Spells audit
I affirm:
- [x] I understand that if I do not agree to the following points by completing the checkboxes my issue will be ignored.
- [x] I have read and understood the Contributing Guide and the Code of Conduct.
- [x] I have searched existing issues to see if the issue has already been opened, and I have checked the commit log to see if the issue has been resolved since my server was last updated.
Describe the feature
Pulled spells data from the DATs with my own script and compared with the SQL.
I'm confident the values are correct for the most part as they line up with both ffo.jp and my own spot checks but player spells should be re-tested before committing changes.
The only hurdle I've faced is figuring out how to parse the recast as it has a special encoding indicating scales of 15s in certain conditions. I have it more or less all mapped out but unfortunately it doesn't line up with a handful of spells:
- Gravity II
- MP Drainkiss
- Curaga V
- Aspir III
- Thunder Breath
Certain of these spells are monster-only and unlikely to be in global spell lists so it might not be too important to set them right but I'd like to have them aligned so I can automate this data collection in the future.
cure_iv (ID: 4)
- [ ] Jobs: PLD:51->55
banish_iv (ID: 31)
- [ ] Jobs: WHM:X->90
- Not a player spell but relevant for Light Spirit
diaga_ii (ID: 34)
- [ ] Jobs: RDM:15->45, WHM:18->52
diaga_iii (ID: 35)
- [ ] Jobs: RDM:X->75
banishga_iii (ID: 40)
- [ ] Jobs: WHM:X->65
reprisal (ID: 97)
- [ ] Recast: 52.0s -> 180.0s
invisible (ID: 136)
- [ ] Cast time: 2.0s -> 3.0s
sneak (ID: 137)
- [ ] Cast time: 2.0s -> 3.0s
- [ ] Recast: 8.0s -> 10.0s
fire_iv (ID: 147)
- [ ] Cast time: 6.0s -> 5.0s
fire_v (ID: 148)
- [ ] Cast time: 10.0s -> 7.5s
blizzard_iv (ID: 152)
- [ ] Cast time: 6.0s -> 5.0s
blizzard_v (ID: 153)
- [ ] Cast time: 10.0s -> 7.5s
aero_iv (ID: 157)
- [ ] Cast time: 6.0s -> 5.0s
aero_v (ID: 158)
- [ ] Cast time: 10.0s -> 7.5s
stone_iv (ID: 162)
- [ ] Cast time: 6.0s -> 5.0s
stone_v (ID: 163)
- [ ] Cast time: 10.0s -> 7.5s
thunder_iv (ID: 167)
- [ ] Cast time: 6.0s -> 5.0s
thunder_v (ID: 168)
- [ ] Cast time: 10.0s -> 7.5s
water_iv (ID: 172)
- [ ] Cast time: 6.0s -> 5.0s
water_v (ID: 173)
- [ ] Cast time: 10.0s -> 7.5s
firaga_iv (ID: 177)
- [ ] Cast time: 9.2s -> 12.0s
- [ ] Recast: 39.8s -> 40.0s
- [ ] MP cost: 428 -> 360
firaga_v (ID: 178)
- [ ] Cast time: 10.5s -> 16.0s
- [ ] Recast: 48.5s -> 60.0s
- [ ] MP cost: 610 -> 450
blizzaga_iv (ID: 182)
- [ ] Cast time: 9.2s -> 12.0s
- [ ] Recast: 40.8s -> 40.0s
- [ ] MP cost: 455 -> 403
blizzaga_v (ID: 183)
- [ ] Cast time: 11.2s -> 16.0s
- [ ] Recast: 49.0s -> 60.0s
- [ ] MP cost: 642 -> 500
aeroga_iv (ID: 187)
- [ ] Cast time: 8.8s -> 12.0s
- [ ] Recast: 38.8s -> 40.0s
- [ ] MP cost: 396 -> 318
aeroga_v (ID: 188)
- [ ] Cast time: 10.5s -> 16.0s
- [ ] Recast: 45.8s -> 60.0s
- [ ] MP cost: 571 -> 402
stonega_iv (ID: 192)
- [ ] Cast time: 8.2s -> 12.0s
- [ ] Recast: 34.8s -> 40.0s
- [ ] MP cost: 345 -> 243
stonega_v (ID: 193)
- [ ] Cast time: 10.2s -> 16.0s
- [ ] Recast: 41.8s -> 60.0s
- [ ] MP cost: 512 -> 315
thundaga_iv (ID: 197)
- [ ] Cast time: 9.5s -> 12.0s
- [ ] Recast: 42.0s -> 40.0s
- [ ] MP cost: 483 -> 450
thundaga_v (ID: 198)
- [ ] Cast time: 11.5s -> 16.0s
- [ ] Recast: 50.0s -> 60.0s
- [ ] MP cost: 674 -> 520
waterga_iv (ID: 202)
- [ ] Cast time: 8.2s -> 12.0s
- [ ] Recast: 36.0s -> 40.0s
- [ ] MP cost: 371 -> 280
waterga_v (ID: 203)
- [ ] Cast time: 10.2s -> 16.0s
- [ ] Recast: 45.0s -> 60.0s
- [ ] MP cost: 541 -> 357
flare (ID: 204)
- [ ] Cast time: 12.0s -> 8.5s
flare_ii (ID: 205)
- [ ] Cast time: 10.0s -> 7.0s
freeze (ID: 206)
- [ ] Cast time: 12.0s -> 8.5s
freeze_ii (ID: 207)
- [ ] Cast time: 10.0s -> 7.0s
tornado (ID: 208)
- [ ] Cast time: 12.0s -> 8.5s
tornado_ii (ID: 209)
- [ ] Cast time: 10.0s -> 7.0s
quake (ID: 210)
- [ ] Cast time: 12.0s -> 8.5s
quake_ii (ID: 211)
- [ ] Cast time: 10.0s -> 7.0s
burst (ID: 212)
- [ ] Cast time: 12.0s -> 8.5s
burst_ii (ID: 213)
- [ ] Cast time: 10.0s -> 7.0s
flood (ID: 214)
- [ ] Cast time: 12.0s -> 8.5s
flood_ii (ID: 215)
- [ ] Cast time: 10.0s -> 7.0s
gravity_ii (ID: 217)
- [ ] Recast: 70.0s -> 75.0s
meteor (ID: 218)
- [ ] Recast: 52.0s -> 180.0s
bio_iv (ID: 233)
- [ ] Recast: 30.0s -> 5.0s
bio_v (ID: 234)
- [ ] Recast: 45.0s -> 5.0s
absorb-acc (ID: 242)
- [ ] Cast time: 2.0s -> 0.5s
absorb-attri (ID: 243)
- [ ] Cast time: 2.0s -> 0.5s
meteor_ii (ID: 244)
- [ ] Cast time: 5.0s -> 18.0s
- [ ] Recast: 10.0s -> 180.0s
- [ ] MP cost: 666 -> 150
- [ ] Jobs: BLM:X->75, RDM:X->75, WHM:X->75
virus (ID: 256)
- [ ] Cast time: 3.0s -> 1.5s
- [ ] Recast: 30.0s -> 10.0s
- [ ] MP cost: 39 -> 10
- [ ] Jobs: BLM:X->1
curse (ID: 257)
- [ ] Recast: 30.0s -> 10.0s
- [ ] MP cost: 39 -> 10
- [ ] Jobs: BLM:X->1
absorb-str (ID: 266)
- [ ] Cast time: 2.0s -> 0.5s
absorb-dex (ID: 267)
- [ ] Cast time: 2.0s -> 0.5s
absorb-vit (ID: 268)
- [ ] Cast time: 2.0s -> 0.5s
absorb-agi (ID: 269)
- [ ] Cast time: 2.0s -> 0.5s
absorb-int (ID: 270)
- [ ] Cast time: 2.0s -> 0.5s
absorb-mnd (ID: 271)
- [ ] Cast time: 2.0s -> 0.5s
absorb-chr (ID: 272)
- [ ] Cast time: 2.0s -> 0.5s
absorb-tp (ID: 275)
- [ ] Cast time: 2.0s -> 0.5s
geohelix (ID: 278)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
hydrohelix (ID: 279)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
anemohelix (ID: 280)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
pyrohelix (ID: 281)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
cryohelix (ID: 282)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
ionohelix (ID: 283)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
noctohelix (ID: 284)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
luminohelix (ID: 285)
- [ ] Cast time: 3.8s -> 5.0s
- [ ] Recast: 17.0s -> 45.0s
klimaform (ID: 287)
- [ ] Cast time: 5.0s -> 3.0s
cait_sith (ID: 307)
- [ ] Cast time: 1.0s -> 5.0s
- [ ] Recast: 60.0s -> 5.0s
- [ ] MP cost: 0 -> 5
animus_augeo (ID: 308)
- [ ] Cast time: 5.0s -> 3.0s
animus_minuo (ID: 309)
- [ ] Cast time: 5.0s -> 3.0s
katon_san (ID: 322)
- [ ] Cast time: 2.5s -> 2.8s
hyoton_san (ID: 325)
- [ ] Cast time: 2.5s -> 2.8s
huton_san (ID: 328)
- [ ] Cast time: 2.5s -> 2.8s
doton_san (ID: 331)
- [ ] Cast time: 2.5s -> 2.8s
raiton_san (ID: 334)
- [ ] Cast time: 2.5s -> 2.8s
suiton_san (ID: 337)
- [ ] Cast time: 2.5s -> 2.8s
jubaku_ni (ID: 342)
- [ ] Jobs: NIN:X->55
jubaku_san (ID: 343)
- [ ] Cast time: 2.5s -> 12.0s
hojo_san (ID: 346)
- [ ] Cast time: 2.5s -> 12.0s
- [ ] Jobs: NIN:X->73
kurayami_san (ID: 349)
- [ ] Cast time: 2.5s -> 12.0s
- [ ] Jobs: NIN:X->69
dokumori_ni (ID: 351)
- [ ] Jobs: NIN:X->52
dokumori_san (ID: 352)
- [ ] Cast time: 2.5s -> 12.0s
paralyga (ID: 356)
- [ ] Jobs: RDM:X->61, WHM:X->61
slowga (ID: 357)
- [ ] Jobs: RDM:X->61, WHM:X->61
hastega (ID: 358)
- [ ] Jobs: RDM:X->61, WHM:X->61
silencega (ID: 359)
- [ ] Jobs: RDM:X->61, WHM:X->61
dispelga (ID: 360)
- [ ] Cast time: 5.0s -> 3.0s
- [ ] Recast: 60.0s -> 10.0s
- [ ] MP cost: 20 -> 200
- [ ] Jobs: BLM:X->99, BRD:X->99, GEO:X->99, RDM:X->99, SCH:X->99, SMN:X->99, WHM:X->99
blindga (ID: 361)
- [ ] Jobs: BLM:X->61, RDM:X->61
bindga (ID: 362)
- [ ] Jobs: BLM:X->61, RDM:X->61
breakga (ID: 365)
- [ ] Cast time: 5.0s -> 3.5s
- [ ] Recast: 60.0s -> 45.0s
- [ ] MP cost: 100 -> 78
- [ ] Jobs: BLM:X->95
death (ID: 367)
- [ ] Cast time: 5.0s -> 3.0s
- [ ] Recast: 10.0s -> 180.0s
- [ ] MP cost: 666 -> 1
chocobo_hum (ID: 407)
- [ ] Jobs: BRD:X->52
cactuar_fugue (ID: 416)
- [ ] Jobs: BRD:X->58
moogle_rhapsody (ID: 417)
- [ ] Jobs: BRD:X->99
protected_aria (ID: 418)
- [ ] Jobs: BRD:X->99
embrava (ID: 478)
- [ ] Recast: 3.0s -> 6.0s
impact (ID: 503)
- [ ] Cast time: 14.0s -> 12.0s
- [ ] Jobs: GEO:X->90
gekka_ichi (ID: 505)
- [ ] Cast time: 4.0s -> 3.0s
yain_ichi (ID: 506)
- [ ] Cast time: 4.0s -> 3.0s
myoshu_ichi (ID: 507)
- [ ] Cast time: 4.0s -> 3.0s
kakka_ichi (ID: 509)
- [ ] Cast time: 4.0s -> 3.0s
migawari_ichi (ID: 510)
- [ ] Cast time: 3.0s -> 1.5s
metallic_body (ID: 517)
- [ ] Cast time: 3.0s -> 2.5s
memento_mori (ID: 538)
- [ ] Recast: 56.0s -> 120.0s
feather_barrier (ID: 574)
- [ ] Recast: 56.0s -> 120.0s
jettatura (ID: 575)
- [ ] Recast: 56.0s -> 120.0s
voracious_trunk (ID: 579)
- [ ] Recast: 56.0s -> 120.0s
lowing (ID: 588)
- [ ] Recast: 56.0s -> 120.0s
1000_needles (ID: 595)
- [ ] Recast: 56.0s -> 120.0s
bad_breath (ID: 604)
- [ ] Recast: 56.0s -> 120.0s
temporal_shift (ID: 616)
- [ ] Recast: 56.0s -> 120.0s
warm-up (ID: 636)
- [ ] Cast time: 3.0s -> 2.5s
- [ ] Recast: 56.0s -> 120.0s
amplification (ID: 642)
- [ ] Cast time: 4.0s -> 3.5s
- [ ] Recast: 56.0s -> 120.0s
zephyr_mantle (ID: 647)
- [ ] Cast time: 4.0s -> 3.5s
triumphant_roar (ID: 655)
- [ ] Cast time: 1.8s -> 0.5s
- [ ] MP cost: 36 -> 24
benthic_typhoon (ID: 670)
- [ ] Recast: 48.0s -> 51.0s
- [ ] MP cost: 56 -> 43
osmosis (ID: 672)
- [ ] Recast: 56.0s -> 120.0s
thunder_breath (ID: 695)
- [ ] Recast: 48.0s -> 240.0s
- Has same value as trusts but wikis claim 112s
natures_meditation (ID: 700)
- [ ] Cast time: 0.5s -> 1.0s
tempestuous_upheaval (ID: 701)
- [ ] Recast: 7.0s -> 12.0s
rending_deluge (ID: 702)
- [ ] Cast time: 1.5s -> 2.0s
- [ ] Recast: 30.0s -> 35.0s
embalming_earth (ID: 703)
- [ ] Cast time: 0.5s -> 3.0s
- [ ] Recast: 30.0s -> 24.0s
paralyzing_triad (ID: 704)
- [ ] Recast: 30.0s -> 15.0s
foul_waters (ID: 705)
- [ ] Cast time: 4.5s -> 3.5s
- [ ] Recast: 30.0s -> 60.0s
glutinous_dart (ID: 706)
- [ ] Cast time: 1.0s -> 0.5s
- [ ] Recast: 10.0s -> 6.0s
retinal_glare (ID: 707)
- [ ] Cast time: 1.0s -> 0.5s
- [ ] Recast: 30.0s -> 45.0s
subduction (ID: 708)
- [ ] Cast time: 0.5s -> 1.0s
- [ ] Recast: 30.0s -> 5.0s
thrashing_assault (ID: 709)
- [ ] Recast: 30.0s -> 60.0s
- [ ] MP cost: 99 -> 119
erratic_flutter (ID: 710)
- [ ] Cast time: 0.5s -> 2.0s
- [ ] Recast: 30.0s -> 45.0s
- [ ] MP cost: 63 -> 92
restoral (ID: 711)
- [ ] Cast time: 2.5s -> 2.0s
- [ ] Recast: 22.5s -> 10.0s
rail_cannon (ID: 712)
- [ ] Cast time: 0.5s -> 2.5s
- [ ] Recast: 22.0s -> 180.0s
diffusion_ray (ID: 713)
- [ ] Cast time: 0.5s -> 4.0s
- [ ] Recast: 22.0s -> 45.0s
sinker_drill (ID: 714)
- [ ] Recast: 22.0s -> 20.0s
droning_whirlwind (ID: 744)
- [ ] Cast time: 3.0s -> 1.5s
- [ ] MP cost: 76 -> 224
- [ ] Jobs: BLU:96->99
carcharian_verve (ID: 745)
- [ ] Cast time: 3.0s -> 1.0s
- [ ] MP cost: 52 -> 65
- [ ] Jobs: BLU:96->99
blistering_roar (ID: 746)
- [ ] Cast time: 3.0s -> 0.5s
- [ ] MP cost: 28 -> 43
- [ ] Jobs: BLU:96->99
indi-int (ID: 776)
- [ ] Jobs: GEO:34->36
geo-poison (ID: 799)
- [ ] Recast: 25.0s -> 12.0s
geo-haste (ID: 801)
- [ ] MP cost: 63 -> 200
- [ ] Jobs: GEO:93->97
geo-str (ID: 802)
- [ ] Recast: 24.0s -> 12.0s
geo-dex (ID: 803)
- [ ] Recast: 24.0s -> 12.0s
geo-vit (ID: 804)
- [ ] Recast: 24.0s -> 12.0s
geo-agi (ID: 805)
- [ ] Recast: 24.0s -> 12.0s
geo-int (ID: 806)
- [ ] Recast: 24.0s -> 12.0s
geo-mnd (ID: 807)
- [ ] Recast: 24.0s -> 12.0s
geo-chr (ID: 808)
- [ ] Recast: 24.0s -> 12.0s
geo-fury (ID: 809)
- [ ] Recast: 24.0s -> 12.0s
geo-barrier (ID: 810)
- [ ] Recast: 24.0s -> 12.0s
geo-acumen (ID: 811)
- [ ] Recast: 24.0s -> 12.0s
geo-fend (ID: 812)
- [ ] Recast: 24.0s -> 12.0s
geo-precision (ID: 813)
- [ ] Recast: 24.0s -> 12.0s
geo-voidance (ID: 814)
- [ ] Recast: 24.0s -> 12.0s
geo-focus (ID: 815)
- [ ] Recast: 24.0s -> 12.0s
geo-attunement (ID: 816)
- [ ] Recast: 24.0s -> 12.0s
geo-wilt (ID: 817)
- [ ] Recast: 24.0s -> 12.0s
geo-frailty (ID: 818)
- [ ] Recast: 24.0s -> 12.0s
geo-fade (ID: 819)
- [ ] Recast: 24.0s -> 12.0s
geo-malaise (ID: 820)
- [ ] Recast: 24.0s -> 12.0s
geo-slip (ID: 821)
- [ ] Recast: 24.0s -> 12.0s
geo-torpor (ID: 822)
- [ ] Recast: 24.0s -> 12.0s
geo-vex (ID: 823)
- [ ] Recast: 24.0s -> 12.0s
geo-languor (ID: 824)
- [ ] Recast: 24.0s -> 12.0s
geo-slow (ID: 825)
- [ ] Recast: 24.0s -> 12.0s
geo-paralysis (ID: 826)
- [ ] Recast: 24.0s -> 12.0s
geo-gravity (ID: 827)
- [ ] Recast: 24.0s -> 12.0s
atomos (ID: 847)
- [ ] Cast time: 1.0s -> 5.0s
- [ ] MP cost: 0 -> 50
reraise_iv (ID: 848)
- [ ] Cast time: 7.0s -> 6.5s
sandstorm_ii (ID: 857)
- [ ] MP cost: 30 -> 60
rainstorm_ii (ID: 858)
- [ ] MP cost: 30 -> 60
windstorm_ii (ID: 859)
- [ ] MP cost: 30 -> 60
firestorm_ii (ID: 860)
- [ ] MP cost: 30 -> 60
hailstorm_ii (ID: 861)
- [ ] MP cost: 30 -> 60
thunderstorm_ii (ID: 862)
- [ ] MP cost: 30 -> 60
voidstorm_ii (ID: 863)
- [ ] MP cost: 30 -> 60
aurorastorm_ii (ID: 864)
- [ ] MP cost: 30 -> 60
inundation (ID: 879)
- [ ] Cast time: 2.0s -> 3.0s
- [ ] Recast: 48.0s -> 20.0s
- [ ] MP cost: 0 -> 48
- [ ] Jobs: RDM:X->64
drain_iii (ID: 880)
- [ ] Cast time: 5.0s -> 3.0s
- [ ] Recast: 180.0s -> 240.0s
aspir_iii (ID: 881)
- [ ] Cast time: 2.0s -> 3.0s
- [ ] Recast: 48.0s -> 90s
- Caution
- [ ] MP cost: 0 -> 2
distract_iii (ID: 882)
- [ ] Cast time: 2.0s -> 3.0s
- [ ] Recast: 48.0s -> 10.0s
- [ ] MP cost: 0 -> 84
frazzle_iii (ID: 883)
- [ ] Cast time: 2.0s -> 3.0s
- [ ] Recast: 48.0s -> 10.0s
- [ ] MP cost: 0 -> 90
addle_ii (ID: 884)
- [ ] Recast: 48.0s -> 20.0s
- [ ] MP cost: 0 -> 63
geohelix_ii (ID: 885)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
hydrohelix_ii (ID: 886)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
anemohelix_ii (ID: 887)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
pyrohelix_ii (ID: 888)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
cryohelix_ii (ID: 889)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
ionohelix_ii (ID: 890)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
noctohelix_ii (ID: 891)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
luminohelix_ii (ID: 892)
- [ ] Cast time: 2.0s -> 7.5s
- [ ] Recast: 48.0s -> 60.0s
- [ ] MP cost: 0 -> 78
full_cure (ID: 893)
- [ ] Cast time: 2.0s -> 1.5s
- [ ] Recast: 48.0s -> 180.0s
- [ ] MP cost: 0 -> 1
refresh_iii (ID: 894)
- [ ] Cast time: 2.0s -> 5.0s
- [ ] Recast: 48.0s -> 36.0s
- [ ] MP cost: 0 -> 80
temper_ii (ID: 895)
- [ ] Cast time: 7.0s -> 3.0s
- [ ] Recast: 36.0s -> 45.0s
All trusts
- [x] Cast time: 3.0s -> 2.0s
While we're at it: audit the animations and animation time