日常の戯言とかなんとか

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
-------- : スポンサー広告 :
Pagetop

NoKOの性質と突破法

NoKOとは
AssertSpecialのフラグの一つ。
「Lifeが0になってもAliveを0にしない」「Roundstateを3に進めない」という2つの効果がある。
これらの効果によりその名の通りKOにならない。倒す側からするとすごく厄介。

超即死のNoKO貫通とは、Life=0を介さずに直接Aliveを操作して0にすることで1つ目の効果を突破するということです。
しかし、ただ超即死を相手に食らわせただけではいけません。ただAliveを0にしただけでは、下の画像にようにNoKOの2つ目の効果によってRoundstateが進まずにKOできません。
mugen0_20120829214142.png


これを突破するには「時止め」が必要になります。
時止めとは、ステコンのpause,superpauseのことを指します。しばしばTimerFreeze(時間停止)と混同する人を見受けるので注意です。

時止めによって相手にステコンの読み込みをさせなくすることで、NoKOの実行を無効にします。
適当な個別ステートに以下の記述を加えてください

[state 1000]
type = pause
trigger1 = !enemy,alive
time = 1
movetime = 1
ignorehitpause = 1

[state 1000]
type = superpause
trigger1 = !enemy,Alive
time = 1
anim = -1
darken = 0
ignorehitpause = 1

相手が時止め耐性を持っていないならこれでKOできます。
相手が時止め耐性を持っていた場合はすぐにKOできませんが、上の画像のように相手にLoseフラグが立っているのでタイムオーバー時にKOできます。
スポンサーサイト
2012-08-29 : MUGEN解説 : コメント : 2 : トラックバック : 0
Pagetop

超即死解説

超即死

相手のAliveを直接操作して死亡させる。
普通の即死よりとっても強いから超即死。


まずは最も基本的な超即死当身の記述を見てみましょう
;****************************************
[statedef 1000];超即死当身を仕込むステート
anim = 1000;全画面攻撃判定推奨

[state 当身]
type = Reversaldef
trigger1 = 1
reversal.attr = SCA,AA,AT,AP
pausetime = 0,3
p2stateno = 1001
ignorehitpause = 1

;****************************************
[statedef 1001]

[state 1001];1個目
type = null
trigger1 = 1

[state 1001];2個目
type = null
trigger1 = 1

[state 1001];3個目
type = null
trigger1 = 1

  ・
  ・このNullステコンを552個
  ・

[state 1001];552個目
type = null
trigger1 = 1

[state 1001];553個目
type = null
trigger1 = 1
ignorehitpause = 1

[state 1001];554個目
type = null
trigger1 = 1
ignorehitpause = 1

[state 1001];555個目
type = null
trigger1 = 1
ignorehitpause = 1

[state 1001];556個目
type = null
trigger1 = 1
ignorehitpause = 1

[state 1001]
type = changestate
trigger1 = 1
value = 5150
ignorehitpause = 1

;****************************************

超即死の原理を知らないと突っ込みどころしかない記述ですね。
[statedef 1001]のステコンはNullしかないし、何よりステコン数が512個を超えてしまっています。
普通なら512エラーでMUGENが落ちて終わりですが、ここで[statedef 1000]で赤く色をつけた「pausetime = 0,3」が鍵となります。

hitpausetimeがあるとステコン数が512個を超えてもMUGENが落ちないのです。ただし、このhitpausetimeはhitshaketime(hitdef,projが相手に与える硬直)ではいけません。

そもそもなぜステコン数が512個を超えてはいけないのでしょうか。
すべての本体およびヘルパーには、「ステコンを実行を管理するため割り当てられたメモリ」があります。そのメモリの数値によって「hitdefを出す」「BGMを鳴らす」といったステコンの実行を知らせます。そして、そのメモリはステコン512個分用意されています。もしそれ以上にステコンがあると、「もうこれ以上書き込む場所がない」となってエラーになるのです。

では、hitpausetimeが付いて無理矢理メモリの限界を突破するとどうなるでしょう。
ステコン実行用のメモリのすぐ後ろのアドレスには、timeやhitpausetime、palnoといったプレイヤーの情報が格納されており、その部分を無理矢理書き換えながらステコンが実行されていきます。
そして、ステコン数553個目から556個目で書き換えられる場所にAliveの値が格納されています。
ignorehitpause = 1が付いたステコンが実行されると「そのアドレスの数値を1減らします」。これにより、相手のAliveを1から0に書き換えます。

途中に余計な処理を挟まずにAliveを操作できるのでNoKOのある相手を即死させるなどの使い方ができます。それについては別の記事で解説しましょう。
2012-08-28 : MUGEN解説 : コメント : 2 : トラックバック : 0
Pagetop

(アカン)

さっきのペプシのせいで気持ち悪くなってきた…
2012-08-28 : 雑記 : コメント : 0 : トラックバック : 0
Pagetop

ペプシ塩スイカ味

変換 ~ IMG_0009

蓋開けた感想
・え…なにこの匂い(ドン引き)
もうなんかすげえ臭い。確かにスイカバーもこんな匂いだけどさあ…。

飲んだ感想
・意外といけるやん!
↑くそまずいと思って意を決して飲んだ結果

・味薄い
ていうか味しない。もう(塩スイカ味の必要)ないじゃん…。

・そもそも
マズイ(重要)


本当にそんな感じ
高い買い物だった…
2012-08-28 : 雑記 : コメント : 2 : トラックバック : 0
Pagetop

混線解説

混線バグ

ざっくり言えば通常の手段ではターゲットを取れないヘルパーのターゲットを取ることができる技術。
2012年現在、神キャラと呼ばれるには混線を使いこなす必要があるでしょう。

前提知識
①永続ターゲット
一度ターゲットを取ると、Reversaldefを実行している間はターゲットを常に保持し続ける。

②プレイヤー領域
MUGENでは、プレイヤーとヘルパーに対して席が59個用意されている。そのうち0~3が1Pから4Pのプレイヤー、4~59がヘルパーの領域となっている。下のSSでは、名前の右にある(0)がプレイヤー領域を表します。
領域1

また、呼び出されたヘルパーは最も番号の小さい領域に入ります。例えば、4,5,7に既にヘルパーがいる場合は呼び出されたヘルパーは6番の領域に入ります。また、この時4番の領域のヘルパーが消去されても、5番の領域のヘルパーが4番の領域に移動するということはありません。


これらの仕様を組み合わせることで、混線バグが完成するのです。

では実際の記述を見ながら解説していきます。

[state -2,ターゲットを取るヘルパー]
type = helper
trigger1 = !ishelper
trigger1 = !numhelper(10000)
ID = 10000
stateno = 10000
helpertype = player
pausemovetime = 9999999999999
supermovetime = 9999999999999
ignorehitpause = 1

[state -2,ターゲットを取られるヘルパー]
type = helper
trigger1 = !ishelper
trigger1 = !helper(10000),numtarget
trigger1 = !numhelper(10100)
ID = 10100
stateno = 10100
helpertype = player
pausemovetime = 9999999999999
supermovetime = 9999999999999
ignorehitpause = 1

[state -2,ステート固定]
type = selfstate
trigger1 = ishelper(10000)
value = 10000
ignorehitpause = 1

[state -2,ステート固定]
type = selfstate
trigger1 = ishelper(10100)
value = 10100
ignorehitpause = 1

まず、混線はヘルパー2つ組が基本単位になるので、2つ呼び出します。
いつ呼び出してもいいのですが、常に呼び出せるようにしたほうが何かと便利なので常時監視で呼び出すようにするといいでしょう。また、ヘルパーのステートは固定しておきましょう。
次に、それぞれのヘルパーのステートを見てみます。
;******************************************************
[statedef 10000]
anim = 3008;常に攻撃判定のあるanim
movetype = A
statetype = S

[state 10000,ターゲット取得用hitdef]
type = hitdef
triggerall = !numtarget
trigger1 = ishelper(10000)
attr = ,NA
sparkxy = 999, 999
ignorehitpause = 1
affectteam = F

[state 10000,混線維持用Reversaldef]
type = reversaldef
triggerall = numtarget
trigger1 = ishelper(10000)
reversal.attr = SCA,AA,AT,AP
sparkxy = 999, 999
ignorehitpause = 1
;******************************************************
[statedef 10100]
anim = 3009;常に当たり判定のあるanim

[state 10100,ターゲットを取られたら消える]
type = destroyself
trigger1 = ishelper(10100)
trigger1 = helper(10000),numtarget
ignorehitpause = 1
;******************************************************

基本はこれだけです。
下のSSのように、上側のhelper(10000)は、ターゲットを取っていない状態ではhitdefを出してhelper(10100)をターゲットに取ります。
混線1
helper(10000)がターゲットを取ったら、helper(10000)はreversaldefを実行。これにより永続的にターゲットを取ります。しかし、ターゲットを取られた下側のhelper(10100)はdestroyselfを実行し、消えます。
すると、下のSSのような状態になります。
混線2
ヘルパーは消えましたがターゲットは残っているようです。
どういうことかというと、実はターゲットというのはプレイヤーに対してではなく、そのプレイヤーがいる領域に対する物なのです。この場合は、4番目の領域にあるhelper(10000)のターゲットは、helper(10100)があった5番目の領域です。このように、ターゲットの領域にプレイヤーがいない状態のことを「空のターゲット」といいます。
混線というのは、この「空のターゲット」を意図的に作り出すことを指します。

この状態で次にヘルパーが呼び出されると、5番目の領域にヘルパーがないので、5番目に入ります。この5番目に入ったヘルパーはhelper(10000)のターゲットになってしまうのです。ここでhelper(10000)がtargetstateを実行すると、5番目の領域に入ったヘルパーのステートを奪うことができます。
ちなみに、混線からのタゲステでステートを奪えるのは、「hitdefを出さないから当身でステートを奪われることを想定していない」「movereversedでステ抜けする」といったヘルパーです。



2012-08-24 : MUGEN解説 : コメント : 0 : トラックバック : 0
Pagetop

親変更

mugen0.png

キタ━━━━(゚∀゚)━━━━!!
2012-08-14 : 雑記 : コメント : 2 : トラックバック : 0
Pagetop

トムキラー解説

自分なりに書いてみる

前提知識

①projを管理してるのは本体
いろいろな解説でよく言われてることですが、知識がないといまいちピンとこない人も多いでしょう。
どういうことかというと
・helper(1)がprojを出すと、helper(1),numprojではなくroot,numprojが増える
・projのパラメータ「p1stateno」でステートが変わるのはどんな時でもroot、つまり本体
ということです。

まあとりあえずこれだけ抑えておけばいいでしょうか。
では、実際のトムキラーの記述を見ながら解説していきましょう。

[statedef 1000];←トムキラーを仕込みたいステート
anim = XXXX  ;←全画面に攻撃判定のあるアニメがいいでしょう

[state ,当身]
type = Reversaldef
trigger1 = !ishelper
reversal.attr = SCA, AA, AT, AP
hitflag = M-
priority = 7
pausetime = 0, 2
sparkno = -1
hitsound = -1
p2stateno = 1300
ignorehitpause = 1

まず、相手のヘルパーhitdefを上記のようにして当身します。
すると、相手のヘルパーは下記の[statedef 1300]に飛ばされます。

[statedef 1300];←当身されたらここに来る

[state 1300, OTHキラー用proj]
type = Projectile
triggerall = ishelper
triggerall = root,numProjID(1300) = 0
triggerall = root,alive
trigger1 = time <= 30
trigger2 = animelemtime(1) <= 30
attr = S, NA
projid = 1300
projanim = anim
projpriority = 7
projremove = 0
projremovetime = 30
projmisstime = 1
postype = p2
offset = 0, 500
sparkxy = 999, 999
pausetime = 0, 2
p1stateno = prevstateno
supermovetime = 9999999999999
pausemovetime = 9999999999999
ignorehitpause = 1

[state 1300, 即死]
type = Lifeset
trigger1 = !ishelper
value = 0
ignorehitpause = 1


奪ったヘルパーは[statedef 1300]でprojを出します
ここでのポイントは、「p1stateno = prevstateno」です
prevstatenoは、直前のステート番号を返します。この場合はヘルパーが奪われる直前の、hitdefを出したステートです。
p1statenoで指定してあるので、このヘルパーのroot、つまり相手の本体がhitdefを出すステートに移動させられます。こうして、相手本体に強制的にhitdefを出させることができました。あとは[statedef 1000]の当身で本体のステートを奪い、[statedef 1300]のLifesetで相手を即死させるのです。要は後半はただの即死当身ですね。
後は、せっかく奪ったヘルパーに余計なことをされないよう[statedef 1300]に以下のものを付け加えるといいでしょう

[state 1300, 透明化];←あったほうが見栄えが良くなるがなくてもよい
type = Assertspecial
trigger1 = ishelper
flag = invisible
flag2 = noshadow
ignorehitpause = 1

[state 1300, ステート変更];←相手が死んだら死亡ステートに返してあげましょう
type = Selfstate
triggerall = !ishelper
trigger1 = !alive
value = 5150
ignorehitpause = 1

そして最後に大事なことですが、p1statenoはprojが何かしらに命中しなければ発動しません。そのため、確実に奪ったヘルパーのprojが当たるように、的となるヘルパーを用意します。これを「被弾ヘルパー」とか呼んだりします。

2012-08-14 : MUGEN解説 : コメント : 4 : トラックバック : 0
Pagetop

PC仮復旧キタ━━━━(゚∀゚)━━━━!!

マザボ→友人から型落ちを譲渡してもらう
グラボ→部屋に転がってたGeForce9600
HDD→古いPCから引っこ抜いた250GB
メモリ→4Gから2Gに減る
それとは別にステミキ死亡(まあこれはどうでもいい)

というわけでCPU以外のありとあらゆる性能が従来の半分ほどまで減少しました
常駐だけでメモリ1.5Gくらい食ってるからね
動画撮影なんざ無理、MUGEN動かすので精一杯って状況

あと地味に入手不可キャラが多くて完全復旧しても再開できないっぽい

どうしようかねえ
2012-08-12 : 雑記 : コメント : 0 : トラックバック : 0
Pagetop

レス返してなくて

ごめんなさい

言い訳すると全然ここ見てないんだよね
自分のブログだけど

でも確かにコメントを放置するのも良くないね
今後は気づいたら返すようにはしよう
2012-08-10 : 雑記 : コメント : 0 : トラックバック : 0
Pagetop

なんかもう

この騒動についていちいち俺があーだこーだ言うのがものっそいバカバカしくなってきた。

当事者が保身に走って自分に都合のいい部分しか情報を出さないのがね。
いちいち俺が情報小出しにするのも面倒だし。


まあぶっちゃけ凶悪界から自分消えても何も変わらないからちょっと口が滑ってしまうかもね。
2012-08-08 : 雑記 : コメント : 5 : トラックバック : 0
Pagetop

現板の管理者

http://michaelarmaros.blog.fc2.com/blog-entry-1122.html

これまでMUGEN凶悪板の管理人であったみかえる氏が管理人を交代なされるようです。
これまで長年管理人として尽力したいただいたことに感謝申し上げます。


が、
誰がみかえる氏に見せたのかしらねえけどよ
少なくともこの対話ログ晒しの場に居合わせた全員は他言無用ってことに同意してるはずだよねえ?

みかえる氏にこのIRCログ出した下衆は晒された対話ログの中身について下衆だとかぬかしてる資格はあるのかよ。あるならそいつはずいぶんと結構なご身分でいらっしゃるようで。

そうだよね?

ちなみに、ここから先は推測だけれども
みかえる氏に晒されたIRCログの前半部分は私 VS mapelao氏&もう一人(名前は伏せる)で言い合いしていたところだと思ってる。
その部分で私は「対話ログを公開して新板設立の真相を~」って騒ぎ立ててる奴らに「そんなことはIRCに対話ログを晒す以上に下衆なことだって自覚してるんだろうな」と言っているはずなんだよね。
その部分はどう間違っても

 ・恣意的な引用も加工も何にもせずに、なまのログを他のメンバーに見せたところ、それに対する感想がゲスなどと最悪のものだった
 ・十中八九あなたが悪いって言う それだけあなたの発言が狂っていたからです
 ・管理人の立場ならプライベートだからとは許されないほどのことを貴方は言った
 ・『誰に話すべきか』『誰に話すのがセーフで誰に話すのがアウトか』は理解しなければならない
 ・他のメンバーに広まった理由をログ公表だけのせいにするには無理があるほどに、あなたはところ構わず過剰表現を吐き散らかしていた



こんな言われ方をするような事は書いてないことは断言しておくよ。
じゃあなんで↑みたいなことを指摘されにゃいかんのか。

ここから先はもはや被害妄想の域だが
俺の発言まるっと削除されたかよっぽど恣意的な解釈がなされるような誘導をされたのか
そんな風に勘ぐってしまうんだよね。

さてどうしたもんかね
当事者捕まえていろいろ話を聞きたいところだけれども
2012-08-07 : 雑記 : コメント : 0 : トラックバック : 0
Pagetop
ホーム

プロフィール

@ひたち

Author:@ひたち
「@」を忘れるべからず
読みは普通に「ひたち」でいいんじゃないの

検索フォーム

アクセスカウンター

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。