"攻城速報@ろらじお" v1.17 #######################  これは何? ####################### MMO-RPGの砦争奪戦の状況を、HTMLに出力するPerlスクリプトです。 各砦の争奪状況を時系列で表示します。 日曜日にはリアルタイムで状況を更新し、FTP送信することも可能です。 原理は、他のソフトが吐いたログファイルを整形して出力しているだけです。 MMOクライアントやメモリには一切干渉しません。 現在、ろ++/RoLogger/ちゃっぽん/RoFX形式のログに対応しています。 #######################  主要機能 ####################### ・現在の砦取得一覧 ・砦ごとの時系列争奪表 ・ログオフ時自動放送終了 ・リアルタイム状況表示 or 任意のログからの出力 ・FTPアップロード機能 ・MMOクライアントからの操作 (ログ取得ソフトが、送信Wisを記録可能な場合のみ) #######################  使用上の注意 ####################### ・GvG時間中はログアウト・キャラチェンジ不可です。 ログの連続性が損なわれるので、GvG時間中はログアウト・キャラクターチェンジしないでください。 ログアウトを検知すると放送終了します。 (再ログインすると再開します ------------------------------------- ・IEでは、一度リロードボタンを押さないとオートリロードが開始しない(?) 念のため、一度、リロード用リンクを押すと良いかと。 ------------------------------------- ・FTP機能使用時に、21番ポートを使いっぱなしになる 更新間隔が狭いと、FTPの切断/再接続が短時間で繰り返されサーバーへの負荷になりうるので、切断していません。 ですが、接続しっぱなしもよろしくないですねぇ… #######################  使用法 ####################### < 1 : 導入> --------------------------------------------------- PCにPerlがインストールされていないと、攻城速報@ろらじおは使えません。 ActivePerlなどをインストールして、Perlスクリプトを利用できるようにしてください。 ●ActivePerl5.6(ビルド6xx) ActiveState Tool Corp. http://www.ActiveState.com/ 攻城速報@ろらじおは、ActivePerl 5.6.1.638を標準オプションでインストールした環境で動作確認をしています。 攻城速報@ろらじおで使う全てのファイルは、gvgf.plと同じフォルダに置いてください。 書き込み権限の設定は、通常不要です。 (現在のユーザーが書き込めればOK ログは、お好きなフォルダにどうぞ。 --------------------------------------------------- < 2 : ファイルの設置> --------------------------------------------------- [***]をフォルダとします 以下のように設置してください [プログラムを置くフォルダ]-+-gvgf.pl               |-fort.txt               |-[Roradio] [HTMLを出力するフォルダ]-+-gvg.html              |-[img] HTMLを出力するフォルダは、$filedirで指定したフォルダです。 --------------------------------------------------- < 3 : gvgf.plの設定> --------------------------------------------------- まず、gvgf.plをメモ帳などのテキストエディタで開けてください。 >$logger  ログ取得に使っているソフトを指定します。  ろ++ => ropp  RoLogger => rologger  ちゃっぽん => chatpon  RoFX => rofx  のいずれかを入力してください。 >$datdir  ログファイルのフォルダは、ドライブ名からサーバーまでを入力してください。  (キャラクター別にフォルダわけしている場合も、キャラクター用のフォルダを選んではいけません  RoFXを使用する際は、テキストファイルの入っているフォルダを指定してください。   (ログ種別に分けている際はGMLogフォルダを指定、その他のときはChatLogフォルダを指定 >$chara  対象キャラクター名は、GvG時間中にログインしていたキャラクター名を入力してください。 >$server  Serverは、ワールド名を入力してください。  一文字目は大文字で、正式なワールド名を入れてください。 >$pastweek  先週より前のデータを出力する場合、任意のログファイルから出力する場合は$pastweek= に参照するログファイル名を記載します。  gvgf.plと同じフォルダにログがない場合は、絶対パスで記載してください。  日曜日にGVG中継モードで使う場合、または月−土曜日に前のGvGの結果を出力する場合は、#$pastweek として、#でコメントアウトしてください。 >$filedir  結果出力のHTMLを書き込むローカルのフォルダを指定します。  FTPモードなど、スクリプトと同じフォルダに書き出す場合は、.(半角ドット)を指定します。  自家サーバーなどでファイルを直接公開する場合は、スクリプトとは違うフォルダを指定してください。 >$htmlfile  結果出力を行うファイルのファイル名です。  FTP機能onの場合はこのファイル名でアップロードされます。 >FTP関連  FTP機能を使うときは、$useftp = 1; として、その下の必要項目を変更してください。  ただし、日曜日に実況モードで起動した場合以外は、FTPアップロードしません。  FTPアップロード時は、あまり更新間隔を短くしないでください。  サーバーが、すごくすごく大変なので… >$ftpdir  アップロードフォルダは、サーバーに指定された「開始フォルダ」を含めてください。  多くのサーバーではhttp://xxx.ne.jp/~yyy/aaa/roradio.htmlとしたいとき、  $ftpdir = 'public_html/aaa'; という設定になるかと思います。  (↑public_htmlが開始フォルダに指定されている例 >$ftpcontinue  FTP接続を維持するか/アップロードごとに切断するか、の設定です。  短時間でFTP認証を繰り返すのを避けるため、通常1に設定してください。  1で上手くアップロードできない・頻繁に再接続しているようなら0を設定してください。  0の時、アップロードごとに接続・切断の処理を行います。   (1の場合はアップロード前に接続状態をチェックしますが、一部の環境で上手く機能しないようです。 >$fortlist  前週砦取得状況リストは、砦情報を書いたファイルを指定してください。  書式は後述します。 >$cfg{message}  一言メッセージは、出力されるHTMLに書かれるメッセージです。  実況放送中は、MMOクライアントから変更することが出来ます。 >$cmdwis  「コマンドをWHISする相手」は実在しないキャラクターの名前を入れてください。  「ろらじお」では実在しないキャラクターへのwisもログに記載されることを利用して、間接的にスクリプトを制御しています。  通常、半角スペースから始まる名前はキャラクターメイキングできないので、デフォルトのままが推奨です。  ちゃっぽんでは、コマンドは使えません。 >$refresh  更新間隔は、使用目的に応じて設定してください。 >$mapjs  早見表のリンクにマウスカーソルを乗せたときに、砦MAPを表示するかどうかの設定です。 >$mapdir  砦地図を入れたフォルダ名です。  初期設定では、htmlを出力したフォルダにimgフォルダを作り、画像を入れた状態です  HTMLファイルからの相対位置で記述します。 ページタイトルはお好みでどうぞ。 HTMLの出力設定もお好みで。 --------------------------------------------------- < 4 : 前週砦取得状況リストの設定> --------------------------------------------------- 前の週を終わった時点での、各砦を保有しているギルドのリストです。 aaa=xxx のように、項目名と内容を=で結んで記述します。 不要なスペースは入れてはいけません day=20YY_MM_DD YY年MM月DD日のGvGが終わった時点での砦状況であることを示しています。 砦リストを正しく認識するために必要な行です。 V1=ギルドA "Valkyrie Realms 1"を、「ギルドA」が保有していることを示しています。 同様に、V2は"Valkyrie Realms 2"、Cは"Chung-Rim Guild"、Bは"Britoniah Guild"、Lは"Luina Guild"です。 日曜午前0時現在の保有情報を記載してください --------------------------------------------------- < 5 : 攻城速報@ろらじおの起動> --------------------------------------------------- ActivePerlを標準でインストールした環境であれば、gvgf.plをダブルクリックするだけで起動できます。 コマンドプロンブト上で起動する場合、作業フォルダをgvgf.plが置かれているフォルダに移してから、perl上で起動してください。 例)d:\files\gvgf にgvgf.plが置かれている場合 C:\DOCUME~1\User> d: D:\> cd files\gvgf D:\FILES\RORADIO> perl gvgf.pl --------------------------------------------------- < 6 : 実況モードと過去データ生成モード> --------------------------------------------------- A)実況モード  #$pastweekのように、$pastweekを#でコメントアウトした状態で日曜日に起動すると、リアルタイムの砦状況を表示します。  exitコマンドで、砦状況リストファイルがGv終了時のものに書き換えられます。  FTP機能でサーバー上にリアルタイムデータを送信することが出来ます。 B)情報更新モード  $pastweekを#でコメントアウトした状態で月-土曜に起動すると、  HTMLの出力と、砦状況リストをGvGの結果に沿ったものに書き換えた後、すぐに終了します。  日曜日から起動し続けると、月曜午前0時になった時点で、このモードに切り替わります。 C)過去データ生成モード  $pastweekに任意のログファイルを指定し、その日のGvが始まる前の状況を砦状況リストに記載してから起動すると、  ログファイルと砦状況リストからHTMLのみを出力し、すぐに終了します。  FTP機能は動作しません。 --------------------------------------------------- < 7 : MMOクライアントからの制御> --------------------------------------------------- この機能は、ログ取得ソフトが「送信Wisを記録可能な場合」のみに作動します。 現状、ろ++は送信Wisを記録できません。 クライアントから利用できる制御コマンドの一覧です。 gvgf.plの $cmdwis で指定した名前(デフォルトでは" gvg")に対してコマンドをwisしてください。 メッセージの変更は、ファイルに保存されません。 (*) ちゃっぽんでは、自分の発言したwisが保存されないため、コマンドは利用できません。 exit > 実況モードの時に、砦状況リストファイルをその時点での砦保有状況に書き換え、プログラムを終了します。 22時を回ってGvGが終了した後に利用してください。 msg ○○○○ > ○○○○をページのメッセージとして表示します。   起動の度にgvgf.plに記載したメッセージに戻ります。 refresh XX > XX秒間隔で情報更新するように変更します。 --------------------------------------------------- < 8 : その他> --------------------------------------------------- RoLogger ver1.25以前で04年05月増設サーバーのログを取得する場合は、 Roradioフォルダの、RoLogger.pmを開き、説明にそって編集してください。 #######################  使用条件 #######################  個人での使用は自己の責任において自由にご利用下さい。  商用目的(金銭または、何らかの具体的利益が出るもの)での使用は禁止します。 #######################  配布条件/改変条件 #######################  再頒布、転載等は、出典を明らかにした上で、原則自由とします。 ただし、雑誌等、代価を必要とする媒体への掲載は禁止します。  本スクリプトから派生するスクリプトは、原作者を明らかにした上で、公開自由とします。  また、本スクリプトから派生するスクリプトは、本スクリプトの使用条件/配布条件/改変条件/免責事項に則るものとします。  (改造等は、知らせていただければ喜びます(笑 #######################  免責事項 #######################  本スクリプトの所持・使用によって起こる全てについて、作者は一切の責を負いません。  本スクリプトが生成するデータに関する責任は、本スクリプトを使用した者が負うものとします。  本スクリプトに係る第三者の不利益も、使用条件に則りスクリプト利用者が責を負います。  いかなる事態にも作者に対し何らかの保証を要求することは出来ません。 #######################  お願いとか ####################### 出来れば感想やバグの報告等をお願いします。 が、改善や機能追加については気が向けば行う程度です(^^; 未対応のログ形式についても、対応するつもりはあります。 希望のログ形式があれば、どうぞ。 #######################  謝辞 ####################### ろらじおのFTP機能については、ASH multimedia lab.様を参考にさせて頂きました。 http://ash.jp/perl/socket_ftp.htm #######################  連絡先 ####################### メールでのサポートは一切行っておりません。掲示板でお願いいたします。 HP http://kaho.itjp.net/ E-Mail kaho@itjp.net  香薫 #######################  履歴 ####################### 2005/12/18 - ver1.17 RoFX.pmを同梱。RoFX形式ログに対応。 2005/03/16 - ver1.16 < を含むギルド名を出力できないバグを修正。 < > & 半角スペースをHTMLエンティティに変換処理するよう修正。 2004/07/18 - ver1.15 FTP接続を維持するかどうかの設定を追加 2004/07/10 - ver1.14 ちゃっぽん形式でのバグを修正 ろ++がキャラ名を認識できない問題にとりあえず対応 2004/06/19 - ver1.13 FTP関連バグ修正 RoLoggerv1.35に対応 2004/06/16 - ver1.11 / ver1.12 バグ修正 2004/06/16 - ver1.10 ちゃっぽん・RoLogger形式のログに対応 砦MAP表示機能 更新間隔をコマンドで変更可能に オブジェクト指向に書き直し 2004/06/13 - ver1.01 ローカル保存先フォルダを指定可能に。 時系列表のスタイルを若干修正 2004/06/11 - ver1.00 公開