日記(911)

<前 次>

HIGHスペックとLOWスペック

メテオスもどき、JavaScriptによる惑星パラメータの設定ができなかったので、paramタグによるロード時の設定のみにしました。
パラメータの取得のほうはJavaScriptで何の問題もなくできたのでそのまま続けることにします。
また今回、メテオスオンラインのように、とまでは行かないまでも、HIGHスペックとLOWスペックをつけました。
HIGHスペックでは半透明やアンチエイリアスなどの綺麗なグラフィックで、LOWスペックではそれらを用いない軽快な動作でゲームができます。
他にもグリッドをつけるなど色々演出面での改善を加えたりしました。

フィールドシリアライザ

メテオスもどきの惑星パラメータの文字列による出力が出来上がって、今は文字列を入力として惑星パラメータを復元する部分を作っているところです。
ほかにも、描画システムを見直したりしてました。
まあ、結局もとのやりかた以外は全然うまくいかなかったため戻したんですけどね。

FieldSerializer

講座のみんなでバーベキューでした。
肉食いました。

どうにもメテオスもどきの惑星パラメータの出力に使おうと思っていたObjectOutputStreamというのは厳密にクラスのフィールドを書き出し、入力に使うべきObjectInputStreamは書き込んだ時点でのクラス構造を再現するらしくて、クラスの構造が変わってもそれなりに復元することを目的としたちょっといい加減なシリアライズを自前で作ることにしました。
可能な限り復元を試みますが、失敗したら無視して続けます。

文鎮を作りました

学校で工作実習でした。
溶接などの金属加工ですね。
フライス盤でガリガリ削ったりもしました。

今日はBomber丸Worldのマップ表示を作り始めました。
ウィンドウ内に表示することが前提なので表示対象の大きさに合わせて表示を調整したりもできるようにします。

ObjectOutputStream

卒業研究のテーマがやっと決まりました。
なんでも大型放射光施設SPring-8での観測結果をコンピュータによるシミュレーションを用いて評価するという内容のことみたいです。

メテオスもどきは、ObjectOutputStreamというのを使ってシリアライズしようと考えて調べているところです。
文字列で出力できたら一番いいんだけど…。

JavaScriptによる制御

なんだかJavaScriptから直接Javaアプレットの変数を指定しようとすると、配列や一部のクラスの仕様の違いからうまく動かないようです。
なので、極力いろんなオブジェクトにアクセスしたりしないように、アプレットそのもののメソッドをできるだけ少ない引数で、つまり一つの文字列で呼び出すようにすればうまく制御できるかなと思っています。
あと、使用中の変数の値をいきなり変えたりしたら、元の値であることを前提として動いているプログラムが誤動作を起こすこともあるので、前処理・後処理を入れるためにもメソッドを呼び出す方式がよさそうです。
Qから返事があるまでは地味なところの改良でもしていようと思います。

Q公認がつけばいいな

メテオスもどきの使用許可を得るためにキューエンターテインメントに問い合わせをしてきました。

お世話になっております。今回は相談したいことがあって連絡いたしました。
私は今、遠からずサービス終了してしまうメテオスオンラインを忍びなく思い、以下のURLにてメテオスオンラインに似せたJavaアプレットによるゲームを作っております。
http://tgws.fromc.jp/akiyame/meteonsim/
今回相談したいことというのは、このゲームの公開を許可してほしいということです。
私はこれによって利益を得るつもりはなく、キューエンタテインメント様に損害を与えるつもりもございません。
むしろこのような形でメテオスを体験できる機会を増やすことでもっとメテオスが広まってほしいと思っております。
最初は自分でプログラムを書いているので大丈夫だろうと思って作っていたのですが、メテオスというゲームの優れたルールはキューエンタテインメント様の発明であり、そのルールを使ったプログラムを勝手に作ることは好ましくないと思い、連絡させていただきました。
許可しないというのであればその理由を、許可してくださる場合は使用条件と使用可能な範囲を教えていただきたく存じます。
許可されなかった場合はファイルをサーバー上から撤去し、許可された場合は可能な限り条件に従いたいと考えております。
いずれの場合も、状況と結果の報告のためにこのやり取りは私のホームページ上で公開したいと思っております。
前向きなお返事を期待しております。

<前 次>