WorldMapEditor2023 操作と地形データ Too many files マジで!? | MSXさいたま仮想鉄道ブログ

MSXさいたま仮想鉄道ブログ

A列車で行こう9の仮想鉄道ブログです。

お久しぶりです。今回はワールドマップエディタのことを書きたいと思います。
夏は暑いのでプログラミングよりも音楽や画像などのデータを作ったりしていきます。

 

前回はこんな感じでプレイヤーのスプライトに変えて試してみました。
スプライトは2色の設定にします。
1色目は白で輪郭を描いて、2色目は塗りつぶすみたいな感じです。
 

移動はVDPが遅いのもあり画面切り替え方式になると思います。

これはイースとか真魔王ゴルベリアスなどを見ると
市販ゲームでもスムーズにスクロール移動は難しいのでやめました。

スプライトを動かすほうが何倍も速いです。


マップ編集では座標を飛ばして倍速移動は考えています。
というわけでテストマップを描いて作っていきました。
 


これはまだマップ作成前のひな形でワールド画面で1x1から9x9ぐらいまで地形パーツを埋める機能で
おおざっぱに描けます。
色を選んで数字キーを押すと塗りつぶす範囲が広くなります。
紙でマップを描いたものをすぐに短時間で写すことができそうです。
右上のほうが少し細かく描き直しています。
残りの色のイメージを地形に変えていきます。


次回のアップデートでは操作方法を若干変えます。
今まで上の画面で色を読み取って地形パーツの塗りつぶしをしていましたが

次回はInsキーはWindowsではほとんど使わないので
マップ編集画面でTabキーを押して地形パーツを選べるようになりました。
8,9の赤い色は溶岩エリアでちょっとリアルな感じに仕上げました。
カラーコード6は土のパーツに変えてみました。

 


今度は寒冷地です。氷はカラーコード7の水色です。

寒冷地のマップは氷と雪上マップで船の航行できる場所とできない場所を設定できます。
カラーコード12の緑はツンドラの設定で雪が降った樹木をイメージしました。




さらに砂漠など乾燥地は11にしました。
10は村や町などにして12は城下町や砦などのパーツにしました。

 

 

キャラクタエディタはカーソルの動きが速すぎるので調整しました。
これで全て配置とイメージができました。
ダウンロード追加分と大きく変わりましたがこんなふうになります。
残りは黒の1ですが地下にも対応できるようにします。

さらにカラーコード4は影(闇)のような設定を考えています。

 

次回の公開ではAドライブを空けてBドライブ、B-DISCの使い方にします。
MSX-DOS(DOS1)の場合はカレントドライブの設定(CALL CHDRV)ができないので
BドライブならSAVE"B:ASB.BAS"のようにB:を加えるので一手間かかります。
そこでBドライブ、B-DISCは配布したファイルを使うようにして、
Aドライブはもっと自由に保存できるような環境に戻すことにしました。
 

この作業中ですが、こんなエラーがMSXで出ることがあります。
MSXBASICはわからない英語が出てもパソコンが動かなくなることは全くありません。
スロットをいじったり、かなり無茶なことをしなければ何をやっても壊れません。

トゥメニーファイルズと出て「ファイルが多すぎます」と表示されます。
112ファイルを超えると保存できない状態になります。マジです。
もし、保存できなくなった場合は裏RAMをメモリディスクとして解放します。
MEM:ドライブがマウントされてメモリディスクに仮保存します。
MEM:ドライブのFILESはCALL MFILESです。

バイナリファイルの保存はできません。


回避策は1つのファイルを削除するか複数のファイルを1つのファイルにします。
複数のファイルにする方法はファイルに混合させる(マージ)作業になります。
メニュー画面を作って、AプログラムとBプログラムというふうに選択にする方法や
プログラムにTF=1というふうに設定を加えてTFが1なら2つ目のプログラムに分岐させて
データファイルのデータを加えることや、ファイルをDATA文を変えるなどいろいろな方法があります。

一番簡単なのは行番号がかからないように1000行にRENUMしてSAVE"B.BAS",Aでアスキー保存して
LOAD"A.BAS"をロードした後にMERGE"B.BAS"をロードすれば1000行からはBプログラムになります。
AプログラムにBプログラムを分岐させるようにしたらRENUMしてSAVE"A.BAS"として保存できれば

A.BASにB.BASのプログラムがあるのでKILL"B.BAS"します。これを繰り返してファイル数を減らします。

DATA文にするにはCOPY"A.TXT"TO”CON"でA.TXTのファイルを表示させてロード内容を写して
数行のデータならばMA$(1)="BAGFEDC4"というふうに例えば5行目ならMA$(5)="END"みたいに
配列変数に変えてデータファイルを使わない方法もあります。

ディスクの空き容量はPRINT DSKF(1)で確認できます。BドライブはDSKF(2)です。
FILES,Lで属性とファイルサイズが表示されます。

ほとんどのファイルをBドライブに変えたのでAドライブは400程度空きができました。
ディスク整理をして新しいプログラムを入れる準備ができたので、

次回はいよいよメニュープログラムにTALK形式のメッセージプログラムが入ります。

「あ、そうだ忘れてた!」カラー4は廃墟(塔、洞窟など)の地形パーツを紺色にします。
次回も地形パーツのネタを書きますので、では。