Profile

アメリ

Author:アメリ
キャラ紹介

line
カテゴリ
AIR (1)
Pos (1)
Var (1)
FAQ (1)
line
不許カウンター
line
最新記事
line
最新コメント
line
最新トラックバック
line
月別アーカイブ
line
sub_line
カレンダー
08 | 2017/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
line
検索フォーム
line
リンク
line
RSSリンクの表示
line
QRコード
QR
line
ブロとも申請フォーム

この人とブロともになる

line
sub_line
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
line
・ちょっと書き足したり削除したらエラーになったと言う場合の例です。
 基本的にはキャラクターを選択して対戦画面が出た後にエラーが出ると思いますが、動作中のエラーも発見する為にCtrl+Dを押すか(mugen.cfgのDebug = 0でAllowDebugMode = 1にしておくと切り替え出来る)最初からデバッグモードにして置いてください。→デバッグモードについて
 デバッグモードではCtrl+Dを何度も押す事によってヘルパーを含むプレイヤーを切り替えられます。また、Ctrl+Cを押すと攻撃判定の表示を切り替えできます。
 DisplayToClipboardを利用すると左下のプレイヤー状態表示の下に表示されます。取りあえずあると便利なのはpos x,pos y、距離の確認だとp2bodydist xでしょうか。他にはステート中で変化する変数を表示させておくと便利です。これを60fpsで録画すれば見逃しもまずありません、AmaRecCoがお勧めです。1f毎にTime=90程度のSuperPauseをすると録画しなくてもすぐわかりますけどね。

 大きく分けると、書き間違え、存在しない、mugendocsに書いてある仕様を把握していないの3つです。
winmugenは一行256文字制限に引っかかると途中で行が切れる為、どのエラーが起きるかわかりません。

・説明の為の用語定義です。
キャラクター読み込み時・・・対戦画面の後の暗転でエラー
ステート実行時・・・対戦中のステート実行時にエラー
ステート実行時のエラーは下の方に記述してあります。

・記述間違いの例(トリガーを主に挙げます)
キャラクター読み込み時ステート実行時にエラー。基本的には読み込み時になります。

「ステートコントローラーの開始[state ]を間違っている場合」

キャラクター読み込み時にエラー
Need at least one state controller


 これはとても分かりづらいですが[state]の所に半角スペースがありません。最低でも[state ]にしないと駄目です。しかしデバッグの観点から言うと[state 200, hitdef]の様にステート番号を記載し小文字にして説明を入れるべきです。これがないとエラー時にどの部分かがわかりません。画像の例で言うとステート200番の記述の中と言う所までしか分かりません。
 そもそもステートの書き方が分からない方は書式の項目を見てください。

「予約語の間違い」
キャラクター読み込み時にエラー。
Need at least 1 trigger


 trigger の様に指定する単語が間違っている場合は大抵この系統のエラーが出ます。triggerには数字が必要です。
triggerall = 1
trigger1 = 1
trigger2 = 1

「トリガーの行に変な物がある」
キャラクター読み込み時にエラー。
Invalid trigger
Library error message: Died parsing


 これは解釈できない単語が入っている場合等に起こります。この例だとfと言うのを単語として認識していますが解釈できないのでエラーとなります。

MUGEN1.0のキャラクターはwinmugenにないトリガーを使っている場合があるので(GameWidthやRemapPal等)そう言ったキャラクターは色々と変更しないと動かないと思います、似た様に相手側のHitpausetimeの差が1フレーム出るので全て+1に修正する必要があります。

「トリガーの行が途中で切れている」
キャラクター読み込み時にエラー。
Library error message: Malformed expression encountered


 このエラーも分かり易いです。間違っている行が表示されます。一番上のtrigger1,1と言う所とステート番号と一番下の行だけ見れば良いです。malformedと書いてありますね、書式が変なのです。大抵は括弧が足りなかったりしている事でしょう。
 但し、下にある一行が256文字以上の時にもなる可能性がありますし原因がどれだかは何とも言えないので全部見ておきましょう。


「書式が非常に間違っている」

キャラクター読み込み時にエラー。

 これはエラーの行が表示されない場合です。途中で切れているのではなく文法を間違っている場合に出ます。こんな感じです。
trigger1 = AnimElem = 3 (
3までは正しいですがその後に文章として繋がらない単語が出てきています。


「型の不一致」(1.0)

キャラクター読み込み時にエラー。
Library error message: Expected int value and read float.
 pos = 0.1
 type = Explodで、pos xに0.1を入れようとしてエラーが出て落ちます。単純な事ですが、pos や offset に少数を含む値を入れる場合はfloor()かceil()しましょう。pos = floor(0.1), 1; また、浮動小数点を返すpos x, pos y等のpos系統を使った場合も勝手に少数になるので同様にしておきましょう。


「型の不一致」

実行時にエラー。
Error message: Type mismatch detected: 27
Error message: Type mismatch detected: 20


 これは非常に分かりづらいですが書式エラーにならず実行時エラーになる場合です。バイナリダンプなので普通の人には読めないと思いますが下の2行は対応しているのである程度はわかります。基本はtrigger,int,operの順です。triggerは予約語、intと言うのは数字、operと言うのは演算子なのでintだけ抜き出すと特徴的な数字なら一発で分かります。プログラマならこの数字の並びは普通に読めますよね。下に続きます。

適当に判明したtriggerとoperを書いておきます。
;------------------------------------------------------------
trigger
0
1
2 0 !=
3
4 0 <
5 >=
6
11 &&
12 ||
13 !
20 :=
23 +
24 -
25 *
26 /
27 %

40 stateno

107 palno
113 GameTime
201 IsHelper
0 346 SysFVar(0)
2 346 SysFVar(2)
;------------------------------------------------------------
これがあれば復元できます。
trigger 40, int 120, opr 5, trigger 40, int 160, opr 4 opr 11 trigger 201, ...なので
stateno 120 >= stateno 160 < && IsHelper ...つまり
stateno >= 120 && stateno < 160 ...と言う事がわかります。ここまでわからなくても
stateno >= 120 , stateno < 160 と言う部分だけわかればもう殆ど場所はわかりますね。
trigger >= 120 , trigger < 160 でも数字と演算子がわかるので直ぐ見つかると思います。

 実はこのエラーは普通は出ません。Type mismatch detected:27 とありますね、つまり27番のtype mismatchなのです。このエラーは浮動小数点のfvarの剰余を計算すると出ます。fvar(0)%10
もしも浮動小数点から剰余を出したい場合になったらfloor(fvar(0))かceil(fvar(0))を使って切り上げか切り捨てを行ってください。floorとceilについては割愛します。普通はfloorを使えば良いはずです。
 これはmugendocsのCNS Formatに書いてある事なのでこの機会に他も読んでおきましょう。
 後、これは:=の代入判定で変換できない場合にも起きます。これもリダイレクトと一緒の理由だと思います。代入する時には兎に角、型を揃えましょう。
 posやoffsetは内部的にはfloatなのですが代入できるのはintなのでfloorしてから代入しましょう。
 このエラーが出た時は fvar の所、と覚えましょう。

「無限ループ、ステートのループエラー」
実行時にエラー。
2500 loop
(画像省略)
 2500loopと出るエラーです。SelfStateかChangeStateのエラーで繰り返しが2500回発見されると起こります。大抵はChangeStateのトリガーがずっと実行されていて同じステートへChangeしています。デバッグモードで自分のステートを見ても良いでしょう。但し1,2,3,1,2,3の様な一定の並びの繰り返しも判定されます。最初に引っかかりやすいのはTime=0かAnimが1フレームしかないのにAnimTime=0でChangeStateすると起こります。

「MUGEN本体処理の割り込みによる無限ループ」
実行時にエラー。
 基本的にChangeState条件を満たし続ける事で起こりますが2500loopエラーが出ない場合がcommon1.cnsに書いてあるのでそちらをご覧下さい。

「HelperのDestroySelfのエラー」
実行時にエラー。
 Helperを出した直後(時間が経過しない内に)にDestroySelfを記述して消すと起こります。

「HelperのExplodのエラー(DestroySelf)」
実行時にエラー。
 DestroySelfと同時にExplodを出すとエラーになるようです。DestroySelfの条件に引っかかる場合はフラグを立てtriggerで判断するか、DestorySelf専用のステートを作りましょう。

「サバイバルモードのエラー」
実行時にエラー
Assert failure in charsel.c line 3162
 これはサバイバルの相手として出てこないと気づきませんが、.defファイルにpal.defaults=1,2,3,4,5,6,7,8,9,10,11,12を設定していないキャラクターがサバイバル等のランダムカラーセレクト時に選択されるとエラー落ちします。設定しておけば問題はないので最初に必ず設定しましょう。関連、AI.RandomColor

「文字制限のエラー」
キャラクター読み込み時にエラー
 これはwinmugen(旧MUGEN)で起こるのですが一行に256文字までしか入りません。一行の文字制限としては少なすぎるので画面端から出たら気を付けましょう。
 ちなみに、文字制限と言うエラーがあるのではなく文字制限によって行が切れる事で不具合が発生する可能性があるだけなので普通に動く場合もあります

「トリガーのエラー(1.0)」
キャラクター読み込み時にエラー
Error Message: Error Parsing

 sysvarsysfvarを小文字で書いていない場合にエラーになります。該当箇所のステートコントローラーが表示されるので一応わかります。

「sffの読み込みエラー」
キャラクター読み込み時にエラー
Error Message: Can't load sff

 バッファメモリが足りなくなるとsffの読み込みエラーが出ます。
mugen.cfg
PlayerCache = 0
Precache = 4
BufferedRead = 0

にすると解消するかもしれません。

 Precache0 や 1 でも良いですけれど。
このエラーが出る場合は起動時にタスクマネージャーを起動して mugen.exe (winmugen.exe) が使っているメモリ量を見て下さい。空きメモリと合わせてみればある程度分ると思います。
カス雛さんは起動に 900MB 程度は必要なので空きメモリは最低でも 1.2G 以上にして下さい。
MUGEN1.0 のカス雛さん場合は 400MB 程度なので 600MB あれば大丈夫だと思います。


 単にSffが壊れている場合もあり、その場合は何らかのソフトで読み込んでみれば開けないので分ると思います。開ければ保存しなおして動く場合はあるかもしれません。


「メモリ不足のエラー」
キャラクター読み込み時にエラー
Error Message: Can't create projectile array
 mugen.cfg で設定した ProjectileMax等の値が大きすぎるとメモリを確保できなくてエラーになります。増やすにしてもまずは 1000 位にしてみましょう。

 LayeredSpriteMax は一度に使用できる画像の最大数なので、[Config] の他を全部足した値以上になっていれば大丈夫です。
 キャラクターの読み込み時に起こる場合は直ぐ上のバッファメモリの設定もしておきましょう。



「デバッグモードで出るエラー」
実行時にエラー。
デバッグモードで画面中央やや左上に出る白文字の事です。主なエラーとしては

ステートのアニメがAirに記述されていない
Invalid action
 anim=200 と指定している番号のアニメが無い場合です。
ChangeState先が無い
Changed to invalid state
 Reversaldef等で相手に変更される場合もありますが、ChangeStateのvalue先が間違っている場合です。
pos x等をfloorしていないので整数と浮動小数点で型不一致が起こっている
(但し自動で変換しているので実行は出来ます)

Expression truncated to integer
 これは実行できてしまうので見逃し易いですがデバッグの邪魔です。見つけたらfloor(pos x)としましょう。全てに行う必要はありません。主にposに代入する時に起こります。対処例、pos = -10 - floor(pos x) * 3, 0 ; or pos = floor(-10 - pos x * 3), 0
 但し自動で変換できない場合もあり、その場合にはMalformed expressionエラーで落ちます。
値がINT型の最大値を超えている
Expression cramped to INT_MAX(mugen1.0)
 MUGEN1.0ではfloor(2.0**31-1)を越えるとこのエラーが出ます。
その他
 キーボードのPauseボタンを押すと画面が止まりますのでこれを利用して見てください。読めば大抵のエラーの原因は見つかると思います。


「エラーが出ないエラー」
実行時に突然ウィンドウが無くなる
 ステートコントローラーの設定値にリダイレクトを使用すると参照の参照が行われるのかメモリエラーで落ちるようです。ステートコントローラーの設定項目にリダイレクトを書いて落ちる様であれば一度変数に入れてから設定しましょう。
 単に安定性の問題で突然落ちる事があります。ちゃんと確認したい時には一旦終了させましょう。

実行時に何も起きないでそのまま動く
 お前は何をry
 varをVarとか書いても動作する様な気がしますがfvarをFVARとか書くと動作しません。作りが悪いですね。これは綴りが正しいので発見が難しくなります。基本的に全て小文字で書いた方がよいです。私はtype宣言だけは見易いのでChangeStateの様にしています。
 triggerは1,2,3,4・・と並んでいる所までしか実行されないので数字が飛んでいるとトリガーを発見できずに判定が終わってしまいます。これも途中までは実行されて条件判定の一部が抜けるだけなので見つけ辛いです。
 value等の必須オプションが違う場合は一部のステートコントローラー内で無視されます。「無視される」と言うのは実行はされますが値の指定は行われないと言う事です。必須を間違えているのにvalueはエラーが出ずに実行される事があるのです。これはvalueだろうと思って書いてしまい実行時に不具合が出ると発見し辛いです。

他にもありましたら追加するかもしれません。
スポンサーサイト
line
まず新MUGEN、旧MUGEN、DOS版どれを使っているかが問題です。DOSは省略します。

 新版は旧版に比べて画面が縦横2倍になっています。と言う事は4倍の画像を処理している事になります。旧版で問題が無くても新版だと重いと言う事がある訳です(大体そう言う事にしておきます)。これを踏まえて考えると次の様になります。

・新版で確認した方が重いかどうかが分かり易いので旧版を使っていても新版で確認すると分かる事もある。
・旧版は作っている、使っている人が多く処理が軽いのでこちらで重いのは問題である。
・旧版で問題があった場合は新版でも動かしてみるとより重い原因を特定しやすい。

と言う事になります。新旧どちらかに依存する問題は無理ですが新版は明らかに重いのですぐ分かります。


「重い原因を探る」


 まず、Ctrl-Dを押してデバッグモードに切り替えます(mugen.cfgでallowdebugmode=1にする必要があります)。Ctrl-Sを押してfastモードに切り替えます。この状態だ可能な限りの速度で描画するので左下のFPS表示が目安になります。1秒間の処理フレーム数なので数値が大きい程高速に動いている、軽いと言う事になります。逆に数値が小さい程処理が多い、遅いと言う事になります。設定とパソコンの速さ次第ですが常に60FPS未満だと重いと言う事になります。軽そうに見えても処理が重い場所を探すのに役立ちます。
 また、fastモードではない状態でフレームスキップを切っておけば通常動作で問題があるかどうかわかるのでCtrl-Fを押してautoからnoneに切り替えましょう。auto,none,skip1,skip2の順になっていて最初に戻ります。処理が多くて遅くなるとゆっくりしていってね!になります。mugen.cfg自体がreadmeなのでreadmeをちゃんと読んでください。
 デバッグモードにした状態でエラー表示が沢山出ている場合は直しましょう。


・画面が大きい
mugen.cfg で設定している画面の大きさが大きい為処理が重くなっています。最初は winmugen と同じ 640x480 にしましょう。ワイドなら 854x480 です。一覧を作ってあるので本体設定を見てください。

・mugen.cfg の設定値が高すぎる
Debug に書いてある mugen.cfg のメモリ設定 を見てください。ノートパソコン程度の性能の場合、ProjectileMax 等の値が 500 でも重い場合があります。

・画像が大きい
画像が重なりすぎと言うのと関連していますが大きい画像は後ろの画像との兼ね合いを処理するのに手間が掛かります。不要な部分は切り取り(crop)した物を登録に使いましょう。

・画像が重なりすぎ
 基本的に重い原因はスプライトが沢山重なっているからです。透過処理の都合で重なっていればいるほど判断する箇所が増えます。新版だとこれが4倍になるので重いわけです。見た目が大きくても透過部分を含めた場所が重なっていなければ重くはなりません。つまり、画像を沢山重ねて効果を作るのと一枚の画像で作るのでは処理の重さが違うわけです(多分)。
 要はアニメーションの項目でA,A1,Sの他の画像に影響を与える設定が重いのです。後ろを隠してしまう画像であれば表示の有無を比較して終わりなので普通です。

・パレットが統一されていない
 パレットなんて統一しなくてもカラー変更をしなくて良いのなら、若しくは色を変えた画像を仕込んであるならば各画像で透過色の設定さえちゃんとしてあればsharedチェックする必要はありません。しかし色々調べた所パレットが多いと重い事が確認されています。パレットが増えれば増えるほど何もしなくても重くなるのです。似た様な画像なら出来る限りパレットを統一しておく事が大切です。キャラクターのパレットは少ないはずなのでエフェクトと統一する事で一つのパレットに入れる事が可能です。エフェクトだけで統一してあるだけでも良いと思います。これはステージ作成の時にも言えます。
 2500loopさんの所でownpal=1のHelperを増やすと重くなると言う記事がありましたが私は重く感じなかったので何とも言えませんがパレットを動的に増やしているので重い原因であると思います。見た目のなめらかさ、CPU使用率で変化がありませんでしたので。

・計算が重い
 これは無いと思いますが、比較(=><!)、加算(+-)、乗算(*/)以外の計算を沢山使うと基本的には重くなります。主に気にするべきは剰余(%)、べき乗(**)でしょうか。何度も同じ結果を使うのであれば変数に入れましょう。1フレームは60分の1秒なのでこの間に計算が終わらない様なステートが持続すると何も表示していなくても重くなります。通常は無視して良いでしょう。

・ステートコントローラーやトリガーが多い
 計算と被りますが処理する物が多いと重くなります。ステートコントローラーは省けませんがトリガーは1つにした方が良いです。ただ見やすさを考えると分割すべきなので、設定やAI用のトリガー等の他人が変更する可能性がある部分は分割した方が良いでしょう。
 ヘルパーをplayer型で出すと[statedef -2]を実行するようになります。単純にプレイヤー数が増えるので重くなります。

・表示間隔が短い
 調査中ですが旧MUGENだと1フレーム毎に更新される大きな画像が動いていたりすると突然エラー落ちしたりします。特定の状況というわけではなくプレイヤー以外にスプライトが1個しか表示されていなくても落ちたりし、逆に沢山表示されていても落ちなかったりするので本体の問題でしょう。ちなみに新MUGENでは余り起こらない気はしますが立っているだけで落ちたりもします。

・残像を出し過ぎ
 aftereffectの最大数はmugen.cfgで初期値8ですが、これを大きくして残像だらけにすると危ないです。今すぐ眼科に行きましょう。

・SuperPauseのし過ぎ
 画面を暗くなる様にすると画面全体に効果が掛かるので余計に重くなります。カットイン位なら良いのですが余りに重なるとその瞬間だけ超スローになります。終わった直後に突然動き出すと言った感じです。supermovetimeを設定して動く様になっていればそうでもないのでしょうがそれだと止める意味が無いですよね。

・mugen.cfgの値が大きすぎる
 helpermaxの前後にあるスプライトやエクスプロードの最大数が大きすぎるとメモリを沢山使うようです。グラフィックボードに依存するのかも知れませんが私は初期値を100倍にして使っています。1000倍だと重くてゲームになりませんでした。普通のキャラクターは精々ExplodMaxとPlayerProjectileMaxが1000ずつあれば十分なので後はLayeredSpriteMaxを全部加算した値以上(1000+1000+その他で2100とか)にしておけば大丈夫です。SysExplodMaxはMUGEN本体やライフバー(system.def)が使う値なので特に増やす必要はありません。

・デバッグモードにするとエラーの文字が沢山出ている
 エラーが出ていると言う事はエラーの報告をして文字を画面に書いている訳ですからその分遅くなります、と言うかエラーは無くしておきましょう。デバッグのエラーの記事やPosの記事に書きましたが、多いのはredirectと整数の設定をする所(pos = )に小数の値(pos x)を入れている場合です、floor(pos x)しましょう。

 重い場合はまず新版で確認しましょう。記述をばっさり取り除くのもわかりやすいです。ExploadやProjectile、Helperの頭にnull;をつけて無効にすると簡単です。あほじんは高カラー4人だと表示だけでも重くなりますが。


・パソコンが遅い
タスクマネージャーを開いてCPUを100%つかっていたりメモリが足りなくなっている場合は詳しい人に相談してパソコンを良くするか新しいパソコンを買えば良いと思います。


line
DisplayToClipboardは下の方にあります。

「デバッグモード」
 誰もが知っていると言うけど後で確認するデバッグ用のホットキー、と言うかMUGENを開いてreadme.txtを見てください
これを全部読んでいる人は簡単にデバッグが出来ている事と思います。

 デバッグモードはmugen.cfgにあるdebug=1の状態で使えます。一つ下のallowdebugを1にしておけばdebugが0でも対戦中に切り替え出来るのでこちらの方がお勧めです。

私はspaceとF2,F4位しか使ってないみたいですね・・
あ、あと Ctrl-C当たり判定の確認が出来るので良いですね。Ctrl-Dキャラクターの状態表示をプレイヤー、ヘルパーの順で切り替え出来ます。この部分にDisplayToClipboardの値が出ます。エラーについてを見ておいてください。


=====================================================================
IV. Game HotKeys
=====================================================================

These are the hotkeys recognized at the fight screen:

Key Function
--- --------
Pause Toggle pause
ScrollLck Frame-step within pause
Esc Quit

The following hotkeys are for debugging purposes and can be disabled
by setting AllowDebugKeys = 0 in mugen.cfg.

Key Function
--- --------
F1        Sets Player 2's life to zero
Ctrl-F1  Sets Player 1's life to zero
F2        Sets both players' life to 1
Ctrl-F2   Sets Player 1's life to 1
Shift-F2  Sets Player 2's life to 1
F3        Gives both players full power
F4        Reset the round
Shift-F4  Reloads stage, characters and fight data
F5        Time Over
F12       Take a screenshot (saved to mugen?.pcx)
Ctrl-C    Toggles display of collision boxes, target data (including remaining juggle points) and NotHitBy attributes
Ctrl-D    Toggles debug information display
Ctrl-I    Forces both players into stand state
Ctrl-L    Toggles display of the life and power bars
Ctrl-S    Run the game as fast as possible
Ctrl-V    Enable V-sync (stops "shearing")
Ctrl-#    (where # is from 1-4) Toggles AI for the #th player
Ctrl-Alt-# (where # is from 1-4) Enables/Disables the player
Space     Restores full life and power to all players

F8    Remove error message in debug mode.
=====================================================================

=====================================================================

「起動オプション」
 readmeを読めば書いてあるのですが読まない人も多いと思うので貼っておきます。

 これを使ってショートカットを作れば便利です。但しショートカットの文字数は256文字までなのでキャラクターを一元管理していると../../char/と言う部分が多くなったりして入らない場合があります。ステージもデバッグの文字が見える物を指定した方が良いでしょう。こんな感じです。
winmugen.exe -r big120 -s ../../stages/stage0 ../../chars/ahojin/ahojin.def ../../chars/ahojin/ahojin.def -p1.color 1 -p2.color 2
 このオプションを使うとahojin 1p vs ahojin 2pの状態でRound1から始まります、選択する手間がありませんし指定したキャラしか読み込みませんので重いスクリーンパックや大量のキャラが居ても関係なく読み込めます。これを1-12Pまで作っておくと楽だったりする事もあります。ステージのデバッグをする時にはとても便利ですね。
AI戦闘の場合は-p1.ai 1 -p2.ai 1を入れましょう。


DisplayToClipboard
 DisplaytoClipboardはデバッグモードで出る左下のキャラクター状態表示の下に文字や変数の中身を表示出来ます。変数が表示できるので便利ですが5個までしか表示できません。また、常時表示させる目的に使うと思うので-2ステートに書きましょう。%d,%f,%%,\n,\t,\"が使えます。

;----------------------------------------------------------------------
type = DisplaytoClipboard
trigger1 = 1
text = "facing=%d, x=%d, y=%d, d=%d, f=%f"
params = facing, floor(pos x), floor(pos y), var(0), fvar(0)
;----------------------------------------------------------------------

 最初はこんな感じのがあると便利でしょうか。facingやposはそのうち使わなくなると思いますが…主に変数の確認に使う事になると思います。
 AppendToClipboard は一つの値を毎フレームの様に書き出す場合に便利です。DisplayToClipboard を使わなければ更新されずに後ろに追加されていきます。

 amareccoで録画したり(60fpsで非可逆圧縮、タイムコードを出力しないに設定しましょう)、調べたいステートにtime=90位のpauseコントローラーを追加したりすると確認しやすいです。キーボードの Pause > ScrollLock ボタンも使いましょう。WinshotやKioku等の画面キャプチャもあると良いですね。
 余談ですがMUGEN1.0では%dや%f以外の指定子の確認を(危ないのは)行っているので%nバグは使えません。ただまあWinMUGENにもっていったら危険な場合があると言う事にはなってしまいますが、明らかに危険なバグは無くしておかないとゲームとして使って貰えないですからね。メモリ操作が出来るなら何でも出来てしまいますので。
line
line

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