検索
<< 2024年12月 >>
1
2 3 4 5 6 7
8
9 10 11 12 13 14
22
23 24 25 26 27 28
29
30 31
広告
駿河屋レトロゲーム
最新記事
ブログランキング
にほんブログ村 ゲームブログ ゲーム制作へ
プロフィール
J-JSOFTさんの画像
J-JSOFT
高校時代、あれほど熱心に取り組んだMSXに触れなくなって30年余…。 MSXエミュレータとの出会いで、MSX愛が再燃中。
カテゴリーアーカイブ
ファン
QRコード

2023年07月14日

簡易MMLコンパイラ Ver.2.0




このツールの上位版である、「 MMLコンパイラ(通常版)Ver.1.1 」を2024年3月26日に公開しています。




T5_1.png




ツール??

5

製作年

1990〜2023年


タイトル

『 MML COMPILER Ver.2.0 』



対応機種

MSX1、MSX2、MSX2+、MSXturboR



ダウンロード




『基本操作』
プログラムを「LIST」表示します。
プログラム最初にあるDATA行部に、作成したMMLをパート毎に登録してください。
T5_2.png
登録が終わったら「RUN」実行。
BGMデータを書き出すファイル名(デフォルト:「MML」)と、データの先頭アドレス(デフォルト:「&HC000」)を入力して下さい。
「Now Compile…」と表示されコンパイルが開始します。
コンパイルが完了したら「Complete」のメッセージと、BGMデータの開始と終了アドレスが表示されプログラムが終了します。
BGMデータは1パートに付き1ファイルとなります。
例えばA、Bパート2重奏のBGMの場合、A、BパートMML打ち込みが終わったら、まずBパートをコメントで潰して、Aパートのみでコンパイルし、次にAパートをコメントで潰して、Bパートのみでコンパイルします。

オールBASICですので、MMLデータの大きさによっては、完了までに時間を要します。

『追加機能』
デフォルト(RENUMしていない)の状態で「GOTO 1450」実行で演奏開始。(オクターブ上下(<、>)を使っている場合はエラーとなります。)
「GOTO 1380」実行でDATAリスト表示。(BGMデータを別ファイルにせず、プログラム本文に組み込む場合は、この機能をご利用下さい。)

『簡易MML仕様』
【書式例】
C+4
D
A-2.
F.


【音階】



C

D

E

F

G

A

B





ファ






【半音】
半音下げる時は「 -」、半音上げる時は「 +」を音階に付けます。

【長さ】
全音符を「 1」として、64分音符「 64」まで使えます。
音階に付けます。
デフォルトの長さなら付ける必要なし。

【付点音符】
長さにピリオド「 .」を付けると付点音符となり長さを半分伸ばします。
(4分音符に付けると、4分音符+8分音符になる。)
2段階まで可。(「 ..」4分音符+8分音符+16分音符)

【コマンド一覧】
T(テンポ)やV(ボリューム)、S、M(エンベロープ)は使えません。



コマンド

意味


O

オクターブを設定する。(1〜8)【例】O2


>

オクターブを1上げる。


<

オクターブを1下げる。


L

デフォルトの音の長さを設定する。(【長さ】参照)【例】L4


R

休符。(【長さ】、【長さ延長】参照)【例】R4.



【作成ファイルレイアウト】



1音(3バイト)

2音(3バイト)

...

最後


音程下位8ビット

音程上位8ビット

長さ

音程下位8ビット

音程上位8ビット

長さ

...

FF



posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年07月10日

【ゲーム制作】3Dダンジョンロールプレイングゲーム 第5回



3Dダンジョンロールプレイングゲーム第5回目です。
未だマウスが使えず、全くFONT作成捗りません。

昨日1日掛けて「BlueMSX」の他、いろんなMSXエミュレータ触って試しましたが、どれもマウス動かない…。
おかげで更新1日空いてしまいました。
うーん、これだけやって動かないって事は、もしや実機でも動かない可能性もあるのかな?
実機持ってないので試せません…。

とりあえず制作進めるために簡単にFONT作成したので、しばらくはこの(仮)FONTで進めます。
(仮)なので非常に雑ですが、画面イメージはこんな感じになります。
7_11_1.png
とりあえず、ジョイスティック使ってポチポチドット打ちして制作しました。
あぁ、面倒臭い!
敵モンスターのデザイン始める頃に、まだマウス使えなかったら止めるかも…。

では、システム面を考えていきます。
見た目はレトロでも、操作性に関するシステムは新しいもので行きたいと思います。

【設定?@】自動マッピング機能の有無?
【決定】今回は広いマップを作るわけでもないので、「無し」でいきます。

【設定?A】メッセージエリアにステータス等を表示するか?
【決定】メッセージエリアを分割すると狭く感じるから、メッセージエリアは基本メッセージのみ。
コマンドメニュー等をBボタンでメッセージエリアにメニュー表示。(上部に表示するとFONT書き換えが必要になり遅くなるから。)

【設定?B】そうするとメッセージエリアが狭くないか?
【決定】昔よくあった「見る」「調べる」など面倒くさいコマンドはなくして選択肢を減らす。
だから宝箱などがあった際は、Aボタンで開く。
人がいた場合も、Aボタンで話す。

【設定?C】パーティ制の採用?
【決定】うーん…、本格的なものは次にするので、今回はソロでいきます。

【設定?D】アイテム、お店、宿屋の有無?
【決定】必要なので、スタート地点の壁に商人と宿を埋め込んで置いておくことにします。

…とりあえず、現段階ではこれくらい決めておけば大丈夫。
パーティ制でなければ、初期段階でそこまでガチガチに決めなければならないこともないかな。
色々無理そうなら、都度方針変更の予定です。

次回からプログラムに入ります。

posted by J-JSOFT at 22:30 | Comment(0) | TrackBack(0) | 開発

2023年06月16日

TONE ORGAN Ver.1.0

T4_1.png




ツール??

4

製作年

1990年


タイトル

『 TONE ORGAN Ver.1.0 』



対応機種

MSX1、MSX2、MSX2+、MSXturboR



ダウンロード




『基本操作』
キーボードのキーを押すと、下図キーに対応した音階が鳴ります。
和音対応です。

t4_2.png

画像出展:『株式会社PFU』
https://happyhackingkb.com/jp/special/kb_collection/
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年06月10日

【ゲーム制作】3Dダンジョンロールプレイングゲーム 第4回




3Dダンジョンロールプレイングゲーム第4回目です。
今回はダンジョンの描画パターンを考えていきます。
見える範囲を狭くしたのでパターンはかなり絞られます。
前回言った通り、エリアを5つに分けて考えます。
6_11_1.png

まず、右側?Xから考えていきましょう。
パターン1、壁がある。
6_11_2_1.png
パターン2、壁がなく?Wが壁
6_11_2_2.png
パターン3、壁がなく?Wの壁なし
6_11_2_3.png
この3パターンですね。
次に、右側?Wを考えます。
パターン1、壁がある。
6_11_3_1.png
パターン2、壁がなく、その先は壁
6_11_3_2.png
パターン3、?Vが壁
6_11_3_3.png
他パターンとして、「壁がなく、その先は壁なし」が考えられますが、これは最初に決めたダンジョンの構造上有り得ません。
このパターンが発生するのは正面?Vに壁がある場合のみですので、その場合パターン3となります。
と、言う事でこちらもこの3パターンです。
次に、中央?Vを考えます。
パターン1、?Vが壁
6_11_4_2.png
パターン2、?Vは壁なし、その先は壁
6_11_4_1.png
パターン3、?Vは壁なし、その先は壁なし
6_11_4_3.png
こちらも3パターンです。
?Tと?Uは、それぞれ?Wと?Xと同じになりますので、それぞれ3パターンです。
と、言う事は色分けした各エリアそれぞれ3パターンずつ、計15パターンの画像を用意すれば良いと言う事です。
次回はFONTを描いて、実際の画像をイメージします。

posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年06月08日

【ゲーム制作】3Dダンジョンロールプレイングゲーム 第3回




3Dダンジョンロールプレイングゲーム第3回目です。
今回はダンジョンの描画範囲を考えていきます。

まず、3Dダンジョンでどこまで先が見えるのかの範囲を決定します。
今回は描画パターンを抑えるため、2歩先の前面の壁までが見える範囲とします。
6_1_4.png

その先は真っ暗で見えなくします。
「もっと先が見えた方が良いんじゃないの?」と思われるかも知れませんが、演出的にもあまり先が見えない方が3Dダンジョンぽくていいのではないでしょうか?
しかも、範囲を広げると描画するパターン数が増えるので管理が大変です。
完成後プレイするとわかるのですが、手間をかけた程ゲーム性に影響がなくがっかりします。(経験談。自己満足感はあります。)
それよりかは、プレイする側としては迫力ある大画面(上部2/3)で高速な3Dダンジョン描画の方が、体感的にもインパクトが大きいです。
まぁ、近代建物系の3Dダンジョンなら、明るいので先まで見えないと逆に不自然かも知れませんが…。

では、2歩先までの描画なら、なぜパターンが抑えられるのか?
具体的に説明すると、まず、平面図に?b?付け分かりやすくします。
6_6_2.png

次に、平面図に付けた?bノ対応する様に、3D図にも?b?付けます。
6_6_1.png

これを見てもらえれば分かりやすいと思いますが、見える範囲を広げると、色分けしたエリアが細分化されどんどん増えていきます。
管理が大変といった意味お判りいただけたでしょうか?

では、次回は各パターンを考えます。

posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年06月04日

【ゲーム制作】3Dダンジョンロールプレイングゲーム 第2回



3Dダンジョンロールプレイングゲーム第2回目です。
前回EXCELで描いたイメージだと、最奥の描画が歪になるので描き直しました。 (2023年5月29日記事参照「 【ゲーム制作】3Dダンジョンロールプレイングゲーム 第1回 」)
6_4_1.png
少し道幅を狭く見せる事で奥へ向かう角度を付けて、歪さを解消しました。
このイメージで決定します。

次に平面マップを考えます。
今回は、奇数行と奇数列を壁とするダンジョンとします。
6_1_1.png
オレンジが奇数行と奇数列です。

こうする事で、描画パターンを抑制することが可能です。
次回は3Dダンジョンの描画範囲について考えます。

posted by J-JSOFT at 03:20 | Comment(0) | TrackBack(0) | 開発

2023年05月29日

【ゲーム制作】3Dダンジョンロールプレイングゲーム 第1回



製作再開第1作品目として3Dダンジョンロールプレイングゲームに決定しましたので、ボチボチ制作進めていこうと思います。
まず手始めに、イメージを捉えやすくするために、画面構成イメージを簡単にエクセルを使って描いてみました。
5_10_1.png
うーん、エクセルって本当便利ですね。
上部2/3、16キャラクタ分を使い、3Dダンジョンを表示します。
MSXのゲームってマップ表示やらが小さいものが多いですよね。
速度稼ぎの為なのか、メモリ稼ぎの為なのかはわかりませんが、「ドラクエ」のように全画面マップの方がいいのに!って思ってた時期がありました。
そこで今回、3Dダンジョンを大画面で描画したいと思います。
まぁ、プログラミングの勘を戻すための習作なので、FONTに時間取れないのであまり凝ったものは描けないけど、迫力はあると思います。

そして敵と遭遇した時は、上部2/3を使って敵グループを表示します。
こちらも敵が最大6体くらいのパーティ組んで現れることを想定したいな…。

敵とのエンカウントはとりあえず置いておいて、先にダンジョン探索部分を完成させることにします。
次回は、ダンジョン描画の考え方について説明します。

posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年05月20日

3Dダンジョンロールプレイングゲーム



製作再開一発目決まりました。
「3Dダンジョン型ロールプレイングゲーム」です。
要するにアスキーの「WIZARDRY」タイプですね。
5_20_1.png
画像出典: 『Game Database』
https://refuge.tokyo/msx/msx/00653.html


実は、3Dダンジョン系のロールプレイングゲームは意味なく嫌っていたので、MSXでは製作したことはありませんでした。
私は日本ファルコムの「イース」タイプのARPGが大好きだったので、「ドラクエ」タイプもほとんどこの時期プレイしたことがありません。 (2023年4月14日記事参照「 ブログタイトル画像更新 」)
5_20_3.png
画像出典: 『Game Database』 イース MSX2版
https://refuge.tokyo/msx/msx/00718.html


専門学校時代に、友人からドラクエの処理について「どうやってるのか教えて」とヘルプされたのをきっかけに、ロジックを教えるためだけにプレイしたのが始めです。
その後も、ドラクエタイプにはハマることなく、ドラクエタイプのロールプレイングゲームは、作るだけの人でした。

では、検証内容は前回示した通り、
?@基本はBASIC
?ABASIC部で「MuSICA」でBGM演奏
?Bマップ表示はマシン語
?C敵表示用のFONT書換えもマシン語
で行きます。
仕事で忙しいときは製作が進みませんが、ゆっくりやっていこうと思います。

posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年05月17日

MAP8 EDITOR 活用方法

2回目はツールで作ったデータの活用方法について説明します。
このMAP8 EDITORで作成したデータは、保存すると各データ下記アドレスに保管されBSAVEされます。



メモリアドレス

データ種別

詳細


&HA000〜&HBFFF

マップデータ

最大&H2000=8,192バイト


そのデータを表示してゲームに使えるようにするサンプルプログラムを用意しました。
起動すると、下画面が表示されます。
俗に言う、MSX2のSCREEN1.5のSPRITEモード2を使用しています。
5_17_1.png

プログラムは簡単なので特に解説は不要かと思います。
「MAP8SMPL.BAS」【 ダウンロード
5_17_2.png

自作プログラムに組み込むには、下記の部分が必要です。



行番号

内容

説明


190

MAP8PRT.BIN

フォントデータVRAM転送マシン語プログラム

210〜230

表示範囲

マップの表示の範囲と、マップ全体の横幅を指定


310〜340

マップ表示サブルーチン

変数AYに全体マップの表示範囲左上のY座標、変数AXに全体マップの表示範囲左上のX座標を代入し、310行のサブルーチンをコールすると、アドレスを計算しマップ表示するサブルーチン


このプログラムでは、最も時間のかかるであろうマップ表示部分をマシン語で組んでいます。
「MAP8PRT.BIN」(180行)
下記機能を提供します。



実行アドレス

機能

詳細



&HC0B8

マップ表示

指定のアドレスから、指定の幅と高さ分の範囲にマップを表示する

最大32フォント×24フォント=768バイト


マシン語アドレスを変えたい人用に、MAP8PRT.BIN作成用のBASICプログラムを用意しました。
起動すると、MAP8PRT.BINを作成します。
「MAP8PRT.BAS」【 ダウンロード
5_17_3.png
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年05月16日

MAP8 EDITOR Ver.2.5

T3_2.png




ツール??

3

製作年

1990〜2023年


タイトル

『 MAP8 EDITOR Ver.2.5 』



対応機種

MSX1、MSX2、MSX2+、MSXturboR



ダウンロード




『起動時』
起動するとコントローラーの選択です。
5_14_2.png
マウスが絶対お奨めです。

『基本操作』
操作はマウスを基準としています。
「+」カーソルを動かし、所定の位置でクリックすることで任意の動作を行います。
マウス移動:キーボードのカーソルキー、ジョイスティックの十字キー
マウスの左クリック:キーボードの「スペース」バー、ジョイスティックのAボタン
マウスの右クリック:キーボードの「GRAPH」キー、ジョイスティックのBボタン

『サンプルデータ』
操作を覚えるためのサンプルデータとして、上記データを「SAMPLE.MP8」と「SAMPLE.FNT」としてディスク内に同梱してあります。

『設定画面説明』
5_16_2.png

『エリア説明』



??

エリア名

詳細



1

フォント確認エリア

読み込まれたフォントを表示します


2

カラーエリア

色を直接左クリックすることで、RGB変更する色を選択します(その色の下に「選択カーソル」が付きます)

カラー上で右クリックすると、初期色に戻ります。


3

コマンドエリア

をクリックすることで各命令を実行する。(コマンド説明参照)



『コマンド説明』



??

表記

ボタン

クリック

命令名

詳細



1

CHANGE EDITOR



エディット

エディット画面へ移行



2

R



赤値

選択されたカラーのRGB赤値を0〜7まで指定



3

G



緑値

選択されたカラーのRGB緑値を0〜7まで指定



4

B



青値

選択されたカラーのRGB青値を0〜7まで指定



5

XPOS



横幅

マップ全体の横幅を指定する(1単位)



      〃      (10単位)


6

YPOS



高さ

マップ全体の高さを指定する(1単位)



      〃      (10単位)


7

SAVE



セーブ

データを保存する(空入力でキャンセル)



8

LOAD



ロード

データを呼び出す(空入力でキャンセル)

フォントデータ展開の際にマップデータを破壊するので、先にフォントデータを読み込んで下さい



9

FONT



フォント

フォントデータを呼び出す(空入力でキャンセル)

フォントデータ展開の際にマップデータを破壊するので、マップ編集途中でフォントを切り替える際は、マップデータをセーブし、切り替え後ロードして下さい

読み込んだフォントによっては▲が分らなくなるのでご注意下さい



10

NEXT



次メニュー

将来拡張用(現在未使用)



『エディット画面説明』
5_16_3.png

『エリア説明』



??

エリア名

詳細



1

エディットエリア

左クリックで選択されたフォントを描きます

右クリックで「描画カーソル」を移動します

連続で描画したい時は「フォントエリア」の描きたいフォントを右クリックで「描画カーソル」に描画し、「描画カーソル」は右へ移動します

▼▲で表示範囲を下上右左へ移動


2

コマンドエリア

をクリックすることで各命令を実行する。(コマンド説明参照)


3

フォントエリア

表示されたフォントを左クリックすることで、フォントを選択します(そのフォントに「フォント選択カーソル」が付きます)



『コマンド説明』



??

表記

ボタン

クリック

命令名

詳細



1

CHANGE



チェンジ

フォントエリアに表示されるフォントを変更

2

CLEAR



クリア

エディットエリアをクリア



全クリア

マップ全体をクリア




フル

エディットエリアを選択されたフォントで埋める


全フル

マップ全体を選択されたフォントで埋める



3

SETTING



セッティング

設定画面へ移行


posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発
Build a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: