var(5) is for canceling into command normals, which is only used in Geese (I assumed to replicate KOF style command canceling, so for SNK characters I have that but for Capcom characters I get rid of it)
var(6) should not have specials in the trigger list unless you want to cancel specials into other specials
try this
[State -3, Special Cancel Check]
type = VarSet
trigger1 = var(20) && (StateNo = [200,699])
trigger2 = var(20) && (StateNo = [1000,2999]) && (MoveContact || var(18))
trigger3 = (StateNo = [200,699]) && Time <= 2
trigger4 = StateNo = 200 && MoveContact
trigger5 = StateNo = 210 && AnimElemTime(#) < 0
trigger6 = StateNo = 225 && AnimElemTime(#) < 0
trigger7 = StateNo = 230 && MoveContact
trigger8 = StateNo = 245 && AnimElemTime(#) < 0
trigger9 = StateNo = 400 && MoveContact
trigger10 = StateNo = 410 && AnimElemTime(#) < 0
trigger11 = StateNo = 420 && AnimElemTime(#) < 0
trigger12 = StateNo = 430 && MoveContact
trigger13 = StateNo = 440 && AnimElemTime(#) < 0
trigger14 = StateNo = 450 && AnimElemTime(#) < 0
var(6) = 1
ignoreHitPause = 1
replace "#" with the animation element that comes after the last element with a clsn1 in it
"&& MoveContact" is added for light attacks, "&& AnimElemTime(#) < 0" is added for medium and heavy
the super cancel ( var(7) ) varset looks basically the same (although some normal moves that weren't special cancelable become super cancelable so you'll have to add those)
the only difference is you add "&& (animelemtime(#) < 0 || (movecontact = [1, 8]))" after medium and heavy normals
for projectile specials add " && (animelemtime(#) = [1, 8])" with "#" being the element that the projectile comes out
for most other specials add " && animelemtime(#) < 0 && (movecontact = [1, 8])" with "#" being the animation element that comes after the last element with a clsn1 in it
hope that helps
As much as i try (coding-wise), i can't combo/juggle/cancel from Urien's cr.HP into chariot tackle/dangerous headbutt, i even asked JmorphMan for the help.
[State -3, Special Cancel Reset]
type = VarSet
trigger1 = 1
var(6) = 0
ignoreHitPause = 1
[State -3, Special Cancel Check]
type = VarSet
trigger1 = var(20) && (StateNo = [200,699])
trigger2 = var(20) && (StateNo = [1000,2999]) && (MoveContact || var(18))
trigger3 = (StateNo = [200,699]) && Time <= 2
trigger4 = StateNo = 200 && MoveContact
trigger5 = StateNo = 210 && AnimElemTime(4) < 0
trigger6 = StateNo = 225 && AnimElemTime(5) < 0
trigger7 = StateNo = 230 && MoveContact
trigger8 = StateNo = 245 && AnimElemTime(7) < 0
trigger9 = StateNo = 400 && MoveContact
trigger10 = StateNo = 410 && AnimElemTime(4) < 0
trigger11 = StateNo = 420 && (AnimElemTime(5) = [1,8])
trigger12 = StateNo = 430 && MoveContact
trigger13 = StateNo = 440 && AnimElemTime(3) < 0
trigger14 = StateNo = 450 && AnimElemTime(4) < 0
trigger15 = StateNo = 1100 && (AnimElemTime(5) = [1,8])
trigger16 = StateNo = 1200 && AnimElemTime(5) < 0
var(6) = 1
ignoreHitPause = 1
Spoiler: Cr.HP (click to see content)
[State 420, HitDef]
type = HitDef
trigger1 = !var(16) && (var(15) < 1 || var(20))
trigger1 = AnimElem = 3
forceNoFall = !var(20)
attr = C, NA
hitFlag = MAF
guardFlag = M
priority = 4, Hit
damage = ceil(ifElse(fvar(11) * 38 < 7, 7, fvar(11) * 38)), 0
getPower = ifElse(!var(13), 216, 72) * !var(20), 36 * !var(20)
givePower = 36, 36
pauseTime = ifElse(var(20), 5, 10), ifElse(var(20), 5, 10)
guard.pauseTime = ifElse(var(20), 5, 12), ifElse(var(20), 6, 12)
animType = Medium
air.animType = Back
fall.animType = Back
ground.type = Low
air.type = Low
ground.hitTime = 18
ground.slideTime = 18
guard.hitTime = 18
air.hitTime = 120
ground.velocity = -4.876, 0
ground.cornerPush.velOff = 0
guard.velocity = -9.67
guard.cornerPush.velOff = 0
air.velocity = -2.767, -8.324
air.cornerPush.velOff = 0
yAccel = 0.58
fall = 0
fall.recover = 0
fall.recoverTime = 120
hitSound = -1 + 0 * (var(31) := 2)
guardSound = -1 + 0 * (var(32) := 0)
sparkNo = -1 + 0 * (var(33) := 8012)
guard.sparkNo = -1 + 0 * (var(34) := 8000)
sparkXY = -10 + 0 * (var(35) := 43), var(36) := -50
palFX.time = 12 * var(9)
palFX.add = 255, 255, 255
palFX.sinAdd= -255, -255, -255, 48
forceStand = 1
[State 420, HitDef]
type = HitDef
trigger1 = !var(16) && (var(15) < 2 || var(20))
trigger1 = AnimElem = 4
forceNoFall = !var(20)
attr = C, NA
hitFlag = MAF
guardFlag = M
priority = 4, Hit
damage = ceil(ifElse(fvar(11) * 45 < 7, 7, fvar(11) * 45)), 0
getPower = ifElse(!var(13), 216, 72) * !var(20), 36 * !var(20)
givePower = 36, 36
pauseTime = ifElse(var(20), 8, 16), ifElse(var(20), 8, 16)
guard.pauseTime = ifElse(var(20), 5, 12), ifElse(var(20), 6, 12)
animType = Hard
air.animType = Back
fall.animType = Back
ground.type = Low
air.type = Low
ground.hitTime = 18
ground.slideTime = 18
guard.hitTime = 18
air.hitTime = 120
ground.velocity = -.5, -11.67
ground.cornerPush.velOff = 0
guard.velocity = -9.67
guard.cornerPush.velOff = 0
air.velocity = -.5, -11.67
air.cornerPush.velOff = 0
yAccel = 0.58
fall = 1
fall.recover = 0
fall.recoverTime = 120
hitSound = -1 + 0 * (var(31) := 2)
guardSound = -1 + 0 * (var(32) := 0)
sparkNo = -1 + 0 * (var(33) := 8012)
guard.sparkNo = -1 + 0 * (var(34) := 8000)
sparkXY = -10 + 0 * (var(35) := 35), var(36) := -130
palFX.time = 12 * var(9)
palFX.add = 255, 255, 255
palFX.sinAdd= -255, -255, -255, 48
[State -1, Crouching Heavy Punch]
type = ChangeState
value = 420
triggerAll = !AILevel
triggerAll = command = "holddown" && command = "z"
triggerAll = StateType != A
trigger1 = ctrl || (StateNo = [100,101])
trigger2 = var(4)
Spoiler: Chariot Tackle (click to see content)
[State 1100, HitDef]
type = HitDef
trigger1 = !var(16) && (var(15) < 1 || var(20))
trigger1 = AnimElem = 3
forceNoFall = !var(20)
attr = S, SA
hitFlag = MAF
guardFlag = M
priority = 3, Hit
damage = ceil(ifElse(fvar(11) * ifElse(var(10) = 2, 70, ifElse(var(10), 63, 56)) < 7, 7, fvar(11) * ifElse(var(10) = 2, 70, ifElse(var(10), 63, 56)))), 7
getPower = ifElse(!var(13), 72, 36) * !var(20), 12 * !var(20)
givePower = 36, 36
pauseTime = ifElse(var(20), 6, 12), ifElse(var(20), 6, 12)
guard.pauseTime = ifElse(var(20), 6, 12), ifElse(var(20), 6, 12)
animType = Hard
air.animType = Back
fall.animType = Back
ground.type = High
air.type = Low
ground.hitTime = 21
ground.slideTime = 18
guard.hitTime = 18
air.hitTime = 120
ground.velocity = -5.23, 0
ground.cornerPush.velOff = 0
guard.velocity = -10.52
guard.cornerPush.velOff = 0
air.velocity = -4.32, -7.49
air.cornerPush.velOff = 0
yAccel = 0.65
fall = 0
air.fall = 1
fall.recover = 0
fall.recoverTime = 120
forceStand = 1
hitSound = -1 + 0 * (var(31) := 2)
guardSound = -1 + 0 * (var(32) := 0)
sparkNo = -1 + 0 * (var(33) := 8013)
guard.sparkNo = -1 + 0 * (var(34) := 8001)
sparkXY = -10 + 0 * (var(35) := 78), var(36) := -76
palFX.time = 12 * var(9)
palFX.add = 255, 255, 255
palFX.sinAdd = -255, -255, -255, 48
envShake.time = 14
envShake.ampl = 4
envShake.freq = 120
[State -1, Chariot Tackle]
type = ChangeState
value = 1100
triggerAll = !AILevel
triggerAll = command = "ChariotTackle"
triggerAll = RoundState = 2 && StateType != A
trigger1 = ctrl || StateNo = 40 || StateNo = 52 || (StateNo = [100,101])
trigger2 = var(6)
Spoiler: Dangerous Headbutt (click to see content)
[Statedef 1200]
type = S
physics = N
moveType = A
anim = 1200
ctrl = 0
velSet = 0,0
sprPriority = 1
powerAdd = 72 * !var(20)
faceP2 = 1
[State 1200, Button Detect]
type = VarSet
trigger1 = !Time && !AILevel
var(10) = ifElse((command = "z" || command = "rlsz"), 2, ifElse((command = "y" || command = "rlsy"), 1, 0))
[State 1200, Button Detect (AI)]
type = VarSet
trigger1 = !Time && AILevel
var(10) = ifElse(P2Dist x > 100, 2, ifElse(P2Dist x > 88, 1, 0))
[State 1200, ChangeAnim]
type = ChangeAnim
trigger1 = !Time
value = ifElse(var(10) = 2, 1220, ifElse(var(10) = 1, 1210, 1200))
[State 1200, StateTypeSet: Air, Physics: None]
type = StateTypeSet
trigger1 = AnimElem = 2
stateType = A
[State 1200, ChangeAnim]
type = VelSet
trigger1 = AnimElem = 2
y = -1.657 + (var(10) * -1.01023)
x = 2.543 + (var(10) * 0.7894)
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = 4,1
volume = 255
channel = 0
[State 1200, Width]
type = Width
trigger1 = 1
edge = 20,0
[State 1200, VelAdd]
type = Gravity
trigger1 = AnimElemTime(3) > 0
[State 1200, HitDef]
type = HitDef
trigger1 = !var(16) && (var(15) < 1 || var(20))
trigger1 = AnimElem = 3
attr = A, SA
hitFlag = MAF
guardFlag = HA
priority = 7, Hit
damage = ceil(ifElse(fvar(11) * 87 < 7, 7, fvar(11) * 87)), 8
getPower = 0,0
givePower = 36, 36
pauseTime = ifElse(var(20), 7, 14), ifElse(var(20), 7, 14)
guard.pauseTime = ifElse(var(20), 6, 12), ifElse(var(20), 6, 12)
animType = Heavy
air.animType = Back
fall.animType = Back
ground.type = Low
air.type = Low
ground.hitTime = 20
ground.slideTime = 20
guard.hitTime = 20
air.hitTime = 120
ground.velocity = -4, -7.5
ground.cornerPush.velOff = 0
guard.velocity = -9.76
guard.cornerPush.velOff = 0
air.velocity = -4, -7.5
airguard.velocity = -6.67, -1.12
air.cornerPush.velOff = 0
yAccel = 0.5
fall = 1
air.fall = 1
fall.recover = 0
fall.recoverTime = 120
forceStand = 1
hitSound = -1 + 0 * (var(31) := 2)
guardSound = -1 + 0 * (var(32) := 0)
sparkNo = -1 + 0 * (var(33) := 8013)
guard.sparkNo = -1 + 0 * (var(34) := 8001)
sparkXY = -10 + 0 * (var(35) := 40), var(36) := -70
palFX.time = 12 * var(9)
palFX.add = 255, 255, 255
palFX.sinAdd = -255, -255, -255, 48
envShake.time = 14
envShake.ampl = 4
envShake.freq = 120
[State 1200, StateTypeSet: Idle]
type = StateTypeSet
trigger1 = AnimElemTime(5) >= 0
moveType = I
[State 1200, ChangeState]
type = ChangeState
trigger1 = pos y > -vel y
value = 1205
[State -1, Dangerous Headbutt]
type = ChangeState
value = 1200
triggerAll = !AILevel
triggerAll = command = "DangerousHeadbutt"
triggerAll = RoundState = 2 && StateType != A
trigger1 = ctrl || StateNo = 40 || StateNo = 52 || (StateNo = [100,101])
trigger2 = var(6)