Profile

アメリ

Author:アメリ
キャラ紹介

line
カテゴリ
AIR (1)
Pos (1)
Var (1)
FAQ (1)
line
不許カウンター
line
最新記事
line
最新コメント
line
最新トラックバック
line
月別アーカイブ
line
sub_line
カレンダー
10 | 2017/11 | 12
- - - 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
Localcoord4:3 から変更されると fall.yvelocityyaccelデフォルト値が変更した幅で再計算される為、数値で指定していないと浮き上がりが変化すると言うのがあります。

ですので通常は
fall.yvelocity=-4.5
yaccel=.35

を記述する必要がありますが、手作業で全てやったら面倒ですよね。

それを D&D でやってくれるツールが出来た様です。

http://www.nicovideo.jp/watch/sm24288522



安全だとは思いますが使う際は一応注意しましょう。


単にフォルダ内のファイルの一括置換であれば秀丸、サクラエディタ、Notepad++等のテキストエディタで出来るのでそちらを覚えれば他の作業にも応用できます。

また、一括ワイド対応 の記事では repl_ace と言う置換専用ソフトを紹介しましたのでそちらを使うのも良いですが、1個2個の置換であればテキストエディタの付属機能の方が手軽で十分なので知らない方は使ってみる事をお勧めします。大体のソフトは編集か検索メニューにあるので探して見ましょう。


スポンサーサイト
line
・録画ソフト
キャラ作成で amarecco を紹介したと思います。
ウィンドウに青枠をドロップすると録画範囲の設定が出来るので間違いなく範囲設定できます。細かい設定も行えます。
フレームレートは 60fps にしましょう。無理であれば 30fps で。
FRAPSも良く使われているようです。

・コーデック
無料の AMV3 は可逆圧縮が使えますが非可逆もあります。
AMV2MT は無劣化で保存できます。
こちらはシェアウェアで有料なのでロゴが付いている方はそちらを使っているか、
readme を読んでいないのでロゴを消せていないと言った所でしょう。

無料で無劣化の可逆コーデックと言うと HuffyuvUt Video Codec と言うのがあります。
Ut Video Codec はやや重く、AMV33倍 位の容量で、AMV3 よりは対応ソフトが多いです。
amarecco で設定すれば使用できます、その際に Ut Video Codec RGBにしておけば大丈夫だと思います。Ut Video Codec YUV(4:2:0 や 4:2:2)だと圧縮が掛かります。


・デバッグに使う
後でじっくり確認できるので取り合えず録画しておく事がお勧めです。
Ctrl+D でデバッグモードにして軽い AMV3 コーデックで十分なので録画しながらデバッグしましょう。
DisplayToClipboard を使いましょう。

line
MUGEN 1.1 beta

ついに1.1βがきました!まだバグがそこそこあるようです。
Download MUGEN 1.1 beta

上のリンク先から Update History を見てください。
バグ報告は Forum の MUGEN1.1 Discussion 辺りで良いと思います。他にも書いてありますが。


 見ればわかりますが簡単に書いておくと、
DestroySelfExplod 消去オプションが追加されていたりします。
RemapPalProjectile / Explod にも適用できる様です。最大数は 8
後は Zoom 関連ですね。

使いそうなのは Explodangle (角度) でしょうか。
これで ModifyExplod すれば回転できそうです。
この為だけに Helper を使っていたりしたでしょうけれど今後は回し放題です。
でもAIRで回転するのもいいですね。


line
alive
 生きている状態を表します。生きていると 1 です。死んでいると 0 です。
life0 になると assertspecial の noko をしていなければ alive0 になり lose が付きます。


死んでいる状態のデバッグ
stateno = 5150 をデバッグする場合は [statedef -2] 以下のステートコントローラーを入れて Team VSSimul を選んで同キャラで 2 vs 2 をします。[statedef 0] , [statedef -1] , [statedef -3] でも大丈夫です。

[state -2]
type = lifeset
trigger1 = RoundState = 2 && numpartner > 0 && id % 2 = 1
value = 0

 これでパートナーが最初から死んだ状態になります。
デバッグモード (allowdebugmode = 1) にしてスペースキーを押せば [statedef 0] に戻ったと同時に life = 0 になり倒れるので簡単にデバッグ出来ます。

 死んだまま操作したいのであれば id % 2 = 0 にすれば出来ると思います。
但しパートナーが勝手に動くので [statedef 0]ctrl = 0をつけるとよいと思います。

 死んでいる時に突然動き出したりする場合にどうぞ。
大抵は [statedef -1] , [statedef -2] , [statedef -3]ChangeState / SelfState している箇所があると思います。
line
Anim
 現在のアニメ。Anim の番号は .sff ファイルに画像を入れて .air ファイルに実態を記載した物を使います。
Anim の何枚目かを表すのが ChangeAnim で指定する elem ですが elem は直接取得できません。elem は後述の AnimElemNo(0) トリガーを使って取得するしかありません。

 リンクの mugendocs の State Controller とかを読みながらどうぞ。


AnimTime
 Anim の終わりまでの時間をマイナスで返します。Anim が進むほど加算されていって終了時に 0 になるので ChangeState の判定に AnimTime = 0 を使ったりします。Time の逆みたいなものです。
Time = -1 のアニメもあるので相手のアニメを参照する場合は Time で保険をつける等気をつけてください。

AnimElem(*,***)
 旧式トリガー (*,***)。
ファンクショントリガー?ではないので 1 か 0 しか返しません。
(*, ***) は左が式、右が左の式に対する判定式の意味で変数は使えないのであまり使えません。
開始は AnimElem = 1 で AnimElem = 0 を指定するとキャラクター読み込み時にエラー落ちします。

 使い方としては、アニメの何枚目の何フレーム目と言うのを指定出来ます。
AnimElem = 2, = 3 と書くと現在のアニメの elem = 2 の 3フレーム目(最初は 0 )と言う意味になります。右側を省略すると ,= 0 になります。通常は Time か AnimElemTime で十分だと思います。


AnimElemNo
 指定 Time (Tick) 後の elem を返します。つまり AnimElemNo(0) が現在の Anim の elem となります。


AnimElemTime
 指定 elem の経過時間を返します。AnimElemTime(2) とした場合は elem が 2 になった時を 0 として現在の AnimElemTime までの増減を返します。elem が異なっても Time の差で値を返します。

次の 2 つの式は同じ意味になります。
AnimElemTime(2) = 3
AnimElem = 2, = 3

特定の elem からの時間を表す場合には AnimElem よりも AnimElemTime を使う方が使いやすいです。


ChangeAnim
 elem を変数で指定している場合に起こると思いますが存在しないアニメの番号を指定するとエラー落ちします。
Assert failure in array line 110


line
RemapPal の使い方 sprmake2.exe sffv2

 目次
RemapPal 概要
RemapPal 左右反転の為のステートコントローラー(使用例と説明)
RemapPal 用の Sff(Sffv2) 作成。
変換・コンバーター
Fighter Factory 3 で Export し sprmake2.exe を使って Sffv2 を作る
Sffv2 の注意点

 Fighter Factory 3 で Sffv2 を作成すればパレット一覧の数字が使えるので以下の手順は必要無いと思いますが、Sffv2 にしておかないといけないので全体的に説明します。
sprmake2.exe で Sffv2 にする過程でテキストファイルを編集し追加パレット(2,2)を入れています

 保管庫にある Ahojin1x4 と言うキャラクターを参考にしてください。
2P カラーは両目の色が違いますが facing = -1 でも反転しないようにしてあります。
Sffv2, localcoord = 1280,960 で作ってあります。

通常のactパレットの指定は1,1 から 1,12 ですが、
act を変更した pngsff に追加し 2,1 から 2,12act として追加することにより facing1 加算する簡単な式になっています。
Fighter Factory 3 の場合、通常は「1.Palを取り合えず1-12までにする。」の部分の最初の画像の様に、画像のパレットをそのまま act として使うようになっています。



RemapPal概要
 RemapPal を使うにはキャラクターの .def ファイルで mugenversion = 1.0 である必要があります。

Sffβ版のままでも使えます(多分)。但しその際には .act ファイル分の 1 から 12 までしか使用できません。
Sffv2mugen 1.0版.act ファイルを .sff ファイルに格納するようになりました。
Sffv2 の作成方法は後で説明します(sprmake2 / ff3)。

 RemapPal で出来る事はパレットの変更です。Sffv2 でパレットを .sff ファイルに沢山持てる様になったのでパレット数の制限はなくなりました。いつでもパレットを変更できるので試合中のカラー選択特定のドットのみの変化が可能です。キャラクターの特定のドットを変化させるには元画像を色分けしておき普段はパレットで同じ色にし見えなくしておきます。

 また、キャラクターと共有していないパレットについても変更することができます。但し、パレットの影響を受けるプレイヤーに依存するのでプレイヤーかヘルパーが対象になります。


 RemapPal は実際に使ってみない全体がとても分かり難いので一つ例を挙げて説明します。



RemapPal左右反転の為のステートコントローラー
右と左が違う色のキャラを例に挙げて説明します。

 左右反転した際、つまり facing = -1 の時に実行させる方法です。
変数に向きを記憶して反転させます。hitpause 中に反転する事は無いと思うのと PalFx の妨げになるので ignorehitpause = 1 はつけません。
var(58) は自分の ID を入れています。こうする事で type = playerhelper とカラーの判別処理を共通処理に出来ます、が今回は !IsHelper をつけたので必要ありません。
trigger1 は必要に応じて書き換えてください。

[state -2, RemapPal]
type = RemapPal
triggerall = !IsHelper && hitover && var(48) != facing
trigger1 = 1
source = 1,1
dest = 1 + (facing = -1),2

[state -2, varset facing]
type = varset
triggerall = !IsHelper && hitover && var(48) != facing
trigger1 = playerID(var(58)),palno = 2 || playerID(var(58)),palno = 2 + 4 || playerID(var(58)),palno = 12 - 2 + 1
var(48) = facing


 dest = 1 + (facing = -1),2 で 1,22,2 と言う具合に分けています。2,2 と言うパレットは Sffv2 にして追加した 1 から 12 以外のパレットです。

 source は対象となる画像のパレット番号です。パレット番号 1,1 と言うのがパレットを先頭から share している画像のパレットになります。選択したカラーに関わらずキャラクターが使う画像は 1,1 のパレットになるので source = 1,1 です。.act ファイルで変更できる画像と言うと分かりやすいでしょうか。

 dest は変更先のパレットです。選択したカラーを意味する destdest = 1, palno です。一定時間 gold カラーにしたりするのはこれで出来ます。RoundState = 1 でカラー選択をする様な使い方も出来ます。ヘルパーだけカラー変更する事も可能です。(Ahojin1 でカス雛さんのカラー変更をしています。)

 取り合えず使い方は分かったと思うので次は Sff の作り方です。
Sffの作り方がわかると sourcedest に指定する値の意味が分ると思います。
どちらも基本的には画像の登録番号になります。つまりいくつでも登録できるのでイントロ終了後に上下左右で上下で5個ずつ飛ばすなどしてカラー選択の様な形式を取るとカラーが20あってもすぐ選択できると思います。選択するカラーのキャラ画像や四角い画像にしてあったりすると連続で表示させて分りやすくできます。


RemapPal 用の Sff(Sffv2) 作成。
 Sff β(winmugen) でも使えますがカラーの追加が出来ないので mugen 付属の sprmake2.exeを使って作成します。
 Fighter Factory 3 で Sffv2 を作成すればパレット一覧の数字(画像の登録No.)が使えるので以下の手順は必要無いと思いますが。


 まずは mugendocsSpriteMaker Tool Documentation や tutorials1 を読んで下さい。作り方が書いてあります。

 しかしこれだけでは既存のキャラクターから Sff を作るのが大変なので Fighter Factory 3Export を使って SPRMAKER2 用のファイルを作ります。Export されたファイルはそのままでは利用できないので編集する必要があります。
 SAE にも SPRMAKER 用の出力があったような気がするのでそこから編集しても良いと思います。
















変換・コンバーター
Fighter Factory 3 で Sprites から Sff を保存、MUGEN version 1.0 以降を選べば以降の作業は必要ありません

Fighter Factory 3Export した .def の中身を貼り付けてください。





.act を削らなくても使えると思います。



Fighter Factory 3 で Export し sprmake2.exe を使って Sffv2 を作る
Fighter Factory 3.def.sff を開く

1.メニューの「Sprites」を開き「ffeで出力(export)」する。

mugen02230.png


2.ダイアログが出てくるので「全体」を選んだら「OK」する。

3.ファイル選択画面が出てくるので「ファイルの種類」から"Elecbyte SprMaker 2 (*.def)"を選択。

mugen02231.png


4.適当なフォルダに「保存」する。

5.出力されたフォルダに入っている .def を編集する。



1.filename がコメントアウトされているので行頭のセミコロン ; を削除する。


[Output]
filename = Ahojin1x4.sff


1.compress を以下の様に修正する。

[Option]
sprite.compress.5 = lz5
sprite.compress.8 = rle8
sprite.compress.24 = none
sprite.compress.32 = none
sprite.decompressonload = 0
pal.reversepng = 0


1.Palを取り合えず1-12までにする。

しなくて大丈夫です。Sffv1 ではなく Sffv2 のファイルから Export すると [Pal] の途中から [Sprite] の部分が続いている場合があるのでその場合は[Sprite]で区切って下さい。

[Pal]
1,1, 1-1.act, 0,255
1,2, 1-2.act, 0,255
1,3, 1-3.act, 0,255
1,4, 1-4.act, 0,255
1,5, 1-5.act, 0,255
1,6, 1-6.act, 0,255
1,7, 1-7.act, 0,255
1,8, 1-8.act, 0,255
1,9, 1-9.act, 0,255
1,10, 1-10.act, 0,255
1,11, 1-11.act, 0,255
1,12, 1-12.act, 0,255
9000,0, 9000-0.act, 0,255
...
増やしたい場合はここに足す。
2,2, 2-2.act, 0,255

mugen02223.png

こんな感じに。

mugen02225.png

説明の為に不要な部分を削りましたが通常はそのまま使います。


1.オプションを削除する。

VxEditorの場合は正規表現2をチェックして

検索
\[Option\]\nsprite.removecolors[^\n]+\n
置換

で空文字列に置換する。

mugen02219.png



1.パレットを適用させたいスプライトの上に以下のオプションをつける。以降の[Sprite]は全て同じ扱いになる。
shared の事です。適用させる画像は先頭から繋げましょう。
? usepal = 1,1 がある場合は必要ありません。

[Option]
sprite.usepal = 1,1

mugen02227.png

画像では途中で切っていますが意味はありません。


1.パレットを適用させないスプライトの上に以下のオプションをつける。以降の[Sprite]は全て同じ扱いになる。
? usepal = -1 がある場合は必要ありません。

[Option]
sprite.usepal = -1

mugen02228.png



1.コマンドプロンプトでmugenフォルダまでcdしてsprmake2.exeを実行する。
ここまでの作業がちゃんと出来ていないと実行した時に"There was an error parsing"と表示されます。

mugen02222.png


適当に修正してください。


成功すると次のようになります。

cmd.exe
cd mugen
mugen>sprmake2.exe Ahojin1x4.def


SprMaker ver 2.00beta (2010-04-16) Elecbyte 2010
Processing sprites: done.
Overwriting output file: Ahojin1x4.sff

Stats
1051 sprites (1051 unique), 878 palettes (878 unique)
ldata : 24361184 bytes tdata : 0 bytes
filesize: 24405172 bytes (0 bytes saved by optimization before cropping)
mem use : 26500544 bytes

1051 sprite(s) compressed; 117818343 bytes saved; avg compression 16.61%

mugen>


mugen02226.png



1.sprmake2.exeがあるフォルダにsffが作成される。
完成



以上で出来上がります。




Sffv2の注意点

9000-1 だけは 最大幅が縦横 999x999 迄の様です。大体の値です。
SpriteDecompressionBufferSize が小さいと表示されない様です。初期値の 5120 なら 2560x1920 の画像を入れても問題ありませんが小さくしている場合は元に戻しましょう。余裕を持って 36384 にしておくと良いと思います。

Sffv2 にすると Fighter Factory 3 でのエクスポート時に [Sprite] がなくなり [Pal] だけになるので次回編集時は注意してください。
今回作った.defを保存しておくと良いと思いますがどうなんでしょう。

完成品の Ahojin1x4.def を付属したので見てください。

模様や文字を RemapPal を使って出したり変化させることも出来ます、その分パレットの色数が増えるので塗り分けや管理が大変になります。
カットインもパレットで色が変わるようにしているとパレット変更が適用されるので適用されたくない場合は色数を増やして違う色で塗る必要があります。




line
分かりやすい説明があると良いかなと思い、画像付きで新たに書きました。
読み終わったら左のメニューの localcoord(4) から他の記事も見て下さい。

400, 1200, 4800 キャラクターを登録できる mugen1-4800 を欲しい方は保管庫へどうぞ。
mugen1-4800 には本体付属のスクリーンパックを 640x480 用に変更した物も入っています(通常は使いません、D4ライフバー用です)。必要な .sff (画像ファイル)は本体付属のを使うので mugen1 フォルダからコピーしてください。

最初に注意すべき点
 winmugen のキャラをワイド画面に表示させても本来見える範囲が見切れる事はありません、見切れる様な場合は Locallcoord を設定していないか設定を間違えています。最初は画面の大きさを mugen.cfg640, 480 にしましょう。一覧は一括ワイド対応本体設定にあります。
 4:3 から x:y の比率の画面サイズに変更するには画面の幅を GameWidth 画面の高さを GameHeight とすると、
GameWidth = GameHeight * x / y
となります。最終的な画面の横幅は偶数の幅にしましょう。
 製作する方は GameWidth, GameHeight を使いましょう。それと Hitdef の項目に書かれている fall.yvelocity = -4.5yaccel = .35 を設定しておきましょう。

前置き
 MUGEN1.0 では画面幅が 4:3 固定ではなくなりました。1ドット単位で変更できます。その都合でキャラクターやステージ、そしてライフバーが拡大処理される事になりました。しかし、画面に対してぴったり拡大される訳ではありません。
 拡大処理に際して、画面の幅とキャラクターの拡大率を計算する為に localcoord と言う数値が追加されました。また、画面幅は GameWidth で取得できるようになり、高さも同様に GameHeight で取得できるようになりました。つまり、これらを使って作成してくださいと言う事です。
 localcoordその物から見た画面の大きさです。画面幅がどうなっていようと設定された値で計算して表示されます。画面幅は縦横共に1ドット単位で変更できる為、localcoord と画面の比率(GameWidth, GameHeight)が異なる場合は画面に合わせて拡大縮小されます。
 実際の処理については、GameWidth のみ参照して拡大されます。よって GameHeight を無視して拡大される、と言う事です。但し、ステージやライフバーは localcoordGameHeight で表示範囲が決まります。キャラクターも設定だけはしっかりしておきましょう。
 MUGEN 1.1βではステージの localcoord によってステージの幅が画面に対して縦にも合うようになりました。その為、16:9 の本体設定4:3 のステージを左右の足りない分が黒くなった状態で表示されます。今までより自然な対応・・・なのでしょうか。要するに、異なる localcoord のステージが混在していても表示範囲はステージの localcoord に依存して画面からはみ出さない様になった為、大丈夫になりました。

 localcoord の設定は、localcoord = GameWidth, GameHeight と記述します。省略すると localcoord = 320, 240 になります。これは、 4:3 となります。省略しないでください。localcoordwinmugen 用のキャラクターに書いても特に問題は起きませんがどうせ互換モードで動かすでしょうし不要です。



MUGEN 1.0 での説明になります


拡大処理 4:3
 先ずは、キャラクターを作る前に実際にどの様にして拡大処理されているかを知っておきましょう。

 最初に、winmugen の標準的な D0 キャラクターを例にして説明します。一応、次の値が設定されている物とします。

;// mugen.cfg (画面)
[]
GameWidth = 640
GameHeight = 480

;// system.def (ライフバーは D0 (320, 240) で制作)
[Info]
localcoord = 320, 240

;// kfm.def (キャラクター)
[Info]
localcoord = 320, 240

;// stage.def (ステージ)
[StageInfo]
localcoord = 320, 240


 localcoord に関しては、省略すると上記の値(320, 240)になります。この場合、どの様に表示されるかと言うと次のようになります。
 
画面が 640, 480 で描画されます。
ライフバーは 320, 240 ですが GameWidth しか参照しない為、640/320 = 2 でそれぞれ 2 倍されます。
キャラクターは、 320, 240 ですが GameWidth しか参照しない為、640/320 = 2 でそれぞれ 2 倍されます。
ステージは 320, 240 ですが GameWidth しか参照しない為、640/320 = 2 でそれぞれ 2 倍されます。

 さてこれだとそのまま 2倍 されただけで今までと特に変わりません。これはそれぞれの画面の比率の設定が全て同じだからです。


拡大処理 16:9
 それでは次に 16:9 の画面を例にして見てみましょう。簡単に、画面の大きさだけ変更してみます。


;// mugen.cfg (画面)
[]
GameWidth = 854
GameHeight = 480

;// system.def (ライフバーは D0 (320, 240) で制作)
[Info]
localcoord = 320, 240

;// kfm.def (キャラクター)
[Info]
localcoord = 320, 240

;// stage.def (ステージ)
[StageInfo]
localcoord = 320, 240


 GameWidth854 になりました。これは 16:9 の画面です。この場合、どの様になるかというと、

画面が 854, 480 で描画されます。
ライフバーは 320, 240 ですが GameWidth しか参照しない為、854/320 = 2.67… でそれぞれ 2.67… 倍されます。
キャラクターは、 320, 240 ですが GameWidth しか参照しない為、854/320 = 2.67… でそれぞれ 2.67… 倍されます。
ステージは 320, 240 ですが GameWidth しか参照しない為、854/320 = 2.67… でそれぞれ 2.67… 倍されます。



 違いがわかりましたか。localcoordmugen.cfgGameHeight の比率は 2 倍のままですが、2.67… 倍されました。実際に画面を見るとわかりますが、表示される範囲が画面の外側に出てしまいました4:3 よりも横長にすると、キャラクターが大きく表示されているのがわかると思います。
 逆に言えば、キャラクターやステージが横幅に合わせて拡大されたので、画面にちょうど収まったとも言えます。しかしこれでは横長になったのではなく、例えば上を切って横に長く見せたのと変わりません。多くの人がやりたい事はこれではありませんよね。

 問題になるのはどこを基準に描画されるかと言う事で、ステージであれば画面下中央(だったかな?)、キャラクターであればステージの基準線、背景画像は画面端や中央の上下いずれか、と言った具合で物によって表示位置の基準が違うので見切れる部分が変わってきます。下に表示しているパワーゲージ等の Explod が画面下に行って消える、見えなくなったりします。これが、localcoord を"思惑通り"に設定しないで表示した場合になります。勿論こういう表示をさせたい場合はこれで正しいですが。

 と言う訳で、次は正しい設定の仕方を学びます。

 
localcoord の設定
 さてそれではキャラクターの大きさをそのままで画面を横に広くしたい場合、例として 16:9 にしたい場合はどうすれば良いかと言うと、localcoord = 426, 240 に設定しなければなりません。正確には 426.66… なのですが、427 だと画面の真ん中が出来てしまうので 426 にしました。(画面の大きさは 854,480 です)
 こうすると比率が 16:9 同士になるので、画面の大きさに合わせてキャラクターを拡大した際に縦横がちょうど画面に収まります。画面の大きさは自由に変更出来るので 8:3 の画面にする事も出来ます、その際には localcoord = 640, 240 にすると良いでしょう。注意点としてこの設定をしたキャラクター等を4:3で表示させると逆に小さくなります。何故そうなるか考えてみてください。



 上の図の様に、localcoord16:9 の比率の物を 16:9 の画面に合わせようとするので画面にぴったり合います。localcoord は本来その物が置かれている画面の大きさを意味するので、localcoord を変更する事で画面に対する拡大率を自由に設定できます。


 さて、localcoord.def に書きます。つまり、画面の比率に対応した .def を作る必要があると言う事です。キャラクター、ステージ、ライフバーが対象となりますが、ステージは数が多いでしょうし修正がひとつひとつ確認しながらになりとても面倒なので、localcoord は変更せず拡大させて表示させると良いでしょう。ライフバーは一つしか使いませんので(ポートレートだけ)少し修正して他は拡大表示させるか、一時間もあれば全て修正できるので綺麗にすると良いと思います。キャラクターは拡大されてしまっては変なので、.def ファイルを別に作る必要があります。画面の大きさは mugen.cfg で設定するので、 MUGEN 本体を別に作って .def の写しを名前を変えて(char16x9.def、等)使うと言うのが良いでしょう。

 .def の一括修正については localcoord = 426, 240 ワイド対応(4:3,15:9,16:9 mugen 1.0) の記事に書いてあります。テキスト修正ソフトを使って xml の設定を読み込んで一括処理し、名前を変更したら、テキスト修正ソフトが自動的に取ったバックアップを元の場所に戻すと言った具合です。

 簡単に言えばキャラクターの .def ファイルを写して localcoord を書き足せば、後は本体を用意するだけです。既存のキャラクターを使うにはたったこれだけで済みます。


制作する際にやっておくべき事
 画面比率別に .def ファイルを作る事です。最初から作っておけば使う人に易しいです。作るべき .def

localcoord = 320, 240    ;  4:3
localcoord = 426, 240    ; 16:9

以上の 2 つです。私は 15:9 (400,240) は必要ないと思いますが 需要があるようなので作っておくと良いと思います。
対象となるのはキャラクター、ステージ、ライフバーです。

 ファイル名は、4:3 のを char.def とすると、char16x9.def と言うのが良いと思います。

 ステージは作ると大変なので localcoord = 320, 240 のままでも良いと思います。私が localcoord = 426, 240 にする際に行った方法は画像をループさせて端を小さくすると言う手法です。横長になるので壁が遠くなりすぎないように横に広がった分を引きます。具体的には 70~100 程度 boundleft, boundright を狭めれば良いと思います。一枚画像には tile = 1,0window = 0,0,854,480 とするだけです。

 ライフバーは変更が比較的簡単なのですが、スクリーンパックに合わせないといけなくなるのでスクリーンパックを調べて作ると良いと思います。1280,720640, 480 (854, 480) が多いと思います。まずは 4:3 で作り 16:9 でどう表示させるか考えましょう。4:3 のまま拡大させてポトレを縮小するだけでも良いですし、大きさがそのままになるように修正して左右を空けるのも手です。
 推奨は、854x4801708x960 です。ワイドサイズで作ると 4:3 にした時に縦が伸びるので問題になりません。854, 1708 と数字が倍になっていないのは計算するとそうなるからです。480/9 はぴったりの値にはならないのでその都度計算しましょう。ちなみに 852 のが近いですが見た目のずれの都合で 854 にしました。他の解像度との兼ね合いや動画や拡大の都合がありますし。

 4:3 の画面に対して localcoord = 400, 300 に設定してる方が居るようですが、これは画面の幅が 400, 300 の所にキャラクターを置いている事になります。これを kfm に設定して 640x480 の画面に表示させると 1.6 倍されるので本来の大きさ (2倍) より小さくなります。この設定でちゃんと表示出来るキャラクターは元のゲーム画面が 400x300整数倍(普通は。)であるはずです。winmugen で作ったキャラクターであればそもそも 320, 240 以外は間違いですので気をつけましょう。デフォルト値は 320, 240 です。


高解像度キャラクターの作成
 localcoord640, 480 で作成すると D4 キャラクター相当となります。相当と言うのは D4 と言う概念は特に無い為です。ただし scale = 1, 1 になるので画像の扱いが変わってくるのと winmugen では大きさが倍になってしまう為そのままでは使えません。MUGEN1.0 以降の専用キャラクターとなります。その為、D4 として localcoord = 320, 240scale = 0.5, 0.5 作成して使った方が、互換性としては良かったりはします。
 高解像度にする利点は次の通りで、ポートレートを綺麗に出来る、ヒットスパークを綺麗に出来る、と言った所です。解像度に依存する物が綺麗になるのが利点です。是非やってみてください。

小ポトレです。100x100

 localcoord = 1280, 960 のキャラクターの記事


最後に
 localcoord縦横ちゃんと数値を書いて下さい。省略すると正常に動かない事があります。


以上です。
line
作成手順を簡単に書いておきます。
同じ内容ですが 以前の記事 も後でご覧下さい。

先ずは下まで読んで下さい。

・基本事項
mugendocs を開いて、Tutorials を読む。(作り方)
Reference を一通り読んでおく。(細かい事が書いてあります)
mugen wiki は実は古く、Reference の方が正しいです。

絵を描ける人は一応これで作れるはず・・・です(頑張れば)。
必要なソフトは本体に付属しています、がマウスで操作できるソフトではないので Fighter Factory 3(FF3)SffAirEditor(SAE)SffAirMaker2(SAM) を使うと良いです。

注意事項としては、1.0用のキャラクターの場合、テキストファイルは UTF8 で作ってください。
メモ帳でも保存する際に UTF8 に出来ます。
UTF8 を扱えるエディタは K2Editor, Notepad++, SakuraEditor,, VxEditor 等があります。VxEditorNotepad++SakuraEditorがお勧めです、Notepad++言語からBatchを選択しておくと色分けされます。スタイル設定言語を選択してBatchcnsを追加すると自動的に変わります。SakuraEditormugen用のスタイル設定があるようなのでそれを入れれば色分けされます。VxEditor用の設定の定義ファイルを作ったので左のリンクから見てそちらを使うと良いと思います、設定の定義から読み込めば追加できます。
SJISで日本語を使っていると読み込めない場合があります(特に .def ファイル)。とは言え、nameに日本語を使ったり[ja.Quotes]を使って日本語を表示しないのであれば従来通りSJISで大丈夫です。
互換性の点では変な文字を使わなければUTF8でもwinmugen(mugen beta)で動きます。

・ファイルの作成
MUGEN 1.0kfmフォルダ写して名前を自分が作るキャラクター名に変更する。
.defファイル を開いてauthor name や関連するファイルの名前を適当に変更する。
これを select.def に追加して実際に動くのを確認すれば準備は完了です。

name = "自分や他のキャラクターから参照する名前"
displayname = "対戦画面に表示される名前"

エンコードを UTF8 にしていない場合は日本語を使わないようにしましょう。
半角セミコロン 以降改行されるまではプログラムからは無視されるコメントになります。
ダブルクォート " で囲まれた部分以外は全て小文字を使いましょう。

・テキストファイル
def・・・キャラクターの定義。
cns・・・技。動作の詳細。[statedef -2]はステートの最後に実行される。
cmd・・・技。コマンド入力設定。[statedef -1]は全部終わったら実行される。
air・・・アニメーション。

・その他のファイル
act・・・パレットファイル。
sff・・・画像を一括にしたファイル。(beta/1.0/1.1)
snd・・・音声を一括にしたファイル。


・SFFの製作
 SFF は画像を詰め込んだファイルです。これを呼び出して使います。1.0以降SFF内の画像のパレットを指定できるようになり、パレットをほぼ無制限に使えるようになりました。SFF version 1.0 以降に対応しているソフトは NomenFighter Factory 3です。但し SFF β(winmugenの物)も使えるので SffAirEditor(SAE)SffAirMaker2(SAM) でも大丈夫です。

SAE や Fighter Factory を使ってスプライト(画像)を kfm の物から差し替えます。
画像にはグループと番号を割り当てて管理します。9000グループの 0番 は 9000,0 です。

Fighter Factory は 2.6 以降では画像のパレット順に自動で並び替えます、並び替えないのは 2.5 です。また、SFF出力の際に自動で 9000,0 を先頭にして次に 0,0 が来るように並び替えるので 9000,0 とキャラクター画像のパレットを同じにしないと色化けします。AhojinSFF の画像のパレットを参考にしてください。)

同じパレットを使用している画像は shared と言う属性を付けていました。
actファイルでキャラクターの色変更が適用される範囲は 0,0 から shared が続いている所までです。256色に減色した画像しか使えません。ソフトに依りますが使えるのは PCX/BMP/PNG です。24bit や 透過PNGは色化けします。後からパレットを揃えるなら PmpClean で一括パレット変更をすると楽です。

Fighter Factory 3からはSFFv2(1.0形式)も作成できるようになりました。1.0形式ではRemapPalでちょっと色々出来るかも。betaと言うのがwinmugen用で通常は互換性を考えてbetaで保存して構いません。


・AIRの製作
 画像の動きを記述するテキストファイルです。動きと言っても何番の画像がどの位置に何フレームと言う具合に記述していきます。その action 番号を cns 内で指定してアニメとして呼び出します。その為、sff に画像が登録されていても air に書かれていないと cns で使えません。


・SNDの製作
 WAVファイルを詰め込んだファイルです。製作ソフトによって対応が変わります。
簡単に作るならフリー素材やMIDIを使うと良いでしょう。


・パレットの製作
 act(パレットファイル)を作ります。4人同時対戦(CPU含む)が可能なので最低でも4色は欲しいです。
D-pixed で画像を読み込んで DxPaletteEditor で開いたら、ファイル名を .act で保存すれば作れます。


・技の作成
 テキストエディタで cnscmd を弄って技を作ります。UTF8 でどうぞ。
デバッグモードを使いましょう。

kfm前ダッシュ後ろダッシュが別物で、後ろダッシュは小ジャンプしているだけです。
見た目通りの後ろ跳ねにしたければ ctrl=0 にして地上を歩かせて air 上でジャンプしているように見せるのが良いでしょう。後ろダッシュにする場合は、前ダッシュのステートを common1.cns から持ってきて、後ろダッシュのステート番号に書き換えたのを cns に記述しましょう。

[Statedef 100] を持ってきて、[Statedef 105]にすれば・・・


ヘルパーはキャラクターと同じくステートを移動していくので、基本的には攻撃を食らうと食らいステートに移動します。演出で出したり攻撃させる場合は hitoverride を使用して意図しないステートにいかないようにしましょう。

p2stateno で相手に自分のステートを参照させる際(投げ技、等)は一定時間経過したりしたら(Time)必ずそのステートから selfstate して相手のステートに戻すようにしましょう(statedef 5000, 5030, 5050, 5150, 等)。こうしておかないとタッグ戦やヘルパーにより意図しない途中の攻撃等で、自分が攻撃を中断したり、相手から見て相手側の食らいステートに入ってしまったりします。こうなると相手は動けなくなるか技を一切出せなくなるのでそこで試合が中断してしまいます。p2stateno で相手に自分のステートを参照させる(相手のステートを奪う)技は途中で何かあっても相手が元に戻るようにしておきましょう。これはごく自然な事だと思いますが、実際に作ると忘れやすいです。


HitdefProjectile には
yaccel = .35
fall.yvelocity = -4.5

を貼り付けておいて下さい。
記述しないとデフォルト値になり、画面幅が変わった際に吹き飛びが変わります。


・小文字で
 とにかく小文字で。
大文字を書くと死にます。
そう言う意味では同じ部分や使える部分をコピペして新しい動作を作ったりする事が安全です。


・最後に
 しっかり読んで
やってみましょう

Tutorials

line
丁度ブログが更新され、8月中頃に公開する様です。
version 1.1 での予定は恐らく変わっていないでしょうし、詳細も何もないのでリンクだけ貼っておきます。

Home » Blogs » dfw's blog » new-alpha-version-coming...

公開テストの様なのでβにでもなるんでしょうか。


要求はフォーラムから General Discussion の以下の記事です。
 Mugen 1.1 Info Request.
 Important for MUGEN Developers

line
M.U.G.E.N 1.1 alpha

・α版について
2010年の記事です。
2010年の時点からずっとクローズしているのでダウンロードは出来ません

M.U.G.E.N 1.1 alpha testers wanted! (temporarily closed)
http://elecbyte.com/forum/index.php?board=2.0

αなのでまだですがβになったらもう少し広く配布するかも。予定していたズーム機能はあるようです。
テスター募集なので登録しないと駄目ですけれど。
そもそも Elecbyteversion 1.0 が公開されてから活動していない様な気がします。
直接要望を出せばもしかしたら動くかも知れませんが。
line
line

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