[L4D2対応](※仕様上、多分L4D1でも使えます。全く調べてないけど。)
“L4D_homerank” をダウンロード l4d_homerank_1_1_2.zip – 2255 回のダウンロード – 14.99 KBTankに殴られた時の「飛距離」「高さ」「滞空時間」を表示するプラグイン。
無駄にランキング機能付き。ランクインするとメッセージが表示されます。
z_tank_throw_forceが大きくないと面白くないです。
■インストール方法
plugin.l4d_homerankをtranslationsフォルダに、l4d_homerank.smxをpluginsフォルダに入れる
初回起動時にランキングデータファイルとしてsourcemod/data/l4d_homerank.txtを自動作成します。
■cvar
left4dead2/cfg/sourcemod/l4d_homerank.cfgに記述(自動生成)。
CVAR | 値の単位 | 解説 |
l4d_homerank_disp_cond | 0:無効/1:「かつ」/2:「または」 | 自己記録を表示するための条件を設定する。1:下の3つの条件がすべて当てはまる場合、表示する。2:下の3つの条件が1つでも当てはまる場合、表示する。0:自己記録を表示しない。 |
l4d_homerank_disp_dist | (小数値)[メートル] | この距離より長ければ、自己記録を表示する。 |
l4d_homerank_disp_height | (小数値)[メートル] | この距離より高ければ、自己記録のメッセージを表示する。 |
l4d_homerank_disp_time | (小数値)[秒] | この滞空時間より長ければ、自己記録のメッセージを表示する。 |
l4d_homerank_ranksize | (整数値) | ランキングを何位まで保持するかを決める。 |
コマンド(root用)
コマンド | 解説 |
l4d_homerank_rank_reload | ランキングデータをファイルから再読み込みする。 |
l4d_homerank_rank_flush | ランキングデータを強制的にファイルに書き込む。 |
■注意事項
着地判定をフレーム毎に見てるから、もしかしたら処理が重いかも。
ランキング周りが怪しくて、時々ランキングデータが消えてしまうかも…
着地判定もカバーしきれてないみたい。時々ありえない滞空時間が記録されてたり。
設置直後は、ランキングが更新される頻度が高いため大量のメッセージが流れるので注意。
■既知の問題
ランクインのメッセージ表示で、文字の間になんか謎の空白が入る。多言語メッセージの扱い方が悪い?
スペックにあまり余裕がないサーバーの場合、ランキングのデータが書き込まれるタイミングでラグが起きるかも
→1.1.2でファイルへの書き込みをするタイミングを、リアルタイムからラウンド終了時に変更しました。
■更新履歴
●1.1.2
- フィナーレの脱出の瞬間に飛んでいる場合、プレイヤーのワープがかかって誤判定が起きるため、測定をやめる処理を追加。
- ランクデータファイルが存在しない場合は新しく作るようにする処理を、プラグイン起動時だけでなく、ランクデータリロード時にも行うようにした。
- ランクデータをファイルに書き込むタイミングを、即時ではなくラウンド終了時に変更。書き込み時にラグる時があるため。
●1.1.0
ランキングデータは1.0.0のものをそのまま使えるはず。ただし、ランク保持数を変更した場合はリセットしたほうが良いかも。特に減らした場合。
- ハング(=プレイヤーが淵にぶら下がっている)状態でTankに殴られると、着地判定が出ないため、異常に長い滞空時間が記録されていた。→記録しないように変更。他にも宙吊り状態になるような他のシチュエーションで殴られると起こるかも。smokerに捕まってるときとか。未対策。
- l4d_homerank_rank_reloadコマンドのランキングデータの再読み込み動作が正しくなかったのを修正
- バージョン番号を示すcvarを追加
- メッセージの多言語対応化
- ランク保持数が変更できるようになった(l4d_homerank_ranksize)
- ランクデータのエスケープ文字が読めてなかったのを修正
●1.0.0 初版
1 個のコメント
この発想はなかった