アフィリエイト広告を利用しています
 

2024年12月10日

【ゲーム制作】シューティングゲーム 第59回






シューティングゲーム 第59回です。
今回は、前回デザインしたボスデザインを「.FNT」ファイル化します。

「.BMP」ファイルで、256FONTに並べたものに1FONTずつコピーして並べていきます。

1面「鯨」
24_12_10_1.png
動きを取るか、向きを取るかの二者択一…。
動きを取ってしまいました…。
右向きだけです…。

2面「マンボウ」
24_12_10_2.png
最初は「FONT数足りないかな」と、思ったのですが、ベタ塗(8×8ドット1色)が多かったので、FONT数はそれほど多くなかった…。
でも、左向きだけです…。

3面「大王イカ」
FONT数も、やっぱり「大王」。
上段と中段でFONTを分けます。
24_12_10_3.png
24_12_10_4.png

並べ終わったら、後は「BMTtoMSX」にて「.SC2」に変換して、変換したファイルを「SC2toFNT」にて「.FNT」化します。(2024年07月21日記事参照「【ゲーム制作】シミュレーションゲーム 第7回」
最後に「FONT EDITOR」に取り込んで微調整します。
24_12_10_5.png

次回は、動きを考えます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月09日

【ゲーム制作】シューティングゲーム 第58回






シューティングゲーム 第58回です。
今回は、ボスのデザインを考えます。

ボスを作る際、考えなければならないことは、SPRITEにするか、FONTにするかです。
64×64ドット1色ならばSPRITE、それ以上ならばFONTにする必要があります。
今作は大きくしたかったので、FONTでボスキャラをデザインします。

「.BMP」ファイルで適当にデザインして、「BMPtoMSX」に取り込んだ状態です。
適時「BMPtoMSX」でコンバートして確認しないと、色の滲み具合とかが判らない…。

1面は「鯨」
24_12_9_1.png96×48ドット(12×6FONT)
24_12_9_2.png96×40ドット(12×5FONT)
やっぱり元気に泳がせたいですよね。
2枚目の「目」が赤くない…、後で位置ずらして調整します。

2面は「マンボウ」
24_12_9_3.png96×112ドット(12×14FONT)
しまった!
鯨との大きさ考えてなかった…。
大きすぎてあまり動けない…。

3面は「大王イカ」
24_12_9_4.png192×96ドット(24×12ドット)
動きません。…と言うか、動かせません。
む…、左目が潰れちゃってる…。

こんなとこですかね?

次回は、「.FNT」ファイルに変換します。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月08日

【ゲーム制作】シューティングゲーム 第57回






シューティングゲーム 第57回です。
今回は、敵関連のデバッグを行います。

個々のデバッグは相当数行っていますので、統合した状態でのデバッグとなります。
仮で全行動パターンを設定した敵出現データを使い、デバッグをします。

敵の弾発射確率をグンと下げて、狙撃弾を撃ってくることがわかる程度に抑えます。
効果音はまだです。
適当な音が鳴りますが、気にせずに。


おおー、完璧です。
まぁ、各回でかなりのデバッグやってますからね…。
ここまでの苦労が報われました…。

次回は、ボスのデザインを考えます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月07日

【ゲーム制作】シューティングゲーム 第56回






4_19_1.png

シューティングゲーム 第56回です。
今回も、敵初期値設定を組んでいきます。

C最後は、引数が速度のもの。
「直進」と、「斜め直進」がこれを利用します。

「直進」は引数で1〜3を指定する事で、3段階の速度指定が可能です。
「斜め直進」は、もっと早いのが必要と考え、1〜8を指定する事で8段階まで対応します。

さらに「斜め直進」は、X座標全域から出現するものと、画面を左右に分割しプレイヤーがいない側から出現する2パターンを用意します。

以上で、ボスを除く敵ロジック完了です。
敵のパターン作成からここまで、もの凄い時間が掛かってしまいました…。
実質、ブログの日数の倍はかかってるんじゃないかな…。
シューティングゲーム開始前に溜めた記事を結構吐き出してしまいました。

次回は、ここまでの一通りのデバッグを行います。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月06日

【ゲーム制作】シューティングゲーム 第55回






シューティングゲーム 第55回です。
今回も、初期値設定を組んでいきます。

B次に、引数がX座標のもの。
こちらは以前にも書きましたが、引数に16を掛ける事で、横256ドットに対応しています。

ついでに、引数を使わずに「X座標はランダム設定」をできるようにします。
初期値のX座標に任意値を設定する事で機能します。















X座標設定内容
&HFF画面(256ドット)を左右に分け(128ドットずつ)、プレイヤーのいない側128ドットからランダム
&HFEX座標256バイトからランダム

&HFD

&HFC
特定パターン用

「直進」、「斜め直進」、「16方向弾」等がこれを利用します。

24_12_6_1.png

次回も、敵初期値設定を組んでいきます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月05日

【ゲーム制作】シューティングゲーム 第54回






シューティングゲーム 第54回です。
今回は、敵初期値設定を組んでいきます。

敵初期値設定では、敵出現データから引き渡された「編隊avに応じた初期値データを読み込んで、敵変数に設定します。
同じく引き渡された「引数」によって動作が異なるので、引数の種類ごとに分けて組んでいきます。

今作では、引数には次の種類があります。






















引数主なパターン
@なし「16方向弾」
A隊列数「円移動」「波状」「半円移動」
BX座標「スクロールに合わせ直進」
C速度「直進」「斜め直進」


@まずは、引数がないもの。
ループ回数を強制的に「1」として、初期値データそのままを初期値として敵変数に設定します。

A次に引数が隊列数のもの。
引数分ループして、敵データに初期値を設定します。
この時、1ループ毎に待機カウンタをアップして隊列移動するように設定します。

24_12_5_1.png

次回も、敵初期値設定の続きを組んでいきます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月04日

【ゲーム制作】シューティングゲーム 第53回






シューティングゲーム 第53回です。
今回も、敵出現設定を組んでいきます。

前回、テスト用敵出現データを用意しました。
どれだけスクロールしたかをカウントするために、「距離カウンタ」を用意します。
1スクロール(8ドット)する毎に距離カウンタを+1していき(520行〜550行)、その距離に応じた敵出現データを読み込み、敵を出現させます。

24_12_4_1.png

「編隊a{引数」を読み込み、「編隊avと「引数」に分離して敵初期値設定へ処理を移します。

最後、共通設定でプレイヤーのX座標が中央より右サイドなら「左右反転フラグ」に「1」を設定します。(760行〜780行)
この時、「直進」など「左右反転」の必要のない「編隊avは、「左右反転フラグ」に強制的に「0」が設定されるよう、飛び先を指定します。

次回は、敵初期値設定を組んでいきます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月03日

【ゲーム制作】シューティングゲーム 第52回






シューティングゲーム 第52回です。
今回は、敵出現設定を組んでいきます。

敵出現設定とは、敵出現データ(スクロールシューティングで言うなら、「マップのこの地点でこの敵が出現する」スケジュール表のようなもの。)を読み込んで、スケジュール通りに指定の敵を出現させる設定です。
スクロールシューティングのように面データがあれば、面データ内に組み入れて設定できますが、今作はマップが存在しません。
よって、別途敵出現データを用意します。

データとして設定するのは、前回設定した編隊a{引数。
「マップのこの地点で円移動キャラクタが8匹隊列組んで出現!」を設定します。

今作は、1スクロール(8ドット)当たり、1データ(1バイト)。
1スクロールに、1つの編隊b出現させます。
もし、同じタイミングで別々の編隊b同時出現させたければ、2バイトにするか、そういった編隊b組む事で対応可能です。

データ1バイトの形式は下図のとおり。
24_12_2_1.png
1バイトを上位4ビットと下位4ビットに分け、それぞれ0〜15まで指定可能です。
上位4ビットを編隊aA下位4ビットを引数とします。
例えば編隊2の敵を6機出現を設定したければ、&H26と言った感じです。
もし、引数指定にX座標(256ドット)など、15を超えた値が必要な時は、引数に16掛ける(15×16=240、キャラクタが16ドットなので240が右端)など、多少工夫する事で、対応可能です。
それでも、どう工夫しても編隊aA若しくは引数が16を超える場合は、1データ2バイトにせざるを得ませんね。

1面の長さは、今作では1面当り256バイトとします。
2分から3分くらいかな?(標準がどのくらいか判りませんが…。)
256FONT分スクロールしたらボスとなります。

で、今は敵出現データにテスト用に全編隊b設定しておきます。
(&H00は「何も出現しない」です。)

24_12_2_2.png

次回は、敵出現設定の続きを組んでいきます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月02日

【ゲーム制作】シューティングゲーム 第51回






4_19_1.png

シューティングゲーム 第51回です。
今回はちょっと一息、ゲームの進捗管理をします。

ロールプレイングゲームの時にやって以来です。
これまでは進捗管理しなければならないほど工程がなかったので必要なかったのですが、シューティングゲームはそれなりにあるので必要です。
【ゲーム製作進捗】






















































































































































工程作業進捗
1ゲーム設計(規模、詳細、メモリマップ)完了
2シナリオ作成完了
3オープニグ作成完了
4タイトル作成完了
5マップ設計(1画面)完了
6FONTデザイン完了
7SPRITEデザイン完了
8疑似スクロール完了
9プレイヤー移動完了
10プレイヤー弾発射完了
11敵表示完了
12敵の弾狙撃設定完了
13敵の弾移動完了
14BGM作曲(5曲)完了
15BGM演奏完了
16SPRITEシャッフル完了
17衝突判定(プレイヤーVS敵の弾)完了
18衝突判定(敵VSプレイヤーの弾)完了
19衝突判定(敵VSプレイヤー)完了
20衝突判定(敵・敵の弾VSバリア)完了
21敵移動(LABO4種)完了
22敵移動(LABO亜種3種)完了
23敵移動(新種2種)完了
24敵移動(直進系3種)完了
25敵移動(16方向弾)完了
26パワーアップ完了
27敵出現設定
28敵出現データ作成
29敵編隊pン定
30敵編隊cfータ作成
31効果音作成
32エンディング
33ボスデザイン
34敵1面ボス
35敵2面ボス
36敵3面ボス

うーん、全体で70%と言ったところでしょうか…。
残りの内容的に、簡単にはいかなさそう…。
しかし、次回作を考えているので、年内には終わらせます!

次回は、敵出現設定を組んでいきます。
駿河屋
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2024年12月01日

細かく修正㉞




4_19_1.png

ゲーム制作」の「製作メニュー」の「海底大戦争」欄の各回へのリンクを追加。

ゲーム制作」の「シューティングゲーム」の前後回へのリンクが全て切れていたので修正。

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