- 追加された行はこの色です。
- 削除された行はこの色です。
[[アドオン開発]]
あちこちに分散しているmakeobjに関する記述を整理してリファレンスを作成しようという試み。まだコンテンツは未完成です。
#contents
RIGHT:
&size(10){''更新履歴''};
&size(10){初版。ぼちぼちと 2010/05/01};
**makeobjの入手 [#k57da0d8]
[[SourceForge:makeobj]]からWindows,Linux,BeOS版のコンパイル済みmakeobjの実行ファイルがダウンロードできます。
**makeobjの実行 [#dbc7696b]
makeobjはCUIツールです。コマンドプロンプトなどのCUIシェルから使用します。
makeobjをpassの通った場所におくか、makeobjのあるフォルダで実行します。
Linuxの場合は「./makeobj」と[./]が必要ですが、Windowsでは単に「makeobj」です。
&imgfolder(16/page_go.png); [[makeobj.exeを使ってみよう>アドオン開発/アドオンの作り方#f276e6e1]]
**コマンドラインオプション [#w89ac0c5]
オプションは大文字小文字を区別しません。
***pak[タイルサイズ] [#jd34ecd6]
:説明|datファイルとpng画像ファイルからpakファイルを作成します。
タイルサイズには32から192までのサイズを指定できます。
タイルサイズを省略して単にpakとした場合には、タイルサイズ64として扱われます。
:構文|makeobj pak <pakファイル名> <datファイル名> [<datファイル名> ...]
makeobj pak128 <pakファイル名> <datファイル名> [<datファイル名> ...]
:例1|
makeobj pak
makeobj pak ./ ./
フォルダ内のすべてのdatファイルを読み込み、個々のpakファイルを作成します。作成されるファイル名は「menu.WindowSkin.pak」のように「オブジェクトの種類.オブジェクト名.pak」になります。
pakオプションは最もよく使われるため、ファイル名を省略または「./」で代用できます。Windowsでもバックスラッシュではなく「./」です。
ファイル名を省略した場合は、オブジェクトはそれぞれ個別のpakファイルになります。
:例2|
makeobj pak new.pak
フォルダ内のすべてのdatファイルを読み込み、new.pakを作成します。複数のオブジェクトがある場合にはpakライブラリファイルになります。
:例3|
makeobj pak ./ sample.dat
sample.datを読み込み、個々のpakファイルを作成します。この場合最初の「./」は省略できません。
***merge [#h677bc19]
:説明|複数のpakファイルを単一のpakライブラリファイルに結合します。
:構文|makeobj merge <pakライブラリファイル名> <pakファイル名> [<pakファイル名> ...]
:例1|
makeobj merge new.pak a.pak b.pak c.pak
a.pak b.pak c.pakの3つのpakファイルを結合し、new.pakを作成します。
:例2|
makeobj merge new.pak *.pak
フォルダ内のすべてのpakファイルを結合し、new.pakを作成します。
#div(start,noteblue)
''ground.Outside.pak''というpakファイルは特別なファイルですので、他のpakと結合したり、名前を変更してはいけません。
#div(end)
***extract [#y5671432]
:説明|pakライブラリファイルを個々のpakファイルに分割します。
#div(start,noteyellow,margin:0)
一部に完全には分割できないpakライブラリファイルがあります。
オブジェクト名にコントロールコードや、ファイル名として使用できない文字(/,\,*,?など)が含まれている場合分割処理が継続できません。また、古いバージョンの橋が含まれている場合にも分割処理が継続できません。
#div(end)
:構文|makeobj extract <pakライブラリファイル名>
:例|
:結果|
found 2 files to extract
writing 'building.HQ1.pak' ...
writing 'building.HQ2.pak' ...
***list [#h5084826]
:説明|pakライブラリファイルに含まれているpakオブジェクト名の一覧を表示します。
:構文|makeobj list <pakファイル名> [<pakファイル名> ...]
:例|
makeobj list building.hq.all.pak
building.hq.all.pakファイル内のpakオブジェクト名の一覧を表示します。
:結果|
Contents of file building.hq.all.pak (pak version 1001):
type name
---------------- ------------------------------
building HQ1
building HQ2
***dump [#z3222f60]
:説明|pakファイルまたはpakライブラリファイル内のノード情報を表示します。
:構文|makeobj dump <pakファイル名> [<pakファイル名> ...]
:例|
makeobj dump building.IND_00_02.pak
building.IND_00_02.pakファイル内のノード情報を表示します。
:結果|
File building.IND_00_02.pak (version 1001):
ROOT-node (root) 0 bytes
BUIL-node (building) 26 bytes
TEXT-node (text) 10 bytes 'IND_00_02'
TEXT-node (text) 8 bytes 'Patrick'
TILE-node (tile) 7 bytes
IMG2-node (imagelist2d) 4 bytes
IMG1-node (imagelist) 4 bytes
IMG-node (image) 9490 bytes
IMG2-node (imagelist2d) 4 bytes
***capabilities [#aa75fe08]
:説明|このmakeobjが読み書き可能なオブジェクトの種類を表示します。
:構文|makeobj capabilities
:結果|
This program can pack the following object types (pak version 1001) :
bridge
building
citycar
crossing
cursor
(...以下省略)
***quiet [#h34b6f69]
:説明|
:説明|makeobjのバージョン情報、著作権情報を標準出力に出力しません。&br;このオプションを使用する場合は、必ず最初に指定しなければいけません。
:構文|
:例|
makeobj quiet pak
フォルダ内のすべてのdatファイルを読み込み、個々のpakファイルを作成します。
**トラブルシューティング [#y8bb1920]
**makeobjのバージョン履歴 [#u6b72a7f]