Left 4 Dead 2

Left 4 Dead 2

Left 4 Bots (Improved A.I.)
Showing 11-20 of 53 entries
< 1  2  3  4  5  6 >
Update: 19 Aug, 2022 @ 1:51am

- Bots will now hold the item they pickup when you order them to with the "use" command and the item is one of the non inventory items (gnome, cola, gascan, propane and oxygen tanks, fireworks). The bots will hold the item until you stop them with one of the "cancel previous command" vocalizer line (like "Let's go"), if they get pinned by a special infected or if the last human survivor dies/leaves.

- Added the setting "meds_give" (default: 1). If non 0, human survivors will be able to swap pills/adrenaline with the bots with RMB (like you already do with the nades).

- Added the setting "wait_crouch" (default: 0). If 1, the bots will crouch while holding position ("wait" command).

- Added the setting "scavenge_campaign_autostart" (default: 1). If non 0, the bots will start scavenging gascans automatically (without the need to use the "bots lead" command) in campaign and versus game modes, even if there are humans in the team (in scavenge mode they always start automatically).

- Added the setting "die_humans_alive" (default: 1). 0 = Admins can make the bots die with the "die" command only if no human survivor is alive. 1 = They can use the command any time.

- Added the setting "youwelcome_chance" (default: 90). Chance that the bot you are looking at while you play the vocalizer "Thanks" will reply with "You Welcome".

- Added the setting "gg_chance" (default: 70). Chance that the bot will chat "GG" at the end of the campaign.

- Added the command "goto" ("bots goto" / "botname goto") to order all the bots or a specific bot to go to the location you are looking at (they immediately go back to their normal behavior after reaching the spot).

- Added the line "PlayerYellRun = goto" to the default vocalizer.txt file so you can order the bot you previously selected (with "Look") to go to the location you are looking at via vocalizer line "Run".

- Chat commands "use" and "deploy" can now be sent to all the bots at once ("bots use", "bots deploy") like some other commands.

- When the bot pauses the scavenge (due to nearby infected or teammates to help), it will drop the holding gascan instead of throwing it away.

- Fixed an issue with the bots not being able to successfully activate the Crash Course finale generator (the 2nd time, after it breaks) when using the "lead" command.

- Added a workaround for the "GiveItemWithSkin" to avoid the issue of the auto switch to the received item when receiving / swapping items with the bots.

Update: 5 Mar, 2022 @ 10:42am

- Fix: if you change a setting (with !l4bsettings) that is also contained in the ontank_settings.txt while a tank is active, the setting no longer reverts to the previous value when the tank dies.

Update: 5 Mar, 2022 @ 2:09am

- Added the setting "kill_empty_chainsaw" (default value: 0). If non 0, whenever an empty chainsaw is dropped it is immediately removed from the map. It might be useful to enable this if you allow the bots to pickup the chainsaw ("max_chainsaws" setting), so they don't get stuck dropping and picking the empty chainsaw for ever.

- Fix: Changing the settings ingame with the "!l4bsettings" command while a tank is in play no longer saves the settings with the "ontank" temp values.
NOTE: I tested the fix and it's should be safe but eventual unexpected bugs in the settings file save process can corrupt the file itself, so it might be a good idea to make a backup copy of the file (or the entire "ems\left4bots\cfg" folder) every now and then.

Update: 25 Feb, 2022 @ 4:52am

- Added the setting "should_hurry" (default: 1). If non 0, bots will not stop to shoot every infected they see before moving again when there is no human in the team. This option simply sets the director option cm_ShouldHurry, which i'm not entirely sure of what it actually does but in coop the bots seem to stop less with this option enabled (don't expect them to rush like you would do tho).

- Fix: Bots no longer fire their gun if they fail to switch to medkit when you order them to heal themselves (it happens sometimes if the bots are already switching/reloading or doing something that prevent them from switching to medkit), they do nothing instead. If the command fails you will still need to send it again but at least you don't get shot lol.

Update: 10 Feb, 2022 @ 5:23am

- Nades give/swap mechanics have been reworked. Now you do it exactly like you do with pills and adrenaline, you no longer need to bash the teammate and the range has been increased.

- Witch selection mechanics for witch crown order have been improved. Now you no longer need to aim at her feet.

- Fix: item give/swap functionalities no longer reset the skin of the tranferred items.

- Fix: fixed a typo in the settings. "keep_holdind_position" renamed to "keep_holding_position" (it should fix automatically in the settings.txt file).

Update: 23 Jan, 2022 @ 3:14am

- Setting "pickup_chainsaw" has been replaced by "max_chainsaws" (default: 0). Acts like the "sb_max_team_melee_weapons" convars and defines the max number of chainsaws to be used in the team. 0 = bots won't pickup the chainsaw, 4 = all the bots will pickup the chainsaw.

- Added the ability to temporarily alter the addon config and the game convars while one or more tanks are alive. For the settings just create a file named "ontank_settings.txt" into the "ems\left4bots\cfg" folder and put the addon configs you want to be changed while a tank is around.
Example ontank_settings.txt:
spit_block_nav = 0
force_heal = 0
No need to put all the settings, only the ones you want to change. Same for the convars with a file named "ontank_convars.txt" in the same folder.
Example ontank_convars.txt:
sb_melee_approach_victim 0
sb_separation_range 350
NOTE: The changes contained in these files are applied as soon as the tank spawns and they are reverted when the tank dies.

- Fix: bots no longer shoot the tank's rock if they are reviving/healing.

Update: 6 Jan, 2022 @ 2:44am

- "botname heal" chat command now accepts an optional parameter which is the character name of the survivor to be healed: botname heal [target] (if target is omitted the bot will heal himself just like before).
Examples: zoey heal bill / nick heal nick (which is equivalent to: nick heal) / ellis heal me (you can use the keyword "me" instead of the name of your character to make the bot heal you).
NOTE: You must use the character name not the nickname.
NOTE2: "bots heal" will always make all the bots heal themselves and does not accept any target parameter (like before).
NOTE3: The bots won't check if the target survivor already got full HP, in that case the healing will fail and the bot will start shoving the target non stop. If the bot start doing weird things like this while executing the command, cancel the command with "bots move" chat command (or any vocalizer line bound to it, like "Let's go").

- Added the command "botname healme". This command is equivalent to "botname heal me". It has been added so you can bind it to a vocalizer command and be able to order a bot to heal you via vocalizer.

- Added the line "AskForHealth2 = healme" to the default vocalizer.txt file (as usual, already existing files must be edited in order to add the line manually, or you can delete the file and let the addon recreate it). So, with this, you can order a bot to heal you in 3 different ways: chat command "botname heal me", chat command "botname healme", vocalizer line "Heal me".
NOTE: Some characters don't actually play this vocalizer line but the command is still triggered.

- Added the line "PlayerAnswerLostCall = give" to the default vocalizer.txt file so you can force the bot you are looking at to give you his items via vocalizer line "I'm here".

- Added the chat command "bots die". The command incaps any survivor bot alive and it's only available to admins. It can be used when you die and you don't want to wait to get rescued or you think the bots have no chance to finish the map alone.

- Added the setting "pickup_chainsaw" (default: 0). If non zero, the bots will pickup the chainsaw (regardless of their weapon preference, the chainsaw will always have the highest priority over pistols and melee).
NOTE: The setting makes them pickup the chainsaw but the base AI will surely try to switch back to pistols and melee (if sb_max_team_melee_weapons > 0) as soon as it can. You can avoid this by adding "weapon_pistol" and "weapon_pistol_magnum" in the itemstoavoid.txt file and by setting "sb_max_team_melee_weapons" convar to 0.
NOTE2: By default, when using the chainsaw, the bots are passive and wait for the infected to go to them (like with the melee). You can change this behavior by setting the cvar "sb_melee_approach_victim" to 1 (even though i don't recommend this as they will start running around on their own and no longer stick with the group).

- Added the setting "trigger_witch" (default: 0). If 1, survivor bots will startle the witch when they accidentally shoot her (just like the humans).

- Added the setting "trigger_caralarm" (default: 0). If 1, survivor bots will set off car alarms just like the humans.

- Added the setting "spit_damage_multiplier" (default: 1). Damage taken from the spitter's acid is multiplied by this factor (bots only). In normal difficulty you can set it to 2 to make the bots take the same damage as the humans.

- Added the setting "thanks_chance" (default: 90). It's the chance that the bot will reply with "Thanks" to your vocalizer line "Nice shot". If the subject of the "Nice shot" line is a particular bot (the bot you are looking at), the target bot is that bot. If no subject, the target bot is the last bot who killed a special/boss infected in the past 10 seconds.

- Changed the default value of the setting "jockey_redirect_damage" from 10 to 40 (ofc it needs to be changed manually in already existing settings.txt files).

- Little improvement in the bots positioning when executing the "use" command.
NOTE: The algorithm that finds the best position to go to press a button isn't effective 100% of the times, sometimes (especially in custom maps) the bots fail to press the button. If you see them failing you can cancel the command and try the "use" command again. The command has been tested on all the buttons/triggers of the official maps, i can't tell if it will always work on custom maps too.

- Removing active pipe bombs from the map when shutting down the server to avoid the infamous game bug of the bots not shooting common infected if you quit (while a pipe bomb is ticking on the ground) and then you start another map without closing the game.

- Fixed some "Accessed null instance" errors (that error could lead to dedicated servers crashes).

Update: 17 Dec, 2021 @ 2:14am

- Added a visual indication in case the Left 4 Lib addon is missing.

- In Dead Center 2, when delivering the cola, the num of scavenge bots is forced to 1, so the bot who goes for the cola is always the same who opened the store doors (unless he dies ofc).

- Improvements to the "use" command.
1. Now it is possible to make the bots use buttons and generators without the need to stay in front of the thing to press when sending the command (just aim at it like you do with weapons) and without the need to specify the holding duration. When the thing to press requires you to hold down the button, the holding duration is automatically taken from the object's properties (thank you Shadowysn). It is still possible to specify a different duration in the chat command though.
2. Added the ability to use the command for doors and finale triggers (like radios etc).
You can see the USE command improvements here: https://youtu.be/Hs-HOE9epzg

Update: 8 Dec, 2021 @ 4:51am

- Little improvement to the throw nades logics, now the dying infected are ignored when counting how many of them are chasing the bots (there should be less "too late" throws now).

- The addon will load it's "ShouldAvoidItem" hook only if it's not already loaded, so now the mutations that use such hook should work correctly.
NOTE: If the mutation loads it's "ShouldAvoidItem" hook, the "itemstoavoid.txt" file won't have any effect.

- Minor bugs fixed

Update: 22 Oct, 2021 @ 8:19am

- Shared VScript code and game hooks are now handled in an external addon "Left 4 Lib" ( https://steamproxy.net/sharedfiles/filedetails/?id=2634208272 ) which is now required by some of my addons (including this).
IMPORTANT: "Left 4 Lib" is mandatory. This addon will not work without it!

- Changed the default convars.txt file in order to make the bots more efficient. If you want to try this you can delete your "convars.txt" file and make the addon create the new one (make a backup of the old file so you can rollback if you don't like the new one).

- Added a "workaround" for the problem of the bots shooting the survivor's feet instead of the jockey that is riding him. Now, when the survivor being ridden gets hit by a bot, the jockey gets some damage. The damage amount is specified by the new setting "jockey_redirect_damage" (default value: 10).
NOTE: Due to some limitations, the damage is always the same regardless the weapon.

- Added 2 new settings: "t3_ammo_bots" (default: 1) and "t3_ammo_human" (default: 0). If not 0 allows the bot/human survivors to replenish ammo with the grenade launcher and the M60.
You can let the bots use these weapons with this addon: https://steamproxy.net/sharedfiles/filedetails/?id=2634219419
Allowing the bots to replenish ammo when using such weapons prevents them from getting stuck at the ammo stack trying to get ammo forever.

- Bots can now open the emergency door in Blood Harvest chapter 2.

- Added the chat command "[botname/bots] throw". It makes the specified bot (or all the bots) throw their throwable item at the location you are looking at.
NOTE: The command forces the bot to throw the item from their current position towards the direction your looking without making any check whether the item can actually reach that location, they will throw the item even if there is a wall in front of them so make sure to choose the right moment to send the command.

- Added the new setting "show_commands" (default: 1). If 0, all the chat commands will be hidden to the other players.

- Fixed a rare bug that made the bots try to go to the location of the map with coordinates (0,0,0).