2002年11月の日記

<2002年12月 2002年10月>

ステージエディタ

「ふにゃふにゃ」のステージエディタの線の設定をするウィンドウを作りました。
見た目だけです。
位置、色、その他の性質を設定することができます(プログラムを作ったら)。
ここで変更した内容は表示画面に反映されます。
簡単なところで次はスクリプトウィンドウでも作ろうかな?

神戸大学が第一志望

「ふにゃふにゃ」のデモを一部修正しました。

ゼルダの予約をキャンセルしました。
日曜日にキャンペーンをやっているところを探すつもりです。

姫路工業大学の募集要項を入手しました。
第一志望は別にあるのでこちらは す・べ・り・ど・め です。
センター試験の結果がよっぽど悪くなければ後期日程で受けるつもりです。
模擬試験では一度もAランクより下がったことは無いのできっと大丈夫です。
そして募集要項を見てみると……
小論文あるじゃん!!
ま、まあ他の科目で余裕で合格点を超えるので大丈夫ですよ、ハハ……

キャンペーンやってなかった…(°Д°

「ゼルダの伝説-風のタクト」を予約しました。
が、やめることにしました。
別のところで再度予約しなおすつもりです。
でも実は本体がないので買っても遊べません。
それでいいのです。
受験生なので遊ぶわけにはいかないのです。
ですから、4月になったら本体を買って遊ぼうという計画なのです。

ハミルトン・ケーリーは関係なし

スクリーンセーバーにはDIBを使っているのでDIBならではの機能をつけることにしました。
今までは画面が暗くなっていきましたが、今ではいろんな色になってゆきます。

今日も右目だけ二重瞼だったのでとても不機嫌です。
左目が湿っぽくて右目が乾燥しています。

「メトロイド」のマップを一つ作りました。
そろそろマップのつながりがわかりにくくなってきています。

雨で球技大会(というよりは小会)はお流れ

「ふにゃふにゃ」で、デモで空中攻撃ができないバグと、デモが終わった後タイトルの出現を何もせず待っているとすぐに次のデモに入るバグを修正しました。
操作説明をある程度作りました。
後はデモプレイを作って操作説明は終わりです。
一応左右平等を目指していますのでやられ役はランダムに決められます。

卒業アルバムの寄せ書きを書きました。
「何もかかなくてもいいじゃありませんか
 とかくところがナイスでしょ?」
と私は書きました。
インクが滲んでうまくかけないので「書く」は平仮名です。

でもねぇ

「ふにゃふにゃ」の操作説明を半分ほど作りました。
スクリプトをそのまま使っているので設定によっては変な動きになってしまいます。
「星のカービィ-夢の泉の物語」でも実は似たような現象が起こることがあります。
すると画面がぐちゃぐちゃになり、バグジーがエイリアン化します。
話を元に戻しましょう。
デモに使ったキー情報が元に戻らないバグを修正しました。
隠し機能ですが、DMを同時押しするとすぐにデモ画面に入ります。
BGMができていないので、音楽の再生機能も今のところはなしです。
デモに限り設定を強制的に変更する変更する機能もつけるつもりです。

メトロイド、オモロイド

ファミコンの「メトロイド」がクリアできない最大の理由が道に迷ってどこに行けばいいのかわからないことなので、今日はメトロイドのマップを書いていました。
結構大変な作業です。
Map03で少し抜けている部分がありましたが何もないところなので大目に見てもらうことにします。
どっちにしても著作権の関係で公開できませんし。

って提出課題が1年分も溜まっているというのにこんなことばっかりしていていいのか!?

問う

「ふにゃふにゃ」のデモ画面を作りました。
ゲームのメイン処理のほぼファイルごとコピーです。
タイトルで暫く待っていると2分の1の確率で操作説明が出てきて、2分の1の確率でステージ特有のデモ画面があれば始まります。
なければ操作説明がでてきます。
ところで、これを見ている人に訊きますが、タイトル画面からデモに入るまでの時間はどれくらいがいいでしょうか。
今は約66秒です。
ただし何故か数秒の誤差があります。

DLL名に自分の名前を付けるのもよくある話ですよね

TokioGLのテストが済んだので公開です。
2回の">>18"を最後の">>16"にまとめてしまうことで高速化と精度を上げることができました。
tglStretchBltを作るにあたって「VisualBasic初心者連盟」の「きれいに縮小」を参考にさせて頂きました。

サンプルに使ったアイコンは「パネルα」のパネルに流用しました。
「パネルα」は兎に角パネルが不足しているんですよ。
126種類揃うには揃っているのですが、やたら紛らわしいf君がたくさんいるんですよ。
色違いを作ることによってある程度は減らすことができましたが。

早い話「ふにゃふにゃ」の公開はまだ先なのです

TokioGLのtglStretchBlt関数で転送先の大きさが転送もとの大きさの整数倍のときには普通のStretchBltを使うようにして高速化を図りました(tglStretchBltは恐ろしく遅いです)。
これで一応tglStretchBltに関しては公開しても良い頃になりましたので、近いうちに公開します。
その前にテストをもっと行わねば……

びよ~ん

「リダクター」の8ビットビットマップを減色する処理を作りました。
何故か256色目が使用されているとメモリエラーを起こしますが。
理由については全く見当がつきません。
配列のサイズを大きくしてみても変わらなかったのでここは違いそうです。

「ふにゃふにゃ」のタイトル画面で、スクリプトを実行した時にエラーが起こっても表面上は何もなかったように見せかけるようにしました。
以前は実行に失敗するとタイトルがびよ~んとなります。

スマブラのキャラは人形

「ニンテンドウオールスター!大乱闘スマッシュブラザーズ」に登場するピカチュウには雌雄どちらもいることがわかりました。
それがわかった時はこういう状況でした。

可能な限り弱くしたピカチュウ3匹とサムス一人が戦いました。
私の使っているピカチュウがビームソードを手に入れました。
しかし剣の振り方がどうも不自然なのです。
ポーズ画面で拡大してよく見てみると、ピカチュウは剣を口に咥えたまま振っていることがわかりました。
「これは面白いことを発見した!」
そう思った私は愚かにもさらに色々な姿を見てみたいと思い、何かをする度にポーズをかけていたのです。
ピカチュウをしゃがませていると、他のピカチュウが近づいてきていましたが、さして気にも留めずにポーズしたのです。
するとポーズ画面には2匹のピカチュウが……(略)!
嗚呼、今操作しているピカチュウは雌だったんだ……
ってサムスはまだおるんやぞ!
そういうことは戦いが終わってから楽しみなさい!!

それはともかく、TokioGLの関数のひとつ、tglStretchBltが出来上がりました。
昨日書いていた問題は、S/DとすべきところをD/Sにしたために起こっていることがわかりました。
きれいな回転コピーをするtglRotateBltは無理そうです。
色を計算するアルゴリズムが相当複雑になりそうなので。

TokioGL

きれいな拡大縮小コピーをサポートするDLL、TokioGLを作っていたんですが、どうもうまくいきません。
引数の引渡しがうまくいっていないようですし、拡大縮小しようとすると止まりますし、さらにはBitBltさえも失敗している模様です。

・・・・と思いきやVBの方でByValを忘れていただけでした。
しょーもないミスすんな~。

どうやら日記を書いていることは意外な効果があるようです。
どちらにしても問題はまだ解決していませんが……

12月までに完成させなければ!!

「ふにゃふにゃ」で、デモ画面(タイトルで何もしないでいるとなる画面)のプログラムを作りました。
スクリプトクラスは使いまわし、関数はコピペです。
勿論どちらも多少の変更を加えますが、基本は同じです。
タイトル画面で何もしないでいると2分の1の確率で操作説明が出て、それ以外では選択中のファイルの中に"demo.c"があればそれを実行し、なければ操作説明です。
スペースキーを押すとタイトルに戻ります。

ディブス

中間テストの成績表を貰いました。
多くの教科でクラス1位、合計点でもクラス1位でした。
成績表には一部を除き「優秀」が並んでいます。
しかし、それでも世界史の点の悪さは気になります。
偏差値で言えば普通よりやや下ということなのですが、その普通の得点がとんでもなく低いのです。
こうしてみてみると、私自身の成績は良いには良いのですが、まわりが低すぎるために実際以上に高く見えているだけのようです。
何しろ理系のクラスにも関わらず物理や数学の平均点が30点台ですよ!!
信じられますか!?
受験より先に卒業のことを考えなければならない人が一人や二人でなくいるのですよ!!!

それはともかくとして、スクリーンセーバーのがたがたの原因となるフレームスキップをなくしました。
遅くても見られるスクリーンセーバーなのでフレームスキップがなくてもそれほど問題にはなりません。

今日は早く帰宅

「ふにゃふにゃ」で隠し機能のうち3つまでが出せるようになりました。
そのうち1つはスクリプトができていないので実際には出せません。
実装は1つを除きできています。

ビームのスピードを少し速くしました。
また、最高速度も決めました。

少しだけ情報公開しました。
探せば見つかります。
探さなければ見つかりません。

がたがたセーバー

ビット操作クラスをアップしました。
実はこれは夏休み前からできていたのですが、すっかり忘れ去られていて、今ごろになってやっと思い出されたものなのです。

スクリーンセーバーができました。
SaverDrawに不備があったので文句を言いに行きました。
フレームスキップの方法により、遅いコンピューターでは動きががたがたになってしまいます(事実うちのパソコンでそうです)。

学校で募金があったので2002円ほど持っていったら期間終了でした。
間抜けですね……

それと、「ふわふわふにゃ」ハイスコア436104点です。

スクリーンセーバー

yaneSDK2ndの練習も兼ねてスクリーンセーバーを作り始めました。
ビットマップに色々とエフェクトをかけて表示するものです。
90%以上SDKの機能だけを使っています。
完成したらアップロードするかもしれません。
今設定の作り方がわからないので後で聞きにいくつもりです。

今日はぼーっとしていた

「ふにゃふにゃ」のステージ「まちかどバトル」の謎の帯状の物体を道路に早変わりさせました。
ビルと見立てた謎の長方形もひとつつけてみました。
ほんとーに謎です。

何故かよくわかりませんが小さな音量でヘッドホンをつけていると左側しか聞こえなくなります。
でもボリュームコントロールで音を小さくするとインターネットの接続音なんかがうるさくなるし……

間違い

防大の入試は今日ではなくて明日でした。
でも私には関係のないことです。

この前受けたハイレベル模試の結果が返ってきました。
休み明けの模試と比べてましな成績になりました。
みんなが私以上にできなかっただけかもしれませんが。
模試を受けるたびに成績が激しく上下しているので少し心配です。
普通の模試だと返って来ても別に見直したり解けなかった問題を解き直したりは面倒なのでしていなかったんですが、こんなに興味深い問題ばかり出されていると解かなくては気が済まなくなってしまいます。
悪いことじゃないと思いますが……

「ふにゃふにゃ」のステージエディタでステージ全体の設定をする部分ができました。
Unicodeまわりが少し難しかったかな?
エディタに関しては、表示画面、スクリプトエディタ、線の設定、ビットマップの設定、セーブ&ロードができれば完成です。

多分1日目の日記消えてます

明日防衛大学入試の一次試験らしいです。
願書を出し忘れていて受けられない私には関係のないことですが。
受けるのにお金が要らないので受けても損はしませんよ。

「ふにゃふにゃ」のタイトル画面でステージタイトルを表示できるようにしました。
ステージ定義ファイルがあればタイトルを読み込み、なければファイル名を表示します。
その動作確認のために、手動でステージ定義ファイルを打ち込みました。
最低サイズ198バイト、大変です。
そんなわけで、ステージエディタの方も進めました。
現在できるのは、
・主人公に関する設定
・ステージ全体の設定(見た目だけ)
の二つだけです。
後は何も表示することのできない表示画面が行き場を無くしているだけです。

mciSendString?

「ふにゃふにゃ」のBGMの制作を進めました。
始めの部分があまりうまくいかなかったのを除いては今のところはいい感じに進んでいます。
ひたすら明るくて能天気な音楽です(のつもりです)。

一発目の攻撃を出す方向が間違っていたので修正しました。
速度のy成分のプラスマイナスを間違えていたのです。
BGMを読み込んで再生する部分も作るつもりです。

Presented by Tokio

「Bomber丸World」のBGMの読み込みははっきりいって物凄く遅いです。
なぜなら、次のようなプロセスでBGMを読み込んでいるからです。

  1. DirectSound初期化
  2. DirectMusic初期化
  3. 圧縮ファイルからBGMをメモリ上に読み込む
  4. それを普通にファイルに書き出す
  5. DLLを使ってセグメントに読み込み
  6. 3~5を32回繰り返し
  7. 一時ファイルを一括して削除

だから、その間著作権表示をするようにしました。
「Now Loading...」を表示するのが絶対に嫌だったので。

「Bomber丸World」は始めから自分一人で作るつもりは無いのでいつかスタッフを募集すると思います。
いつになることやら・・・・

次元を超えて

「ふにゃふにゃ」で、画面の向こう側にいる相手との当たり判定を付け加えました。
「まちかどバトル」の地上ステージを本格的に作り始めました。
何故か画面奥にある看板に乗れたり気球がふわふわ飛んでいたりする場所です。

未知数さんの「座標平面」がついに10000Hits達成したそうです。
私のところにはカウンターはつけません。
だからここに今まで何億人ぐらい来てくれた人がいるのか全くわかりません。

SetBox関数追加

「ふにゃふにゃ」に四角形(勿論4辺が座標軸に平行な長方形です)を仮想画面上に設定する関数を追加しました。
実は既にSetBMP関数で代用できていたのですが、非常に使い勝手が悪かったので新しく関数を追加したのです。
早速「まちかどバトル」のステージで使ってみました。
まあ、別に動作は変わっていないので見た目には無意味そうですが。

最近テレビを見るのが嫌になってきています。
面白い番組があるにはあるのですが、CM(CommercialMessageの略らしい)を見ていると腹が立ってくるのです。
主語も述語もない文を聞かされたり愚痴を聞かされたり、ネギネギネギネギうるさいし……

MIDI打ち込み

聖魔さんのゲームをするために多くの時間を費やしてしまったのでプログラミングは出来ませんでした(始めからする気はなかったけど)。
そこで気付いたことがひとつ。
…そろそろ更新するタイミングではないのか?
実は更新のネタは1ヵ月分ぐらい溜まっているのです。
受験で更新どころではなくなったときのためです。
そんなわけで溜めておいたネタのひとつ、「クイズα 問題エディタ」をver1.1に更新しておきました。

「ふにゃふにゃ」のBGMが思い付いたのでとりあえず笛の音でぴ~ひゃらぴ~ひゃらMIDIに打ち込んでみました。
実は随分前から思い付いたりはしていたんですが、それが登校途中の電車の中だったりするんで家に帰った頃にはすっかり忘れているんですよ。
メロディを忘れないための何の工夫もないMIDIだけど一応アップ。

バイキルト!?

「ふにゃふにゃ」で、ちょっとヤバイ機能を加えました。
それとは別に、画面端のさらに向こう側の線を表示できるようにしました。
表示の部分をforに入れただけなんで大した事はしていません。
サングラスを掛けた時のにやっとした表情が変だったので修正しました。
ゲームが終わって結果を表示する時の「おしまい」という文字が右からしか出なかったのを勝ったキャラクターの方向から出るようにしました。
引き分け及び同じ結果だった時はランダムに出てきます。

<2002年12月 2002年10月>