2002年3月のエントリ

掲示板の文字コードの話。具体的には

// (Unicode->SJIS 1 文字変換の例)
if(setlocale(LC_ALL, "Japanese") == NULL)
{
    if(setlocale(LC_ALL, ".ACP") == NULL)
    {
        // エラー
    }
}
int result = wcstombs(sjis, unicode, 3);

で,setlocale が 2 つともエラーになっている。これが通らないっていうのはどういう場合なんだろう。で,今開発版に上がっているのは,

// (Unicode->SJIS 1 文字変換の例)
int result = ::WideCharToMultiByte(932, 0, unicode, 1, sjis, 2, NULL, NULL);
if(result == 0)
{
    result = ::WideCharToMultiByte(CP_ACP, 0, unicode, 1, sjis, 2, NULL, NULL);
    if(result == 0)
    {
        // エラー
    }
}

である。wcstombs は内部的に setlocale されたコードページを使って WideCharToMultiByte を呼び出しているので,やっていることはほとんど変わらない。前者がうまくいかないならば後者もダメそうだが。他に手が見つからない。

ウェザタイのポート。やはり混乱しそうなので,デフォルトは今まで通りってことで。デフォルトでうまく対戦できる場合はそのままで,4人対戦などができない場合は全員が「ポートを指定しない」オプションにすると対戦できるようになるかも知れない,程度に考えてください。


音を鳴らさないオプション。DirectMusic 初期化エラーの応急処置なわけだが,音源がないマシンなどでも動くようになるという副作用もあるので,解決してもこのまま残しておくと思う。


掲示板に書いたのでこっちも。ウェザータイピング大会というのが行われているようで。リンクはしない方がいいのかな。ウェザタイの楽しみ方の究極形はやっぱり大会だと思うので,というかリプレイなんかはそのために作ったようなものだったりするので,こういう企画は嬉しい。で,大会で問題となるのは,参加者集めと個々のユーザの環境整備だと思うが,私にはこの 2 つとも大変なので自分で企画するのは思いとどまっていたりして。ともあれ応援してます。

ウェザタイがもっとあらゆる環境で安定すればもっとスムーズにいくんでしょうが,その点は申し訳ありません。まあ,いろんな環境でのバグ報告が来るというのはソフトが広まっている証拠と言えなくもないので喜ぶべきかも知れませんね。

ウェザタイのアーカイブのサイズについて。今更気付いたのだが,title.png がやけにでかい。png なので圧縮済みの状態として,実行ファイルを圧縮したものに近い大きさになっている。これを例えば 150×150 256bpp とかのタイル画像とかにすれば全体のアーカイブが 1MB を切りそうである。今の時代でも 1MB を切るか切らないか,というのは結構ダウンロードのしやすさで違うような気はする。多分次のバージョンではそうすることにしようと思うのだが,どうでしょう>Pha-jtd氏。

あと掲示板とカウンタとランキングが重いというのもあるので,Hi-HO eva サーバが 03/11 から Perl5 に対応したのを機に見直すつもり。

トップページのエセカウンタが 10 進数で 10000 になったのを記念して,アクセスグラフを公開してみた。今後月一くらいで更新する予定。SVG とかでグラフを動的生成すれば更新の必要がないのだが,さすがにそこまでは大変。

アクセスグラフについて補足。2001/04/18 にウェザタイ公開。2001/06/18 に突出してるのはGANGAS – Type Well Fanさんからリンクを張って頂いた日。2001/11/26 は某匿名掲示板(?)に初めて話題が出た日。2002/02 に上昇しているのはいろんなところからリンクを張って頂いたりしたお陰。2002/03 にさらに伸び続けているのはシャドールームさんにリンクを張って頂いたお陰,と推測される。しかしこれを見ると,ウェザタイ以前は何やってたの? って感じが…。いや,いいんですけど。

ウェザタイ。使用ポートをデフォルトでは指定しないように変更する。今まではポートを指定して,ルータの設定がポート 1 つで OK になるようにしていたが,これによって 6073(ホスト),2302-2400(ホスト・クライアント)となる。

他の DirectPlay8 ネットワークゲームに合わせる意味と,4 人対戦が安定しないのが少しはよくなるか,ということで変更したんですが,今まで動いていてこれで動かなくなった場合,今までのようにポートを固定するオプションをチェックしてください。

今更だが Pha-jtd 氏がタイピングにはまりだしたらしい。今まで氏は本腰入れて練習してなかったからなあ。ということでまたワード作成してるらしいのでちょい期待。


トップページ,掲示板とランキングの最終更新日時を表示するようにする。ちょっとだけ重くなったかも知れないが,結構便利かも。

開発を数ヶ月停止とか言っておいてロビーサーバをちょこちょこと試したりしている。一応ロビーにつないで,チャットをして,ホストになって,接続する,という一連の作業はできたりしたのだが,問題がかなりいろいろあって,完成度を高める時間がない故,完成はおあずけ。そういえばワード作成ツールも作っているが,コピーアンドペーストとアンドゥ機能を付けるのが時間かかりそうでこっちもおあずけにしてたりする。ああ,作りたい。

# この機能が完成していれば例の大会(?)のような場合にも便利だったかな,って思いますが,どうなんでしょう。

denasu.to でウェザタイのロビーサーバを作ったらという話を Pha-jtd 氏とする。ロビーサーバ作成自体は面白そうなんだけど,需要ってあるのかなあ。需要がありすぎても denasu.to は回線が弱々なので無理だけど。

vector に ver1.5 が登録された。今回は割と早かったような。ちなみにこの間表示形式が変わったようで,新着順や人気順ランキングが見られるようになっている。


時代に逆行するようだが,ある事情で GIF の読み込みルーチンを作る。TIFF ライブラリについていたサンプルを真似してあっさり完成。しかし特許的にフリーソフト等に組み込むことはできない。残念。そういえば MNG って今どんな感じなんだろう。

ランキングにも登録して頂いてますが,シャドールームさんからのアクセスがすごいことになっている。他にも近頃,いろんなサイトで好意的に紹介頂いているようで,ありがとうございます。ってここに書いても誰も読まない気もするけど,作者がいろんなところに出没して宣伝するのもなんかうっとおしがられそうなのでここで挨拶に代えさせて頂きます。

# 上ので分かると思いますが,REFERER は取っているので,リンク頂いているページはだいたい見ております。

Weather Typing ver1.5 をアップ。これでバグ報告以外は開発を数ヶ月停止することになると思う。

ウェザタイ。Pha-jtd 氏と話していて,画面をもう少し凝ろうということに。少なくとも今のままではタイトルが適当すぎる。あと,プレイ履歴を保存出来るようにし,勝敗数・レベルなどを表示するようにして,バグがとれれば ver1.5 として公開出来るかも。

Vector を見ていて,ワード自動生成機能を持ったタイピングゲームを発見する。しかもウェザタイより公開が 2 ヶ月ほど早い。同じ事を考える人はいるのね。

#と思ったら 2001 年公開じゃなくて 2002 年公開かな? まあどっちでもよいですね。

Cygwin 付属の SSH をコンソールアプリから呼び出して使う。予定だったが,標準入力をパイプから流してやっても反応しない。のでしょうがないので telnet でどこかにログインしてそこから SSH を使うとかでごまかす。


terrarium。なんとか最初の草食動物を作ってみるも,敵が強すぎて即絶滅。やっぱり敵がいたら一目散に逃げるというルーチンはダメなのか。