2024年09月02日
【ゲーム制作】シミュレーションゲーム 第46回
シミュレーションゲーム 第46回です。
今回はBGM作曲と、効果音作成です。
今作では、ゲーム中と、エンディングの2曲です。
今作のメインBGMは、ゲーム中後ろで”しっとり”流れているだけなので、余り主張しないようなBGMにしてみました…。
この手のゲームはすること余りないから、育成中の生き物をボーと見ながらBGMはただ流れている状態になることが多くなります。
主張はしないと思いますが、いかがでしょう?
「MMLコンパイラ(通常版)」を使いデータ化。
「左SHIFT」+「F9」で高速実行。
今作は効果音が多いです。
波の音、所持金不足の音、柵設置音、エサ設置音、「スラー」キャッチ&」リリース音、「スラー」増減音など。
どこかに効果音が効果的に作れるツールってないかなぁ…。(他力本願)
次回はオープニング・エンディング処理です。
2024年09月01日
【ゲーム制作】シミュレーションゲーム 第45回
シミュレーションゲーム 第45回です。
今回は、「ゲーム終了判定」処理を組んでいきます。
今作のゲーム終了は3種類。
?@『5日経過時、「スラー」が15匹生存』(ハッピーエンド)
?A『5日経過時、「スラー」の生存数が15匹未満』(トゥルーエンド)
?B『「スラー」全滅』(バッドエンド)
と、なります。
まずは、「全滅」チェック。
生存している「スラー」の匹数をカウントし、「0」なら全滅で「ゲームオーバーフラグ」に「1」をセットし、BASIC部に戻ります。
次に、5日経過時チェック。
5日経過したかチェックし、経過していれば「全滅」チェック時にカウントした匹数が「15」未満なら、「ゲームオーバーフラグ」に「2」をセット、匹数が「15」なら「ゲームオーバーフラグ」に「3」をセットし、BASIC部に戻ります。
BASIC部で、この「ゲームオーバーフラグ」値を読み取って、エンディング分岐します。
次回、BGMと効果音を作成します。
2024年08月31日
【ゲーム制作】シミュレーションゲーム 第44回
シミュレーションゲーム 第44回です。
今回は、「スラー」の増減を組んでいきます。
「スラー」の増減条件は下表の通りとします。
増減
条件?@
条件?A
減
ストレスカウンタ>=8で、ストレス値+1
ストレス値250で死亡
空腹カウンタ10で、空腹値+1
空腹値50で死亡
増
温度・湿度・明度快適、自分の周りに糞が3個未満、自分の周りに「スラー」が4匹以内で、分裂カウンタ+1
分裂カウンタ50で「スラー」+1
「スラー」の増減時にアニメーション付けようかと思ったのですが、増えるのは良いが、減るのは可哀想なので、「いつの間にか増えてる」、「いつの間にか減ってる」くらいの方が良いかと考え、あえて付けない事にします。
次回、「ゲーム終了判定」を組んでいきます。
2024年08月30日
【ゲーム制作】シミュレーションゲーム 第43回
2024年08月29日
【ゲーム制作】シミュレーションゲーム 第42回
シミュレーションゲーム 第42回です。
今回は、「スラー」の密集チェックを組んでいきます。
「スラー」はギュウギュウの環境を嫌います。
と、言う訳で自分の周囲1.5倍内に5匹以上密集しているとストレスを感じます。
基本的には、『「スラー」を摘まむ』と考え方は同じで、範囲を広げただけです。
この範囲を1匹に付き、15匹分繰り返し、範囲内に自分を含み6匹以上なら、許容範囲の5匹を引いた値分、ストレスカウンタに加算します。(8匹いたら8-5で、ストレスカウンタに3を加える)
確認のために柵で囲われたエリアに「スラー」を6匹移動させ、6匹のストレスカウンタをチェックします。
ストレスカウンタちゃんと上昇しています。
次回、「スラー」の脱糞を組んでいきます。
2024年08月28日
【ゲーム制作】シミュレーションゲーム 第41回
シミュレーションゲーム 第41回です。
今回は、「スラー」の周りの糞チェックを組んでいきます。
「スラー」を中心に9×9FONT分のエリアを検索します。
検索の仕方は、以前「エサ」検索のときに検討していた方法。
2種類の検索方法を両方組み入れるので処理時間的にどうかな?
もし遅くなりそうなら、「エサ」の検索ルーチンを削除し、今回のルーチンで「エサ」と「糞」両方を検索できるようにします。
方法は、「エサ」を見付けた時、「スラー」とのX・Y座標差の計を算出し、小さいものをキープしておき、検索終了時にキープした小さいものを、一番近い「エサ」とします。(例えば「スラー」座標が(5,5)、「エサ」の座標が(9,6)とすると座標差は(4,1)その計は「5」となり、この値が小さいほど近い)
ルーチン組んで、いざ動かしてみたら、全然遅くならないので、そのまま併設で行きます。
確認のために「糞」を2個設置し、「糞」の近くにいる2匹のストレスカウンタをチェックします。
ストレスカウンタちゃんと上昇しています。
次回、「スラー」の密集チェックを組んでいきます。
2024年08月27日
【ゲーム制作】シミュレーションゲーム 第40回
シミュレーションゲーム 第40回です。
今回は、「スラー」の条件付きカウントアップを組んでいきます。
条件付きカウントアップとは、条件に合致している時のみ、各パラメータのカウントアップする事を言います。
例えば、「スラー」の飼育環境の温度が適温から外れている時、ストレスカウンタをアップさせるなどです。
以前に立てた「スラー」の固有体内時間アップフラグをチェックし、立っていれば条件チェックします。
条件
範囲
カウンタ種別
温度
25℃〜30℃
ストレスカウンタ
湿度
80%〜90%
ストレスカウンタ
明度
5時〜20時:明度4以上
20時〜5時:明度3以下ストレスカウンタ
時間
ストレスなし
(ストレスカウンタ増えず)分裂カウンタ
時間
−
空腹カウンタ
時間
−
糞カウンタ
各カウンタが、各々定められた一定値を超えると、それぞれのパラメータが変化します。
前回のメモリチェックプログラムで空腹カウンタを確認。
次回、「スラー」の周りの糞チェックを組んでいきます。
2024年08月26日
【ゲーム制作】シミュレーションゲーム 第39回
シミュレーションゲーム 第39回です。
今回は、「スラー」の食事を組んでいきます。
エサを設置した際に、設置座標に対応するメモリ上に、エサ残数を設定しています。
「スラー」がエサに引っ付いている間、残数と空腹度をマイナスします。
残数が「0」になったら、エサは消えます。
すると、集まってた「スラー」は蜘蛛の子を散らすように散っていきます。
ただ、空腹度は目に見えないので、上手くいったかどうか判断するために、別途メモリ確認用のプログラムを組む必要があります。
引っ付いていた「スラー」の空腹度を確認。
3匹引っ付いていた「スラー」の空腹度が下がっています。
次回、「スラー」の条件付きカウントアップを組んでいきます。
2024年08月25日
【ゲーム制作】シミュレーションゲーム 第38回
シミュレーションゲーム 第38回です。
今回は、「スラー」の固有体内時間アップフラグを立てます。
「スラー」の固有体内時間とは、30分毎に糞をするなど、「スラー」1匹1匹が個々に保有する体内時計の事です。
生れ出た(分裂した)タイミングにより異なるので、個々に保有させる必要があります。
前回の所持金同様、分カウンタが+1されたときに走査線割り込み処理からコールされた飛び先内で処理します。
走査線割り込み処理の中では、「スラー」の各パラメータは変動させないので、ここでは分カウント+1したことが判る「固有体内時間アップフラグ」を「スラー」個々のワークに立てます。
15回ループして15匹分のフラグを立てます。
「スラー」個々の動作時に、フラグが立っていれば条件判定し各パラメータを変動させます。
次回、「スラー」の食事を組んでいきます。