「ふにゃふにゃ」に関する日記(7)

<前 次>

何かをしたつもりで何も出来なかった日

書くことがない日は書くことを作るのが一番です。
そのためにまたMIDIを打ち込んでいました。
プログラミングはあまり進んでいません。
MIDIも実質殆ど何も変わっていません。

これだけでは寂しいので「ふにゃふにゃ」のネタばらしでもします。
ストーリーを見た人は気付いたかもしれません。
二人のふにゃは自分達で勝手に不幸になっていただけだったのです。
それに気付いた後二人は仲直りするのですがそれを快く思わない者がいます…
こうして別のステージへと続きます。

ある意味数学的な問題

今日はこれといって書くことがないので数学の問題でも……出来ませんでした。

曲線 F(x, y)=0 を直線 ax+by+c=0 を軸として対称移動した時の曲線の方程式を求めよ。
一応答えは出たのですが、どうやら c=0 の時にしか成り立たなかったようです。
多分垂線と中点を使って解いたのが悪かったのだと思います。
しかも出た答えも複雑すぎて使い物になりませんし。

「ふにゃふにゃ」においても次のような問題に突き当たってしまいました。

座標平面上に、動かない直線Lと、等速直線運動をしている円Cがある。
この円Cがある微少時間のうちにLに衝突する条件を調べよ。
また、微小時間経過後のCの位置を求めよ。
なお、L,Cの方程式及びその他の必要な文字は各自定義すること。
早い話、攻撃の反射条件です。

英語づくし~♪

「Bomber丸World」のタイトル画面を作り始めました。
最初に"Bomber丸"が普通に出て来て"World"がどかーんと出て来るようにしてみたいです。
一応「Bomber丸」はH社の爆弾男とは関係ありません。
念の為。

「ふにゃふにゃ」は進んでいません。
隠し要素だったら簡単に作れるのですが、それは最後にしようと思っているのです。
ステージ作りも残ってますねぇ……

今日の学校の授業の時間割は英語、英語、英語、物理でした。
私立の学校なので土曜日も休みではないのです。

微妙に更新

昨日背景と同じ色で公開したMIDIについてですが、よく聞くと後ろに全く意味をなさない5拍子の音がなっているのに気が付くと思います(その前に見つけた人がいるかどうかが問題なのですが)。
そしてその5拍子とループ位置を合わせるためにループ直前の部分が3小節で終わるという中途半端な状態になっています。
ループ開始位置は18432、終了位置は145152です。
これと同じような音楽は少なくともあと5つはあります。

ダウンロードページの「Bomber丸World」のところに意味のある情報が全くなかったので一文だけ意味のある文章を加えました。

「ふにゃふにゃ」は、攻撃の反射のアルゴリズムを考える作業中です。
主人公は反射した自分の攻撃でもダメージを受けます。
こちらはBGMが全然出来ません。

学校で、ある数学の問題を、クラスの中で私一人だけが解けました。
結構嬉しいです。

うまくいった

やっと「Bomber丸World」のBGMの再生に成功しました。
DMLibでは絶対パスが使えなかったりCSoundのdeleteとMIDI_End()の順番を間違えたりクラスを自殺させなくてはいけなかったりと、兎に角慣れない事なので手間取ってしまいました。
周りから見ればたったの2日で苦労したとは何だってものでしょうが。
密かにひとつBGMが完成したので明日アップします(今日は無理だった)。
実はクリア後ダンジョンのBGMだったりします。
クリア前でも入り口までは入れるんですけどね。

「ふにゃふにゃ」は年内に完成させるつもりです。
いや、させます。

うまくいかない…

「ふにゃふにゃ」で主人公のコピーを設定する機能を廃止してステージの左右端を繋げる機能を付けました。
表示の部分が中途半端にしかできていないので見た目は変な状態になってしまいますが。
それに伴ってスクリプトも少し書き換えました。

「Bomber丸World」のBGMを読み込む機能を付けてみました。
が、メモリエラーばっかり出て作業はかなり難航しています。

嗚呼、受験モードですねぇ…

模試を受けました。
次の模試の申し込みをしました。
センター試験の願書を貰いました。
第一志望の大学の募集要項を取り寄せました。

「ふにゃふにゃ」で、主人公から一定の距離の場所に現れる主人公のコピーを作る機能……のための変数を定義しました。
実装はこれからです。

「Bomber丸World」のBGMの定義ファイルを作り始めました。
定義ファイルの内容は、

  • ファイル名
  • ループ開始・終了位置
  • タイトル
  • 作者からのコメント
が計32個です。

ステージエディタ

「ふにゃふにゃ」のステージエディタを少し作ってみました。
主人公の初期状態を設定するウィンドウを作りました。
機能の実装はまだです。
表示画面(プレビューとも言いますね)も見た目だけ作りました。
BitBltとLine関数を使って表示することにしています。

同時進行で「クイズα」の問題作成のプログラムも作っています。
24日の更新はこちらになる可能性も無きにしも非ずです。

Anti「Cのススメ」は中々進みません。
書き出しに気を付けないとCプログラマーに思いっきり悪い印象を与えてしまい、逆効果になる可能性がありますので。

MusicPlayer6開発中止

「ふにゃふにゃ」で、ダメージの処理、ダメージによるゲーム終了、ダメージを受けるが凍らない時の処理、凍るがダメージを受けない時の処理、相手の攻撃を一切受け付けない時の処理(無敵というわけではないです)などを作りました。
このゲームの隠れ機能は8個にすることにしました。
そうすれば1バイトの変数の各ビットに一つずつ追加機能の情報を書き込むことができて無駄がないからです。

DirectMusicをC++で使えない問題が結局解決しなかったので、「MusicPlayer6」の開発は中止です。
VBもLearning Editionなので、DLLを作ることができません。

リンク集に「The Phoenix Gamers」を追加しました。

ふにゃふにゃふにゃ

「ふにゃふにゃ」で、ランダムステージセレクト機能と、ゲームが終わってタイトルに戻った時今までプレイしていたステージが選択中になる機能をつけました。
前作に引き続き秘密機能もつける予定です(というよりもうそのために使うクラスも作っています)。
今のところ予定しているのは、

  1. ニコニコ(前作と同じ)
  2. 隠れキャラ
  3. 画面反転
などです。
画面を左右反転させても設定でキー操作を左右反対にすると問題なく操作できるのであまり意味はありませんが。
BGMできません。
プログラムはできたのに…

「ふわふわふにゃ3」で結構いい記録が出ました。
185.292秒間逃げおおせました。
1と3は生き残ったミリ秒数がそのまま得点になります。

IE6最悪…

今を遡ること数日間(←たったそれだけ?)……
ゲームボーイを買おうと思っていたのですが、肝心の欲しいソフトがどこに行ってもなかったので(とはいっても2ヶ所しかいっていない)、本体も結局買えないままでした。

そして今日!
少し遠出をしてとうとう見つけたのです!
DQM2ルカ編です。
しかし結局弟に取り上げられてしまいました(それでもいいけど)。

「ふわふわふにゃ」で当たり判定を外してトゲを200個出してみました。
数秒で完全に取り囲まれてしまいます。
数値計算の関係でトゲは左上に向かって動きやすくなっています。
除算のときに小数点以下を切り捨ててしまうのが原因です。

「ふにゃふにゃ」で普通のダメージの処理を作りました。
凍った時の処理をちょっといじっただけです。

InternetExplorer6をインストールしました。
すると、アイコンがぼやけて見え辛くなりました。
しかも、フォントに関わらず希臘文字が下手な字になりました。
さらに、よくフリーズするようになりました。
IE6をアンインストールしてIE5に戻しました。

Anti「Cのススメ」でもやろうかなぁ…

Rect関数

予告通り、「IntersectRect」を更新しました。
次は「TabIndex」にでもしようかと思っています。
思っているだけですので必ずするとは限りませんが…

「ふにゃふにゃ」で、ステージ情報クラスに移行できていなかった部分があったので修正しました。
「まちかどバトル」の遅さは未だに解決策が出ません。
蓄積ダメージの処理もそろそろ作ろうかと思います。

何かを書きたいと思った時、本当に書きたいことを忘れてしまって、どうでもいいことしか書けなかったという経験、皆さんにもありますよね?

謎の物体

散髪に行って来ました。
少し遠くまで行っていたんですが……その帰り!
ある団地の芝生に!
誰も入らないような場所に!
なぜか!
タマネギが置いてあったのです!
これは何か異常感を感じませんか?
きっと宇宙人が置いて行ったんですよ!!!
…ってどういう発想してんだ。

「ふにゃふにゃ」のステージエディタの制作を進めてみました。
ステージ情報を記録するための構造体を作りました。

絶対273度の怪

今日は何故か冷房についている温度計が0℃を示していました。

「ふにゃふにゃ」の「まちかどバトル」のステージ、サンプルステージよりも単純なつくりなのに動作が遅いです。
小さいのに。
ビットマップ表示も少ないのに。
ラインも少ないのに。
仕掛けも少ないのに。
色々試してみましたが、背景の表示に時間がかかっているようです。
サンプルステージよりも大き目の背景なので描画自体は速くなってもおかしくないんですが…

学校でタイル模様を見ていて思いました。
この模様の上にグラフを描いてみたらどうなるだろう……
というわけで、ダウンロードページに歪んだ平面上に関数のグラフを描くソフトのソースを追加しておきました。
あまりにもつまらないものなので更新扱いは無しです。

無題

今日は先生の携帯電話は鳴りませんでした。

「ふにゃふにゃ」で、主人公同士の縦方向の当たり判定を作りました。
ぶつかると少し跳ね返ります。
後残っているのは、結果の記録、ステージの作成、凍らないダメージ処理、凍り付く時間の調整、ステージランダムセレクト機能、ステージエディタ、などです。

「Bomber丸World」に使う音楽を幾つか作りました。
「Bomber丸」のへっぽこ音楽をアレンジしたものが多いです。
町の音楽がそれにあたります。
今ファイルとして存在している音楽のタイトルを挙げておきます。
「何故この音楽か、それが謎」
「周りを海に囲まれて」
「宮殿でドーナツを食べたい」
「狂わされた存在」
「オバケが出たぞ!」
前の3つがへっぽこアレンジ曲です。
希望があればアップしてみますがなければしません。

無題

学校で英語の時間、先生の携帯電話が鳴りました。
先生は必死に弁解しながら教室の外に出て行きました。
どうやら緊急の電話だったようです。

昼食を昼に食べ損ねました。
今日は授業が午前中だけで終わるはずだったのですが、夏の世界史補習受講者は2学期に入っても残りをすることになっていて、午後にも補習があったのです。
補習の開始時間は13時10分、授業が終わったのは12時40分、HRが5分で掃除が10分、10分ぼーっとしていて、1時5分、弁当箱を取り出して、蓋を開け、箸を手に持ち、手をつけようとしたその瞬間…
ガラッ…
「よーし、夏の講習の続きやるぞ~!」
その後2時間に渡って補習は続き、終わった瞬間に私と同じくして昼食を食べ損ねた2・3人が遅い昼食を食べ始めていました。

「ふにゃふにゃ」で、主人公同士の当たり判定を作りました。
それと、仮公開です。
あくまで仮なので、更新履歴には書きません。
scriptフォルダの中を見られるようにしておいたので、プログラミングが少しでもできるという人はスクリプトの中身を覗いてみてもいいかもしれません。
ダウンロードした人はできれば動作報告をお願いします。

何故かファイルのアップロードに梃子摺ってしまいました。

無題

「ふにゃふにゃ」で、攻撃の当たり判定と攻撃に対する反応を作りました。
これでようやくゲームとして成り立つようになりました。
それで弟と対戦してみると3勝7敗でした。

それにしても、人と対戦して負けても「まあ仕方ないか…」と諦められるのにコンピュータと対戦して負けると「をんのれえぇ~、計算機の分際でぇ~~!!!」と思ってしまうのは私だけでしょうか。

画面写真をアップしようと思いましたがうまく撮れなかったのでやめました。
攻撃エフェクトには多くの色を使っているので画面写真の色数が増えて鬱陶(うっとう)しくなるのです。

無題

「ふにゃふにゃ」で落下中に攻撃ができるようになりました。
これで攻撃をする部分の処理はできました。
後はその攻撃が当たった時の処理を書けばようやくゲームとして成り立つようになります。

明日「クイズα」をアップします。
実は8月31日に更新することは前から決めていました。
学校のみんなが宿題で苦しんでいる時に自分のサイトの更新をするっていうのが目的です(←宿題終わってないくせに)。

無題

凄い状態でパソコンがフリーズしました。
普通にWindowsを起動してMusicPlayer3を起動してVC++でソースと睨めっこしていたら5分であっさりフリーズしました。

「ふにゃふにゃ」で跳び上がり中に攻撃できるようにしました。
立っているときの攻撃は攻撃範囲が広い代わりに時間がかかり、ジャンプ中は攻撃前後の隙が少なく、また、ある程度狙いうちもできるようになっています。
ただ、空中でも攻撃しすぎると疲れて動けなくなるので、そうなると大ピンチになります。
攻撃には専用のクラスを使っているので攻撃の処理そのものができていなくても攻撃する時の条件は事細かに決めることができます。

最近スマブラでドンキーコングを恐怖の異種生命体ゾンビーコングと見立てて倒しまくる遊びをやっています。
傍から見るとバカそのものです。

無題

今日で学校の後期夏季講習が終わりました。
最後に掃除をさせられました。
その文手当てを付けてやると言うので期待しているとペットボトル入りのジュースをくれました。
人から物をもらっておいて悪いんですが、無い方が良かったと思っています。

「ふにゃふにゃ」で攻撃周りを少し修正しました。
攻撃する度に疲れた表情をしていたので普通に攻撃するようにしました。
攻撃エフェクトはOR合成でつくっているので背景の色によっては変な状態になります。

<前 次>