2007年9月26日水曜日

NO.2110 プログラミング3週目

僕はこのサイトでディスガイア日記を書いているのですが
コンテスト期間が始まったというのに
作成したいスクリプトの構想はだいたい固まっているというのに
スクリプトも書かず、サイトのネタ探しも含めて
ゲーム(ディスガイア)ばっかしていました
(本の感想を書くのは大変だし
 聞いている曲の感想を書くのは難しいので
 僕の場合、更新内容として、ゲーム日記を書くのが一番楽なのです)
ところが先日、PS2のメモリーカードの空き容量が足りなくなってきたので
昔買って一度も使用していない、PS2のバックアップ用USBで
使わないデータをバックアップしてたんですよ
ところが、途中までサクサクバックアップできるのに
ファントムブレイブのデータがバックアップできない!
データの(バックアップ用USBへの)移動ができなくて
コピー(バックアップ用USBへ)したらできた
で、コピー元のデータを削除したら、画面がフリーズ
電源オーフ!
そしたら・・・
メモリーカードのデータが全部破損データになりました
なんと!PLAY時間80時間のディスガイアのデータが破損データへ!
PLAY時間18時間のファントム・キングダムのデータも破損データへ!
りすとはPS2のメモリーカードは2枚で使い回しているのですが
PLAY時間75時間のファントムブレイブのデータが助かったのが
不幸中の幸い
SFCを卒業して
(まだ卒業してないけどw 聖戦の系譜とか バハムートラグーンとか)
PLAY STATIONをやるようになってからデータ消失とは無縁の生活を送っていたはず
昔はドラクエ4を最後のダンジョンまで行って、データが消えたり
FF4がSFCの故障でぶっこわれたり、したり
(壊れたので同級生にあげたら、データがよく消える。と
 イヤミを言われたりしたものです)
したけど、ずーっと、データが消えた記憶はない
あーあ PLAY時間80時間のデータが消えるなんて
レベル的にはクリアできたのにさ
早くクリアしないからこういうことになるのだろうか?
今は、また最初から初めて楽しめるからいいかな。とも思うけどさ

と、言うわけで
これは、(せめて)コンテスト期間中はスクリプト作成に集中しなさい。と
言うことかなぁ。と、思いつつ毎日のように、スクリプトを書いています
(こんなにスクリプト書くのいつ以来だろう?)
前回、日記に書いたToDoリストは
ToDoリスト兼フローチャートの作成と
長くなってしまったスクリプトのモジュールでの分割と
現在の目標は戦闘の処理
の3つなんですが
現在、やっていることは、長くなってしまったスクリプトのモジュールでの分割。です
今は3.1でスクリプトを書いているのですが
モジュールで分割している最中に
モジュール内のラベルにジャンプできないというバグを発見
(gotoは使わないけど、gosubでジャンプしたかった)
gosubを#deffuncで書く必要があるみたいです
gosubだと定義より上でも呼び出せるので
僕は#deffuncよりgosubをよく使うのですが
gosubを使えないとなると、定義の順序を考える必要があって
そこを調整するのがめんどくさそう
だいたいモジュールに分割したんだけど
モジュール内のラベルにジャンプできないというバグを一昨日発見して
開発メーリングリストの中で報告
これからgosubを#deffuncに書き換えるところです
というわけでモジュール分割にとまどって
戦闘の処理もまだ書いていない
ToDoリスト兼フローチャートの作成も先々週の火曜日に書くはずだったのに
まだ、書いていない
いまいち、やるべきことが具体的でない
ま、構想は2年くらいだし、作りかけのスクリプトもあったし
スクリプト書きの練習としてPROJECTすぅぃったという企画で
小さいゲームも作ったことだし
スクリプト作成の見通しは立っている
フローチャートは書かなくてもスクリプトは完成しそうです

現在のスクリプトの行数約2600行
進行のパーセンテージ20%

というわけでToDoリスト
モジュール分割を終了させる
gosubを#deffuncに書き換える
gosubが#deffuncになってもきちんと動くような順序に並べる
モジュール分割の完成を確かめるデバッグ
シナリオIDの文字列に区切り文字”|”を導入して効率的に分岐する
シナリオID、簡単な変数への入力、簡単な計算をログ出力させる
そろそろ、シナリオを書き始める
敵キャラ、味方キャラ、NPCの絵を書く
戦闘の処理を書く
戦闘の処理と本スクリプトを結びつける
スキルレベルアップの処理の実処理を書く

こんなにToDoリストがたまっているのに
コンテスト期間は約3分の1経過しましたね
はてさて期限内に完成するのでしょうか?

0 件のコメント: