先日の大幅アップデート以降SRCDSが頻繁に異常終了するようになってしまいました。そこでSRCDSの異常終了を検知してメールで知らせるようにしたいと思います。Windowsの場合はタスクスケジューラーのイベントビューワータスクで、異常終了のイベントをトリガーにメールを送る機能が元々ついてるのですが、SMTPサーバーも同時に稼動してる事が前提なのか、サブミッションポートやSMTP認証に対応していません。これでは現在一般的なプロバイダが提供するSMTPサーバーを使用する事ができませんので、コマンドラインでメールを送信できるSMAILを使用します。下記のSMAIL作者のサイトからプログラムをダウンロードし適当なフォルダに展開します。http://dip.picolix.jp/disp2.htmlまず展開したフォルダの中の「smail.exe」を起動します。SMTPサーバーの設定にプロバイダの指定する値を入力します。POPサーバーは使用しませんのでdummyのままにして「保存」ボタンを押します。展開したフォルダ(smail.exeと同じ階層)に「body.txt」というファイル名のテキストファイルを作成し、そこにメール本文を記入します。次はイベントビューワータスクの設定です。「管理ツール」から「イベントビューワー」を開きます。Errorでsrcds.exeの項目を右クリックし「このイベントにタスクを設定」を選択。名前はなんでもいいです。「プログラム/スクリプト」にsmail.exeの場所を入力。<送信先アドレス>」hオプションとSMTPサーバー名の間や、-fオプションと送信メールアドレスの間にスペースなどは入りません。続けて入力してください。【以下2011/06/04追記】このままでは全ての異常終了に反応してしまうので、SRCDSの異常終了のみ反応するようにします。トリガーの編集で「カスタム」にチェックを付け「イベントフィルターの編集」ボタンを押します。XMLタブで「手動でクエリを編集する」にチェックを付け入力欄に下記のように記述します。SRCDSのパスは適時読み替えてください。EventData[(Data="F:\SRCDS\tf2\orangebox\srcds.exe")]]</Select></Query></QueryList>これでSRCDSの異常終了にのみ反応するようになります。BeroBeroNekoManmaでは異常終了を検知したら、アラーとメールを管理人に送信→SRCDSを起動→ツイッターで告知。いう流れにしています。ツイッターへの告知はTweetConsoleを利用しています。2010TF2などのSRCDSをアップデートした際に、勝手にマップサイクルが書き変わってしまうことがあり不便なのでバッチプログラムで「SRCDSアップデート」→「あらかじめバックアップしておいたマップサイクルなどのファイルの復元」→「SRCDS起動」という一連の操作を自動化したいと思います。mapcycle.txt、maplist.txt、motd.txtをそれぞれbackup_mapcycle.txt、backup_maplist.txt、backup_motd.txtと別名で同じフォルダにコピーします。メモ帳を開き下記プログラムをコピペし保存します。その後、ファイル名の拡張子を.txtから.batに変更してください。あとはSRCDS終了後、その.batファイルをダブルクリックで起動します。server_bot.cfg各種パスや設定は適時読み替えてください。2行目の-dirの指定はドットだと、batファイルのある場所にDLしてしまうのでフルパスで指定してください。2009Mumble設定(サーバー編)の続きです。(バージョン1.1.8についての記事です。)Mumbleダウンロードサイトはこちら(サーバーもクライアントも同じです)http://sourceforge.net/projects/mumble/クライアント編は設定ウィザードからいってみます。システムですが、VistaならWASAPI。XPならDirectSoundを選択しましょう。オーディオデバイスがASIO対応ならASIOで。未確認ですがXPの場合ASIO4ALLを挿してレイテンシー(音声遅延)を押さえる事ができるかも。ちなみにVistaはWASAPIが選択できればレイテンシー面ではASIO4ALLとほぼ同等と考えていいと思いますので必要ありません。デバイスはデフォルトデバイスを選んだ場合は、コントロールパネルで既定に設定されているデバイスを自動的に選択します。ボイチャ専用のデバイスがある場合は選択してください。コントロールパネルのサウンド設定画面の録音音量設定画面を開きます。大きな声で喋りながら、ギリギリ赤い区域にかからない最大ボリュームになるようにコンパネ側のスライダーで調節してください。(この画面のスライダーではありません。)この設定は音割れしない程度に最大音量を確保する為なのでゲーム中あまり大きな声で話さない人はそんなにムキになって大声出さないでもいいです。その後小さな声で喋りながら画面のスライダーを調節し喋ってる間はギリギリ緑、喋っていない時は青のエリアに入るように調整してください。これもノイズゲートの範囲を決定する為なので結構大きな声で喋る人は逆にあんまりボソボソ声で調整しない方がいいです。どのタイミングで他のユーザーに声を届けるかの設定です。「キー押下で有効化」に設定してマウスのサイドボタンなどを割り当てるか、「音声信号の大きさ」で自動的に検出する設定がオススメです。S/N比検出は一般的なヘッドセットでは設定しにくいと思います。「音声信号の大きさ」を選択した場合はその下のスライダーの設定が必要です。上段のスライダーは音声認識ONとなる境目です。小さいとキーボードのカチャカチャや生活雑音に反応してしまったり、逆に大きく設定すると声が小さいときに反応しなかったりするのでしっかり調整しましょう。下段のスライダーは音声認識OFFとなる境目です。上段とほぼ同じかやや小さい程度でいいと思います。最下段のスライダーは音声認識ONの状態から、音声認識OFFとなって実際に切れるまでの時間です。音声認識OFF以下になってから、このスライダー値の時間以内に再度音声認識OFF以上の音量を検知すれば音は途切れません。短いと句読点の部分で切れ次の発声の最初が聞こえなかったりします。逆に長いと余計な雑音を拾います。これも声がきちんと全部聞こえる範囲でギリギリ短い時間に設定してください。この辺の設定は後からオプションの設定で変更できます。実際に相手と試しながらベストな設定を見つけてください。画面上では音声ONならクチビルが赤くなります。対応のゲームに限りますが、プレーヤーの位置とそのプレーヤーの声の聞こえる方向、距離を再現する事ができます。(要はゲーム内で、右にいるプレーヤーの声は右に聞こえ、遠くにいるプレーヤーの声は小さく聞こえます。設定→設定からも同様の設定ができます。ちなみにここのループバックをサーバーにすると、実際に相手が聞こえてる声と同じ声を聞くことができます。音量を調節や遅延の状況の確認に使えます。音質が悪い場合はレイテンシーを増やしてみましょう。ループバックをローカルにすると、動画キャプチャソフトなどで自分の声も動画に含めることができます。Floorなどの一部のゲームに対応していません。その場合はチェックボックスを外しましょう。ボイスチャットをする際はスピーカー&卓上マイクだとキーボードの音などいろいろな音を拾いすぎてうるさいです。ハウリング(スピーカーから出る音をマイクが拾い、その音がまたスピーカーから出て増幅し続ける事)も起こしやすいので是非ヘッドセットを使ってください。安いものは1000円程度からあります。選ぶ際は「ステレオであること」に注意してください。手元にボリューム調整やマイクのON/OFFスイッチのあるものが便利です。HP-855Uいまはコレ使ってます。USB接続で5.1ch(L4Dとか迫力ヤバイ!)リモコン付きで値段もお手ごろ。頭の締め付けが強い(使ってるうちに良くなりますが)のとなんだか新車臭いのが欠点。あと、ものすごい音漏れしますので注意。あと1000円前後だとこの辺オススメです。音質はそれなりですが、十分遊べます。2009オンラインFPSにおいて必須ソフトと言えばボイスチャット(VC)ソフトです。ボイチャがあればゲームの楽しさはリアルに3倍以上増します。導入してない人は是非導入してみてください。ボイチャにはTS2やスカイプなど色々ありますがレスポンスの速さや設定の容易さ(日本語対応)においてMumbleがおススメです。下記のサイトからダウンロードして、インストールしてください。http://sourceforge.net/projects/mumble/サーバー機は指定ポート(デフォルトでは64738)を通す設定と、ファイヤーウォールの設定を行なってください。クライアント側は不要です。固定IPではない場合、ダイナミックDNSを利用すれば、毎回クライアントにIPアドレスを通知しないでもダイナミックDNSのホスト名で接続できるので便利です。2009ボイスチャットソフト・mumbleオープンソースで開発されているVC(ボイスチャット)ソフト同じVCソフトで有名どころのTS2(Teamspeak2)よりも高音質で遅延も少なくFPSに適しています。2こちらも有名なVCソフト。mumbleに比べると音声の遅延有。CardSteamでプレイしている「ゲームプレイのデータ」の表示が可能。リアルタイムでは表示されないが、アバターとプレイ時間が長いゲームが順番に3つまで表示されます。ID(コミュニティのURLの最後の部分)が数字の場合は「プロフィールの編集」でカスタムURLで「http://steamcommunity.com/id/」の後を文字に編集してください。Signatures表示されるゲームはプレイ時間が最も長いゲームのみ。こちらはリアルタイムでプレイしている状態の表示が可能。ID(コミュニティのURLの最後の部分)が数字の場合は「プロフィールの編集」でカスタムURLで「http://steamcommunity.com/id/」の後を文字に編集してください。Signaturesを貼り付ける場合は下記のタグで貼り付けてください。