日記(90)

<前 次>

PHP8.3とドラゴンクエスト10

PHP8.3

メテオンもどきのあれ以外は特に問題なさそうだったので、本番適用。
今のところ問題は起きてなさげ。
PHP8.4もリリース間近ですが、しばらくは様子見です。

ドラゴンクエスト10(しろいコキン)

7.2で追加された強ボス一通りやってみました。
まあ基本的には昔の強ボスと同格なので、そんなに苦戦せず。

(ストーリーボスのネタバレなので)

邪教祖サダク強 ショック

  • 【強モード】邪教祖サダク強をはじめて倒した!

大切な家族を失った遺族の弱みに付け込んだド畜生。
こちらのレベルが高いこともあって、特に強さは感じなかった。

スイーツトロル強 ショック

  • 【強モード】スイーツトロル強をはじめて倒した!

飴舐めてるやつ。
強モードになっても飴舐めまくってたけど、まめちしきでは飴への言及なし。

グレイブディガー強 ショック

  • 【強モード】グレイブディガー強をはじめて倒した!

なんかピラミッドの奥で出くわしたやつ。
こいつだけちょっと強く感じた。
超ちからためからのノータイムはげしく斬り裂くで一度死んだ。

魔勇者アンルシア強 ショック

  • 【強モード】魔勇者アンルシア強をはじめて倒した!

本編では地獄の連戦であまりにしつこくしんどかった魔勇者。
強ボスでは闇のころももなく連戦もなく、聞き分けのいいお嬢様でした。
多分ネルゲル強のほうが強い。

キラーマジンガ ショック
そしてこちらが特に関係のないキラーマジンガ。

他の写真は以下から。
写真置き場「2024/11/11」

NeoMuplとアンパンマンDBとドラゴンクエスト10

NeoMupl

ファイル名編集の問題は、同じ名前に変更させないという方針にしました。

アンパンマンDB(記事更新)

コラムから転記。

ドラゴンクエスト10

毎月10日はDQXで遊ぼう! ~DQIIIコスプレパーティー~ (2024/11/5)|目覚めし冒険者の広場
ドラクエ3リメイク発売間近ということで、コラボイベント的なのやってたみたいですね。
今んとこ3リメイクに関しては買う予定ないですが。

HD-2D版『ドラゴンクエストIII そして伝説へ…』発売 (2024/11/8)|目覚めし冒険者の広場
で、テンの日とは別のコラボで、伝説の三悪魔闘カードをもらいました。
闘…?

NeoMupl

ひとまず、アンドゥ・リドゥ機能、実装しました。
再生日時まで履歴記録時のものを再現してしまうとか、ファイル名編集時が怪しそうとか、ちょっと懸念点は残っています。

再生日時は、うっかりミスの復元のためだから、うっかりミスしてから元に戻すまでの間に再生することはないだろうし、気にしないというのもありかも。

ファイル名編集がちょっと厄介そうで、もともとの仕様として、他の項目と同じファイル名にすると、統合されちゃうんですよね。
今回の実装だと、このパターンがおそらく復元できません。
とはいえ、統合する仕様自体、私もすっかり忘れていた仕様なんで、編集で他の項目と同じファイル名にするのを禁止する仕様に変更してもいいかもしれません。
そうすれば、アンドゥのほうはシンプルな実装を維持できるはず。

アンパンマンDBとNeoMupl

アンパンマンDB(記事更新)

来週の放送情報。
おくらちゃんの肩に乗るサンショウくんが可愛いな。

NeoMupl

アンドゥ・リドゥの具体的な実装はまだだけど、呼び出す口は作りました。
中身の実装もそんなに難しくはないとは思います。
追加に対しては、記録時に追加分を記憶、アンドゥで削除、リドゥで記憶したものを追加。
削除に対しては、記録時に削除分を記憶、アンドゥで記憶したものを追加、リドゥで削除。
変更に対しては、記録時に変更前・変更後を記憶、アンドゥで変更前を上書き、リドゥで変更後を上書き。

メテオンもどきとPHP8.3とNeoMupl

メテオンもどき

ゲーム本体はもうとっくに動かないんだけど、微妙な警告が出ていました。
PHP8.3の動作確認中だったのですが、バージョンアップの影響かどうかは不明です。
どのみち、良い傾向とは言えないので、修正しています。

PHP8.3

というわけで、ステージング環境的な場所で、動作確認中。
表示時にエラーが起きないかどうかだけなら、クローラーを走らせればいいだけなので楽。
まあ、でたらめに走り回るので、エラー発見効率はお察しですが。

NeoMupl

コミットメッセージが紛らわしいですが、アンドゥ・リドゥ機能の実装を始めました。
GitHub Copilot を試しに使ったんですが、チャット機能で生成させると微妙で、履歴の一動作に相当するインターフェースを作ってやると、それに沿っていい感じに作ってくれました。
アンドゥ・リドゥ機能自体はエディタ系のプログラムでは定番なので、お手本となるコードも豊富なんでしょうね。
こっから先の、各動作を実際にやり直す機能は、さすがに自力で実装しようと思います。

HTMLとアンパンマンDBとPHP8.3

HTML

とりあえず主要なファイルは一通りアップ終わりました。

アンパンマンDB(システム)

また発動していないバグ修正。
話数が空欄じゃなくて「0」になっていた場合に、「第0話」とかになってしまうんですが、アンパンマンDB的には「0」も空欄扱いしたいので、空欄の処理に飛ぶようにしました。
さっきのHTMLと一緒にアップ済みです。

PHP8.3

もうそろそろPHP8.4の正式リリースも近そうですが、うちはまだ8.2だったので、ひとまず8.3まで上げることにしました。
とりあえず開発環境での動作は一部のライブラリ以外はコードの修正なしで大丈夫そう。
本番サーバーはオプションを変えるだけだからいいとして、DockerとCI環境も対応しておかないと。

アンパンマンDBとXdebug

アンパンマンDB(記事更新)

コラムからの転記。
この程度なら毎日いっぱいやってもいいのにね。

アンパンマンDB(システム)

リストをNULL検索できないバグを修正しました。
ただ、今のところ、何もない項目はNULLじゃなくて空文字列が入っているので、実質的に影響はありません。

Xdebug

Xdebug - Debugger and Profiler Tool for PHP
Xdebug導入しました。
すなわち、Xdebug使わない縛り辞めました。

もともとデバッガとしては、PHP標準のphpdbgを使ってました。
PHPUnitのカバレッジもphpdbgだったんですが、PHPUnit10以降(最新版は11)には使えなくて、phpdbgのために古いのを使う続けるのも厳しいなって思ってました。

カバレッジ計測の選択肢としては、PCOVもあったんですが、あんまり更新されてなさそうだったし、カバレッジ「だけ」というのもどうかと思ったので、デバッグ並びにカバレッジ計測の定番、Xdebugを導入した次第です。

そもそもXdebugを避けてphpdbgを使っていたのは、XdebugはPHP標準に入っていないというのと、カバレッジ計測が遅いという話を聞いたからだったのですが、実測してみると、今はXdebugのほうがphpdbgより1割ほど早く終わりました。

<前 次>