基本情報からユニットをVASSALに登録しようとしたが、
苦戦したので後のために以下にメモしておく。
1.前提
(1)基本情報
データベースに登録したものと同じ情報である(前回までに作成済)。
(2)元になるVASSALデータ
ユニットだけが未登録のデータ(地図は前回で登録した)。
(3)登録プログラム
Pythonのbuild変更プログラム(以前に簡単なテスト済)。
2.VASSALのエラー
(1)Socket Error
下図のようにエラーが出る。しかし、メッセージをみても原因が良く分からない。
(2)上記の対策
buildモジュールの変更と合わせて、imageファイルにある不要なファイル(古いマップと、
地図編集用に出力したHEXマップ)を削除した。念の為に、このファイルを元にもどしたら、
上記エラーが解消された。どこかで参照されていたらしい・・・。
(3)internal error
フランス軍のユニットを登録したら、下図のエラーが出る。
エラーログを見ると、下図赤枠のように指揮官ユニットでエラーが発生していることが分かる。
(4)上記の対策
指揮官の歩兵ボーナスで、攻撃と防御で異なる場合に6/3のように
スラッシュ(/)が入る。今回はOudinoが該当した。このスラッシュは
制御文字に使われるので、その前にバックスラックス(¥)を付けないと
上記のエラーがでる。そこで、プログラムで自動的に変換するように
したら解消された(以前にユニット名称で同じエラーになった)。
(5)その他
修正したプログラムは、以前に記述した[効率化検討]Pythonのbuild変更プログラムの
ソースに反映した。
<個人的な感想>
地図の登録とユニット登録の問題対策に丸1日はかかり、エラー原因が分からずに途中で
挫けそうになった。試行錯誤で何とか解決できたが、デバック能力は相当衰えたように感じた。
原因特定のために、条件を変えながらテストして切り分けていくには、忍耐が必要である。
先の見えない手探り状態で続けるには、意思(情熱)も必要であると感じた。挫けそうになる
気持ちを立て直すには、”ここで止めるわけにはいかない”というような後押しが必要になる。
”新しいものに挑戦するなら、1回や2回の骨折は覚悟してやれ!”と言っていた先輩を
思い出した。その人は嫌いだったが、この言葉は何故か記憶に残っている。