History
ここではレーサー集計の歴史と更新について触れます。
RO攻城戦ログ集計スクリプトを見つけ、試すついでにLydiaワールドのデータを色々と作っていました。
その中に「落城回数集計」という項目があり、それを元に各ギルドの集計を
レーサー集計として公表することにしました。
最初は人のお役に立てばいいな、と思う程度で始めました。
実際に集計結果を掲示板に投稿した所、意外にも好評でいろいろな方の励ましを頂いた結果、定期的に継続してみようと思いました。
最初は手動で集計を作成、修正をしていました。
集計の手間を減らすために、RO攻城戦ログ集計スクリプトの改造に取り掛かりました。
subkoujou.pl 内の dispRanks 関数を改造し、raceRanks 関数を作りました。
その後、RO攻城戦ログ集計スクリプトのソースコードをじっくりと見てそのスクリプトが
持つ色々な問題点に気づきました。
- ワールド_年月日_rank.html 内の砦主の※未出現バグ(最新版では解消)
- 攻城戦開始時点での砦所有ギルドも集計に計上
- 同じ条件の時に同位とならない(最新版では解消)
この時のバグ修正と、改造成果はRO攻城戦ログ集計スクリプト改造にあります。
この問題点により、毎回の集計内容の占領回数の修正とチェックを行いました。
しかし量が多く、見落としが結構ありました。
手間と労力が大変なため、その問題の修正を考えることになりました。
最初はRO攻城戦ログ集計スクリプトの修正を考えました。しかしそのPerlで書かれたソースコードは読むのが大変で、さすがに理解し切れません。
そこで、Rubyの勉強もかねて同じようなことが出来るスクリプトを自分で組む事にしました。
二月以上掛けて大体の形が出来上がり、さらに一月以上掛ける事で公開を前提とした
ソースコードと問題点の修正が出来ました。
RO攻城戦ログ集計スクリプトと本スクリプトの違いは以下の通りです。
- Rubyで書かれています。
- 攻城戦ログは1ファイルだけでも作成出来ます。
- 最終確保砦や占領順のリストを表示します。
- 順位に同位を反映させます。(同じ占拠回数は同じ順位)
前回の攻城戦ログがない場合は前回の攻城戦結果は反映されません。
2007/08/13 ver 1.15
- 砦取得現況表(timetable.cgi)を正式サポート。
- sample/にworld.rb/world.batを追加。
- sample/のurdr.rb, sara.rbなどを削除。
- ろ++やRoCha!!で改行が連続して複数ある時も正確に認識するように修正。
- CRLFによる改行を、「#」による改行と勘違いしていたのを修正。
- ドキュメントの攻城戦ログに特殊文字解説を追加。
- ドキュメントのダウンロードリンク修正。
- ドキュメントの連絡先メールアドレス修正。
2007/07/02 ver 1.14
- 以下のバグを修正しました。
- gvglib/html.rb: 堅守時に「\n"」が挿入される。
- gvglib/log.rb: ろ++形式ログ読込時、余計な空白が挿入されたりギルド名の取得に失敗する。
2007/03/07 ver 1.13
- getlog.rb: Freyaログ取得後、文字コード変換をミスしていたバグを修正。
- gvglib/log.rb: savechat_YYYYMMDDファイルの読込処理バグを修正。
2007/01/13 ver 1.12
- config.rb: 作成元と連絡先をHTMLテンプレート内に変更しました。
- 以下のバグを修正しました。
- 毎週のSERA集計のMVPが表示されない。
- 時系列表のレース会場に「\n"」が挿入される。
- 砦別戦績の平均防衛時間の先頭に「" 」が挿入される。
- ギルド別戦績のギルド名の下に「" 」が挿入される。
- 商業値予想のあれが「リストにない砦は商業値#{cp_limit}以下です。」になっている。
- 過去三週履歴の期間が集計開始からになっている。
2007/01/10 ver 1.11
- Ruby1.8以降で標準添付されたライブラリERBを使っています。
- 砦別戦績で、平均防衛時間を1回少ない数で割っていた間違いを直しました。
(1回落とした時は、平均防衛時間は2時間ではなく1時間です)
- 集計の出力形式を独立化してテンプレート形式にしました。
- 集計のWikiフォーマットを追加しました。
(Wikiディレクトリに出力されます。また、サーバーにWikiディレクトリを
作らないとアップロードできません。)
- 各HTMLのタイトルと見出しを完全統一しました。
- ログ取得の時、行末に"\r"が混じっていたら削除するようにしました。
- ギルド名に特殊文字"\r"が混じっていたら"[\r]"
に置き換えるようにしました。
- getlog.rb, putlog.rbをワールド単位で処理できるようにしました。
- 砦名を以下のように変更しました。
- V1:クリームヒルト→クリームヒルド
- C3:仏影→佛影
- C4:紅楼→紅樓
- C5:竹林賢丘→竹林峴(最後の漢字は[山見]:ケン)
- 検索エンジンで確実にHITする名前にしました。
2006/11/29 ver 1.10
- 全ファイル内のThe Winter's TaleのURLを全て最新に修正
- racer.rb, config.rb: Heimdalの集計屋さんが作成した時間修正パッチを取り込み
- racer.rb: ログファイルが空なら、警告を表示
- makelink.rb: 簡潔な目次を作成
- timetable.cgi: ろらじお互換表示、バグ修正
- config.rb: メールアドレスを変更(スパム対策)
- racer.cssを最新のものに更新
- 砦譲渡設定を追加。接頭辞"transfer"のファイルで指定します。
2006/09/15 ver 1.9
2006/05/30 ver 1.8.5
- 過去5回分の集計を追加
- RoFX, Rocha!などのログ形式対応
- 過去5回分の集計を追加
- ドキュメント説明修正
- 各種バグ修正
2005/08/22 ver 1.8
- 砦名を日本語で表示可能に修正
- ドキュメント説明を修正
- 各種バグ修正
2005/08/09 ver 1.7.6
- ドキュメント説明を修正
- 出力別にディレクトリを分けました。
- 過去4,8回分のレーサー集計、SERA集計、RoWiki集計、総計を追加
2005/06/23 ver 1.7.5
- ドキュメント説明を修正
- 砦別履歴、過去三週履歴、砦取得ランキングを追加
2005/05/27 ver 1.7
- ドキュメントの説明を修正
- 今までのSERA集計を総計に変更
- SERA集計:SERA計算方式
- 過去10回分のレーサー集計、SERA集計、RoWiki集計、総計を追加
- 過去ログ全部のレーサー集計、SERA集計、RoWiki集計、総計を追加
- 攻城戦結果の取得と更新 (http/ftp)
- 結果処理の自動化(バッチファイル)
- 攻城戦ライブラリを使ったサンプルスクリプト添付
2005/02/18 ver 1.6
2005/01/25 ver 1.5.1
- HTML単体、CSS,JavaScriptを別ファイルに分離、両方出力出来るようにしました。
- 時系列表CGIをろ++のログから読み込めるように修正しました。
- SERA集計にギルド別ランキング(最長、総、平均防衛時間)を追加しました。
2005/01/20 ver 1.5
- racer.bat で一括処理するサンプルを添付
- 時系列表、砦別戦績、ギルド別戦績出力
- 総集計(レーサー集計、SERA集計)出力
- 作成したファイル一覧表を出力
- logconvert.rb で全ログ形式を読み書き、変換可能
- 日付を指定してまとめて処理可能
- 最新の時系列表を出力するCGI(テスト版)を添付
- EUCファイルをSJISにするスクリプト nkfdate.rb を添付
- RO攻城戦ログ集計スクリプト、攻城速報@ろらじおをログ作成して自動実行させるスクリプト makelog.rb を添付
2004/11/19 ver 1.0
- ドキュメントを分割、充実
- 砦の地域と数の拡張にある程度対応
2004/11/16 ver 0.7
- レーサー集計の内容を削除
- レーサー集計の一部をSERA集計に移動
- SERA集計を添付
- 行、列ごとの合計
- 行、列ごとの平均
- 行列の合計と平均
- BP倍率、防衛力計算、オッズ計算
2004/11/10 ver 0.6
- 日付単位で全体実行するスクリプトを添付(series.rb)
- Lydiaのサンプルログを添付
- MVPレーサーを注目レーサーに変更
- 最優秀レーサー、その他のファイルがあれば読みこんで出力するように修正
2004/11/02 ver 0.5.6
2004/10/28 ver 0.5.5
- 関数の階層化の再整理
- ライブラリファイル(gvglib.rb)を分割・整理
- 処理のボトルネックを修正して大幅に高速化
2004/10/26 ver 0.5
- ログ変換添付(logconvert.rb)
- 砦別占領回数集計
- 砦別RoWikiランキング集計
- イテレータ変数の事前宣言(高速化用)
- テキスト、HTMLのテンプレートの分割化
- ドキュメントのHTML版作成
- 変数と関数を階層化
2004/10/19 ver 0.2.1
説明の修正
2004/10/15 ver 0.2.0
HTML出力を追加
初公開
2004/10/06 ver 0.1.5
スクリプトとウェブページの公開準備を始めました。
2004/09/13 ver 0.1
原型完成
2004/07/22 start
作成開始
目次に戻ります。