・日記引っ越し
これまでの日記をはてなダイアリーに引っ越し。前々から、Bloggerが不便だと感じるようになっていて、Bloggerでの記録を移行する方法を見つけたので思い切って移行してみた。この情報が書かれたときから、Bloggerのフォーマットの設定の項目が変わっていて、それを合わせるためにDでごにょごにょとやっていた。
と、いうわけで引っ越したので、これからも生暖かく見守ってください。
a Story of the Swordシリーズの製作日記とか、プログラミング日記とか。
・日記引っ越し
これまでの日記をはてなダイアリーに引っ越し。前々から、Bloggerが不便だと感じるようになっていて、Bloggerでの記録を移行する方法を見つけたので思い切って移行してみた。この情報が書かれたときから、Bloggerのフォーマットの設定の項目が変わっていて、それを合わせるためにDでごにょごにょとやっていた。
と、いうわけで引っ越したので、これからも生暖かく見守ってください。
・シューティング作成
・スクリプトいじり
第2回3時間コンテストということで、「アイテムをとってゲームスピードを上げて、早くクリアすることで得点を荒稼ぎ」というコンセプトの横STGを作ってみた。しかし、まともなシューティングの土台を作るのに1.5時間以上かかって、まともにゲームとして成立しなかった。コンセプト的にもあまり自分の趣味に合わないのでお蔵入り。ランクを能動的に調整できて、それに毛が生えたという程度。
復讐のスクリプトをいじっていた。だいぶいい実装が出来そうになったのだが、最後の壁として型情報が立ちはだかって詰んだ。型の情報を保存する型、というものでもあればよかったのだが見つからない。sizeofやstringofプロパティが取れるのに、型は型ではないというのは、型とはいったい何なのか。Phobosで型情報を触っているモジュールがあり、それを参考にして、テンプレートとaliasとを組み合わせて乗り越えられるか、と思ったが越えられず。stringofプロパティを利用してコンパイル時にコードを生成する、というようなことも考えたのだが、ややこしかったのでやめた。
それで結局妥協して、関数を呼び出すためのラップ関数を一つずつ作って、それへのデリゲートを連想配列に格納する、という方法での実装にした。ラップ関数を作った労力のリターンとして、関数を呼び出すときに引数をどうするのかを意識せずとも使えるようになったので、これで妥協。その実装の進行具合は、構文解析のあたりで機嫌が悪くなっていて、ごく単純な命令しか実行できないという状況。
・スクリプト
・XNA
テンプレートと可変個引数の項目を読んでみたら、昨日当たりかと思ったのは別に使えなかった。それでもう少しコードを書きながらいろいろと試してみたりもしたのだが、やはり手段がなさそう。
それで仕方なくコードを手書きしていくことにしたのだが、それがまた混迷している。さすがに一つ一つの関数ごとに愚直に書く様なことは避けたいので、引数の数ごとに関数を分類する、ということをやっている。そのときに関数の引数として任意の型の関数ポインタを渡すようにしているのだが、それをどう渡すかで詰んでいる。Phobosにもそのようなことをしているものがあって、それを参考にしてはいるのだが上手くいかない。テンプレートで何とかしたいのに上手くいかない。あんまり上手くいかなくて憂鬱。
XNAの本を買ってきた。飛行シューティングを作る前に物理ゲームが大量の壁として立ちはだかっていたことを思い出して、それもまた憂鬱の種。Poseidonが不機嫌なのも憂鬱の種。
・スクリプト設計
・復讐キャラ設定妄想
関数を実装する前に、ちゃんと言語の設計と実行の仕方は決めておくべきだと思って細かい設計を考えていた。大体のことは決まったが、まだはっきりしない場所が残っているので完全に固まるまでは実装しないつもり。
あとは復讐の主要キャラの設定をいろいろと妄想。ご都合主義的な流れになる気配が少なからずあるが、ご都合主義となることの正当な理由をゲーム中に盛り込めば許される、と思う。もしくはストーリーの時間的広がりを大きく拡張して、天文学的な確率が当たるようにするとか。