Directorで作ったミニゲームをGodotで再構築する(その3)
ウイスキーデータベースV2も完成したので、DirectorのミニゲームをGodotで再構築しようと思い、簡単そうなものを選んだつもりがパーツが多くて意外と面倒だった。クワルト(Quarto)も作りたいんだけど、過去のデータが手元にない。昔のバックアップCD-Rからサルベージしないとダメなんだけど、もうCD-R自体が死んでるかもしれない……。
パーツのサルベージ
今回も古いdirからパーツをサルベージする。ソースも見たかったので、まずはprojectorraysを使ってLingoをサルベージしてClaudeに読ませるとすぐにどんなゲームか理解してくれた。

次にDirector Cast Ripperで画像データや音のデータをサルベージ。

ここまできたらいつもの通り自作のPNG拡大余白抜きツールで全部サイズを2倍にする。ここまでは楽勝だ。
パーツが多くて大変
お部屋パズルは5×5のパネルをスライドさせて揃えて行くんだけど、全てのパーツが8コマでアニメしている。なので、5×5×8で200このパーツがある。サルベージしたパーツはCastウインドウ内の番号がそのまま振られているので使いづらいので左上から順に01-01.png、01-02.png…01-08.pngと手でリネームしていく。しかも07-xx.pngの次を09-xx.pngにしてしまったことを23-01.pngの辺りで気づく……。
初めから使えばよかったんだけど、「Namery」を使ってずれを直して、その後の23-xx.pngから25-08.pngまでリネームした。一瞬だった。なんで最初手でリネームしたんだろう。
クワルト(Quarto)が気になる
パーツのリネームが終わったんだけど、やはりクワルト(Quarto)が気になる。気になり過ぎたので家にある過去の大量のバックアップCD-Rを探したら、ジャケット(って言うのかな?)中に入ってる紙にどんなデータが入ってるかを細かく書いてあったので目的のディスクを発見できた!
しかし、Macで焼いたHFSフォーマットのCD-RなのでWindows11マシンだと普通には中身を確認できない。そこで、オープンソースの無償ソフトウェア「HFSExplorer」をインストールしてサルベージする。結果上手く行ったっぽい。しかし、今はお部屋パズルを優先させる。
パーツを並べてみる
Claudeにコードを書いてもらってパーツを配置した。配置した時にツールで拡大して透過部分として#ffffffを抜いたら、結構な割合で白を使ってるパーツがあって困った。
最終的にClaude Codeを使って以前作ったツールの「透過部分を抜く、抜かない」をチェックで選べるようできるようにバージョンアップさせて解決した。

その後全ピースを8パターンでアニメさせるところまでは一瞬だった。ドット絵を若干描き直したりしたがほぼ原作通り。
ボタンを配置して微調整
次はコードで矢印ボタンを配置して、画面のサイズを少し狭くしたりタイトルを配置したい微調整。
原作の矢印ボタンは何しても変化しなかったので、デフォルトは矢印の赤が暗くてホバーで明るくなるようにした。

クリア後の演出の確認でハマる
原作をクリアしてクリア後の演出を録画しようと思ったのだが、自分で作ったものなのになかなかクリアできない。すごくイライラする!
最終的にClaude Codeに指示してパズルの解法を導き出すアプリを作らせた。何やってんだか……。

良いところまで出来たのに……
クリア後の演出も録画できたし、パーツの調整もうまく行ったんだけど、もう少しで完成というところでClaudeがコードを壊してくれた。単純なゲームなのでまったくGitHubにpushも全然していなかったし、ちょっとだけおかしなところがあったのを酒を飲みながら修正指示出してたらClaudeも酔っぱらったのかGodotエディタで再生すると動きが全然おかしくなった。直せど直せどおかしくなるばかりで、Claudeに怒りをぶつけまくった。
最初気になっていたちょっとだけおかしなところがある状態に戻すこともままならず、2~3時間くらいハマった。
最終的には理想的な動きになったんだけど、Claudeの記憶力は当てにならないと思った。いや、自分の使い方が悪いんだろうなとも思ったけど。

消音ボタンをつけてitch.ioにアップ
土曜日にあらかた完成したので日曜の朝に消音ボタンをつけて完成。

itch.ioにアップして作業終了。間違ってデバッグ用に1回しかシャッフルしないのを上げてしまってすぐに修正版に差し替えた。

今回は出だしはかなりスムーズに進んでいたんだけど、酒飲んで作業したあたりからClaudeがコードを壊しまくったところだけがハマりポイントだった。仕組みが単純だしハマりさえなければ1日でitch.ioへのアップまで持って行けるわ。
もし興味を持ってくれた方がいたら遊んでみてください。
次こそクワルト(Quarto)作るかな。(前回もそう思った)
おわり
