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

<前 次>

デモプレイ

デモプレイを作るのにとても便利な関数作成。
明日fffを終わらせた後でチュートリアルを全部作り上げてしまいたい。
そうだな・・・メインは文章だから文面をさっさと考えてしまうか。

で、fffは敵が出てくるところまで。
解説したからといってどうなるわけでもない定型文がそろそろ増えてくる。
そこはサンプルコードだけをのせて、なるものはなると開き直る。
意味は後で各自が調べればよい。

バグサンプル

fffの途中サンプルにドキュメント付属。
なんせバグってる状態のサンプルなんで説明が必須。
明日ゲームそのものは完成させてあさってに公開という形になります。

パネルγ、チュートリアル1を作り始めました。
それに伴いできるだけ作業を効率化させるためにいくつかの機能を共通化。
ちなみに、チュートリアルではそのとき説明している以外の操作をしようとすると怒られます。

メテオスめぇ!!

パネルγの日本語表示の仕様変更。
目的はメモリの節約。
日本語を表示する領域は完全に固定なのでその方向に最適化しています。
サーフェスは全部ビデオメモリに入れてるはずなので足りなくなるとつらい。

ABのfff、こんなおかしな動きになるぞって言っておいて静止画しか見られないんじゃわかりにくいので途中版サンプルも作ってみました。
文字通り作りかけの状態でめちゃくちゃ不完全なのですがあえて。

メテオス、買っちゃいました。
ラスボス最高。あんなのやこんなのをバシュバシュ飛ばせるなんて!
見た目が好きなのはメックスとスターリア。
BGMが好きなのはレイヤーゼロとフロリアス。
ルールが好きなのはギガントガッシュとヒートヘッズ。
設定が好きなのはヘブンズドアとアーニマ。
メテオの柄が好きなのはメテオス!!

これからはおまけで

パズルモードのステージ制作中。
パズルモードはなんとボリュームちょっぴりの全10ステージ!!
で、10ステージ中6ステージまで作成。
一つ一つのステージが決してコンパクトではないし、全部消すまでに稼いだ点数を競うものであるという特性上解法が一通りではない(クリアするだけなら簡単だが高得点を狙うのは難しい)ので、ステージが増えても疲れるだけかと思ったので、切りよく1画面に表示できるメニュー数と同じ10個にしたわけです。

ActiveBasic版fffの開発半分ぐらい完了。
ゲーム作りとはルール作成・演出・データ作成がメインだと思っちょります。
そしてそれらは本来すべて作成者の個性であるため、ここで扱いたいのはあくまでこれらを作り始められるように準備する部分まで。
だからはっきり言って、ここから先のルール作成部分はほとんどおまけのようなものなのだ。

音化け

パネルγ、画面下の情報表示にハイスコア追加。
なんとかできそうな気がしてきたのでひとまずパネルγはおいといて、fffの開発に行っていました。
画像の読み込みと表示の解説が面倒だったので描くのも解説するのも簡単な円に避難。

うちのパソコンにインストールされているQuickTimeとMidRadioPlayer、どっちもMIDIのソフト音源を持っているらしいのでいろいろ聞き比べ。
音化けでろくに聞こえなかったMIDIがばっちり聞こえるようになったのはうれしい限りです。
ドラムの音が音源によって全く違うことを身をもって痛感。
物によっては悲惨。

タイムアタック

タイムアタック作成。
ほとんどエンドレスのコピー。
プレス機の移動速度はひたすらランダムで決まるのである程度運も必要。
まあエンドレスもある程度そうだけど。
ただ、時間制限がある分、圧縮によるゲームオーバーはできれば避けたいので、ピンチのときのプレスの速度はかなり遅くなるように設定してあります。

AB講座の続きも書いてます。
とにかくコンパイルを通して、見た目を先に作って、マイキャラを動かして、敵キャラを動かして、ほかいろいろやって、完成です。

GDIGDIGDI

GDI実装。DDrawでうまくいかない人は試すよろし。
ポーズ機能もちょい改良。いきなりゲームに戻ると動作に支障が出る。のでポーズから復帰時にちょっと間開け。
名前の記入は日記書いた後即行で実装。

AB講座、はじめました。
今日中に書き終わらなかったのよ。

あとついでに、ゲームのカテゴリが増えすぎていたのでシリーズ別にまとめました。

公開まで毎日パネルγの進行状況報告します宣言

リファラ見てたらなんだかピンク玉がはねてる楽しそうなゲームを開発しているページを発見。
なんだか面白そう。
こっち方面に役に立ちそうなことを重点的に更新しつつ完成を楽しみに待っていようかなとも思っていたり。

パネルγ、ポーズ機能作成。
デバッグモードでコンパイルした場合のみ、ポーズ画面に100点追加とプレスリセットのメニューが登場します。
残念ながらランクへの名前の記入はまだ。
また遅れたっ!!

fffab開発開始ですよっ!
何って!ふわふわふにゃのActiveBasicバージョンですよ!!
あすかあさってあたりでプログラミングコーナーで取り扱うのじゃ!!
ふわふわふにゃはゲームプログラミングの典型的な手順のひとつに忠実に従っている(はずです)ので。

いも・おと・にい・ねえ

アンダーバー、下げすぎた。
んで、ゲームオーバーのところもちょっと変えてみた。

「Bomber丸World」で、こんなキャラを考えてみた。

いも
次女。

にいやねえとはそんなに歳が離れているわけではないのにかなり背が低い。
これは、親が年功序列を重んじており、生まれたころからにいやねえより明らかに悪い待遇を受け、成長不良を起こしていたためである。
いもは親から全く愛されていないと感じ、お茶に毒を入れて自殺しようと図ったが、おとがお茶を摩り替えたため死ぬことはなかった。

おと
次男。

いもが自殺しようと用意した毒を父に飲ませ、殺した事件以来、いもとにいには嫌われており、唯一以前と変わらぬ態度で接してくれるねえにはよくなついている。
顔の傷は、父を殺した夜に怒ったいもに鉛筆削りやはさみや耳栓や彫刻等や油粘土や他いろいろなものを投げつけられてできたもの。

にい
長男。

厳しいが優しい父に育てられ、立派に成長し、今では戦闘家になっている。
いつからか年功序列に従っておとやいもにほとんど優しさを見せない父の教育方針に疑問を持つようになっていた。
事件のとき、肉親を奪われた怒りに弟を襲おうとしたが、同時に教育方針の被害者である妹を助けたことを知り、何もすることはなかった。
いまだに弟の行動が正しかったのかの結論が出せず、ギクシャクした関係のままでいる。

ねえ
長女。

昔から何不自由なく育ち、弟妹の世話役として身の回りの世話をしていた。
事件のとき誰にも何もしてあげられなかったこと、長い付き合いだったはずの弟妹が思いつめていたのに気付かなかったことに責任を感じ、命に代えても誰か人を守りたいと考えるようになり、今では弟の守護をしている。

この4人、戦闘家としての戦いのときは幸せな家族写真っぽい配置で現れるんですが、さりげなく兄妹・姉弟のチームに分かれていたりします。
前後関係も重要なポイント。
ただ、「Bomber丸World」の世界観には重すぎる設定のためゲーム中ではこのエピソードは出ないかもしれません。

ひょんなことからfffをActiveBasicでリメイクすることになってしまいました。

過去ログ

日記の過去ログのうち、プログラムの開発関係の部分をダウンロードのページに写し始めました。
本当はTscripBBSを作ろうと思っていたのですが、記号の意味を忘れてしまい、過去の日記を見て調べようと思ったのですが、なかなか見つからず、また、以前からやろうとも思っていたので、これを機に開発日記を作り始めたのです。
とりあえず最初の2か月分、2002年の5月と6月の分を移行しました。
「ふにゃふにゃ」、「ふわふわふにゃ」、「パネルα」、「MusicPlayer4」、「MusicPlayer5」、「Bomber丸World」、がでています。
今更言うのもなんですけど、日記の過去ログから関係する部分を抜粋してきただけなんで、抜け漏れがあったり、現在と文体が違っていたり、前後の文脈がない関係で少し意味不明だったり、明らかにいい加減にしか語られていなかったりしますが、まあ気にしないでください。

お茶目な戦闘ロボ

学校のパソコンでJavaアプレット版「ふわふわふにゃ」を作っていました。
とりあえず、サンプルからキーリスナーの部分を引っ張ってきて、エラー取りをしながらJavaの使い方に慣れていくことにしました。
インプリメントやらイベント記述などはコピペで済ましたり何と無く感覚で作ってみたりでできそうですが、eやら何やらを使う部分はさすがにマニュアルを見てきちんと作らないと厄介なことになりそうです。
さすがに行き当たりばったりでずっと作っていくのはオブジェクト指向の考え方に反すると思うので。

WindowsXPのアップデートをしてみました。
特に必要な更新はありませんでしたが、一応更新しておきました。

ゲームのページを更新しました。
どこにあったか忘れたor知らない人は別に見なくてもいいでしょう。
好き放題書いてますから。

じぇーびるだ

学校のJBuilderが使えるようになりました。
自動的に入力候補が出たりアプレットのテストが気軽に行えるというのがいいですね。
これを機に「fffj」の開発を学校のパソコンに移行します。

電気の実験(実のところ電圧・抵抗を測るだけ)をしていたら、なんと、コンセントに機器を接続しても全く動かない!!
と思いきや、ブレイカーが落ちていただけ。
9.00V電源を使っているのに電圧降下が9.02V!!
0.05Vほどメーターがずれてました。

登録できない不具合について

なんか、比較文化論の先生の話によると、次のテストは、「何問出るかはわからないが、難問が出ることだけは確かだ」とか仰っていました。
先生、やっぱそれですか?
どうしてあなたはそんなに駄洒落が好きなのですか??

「ふわふわふにゃ」、ランキング報告に関して不具合があったようです。
こればかりは私一人で動作確認をすることはできませんので、できるだけランキング機能を試してみてください。
テスト段階ではローカルサーバーに繋がる設定だったのでそれが直されないままアップされたのが原因かもしれないと思い、ちゃんとTGWSに繋がるのを確認したバージョンをアップしなおしました。
これでなんとかうまく機能するようになってほしいものですが……

CGIについていろいろと

ついにスコアランキングを始めることができました!
今回は「ふわふわふにゃ」1・2・3・総合のランキングです。
なんだか2位以下の人が一人も現れないような予感がしますが、たぶん杞憂に終わるでしょう。
いや、是非ともあなたが杞憂に終わらせてください。
というわけで、皆さんも奮ってご参加ください!

「注意事項」にランキングのことも少し書きました。
ほかにも微妙に修正しました。

リンク集をCGIにしようかと目論んでいます。
リンク先をカテゴリー別に分ける、検索機能を付けるなどやりたいことはいろいろありますが、実は最大の目的は、相互リンク先の確認なのです。
相互リンクとはあくまでも管理人同士の都合であり閲覧者には関係のないことだと考えて、特別に相互リンクであることをアピールするのは避けてきたのですが、さすがに相互リンク先をいちいち探してから確認するのが面倒になってきたのでCGIで分けられるようにしてしまおうと思ったわけです。

貝の中の亀の甲羅

「ふわふわふにゃ」のスコア送信機能が完成しました。
一応こちらのほうのプログラムはいつでもアップできるようにはなっています。
公開版のほうはちゃんと送信先が「http://tgws.fromc.jp/tokio6/twscgi/ranking.cgi」になっていますが、私の手元にあるテスト用はローカルサーバーと繋がるようになっています。

ランキングCGIも大分形になってきました。
「ふわふわふにゃ」で、ランキングボタンを押すとランキング登録フォームに飛びます。
で、報告されたスコアと暗号で送信されたスコアが違っていれば不正なアクセスとしてエラーが出ます。
そして、ちゃんとスコアと暗号が合えば登録フォームが出て、自分の順位が表示されます。
この辺結構自分の思ったとおりにできたので満足です。

リンク集を少し更新しました。
一部のサイトの説明を変更したのと、非常に大きな分類です。
ちゃんとリンク先のチェックには行ってますよ。(^^

「スーパーマリオ64」をやりました。
何故水中に取れないアイテムがあるんだろうと思っていたのですが、よく考えてもみたら、取れもしないアイテムを配置するのはおかしいと思い、Bボタンを使ってみたら、やはり取れました。
もう遊びつくしたと思ったのに、まだまだ知らない謎があった…

暗号化・複合化

ランキングCGI、ランキングの順位を表示できるようになりました。
同じ得点だともちろん同じ順位に入ります。
暗号化されたスコアのデコード処理ができるようになりました。
その暗号化方法は、もちろん内緒です。
動作テストは自分のパソコン上でできるのですが、進行度合いを公表するために一度アップしてみました。
今後の予定では、順位の投稿・ソート機能と、ゲームの追加機能を付けるつもりです。

「ふわふわふにゃ」、暗号化するスコアのエンコード処理ができるようになりました。
こちらについてはCGIの動作テスト後送信機能を付けるつもりですが、こちらは簡単にできそうです。
ただ、ひとつの問題は、送信ボタンをどこに付けるかです。
本当は日付をキーにして暗号化しようと思っていたのですが、時差の関係でうまくいかないことがあるし(地域によっては参加できない)、暗号を解読してずるをする人もいないと信じることにしたので、簡単な暗号化に留めました。

8時間半連続でチャットをしていました。
そして、一緒に8時間話していた人が一人…
チャットは一度始めるとある程度長い時間続けていますが、ここまで長い時間チャットをするのは、ましてやその間ずっと同じ人と話していたのは初めてです。
あ、いまあなた、それがどうしたって顔してましたね。

出発から帰宅まで丸半日だもん

書くネタがないので「CharaBox」からデータをひとつ・・・・

名前
とげとげ
英語名
Needles
登場作品
ふわふわふにゃ
説明
無重力室に潜み、入ってきた者を追い掛け回す。
特に食べ物を奪ってばかりいるふにゃには恨みが深い。

「SuperBomber丸」にも登場したが、重力のせいでろくに動けず、落ちるだけだった。

ニストとは似て非なるものである。

そうそう、これだけでは寂しい気がするので、前に日記に書いた「Bomber丸World」の制作予定をHTMLにしてアップしておきました。
ダウンロードページから見られます。

ふにゃgbaですが

「devkitAdvance IDE」で、ビルドと実行ができるようになりました。
で、サンプルなどからファイルを取ってきて、掲示板の書き込みを参考にして色々makefileの設定をして、ようやくgbaファイルを作ることができました。
白い画面が出るだけです。
一応ここまでできるようになったので、IDEの開発も進めつつ「ふにゃgba」も作っていこうと思っています。
「バナナあつめ」と「ふわふわふにゃ」の2本立てになる予定です。
「バナナあつめ」は「ふにゃ」とほぼ同じルール。
ただし面クリア型ではなく広大な一つのマップ中にあるバナナを全部取り尽くすことが目的です。
「ふわふわふにゃ」もオリジナル版とほぼ同じです。
オリジナル版とは違って、画面の左右端が繋がっておらず、無限に広いステージがスクロールしていきます。
プログラム上、オリジナル版には組み込めなかったシステムです。

がたがたセーバー

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

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

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

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

英語も古文も完璧だぜィ!←結構ウソです

「ふわふわふにゃ」にイージーモードを追加しました。
1と3ではトゲの出てくる間隔が2倍になり、2では出てくるトゲが50個までになりますが、その代わり、得点が半分になります。
ついでにダウンロードページの履歴の書き方を変えました。

現在「Bomber丸World」の開発は完全にストップしています。
別にRPGの開発は大変だからとか、そういった理由からではなく、ただ単にそんなことをするくらいなら別のことをしているから結果的にそうなっただけです。
多分「Bomber丸World」の開発は「ふにゃさん」の開発と並行して行われると思います。
「ふにゃさん」は「ふにゃふにゃ」の開発が終了してから作り始めるつもりです。

「パネルα」はまだまだふにゃの絵がややこしすぎるので時間がかかりそうです。
とりあえずアイコンを作らねば!

<前 次>