2008年4月のエントリ

ロビーサーバ復旧完了。


Silverlight。TextBoxのスクロールできないのかな,と調べてみた結果,ScrollView ElementにTextBox Elementを入れればいいことが分かった。これにVerticalScrollBarVisibility="Auto",ScrollView.ScrollToVerticalOffsetを組み合わせれば一通りのことができる感じ。

Silverlight版ロビーサーバをローカルではなくWebサーバ上に置いて実験してみた。でもロビーサーバに接続しようとするとAccessDeniedが返ってくる。Webで検索するとSilverlight 2 beta 1 and Socket Exception: Access Deniedというページに原因が書いてあった。どうもサーバのドメイン名の逆引きができないとダメらしい。まあIPアドレス指定すれば使えるから実験としてはいいか。Silverlightの正式版ではこの辺りの制限は緩くなるっぽいし,何か作って公開するまでには正式版が出てる,かなあ。


第1ロビーサーバが停止している間にロビーサーバの気になっていた箇所を修正している。Unicode正式対応とか英語化とかゲームごとにサーバを分離とか。なので第1サーバ自体が復旧してももうしばらく第2サーバをメインにしておくかも。

ロビーサーバ停止中。HDDが死んだらしい。OS入れ替えて設定して,ロビー動かして,になるので復旧はしばらく先。

Silverlightの実験として,ロビークライアントを作ってみる。Silverlight 2.0からは日本語入力とSocket通信がサポートされたので,なんとなくうまくいった。でも使用できるポートが4502-4532に制限されているので,そのままではウェザタイのロビーサーバには接続できない。まあSilverlightでネット対戦ゲームは作れそうってことで。

以下画面キャプチャ。IEの中でロビークライアントが動いている。ホントはぱじさんのFlashクライアントと同時接続して,JavaのサーバにC++/Flash/Silverlightクライアントから同時利用,というわけのわからない画面が欲しかったんだけどとりあえずここまで。

2008040601


Silverlightの開発環境があまりに混沌としているのでメモ。以下を使えばSilverlight 2.0開発,実行が可能(必須ではないが)。

今やすっかりFlashの人になったぱじさんがロビークライアントFlash版を実験してた。私もSilverlight版を作ってみるかな。

2008040501

ぱじさんの「これからは全世界対応だよね」という発言でチャットの文字コードをUnicodeにしたのだが,UTF-16だとうまくいかない。UTF-8だとうまくいく。どうやらFlashのバイナリソケットのUnicode書き込みはUTF-8にしか対応してないような感じ。ドキュメントにはUTF-16も使えるように書いてあるっぽいんだけどなぁ。

# ちなみに現状公開しているロビークライアントはSJISしか使えないが,実は非公開でUnicode対応版があって,私だけ使っている。公開するタイミングがない。