TF2のクラン戦モード(mp_tournament 1)の結果をDBに保存する物をsourcemodのpluginで作ってみました。
シーズン戦なんかで利用されることを想定して作ってみたり。
うちのサーバに導入して動作確認中。
記録される値
- チーム名(F4で変えられる奴、デフォルトの場合はそのまま記録)
- チームスコア
- マップ名
- 試合終了時間
- 試合タグ
結果確認ページ
次のURLで参照できます。
Tournament Result Recorder Disp
TODO
- チーム詳細機能
- alliedmodsに投げる
利用方法
sourcemodのDB設定のデフォルトを利用します、公式ドキュメントを確認の上設定下さい。
- trecorder svn browse
- trecorder.smx
- cvar "sm_trecorder_season_tag" = "xxxx" ( def. "default" )
sourcemod 1.2.xでコンパイル。
おまけ
情報参照用のAPIを提供しています(結果ページもそれによって生成しています)。
javascriptの知識が有ればblogパーツだとか何だとかで外部から利用できます。
利用方法
http://withgod.dyndns.org/trecorder/handle.pl
パラメータ
- team_name
- string 部分一致
- map_name
- string 部分一致
- season_tag
- string 部分一致
- callback
- string jsonpで利用する場合は指定のうえcallback関数名を指定
- hasKey
- true/false 戻り値にカラム名を含むかどうか
- mode
- rss,json default json
- desc
- true/false default false 本APIはデフォルト動作の場合、試合ID(連番)を昇順で返します。最新からほしい場合はdescを指定して下さい。
- limit
- number default 1000
- offset
- number default 0
- nl2br
- true/false default false 改行をbrタグに置換(rss)
Output
後は適当に試して。
クランHighのサイトでの利用例
=High=
Highでの利用方法を記述するので、javascriptの知識の有る方はご自由にどうぞ。
各サイトに寄って微妙に違うので当方では対応不可能です。
jquery 1.3.2 を利用して実装してあります
<script type="text/javascript" src="http://withgod.dyndns.org/trecorder/jquery/jquery-1.3.2.min.js"></script> <script type="text/javascript"> $.ajax({ url : "http://withgod.dyndns.org/trecorder/handle.pl", dataType: "jsonp", data : { team_name : "High", map_name : "", season_tag : "" }, success: function(json) { $.each(json.reverse(), function(i, elem) { if (i == 10) { return; } var text1 = elem.team_1_name + "(" + elem.team_1_score + ")" + " - " + elem.team_2_name + "(" + elem.team_2_score + ")"; var text2 = elem.result_date; $("#trecorder").append($("<dt style=\"text-align: left\">" + text2 + "</dt>")); $("#trecorder").append($("<dd style=\"text-align: left; margin-left: 5px\">" + elem.map_name + "</dd>")); $("#trecorder").append($("<dd style=\"text-align: left; margin-left: 5px\">" + text1 + "</dd>")); }); }, error : function() { $("#trecorder").append($("<dd>callback error</dd>")); } }); </script> <dl id="trecorder" style="margin-top: 0px"></dl>