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

2023年12月24日

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



3Dダンジョンロールプレイングゲーム 第75回目です。
今回は、戦闘の「勝利」処理を組んでいきます。

12_24_2.png
討伐した敵から得られる「経験値」と「お金」を加算します。12_24_1.png
地味に、お金と経験値の上限チェック(値65,535)がめんどくさい。

ステータス表示の時に作成したレベルアップ必要経験値を得るためのサブルーチンをコールします。
11_16_5.png

&HD0CE~D0CF(16ビット)にレベルアップ必要経験値が入るので、プレイヤーの経験値と比較し、超えていればレベルアップサブルーチンをコールします。

次回は、「レベルアップ」処理を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月23日

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



3Dダンジョンロールプレイングゲーム 第74回目です。
今回は、戦闘メニューの「こうげき」を組んでいきます。

12_23_3.png
12_23_1.png
ダメージ表示の際、またワークのスペースクリアを忘れて変な数字が表示されたので、バグフィクス追加。
12_23_2.png

以前組んだ、「与ダメージ値」算出サブルーチンをコール。(&HB26C)





(乱数*(攻撃力-敵防御力/2+1)/255+攻撃力-敵防御力/2)/4

12_15_2.png

与ダメージ値表示。
12_23_4.png

以前に組み忘れていましたが、「クリティカルヒット」(会心の一撃)を組み込んでいます。(&HB252~)








確率計算式
1/32攻撃力-(攻撃力/2*乱数)/256

12_23_5.png

あと、以前の「まほう」の「こうげき」魔法の飛び先は&HB276です。
魔法サブルーチンでセットした与ダメージ値(&HD645~D646)をここで読み取って、与ダメージ値とします。

次回は、戦闘の「勝利」処理を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月22日

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



3Dダンジョンロールプレイングゲーム 第73回目です。
今回は、戦闘メニューの「ぼうぎょ」を組んでいきます。

12_22_2.png
これはドラクエ1にはなかったので、効果は適当に。
防御中は「ダメージ半減」でいいかな?
ここでは防御フラグ(&HE024)を立てておきます。
敵のターン時に、このフラグを見て被ダメージを低減します。
12_22_1.png

次回は、戦闘メニューの「こうげき」を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月21日

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



3Dダンジョンロールプレイングゲーム 第72回目です。
今回は、戦闘メニューの「にげる」を組んでいきます。

12_21_4.png
12_21_1.png
逃走成功時、BGMを消しますが音が鳴り続けたままなので、音を消す処理追加。
12_21_2.png

以前に組んだ、「逃走成功判定」をコールします。





















敵種計算式
スライム、シルバーウルフ、ミミック、ワイト(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜63))
スケルトン(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜94))
ゴースト(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜127))
マミー、ドラゴン(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜255))

12_15_5.png

判定の結果、逃走成功の場合。
12_21_5.png
逃走失敗の場合。
12_21_6.png

逃走成功した場合は、戦闘終了処理へ。
12_21_3.png
「戦闘中フラグ」を下げて、画面を消してBASICへ戻ります。

次回は、戦闘メニューの「ぼうぎょ」を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月20日

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



3Dダンジョンロールプレイングゲーム 第71回目です。
今回は、戦闘メニューの「まほう」を組んでいきます。

12_20_1.png
こちらも「どうぐ」同様、サブルーチン化されているのでコールします。

12_20_2.png
習得魔法があれば、習得魔法リストが表示されます。
「戦闘中フラグ」で判断されますので、システムメニューで使えなかった「攻撃」系魔法が使え、使えた「戻る」系魔法が使えません。

「攻撃」系魔法
12_20_3.png
12_20_4.png

「戻る」系魔法
12_20_5.png
12_20_6.png

「攻撃」系の魔法は、与ダメージ値をワーク(&HD645~D646)にセットし、後で作成する「こうげき」ルーチンに飛ぶようにします。

次回は、戦闘メニューの「にげる」を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月19日

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



3Dダンジョンロールプレイングゲーム 第70回目です。
今回は、戦闘メニューの「どうぐ」を組んでいきます。

12_19_1.png
サブルーチン化した「どうぐ」をコールします。
おぉ、簡単だ。
苦労してわざわざサブルーチン化しただけはありますね。

12_19_2.png
道具を所持して入れば、所持品リストを表示します。

リストから選択すれば、すぐに使います。
以前に書いた通り、動作メニューはありません。
効果はシステムメニュー時と同じです。

次回は、戦闘メニューの「まほう」を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月18日

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



3Dダンジョンロールプレイングゲーム 第69回目です。
では、戦闘メニューを組んでいきます。

12_18_2.png
戦闘メニューを表示。
今作は、「たたかう」「ぼうぎょ」「まほう」「どうぐ」「にげる」の5択です。

12_18_1.png

よく考えたら、ソロプレイで且つ、毒等の敵に効く遅効性状態異常がない場合、「防御」って意味ない気がする…。
「仲間が敵を倒してくれるまで耐える」、「毒等で敵が死ぬまで耐える」が前提の「防御」。
それらがない以上、ただボコボコにされるだけですね。
まぁ、もう組んじゃったからそのまま行きます。

次回は、戦闘メニューの「どうぐ」を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月17日

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



3Dダンジョンロールプレイングゲーム 第68回目です。
今回は、戦闘の前処理を組んでいきます。

12_17_1.png
戦闘中である事を示す「戦闘中フラグ」を立て、遭遇した敵のパラメータをワークに納めます。
この「戦闘中フラグ」を参照することで、魔法の「戻る」や「攻撃」の使用可否が分かれます。

そして、武具・防具を含めた、攻撃力・防御力・素早さの算出。
これは、ステータス表示時にサブルーチンを作りましたので、それをコールします。
11_16_4.png

そして、攻撃順序を決めるために敵の先制攻撃判定をします。
12_17_2.png
これは、以前に組んだ敵先制攻撃判定をコール。






(素早さ*乱数(0〜255))<(敵防御力*乱数(0〜63))敵の先制攻撃

12_15_4.png

敵の先制攻撃なら、「敵のターン」処理へ飛ばします。
12_17_3.png
12_17_4.png

次回は、「戦闘メニュー」を組んでいきます。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発

2023年12月16日

細かく修正N

4_19_1.png

リンク」にTMS9918風簡易ペイントツール「piroPAINT_9918」を追加。

ゲーム制作」の「3Dダンジョンロールプレイングゲーム」で前後回へのリンク切れが、また複数見付かったので修正。

2023年10月5日記事「【ゲーム制作】3Dダンジョンロールプレイングゲーム 第22回」の記事修正。
・計算式を判断可能なものに修正。
・レベルアップテーブルのレベル2必要経験値0→7に修正。
・計算式の出展元を掲載。

それ以外は、画像の貼り直しや、記事の誤記の修正程度です。

2023年12月15日

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



3Dダンジョンロールプレイングゲーム 第67回目です。
今回は、戦闘の前準備として各々計算式を組んでいきます。
計算式出展:『GCGX』
https://gcgx.games/dq1/damage.html


まず、プレイヤー→敵の与ダメージ値計算。





(乱数*(攻撃力-敵防御力/2+1)/255+攻撃力-敵防御力/2)/4

12_15_1.png
必要なので16ビット割り算ルーチンを用意。
12_15_2.png

次に、敵→プレイヤーの被ダメージ値計算。










条件計算式
敵攻撃力-防御力/2≧敵攻撃力/2+1(乱数*(敵攻撃力-防御力/2+1)/255+敵攻撃力-防御力/2)/4

敵攻撃力-防御力/2<0

または

敵攻撃力-防御力/2<敵攻撃力/2+1
乱数*(敵攻撃力/2+1)/255+2

12_15_3.png

次に、敵の先制攻撃判定計算。
敵が先制攻撃ならAレジスタに1。






(素早さ*乱数(0〜255))<(敵防御力*乱数(0〜63))敵の先制攻撃

12_15_4.png

次にプレイヤーの逃走成功判定。
逃走失敗ならAレジスタに1。





















敵種計算式
スライム、シルバーウルフ、ミミック、ワイト(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜63))
スケルトン(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜94))
ゴースト(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜127))
マミー、ドラゴン(素早さ*乱数(0〜255))≧(敵防御力*乱数(0〜255))

12_15_5.png

最後に敵の逃走判定。
逃走するならAレジスタに1。






攻撃力(武具除く)/2≧敵攻撃力且つ、逃走確立1/4

12_15_6.png

一応これだけの計算式が必要になります。
各計算ルーチンで、ループし計算結果を算出するBASICプログラムを組んで結果を検証。
12_15_7.png
想定範囲内の値しか出ないことを確認。
計算ロジック完成です。
posted by J-JSOFT at 00:00 | Comment(0) | TrackBack(0) | 開発
検索
<< 2024年11月 >>
          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
広告
最新記事
ブログランキング
にほんブログ村 ゲームブログ ゲーム制作へ
プロフィール
J-JSOFTさんの画像
J-JSOFT
高校時代、あれほど熱心に取り組んだMSXに触れなくなって30年余…。 MSXエミュレータとの出会いで、MSX愛が再燃中。
プロフィール
カテゴリーアーカイブ
ファン
QRコード