Skip to content

Advanced Configuration: Variables and Commands

thebigsleepjoe edited this page Dec 31, 2023 · 2 revisions

Please note that this section is an extreme WIP and is missing 50% (or more) of all cvars.

Console Variables (cvars)

The entries in this section are formatted as follows:

  • ttt_bot_cvar range | default: Description.

Some notes/examples on the values of cvars for the uninitiated:

  • Boolean values (false/true) are shown as 0/1 respectively.
  • A recommended decimal range will be shown as 1.0-2.0. You can set the value outside this range, but it is not recommended.
  • A recommended integer range is shown as 1-5. You can set the value outside this range, but it is not recommended.
  • Any cvars requiring string values will be explained in the description. Use your intuition.
  • X is a convenient stand-in for the description of each cvar. X just means whatever value you selected for the cvar.

Chat-related configuration

  • ttt_bot_chat_cmds 0/1 | 1: If 0, then chat commands, such as !botadd, will not do anything.
  • ttt_bot_chatter_lvl 0-3 | 3: A 'level' of chatter for the bots to do. 0 disables chatter, 1 allows only important events (e.g., KOS), 2 removes some fluff, and 3 allows bots to chitchat with each other and talk more.
  • ttt_bot_chatter_cps 10-60 | 30: The 'characters per second' that the bots type at. A chat message is often around 20-60 characters, so 30 CPS is a good value for reasonable reaction times. This cvar prevents instant chat reactions (and, more importantly, instant KOS calls).
  • ttt_bot_chatter_minrepeat 5-30 | 15: The minimum time that can pass between a bot repeating the same chat message type. For instance, a bot cannot say in chat that it heard a noise more than once every X seconds.
  • ttt_bot_chatter_koschance 0.0-1.0 | 1.0: Affects the chance of a bot calling a KOS on another player that they find suspicious. To disable bot-called KOSs, set this to 0. You can set this higher than 1.0, but it is not generally recommended. KOS chance scales with difficulty.
  • ttt_bot_chatter_silly 0/1 | 1: Whether or not bots can "silly chat," which is just a mechanic that lets them say one-liners in chat at random. Disabling this does not prevent dialog nor disable any other chat features.
  • ttt_bot_chatter_dialog 0/1 | 1: Whether or not bots can have pseudo-conversations in chat every now and then. Humans cannot participate in these discussions.
  • ttt_bot_chatter_typo_chance 0-100 | 2: A percentage value that dictates the chance of a bot creating a typo per character. This is best when set low, and will be absolutely silly if set higher than 10.

Cheat configuration

Note: I call these "cheat" cvars, as they technically give the bots an advantage over a human player in the same situation. They do not give any humans cheats, and are typically subtle.

  • ttt_bot_cheat_know_shooter 0/1 | 1: Will a bot automatically know who shot who first in a firefight? While this doesn't necessarily make the bot perfect, it can make the bots feel more intelligent.
  • ttt_bot_cheat_redhanded_time 0-5 | 3: How long after a player kills another bot that they will be seen as red-handed. A red-handed player is silently marked KOS by any innocent bot (or any custom role that uses the suspicion system) until X seconds have passed.
  • ttt_bot_cheat_traitor_reactionspd 0/1 | 1: Provides bots that are the "traitor" role an advantage in reaction speed. An affected bot will respond instantaneously to a new target being assigned. On difficulty 4 or 5, the difference is negligible.
  • ttt_bot_cheat_traitor_accuracy 0/1 | 1: Gives bots that are the TEAM_TRAITOR team an advantage with their aiming accuracy. Functionally, this halves their inaccuracy penalty. Like the reaction speed, this is less noticeable at a high difficulty.

Behavior configuration

  • ttt_bot_plans_mindelay 6-18 | 12: How long plan-following bots (typically traitors) will wait before coordinating with one another after the round starts. Must always be less than maxdelay.
  • ttt_bot_plans_maxdelay 18-45 | 35: The maximum delay that plan-following bots (typically traitors) can wait before executing a more coordinated plan with one another.
  • ttt_bot_attack_delay 5-30 | 15: The minimum amount of time before traitor-like bots will start shooting people around them. They will normally wait until there aren't many enemies around them before attacking.

Misc. difficulty configuration

  • ttt_bot_flicking 0/1 | 1: Allows bots to 'flick' as a reaction to getting shot or acquiring a new target. This makes them feel more natural and responsive.
  • ttt_bot_difficulty 1-5 | 3: The global difficulty of bots. This affects the trait selection of newly added bots and scales the immediate accuracy values of present bots, among many other small variables. 1 is very easy, 3 is normal, and 5 is hard.
  • ttt_bot_reaction_speed 0.0-1.5 | 0.8: The reaction speed before a bot may begin shooting at a new target. This is internally affected by many factors, especially difficulty. At ttt_bot_difficulty 5, this will be forced 0. At difficulty 1, this will be about twice as high.