ushio-2.cns

Last-modified: 2017-05-02 (火) 09:28:11

常時監視ステート、強化カラーの設定などもできるため、かなり重要な場所でもある。


 

スーパージャンプ用処理

編集前

[State -2, フラグリセット]
type = VarSet
trigger1 = (StateNo != 50)
trigger2 = (StateNo = 50) && (command != "holdfwd" || command != "holdback")
v = 55
value = 0
IgnoreHitPause = 1

 

[State -2, キーを前方か後方に]
type = VarSet
trigger1 = (var(54) = 1) && (StateNo = 50)
v = 55
value = (command="holdfwd")-(command="holdback")
IgnoreHitPause = 1

 
編集後

[State -2, フラグリセット]
type = VarSet
trigger1 = 1
v = 55
value = 0
IgnoreHitPause = 1

 

[State -2, キーを前方か後方に]
type = VarSet
trigger1 = (var(54) = 1) && (StateNo = 50)
v = 55
value = (p2statetype != L || BackEdgeBodyDist <= 20)-(p2statetype = L && BackEdgeBodyDist > 20)
IgnoreHitPause = 1


ここもスーパージャンプ用の記述、前半部分はステートナンバーが50でないときと、前キーを入力していないか
後ろキーを入力していないか、という要するに「すべての状況で」という意味なのでサクッと省略し纏める
後半はushio.cnsの時と同じなので、コピペしてくればそれで良い

 

ブロッキング用処理

編集前

[State -2, リセット];立ちと空中
type = VarSet
triggerall = (helper(12345),var(8)=1)
trigger1 = (var(56) <= 0)
trigger2 = (MoveType != I)
trigger3 = (var(56) <= 10) && (command = "blocking-001")
trigger4 = (StateType = C)
v = 56
value = 0
IgnoreHitPause = 1

 

[State -2, 前に入力]
type = VarSet
triggerall = (helper(12345),var(8)=1)
trigger1 = (command = "blocking-000")
v = 56
value = 16
IgnoreHitPause = 1

 

[State -2, 効果時間減少]
type = VarAdd
triggerall = (helper(12345),var(8)=1)
trigger1 = (var(56) > 0)
v = 56
value = -1
IgnoreHitPause = 1

 

;(中略)

 

[State -2, リセット];しゃがみ
type = VarSet
triggerall = (helper(12345),var(8)=1)
trigger1 = (var(57) <= 0)
trigger2 = (MoveType != I)
trigger3 = (var(57) <= 10) && (command = "blocking-003")
trigger4 = (StateType = A)
v = 57
value = 0
IgnoreHitPause = 1

 

[State -2, 下に入力]
type = VarSet
triggerall = (helper(12345),var(8)=1)
trigger1 = (command = "blocking-002")
v = 57
value = 16
IgnoreHitPause = 1

 

[State -2, 効果時間減少]
type = VarAdd
triggerall = (helper(12345),var(8)=1)
trigger1 = (var(57) > 0)
v = 57
value = -1
IgnoreHitPause = 1

 

;(中略)

 

[State -2, 食らい上書き];立ちブロッキング
type = HitOverRide
triggerall = (var(35) <= 0)
triggerall = (StateNo < 200)
triggerall = (MoveType = I)
trigger1 = (StateType = S) && (var(56) > 0)
time = 2
;attr = SA, NA,SA,HA,NP,SP,HP ;}どっちも同じ効果
attr = SA, AA,AP ;}どっちでも良い
stateno = 701
IgnoreHitPause = 1

 

[State -2, 食らい上書き];しゃがみブロッキング
type = HitOverRide
triggerall = (var(35) <= 0)
triggerall = (StateNo < 200)
triggerall = (MoveType = I)
trigger1 = (StateType != A)
trigger1 = (StateNo = 0) || (StateNo = [10,12])
trigger1 = (var(57) > 0)
time = 2
;attr = C, NA,SA,HA,NP,SP,HP
attr = C, AA,AP
stateno = 701
IgnoreHitPause = 1

 
編集後

[State -2, リセット];立ちと空中
type = VarSet
triggerall = (var(49) >= 1)
trigger1 = (var(56) <= 0)
trigger2 = (MoveType != I)
trigger3 = (var(56) <= 10) && (random <= (10 - var(49))* 40)
trigger4 = (StateType = C)
v = 56
value = 0
IgnoreHitPause = 1

 

[State -2, 前に入力]
type = VarSet
triggerall = (var(49) >= 1)
trigger1 = (random <= var(49) * 80)
v = 56
value = 16
IgnoreHitPause = 1

 

[State -2, 効果時間減少]
type = VarAdd
triggerall = (var(49) >= 1)
trigger1 = (var(56) > 0)
v = 56
value = -1
IgnoreHitPause = 1

 

;(中略)

 

[State -2, リセット];しゃがみ
type = VarSet
triggerall = (var(49) >= 1)
trigger1 = (var(57) <= 0)
trigger2 = (MoveType != I)
trigger3 = (var(57) <= 10) && (random <= (10 - var(49))* 40)
trigger4 = (StateType = A)
v = 57
value = 0
IgnoreHitPause = 1

 

[State -2, 下に入力]
type = VarSet
triggerall = (var(49) >= 1)
trigger1 = (random <= var(49) * 80)
v = 57
value = 16
IgnoreHitPause = 1

 

[State -2, 効果時間減少]
type = VarAdd
triggerall = (var(49) >= 1)
trigger1 = (var(57) > 0)
v = 57
value = -1
IgnoreHitPause = 1

 

;(中略)

 

[State -2, 食らい上書き];立ちブロッキング
type = HitOverRide
triggerall = (var(35) <= 0)
triggerall = (StateNo < 200)
triggerall = (MoveType = I)
trigger1 = (StateType != A) && (var(56) > 0)
trigger1 = (p2statetype = S || p2statetype = A)
time = 2
;attr = SA, NA,SA,HA,NP,SP,HP ;}どっちも同じ効果
attr = SA, AA,AP ;}どっちでも良い
stateno = 701
IgnoreHitPause = 1

 

[State -2, 食らい上書き];しゃがみブロッキング
type = HitOverRide
triggerall = (var(35) <= 0)
triggerall = (StateNo < 200)
triggerall = (MoveType = I)
trigger1 = (StateType != A)
;trigger1 = (StateNo = 0) || (StateNo = [10,12])
trigger1 = (var(57) > 0)
trigger1 = (p2statetype = C)
time = 2
;attr = C, NA,SA,HA,NP,SP,HP
attr = C, AA,AP
stateno = 701
IgnoreHitPause = 1


ブロッキングはキー入力すると一定時間の受付が始まり、受付時間中に攻撃を受けるとブロッキングする
だがキー入力が「押しっぱなし」だと逆に受付時間が短くなるというシステム。なのでブロッキングのレベルが
高くなるほど入力確率を高く、また中断の確率が低くなるように記述しておく。
var(49)」はブロッキングのレベル指定用のvarとして新たに指定している。

 

「(helper(12345),var(8)=1)」はデフォルトAIのブロッキング使用の可否の設定なので
使用するか否かの設定は、新たなAI側の「var(49)」に統一するよう書き換えておく

 

【追記】
変更し忘れていた「効果時間現象」の箇所も、新たなAI側の「var(49)」に統一するよう書き換え
また実際にブロッキングを行う「HitOverRide」の箇所も、立ち通常攻撃・しゃがみ通常攻撃などのように
地上状態なら問題なくブロッキングに移行するよう、書き換えておくことにする

P11,12用 特殊設定

編集前

[State -2,power常時1000以上]
type = powerset
trigger1 = (PalNo = 11) || (PalNo = 12)
trigger1 = (power < 1000)
value = 1000

 
編集後

[State -2,power常時1000以上]
type = powerset
trigger1 = (PalNo = 11) || (PalNo = 12)
trigger1 = (power < 1000)
value = 1000

 

[State -2,9pカラーでゲージ1本以上]
type = powerset
triggerall = roundstate = 2
triggerall = alive
triggerall = power < powermax
trigger1 = (PalNo = 9)
trigger1 = (power < 1000)
value = 1000
ignorehitpause = 1

 

[State -2,10pカラーでゲジマユ]
type = poweradd
triggerall = roundstate = 2
triggerall = alive
triggerall = power < powermax
trigger1 = (PalNo = 10)
value = 10000
ignorehitpause = 1


特殊カラーによる強化の項目、デフォルトで11Pと12Pは強化カラーだが、ステータスに変更が加わっており
調整には少々使いづらいので、ステータスに変更のないゲージ強化カラーとして9Pと10Pを追加する
誤動作防止として「roundstate = 2」「ignorehitpause = 1」を追加し、「alive」でタッグ戦のときに
自分が倒れたあともゲージ増加が残らないようにしておく、残ったほうが有利なのは確かだけど……