moe

排他制御

moe

調べてみると排他制御は CGI 製作者にとっては根が深い問題のようだ。MOE は色々と試した結果 flock は信用ならんと mkdir 方式を採用しているのだが、別に flock が悪かったわけではなく、mkdir でもアクセスが集中すると結局似たような頻度でロックが効い…

最適化

moe

一部の処理の最適化を試みたところ、それまで 6 秒かかっていた処理が 0.5 秒を切るまで高速化された。速くなりすぎて逆に気持ち悪い。勢い余って何か重要な処理を削ったりしてないだろうな。まあ、この程度の高速化だとユーザは気付かないと思うが、排他制…

#006 埋まらず

moe

しかしどこで宣伝すりゃいいのか。 http://asagi.la.coocan.jp/diplomacy/?room=6

#006 募集中

moe

引き続き人柱求ム。 http://asagi.la.coocan.jp/diplomacy/?room=6#home

排他制御

moe

ラクーカンでは flock の挙動がおかしい。こちらの使い方がマズいのかも知れないが、肝心なところでロックが解除されている節がある。ロック争奪ループから出るとロックが解除される? となると Ruby の問題か?良く分からないが丁度良い確認方法も思いつか…

メモ

moe

指定年の外交フェイズに巻き戻す手順。 指定年のターン数を確認 部屋テーブルのターンとフェイズを変更 変更後のターンより未来の情報(命令、ユニット、地域)は全て削除 変更後のターンの維持、撤退、増設、解体命令を削除 変更後のターンの残りの命令のス…

マップが不評

moe

まあ自覚はあったので別にヘコんだり腹を立てたりはしないが。どっちかつーと申し訳ない気持ちでいっぱいだ。 誰か描いてくれないかなーとネットを探してたらこんなの発見。 かがみのくに http://blog.goo.ne.jp/kagami-en/e/5627665c7eb5be77a0a2b1df008f3c…

#002 開始

moe

http://asagi.la.coocan.jp/diplomacy/index.rb?room=2#home今のところ大きなトラブルはなし。

排他制御とか

moe

よく分からないままに色々試してみる。 更新さえアトミックにやってもらえればその後の表示でずっこけたところで大したダメージではないと割り切って進む。まずサーバの CGI 実行時間制限を疑い、重い更新処理を fork してみた。これで親プロセスがタイムア…

原因不明

moe

#001 の 1901年秋の更新でエラーが発生し、復旧に少々手間取った。しかし、非常によろしくないことに、原因は未だ特定できていない。ローカルで確認しようとしたらそのまま動いてしまったのだ。サーバの性質の問題だとすると厄介だ。兆候はある。自宅の老朽…

滅亡国の扱い

moe

滅亡した国の担当者には全ての発言が公開されることにし、その代わり「亡国の嘆き」は表には聞こえないようにした。自国が如何なる策略によって滅亡に追いやられたのかを知ることができ、さらに眼前で繰り広げられる裏だらけの交渉がリアルタイムで追跡可能…

増設

moe

部屋を増やしてみた。 複数の部屋が同時に進行するという状況は手間がかかりすぎて手元ではテストしていなかったので、結構怖いバグが潜んでいるような気がする。 各国のイメージ画像も暫定処置としてフリー素材の国旗を拾ってきた。 やはり国旗は堅実な印象…

開始

moe

のっけからいくつかのバグに遭遇し大慌て。週末で良かった。 特に「ある条件下で、全ての書簡や独り言が丸見えになる」という致命的なバグには肝を冷やした。

試験運用状況報告

moe

現時点で ID 登録者 5 名、内、参加申請者 3 名。 あと 4 人集まらないと始まらない。ここを見ている人の数を考えると意味がないような気もするけど一応 URL 貼っとくか。 Diplomacy MOE (仮称) http://asagi.la.coocan.jp/diplomacy/

sendmail と Kconv

moe

ソースは UTF-8。sendmail に渡す際に Kconv で iso-2022-jp に変換。 #!/usr/bin/ruby -Ku require 'kconv' mailer = '/usr/sbin/sendmail' from= 'xxx@xxxx.xx' to = 'xxx@xxxx.xx' subject = '件名' message = 'これはテストです。' open("| #{mailer} -t…

公開

moe

LaCoocan は Ruby の OpenSSL ライブラリを提供する意思がないそうなので、TypeKey 認証を諦め、ログイン機構を変更して試験公開に踏み切った。ないとは思うが、万が一大勢で押しかけられるととても対処できないので URL は mixi の某コミュニティでのみの公…

設置してみた

moe

LaCoocan の方に設置してみたのだが、monitor.rb がないと言う。 monitor.rb を入れたら openssl.rb がないと言う。 openssl.rb を入れたら openssl.so がないと言う。 お手上げ。要望は出してみたが、通らなければ TypeKey 認証は諦めねばならぬ。

再修正

moe

春のターンで全軍全基地喪失状態に陥った国は、その時点で滅亡確定とし、実質的には滅亡と同等に扱うことにした。具体的には、その年の秋ターン開始のメッセージで「滅亡確定」を宣告し、インタフェースは滅亡国モードになる。そして翌年春ターンの開始メッ…

修正

moe

StP の陸軍に輸送経由の移動が命令できないバグ私が気付いたとき、Bar に海軍がいたので StP の陸軍に対して Nwy への輸送経由の移動が指定できなければならなかったのだが、命令候補欄に輸送経由の移動が出てこなかった。原因は隣接地域の情報だ。StP(NC)-B…

TODO

moe

全員がコミットしないまま更新期限を迎えた場合の強制終了処理も必要かもしれない。

キリがない

moe

偶然 StP での海軍増設にバグを見つけてしまい、危うく昼飯を食い損ねるところだった。こんな調子では、後どれだけのバグが地雷の如く潜在しているのか分かったものではない。先行きは暗い。

画像

moe

右のは再掲。未だに細々と修正が入っている。作業が完了する気配はない。

完成しているのだが

moe

多分、完成している。完成しているように見える。後は画面上部のタイトルと、各国ステータス欄に入るイメージ画像を待つだけだ。しかし、動作確認をする度に毎回必ず何かしらの修正が入っているような気がするのは何故だ。11月から予定しているテストプレイ…

認証

moe

TypeKey 認証を使用。要メールアドレス通知。でも更新通知メールは考えること自体を忘れてた。メールアドレスを変更した場合の処理はどうするか。ログイン時に毎回保存アドレスを更新かければいいか。他に何かすることあったっけかな。 ……あ。トップページの…

さくっと修正

moe

宛先の漢字表記化。所要時間 5 分。 思ったほど悪くない、か? 土が抜けてるのは、入れたら書簡モードにならないから。流石にすべての国を宛先に入れたら公式声明扱いにすべきだろう。リアルタイムで追うギャラリーを無視されてはたまらんからな。

外交 I/F 変更

moe

こんな風に変えてみた。オーストリア視点。滅亡した国は宛先リストから消える。ぶっちゃけ美しくないが機能は足りているはずだ。「書簡」で 4 国以上をチェックすると公式発言扱いになるのは手抜きと言えば手抜きか。1 国もチェックしなければ独り言扱いにな…

不満が出そうなところ

moe

一応、終わりまで遊べる段階までは仕上がってるっぽい。ただ、外交フェイズの I/F は再考の余地があると思われる。公式声明と独り言はともかく、他国との秘匿通信が一対一に限定されているのは不親切かも知れない。例えば三者会談をやりたいと思っても、現状…

ほぼ完成?

moe

ユーザ管理周りの手抜きによる仕様破綻で泣きそうになったりしつつも、気が付けばやることはほとんど終わってしまった。作業を再開してから一ヶ月強。DB アクセスの効率の悪さが鼻に付くが、Pentium II 400MHz、メモリ 128MB という数世代前のチープなサーバ…

成績表示とか

moe

成績表示が面倒臭い。実装は難しくないが、レイアウトに溶け込まない。チクショウ、どうせセンスねえよ。もう首位以外はみんな等しく負けってことにして、二位以下の順位付けするのやめようかな。順位に拘る人には「実質二位」とか勝手に主張してもらう。停…

未実装機能

moe

時限更新処理 停戦合意処理 成績表示 動的システムメッセージ 管理人介入機能 更新通知メール送信 時限更新、停戦合意、成績表示は単純に未実装。多分そんなに難しくないと思う。動的システムメッセージは仕様から宙ぶらりん。管理人介入機能は要するに人狼…