ドラクエⅢ、進捗状況。

今は船と魔法の鍵を入手したところです。ここで力尽きました。時折バグらしいやたらと強いモンスターが出てきて、最高レベルでパラメータMAXの主人公がいるチームが全滅させられかけました。あの絵は多分「怪しい影」だったと思いますが、見事にボッコボコにやられました。序盤でこんなモンスターが出るはずがないので、多分バグだと思います。普通はまだ習得していないはずのリレミトを使ってダンジョンからひとっ飛び。ここから動作がおかしくなりました。豚が作るときには、このようなバグを極力出さないように頑張ります。

午前1時23分

 

ドラクエⅢを久しぶりにプレイします。

本当なら昨夜から始めようと思っていましたが、夜は疲労困憊していてそのまま寝床へと入ってしまいました。結局眠れずゴロゴロしたあげく明け方前には起き出してしまったのですが、何となくプレイするきっかけを失ってしまいました。

明日は何も予定は無いので(勿論弟の介護はありますが)、今夜からドラクエⅢの世界に旅立とうと思います。チートを使って最後までプレイした後、再度プレイしてデータを集めるつもりです。プレイするのはファミコン版のドラクエⅢです。プレイするうちに「どんなモジュールが必要なのか」等を分かれば良いなと思っています。

まもなく弟は夕食なので、ベッドから車椅子に乗せ替えてからレッツプレイ!しますね。

午後8時36分

何から手を付けようか?

取り敢えず「ドラクエ移植プロジェクト」のたたき台になるプログラムは発掘できました。「Simple Map Editor ver.0.01」で編集したマップを表示・スクロールさせるだけのプログラムですが、これを元にして色々と肉付けしていきたいと考えています。
このプログラムはまだバグを孕んでいるので、徹底的にデバッグする必要がありますが、もっと効率よくスムーズスクロールさせることは出来ないか、検討するつもりです。
DXライブラリにスムーズスクロールのサンプルプログラムが掲載されているのですが、何故かビルドできずに実験するに至っていません。昔の書籍を引っ張り題して、ゲームプログラミングの考え方を再確認するつもりで居ます。

まぁ効率化は取り敢えず置いておくとして、次に手を付けるべき作業を何にするか悩んでいます。考えられるのは、
1.マルチウィンドウモジュール
2.NPCの表示と制御モジュール
3.宝箱やドアなどの、マップ上のイベント管理モジュール
4.膨大な数に及ぶと予想されるフラグの管理モジュール

以上4点が今考えている案件です。もっと他に大事な案件があるかも知れませんが、思いつき次第、そちらに切り替えようと思います。

当初はマップチップ番号を管理の基準にして、この番号で全てのイベントを処理しようと考えていました。(同じドアのマップチップでも、起こるイベントによってマップチップ番号を変える方式をとるつもりでした。若しくは座標で管理して全てのイベントに番号を振り、それをテーブルにしてイベント管理を行うつもりでしたが、物凄い巨大ループになりそうなので、別途方法を考えることにしました。座標管理の原則は覆せないですが……。マップ毎にイベントテーブルの差し替えも良いなぁ……。)

正直なところマルチウィドウのモジュールは簡単なので、それ以外のモジュールから作成していきたいと思います。「このマップチップは通行可能か不可か」を判別するのも一つのイベントなので、3番のイベント管理モジュールから作成していくことにします。
モジュールの詳細については、作成しながら記載していこうと思います。

午後1時32分

 

ドラクエ移植プロジェクト、本格始動。

かなり以前に作成したキャラクタエディタとマップエディタが見つかったので、現在作成中のキャラクタエディタを廃棄しました。低機能ながらも最低限の機能は備えているエディタなので、キャラクタとマップを作成するだけなら困らないはずです。

作成したマップをスクロールさせるプログラムも書いていたのですが、そちらはどこに行ったのか不明なので、また新たにコードを書こうと思います。
取り敢えず全マップとキャラクタの作成は先延ばしにして、ある一つの街の中での動作を完璧にする事からはじめることにしました。
そこで、早速問題点が幾つか現れました。
1.NPCの制御と会話
<町中での住民の移動や会話に関するイベントをどういう形で実現するか?>

2.街の中を含むフィールドマップでのイベント。
<建物の中に入ったときに、屋根を消したりする。宝箱を開けたときに発生するイベント。アイテムを使うことにより、通れなかったところが通れる様になるなど>

高校時代に開発していたゲームでは、1も2も同じ「イベント」ととして処理をしていました。それはNPCが勝手に動き回ることは無く、マップチップの一つとして処理していたから出来た芸当です。
今回のドラクエでは、町の人などのNPCは勝手に動き回ります。しかも柱や壁には反応して方向転換をする等の処理が必要になります。
また、会話などもチャートにすると複雑になってくるので、それらをどう処理するかを考えていきたいと思います。場合によっては「疑似スプライト画面」を作る必要があるかも知れませんね。

午後9時56分

 

Hello world!

WordPress へようこそ。これは最初の投稿です。編集もしくは削除してブログを始めてください !