[
板情報
|
カテゴリランキング
]
したらばTOP
■掲示板に戻る■
全部
1-100
最新50
|
1-
101-
201-
この機能を使うにはJavaScriptを有効にしてください
|
製作お助け掲示板2
1
:
blank
:2012/09/12(水) 22:10:24
>>前スレ999
Var(58)の初期化忘れはこっちのミスだね
10000のHelperとNullの間にVarSetのTrigger1=1のvar(58)=0を追加で。
>>前スレ997で「PlayerIDに使ってるのは8までって」ことなら
VarRangeSetはFirst=8-Var(59)とLast=8になるハズだけど…
本体のVerはそんなに影響してこないと思う。
「:=」を使った代入も使ってるステコンも昔からの共通仕様の範囲内だし。
2
:
ケットシー
:2012/09/13(木) 01:14:28
>10000のHelperとNullの間にVarSetのTrigger1=1のvar(58)=0を追加で。
[state ]
type = varset
trigger1 = 1
v = var(58)
value = 0
を指定の場所に追加しましたがvar(58)がそのままです。
相手のヘルパーが出っ放しでもvar(1)が0に戻るんですが仕様上これであってますか?
3
:
blank
:2012/09/14(金) 01:20:34
ごめん、Var(59)の初期化も忘れてる
>>2
のVarSetの代わりにVarRangeSetのFirst=58のLast=59のValue=0にしてみて
それかV=Var(58)をV=58に変えて、VarSetのV=59のValue=0を追加するか
ヘルパー出しっぱなしならVar(1)が0に戻ることはない予定だから
↑の変更しても駄目なら実際の記述見ないと何が原因か分からないかも
4
:
ケットシー
:2012/09/14(金) 22:16:13
>↑の変更しても駄目なら実際の記述見ないと何が原因か分からないかも
var(1)がすぐ消えるので変数管理の記述はります。
[State ]
Type = Helper
Trigger1 = 1
StateNo = 10011
[state ]
type = varrangeset
trigger1 = 1
First = 58
Last = 59
Value = 0
[State ];VarにIDを格納した敵ヘルパーがいなくなった場合、Var(59)にいなくなった数を格納しつつ番号の若いVarへ詰め、Var(58)にはMoveTypeがAの敵ヘルパー数を格納
Type = Null
Trigger1 = !PlayerIDExist(Var(1))
Trigger1 = Var(59) := 1
Trigger1 = 0
Trigger2 = PlayerIDExist(Var(1))
Trigger2 = PlayerID(Var(1)),MoveType = A
Trigger2 = Var(58) := 1
Trigger2 = 0
Trigger3 = !PlayerIDExist(Var(2))
Trigger3 = Var(59) := Var(59)+1
Trigger3 = 0
Trigger4 = PlayerIDExist(Var(2))
Trigger4 = Var(2-Var(59)) := Var(2) || 1
Trigger4 = PlayerID(Var(2)),MoveType = A
Trigger4 = Var(58) := Var(58)+1
Trigger4 = 0
(中略)
[State ];いなくなった数だけVarを初期化
Type = VarrangeSet
Trigger1 = Var(59) > 0
First = 8-Var(59)
Last = 8
Value = 0
5
:
ケットシー
:2012/09/14(金) 22:19:32
続きです
[State ];1F前に出したヘルパーのIDを自分のVar(0)に記憶しつつ親のVar(0)に自分のIDを格納
Type = ParentVarSet
Trigger1 = Var(0) := Parent,Var(0)
Trigger2 = 1
V = 0
Value = ID
[State ];親ヘルパーの未使用Varのうち最も番号の若いVarを取得(Var(0)を除く)なぜか8まで入れるとばぐる
Type = Null
Trigger1 = Var(1) := !!Parent,Var(1)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(2)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(3)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(4)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(5)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(6)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(7)
Trigger1 = Var(1) := Var(1)+!!Parent,Var(8)
[State ];自分の直前に呼び出されたヘルパーが敵のものだった場合、上で取得した親ヘルパーの空きVarにそのIDを格納し、Var(1)を1増やす
Type = ParentVarSet
Trigger1 = ID-Var(0) > 1
Trigger1 = PlayerIDExist(ID-1)
Trigger1 = PlayerID(ID-1),TeamSide != TeamSide
Trigger1 = Var(1) := Var(1)+1
V = Var(1)
Value = ID-1
[State ];自分の2つ前に呼び出されたヘルパーが敵のものだった場合、上で取得した親ヘルパーの空きVarにそのIDを格納し、Var(1)を1増やす
Type = ParentVarSet
Trigger1 = ID-Var(0) > 2
Trigger1 = PlayerIDExist(ID-2)
Trigger1 = PlayerID(ID-2),TeamSide != TeamSide
Trigger1 = Var(1) := Var(1)+1
V = Var(1)
Value = ID-2
(中略)
[State ];呼び出したFのうちに削除
Type = DestroySelf
Trigger1 = 1
6
:
blank
:2012/09/15(土) 00:07:56
あー
親ヘルパーの1F目でPlayerIDExist(0)がいないからVar(59)に1が入っちゃうのか
子ヘルパーのParentVarSetでID格納する前にPlayerIDExist(Var(1))とか読ませちゃ上手くいくわけないな
なんか見落とし多くてスマソ
[State ];VarにIDを格納した敵ヘルパーがいなくなった場合、Var(59)にいなくなった数を格納しつつ番号の若いVarへ詰め、Var(58)にはMoveTypeがAの敵ヘルパー数を格納
Type = Null
Trigger1 = Var(1) > 0
Trigger1 = !PlayerIDExist(Var(1))
Trigger1 = Var(59) := 1
Trigger1 = 0
Trigger2 = Var(1) > 0
Trigger2 = PlayerIDExist(Var(1))
Trigger2 = PlayerID(Var(1)),MoveType = A
Trigger2 = Var(58) := 1
Trigger2 = 0
Trigger3 = Var(2) > 0
Trigger3 = !PlayerIDExist(Var(2))
Trigger3 = Var(59) := Var(59)+1
Trigger3 = 0
Trigger4 = Var(2) > 0
Trigger4 = PlayerIDExist(Var(2))
Trigger4 = Var(2-Var(59)) := Var(2) || 1
Trigger4 = PlayerID(Var(2)),MoveType = A
Trigger4 = Var(58) := Var(58)+1
Trigger4 = 0
(中略)
↑こんな風に各トリガーの1行目を追加で。
あとはVar(9)以降にID格納しちゃわないように
[State ];自分の直前に呼び出されたヘルパーが敵のものだった場合、上で取得した親ヘルパーの空きVarにそのIDを格納し、Var(1)を1増やす
Type = ParentVarSet
Trigger1 = ID-Var(0) > 1
Trigger1 = PlayerIDExist(ID-1)
Trigger1 = PlayerID(ID-1),TeamSide != TeamSide
Trigger1 = Var(1) := Var(1)+1
Trigger1 = Var(1) <= 8
V = Var(1)
Value = ID-1
↑こんな風にトリガーの5行目を追加した方がいいかな
8までじゃないとバグる理由はよく分からない
7
:
ケットシー
:2012/09/16(日) 00:00:07
var(58) とvar(59)の初期化は成功していますが。
なぜか敵ヘルパーが消えた際var(4)は0になるのにvar(5)はそのままという自体が。
それと
trigger1 = PlayerID(Var(1)),HitDefAttr = SCA,AA
trigger2 = PlayerID(Var(2)),HitDefAttr = SCA,AA
中略
trigger8 = PlayerID(Var(2)),HitDefAttr = SCA,AA
v= var(57)
value = 1
という記述を入れるとvar(4)以降が全部埋まりvar(58)=5という結果になりました。
ちなみにみやかか同士のテストなのでvar(1)からvar(3)はstate10010のヘルパーとそれ以前に実装したヘルパー飛び道具感知用
ヘルパーが消えずに出続けているので埋まっていると思われます。
8
:
blank
:2012/09/16(日) 02:27:37
まず、Var(4)を0にする記述は
[State ]
Type = VarrangeSet
Trigger1 = Var(59) > 0
First = 9-Var(59);8-Var(59)じゃなかった、ごめん
Last = 8
Value = 0
↑これのVar(59)が5以上だった場合のみだから一緒にVar(5)も0になるハズ
Var(4)が0になってVar(5)がそのままってことは他のVar弄りが働いてるからそれをチェック
もしかしたら常時監視のVarSet読んでるかもしれない
で、Var(4)に格納したIDのヘルパーが消えてVar(5)に格納したIDのヘルパーが残っている場合は
[State ];VarにIDを格納した敵ヘルパーがいなくなった場合、Var(59)にいなくなった数を格納しつつ番号の若いVarへ詰め、Var(58)にはMoveTypeがAの敵ヘルパー数を格納
Type = Null
Trigger1 = Var(1) > 0
Trigger1 = !PlayerIDExist(Var(1));敵の常駐ヘルパーがいるから満たさず。これ以降のTrigger1を読み飛ばしてTrigger2を読み始める。Var(59)は0のまま
Trigger1 = Var(59) := 1
Trigger1 = 0
Trigger2 = Var(1) > 0
Trigger2 = PlayerIDExist(Var(1))
Trigger2 = PlayerID(Var(1)),MoveType = A
Trigger2 = Var(58) := 1
Trigger2 = 0;絶対に満たさず。Trigger3を読み始める。
Trigger3 = Var(2) > 0
Trigger3 = !PlayerIDExist(Var(2));敵の常駐ヘルパーがいるから満たさず。これ以降のTrigger3を読み飛ばす。Var(59)は0のまま
Trigger3 = Var(59) := Var(59)+1
Trigger3 = 0
Trigger4 = Var(2) > 0
Trigger4 = PlayerIDExist(Var(2))
Trigger4 = Var(2-Var(59)) := Var(2) || 1;Var(59)が0なのでVar(2)に現在のVar(2)を代入、つまり変化なし
Trigger4 = PlayerID(Var(2)),MoveType = A
Trigger4 = Var(58) := Var(58)+1
Trigger4 = 0
Trigger5 = Var(3) > 0
Trigger5 = !PlayerIDExist(Var(3));敵の常駐ヘルパーがいるから満たさず。これ以降のTrigger5を読み飛ばす。Var(59)は0のまま
Trigger5 = Var(59) := Var(59)+1
Trigger5 = 0
Trigger6 = Var(3) > 0
Trigger6 = PlayerIDExist(Var(3))
Trigger6 = Var(3-Var(59)) := Var(3) || 1;Var(59)が0なのでVar(3)に現在のVar(3)を代入、つまり変化なし
Trigger6 = PlayerID(Var(3)),MoveType = A
Trigger6 = Var(58) := Var(58)+1
Trigger6 = 0
Trigger7 = Var(4) > 0
Trigger7 = !PlayerIDExist(Var(4));敵のヘルパーがいなくなったから満たす。
Trigger7 = Var(59) := Var(59)+1;Var(59)に1を足す。Var(59)が1になる
Trigger7 = 0
Trigger8 = Var(4) > 0
Trigger8 = PlayerIDExist(Var(4));敵のヘルパーがいなくなったから満たさず。これ以降のTrigger8を読み飛ばす。
Trigger8 = Var(4-Var(59)) := Var(4) || 1
Trigger8 = PlayerID(Var(4)),MoveType = A
Trigger8 = Var(58) := Var(58)+1
Trigger8 = 0
Trigger9 = Var(5) > 0
Trigger9 = !PlayerIDExist(Var(5));敵のヘルパーが残っているから満たさず。これ以降のTrigger9を読み飛ばす。Var(59)は1のまま
Trigger9 = Var(59) := Var(59)+1
Trigger9 = 0
Trigger10 = Var(5) > 0
Trigger10 = PlayerIDExist(Var(5))
Trigger10 = Var(5-Var(59)) := Var(5) || 1;Var(59)が1なのでVar(4)に現在のVar(5)を代入、2行前を満たしているから代入する数値は0より大きい
Trigger10 = PlayerID(Var(5)),MoveType = A
Trigger10 = Var(58) := Var(58)+1
Trigger10 = 0
いなくなった敵ヘルパーがVar(4)の1つだけだった場合はVar(59)が1のまま最後まで実行されて
Var(5)にVar(6)を、Var(6)にVar(7)を、Var(7)にVar(8)を代入してVarRangeSetでVar(8)〜Var(8)を0に、って仕組みなんだけど…
追加する記述に関してはv = var(57)という書き方じゃVar(57)に格納されている数字に対応するVarを弄ることになるからVar(0)が変わっちゃうよ
Var(57)は一度も弄ってないから0になってるだろうし
trigger8のVar(2)はVar(8)の書き換え忘れかな
9
:
ケットシー
:2012/09/16(日) 22:49:37
本体の-2ステートのvarsetがヘルパーの変数にも影響する場合ってありましたっけ?
10
:
blank
:2012/09/16(日) 23:01:46
常時監視は本体用って訳じゃないよ
-2ならHelperType=Playerのヘルパーも実行する
11
:
ケットシー
:2012/09/19(水) 16:40:15
var(5)がそのままな理由はわかりませんが打撃ヘルパーの検出には成功しました。
親ヘルパーに
[State ];打撃、投げヘルパー検知
Type = ParentVarSet
trigger1 = PlayerID(Var(1)),hitdefattr = SCA,AA,AT
trigger2 = PlayerID(Var(2)),hitdefattr = SCA,AA,AT
trigger3 = PlayerID(Var(3)),hitdefattr = SCA,AA,AT
trigger4 = PlayerID(Var(4)),hitdefattr = SCA,AA,AT
trigger5 = PlayerID(Var(5)),hitdefattr = SCA,AA,AT
trigger6 = PlayerID(Var(6)),hitdefattr = SCA,AA,AT
trigger7 = PlayerID(Var(7)),hitdefattr = SCA,AA,AT
trigger8 = PlayerID(Var(8)),hitdefattr = SCA,AA,AT
var(27) = 1
[State ]
Type = ParentVarSet
trigger1 = (PlayerID(Var(1)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(1))||PlayerID(Var(1)),MoveType!= A
trigger1 = (PlayerID(Var(2)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(2))||PlayerID(Var(2)),MoveType!= A
trigger1 = (PlayerID(Var(3)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(3))||PlayerID(Var(3)),MoveType!= A
trigger1 = (PlayerID(Var(4)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(4))||PlayerID(Var(4)),MoveType!= A
trigger1 = (PlayerID(Var(5)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(5))||PlayerID(Var(5)),MoveType!= A
trigger1 = (PlayerID(Var(6)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(6))||PlayerID(Var(6)),MoveType!= A
trigger1 = (PlayerID(Var(7)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(7))||PlayerID(Var(7)),MoveType!= A
trigger1 = (PlayerID(Var(8)),hitdefattr = SCA,AP)||!PlayerIDExist(Var(8))||PlayerID(Var(8)),MoveType!= A
trigger2 = helper(10010),var(58) = 0
trigger2 = var(27) = 1
var(27) = 0
の記述で上手くいきました。
次は設置対策だ!
12
:
ケットシー
:2012/09/19(水) 17:33:21
っと↑の
trigger2 = var(27) = 1
は
trigger2 = root,var(27) = 1
に修正
13
:
ケットシー
:2012/09/19(水) 22:31:49
設置?の大雑把な認識はできました。
[State ];打撃判定の設置足元にある
Type = ParentVarSet
trigger1 = (PlayerID(Var(1)),hitdefattr = SCA,AA,AT)&&PlayerID(Var(1)),vel X = 0
trigger1 = (PlayerID(Var(1)),pos Y > -50)||((PlayerID(Var(1)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger2 = (PlayerID(Var(2)),hitdefattr = SCA,AA,AT)&&PlayerID(Var(2)),vel X = 0
trigger2 = (PlayerID(Var(2)),pos y > -50)||((PlayerID(Var(2)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger3 = PlayerID(Var(3)),hitdefattr = SCA,AA,AT&&PlayerID(Var(3)),vel X = 0
trigger3 = (PlayerID(Var(3)),pos y > -50)||((PlayerID(Var(3)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger4 = PlayerID(Var(4)),hitdefattr = SCA,AA,AT&&PlayerID(Var(4)),vel X = 0
trigger4 = (PlayerID(Var(4)),pos y > -50)||((PlayerID(Var(4)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger5 = PlayerID(Var(5)),hitdefattr = SCA,AA,AT&&PlayerID(Var(5)),vel X = 0
trigger5 = (PlayerID(Var(5)),pos y > -50)||((PlayerID(Var(5)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger6 = PlayerID(Var(6)),hitdefattr = SCA,AA,AT&&PlayerID(Var(6)),vel X = 0
trigger6 = (PlayerID(Var(6)),pos y > -50)||((PlayerID(Var(6)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger7 = PlayerID(Var(7)),hitdefattr = SCA,AA,AT&&PlayerID(Var(7)),vel X = 0
trigger7 = (PlayerID(Var(7)),pos y > -50)||((PlayerID(Var(7)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
trigger8 = PlayerID(Var(8)),hitdefattr = SCA,AA,AT&&PlayerID(Var(8)),vel X = 0
trigger8 = (PlayerID(Var(8)),pos y > -50)||((PlayerID(Var(8)),CONST(size.height) < 50)&&(PlayerID(Var(1)),statetype!=A))
var(25) = 2
[State ];打撃判定の設置空中にある
Type = ParentVarSet
trigger1 = PlayerID(Var(1)),hitdefattr = SCA,AA,AT&&PlayerID(Var(1)),vel X = 0
trigger1 = PlayerID(Var(1)),pos Y < -50
trigger2 = PlayerID(Var(2)),hitdefattr = SCA,AA,AT&&PlayerID(Var(2)),vel X = 0
trigger2 = PlayerID(Var(2)),pos y< -50
trigger3 = PlayerID(Var(3)),hitdefattr = SCA,AA,AT&&PlayerID(Var(3)),vel X = 0
trigger3 = PlayerID(Var(3)),pos Y< -50
trigger4 = PlayerID(Var(4)),hitdefattr = SCA,AA,AT&&PlayerID(Var(4)),vel X = 0
trigger4 = PlayerID(Var(4)),pos Y < -50
trigger5 = PlayerID(Var(5)),hitdefattr = SCA,AA,AT&&PlayerID(Var(5)),vel X = 0
trigger5 = PlayerID(Var(5)),pos Y< -50
trigger6 = PlayerID(Var(6)),hitdefattr = SCA,AA,AT&&PlayerID(Var(6)),vel X = 0
trigger6 = PlayerID(Var(6)),pos Y< -50
trigger7 = PlayerID(Var(7)),hitdefattr = SCA,AA,AT&&PlayerID(Var(7)),vel X = 0
trigger7= PlayerID(Var(7)),pos Y < -50
trigger8 = PlayerID(Var(8)),hitdefattr = SCA,AA,AT&&PlayerID(Var(8)),vel X = 0
trigger8 = PlayerID(Var(8)),pos Y < -50
var(24) = 2
が、足元の設置を消して空中の設置を出してもvar(25)が2のままという事態が発生しました。(var(24)とvar(25)が一つの設置で同時に2になりといことはありませんでした)
14
:
ケットシー
:2012/09/19(水) 22:32:46
var(25)の初期化に関する記述は
[State ];打撃判定の設置足元にある初期化
Type = ParentVarSet
triggerall = root,var(25) = 2
trigger1 = (PlayerID(Var(1)),pos y < -50)||PlayerID(Var(1)),hitdefattr!= SCA,AA,AT||PlayerID(Var(1)),vel X!= 0
trigger1 = (PlayerID(Var(2)),pos y < -50)||PlayerID(Var(2)),hitdefattr!= SCA,AA,AT||PlayerID(Var(2)),vel X!= 0
trigger1 = (PlayerID(Var(3)),pos y < -50)||PlayerID(Var(3)),hitdefattr!= SCA,AA,AT||PlayerID(Var(3)),vel X!= 0
trigger1 = (PlayerID(Var(4)),pos y < -50)||PlayerID(Var(4)),hitdefattr!= SCA,AA,AT||PlayerID(Var(4)),vel X!= 0
trigger1 = (PlayerID(Var(5)),pos y < -50)||PlayerID(Var(5)),hitdefattr!= SCA,AA,AT||PlayerID(Var(5)),vel X!= 0
trigger1 = (PlayerID(Var(6)),pos y < -50)||PlayerID(Var(6)),hitdefattr!= SCA,AA,AT||PlayerID(Var(6)),vel X!= 0
trigger1 = (PlayerID(Var(7)),pos y < -50)||PlayerID(Var(7)),hitdefattr!= SCA,AA,AT||PlayerID(Var(7)),vel X!= 0
trigger1 = (PlayerID(Var(8)),pos y < -50)||PlayerID(Var(8)),hitdefattr!= SCA,AA,AT||PlayerID(Var(8)),vel X!= 0
trigger2 = helper(10010),var(58) = 0
var(25) = 0
という風になっています。
15
:
blank
:2012/09/19(水) 22:53:15
PlayerID(Var(1))等が存在しない場合の条件を付けておかないと駄目かな
>>14
のTrigger1は1〜8まで全て存在する上で、それらのy座標が-50より大きいか、
打撃や投げを振ってないか、水平方向に速度を持っているかっていう条件だからね
親ヘルパー(10010番ヘルパー自身)に読ませるならTrigger2はリダイレクト使わずににVar(58) = 0で。
あと、親ヘルパーは本体が直接呼び出してると思うけど、
そうでないならTriggerAllのRootリダイレクトはParentリダイレクトに変えないと駄目
16
:
ケットシー
:2012/09/20(木) 23:44:27
>PlayerID(Var(1))等が存在しない場合の条件を付けておかないと駄目かな
成功しました。これで設置の手前で行ったり着たりせずにすみます。
17
:
mas2
:2012/10/31(水) 22:02:19
絵の依頼ってココでできますかね?
家族計画の「広田 寛」を作るんですけど高屋敷家の皆さんとその他をどなたか描いていただけないでしょうか?
富竹やミクみたいにいろんな人が協力していただけると、嬉しいです。m(_ _)m
ヘルパーとして出します。
家計キャラ以外でも、中の人つながりでもネタでもいいので、なにとぞご検討のほどお願いします。
18
:
blank
:2012/11/02(金) 19:46:39
>>17
ドット絵板でも指摘されているようですが、まずはα版なり形になってから募集されるのが一番よいかと思います。
19
:
mas2
:2012/11/02(金) 22:28:21
>>18
そうですね、分かりました。まずはα版まで形にします。
20
:
mas2
:2012/11/07(水) 22:18:25
「広田 寛」α版完成までなんとかたどり着きました。
>>18
様ありがとうございました
本格的に募集したいとおもいます。
家計キャラのストライカーの絵を代わりに描いてくださる方
ご協力の程をおねがいいたしますm(_ _)m
ホントお願いします
ゆっくりでいいので検討の方を・・・
21
:
ケットシー
:2012/12/18(火) 20:00:21
モカにラビキャン的なシステムを搭載しAIにもそれを組み込んでみたのですがなぜか指定範囲外でも暴発・・・
試しに同キャラでF3を押すとSEなりまくってゲージがあっという間にからに・・・
記述は以下の通りになります。
[state -1,ぬこキャンセル]
type = changestate
value = 3300
triggerall = power >= 1000
triggerall = alive
triggerall = movetype!=H
triggerall = var(59) = 1
triggerall = ctrl = 0
trigger1 = stateno = 260;立ち中段
trigger1 = moveguarded
trigger1 = (Random<=var(58)*30)||(var(58)>9)
trigger2 = stateno = 810;投げ成功
trigger2 = AnimElem = 3, < 0
trigger2 = p2life > 300
trigger2 = EnemyNear(var(50)),backedgebodydist <= 130
trigger3 = stateno = 1120||1140;昇竜
trigger3 = moveguarded
trigger3 = (Random<=var(58)*50)||(var(58)>9)
trigger4 = stateno = 1120||1140
trigger4 = AnimElemTime (9) > 0
trigger4 = (EnemyNear,HitDefAttr = SCA,AA,AT,AP)|| var(27) = 1||var(26) = 1||(enemynear(var(50)),NumProj = 1)
trigger4 = inguarddist
trigger4 = (Random<=var(58)*50)||(var(58)>9)
trigger5 = stateno = 260
trigger5 = AnimElemTime (5) < 0
trigger5 = p2stateno = 130
trigger5 = (Random<=var(58)*50)||(var(58)>9)
trigger5 = P2bodyDist X = [-15,25]
trigger5 = var(58)>7
trigger6 = stateno = 810
trigger6 = AnimElem = 3, < 0
trigger6 = p2life > 100
trigger6 = EnemyNear(var(50)),backedgebodydist >= 130
trigger6 = power >= 1800
trigger7 = stateno = 1010
trigger7 = NumHelper(1011) = 0
trigger7 = animelem = 9, > 0
trigger7 = inguarddist
trigger7 = EnemyNear(var(50)),movetype = A
trigger7 = (Random<=var(58)*50)||(var(58)>9)
trigger7 = (EnemyNear,HitDefAttr = SCA,AA,AT)|| var(27) = 1
trigger8 = stateno = 1141||1151
trigger8 = EnemyNear(var(50)),movetype = A
trigger8 = (EnemyNear,HitDefAttr = SCA,AA,AT)|| var(27) = 1||(enemynear(var(50)),NumProj = 0)
trigger8 = (Random<=var(58)*50)||(var(58)>9)
triggerは全てstateno を入れてあるのでところかまわず暴発するはずはないんですが??
22
:
blank
:2012/12/18(火) 21:39:18
Trigger3、Trigger4、Trigger8の各1行目が確実に成立するね、それだと
やるなら
Trigger3 = (StateNo = 1120) || (StateNo = 1140)
みたいにしなきゃ駄目
23
:
ケットシー
:2012/12/19(水) 00:46:25
>22
>Trigger3 = (StateNo = 1120) || (StateNo = 1140)
>みたいにしなきゃ駄目
ご指摘ありがとうございました。
24
:
blank
:2012/12/29(土) 14:56:46
ヘルパーを呼び出し、同じコマンドを入力をすると呼びだしたヘルパーが攻撃するようにしたいのですが、
どのような記述をしたらいいのでしょうか?
25
:
blank
:2013/01/03(木) 16:18:29
[State -1]
Type = ChangeState
Trigger1 = Command = "○○"
Trigger1 = !NumHelper(XXX)
Value = ???
[Statedef ???];本体動作(ヘルパー呼び出し)
Anim = ???
Ctrl = 0
[State ???]
Type = Helper
Trigger1 = !NumHelper(XXX)
Trigger1 = Time = **
ID = XXX
StateNo = !!!
[State ???]
Type = ChangeState
Trigger1 = AnimTime = 0
Value = 0
Ctrl = 1
[Statedef !!!];ヘルパー待機
[State !!!]
Type = ChangeState
Trigger1 = Time > 0
Trigger1 = Root,Command = "○○"
Trigger1 = Root,Ctrl
Value = ###
[Statedef ###];ヘルパー攻撃
例えばこんな感じで
この場合コマンドは常に本体の向き依存だから
ヘルパーの向きに合わせたいならFacing使ってやる必要があるけど
26
:
マーレイ
:2013/01/08(火) 16:03:44
初めまして。初のキャラ制作チャレンジ中なのですが、sndファイルでトラブってます。
MCMで作ったsndファイルを登録するとエラーが出てしまいます。
他キャラのsndファイルを登録したら問題なく動きましたが、他キャラのsndファイルに自前のwavファイルを追加してsndファイルを作ってもエラー、SAEで作ってもダメでした。
エラーメッセージは
"Can't load mitate.snd
Error loading chars/mitate/mitate.def
Error loading p1"
です。
あまり変なwavファイルは使っていないはずですが、wavファイルが壊れているのでしょうか?それとも登録できない番号があるのでしょうか?どなたか御教示ください。
27
:
blank
:2013/01/08(火) 22:48:42
そのwavファイルとMCMの相性が悪いだけだから別のツール使って登録するなり
別のツールでエラーsndを開いて保存し直すなりすれば解消されるはず
それで直らないならwavファイルに原因アリ
MCMは旧世代のツールだから新しく製作始めたい人には正直お勧めしない
sffとsndは不具合多いから、MCM使い慣れた俺でもair以外はSAMに鞍替えしたし
airも慣れてなきゃ使ってられないレベルだよ
28
:
マーレイ
:2013/01/09(水) 17:24:29
相性なんてあったんですね・・・
とりあえずSndEditorも使ってみましたがダメだったのでWAVファイル見直してみます。
他のエディタに関してはSAMを使ってみることにします。
ありがとうございました。
29
:
blank
:2013/02/15(金) 21:53:51
食らった攻撃が打撃か飛び道具か投げかを判断するにはどうすればいいのでしょうか?
30
:
blank
:2013/02/16(土) 01:25:49
トリガーでenemynear,hitdefattrと指定すると相手の出した攻撃の属性が分かる。
enemynear,hitdefattr = SCA,AAなら全ての攻撃(投げと飛び道具を除く)、enemynear,hitdefattr = SCA,ATなら全ての投げ。
Statedef -2で上のトリガーと変数を使って敵の攻撃属性を監視しておけば、攻撃を喰らった瞬間にその攻撃が打撃か投げか判断できる。
ただしこの方法だと、「enemynear,」は一番近くの敵本体という意味になるので、
飛び道具やヘルパーを使った同時攻撃、またはタッグ戦で属性を精密に判別できない。できる方法があるのかもしれないが私では説明できない。
とりあえず簡単な方法を参考程度に。
31
:
blank
:2013/02/16(土) 21:52:43
HitOverrideを2つ用意して
片方はSlot=0でAttr=SCA,AAでStateNo=5025
もう片方はSlot=1でAttr=SCA,APでStateNo=5026
みたいにパラメータ設定して
5025や5026にはステートの最初にMoveType=Hを置いておく
5025では適当なVarに適当な値を格納して(打撃を喰らったフラグON)5000や5020や5070へChangeState
5026では適当なVarに適当な値を格納して(飛び道具を喰らったフラグON)5000や5020や5070へChangeState
本来の喰らいステートの前に5025か5026を経由して判別する感じ
どちらのフラグも立たなかったら投げってことで
まあこの方法はP2StateNo付きのHitDef効かなくなるし常時展開するのはお勧めできない
攻撃で潰せるストライカーとか身代わりの術みたいな技に限って組み込むならいいと思うけど
32
:
blank
:2013/02/20(水) 22:51:05
>>30
,
>>31
遅くなりましたがお二人共ありがとうございます。
参考になりました!
33
:
ケットシー
:2013/03/22(金) 00:16:58
有利ステートがとれるダウン引き起こし技(早い話が「まだお」)の終わり際5Fを必殺技でキャンセルできるようにしたいのですがどうも上手くいきません。
State -1, 変数の例2];必殺技の発生条件をチェック
type = VarSet
triggerall = statetype != A
trigger1 = ctrl||stateno = 11
trigger2 = (stateno = [200,270]) || (stateno = [400,499])
trigger2 = movecontact
trigger3 = stateno = 1111
trigger3 = AnimElemTime (6) >= 0;ここより下
trigger4 = stateno = 1211
trigger4 = AnimElemTime (6) >= 0
trigger5 = stateno = 281
trigger4 = AnimElemTime (6) >= 0
var(1) = 1
という記述したのですがキャンセルできていません。この他にもtimeやanimtimeでも試してみたのですが上手くいきません。
34
:
ケットシー
:2013/03/22(金) 12:29:21
すいません自己解決しました。超必殺技専用の変数管理とtoriggerがかぶっていたのが原因だったようです。
35
:
ケットシー
:2013/03/22(金) 22:52:34
空中技のステートで何故かair一枚目で固まるという減少が発生しています。人操作だとなんともないのですが何故かAIだとバグります。
ただ、バグっても落下中にのこりの動作がはじまったりします。一枚目の表示時間は3FしかないはずでSAEでAIRファイルを再生するぶんには問題がありません。
一応CNSとCMDを張って置きます。どなたかアドバイスを頂けると助かります。
;ジャンプ強爪
[Statedef 640]
type = A
movetype= A
physics = A
juggle = 1
poweradd= 0
ctrl = 0
anim = 640
sprpriority = 2
facep2 = 0
[State 640, 音を鳴らす]
type = PlaySnd
trigger1 = Time = 9
value = 0, 1
[State 400]
type =Explod
trigger1 = time = 13
trigger1 = NumExplod(10026) < 1
Anim = 10026
ID = 10026
postype = p1
pos = 0,0
SprPriority = 3
scale = 0.25,0.25
BindTime = -1
RemoveTime = 10
OwnPal = 1
RemoveOnGetHit = 0
ignorehitpause = 1
[State 640, ヒット定義]
type = HitDef
trigger1 = AnimElem = 4, >= 0 && AnimElem = 5, < 0
attr = A, NA
damage = Floor(75*fvar(0)), 0
guardflag = HA
getpower = 80,0
priority = 4
pausetime = 20,20
sparkno = 1
sparkxy = -10,-40
hitsound = s200,7
guardsound = s201,5
animtype = Med
ground.type = High
ground.slidetime = 12
ground.hittime = 12
guard.hittime = 2
ground.velocity = -1.2,-6.5
air.velocity = -1.5,-6
air.hittime = 20
fall = 1
air.fall = 1
fall.recovertime = 50
guard.velocity = -2.5
persistent=0 ;これでステート中一回しか発動しない。
[State 240]
type =Explod
trigger1 = movehit= 1
trigger1 = NumExplod(10021) < 1
trigger1 = (AnimElemTime (4) >= 0) && (AnimElemTime (5) < 0)
Anim = 10021
ID = 10021
postype = p1
pos = 30,-60
SprPriority = 3
scale = 0.25,0.25
BindTime = -1
RemoveTime = 24
OwnPal = 1
RemoveOnGetHit = 0
ignorehitpause = 1
36
:
ケットシー
:2013/03/22(金) 22:55:06
続いてCMDです。
[State -3,空中強]
Type = ChangeState
value = 640
TriggerAll=var(59) = 1 && RoundState = 2
TriggerAll=StateType=A
TriggerAll=EnemyNear(var(50)),StateType != L
triggerall = var(9) = [0,14];juggle
triggerall = p2stateno!= var(52) && var(52) > 0||var(52) = 0;当身ステート
triggerall = p2stateno!= var(51) && var(51) > 0||var(51) = 0
trigger1 = var(21) =0;コンボ管理用変数
trigger1 = ctrl
trigger1 = P2BodyDist X =[-40,80]
Trigger1 =P2BodyDist Y =[-45,42]
Trigger1 = Random <= var(58)*(30-var(38)*5)
trigger2 = stateno = 610
trigger2 = movehit
trigger2 = P2BodyDist X =[-40,50]
trigger2 = (fvar(5) = 0.3)||(var(23)=0);同技補正とパワーアップ管理変数
trigger3 = ctrl
trigger3 = P2BodyDist X =[-40,60]
Trigger3 =P2BodyDist Y =[-52,62]
trigger3 = p2movetype = H
trigger3 = var(21) =0
trigger4 = var(21)>0
trigger4 = vel Y > 0
trigger4 = P2BodyDist Y = [-45,50]
trigger4 = P2BodyDist X =[-40,60]
trigger4 = EnemyNear(var(50)),movetype =H
trigger5 = stateno = 610
trigger5 = movehit
trigger5 = EnemyNear(var(50)),StateType!= A
trigger5 = (var(23)=0)||(fvar(5)!=1)
trigger6 = ctrl
trigger6 = var(20)=7
trigger6 = P2BodyDist Y = [-55,50]
trigger6 = P2BodyDist X =[-40,60]
37
:
ケットシー
:2013/03/23(土) 01:47:08
追記
録画してみてみたのですがtimeが0のままになっていました。
38
:
ケットシー
:2013/03/23(土) 21:49:09
すいません二回連続自己解決しました。trigger4にctrlが入っていなかったためひたすら640へチェンステし続けてたのが原因でした。
39
:
Azuma
:2013/05/05(日) 18:32:36
鬼武者の魂エフェクト(へルパー管理)を作りたいのですが
※参考ムービー ttp://www.nicovideo.jp/watch/sm520983
①相手を攻撃した場所(X座標のみ読み取り)から発生
②画面内ではなくステージ内で一定時間存在する
③発生後、消滅まで蛍っぽい動き方をする(一定範囲をランダムor数パターンでふよふよと浮遊して動く)
④本体の特定アクションに反応して、本体の指定座標へと動く(本体が吸い込むイメージ)
このうち、③の「蛍っぽいふよふよしたランダムorパターン挙動」
及び④の「本体の指定座標へと動く」のvel系ステコンを作れませんでした。
参考になるキャラがいたら、それをベースに作るなどの手段を考えているのですが見つかっていません。
可能であれば記述それ自体を教えて下されば理想ですが
もしくは、参考になるキャラデータの紹介をお願いしたいです。
40
:
blank
:2013/05/07(火) 22:35:22
東方の「魂魄 妖夢」は半霊という「本体を追尾する」「ふよふよした」オプションを連れています。
クロガネ氏が原作再現キャラを作成していてダウンロード可能なので参考にしてはいかがでしょうか?
41
:
blank
:2013/05/14(火) 20:20:59
すいません、初心者なんですけどここってCNS代行をお願いできますか?
42
:
blank
:2013/05/15(水) 00:41:29
ドッターなら「こういうキャラ描いてるんでプログラマー募集します」的なのを
どっちかの絵板に貼れば、ドット打てないけどCNS組めるって人が名乗りを上げるかもしれないよ
箱レンとかそういうタイプだった気がするし
ここはどっちかというと、自分で記述組んでるけど上手くいかない部分があるから解決策が欲しい
って人にアドバイスするのがメインだから、そういう呼びかけには適さないと思う
ここ見てる人自体そんなに多くなさそうだし
43
:
blank
:2013/05/15(水) 12:58:12
>>41
【同人ゲーム】MUGENキャラ作ろうぜ!スレあたりはどうかな?
42の云うとおり、具体的に○○なキャラ作ってますorサンプル絵提示すると
更に良いかも知れないよ
44
:
blank
:2013/05/15(水) 16:56:52
>>42
>>43
返信ありがとうございます。
そんなスレがあったんですね、了解しました。のぞいてみますね。
45
:
Azuma
:2013/05/19(日) 18:20:39
>>40
参考にしてみます、ありがとうございます。
御礼遅れました。
サキエルのオプション火の玉も参考になりそうなので、見てみることにします。
46
:
flax
:2013/05/23(木) 16:22:04
すんません、非常に間抜けな質問なんですが…
ヘルパーを出して、それにエフェクトを出させて、本体の方でvarの数値を変更したらエフェクトを消してヘルパーも消す、っていう処理をさせたいんですが、
[State -2, エフェクト消去]
type = RemoveExplod
trigger1 = var(21)!= 1
ID = 12000
と記述してもエフェクトを出した瞬間に消してしまいます
デバッグ情報ではちゃんとvarそのものは1になっているんですが…
47
:
blank
:2013/05/23(木) 23:49:58
Trigger1 = Parent,Var(21) != 1
だね
本体とヘルパーは別々に変数管理してるから
本体のvarを見てヘルパーが行動を起こすって場合にはParentリダイレクトが必要
48
:
flax
:2013/05/25(土) 02:28:53
>>47
ありがとうございます!
こんな簡単な事に気付かなかったとは…
49
:
blank
:2013/08/27(火) 16:03:44
ステートを奪って地面に接触するとバウンドする技が作りたいのですが、
どの様な記述をすればいいのでしょうか?
カンフーマンの壁バウンドを参考にしようと思ったのですが、壁バウンドにしかならないので…。
50
:
blank
:2013/08/27(火) 23:20:40
5050の空中喰らい落下から始まって5100〜5101が床バウンド、5110が床ダウンのステートだから参考に。
基本的にPos y>=0とVel y>0でPosSetとVelSetとChangeAnimで床衝突、
AnimTime等でタイミング図ってVelSetとChangeAnimで跳ね上がり、
あとはVelAddやGravityで重力かけつつ再度Pos y>=0とVel y>0で床ダウン
って流れ。
Common1.cns見て記述を理解しながら書いた方がいいと思うよ
51
:
MANDA
:2013/09/16(月) 17:30:23
初めまして、MANDAというものです。最近MUGENでキャラ作りを始めたのですが、
ヘルパーが思うように消滅してくれなくて困っています。ちなみにそのヘルパーとは、
KFMを改造してお辞儀をするたびに本体の動きとシンクロするKFMが沸いてきて
、その沸いてきたKFMは攻撃を受けると消滅する・・・という感じにしたいんです。
しかし攻撃を受けると、なぜか消滅せずに判定が残ったまま固まるという現象が、
分身だけでなく、本体にも起こります。どうすればちゃんと消えてくれるのでしょうか?
CNSの記述も書いたほうがいいでしょうか?
52
:
blank
:2013/09/17(火) 23:15:49
statedef 5000が無い(or無関係なステートと番号被ってる)んでしょうな
53
:
blank
:2013/09/17(火) 23:19:10
書き忘れたけど5000とかはCommon1.cnsに最初からあるから
特に弄ってなければ5000が無いってことはないと思う
54
:
MANDA
:2013/09/18(水) 21:54:57
Common1.cnsとかは特にいじってないですね
ちなみにCNSに書き込んだヘルパーのステートは以下のとおりです
[Statedef 6000]
type = S
movetype = A
physics = S
anim = 195
[State 6001]
type = Helper
trigger1 = time = 10
helpertype = normal
name = "bunsin"
ID = 200
stateno = 40
pos = 60,-120
postype = p1
facing = 1
supermovetime = 0
pausemovetime = 0
keyctrl = 1
[State 6001,攻撃を受けたときの処理]
type = HitOverride
trigger1 = time = 0
attr = SCA, NT, ST, HT, NA, SA, HA,NP,SP,HP
stateno = 6002
Time = -1
ForceAir = 0
[State 6002, ヘルパー消滅]
type = DestroySelf
anim = 40
trigger1 = Animtime =0
[State 1010,1]
type = changestate
trigger1 = time = 30
value = 10
ctrl = 1
ステート6000台がなんかのステートと被ってるか
単純に何かが抜けているのどっちかですかね?
記入漏れがあるなら教えていただけるとありがたいです
55
:
blank
:2013/09/19(木) 23:14:01
まず、6000番を読み込むと
11F目に40番(ジャンプ開始)で始まるヘルパーを呼んで
今後いかなる攻撃を受けても6002番に飛ぶよう準備して
自分がヘルパーだったら現在表示中のアニメーションの終わりに消滅して
31F目に10番(屈み開始)へ飛ぶ
ということになってる
で6002番が存在しないから一度喰らったらその後の挙動が指定されずに固まる
[Statedef XX]を記入して初めてXX番として機能するから
>>54
の書き方だと[State 6001]とかが全て6000番の中身として扱われる
56
:
MANDA
:2013/09/21(土) 13:03:16
つまり、6001番とか6002番を[Statedef 6001]みたいに直せってことですか?
57
:
blank
:2013/09/21(土) 15:07:08
[Statedef XX]から[Statedef YY]までがXX番で、[State ZZ]のZZは全く考慮されない
で、各ステートには最低1つの[State ZZ]がなきゃいけないから
[State 6001]を書き換えるんじゃなくて[Statedef 6001]を適切な場所に追加する
58
:
MANDA
:2013/09/21(土) 19:02:07
うーん?初心者なのでよくわからないです・・・
[State ZZ]とは具体的にはどんなものか、
また適切な場所とはどこなんでしょうか?
わからないことだらけで申し訳ないです・・・すみません
59
:
blank
:2013/09/21(土) 19:53:05
[Statedef 6000];6000番ステート開始
Type = S
MoveType = A
Physics = S
Anim = 195;Type〜Animの4つはステート開始時の設定(VelSetやCtrl等もここで設定可)
[State 6001];6000番ステートの中身1つ目
Type = Helper
(略)
[State 6001];6000番ステートの中身2つ目
Type = HitOverride
(略)
となっているのを、例えば
[Statedef 6000];6000番ステート開始
Type = S
MoveType = A
Physics = S
Anim = 195;Type〜Animの4つはステート開始時の設定(VelSetやCtrl等もここで設定可)
[State 6001];6000番ステートの中身1つ目
Type = Helper
(略)
[Statedef 6001];6001番ステート開始
[State 6001];6001番ステートの中身1つ目
Type = HitOverride
(略)
と記述を追加するとHelperは6000番の中身のままで、HitOverrideは6001番の中身になる
この時の[State 6001]の「6001」には何の意味も無くて、
[State ろくせんいち]と日本語入れても[State ]と無記載(半角スペースは必須)でも
[Statedef 6000]の下であれば6000番の中身だし[Statedef 9999]の下であれば9999番の中身
60
:
blank
:2013/09/21(土) 20:11:25
CNSの構造理解しないとこの先躓くだろうからその説明ばっか書いてたけど
>>51
のやりたいことを記述に起こすと
[State ]
Type = Helper
Trigger1 = Time = 10
StateNo = 6000
Pos = 60,-120
KeyCtrl = 1
を最初からある[Statedef 195]の下に追加して
[Statedef 6000]
Type = A
Physics = A
Anim = 44
[State ]
Type = HitOverride
Trigger1 = 1
Attr = SCA, NA, SA, HA, NT, ST, HT, NP, SP, HP
StateNo = 6001
Time = -1
[Statedef 6001]
[State ]
Type = DestroySelf
Trigger1 = 1
をCNSファイルの一番下にでも追加する
ってところかな
完全にシンクロさせるならこの方法じゃ無理だけど
>>54
から察するにやりたいのはこれだと思う
61
:
MANDA
:2013/09/22(日) 20:54:05
出来ました!ありがとうございます!
しかしcnsの構造ですか・・・
始めたばかりなので右も左もわかりませんが何とかして理解していきたいと思います。
これから何度もいろんな問題にぶち当たるでしょうけれど、
そのときはまた、サポートしてくださるとうれしいです。
62
:
blank
:2013/09/28(土) 09:49:14
仮面ライダーアギトのライダーキック用に
「地面に描かれたエフェクトが回転する」という画像を作りたいのですが
イメージ:ttps://www.youtube.com/watch?v=q1CGPfT6OZs
予め平面に描いた絵を「Hamana」で3次元回転させてステージ等の「地面」にz軸を合わせて斜めに見た画像を作成
ヘルパーかAngleDrawなどで回転させてエフェクトにしようとしたのですが、回転軸がz軸が無いので結局不可能でした。
こういったエフェクトを作成することのできるフリーウェアはないでしょうか?
63
:
blank
:2013/09/28(土) 13:28:23
AngleDrawで回転させてそれをキャプ→SFF登録→yScaleを縮めて表示
でいいんじゃない?
NoBGやInvisibleをAssertSpecialして邪魔な絵を消しておけばトリミングだけでおkだし
MUGENのAngleDrawは中間色とか勝手に追加しないから仮登録した回転加工前の画像と同じパレット使えるし
64
:
flax
:2013/09/30(月) 03:39:54
パワーゲージをメルブラみたく固有のゲージとして表示させたいのですが、
常時出しているヘルパーにExplodを出させて、
それのAnimを本体のパワーが増える度に変更するという感じで実装しようと
Anim = IfElse(Root,Power>=5000,13160,13000+Floor(Root,Power/31.44))
のように記述したのですが、Animが変わってくれません。
デバッグで確認したところ13000は出ているのですがそこから変わらないようです。
本体のパワーゲージのMAXは5000で、そこまでゲージが伸びるようにしたいと思っています。
アニメ番号13160はMAX状態のゲージで、13000から13159までは1ドットずつ削ったゲージの画像を登録しています。
Animが変わらないのはHelperの仕様でしょうか?それとも別な不備でしょうか?
65
:
blank
:2013/10/01(火) 01:21:00
IfElseの中のリダイレクトはIfElse用のコンマと誤認されないようカッコで括るのを忘れないように
それは兎も角、Powerは本体・ヘルパー(・相方)共有だからそもそもリダイレクト自体不要だね
66
:
flax
:2013/10/02(水) 00:41:17
>>65
なんと…盲点でした
色々あって無事実装できました
67
:
にょろにょろ
◆SzcHm6l1xM
:2013/10/16(水) 07:58:58
KFMのAir 5040、5200、5210は全て空中受身のために用意されているもので、
いわゆる地上受身は独自にStateDefとAirを
作る必要があるということでいいのでしょうか?
68
:
blank
:2013/10/16(水) 21:48:34
Airは兎も角StateDefは新たに作らなきゃいけない
あと既設のCanRecoverでは地上/空中で受身の可否を分けられないから
CanRecoverに依らないトリガーでチェンステすることになるだろうけど
どんなに上手く条件設定しても相手から見たらノーゲージ喰らい抜けと変わらないから注意
69
:
にょろにょろ
◆SzcHm6l1xM
:2013/10/17(木) 07:51:14
うーん…CanRecoverを使用しない場合は
ノーゲージの食らいぬけ扱いですか。
ちょっと地上受身持っていそうな
キャラの記述を探してみます…
70
:
flax
:2013/10/19(土) 02:13:29
地上受け身は相手が地上受け身不可な事を前提に作ってる(相手のダウン時間に合わせて硬直を設定してるとか)技を出した時に一方的に反確を取れたりして、
ギルティギアとかの受身みたいな感じで理不尽になっちゃったりするのでご利用は計画的に
71
:
blank
:2013/11/16(土) 18:26:40
質問していい内容なのか分かりませんが、M3氏のシャルラッハロートのマント&ツインテを参考にしようとsffをSAEで開いてみたのですが、開けませんでした
原因が分かる方はいらっしゃるでしょうか
某板にて誤爆してしまったのでこちらに…
72
:
島村鰐
:2013/11/16(土) 23:43:09
ああ、それはキャラがMUGEN1.0用でSFFの形式も新型になっていて旧win版のSFFと違っているために
win版SFF用のツールであるSAEでは弄れないのですね。
新SFFはActファイルに相当する色情報も一緒に組込めるようになっていて
これを使っているキャラはキャラフォルダの中にActファイルが無いのが特徴です。
1.0対応でも旧型のSFF使ってるというキャラもいるのですがM3氏のキャラはそうではないので
1.0の新型SFFを展開できるツールを見つけてくる必要があります。
73
:
戦車
:2013/12/11(水) 18:39:00
カンフーマンのスプライト改変を作ってるんですが
カンフーニーの追加攻撃について質問です
Airに記述はあるしmugenでもコマンド入力すると動作するんですがcmdにそれらしい記述が見当たりません
入力受付時間について知りたいので参照する記述を教えていただけたら幸いです
74
:
blank
:2013/12/11(水) 21:19:21
カンフーニーのstatedefそのものや
cmdファイル(-1)でない-2などに追加コマンドを受け付けるトリガーがあるのではないでしょうか?
75
:
blank
:2013/12/12(木) 08:24:50
どうやら、ステ番1051(強カンフーニーなら1061)にそんな記述があるみたいですよ。
受付条件は上昇中なら、いつでもいいらしい
76
:
戦車
:2013/12/12(木) 19:48:53
>>74
>>75
回答&解答ありがとうございます!
cnsもコマンドに関係するんですね
無知で申し訳ありません;
一応確認ですが
trigger1 = Vel y < -1
の記述が「高さの速度が-1を下回ったとき下の記述に移行する」であってますか?
77
:
blank
:2013/12/13(金) 21:56:37
Yes、あってます
78
:
戦車
:2013/12/14(土) 16:05:41
>>76
を書いた後に高さの速度が-1って下降中じゃね?あれ?
とか思いましたが調べてみたら負の数が上昇値だったでござる
つまり上昇中にコマンド入力すれば技が出るということですな
以上独り相撲でした
アドバイスありがとうございました!
79
:
blank
:2013/12/14(土) 16:38:41
失礼、補足です。
上昇中は「 Vel Y < 0 」ですので、厳密には上昇中なら 何時でもいいわけではない です
速度 1 程度なら気にしなくてもいいぐらいですが一応。
80
:
戦車
:2013/12/14(土) 18:27:49
ああ成程
「Vel y < -1」だと小数点以下の速度では反応しないですね
重ね重ねありがとうございます!
81
:
Jaki
:2013/12/14(土) 23:37:27
type = Helperで設定したpausemovetimeをそのヘルパーを消さずに変更することは可能でしょうか?
地獄兄弟のクロックアップ(時間停止的な技)を試作しているのですが、
弟も止めずに動かそうとするとpausemovetimeをあらかじめ高くする必要があり、
結果として弟が相手の停止技でも止まらず平然としてるという状態になってしまう…
82
:
blank
:2013/12/15(日) 01:40:58
直接いじるのは無理なのでは?
少なくとも、対応するステコンはないように思えます。
以下、試していないので不確定ですが、思いついたものを。
1.弟のpausemovetimeを小さく設定した上で、
クロックアップと同時にmovetimeを設定したpausetimeを“兄弟二人(本体とヘルパー)に”実行させる。
→「CNS WIKI」のpausetime(ttp://www49.atwiki.jp/mugencns/pages/248.html)の補足を見る限りはこれで大丈夫そう
2.弟のpausemovetimeを小さく設定した上で、
クロックアップと同時に“pausemovetimeを動かしたい分だけ設定した弟”を出しなおす。
→弟が攻撃し続けたままクロックアップに入れるなら使えませんが
83
:
blank
:2013/12/15(日) 01:41:11
無理だからPauseMoveTimeは高いままにして
RootのTimeが進んでるかどうかを見ながらステコンで処理しなきゃいけない
VelやPosやAnimを止めなきゃいけないしTimeを迂闊に参照できなくなるからめんどいよ
84
:
blank
:2013/12/15(日) 01:47:44
ああ、Pauseが実行されるタイミングが分かるのであれば
同一フレームでヘルパーにもPause実行させれば済む話だな確かに
85
:
Jaki
:2013/12/15(日) 23:26:00
>>82
1の方法で無事違和感なく動かせました。
5Fごとに時間停止かけてスローモーションかけるみたいなのが出来ないのが難点ですが…
2の方法は私も考えたのですが、クロックアップ終了後の移行をどうするかやヘルパー作る手間を考え最後の策にしてました
>>83
弟の全モーションにその記述入れるとなると死んでしまいます…
ご意見ありがとうございました。pauseを二人同時に行うようにする方法を取りたいと思います
元々スローモーションのつもりでしたが、完全停止の方が管理の問題もなさそうですね
86
:
ケットシー
:2014/01/24(金) 01:39:49
うん?もしかしてヘルパーにステート奪わせてる最中に他のヘルパーで攻撃あてるとステート帰らなくなったりします?
87
:
blank
:2014/01/25(土) 11:47:25
別にそんなことはないけど
Ctrl+Dで相手が黄文字のままだったらステート返せてないから
もしそうなら何かしらの問題があるね
88
:
ケットシー
:2014/01/25(土) 22:00:41
ええさきほど再度試したら普通にステート返せてました。寝ぼけてボタン間違えてたかな?
89
:
80%
:2014/06/28(土) 21:48:55
自作キャラをmugenに登録して、mugenを起動したんですが、こんなエラーが出ました。
defの記述は和訳kfmや既存の東方キャラを参考にしました。
エラーの内容です。(↓)
)Error message:
Error loading chars/yuyu/yuyu.def
Error while precaching
Error loading chars/yuyu/yuyu.def
Error while precaching
Error loading chars/yuyu/yuyu.def
Error loading p1
どのファイルの記述に原因があるのかお願いします。
90
:
blank
:2014/06/29(日) 00:07:19
defファイル読み込みエラー 大方参照ファイルが無い辺り
91
:
80%
:2014/06/29(日) 01:33:19
うーん、参照ファイルってどのファイルのことを言っているんだろう・・・・?
このエラーが出ない方法、どなたかわかりますか?
92
:
blank
:2014/06/29(日) 03:28:40
わからないです。 おわり
93
:
blank
:2014/06/29(日) 05:53:59
>>89
,91
ファイル一覧とdefの記述の詳細が無いと他人には特定できない、と前置きして。
まずエラーメッセージには何かしらの事情があるんだから、
出なければOKなんて考え方は誤り。そんでエラーメッセージの意味を理解すること
Error while precaching.は事前読み込みの失敗を表す。その対象として上がってるのがyuyu.def
つまりyuyu.defにまつわる何かに問題があり、正常に読み込めない。
あとはdefファイルに必要なものを確認して、それがちゃんと存在して、ルールを守って記述されてるか確認すること。
例示1:cmdが未設定の場合のエラー
ttp://gyazo.com/c2a42daa38ba9da2457b3503ec6bb55f
例示2:指定したファイルが存在しない場合のエラー
ttp://gyazo.com/1d3cd24497ecc6619c7e5491f7aa8894
94
:
blank
:2014/06/29(日) 05:58:37
締めが抜けたし
>>93
の続き
>>89
の場合、エラーメッセージ自体は
>>93
の例示1と同じもの
とりあえずこのへんの必須使用ファイルの指定が足りていないのではないか、というのが
>>90
の示すところ。
どのファイルのことかは自分のファイルと必要ファイルを見比べて。
他にdefでprecachengエラーが出る例を知らないからあとはぼくには判断つかないわ
95
:
戦車
:2014/07/15(火) 14:42:30
ここでいいかわかりませんがちょっと質問です
和訳KFMのAIRファイル見てたら「立ちガード硬直」とか「上段食らいから体勢を立て直す」の最後の方のフレーム数が-1のやつがあったんですよ
説明では「アニメーションが止まり常にその画像が表示し続ける」とあるんですがmugen上ではそんなことないですよね?
つまるところこの「-1」って何?という質問でした
新着レスの表示
名前:
E-mail
(省略可)
:
※書き込む際の注意事項は
こちら
※画像アップローダーは
こちら
(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板