2009/04/23(木)G-XTH3

G-XTH3 の発売日が 5末に決まりました。(結構前に)
竹は G-XTH を応援しています。Wizardry といえば Ultima と双璧を成す RPG の大御所。
ページのサイドバーにバナー張ってみました。

どうやら次回作もすでに企画しているようで抜け目のない Team Muramasa に愛の声を!
馬小屋劇場から飛び出した村正八隊員は活躍するのか!?等、乞うご期待!



あと、BOD管理ツールが Ver.1.2 になったようです。
UOAベンダーエージェントのクリップボードデータを直接読み込めるようになったらしい。
コードの整理は行わずにそのまま突っ込んだらしい。

次はなんだろう、1.2.1 で入力項目無しの一覧表示オプションとかかな。

2009/04/22(水)続々・UO のジャーナル保存

UO のジャーナル変換プログラムを作ってみました。

UO Journal Fixer
UOJFixer.jpg


世の中には数多くあるし、HTML で色分けしてくれる便利なものもあるのでまぁ、自分用。
久しぶりに C どころか Win32 プログラムも楽しめたので満足しました。
さらに自分しか使わないんだけど、コマンドライン版の uojfix.exe は uojfixcli.exe として書き直す予定。

アイコンのデザインって難しい。

2009/04/20(月)UO のジャーナル保存:根本的に間違ってました

<CR> が 0x0d、<LF> が 0x0a。
なので言ってることもサンプルコードも根本的に間違い。<LF><CR> っていうのが改行コードのつもりで残るので、読めるけど行頭にゴミが入る、もしくは改行されない、というファイルが出来上がる。
他にも sizeof(char) でサイズ決めたり、char で変数宣言してるけど、意図的には単純に 1Byte 単位のデータが欲しいのであって char が欲しいのではない、とか。

で、UO のジャーナルは改行が 0x0d0a000d00 となっているのを 0x0d000a00 に置き換えるのが正解。
0x0d0a00 を 0x0d000a00 に置き換えて、0x0d00 を削除するのが簡単か。
どうなったらこういう改行コードが付くんだろ。

ということを踏まえて書き直して、UTF-8 への変換を書いて遊んでた。コードは長いので略。
ググって出てくる iconv(3) のサンプルもまともなものが少ないという悲しさよ。

2009/04/19(日)続・UOのジャーナル保存

UO をネタにプログラムで遊ぶ日記になってきた。

久しぶりに C を書きたくなったので、ミソな部分+αを書いてみた。
  • シングルバイトな<LF> を取り除いて
    • 諸悪の根源を除去
  • <CR> も邪魔なので取り除いて
  • ついでに <LF> が連続する場合も取り除いちゃう
というプログラム。

後は
  • UTF-16-LE な文字コードを UTF-8 か Shift-JIS に変換
    • マルチプラットフォームで文字コード変換できるライブラリってあるんかな
  • 処理結果をファイルに保存
    • 10行くらいの追加でとりあえず OK
すれば機能は十分。GUI が付けば完璧。やらんけど。

UO のジャーナルファイルは一度のゲームで数百KB 程度になるらしいので、一度に処理するバッファのサイズは 128KB くらいがちょうどいいのかなぁ。

続きを読む

2009/04/19(日)UO のジャーナル保存

人狼してると UOのジャーナル保存機能を使いたいが、ゲームが用意している設定インタフェースからではジャーナル保存機能は有効にできない。
できないならまだしも項目はありつつ有効にならない。

ググって人様が得た情報を参照させていただいた。
人狼オンライン:ログを取ってみよう!
Fannelの独り言:UOのログのとり方

続きを読む