alchemistarkの日記

やったことのメモ

TF2 srcds BOTのクラスを固定するとBOTが自殺する問題について

2017年10月のジャングルアップデート以降、BOTの仕様が変わったようです。
チームのクラスバランスを考慮してクラスを変更するようになった?ようです。
他にもAIの向上などが行われている様子。

それだけだと良い話なのですが、ウチみたいに特殊ルールのゲームモードが動作している場合、ちょっと問題が。
BOTがクラスを変更する際、たとえリスポンの中であろうがその場で自殺しやがります。
例えばBOTのクラスをソルジャーに固定したとすると

ソルジャーでスポーン

チーム内にソルしか居ない

クラス変更

自殺

クラスが固定されているのでソルジャーでスポーン

ソルしか略

カーズもびっくりなぐらいで死に続けるのでゲームになりません…
これがtf_bot_force_classで固定したクラスだけでなく、プラグインから強制的にクラスを変えたとしても発生するので困った困った
しかもプラグインからはBOTの自殺を検出不可能。ブロックしようとしてしばらく格闘してましたが、無理でした。


さて、前置きが長くなりましたが
バグレポートからも送ったし既存のCVARが実質使用不可になっているわけなので何らかのアクションはあるだろうと
ここ最近のsrcdsの更新連発の度にcvarlistを保存して比較続けること1ヶ月、cvarの追加を発見しました。

tf_bot_reevaluate_class_in_spawnroom : 1 : , "sv", "cheat" : If set, bots will opportunisticly switch class while in spawnrooms if their current class is no longer their first choice.

ゲイブ有能。
チートフラグが必要なので、sm_cvarで変更。
0にしたら自殺しなくなりました。
完璧。