トピック
カダル RCmini4wd

SAVE、LOAD命令が良く分からない。

変数を保存出来るみたいな事は 聞いたのですが、例えば、サンプルのRPGで 階数、武器、アイテムの数を保存する場合は どのようなプログラムになるのでしょうか? まだその辺は良く分からないので 解説して下さると助かります。
3そうだね
プレイ済み
返信[1]
親投稿
save "TXT:ファイル名",変数
3そうだね
プレイ済み
返信[2]
親投稿
kirarin 2015-manato
LOADはセーブした奴を呼び出すコマンド???
2そうだね
プレイ済み
返信[3]
親投稿
まず数値型の配列変数に保存したいものをしまいます SAVE "DAT:ファイル名",配列名
2そうだね
プレイ済み
返信[4]
親投稿
と、MIKIさんのVFILERっていうのがあるのよね。 一応キー見つけたけど最新かしら? 1KEXNK4V ファイル名と変数の一覧を渡すと保存してくれる VFSAVE ファイル名,変数の一覧(スペース区切り) VFLOAD ファイル名 ここでみつけた https://miiverse.nintendo.net/replies/AYMHAAACAAADVHkc6D8riA
1そうだね
プレイ済み
返信[5]
親投稿
みむ*mim hidemimtp
なるべく自作力を上げたほうがいいと思うので(ツールを使いこなすのも技術のうちですが)、少し具体的に書きます。 階数、武器、アイテムの数を保存するとして、アイテムが8種類だとすると、階数、武器No、アイテムNo8個、アイテム個数8個で、18個の数値を保存することになります。 ですので、要素数18の数値配列を用意し、そこにデータを各保存します。 DIM DAT[18] SV[0]=KAISU SV[1]=BUKI SV[2]=ITEM1NO SV[3]=ITEM1CNT SV[4]=ITEM2NO SV[5]=ITEM2CNT・・・ のようにして数値配列データを作り、最終的に SAVE "DAT:MYSAVE",DAT でファイルに保存します。ロードはこの逆です。
4そうだね
プレイ済み
返信[6]
親投稿
みむ*mim hidemimtp
あ、ごめんなさい、 SV[0]、SV[1]・・・ のところは全て DAT[0]、DAT[1]・・・ の書き間違いです!(^^;
2そうだね
プレイ済み
返信[7]
親投稿
bはかせ kojimadaiti
コメ残し
0そうだね
プレイ済み
返信[8]
親投稿
カダル RCmini4wd
皆さんありがとうございます! 早速試しますね。
1そうだね
プレイ済み
返信[9]
親投稿
MIKI ifconfig
あまさとさん、紹介ありがとうございます。 VFILER KEY=Y323VP4M が最新です。 https://miiverse.nintendo.net/posts/AYIHAAAEAABEVRTtQa5Q3Q 暗号化に対応しただけ。 手元には「一次元配列が自動で増えるバージョン」があるんだけど、試してないのでリリースできない・・・ だれか使ってくれる人いないかな?? みむさんの方法だと文字列を保存できないのよね。 あと変数を増やしたり減らしたりするときの変更も面倒。 自作力上げるのは賛成ですが、好きなことで自作力上げた方が楽しいよね。 変数の保存・読み込みルーチンを書くのが好き!! ってことなら自作オススメですが、 それよりも、パラメータいろいろいじって楽しみたい!! ってことであれば、有りものでさっさと済ますのがいいと思います。
3そうだね
プレイ済み
返信[10]
親投稿
画像は自分が作成中のツールの設定ファイルです 設定ファイル自体は直接書きかえられるようコメント付きで保存するようにしているので、こんな感じになってます これを文字列変数にLOADして 'で始まってるのや空行は読み飛ばして =の前後の値で変数に格納するようプログラムを書いています VAR("BEEP_VOL")=値のように書くとプログラムの変数に代入出来ます ゲームのセーブデータは座標やステータス、所持品の番号など数値データが多いですから こういうのは出番があまりないかもしれませんが参考までに書いてみました
2そうだね
プレイ済み
返信[11]
親投稿
iniファイル感あるね
1そうだね
プレイ済み
返信[12]
親投稿
カダル RCmini4wd
とりあえず組んではみたのですが、 ロードすると全ての値が0になって しまいました。どの辺りに間違いがあるのか、 教えて頂けないでしょうか? DIM DT[3] LEVEL=DT[0] PEQUIP=DT[1] PHP=DT[2] (セーブ時)SAVE "DAT:SV",DT (ロード時) LOAD "DAT:SV",DT,0 LEVEL=DT[0] PEQUIP=DT[1] PHP=DT[2] LEVELは階数、PEQUIPは武器、 PHPは体力です。
0そうだね
プレイ済み
返信[13]
親投稿
DIM DT[3] DT[0]=LEVEL 代入の基本は『右から左へ』です 左から右はありえません なので、DTの中身は空っぽのままとなります
3そうだね
プレイ済み
返信[14]
親投稿
みむ*mim hidemimtp
セーブはゆうまごさんのご指摘どおり、右辺と左辺が逆ですね。 ロードは見た感じでは正しそう。 >MIKIさん 現代は特に、既存のいいソースがあるのにいちいち自作してたら無駄だし、仕事だったらおこられますね。 時代によって求められるスキルは違うし、今はソース書きよりも既存のものをうまく見つけて使いこなす方が求められると思います。ソース書くより、RPGツクールを器用に使いこなせるほうが職があったりして。。。 (でもまぁおっさん的には「これくらいは自作できるようになろうよ」と古い考えで思ってしまうのですが)
3そうだね
プレイ済み
返信[15]
親投稿
みむ*mim hidemimtp
あ、ゆうまごさんになってる(汗) りゅうまごさん、失礼しました。
0そうだね
プレイ済み
返信[16]
親投稿
> あまさと しおんさん パソコンのプログラムで使うiniファイルを意識して作った部分なので そう言って貰えるのは嬉しいですね(^^) 昔はオプション画面が無くて設定ファイル直接書き換えて使ってね という形だったのもあってコメント多めだったりします
1そうだね
プレイ済み
返信[17]
親投稿
> みむ*mimさん 脳内補完が働いて気づかなかった・・・!> ゆうまご 脳内補完って恐ろしいですね(笑)
0そうだね
プレイ済み