Bots/ko

From Team Fortress Wiki
< Bots
Revision as of 09:31, 16 January 2012 by Dlckdgnl97 (talk | contribs)
Jump to: navigation, search
이 페이지는 팀 포트리스 2안의 봇에 관한 기사입니다. 팀 포트리스 위키에서의 봇에 대해 보시려면, Category:User bots으로 가세요. 팀 포트리스 클래식속의 봇들을 보시려면, 봇 (클래식)을 보세요.
인간인 팀원들은 너를 평가할수도 있겠지만, 이 영혼없는 기계들은 그럴까? 그렇다. 그들은 눈이 멀지는 않았자. 그러나 조용하긴 하니까, 당신의 딸리는 경쟁심은 봇들이 무덤으로 가지고 들어갈 비밀일 것이다.
맥 업데이트 안내문

팀 포트리스 2에는 두 종류의 이 존재합니다: 인공지능 봇이랑, 인형 봇이 있습니다. 인공지능 봇은 진짜 플레이어들을 대신하기 위한 세련된 코드로 이루어져있어서, 치트를 안쓰고도 사용할수 있습니다. 인형 봇은 인공지능 봇의 코드는 없지만, 실험과 훈련에는 매우 유용합니다. 인형 봇은 서버에서 치트가 활성화 되어야 합니다; 고로 도전 과제는 비활성화 됩니다.

인공지능 봇

인공지능 봇은 플레이어들을 대신하기 위해 있으며, 조종할수는 없습니다. 또한, 봇들의 병과는 임의입니다. 이 봇들은 플레이어봇이라는 세련된 코드와 레프트 4 데드에서 사용된 좀비 봇 코드를 사용합니다.[1] 인공지능 봇은 서버에 치트가 비활성화 되있어도 사용할 수 있습니다, 고로, 봇과 함께 플레이를 해도 도전 과제를 얻을 수 있습니다, 그러나 예외는 있죠: 봇들은 절대로 Deathcam/ko 샷을 볼 수 없으므로, 이와 관련된 도전 과제는 얻을 수 없습니다.

인공지능 봇들은 이하의 규칙을 따릅니다:

  • 아군 또는 적군 봇을 플레이어가 setup time/ko 일때 겨냥하고 있으면 봇이 도발을 합니다.
  • 메딕 봇은 플레이어가 Voice commands/ko을 사용해 "메딕!"이라고 부르면 플레이어를 치료할것입니다.
  • 봇 메딕이 플레이어를 치료중이고 우버차지 가 준비됬을때, 보이스 명령 "전진, 전진!" 또는 "우버차지 활성화!" 을 사용하면 메딕이 우버차지를 작동시키게 됩니다.

현재의 인공지능 봇

인공지능 봇은 현재 베타이며, 업데이트때 더 세련될것입니다. 현재, Hatless Update 이후로 봇들은 정상적으로 작동되고 있습니다; 한때 버그가 많았던 스파이를 포함해서요. 인공지능은 대부분의 King of the Hill 맵들, 일정한 Payload 맵들, 공격/방어 맵 DustbowlGorge, Capture the Flag 맵들, 그리고 Mann Manor (후의 두 버젼에서는 명령어를 통해서만 봇 사용이 가능합니다) 에서 올바르게 작동합니다. 공식적으로 지원이 안된 맵에서도 봇 작동이 가능합니다; 그러나 지원이 되는 맵만큼 봇들이 똑똑하진 않을것입니다.

Note: A pack of pre-made bot meshes has been compiled for many popular maps.

인공지능 봇 이름

인공지능 봇들은 서로 다른 이름을 갖도록 프로그램 되어 있고, 대부분의 이름들은 밸브사에 관련된 이름들입니다. "팀 포트리스 2"에 관한 이름도 많습니다. 거의 모든 이름들은 스팀 포럼에서 제안된 이름들입니다.

지원되지 않은 맵에서 봇 사용하기

  1. "sv_cheats 1" 를 콘솔에서 치십시오
  2. "nav_generate" 을 콘솔에서 치십시오
  3. 게임에서 인공지능 봇의 경로 파일을 생성하는동안 기다리십시오
  4. 맵이 다시 로딩될것입니다(경로 파일은 저장되었으므로 전의 과정은 필요하지 않습니다)
  5. 콘솔을 열고 1,2번 명령어를 입력한 후 "tf_bot_add <숫자>" 를 입력하십시오
  6. "sv_cheats" 의 값을 0으로 바꾸십시오 (선택 사항이지만, 이렇게 하지 않으면 도전 과제를 얻지 못합니다).

지원되는 맵에서는 위의 과정이 필요하지 않습니다, 단 "tf_bot_add <숫자>" 를 입력해야 합니다

지원되는 맵

인공지능 봇들의 행동

  • 현재 봇들은 기본 외의 무기, 모자, 혹은 기타 아이템을 장비하거나 쓸 수 없습니다.
  • 쉬운 난이도에서 봇들은 주무기 외에 무기들을 거의 쓰지 않습니다.
  • 현재 봇들은 특별한 점프들 (예를 들어 로켓 점프)이나 건물을 옮길 수 없습니다 (대신에 엔지니어 봇들은 목표가 이동하면 자신들의 건물을 부숩니다).
  • 봇이 플레이어를 사살하면, 곧 바로 도발을 할 확률을 계산합니다, 그리고 성공하면, 그 봇이 공격당하고 있더라도 도발을 하게 됩니다.
  • 스파이 봇들 (과 플레이어들) 이 변장을 하면 완벽하게 무시당합니다. 그러나, 적과 접촉했을때, 교란기를 설치하거나, 쏙나, 아니면 투명화하면, 이를 본 봇들은 그 봇/플레이어가 스파이라고 판단한 후, 봇/플레이어가 안 보이는곳에서 변장을 바꾸거나, 봇/플레이어가 사살당하는 모습을 볼때까지 봇/플레이어를 기억합니다.
  • 파이로 봇들은 압축 공기 블래스트 를 발사체나 적군에게 임의로 사용할 것 입니다.
  • 메딕 봇들은 스나이퍼 가 "메딕!"명령어를 쓰더라도 다른 클래스들을 우대합니다. (엔지니어는 말도 필요가 없지요)
  • 스파이스나이퍼 봇들은 현재로선 난이도가 쉬움일때 나타나지 않습니다: 이 둘은 보통 이상의 난이도에서만 나타납니다.
  • 전문가 모드의 봇이 플레이어가 클로킹 하는것을 보면, 그 봇은 플레이어가 깜빡이지 않아도 따라다닐수 있습니다.
  • 준비 시간중 봇들은 절대로 선제공격을 하지 않습니다 (점착 폭탄을 설치하는 데모맨 봇은 예외입니다).
  • 엔지니어는 이상한 곳에 센트리를 설치하고 바로 부순 다음, 다시 금속을 찾아 이 과정을 반복할 수도 있습니다.

버그

  • 봇이 음성명령을 이용하면 (예를 들어 "스파이다" 혹은 "전진!"), 텍스트 창에 그 명령이 표시되지 않습니다.
  • 엔지니어 봇들은 자신의 건물 안에서 서 있을 수 있습니다.
  • 봇들은 도발하면서 움직일 수 있습니다.

AI bot commands

To use AI bots on supported maps, the server administrator should type the following commands into the console:[2]

Command Description
tf_bot_add This command will create one or more AI bots of random classes on random teams. They will also be assigned amusing human-like names.
Syntax
tf_bot_add [<count>] [<class>] [<team>] [<difficulty>]
Parameters
<count>
Specifies the number of bots to spawn. If omitted, one bot is spawned.
As of this writing, specifying a number greater than the maximum number of players, including any human players, causes the bots to freeze. Thus if there is a 24 player server (the default), and one human player, do not spawn more than 23 bots.
<class>
The classname of the class can be Demoman, Engineer, HeavyWeapons, Medic, Pyro, Scout, Soldier, Sniper, or Spy
<team>
Specifies the team name to assign the bot, where team can be red or blue.
<difficulty>
Sets the difficulty level for the bot, where difficulty can be easy, normal, or hard.
Example
tf_bot_add red 3 heavyweapons easy will add three Heavies to the RED team at the easy skill level.
tf_bot_difficulty Defines the skill of bots joining the game.
Syntax
tf_bot_difficulty <level>
Parameters
<level>
Sets the difficulty level for the bots. Values are: 0=easy, 1=normal, 2=hard, 3=expert. Default is "Normal" (1).
Example
tf_bot_difficulty 2 will set all bots created after this command to "Hard" difficulty.
tf_bot_force_class If set to a class name, all TFBots will respawn as that class.
Syntax
tf_bot_force_class <class>
Parameters
<class>
The classname of the class can be Demoman, Engineer, HeavyWeapons, Medic, Pyro, Scout, Soldier, Sniper, or Spy. Default is "" (aka blank).
Example
tf_bot_force_class medic will make all TFbots respawn as Medic.
tf_bot_join_after_player If nonzero, bots wait until a player joins before entering the game.
Syntax
tf_bot_join_after_player <integer>
Parameters
<integer>
Either 1 or 0. Default is 1 (enabled).
Example
tf_bot_join_after_player 0 will make TFBots join the game when added even if no players are on a team.
tf_bot_keep_class_after_death If zero, bots will always respawn as a different class.
Syntax
tf_bot_keep_class_after_death <integer>
Parameters
<integer>
Either 1 or 0. Default is 0 (disabled).
Example
tf_bot_keep_class_after_death 1 will prevent TFBots from changing class.
tf_bot_kick

This command will remove one or all AI bots.

Syntax
tf_bot_kick <name/all>
Parameters
<name/all>
Specifies the name of bot to remove or all.
Example
tf_bot_kick CEDA will kick the TFbot named "CEDA" if one exists.
tf_bot_prefix_name_with_difficulty If nonzero, append the skill level of the bot to the bot's name
Syntax
tf_bot_prefix_name_with_difficulty <integer>
Parameters
<integer>
Either 1 or 0. Default is 0 (disabled).
Example
tf_bot_prefix_name_with_difficulty 1 will cause added bots to have names like "1 Aimbot" (normal) and "3 Saxton Hale" (expert).
tf_bot_quota Determines the total number of TFBots in the game. Only has effect if "tf_bot_quota_mode" = "fill" or "match".
Syntax
tf_bot_quota <integer>
Parameters
<integer>
Whole number between 0 and how many players the server can hold. Default is 0.
Example
tf_bot_quota 2, if tf_bot_quota_mode = match, will add two bots to the server for every one human.
tf_bot_quota_mode Determines the type of quota.
Syntax
tf_bot_quota_mode<normal/fill/match>
Parameters
normal/fill/match
If 'normal', the server will never add/remove TFbots without explicit commands and bot_quota has no effect.
If 'fill', the server will adjust bots to keep N players in the game, where N is bot_quota.
If 'match', the server will maintain a 1:N ratio of humans to bots, where N is bot_quota.
Example
tf_bot_quota_mode fill will always keep (bot_quota - # of human players) bots in the game.
tf_bot_taunt_victim_chance Determines how often a Bot will taunt a human victim.
Syntax
tf_bot_taunt_victim_chance <integer>
Parameters
<integer>
Whole number between 0 and 100. Default is 20.
Examples
tf_bot_taunt_victim_chance 0 Bots will never taunt when killing a human player.
tf_bot_tauntvictim_chance 100 Bots will always taunt when killing a human player.
tf_bot_melee_only Determines whether a bot should only use Melee weapons or not.
Syntax
tf_bot_melee_only <integer>
Parameters
<integer>
Either 1 or 0. Default is 0 (disabled).
Exmaple
tf_bot_melee_only 1 will have bots using only Melee weapons.

Puppet bots

Puppet bots have no AI code and cannot move or act on their own. These bots can be used like puppets though, players can manipulate them to follow the player's commands such as following the player around and firing their weapons. Puppet bots are mainly used for testing purposes and can also create stunning visuals if manipulated accordingly, as seen here.

Puppet bot commands

Not all of the following commands work; some working commands are also omitted.

Note: entering the command without any values will display the command's current setting and a brief description.

Command Description
bot This command will create a bot on the given team with the specified class and name. If team or name is omitted, they will be assigned randomly.
Syntax
bot -team <teamname/number> -class <classname> -name <botname>
Parameters
-team teamname/number
Specifies the team name or number to assign the bot. Where name/number can be RED or 1, BLU or 0
-class classname
The classname of the class can be Demoman, Engineer, Heavy, Medic, Pyro, Scout, Soldier, Sniper, or Spy
-name botname
botname can be anything. If there is already someone with the same name, an incremental number (starting at 1) surrounded with parenthesis will be added to the beginning of the name. For example, joe, (1)joe, (2)joe, etc. If no name is given then the name will be "bot" followed by a number starting with 01; for example, the first bot will be bot01, the next bot02, and so on.
Example
bot -team red -class Engineer -name joe
bot_changeclass Force all bots to change to the specified class.

Does not seem to be implemented, nothing happens.

bot_changeteams

Make all bots change teams. This forces all the bots to switch teams. If a bot was on the RED team then it will now be on the BLU team and vice versa.

bot_command Sends specified command on behalf of specified bot.
Syntax
bot_command <botname> <console command>
botname is the name or id of the bot to send the command to.
console command can be any of the ones listed in Scripting#Console Commands.
Example 1
bot_command bot01 "voicemenu 0 0"
Example 2
bot_command bot01 "taunt"
The slot commands (slot1, slot2, etc.) do not work with bot_command, however with bot_forcefireweapon, all bots in that class can be made to switch to a weapon and start firing, then made to stop. Only the entire group of bots in that class can be made to do so, however.
bot_defend Set to a team number, and that team will all keep their combat shields raised.

For instance, Heavies will spin their miniguns.

Not implemented at present.

bot_dontmove Bots are allowed or prevented from moving. When set to 1 the bots cannot move but they can still turn and jump. Note with a combination of this command and bot_mimic bots can be moved to certain areas and left there.
Syntax
bot_dontmove <0/1>
Bot is allowed to move, or not.
Example
bot_dontmove 1
bot_flipout When on, this command will make the bots fire the current weapon selected. Default is to use primary_fire, but if bot_forceattack2 is set to 1 then secondary fire is used.

Not implemented at present.

Syntax
bot_flipout <0/1>
On when set to 1. Off when set to 0.
Example
bot_flipout 1
bot_forceattack This will make all the bots automatically fire whatever weapon they currently have selected. If bot_forceattack2 is set to 0, then the bots will execute primary_fire. If bot_forceattack2 is set to 1, then the bots will execute secondary_fire.

Note this does nothing if bot_mimic is active (set to 1).

Syntax
bot_forceattack <0/1>
Bot will not fire if set to 0 and fire repeatedly if set to 1.
Example
bot_forceattack 1
bot_forceattack2 This will make all the bots execute secondary_fire on whatever weapon they currently have selected when bot_forceattack is set to 1.
Syntax
bot_forceattack2 <0/1>
Bot will use its weapon's secondary_fire when set to 1, primary_fire when set to 0
Example
bot_forceattack2 1
bot_forceattackon When firing, do not tap fire, hold it down. When this command is set to 0, the bot acts like it is continuously tapping the fire button (useful for the Pistol, but not for the Heavy's Minigun). If this command is set to 1, the bots acts as if it is holding down the fire button (useful for the Heavy's Minigun).
Syntax
bot_forceattackon <0/1>
On when set to 1. Off when set to 0.
Example
bot_forceattackon 1
bot_forceattack_down When firing, don't tap fire, hold it down. If this is set to 0 then the bot will act like they are continuously tapping the fire button (useful for the Stickybomb Launcher). If this is set to 1 then the bot will act as if it is holding down the fire button (useful for the Minigun).
Syntax
bot_forceattack_down <0/1>
On when set to 1, off when set to 0
Example
bot_forceattack_down 1
bot_forcefireweapon Forces all bots who have the specified weapon to switch to and fire it.

If a bot does not have this weapon, nothing happens to it (unless it is firing a different weapon, in which it stops)

Syntax
bot_forcefireweapon <weapon filename>
filename is usually tf_weapon_ <weapon name>.
Examples
bot_forcefireweapon tf_weapon_fists makes all Heavy bots switch to and repeatedly attack with their Fists, and all other bots stop attacking.

bot_forcefireweapon tf_weapon_shotgun_pyro makes all Pyro bots switch to and repeatedly fire their Shotguns, and all other bots stop attacking.

To make all bots stop attacking, simply specify a non-existent weapon filename. Anything without tf_weapon in it isn't a TF2 weapon, so the bots won't shoot it, for example bot_forcefireweapon ,,
Bots' loadouts cannot be changed, therefore you cannot make them fire unlockable weapons.
bot_kill

Kills the specified bot.

Syntax
bot_kill <bot name>
Makes the specified bot commit suicide.
Example
bot_kill bot01
bot_mimic Bot uses usercmd of player by index.

The bot will execute all keystrokes issued by a player, mimicking movements, turns, jumps, fire, etc. It should be noted that bots will not mimic Medic calls, weapon switches, or taunts.

Note this overrides bot_forceattack but does not override bot_dontmove.

Syntax
bot_mimic <0/1>
On when set to 1, off when set to 0
Example
bot_mimic 1
bot_mimic_inverse

Inverts the movement of the bots; moving left makes the bots move right, moving forwards makes the bots move backwards, etc.

The direction which the bot is looking is not affected.

Syntax
bot_mimic_inverse <0/1>
On when set to 1, off when set to 0
Example
bot_mimic_inverse 1
bot_mimic_yaw_offset

Offsets the bots' yaw. The bots will face in a direction this angle from the player. By default this is set to 180 so that all bots will face the player. Setting this to 0 will face the bots in the same direction as the player.

Syntax
bot_mimic_yaw_offset <0-360>
Set the direction by specifying angle in degrees
Example
bot_mimic_yaw_offset 180
bot_randomnames
Syntax
bot_randomnames <0/1>
On when set to 1, off when set to 0
Example
bot_randomnames 1
bot_refill Refills all bots' Ammo counts, including Metal for Engineers.

Syntax: bot_refill

bot_saveme This makes all the bots call for a Medic, equivalent to issuing bot_command <botname> "voicemenu 0 0" to every bot.

Syntax: bot_saveme <0/1>

On when set to 1, off when set to 0
bot_selectweaponslot This makes the first bot select weapon in specified weapon slot.

0 = primary; 1 = secondary; 2 = melee; 3 = special Note this only works for the first bot spawned. There doesn't seem to be a way to specify other bots.

Syntax
bot_selectweaponslot <n>
Set n to weapon slot that bots should switch to.
Example
bot_selectweaponslot 2
bot_teleport Teleports a specified bot to a given coordinate.

Map coordinates of where you are standing can be found by typing Status in the console.

Syntax
bot_teleport <botname> <X> <Y> <Z> <Pitch> <Yaw> <Roll>
Where botname is the bot name or id to teleport.
X Y Z are the map coordinates.
Pitch Yaw Roll is the direction the bot should face.
Example
bot_teleport bot01 -4815 1385 -447 0 0 0
bot_whack Delivers lethal damage from player to specified bot. This basically kills the bot with the currently selected weapon, probably used for testing during development.
Syntax
bot_whack <botname>
Where botname is the name of bot to "whack".
Example
bot_whack bot109

업데이트 기록

December 17, 2009 Patch (WAR! Update)
  • Added work-in-progress Bots for beta testing in KOTH maps.

January 6, 2010 Patch

  • Various improvements to combat behaviors.
  • In KOTH mode, Bots are now:
    • More likely to roam around and hunt enemies if there is lots of time left.
    • Become more likely to push for the point as time runs down, or their teammates start to capture it.
  • Medic bots now:
    • Opportunistically "overheal" nearby friends when they can.
    • Prioritize healing of injured nearby friends more.
    • Don't focus on Heavies quite so exclusively.
    • Don't spam their Medi Gun continuously at round start.
    • Won't choose cover far below their heal target so much (koth_nucleus).
    • Fight back with their Syringe Gun appropriately.
  • General bot improvements:
    • They no longer stand still on the point when capturing or defending it.
    • They choose more varied routes now.
    • They choose better defensive spots around captured points.
    • They fall back to another weapon when they entirely run out of ammo.
    • They adjust their FOV when using zoomed in Sniper scope.
    • They treat in-range Sentry Guns as the most dangerous threat.
    • They fire their weapons is more realistic bursts.
    • Engineers use their Shotgun properly.
  • Added a "virtual mousepad" concept to rework how bots track enemy players.
    • They now periodically estimate the position and velocity of the enemy they are tracking, instead of "locking on".
    • Addresses the "180 spin around and fire", "Heavy bot is OP", "Sniper bot is OP", and "I can't fight a Heavy bot as a Scout" issues.
  • Tuned Sniper spot finding algorithm to generate more diverse locations, partially .addressing the "Predictable Sniper camping spots" issue.
  • Soldier bots are more careful to not fire rockets that will explode on nearby geometry and kill them.
  • Fixed a bug where bots tried to heal from a Dispenser being carried by an Engineer.
  • Tuned scoreboard logic to guard against malicious server operators spoofing bot pings to hide the "BOT" tag.
  • Added more bot names as suggested by the TF community.

April 28, 2010 Patch

  • Bots don't retreat to gather health as readily if they are in combat.
  • Bots no longer retreat when moving to block a point capture.
  • Bots should now equip an appropriate combat weapon and fight while moving to collect health.
  • Bots who are roaming the map and hunting now chase down their victims, following them around corners.
  • Bots that fire projectiles (ie: rockets/grenades/etc) don't hold down their fire button for a minimum time. This was causing Soldier bots to fire rockets into nearby walls as they strafed, killing themselves.
  • Soldier bots now switch to their Shotgun after firing all four rockets when engaging an enemy.
  • Added a few more bot names from community suggestions.
  • Fixed a behavior loop with Engineer metal gathering.

June 10, 2010 Patch (Mac Update)

  • Added Offline Practice mode, with support for KOTH maps and Dustbowl.
  • [언급되지 않음] Looking at a bot player for a few seconds now causes it to taunt.

June 11, 2010 Patch

  • Fixed a case where servers could get stuck in an infinite loop while spawning bots.
  • Fixed a level change crash related to Bot navigation meshes.

June 14, 2010 Patch

  • Fixed server crash related to bots and health kits.

June 16, 2010 Patch

  • Medic bots now respond when nearby humans call for Medic.
  • If a Medic bot is healing you and has an ÜberCharge ready, using the voice commands "Go go go!" or "Activate Charge!" will force the Bot to activate the ÜberCharge.

July 19, 2010 Patch

  • Improved performance of bot computations that are done when a point is captured, a round starts, or a checkpoint reached.
  • Fixed Engineer bots infinite build-destroy behavior loop regression.
  • Fixed Medic bots losing their charge if they touch a resupply cabinet.
  • Fixed a crash due to having multiple types of bot systems running in-game simultaneously.
  • Fixed bot behavior issue resulting in bot pile-ups near level 3 Teleporter entrances.
  • Bots no longer consider sapped Sentry Guns a dangerous threat.
  • Bots will not try to navigate through enemy spawn rooms (unless they have won the round).
  • Engineer bots will avoid building Teleporters on steep slopes which could hinder teammate movement.
  • Added tf_bot_pyro_always_reflect cvar. Set to 1 to make Pyro bots always reflect projectiles, regardless of difficulty level.

April 14, 2011 Patch (Hatless Update)

  • Added Spy TFBots. Spy bots have basic cloaking, diguising, sapping, and backstabbing behaviors now, and are ready to join the fight
  • TFBots understand the basics of the Payload scenario now, and will push the cart on offense, and try to stop the cart on defense
  • Added navigation meshes for pl_goldrush, pl_badwater, pl_upward, pl_thundermountain, and pl_hoodoo_final
  • Improved TFBot reactions to cloaked and/or disguised enemy Spies
  • Improved Demoman bot behaviors for planting sticky bomb traps
  • Demoman bots will now try to move to a safe spot and lob stickybombs onto enemy sentry nests to destroy them
  • Soldier bots switch to their Shotgun after emptying their Rocket Launcher at close/medium range
  • TFBots will no longer hide from sapped or carried sentryguns
  • Engineer bots are better at moving their Sentry Gun nest as the scenario changes
  • Improved Sniper bot algorithm for finding good sniping spots for both Capture Point and Payload scenarios
  • Sniper bots will take opportunistic shots at targets while they move to their desired sniping spot
  • Fixed bug where Sniper bots would sometimes stand around in their spawn room doing nothing.
  • Improved TFBot ability to find a safe vantage spot to attack enemy Sentry Guns
  • TFBots will no longer try to use a teleporter entrance they can't actually reach
  • Added tf_bot_melee_only cvar. If set to 1, all TFBots will be restricted to only using their melee weapon

April 18, 2011 Patch

  • Fixed a server crash that could occur if TFBots were used across map changes

May 5, 2011 Patch (Replay Update)

  • [언급되지 않음] Bots now properly target the Horseless Headless Horsemann as an enemy.

July 22, 2011 Patch

  • [언급되지 않음] Bots now work on CTF maps.

July 26, 2011 Patch

August 23, 2011 Patch

  • Fixed crash with Demoman* bots trying to detonate stickybombs that had already been destroyed
  • Added tf_bot_kill console command (syntax identical to tf_bot_kick)
  • Bots obey melee only mode a bit better
  • Added func_nav_avoid to allow map creators control over where bots "like" to go
  • Fixed issue with Demoman bot reloading between each stickybomb he fired, causing him to be very slow at setting traps/destroying sentries
  • Bots never taunt if carrying the flag now
  • Aiming logic for Huntsman sniper bots
  • Sniper bots prioritize enemy snipers more aggressively, as well as enemy engineers now
  • Improved Demoman bot sentry gun sticky bombing
  • Bots will no longer try to use health entities assigned to the enemy team
  • Added simplistic behaviors for Chargin' Targe, and various consumables (Bonk drink, sandvich, etc)
  • Medic* bots stay a bit closer to their patient now
  • Sniper* bots go after very nearby enemies with their melee weapon now
  • Added func_tfbot_hint entity to allow map creators to tell sniper bots good places to lurk
  • Sniper* bots opportunistically fire on viable targets they encounter while on the way to their desired lurking spot
  • Spy* bots are more aggressive about backstabbing an engineer before sapping his nest now

September 6, 2011 Patch

  • Fixed a server crash related to bots

October 13, 2011 Patch (Manniversary Update & Sale)

  • TFBots have a percentage chance of noticing weapon fire based on their difficulty level. Easy bots are fairly oblivious, and Expert bots notice pretty much everything.
  • TFBots now treat certain weapon attacks as "quiet" (Spy knife, cloaking/uncloaking, some melee weapons, fists, etc). "Quiet" weapons can only be heard by TFBots when nearby, and their chance of being noticed is halved if the environment is "noisy" (ie., lots of non-quiet gunfire going on in the area). This greatly improves Spies ability to backstab TFBots without the entire team immediately turning on them.
  • Spy bot improvements:
    • Spy bots are much better about circling around and backstabbing their victims now
    • Improved Spy bot target selection in some situations (ie: clusters of sentries and enemy players)
    • Spy bots will give up on an attack and retreat if an enemy sentry gun aims at them
    • Spy bots now avoid nearby enemies while disguised and/or cloaked so they don't bump into them and give themselves away
    • Spy bots now have a simple notion of when their “cover is blown" now
    • Spy bots lead their target's position as they chase them down for a backstab now
    • Spy bots don't go after victims until setup time has elapsed
    • Hard and Expert Spy bots avoid looking at their prey until they get close and go for the stab
    • Easy Spy bots don't avoid enemies, or try to get behind before stabbing
    • Normal Spy bots don't avoid enemies
    • Fixed bug where Spy bots would jump against the enemy spawn gates during setup time
  • Medic bot improvements:
    • Medic bots stick much closer to running patients now
    • Medic bots stick much closer to their patient if they have an Ubercharge ready, or are deploying their Uber
    • Medic bots hide from Sentryguns now, too
  • Pyro bot improvements:
    • Pyro bots are less "pushy" with their compression blast, but will use it against Ubers and to get enemies off of a capture point
  • [언급되지 않음] Added new bot names.

References