2007年12月の日記

<2008年01月 2007年11月>

メテオンもどき最終日

メテオンもどき終了処理作り終わりました。
時が来れば自動的にページが置き換わります。
もちろんクライアント側にロードしてしまった分についてはどうもしないので、プレイ中にいきなり画面が切り替わって終了ということはないため、最後の1プレイぐらいは何とかなると思います。
まぁ、だからといってずっとページ表示しっぱなしにして遊ぶほどの再現度じゃないんですけどね。
そんなことするぐらいならDSのを買うことをお勧めします。

ふにゃさんの重い原因については、開発当初に少し危惧していた、オブジェクト数が増えたときに当たり判定の処理時間が加速度的に増大することが問題だったようです。
これに関しては、一応解決策はあるのですが、結構大きく改造する必要がありそうで、まだ手を付けられないでいます。

重くなったふにゃさん

Vistaにしてからふにゃさんが重くなった気がしたので、無駄がありそうなところを探していました。
とりあえず実質的に空ループとなっている部分を取り除きましたが、これといって効果は上がっていないようです。

あと、HP作成論とリンク集と自己紹介のリニューアルが終わりました。

ルミネスが基となった惑星

本当に久しぶりに本家メテオスオンラインのほうのページを更新しました。
ルミオスのページ、本当はサービス終了前から画像は用意していたのですが、サービス終了告知の影響で精神的に作れる状況じゃなかったんです。
リニューアルを機に、手遅れながら、作ってみました。
本当はもっといっぱい書くことがあったような気がしますが、やっぱり実物がないことには…。

ちなみにもどきのほうのロケット噴射については、どうしてもうまくできないので、もう諦めてしまう方針です。
作りかけのオリジナル惑星も、背景とか、設定とか、いろいろ作ろうと思っていたのですが、こちらも諦める方向です。

そういえば2007年中にゲームとして成り立つくらいには作り上げるといっていたBomber丸World、Wiki見ても分かると思いますが、メテオンもどき開発開始のころからほぼ手をつけていません。
最近になって、状況を思い出すためソースを覗いてみたら、結局思い出したのはマップ処理の方針が決まらなくて開発停滞していたということ。
ちと年内にプログラム完成、年度内にデータも完成というのは無理そうです。

スタッフたち

爆ボンのページのリニューアルが終わりました。
で、せっかくなのでスタッフロールを見ながらスタッフ一覧を作ってみました。
ついでにアドレス変更の関係でもうアクセスされなくなったページの削除なども行いました。
ページ削除は1年ほどサボってたからかなりたまってて大変でした。

さて、リニューアルが終わってない爆ボン以外のページに取り掛かるか…。

ロケット噴射

メテオンもどき、いまさらながらロケット噴射の画像を作っています。
プレイ中ならどこが飛んでいるか見てすぐわかるのですが、静止画となるとどうにも飛んでいる実感がわきにくいんですよね。
あと、こっそりアプレットとゲームプレイ用のページも最新にしておきました。

なんてひどいステージ!!

限定公開中のあの広いステージ、1時間以上掛けてがんばってたんですが、最後の一手で手順を間違え、痛恨の手詰まり!!
…泣けてきます。

オレ、不老不死だけどなんか質問ある?

アキタラヤメル企画「ポジティブ不老不死さん」開始しました。
不老不死っていうのは、フィクションの中では「死ななくてすむ」ことよりも「死ねない」ことのほうが強調されて死にたがってるか、死なないのをいいことに無茶ばかりしている奴ばかりになってるような気がしたので、平和的に長生きしている不老不死さんを考えてみました。
基本的な設定はほぼ考えたので大体のことには答えられるかと…。

FFT

卒研に使う解析プログラムのフーリエ変換の部分を高速フーリエ変換によって実装しなおしてます。
今まで素直に計算しすぎていました。
あまりに時間がかかりすぎて非現実的だったので。

敵のページ

爆ボンの敵のページをリニューアル中です。
何種類かの敵がひとつのページにまとめられているのを個別に独立させているんですね。
また、ファイル名(≒英語名)がおかしかったところも修正しています。
ただ、このファイル名変更で404エラーが出るのは好きじゃないので、例によって移行期には.htaccessで正しいページへ誘導するようにしようと思っています。

中間発表終わった

CharaBox3に画像縮小率に関するバグがあったので修正しました。
ついでに、説明の量が少ないときには画像の表示領域を普段より多めに取るようにして、必要以上の画像の縮小をさらに押さえるようにしたいと思っています。
あとは、オプションの充実とかもやっていきたいところです。

無題

卒研の中間発表の練習をしておりました。
先輩方、夜遅くまでつき合わせてごめん。

アイコン表示の軽量化

浮き沈みランチャーの表示処理を速くしようと思ってIconからの描画をいったん目的のサイズのBitmapに変換してから描画する方式に変えようと思ったのですが、どうにもそういう役割をするのはBitmapそのものではないようだったので、ちょっと卒研の中間発表の調べものの合間を見て解決方法を探しています。

無題

卒研の中間発表の準備中であります。

クレヨン物理

Crayon Physicsなんていう、クレヨンのグラフィックで物理演算をやってしまうゲームがあったのでやってみました。
走るアルマジロ君と同じく、転がる何かをゴールに導くのが目的のようです。
http://www.kloonigames.com/blog/games/crayon/

1197989916.jpg

ひたすらガチャプレイ

見るメテオンもどき、おおよそできました。
シミュレーション方法としては、HGPアルゴリズムを用いています。
ただ、そのままHGPを使うと生存率がかなり悪くなるので、生存しやすくなるように補正を掛けたりしています。
テスト用の惑星を基準にして、それなりに生存・滅亡する2分を基準にして調整しました。
あと、細かいことながら、カタマリの外に出た燃えカスの還元タイミングを微調整しました。

見るメテオンもどき

見るメテオンもどきのシミュレーション部分を作成中です。
静止画を作るのが目的なので、シミュレーションの最中はゲーム画面を見せないようにしたほうが良いということで、ゲームの1フレームの処理が終わっても最終的な結果になるまでは描画を抑制するようにしています。
そして、シミュレーションに時間がかかる場合はある程度時間が経った時点で自動的に処理を打ち切るようにするつもりです。
後、サウンド関係の処理はばっさり切り捨ててます。

MeteonSee

メテオンもどきの本体を画像ジェネレータに改造中です。
画像を生成する方法としては、内部的にゲームの挙動をシミュレートして、ある程度進んだところでとめてその時点での画面を画像として出すという方式にしようと思っています。
静止画である都合上、サウンドの設定はなかったことにされます。
ちなみに名前も「見るメテオンもどき」と「MeteonSee」に変更する予定です。
…ん?滅亡したらどうするかって?

滅亡フラグ

メテオンもどきを年明けに自動終了するプログラムを作っています。
トップページの告知を変更するプログラムはすでにできていたのですが、肝心のゲーム本体を置いてあるページがそのままだったのですよ。
こっちは削除対象であればそれ相応のメッセージを表示して、それ以外だったら画像ジェネレータを表示、という流れになるのですが、それはそれで、削除メッセージも画像ジェネレータもできてないわけで、こりゃどうしようかなーというところです。

なんて広いステージ!

ふにゃさんアップしました。
結局昨日の分から追加機能は付けませんでした。
で、その代わりに昔作っていまだにクリアできていない最高難易度のステージを期間限定で公開してみました。
コンパクトなステージをいくつもクリアするというコンセプトのこのゲームでは珍しい、何十分も、ことによっては何時間もかかるステージですからね。
集中力が持ちませんよ。

HTMLヘルプが作れない!!

ぬわー。BMP(を含むAVI)がボトムアップ方式でCDIB32がトップダウン方式だってことすっかり失念してましたよ!
AVIに記録してみたら上下反転してました!
で、それを直すために記録前にミラー転送したら今度は左右も反転!!
…もちろんちゃんと直しましたけどね。
で、うまく動いたのでアップしようと思ったのですが、ヘルプを最新に更新しようと思ってもHTML Hwlp Workshopをインストールしてなかったのですよ。
もちろんインストールを試みたわけですが、HHWは割と古いソフトなので、まともに日本語環境に対応してないわけです。
自動で日本語を含むフォルダにインストーラを配置して、それでエラー出してくるわけですよ。
…うん。手動でインストールしましたけどね、結局時間がなくなったわけですよ。
せっかくなので明日にもうちょっと機能を足してアップしようかなと思ってます。

8bitの追加分

ふにゃさんのAVI録画クラスが出来上がりました。
例によってまだテストが済んでいないのですが。
CDIB32の都合により無理やり32bitで記録しているのでどうなることか少し不安ではあります。

CAVIRecorder

前に掲示板に追加したいずみさんとキャットバイパーのアイコンをチャットにも追加しました。

ふにゃさんの動画作成については、AVI記録クラスを作成している途中で、いろいろな構造体の内容を調べたりしつつうまく記録できるような方法を考えているところです。
画面の解像度変更が行われる前に出力ファイル指定や圧縮方法の設定を済ませたい都合から、パラメータ解析と最初に表示するシーンの決定などをプログラムの一番最初に実行するようにしました。

ランチャーのアイコン

浮き沈みランチャーにアイコン表示機能をつけてアップしました。
今回実際にやりたかったのはショートカットの自動解析の中止だったんですが、それが終わってから、アイコンがないとどうしても探しにくいと感じたため、簡単に作ってみました。
ショートカットのほうは、項目に追加した時点ではショートカットのままで、項目編集画面に追加された「リンク解析」ボタンでショートカット経由から直接実行にできます。
アイコンについては、読み込みに多少時間がかかるため、必要になったときにバックグラウンドで読み込んで、表示できるようになってから表示するようにしています。
ただ、アイコン表示はテキストのみのときと比べて多少時間がかかるので、テキストのみの表示や、アイコンよりも表示が軽いであろうビットマップ形式での表示にも対応できるようにしたいと考えています。

で、ふにゃさんのほうは、無事リプレイの表示ができるようになったので、いよいよ動画作成に取り掛かりたいと思います。

圧縮されていたリプレイ

結局フォルダ選択はSHBrowseForFolderで実装しました。
スタートメニューなどに登録して作業フォルダの指定を間違っていたら出ます。
で、今度こそリプレイシーンを出せるようにしようと思っていたのですが、本体を起動するための設定プログラムでのリプレイファイルの一覧を作ろうとしていたらまた欲が出てきて、リプレイファイルの内容(ステージ名など)を選択画面で表示できるようにしたいと思い始めてしまいました。
で、リプレイデータはステージファイルとよく似た形式なので、データ読み出しにはエディタにあったプログラムが流用できるだろうと思って開いてみたところ、エディタでのステージファイル一覧でも似たようなことを考えていたのを思い出して、結局横道にそれ続けてエディタを改良したわけです。
で、ちょっと戻って設定プログラムのほうに移ったわけですが、タイトル情報取得ができるかどうか確かめるためリプレイデータの内容を見てみると、ゲーム本体以外では今のところ扱えない圧縮形式で保存されていたため、急遽データ読み込みDLLに圧縮データ展開機能を付けることになりました。
今ここで止まっているわけですが、もうちょっと欲を出して、DLLがなかったらエラーを出さずにファイル名だけで表示するようにしようかなと思っていたりします。
そんなわけで、リプレイの再生および録画はもうちょっと先のことになりそうです。

フォルダチェック

引き続きふにゃさん。
今日は何とかリプレイの表示だけは理屈の上ではできるようになって、いざリプレイファイルを開けるようにしようと思ったら、そういえば作業フォルダが実行ファイルのある場所と違ってたら動かなかったというのを思い出して、そっちの改善のほうを試みてました。
とりあえず一番直接的にフォルダを選ばせる方法としてSHBrowseForFolderがあったのですが、なんだか面倒臭そうなのでyaneSDKに入ってたCFileDialogを使おうとしたところ、そっちはそっちで若干不便な部分があったりして、結局どれも作れず、ということで現在に至っています。
リプレイデータの開き方は、設定プログラムから開くのが便利かなーと思ってます。
録画などの設定はWindows本来のGUIでやったほうが早いですからね。

メニューID

リプレイシーンを作る前にちょっと不満の残っていた部分の改善をちまちまやっていました。
まず、ステージ選択に入ったらもう最初の画面へ戻れなくなっていたのを改善しました。
これは前から、というより最初からやりたかったのですが、続きから始める機能との相性が悪かったためこれまで実装できていませんでした。
要するに、続きからはじめるという項目があるとタイトルに戻るという項目の位置がずれるので、プログラムが複雑化すると考えたのです。
なので、位置によらない項目識別番号を使うことにして相性の問題を解消しました。
ほかには一部にあった英語表記を日本語に直したこと、といったところですね。

ショートカットのショートカット

浮き沈みランチャーを更新しました。
なんだか登録名が内容と一致しない項目が増えてきたのでそのあたりを編集できるようにと。
で、編集機能ができたということはデータの中身も手軽に見られるようになったということで、見てみるとショートカットを登録したものが多く、ランチャーもある種のショートカットであることを考えると、ショートカットのショートカットになるのはあまりよくないと思ったので、ショートカットを登録した際は中身を解析してショートカットの中身を浮き沈みランチャーの項目にコピーするようにしました。
もっとも、このあたりはショートカットのまま登録したほうが都合が良い場合もあるので、将来的にはオプションでどちらにするか決められたら良いかと思っています。
もうひとつ追加したコメント機能は、ツールチップとして表示されます。

それはそうと、Inkscapeの練習がてら、ふにゃを描いてみました。
足とか目とか、若干変なのでもうちょっと練習が必要そうです。

1196866387.png

リプレイシーン

ふにゃさん録画機能のために、まずはリプレイを再生するためのシーンを作っていました。
リプレイデータは1コマずつ記録されているので動画の1コマと対応付けて保存すればきれいな動画の出来上がりということになるのです。
あと、ついでにリプレイデータの保存先の指定をできるようにしようとも考えています。
サウンドの保存に関しては、どうするかは結構それなりに未定です。
理屈の上ではできるはず…という構想の段階です。
う~ん、でもリプレイ&録画専用シーンってどういう風にゲーム的に組み込めばいいかなぁ…。

メテオンもどき、最後の更新として、初期積み上げ高さが1だったときにメテオが消滅するバグを解消しました。
で、トップページはすでに終了日までのカウントダウン開始です。
後は終了後の処理を考えるのみであります。

メテオンもどき終わります

やっとのことでQからメテオンもどきの利用についての返答が来ました。
で、著作権がQだけのものじゃないということで、ダメとのことでした。
以下全文です。

  • ---------------------------------------

お問い合わせいただきました件につきまして、弊社のメテオスオンライン担当者
及び、法務担当者へ確認を行わせていただきました。
確認及びご回答までにお時間をいただき、ご返信が遅くなりまして誠に申し訳ご
ざいません。

お問い合わせいただいておりますメテオスに関しまして、著作権は弊社「キュー
エンタテインメント株式会社」一社のみではなく、「株式会社バンダイナムコゲ
ームス」様等、他社様も有するものとなっております。
誠に申し訳ございませんが、お問い合わせいただいた件や、その他の著作権に関
連した内容がありました場合に、公認とする事や、公開の許可を行うといった事
はできません。

お客様にご連絡いただきました、

・これによって利益を得るつもりはなく、キューエンタテインメントに損害を与
 えるつもりはない
・メテオスを体験できる機会を増やすことでもっとメテオスが広まってほしい

上記の主旨につきまして、これほどにもメテオスオンラインを好きになっていた
だけた事が弊社として大変うれしく、また、お客様にとても感謝いたしておりま
す。
メテオスオンラインの担当・関係者であった者も「ここまでやっていただけると
は」と驚いておりました事を、お伝えさせていただきます。

しかしながら、「メテオスオンライン」はサービス終了となりましたが、『メテ
オス』自体がなくなった訳ではございませんので、お問い合わせのJavaアプレッ
トを公開された場合、著作権に関しての問題となる可能性が高く、そのような理
由も含めまして現在公認や公開の許可を行う事はいたしておりません事を、ご了
承いただけますようお願い申し上げます。

メテオスオンラインのサービス終了、並びに公認・公開の許可といった事が行えず、
大変申し訳なく思う次第でございますが、何卒ご理解とご容赦いただけますよう
お願い申し上げます。

このようなご期待に副う事ができない回答となり誠に申し訳ございませんが、
お客様のメテオスオンラインへの真摯な思いや、建設的なご提案のお問い合わせ
をいただきました事を、メテオスオンライン関係者一同、お礼申し上げます。
誠にありがとうございました。

メテオスオンラインサポート
メテオスオンラインスタッフ一同

無題

卒研でいろいろやっておったのです。
私の場合進みが異常に遅いのですが…。

後ろから…

チャットの管理機能を強化して過去ログの分割表示と削除に対応しました!!
今使っているGChatには発言IDのようなそれぞれの発言を一意に認識するためのデータがないので、行番号を後ろから数えたものをID代わりに使っています。
なぜ後ろから数えたものをID代わりに使ったのかというと、このチャットでは新しい発言をログの先頭にどんどん追加してゆくため、前から数えた行番号はどんどん変わっていく可能性がありますが、自動削除機能はないので、後ろから数えたほうの行番号はこちらが操作しない限り発言そのものと一対一で対応するのです。
まあ、ユーザーから見える部分は何も変わってないんですけどね…。

<2008年01月 2007年11月>