|
|
'...But what does it mean?' |
This is a sub-page of The Legend of Zelda: Phantom Hourglass.
All of these scripts are found in an archive called BgMap.narc in a directory called Test in the European version only.
NpcCvtr.pl#
Original#
#!perl -w
#######################################################
# Npcコンバータ
# 2005/7/20 海老澤靖
#
# ・コンバータスクリプトはどのフォルダに置いても動作する
# ・todo: ツール指定は他の設定ファイルを見るようにしたほうがいい
# ・タイムスタンプ比較はしてるけど、ファイルをリネームしてもアーカイブは作り直さない
# アーカイブを作った時間より古いファイルを追加してもアーカイブを作らない
# ・anmフォルダにアニメを置かないと無視する、anmフォルダが空なら無視する
# ・tmpフォルダを消せばclean
#
#-------------dataディレクトリの置き方ルール-----------
# ・NPCディレクトリ名は大文字で始まる
# ・NPCディレクトリ名がそのままアーカイブファイル名になる
# ・NPCディレクトリのなかに置くモデル、アニメファイル名は小文字。
# ・アニメ名は npc名をつけずに、wait.ica のようにする。
#######################################################
use strict; #変数宣言を強制
#---------------------------
# ツール指定
#---------------------------
my $Tool_g3dcvtr = "$ENV{ZELDA_DS_ROOT}\\Tool\\NitroSystem\\g3dcvtr.exe";
my $Tool_nnsarc = "$ENV{ZELDA_DS_ROOT}\\Tool\\NitroSystem\\nnsarc.exe";
#---------------------------
# ディレクトリ指定
#---------------------------
my $Dir_src = "$ENV{ZELDA_DS_ROOT}\\data\\Npc";#中間ファイル置き場
my $Dir_dst = "$ENV{ZELDA_DS_ROOT}\\Resource\\Npc";#コピー先
#---------------------------
# 関数宣言
#---------------------------
sub systemPrint{
my($str) = @_; #引数に名前をつける
print($str);
print("\n");
system($str);
}
#------------------------------
# checkTimeStamp関数
# ・Dstファイルがないとき、もしくは、DstがSrcより古いとき1を返す
# ・Srcはファイル名、もしくは一階層までのフォルダ
#------------------------------
sub checkTimeStamp{
my($srcFileOrDirName, $dstFileName) = @_; #引数に名前をつける
#----↓TimeStamp比較はしないようにした!---
return 1;
#----↑TimeStamp比較はしないようにした!---
if(!(-e $dstFileName)){
return 1;
}
elsif( -d $dstFileName ){
print("[エラー] checkTimeStampの引数dstFileNameはファイル名でないといけない\n");
exit 1;
}
my $dstTime = -M $dstFileName;
if(-f $srcFileOrDirName)
{
my $srcFileName = $srcFileOrDirName;
my $srcTime = -M $srcFileName; #経過日数を得る(※日付ではない)
if( $srcTime < $dstTime ){
return 1;
}
return 0;
}
elsif(-d $srcFileOrDirName)
{
# ※ while(my $nextFileName = glob("*"))とかくと、
# ループを途中で抜けたとき前のglobのリストが出て挙動が変だった
# ので、リストに一度いれてからforeachで処理する
my $srcDirName = $srcFileOrDirName;
my @files = glob("$srcDirName/*");
foreach my $nextFileName (@files) {
my $srcTime = -M $nextFileName;
if( $srcTime < $dstTime ){
return 1;
}
}
return 0;
}
}
#-------------------------------------------------
# メインルーチン
#-------------------------------------------------
print("NPCをコンバートします\n");
print("データ元:$Dir_src \n");
print("出力先:$Dir_dst \n\n");
if( !(-e $Dir_src) || !(-d $Dir_src)){
print("[エラー] データ元:$Dir_src がありません\n");
system("pause");
exit 1;
}
if( !(-e $Dir_dst) || !(-d $Dir_dst)){
print("[エラー] 出力先:$Dir_dst がありません\n");
system("pause");
exit 1;
}
# カレントディレクトリ移動(ファイルを一つ一つ巡回するから)
chdir ($Dir_src);
#!!!!!!前の作業ディレクトリを削除!!!!!!
#todo ディレクトリごとサクっと消すコマンドないの?
unlink <$Dir_src\\tmp\\*>;
unlink <$Dir_src\\tmp\\*\\*>;
#作業ディレクトリ作成
mkdir("$Dir_src/tmp", 777); #作業フォルダ作成
#---------バイナリにコンバートして配置----------
{
# フォルダを一つずつ探る
my @targetFolders = glob("*");#フォルダ名をそのままアーカイブにするので絶対パスにしない
foreach my $nextDirName (@targetFolders) {
#見つけたディレクトリの中に入る(見つかったのがファイルの場合,ここで弾かれる)
if(chdir $nextDirName) {
if($nextDirName ne "tmp") {
#同じ名前の作業用ディレクトリ作成
mkdir("$Dir_src/tmp/$nextDirName", 777); #作業フォルダ作成
# 更にそのディレクトリ内のファイルを一つずつ探る
my @files = glob("*");
foreach my $nextFileName (@files) {
if($nextFileName =~ /.imd/) {
#モデル作成(モデルとテクスチャを分ける)
my $dstNameMdl = $nextFileName;
my $dstNameTex = $nextFileName;
$dstNameMdl =~ s/.imd/.nsbmd/;#置換演算子で拡張子を変更
$dstNameTex =~ s/.imd/.nsbtx/;
$dstNameMdl = "$Dir_src/tmp/$nextDirName/$dstNameMdl";
$dstNameTex = "$Dir_src/tmp/$dstNameTex";
if( checkTimeStamp($nextFileName, $dstNameMdl) == 1
|| checkTimeStamp($nextFileName, $dstNameTex) == 1)
{
system("$Tool_g3dcvtr $nextFileName -emdl -o $dstNameMdl\n");
system("$Tool_g3dcvtr $nextFileName -etex -o $dstNameTex\n");
}
#テクスチャの出力先は直接tmpに(アーカイブに含めないので)
}elsif((-d $nextFileName) && ($nextFileName eq "anm") ) {
#アニメ作成
my $dstName = "$Dir_src/tmp/$nextDirName/$nextDirName.nsbca";
if( checkTimeStamp("$Dir_src/$nextDirName/anm", $dstName) == 1){
my @ica = glob("$Dir_src/$nextDirName/anm/*.ica");
if(@ica != 0)
{
system("$Tool_g3dcvtr @ica -o $dstName\n");
}
}
}
}
}
# 上に戻る
chdir "../";
}
}
}
#--------アーカイブを作る---------
{
# カレントをtmpに
chdir "$Dir_src/tmp";
# フォルダを一つずつ探る
my @folders = glob("*");
foreach my $nextDirName (@folders) {
# それがディレクトリであるか調べる
if(-d $nextDirName) {
my $arcName = "$nextDirName.narc";
if( checkTimeStamp($nextDirName, $arcName) == 1){
system("$Tool_nnsarc -c -a $arcName $nextDirName");
}
}
}
# --------アーカイブとテクスチャをDir_dstにコピー----------
# アーカイブをコピー
my @files = glob("*.narc");
foreach my $nextFileName(@files) {
my $dstFileName = "$Dir_dst/$nextFileName";
if( checkTimeStamp($nextFileName, $dstFileName) == 1 ) {
system("copy $nextFileName $Dir_dst");
print("make archive: ",$nextFileName,"\n");
}
}
# テクスチャをコピー
@files = glob("*.nsbtx");
foreach my $nextFileName(@files) {
my $dstFileName = "$Dir_dst/$nextFileName";
if( checkTimeStamp($nextFileName, $dstFileName) == 1 ) {
system("copy $nextFileName $Dir_dst");
print("make texture: ",$nextFileName,"\n");
}
}
# 上に戻る
chdir "../"; #ここまでtmpフォルダでの作業
}
print("#############変換終了############\n");
system("pause");
Translation#
#!perl -w
#######################################################
# Npc Converter
# 2005/7/20 海老澤靖
#
# • Converter scripts will run regardless of which folder they're placed in.
# • To Do: Tool designation は他の設定ファイルを見るようにしたほうがいい
# • タイムスタンプ比較はしてるけど、ファイルをリネームしてもアーカイブは作り直さない
# アーカイブを作った時間より古いファイルを追加してもアーカイブを作らない
# • Animations will be ignored if not placed in the anm folder, the anm folder will be ignored if empty.
# • tmp folder を消せばclean
#
#-------------Data Directory Placement Rules-----------
# • The NPC directory name should start with uppercase letters
# • The NPC directory name will become the archive file name
# • The names of the model and animation files in the NPC directory should be in lowercase
# • Don't add NPC names to the animation names, do something like the following: wait.ica
#######################################################
use strict; #変数宣言を強制
#---------------------------
# tool Designation
#---------------------------
my $Tool_g3dcvtr = "$ENV{ZELDA_DS_ROOT}\\Tool\\NitroSystem\\g3dcvtr.exe";
my $Tool_nnsarc = "$ENV{ZELDA_DS_ROOT}\\Tool\\NitroSystem\\nnsarc.exe";
#---------------------------
# directory Designation
#---------------------------
my $Dir_src = "$ENV{ZELDA_DS_ROOT}\\data\\Npc";#中間ファイル置き場
my $Dir_dst = "$ENV{ZELDA_DS_ROOT}\\Resource\\Npc";#Copy to Here
#---------------------------
# 関数宣言
#---------------------------
sub systemPrint{
my($str) = @_; #引数に名前をつける
print($str);
print("\n");
system($str);
}
#------------------------------
# checkTimeStamp関数
# • Dstファイルがないとき、もしくは、DstがSrcより古いとき1を返す
# • Srcはファイル名、もしくは一階層までの folder
#------------------------------
sub checkTimeStamp{
my($srcFileOrDirName, $dstFileName) = @_; #引数に名前をつける
#----↓TimeStamp比較はしないようにした!---
return 1;
#----↑TimeStamp比較はしないようにした!---
if(!(-e $dstFileName)){
return 1;
}
elsif( -d $dstFileName ){
print("[エラー] checkTimeStampの引数dstFileNameはファイル名でないといけない\n");
exit 1;
}
my $dstTime = -M $dstFileName;
if(-f $srcFileOrDirName)
{
my $srcFileName = $srcFileOrDirName;
my $srcTime = -M $srcFileName; #経過日数を得る(※日付ではない)
if( $srcTime < $dstTime ){
return 1;
}
return 0;
}
elsif(-d $srcFileOrDirName)
{
# ※ while(my $nextFileName = glob("*"))とかくと、
# ループを途中で抜けたとき前のglobのリストが出て挙動が変だった
# ので、リストに一度いれてからforeachで処理する
my $srcDirName = $srcFileOrDirName;
my @files = glob("$srcDirName/*");
foreach my $nextFileName (@files) {
my $srcTime = -M $nextFileName;
if( $srcTime < $dstTime ){
return 1;
}
}
return 0;
}
}
#-------------------------------------------------
# Main Routine
#-------------------------------------------------
print("NPC will be converted.\n");
print("Data Origin:$Dir_src \n");
print("Data Output Destination:$Dir_dst \n\n");
if( !(-e $Dir_src) || !(-d $Dir_src)){
print("[Error] Data Origin:$Dir_src doesn't exist.\n");
system("pause");
exit 1;
}
if( !(-e $Dir_dst) || !(-d $Dir_dst)){
print("[Error] Data Output Destination:$Dir_dst doesn't exist\n");
system("pause");
exit 1;
}
# Current directory 移動(ファイルを一つ一つ巡回するから)
chdir ($Dir_src);
#!!!!!!前の作業 directory を削除!!!!!!
#todo directory ごとサクっと消すコマンドないの?
unlink <$Dir_src\\tmp\\*>;
unlink <$Dir_src\\tmp\\*\\*>;
#作業 Directory 作成
mkdir("$Dir_src/tmp", 777); #作業 folder 作成
#---------バイナリにコンバートして配置----------
{
# Searching folder by folder.
my @targetFolders = glob("*");# folder 名をそのままアーカイブにするので絶対パスにしない
foreach my $nextDirName (@targetFolders) {
#見つけた directory の中に入る(見つかったのがファイルの場合,ここで弾かれる)
if(chdir $nextDirName) {
if($nextDirName ne "tmp") {
#同じ名前の作業用 directory 作成
mkdir("$Dir_src/tmp/$nextDirName", 777); #作業 folder 作成
# 更にその directory 内のファイルを一つずつ探る
my @files = glob("*");
foreach my $nextFileName (@files) {
if($nextFileName =~ /.imd/) {
#モデル作成(モデルとテクスチャを分ける)
my $dstNameMdl = $nextFileName;
my $dstNameTex = $nextFileName;
$dstNameMdl =~ s/.imd/.nsbmd/;#置換演算子で拡張子を変更
$dstNameTex =~ s/.imd/.nsbtx/;
$dstNameMdl = "$Dir_src/tmp/$nextDirName/$dstNameMdl";
$dstNameTex = "$Dir_src/tmp/$dstNameTex";
if( checkTimeStamp($nextFileName, $dstNameMdl) == 1
|| checkTimeStamp($nextFileName, $dstNameTex) == 1)
{
system("$Tool_g3dcvtr $nextFileName -emdl -o $dstNameMdl\n");
system("$Tool_g3dcvtr $nextFileName -etex -o $dstNameTex\n");
}
#テクスチャの出力先は直接tmpに(アーカイブに含めないので)
}elsif((-d $nextFileName) && ($nextFileName eq "anm") ) {
#アニメ作成
my $dstName = "$Dir_src/tmp/$nextDirName/$nextDirName.nsbca";
if( checkTimeStamp("$Dir_src/$nextDirName/anm", $dstName) == 1){
my @ica = glob("$Dir_src/$nextDirName/anm/*.ica");
if(@ica != 0)
{
system("$Tool_g3dcvtr @ica -o $dstName\n");
}
}
}
}
}
# Return to Top
chdir "../";
}
}
}
#--------Create Archives---------
{
# カレントをtmpに
chdir "$Dir_src/tmp";
# folder を一つずつ探る
my @folders = glob("*");
foreach my $nextDirName (@folders) {
# それが directory であるか調べる
if(-d $nextDirName) {
my $arcName = "$nextDirName.narc";
if( checkTimeStamp($nextDirName, $arcName) == 1){
system("$Tool_nnsarc -c -a $arcName $nextDirName");
}
}
}
# --------Copy archives and textures to Dir_dst.----------
# Copy Archive
my @files = glob("*.narc");
foreach my $nextFileName(@files) {
my $dstFileName = "$Dir_dst/$nextFileName";
if( checkTimeStamp($nextFileName, $dstFileName) == 1 ) {
system("copy $nextFileName $Dir_dst");
print("make archive: ",$nextFileName,"\n");
}
}
# Copy Texture
@files = glob("*.nsbtx");
foreach my $nextFileName(@files) {
my $dstFileName = "$Dir_dst/$nextFileName";
if( checkTimeStamp($nextFileName, $dstFileName) == 1 ) {
system("copy $nextFileName $Dir_dst");
print("make texture: ",$nextFileName,"\n");
}
}
# Return to Top
chdir "../"; #ここまでtmp folder での作業
}
print("#############変換終了############\n");
system("pause");
player.js#
/**==============================================**
JavaScript用のユーティリティ関数たち
作者:新田昌弘。
**==============================================**/
/**-----------------------------------------------*
コマンドを実行する。
system32フォルダ内の .exe は直接実行できる。
直接実行できないコマンドは "cmd /C "にコマンド引数を渡す
使える : xcopy, net, cmd
*------------------------------------------------*/
function command(cmd, through)
{
var wsh = new ActiveXObject("WScript.shell");
if(through)
{
// アクティブで起動して、終了を待たない。
return wsh.run(cmd, 5, false);
}
else
{
// アクティブウィンドウを切り替えずに起動して、終了を待つ。
return wsh.run(cmd, 8, true);
}
}
/**-----------------------------------------------*
ファイルやフォルダを更新する。
コピー元(src)がコピー先(dst)より新しい場合のみ実行される。
xcopy
/i: 受け側ディレクトリがない時、ディレクトリとしてコピー
/e: サブディレクトリが空であってもコピー
/d: 新しいファイルだけをコピー
/y: 上書きする前に確認のメッセージを非表示
*------------------------------------------------*/
function update(src, dst, subFolder)
{
if(subFolder)
{
command("xcopy /i /e /d /y /s " + src + " " + dst);
}
else
{
command("xcopy /i /d /y " + src + " " + dst);
}
}
/**-----------------------------------------------*
「はい・いいえ」尋ねる警告を表示
*------------------------------------------------*/
function warningYesNo(str)
{
var wsh = new ActiveXObject("WScript.shell");
wsh.Popup(str, 0, "警告", 4 + 48);
}
/**-----------------------------------------------*
警告を表示
*------------------------------------------------*/
function warning(str)
{
var wsh = new ActiveXObject("WScript.shell");
wsh.Popup(str, 0, "警告", 48);
}
/**-----------------------------------------------*
情報を表示
*------------------------------------------------*/
function information(str)
{
var wsh = new ActiveXObject("WScript.shell");
wsh.Popup(str, 0, "お知らせ", 64);
}
/**-----------------------------------------------*
環境変数の値を取得する。
name : 環境変数名
*------------------------------------------------*/
function getEnv(name)
{
var wsh = new ActiveXObject("WScript.shell");
var wshUserEnv = wsh.Environment("USER");
var val = wshUserEnv(name);
if( val )
{
return val;
}
var wshSysEnv = wsh.Environment("SYSTEM");
return wshSysEnv(name);
}
/**-----------------------------------------------*
g3dcvtrを使ってリソースファイルに変換する。
(*.nsbmd と *.nsbtx)または(*.nsbca)を出力する。
path : ファイルパス
out : 出力先
*------------------------------------------------*/
function g3dcvtr(path, out)
{
var wsh = new ActiveXObject("WScript.shell");
var wshEnv = wsh.Environment("USER");
var fso = new ActiveXObject("Scripting.FileSystemObject");
var cvtr = wshEnv("ZELDA_DS_ROOT") + "\\Tool\\NitroSystem\\g3dcvtr ";
if(fso.FileExists(path))
{
// ファイルの場合
var fileName = fso.GetBaseName(path);
if(fso.GetExtensionName(path) == "imd")
{
// モデルファイルの場合
wsh.run(cvtr + path + " -etex -o " + fileName, 8, true);
wsh.run(cvtr + path + " -emdl -o " + fileName, 8, true);
fso.CopyFile(fileName + ".nsbmd", out);
fso.CopyFile(fileName + ".nsbtx", out);
fso.DeleteFile(fileName + ".nsbmd");
fso.DeleteFile(fileName + ".nsbtx");
}
else if(fso.GetExtensionName(path) == "ica")
{
// キャラクタアニメファイルの場合
wsh.run(cvtr + path + " -o " + fileName, 8, true);
fso.CopyFile(fileName + ".nsbca", out);
fso.DeleteFile(fileName + ".nsbca");
}
else if(fso.GetExtensionName(path) == "ima")
{
// マテリアルアニメファイルの場合
wsh.run(cvtr + path + " -o " + fileName, 8, true);
fso.CopyFile(fileName + ".nsbma", out);
fso.DeleteFile(fileName + ".nsbma");
}
else
{
warning("*.imd, *.ica, *.ima ファイルにしか対応していません。" + path);
}
}
else if(fso.FolderExists(path))
{
// フォルダの場合
var folder = fso.GetFolder(path);
var fc = new Enumerator(folder.files);
wsh.CurrentDirectory = folder;
var imdFiles = "";
var icaFiles = "";
var imaFiles = "";
for (; !fc.atEnd(); fc.moveNext())
{
if(fso.GetExtensionName(fc.item()) == "imd")
{
// モデルファイルの場合
imdFiles += fso.GetFileName(fc.item()) + " ";
}
else if(fso.GetExtensionName(fc.item()) == "ica")
{
// アニメファイルの場合
icaFiles += fso.GetFileName(fc.item()) + " ";
}
else if(fso.GetExtensionName(fc.item()) == "ima")
{
// アニメファイルの場合
imaFiles += fso.GetFileName(fc.item()) + " ";
}
}
var fileName = fso.GetBaseName(path);
if(imdFiles.length > 0)
{
// *.imdファイルをまとめて変換
wsh.run(cvtr + imdFiles + " -etex -o " + fileName, 8, true);
wsh.run(cvtr + imdFiles + " -emdl -o " + fileName, 8, true);
fso.CopyFile(fileName + ".nsbmd", out);
fso.CopyFile(fileName + ".nsbtx", out);
fso.DeleteFile(fileName + ".nsbmd");
fso.DeleteFile(fileName + ".nsbtx");
}
if(icaFiles.length > 0)
{
// *.icaファイルをまとめて変換
wsh.run(cvtr + icaFiles + " -o " + fileName, 8, true);
fso.CopyFile(fileName + ".nsbca", out);
fso.DeleteFile(fileName + ".nsbca");
}
if(imaFiles.length > 0)
{
// *.imaファイルをまとめて変換
wsh.run(cvtr + imaFiles + " -o " + fileName, 8, true);
fso.CopyFile(fileName + ".nsbma", out);
fso.DeleteFile(fileName + ".nsbma");
}
}
else
{
warning(path + " がありません");
}
}
{
var zeldaDS = getEnv("ZELDA_DS_ROOT");
// リンクの変換
g3dcvtr( zeldaDS + "\\data\\player\\link", zeldaDS + "\\Resource\\Player\\" );
// 船の変換
g3dcvtr( zeldaDS + "\\data\\player\\steamer.imd", zeldaDS + "\\Resource\\Player\\" );
// アイテムの変換
g3dcvtr( zeldaDS + "\\data\\player\\item", zeldaDS + "\\Resource\\Player\\" );
// モーションデータの移動
update( zeldaDS + "\\data\\player\\motion.bhio", zeldaDS + "\\Resource\\Player\\" );
}
effect_tex.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : effect_tex.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem NitroSDKのntexconvを使ってエフェクトのテクスチャを作成する
@rem
@rem 作者:新田昌弘。
@rem ---------------------------------------------------------------------------
cd /d %ZELDA_DS_ROOT%\data\effect\tex
rem ---- テクスチャを変換 ----
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv AK_smoke01.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv AK_smoke02.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv AK_smoke03.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv smoke01.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv smoke02.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv smoke03.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv zds_airflow.tga -b -f palette4 -ta
mkdir ..\temp
move *.ntft ..\temp\
move *.ntfp ..\temp\
move *.ntfi ..\temp\
rem ---- アーカイブ作成 ----
cd..
%ZELDA_DS_ROOT%\Tool\NitroSystem\nnsarc -r -a -b -e -s -l -E CVS effecttex.narc temp
move effecttex.narc %ZELDA_DS_ROOT%\Resource\Effect
@pause
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : effect_tex.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Use the NitroSDK ntexconv to create effect textures.
@rem
@rem Creator: Masahiro Nitta.
@rem ---------------------------------------------------------------------------
cd /d %ZELDA_DS_ROOT%\data\effect\tex
rem ---- Convert Texture ----
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv AK_smoke01.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv AK_smoke02.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv AK_smoke03.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv smoke01.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv smoke02.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv smoke03.tga -b -f tex4x4 -a3 -ta
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv zds_airflow.tga -b -f palette4 -ta
mkdir ..\temp
move *.ntft ..\temp\
move *.ntfp ..\temp\
move *.ntfi ..\temp\
rem ---- Create Archive ----
cd..
%ZELDA_DS_ROOT%\Tool\NitroSystem\nnsarc -r -a -b -e -s -l -E CVS effecttex.narc temp
move effecttex.narc %ZELDA_DS_ROOT%\Resource\Effect
@pause
fontcvtrc.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : fontcvtr.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem NitroSystemのフォントコンバーターを使ってフォントリソースを作成する
@rem
@rem 作者:新田昌弘。
@rem
@rem 引数1:にビットマップフォントのファイル名
@rem 引数2:色数
@rem ---------------------------------------------------------------------------
cd /d %~dp1
rem ---- NitroSystemのフォントコンバータをローカルにコピー ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\NitroSystem\tools\win\fontcvtr %ZELDA_DS_ROOT%\Tool\NitroSystem
rem ---- フォントを変換 ----
%ZELDA_DS_ROOT%\Tool\NitroSystem\fontcvtrc -i bmp -if %~nx1 -io ds_ipl.xlor -ib %2 -o nitro -of %~n1.nftr -f zeldaDS.xllt
@if errorlevel 1 (@echo 失敗しました。) else (@echo [ %~nx1 ] を [ %~n1.nftr ] に変換しました。)
@rem ---- 変換したファイルを Resource へ移動 ----
move %~n1.nftr %ZELDA_DS_ROOT%\Resource\Font\
@pause
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : fontcvtr.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Use the NitroSystem font converter to create font resources.
@rem
@rem Creator: Masahiro Nitta.
@rem
@rem Bitmap font file names to Argument 1:
@rem Argument 2: Color Count
@rem ---------------------------------------------------------------------------
cd /d %~dp1
rem ---- Copy NitroSystem font converter to Local. ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\NitroSystem\tools\win\fontcvtr %ZELDA_DS_ROOT%\Tool\NitroSystem
rem ---- Convert Fonts ----
%ZELDA_DS_ROOT%\Tool\NitroSystem\fontcvtrc -i bmp -if %~nx1 -io ds_ipl.xlor -ib %2 -o nitro -of %~n1.nftr -f zeldaDS.xllt
@if errorlevel 1 (@echo failed.) else (@echo [ %~nx1 ] converted to [ %~n1.nftr ].)
@rem ---- Move converted files to Resource. ----
move %~n1.nftr %ZELDA_DS_ROOT%\Resource\Font\
@pause
g2dcvtr.bat#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : g2dcvtr.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem NitroSystemのG2Dコンバーターを使ってバイナリリソースを作成する
@rem
@rem 作者:新田昌弘。管理者:大西直徳。
@rem ---------------------------------------------------------------------------
cd /d %~dp1
@rem rem ---- 以前のファイルを消去する ----
@rem del %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\*.n*
@rem del %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\*.b*
@rem del %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\*.n*
@rem del %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\*.b*
@rem del %ZELDA_DS_ROOT%\Resource\Menu\UI_main\*.n*
@rem del %ZELDA_DS_ROOT%\Resource\Menu\UI_main\*.b*
@rem del %ZELDA_DS_ROOT%\Resource\Menu\UI_sub\*.n*
@rem del %ZELDA_DS_ROOT%\Resource\Menu\UI_sub\*.b*
rem ---- G2Dランタイムバイナリフォーマットへ変換 ----
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr Bg\ColorPalette\Color0.ncl -o/Bg/bin
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr UI_main\Cell\UI_main.nce -o/UI_main/bin -lbl
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr UI_main\Cell\DebugFont_main.nce -o/UI_main/bin -lbl
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr UI_sub\Cell\map_obj.nce -o/UI_sub/bin -lbl
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr UI_sub\Cell\DebugFont_sub.nce -o/UI_sub/bin -lbl
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr common_main\Cell\common_main.nce -o/common_main/bin -lbl
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr common_sub\Cell\common_sub.nce -o/common_sub/bin -lbl
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr n_logo\Character\n_logo.ncg -o/RunTimeData/NintendoLogo/bin -bg
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr n_logo\ColorPalette\n_logo.ncl -o/RunTimeData/NintendoLogo/bin
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr n_logo\Screen\n_logo.nsc -o/RunTimeData/NintendoLogo/bin
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr right_txt\Character\right_txt.ncg -o/RunTimeData/NintendoLogo/bin -bg
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr right_txt\ColorPalette\right_txt.ncl -o/RunTimeData/NintendoLogo/bin
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\NitroSystem\g2dcvtr right_txt\Screen\right_txt.nsc -o/RunTimeData/NintendoLogo/bin
@if errorlevel 1 goto :END
rem ---- uiStudioデータをバイナリフォーマットへ変換 ----
%ZELDA_DS_ROOT%\Tool\jnlib\uiStudio.exe -o %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\UIProj\UI_main.uiproj %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin
@if errorlevel 1 goto :END
%ZELDA_DS_ROOT%\Tool\jnlib\uiStudio.exe -o %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\UIProj\UI_sub.uiproj %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin
@if errorlevel 1 goto :END
rem ---- アーカイブを作成 ----
chdir RunTimeData\NintendoLogo\bin
%ZELDA_DS_ROOT%\Tool\NitroSystem\nnsarc -r -b -e -s -E CVS -E NintendoLogo.narc NintendoLogo.narc .
move NintendoLogo.narc ../arc/
chdir ..\..\..
rem ---- 変換したファイルをResourceフォルダにコピー ----
copy Bg\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\Bg
copy UI_main\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_main
copy UI_sub\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_sub
copy common_main\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_main
copy common_sub\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_sub
copy RunTimeData\NintendoLogo\arc\NintendoLogo.narc %ZELDA_DS_ROOT%\Resource\Menu\Bg
@if errorlevel 1 (@echo 失敗しました。) else (@echo [ %~pnx1 ] を変換しました。)
rem ---- uiStudioのファイルをResourceフォルダ、およびProgramにコピー ----
rem NitroCharacterのファイルを移動
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_main
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_sub
rem ヘッダーファイルを移動
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\cellid* %ZELDA_DS_ROOT%\Program\Menu\include
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\cellid* %ZELDA_DS_ROOT%\Program\Menu\include
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\baseid* %ZELDA_DS_ROOT%\Program\Menu\include
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\baseid* %ZELDA_DS_ROOT%\Program\Menu\include
rem bnbl,bncl,キャラ、セルファイルを移動
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\UI* %ZELDA_DS_ROOT%\Resource\Menu\UI_main
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\UI* %ZELDA_DS_ROOT%\Resource\Menu\UI_sub
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_main\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_main
copy %ZELDA_DS_ROOT%\data\NitroCharacter\UI_sub\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\UI_sub
rem カラーパレットを移動する
copy %ZELDA_DS_ROOT%\data\NitroCharacter\Bg\bin\*.n* %ZELDA_DS_ROOT%\Resource\Menu\Bg
:END
@pause
mapobj.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : mapobj.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem NitroSystemのG3Dコンバーターを使ってマップオブジェのモデルを作成する
@rem まだ未作成です。
@rem バッチファイルだけで書くの面倒
@rem 作者:藤野洋平。
@rem ---------------------------------------------------------------------------
cd /d %~dp1
perl %ZELDA_DS_ROOT%\data\mapobj\makeMo.pl
@pause
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : mapobj.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Use the NitroSystem G3D converter to create map object models.
@rem Not yet complete.
@rem Trouble writing with only batch files.
@rem Creator: Yohei Fujino.
@rem ---------------------------------------------------------------------------
cd /d %~dp1
perl %ZELDA_DS_ROOT%\data\mapobj\makeMo.pl
@pause
other.bat#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : other.bat
@rem
@rem Copyright 2006 Nintendo. All rights reserved.
@rem ---------------------------------------------------------------------------
chdir /d %ZELDA_DS_ROOT%\data\other
chdir before
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv fallmaster1.tga -b -f tex4x4 -a3 -tc=0,0,0
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv fallmaster2.tga -b -f tex4x4 -a3 -tc=0,0,0
move fallmaster1.ntft ..\after
move fallmaster1.ntfp ..\after
move fallmaster1.ntfi ..\after
move fallmaster2.ntft ..\after
move fallmaster2.ntfp ..\after
move fallmaster2.ntfi ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv fire1.bmp -b -f tex4x4 -a3 -tc=0,0,0
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv fire2.bmp -b -f tex4x4 -a3 -tc=0,0,0
move fire1.ntft ..\after
move fire1.ntfp ..\after
move fire1.ntfi ..\after
move fire2.ntft ..\after
move fire2.ntfp ..\after
move fire2.ntfi ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv icon_key.tga -b -f palette16
move icon_key.ntft ..\after
move icon_key.ntfp ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv heart.bmp -b -f palette4
move heart.ntft ..\after
move heart.ntfp ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv note.tga -b -f palette4
move note.ntft ..\after
move note.ntfp ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv rupee_R.tga -b -f palette16
move rupee_R.ntft ..\after
move rupee_R.ntfp ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv rupee_G.tga -b -f palette16
move rupee_G.ntft ..\after
move rupee_G.ntfp ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv rupee_B.tga -b -f palette16
move rupee_B.ntft ..\after
move rupee_B.ntfp ..\after
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv bigrupee.bmp -b -f palette16
move bigrupee.ntft ..\after
move bigrupee.ntfp ..\after
chdir ..\after
%ZELDA_DS_ROOT%\Tool\NitroSystem\nnsarc -r -b -e -s -E CVS -E other.narc other.narc .
move other.narc ..
chdir ..
copy other.narc %ZELDA_DS_ROOT%\Resource\Other
@pause
SPRArchiver.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : SPRArchiver.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem jnlibのSPRアーカイバーを使ってパーティクルリソースを作成する
@rem
@rem 作者:新田昌弘。
@rem
@rem 引数1:にビットマップフォントのファイル名
@rem ---------------------------------------------------------------------------
cd /d %~dp1
rem ---- エフェクトアーカイブを作成 ----
%ZELDA_DS_ROOT%\Tool\jnlib\SPRArchiver -o %ZELDA_DS_ROOT%/Program/Effect/include/effect_%~n1.h %~n1 %~n1 %ZELDA_DS_ROOT%/Resource/Effect/%~n1.spa
@if errorlevel 1 (@echo 失敗しました。) else (@echo [ %~nx1 ] を [ %~n1.spa ] に変換しました。)
@pause
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : SPRArchiver.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Use the jnlib SPR archiver to create particle resources.
@rem
@rem Creator: Masahiro Nitta.
@rem
@rem Bitmap font file name to Argument 1:
@rem ---------------------------------------------------------------------------
cd /d %~dp1
rem ---- Create effect archive. ----
%ZELDA_DS_ROOT%\Tool\jnlib\SPRArchiver -o %ZELDA_DS_ROOT%/Program/Effect/include/effect_%~n1.h %~n1 %~n1 %ZELDA_DS_ROOT%/Resource/Effect/%~n1.spa
@if errorlevel 1 (@echo failed.) else (@echo [ %~nx1 ] converted to [ %~n1.spa ].)
@pause
test.bat#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : test.bat
@rem
@rem Copyright 2006 Nintendo. All rights reserved.
@rem ---------------------------------------------------------------------------
chdir /d %ZELDA_DS_ROOT%\data\test
chdir before
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv BgMap.tga -bgnv -bgnh -bgnc -no -f palette256 -bg -bgb -tc=0,0,0
move BgMap.nbfc ..\after
move BgMap.nbfp ..\after
move BgMap.nbfs ..\after
chdir ..\after
%ZELDA_DS_ROOT%\Tool\NitroSystem\nnsarc -r -b -e -s -E CVS -E BgMap.narc BgMap.narc .
move BgMap.narc ..
chdir ..
copy BgMap.narc %ZELDA_DS_ROOT%\Resource\Test
copy picture.narc %ZELDA_DS_ROOT%\Resource\Test
@pause
tool_jnlib.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : tool_jnlib.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem jnlibのツールをローカルにコピーする
@rem
@rem 作者:新田昌弘。
@rem ---------------------------------------------------------------------------
rem ---- jnlibのツールをローカルにコピー ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\jnlib\tools %ZELDA_DS_ROOT%\Tool\jnlib
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : tool_jnlib.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Copy jnlib tool to Local.
@rem
@rem Creator: Masahiro Nitta.
@rem ---------------------------------------------------------------------------
rem ---- Copy jnlib tool to Local. ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\jnlib\tools %ZELDA_DS_ROOT%\Tool\jnlib
tool_NitroSDK.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : tool_NitroSDK.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem NitroSDKのツールをローカルにコピーする
@rem
@rem 作者:新田昌弘。
@rem ---------------------------------------------------------------------------
rem ---- NitroSDKのツールをローカルにコピー ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\NitroSDK\tools\bin %ZELDA_DS_ROOT%\Tool\NitroSDK
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : tool_NitroSDK.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Copy NitroSDK tool to Local.
@rem
@rem Creator: Masahiro Nitta.
@rem ---------------------------------------------------------------------------
rem ---- Copy NitroSDK tool to Local. ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\NitroSDK\tools\bin %ZELDA_DS_ROOT%\Tool\NitroSDK
tool_NitroSystem.bat#
Original#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : tool_NitroSystem.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem NitroSystemのツールをローカルにコピーする
@rem
@rem 作者:新田昌弘。
@rem ---------------------------------------------------------------------------
rem ---- NitroSystemのツールをローカルにコピー ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\NitroSystem\tools\win\bin %ZELDA_DS_ROOT%\Tool\NitroSystem
Translation#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : tool_NitroSystem.bat
@rem
@rem Copyright 2005 Nintendo. All rights reserved.
@rem
@rem Copy NitroSystem tool to Local.
@rem
@rem Creator: Masahiro Nitta
@rem ---------------------------------------------------------------------------
rem ---- Copy NitroSystem tool to Local. ----
xcopy /i /d /y \\filer\nitro-zelda$\DevEnv\NitroSystem\tools\win\bin %ZELDA_DS_ROOT%\Tool\NitroSystem
update.bat#
@rem ---------------------------------------------------------------------------
@rem Project : zeldaDS
@rem File : update.bat
@rem
@rem Copyright 2006 Nintendo. All rights reserved.
@rem ---------------------------------------------------------------------------
chdir /d %ZELDA_DS_ROOT%\data\test
chdir before
%ZELDA_DS_ROOT%\Tool\NitroSDK\ntexconv BgMap.tga -bgnv -bgnh -bgnc -no -f palette256 -bg -bgb -tc=0,0,0
move BgMap.nbfc ..\after
move BgMap.nbfp ..\after
move BgMap.nbfs ..\after
chdir ..\after
%ZELDA_DS_ROOT%\Tool\NitroSystem\nnsarc -r -b -e -s -E CVS -E BgMap.narc BgMap.narc .
move BgMap.narc ..
chdir ..
copy BgMap.narc %ZELDA_DS_ROOT%\Resource\Test
copy picture.narc %ZELDA_DS_ROOT%\Resource\Test
@pause