Python 対応の通信の修正(NPC をコーディングして領地経営するゲーム開発)
リロード操作をすると通信できなくて動作しない問題に向き合います。
やったこと
Python 対応
Python 対応では、NPC を動かす Python スクリプトとゲームとで TCP/IP 通信を介して制御と情報取得とを行っています。
修正の開始前は、ゲームをリロードすると TCP/IP の接続の段階からエラーになっていました。
そして、それなりに調べてゲーム側のサーバポートを適切に閉じるようにした結果、NPC 側の Python スクリプト実行が全て終わった後でのリロードは適切に動作するようになりました。よいです。
↓ NPC 用に起動した Python プロセス
それからも実装を見直して試行錯誤した結果、リロード時にゲーム側の Python プロセスまわりの変数をクリアしてなかったのを修正したところ、いつリロードしても適切にリスタートされるようになりました。よいです。
雑多な修正
↓ ファイル一覧での以前修正したドキュメントと同じような問題がありました。
修正しました。よいです。
あと、冒険者パーティと敵軍が重なったときの冒険者パーティのメンバーの体力が減らないのを修正しました。よいです。
まとめと今後の予定
気付いた不具合は修正できたし、Python 対応も進んだので大変よいです。
次の Python 対応の実装は、NPC を生成するあたり、および生成した NPC に Python スクリプトを割り振るあたりと小難しいです。がんばります。