AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Plugins (https://forums.alliedmods.net/forumdisplay.php?f=108)
-   -   [L4D2] ScavengeBotsDS (https://forums.alliedmods.net/showthread.php?t=311004)

Xanaguy 08-11-2019 00:44

Re: [L4D2] ScavengeBotsDS
 
Updated: Fixed a bug and added a lot of maps in the .cfg files. Update when you can!

Xanaguy 08-15-2019 06:27

Re: [L4D2] ScavengeBotsDS
 
Spotted and fixed a bug in Urban Flight.

Tommyfien 08-22-2019 15:16

Re: [L4D2] ScavengeBotsDS
 
Noticed issues on fareweell chemming or whatever.
On the second stage the gas cans that are the farthest away, when you go down the sewer and go up the ladder. The bots would have issues grabbing the cans me and my baby bro had to grab them first then drop it for them. They also had issues with loading it into the car. IE. dropping it multiple times before actually pouring it into the car while at the car.

Xanaguy 08-25-2019 19:06

Re: [L4D2] ScavengeBotsDS
 
This is most likely due to the navigation file for that particular map. Nothing I can do from my end.

TBK Duy 08-26-2019 02:29

Re: [L4D2] ScavengeBotsDS
 
Can you make a scavenge bots version like this mod ?
https://steamcommunity.com/sharedfil.../?id=675686554

Xanaguy 08-27-2019 05:11

Re: [L4D2] ScavengeBotsDS
 
New Update: Bots will attempt to regroup with a player when in critical condition (vision is black and white) so they can safely heal themselves or have player heal said bot.

Hotfix: Fixed same conditions resulting in a double input and the AI doing nothing.

paul92 09-01-2019 12:02

Re: [L4D2] ScavengeBotsDS
 
Is there any cvar that needs to be enabled? Playing solo on Dead Center Finale and bots just stay with me.
Just installed the 4 files in the right places, didn't do anything else. (i don't have ever installed the other scavengebots plugin).

Xanaguy 09-01-2019 15:42

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by paul92 (Post 2665487)
Is there any cvar that needs to be enabled? Playing solo on Dead Center Finale and bots just stay with me.
Just installed the 4 files in the right places, didn't do anything else. (i don't have ever installed the other scavengebots plugin).

There should be one Cvar that should be enabled by default.

paul92 09-01-2019 17:36

Re: [L4D2] ScavengeBotsDS
 
Mhm yeah. Just checked on it. It is activated, but it doesn't work. :(
They have the same vanilla behavior.

Xanaguy 09-01-2019 17:40

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by paul92 (Post 2665517)
Mhm yeah. Just checked on it. It is activated, but it doesn't work. :(
They have the same vanilla behavior.

Okay, do you remember whether or not the bots have B/W vision? they wont get cans under that condition. Additionally, whenever they register a threat, they will also try to stay close to the player.

paul92 09-01-2019 18:30

Re: [L4D2] ScavengeBotsDS
 
No, they were fully healed. Basically i started the finale map of Dead Center (coop, me and the bots. Easy difficulty, everyone was at full health basically). It was a breeze. They simply never left the elevator once the door opened like i saw it should happen on youtube videos. They just kept staying close to me. It was like this plugin didn't exist at all. The plugin was loaded though, listing it with sm plugins list showed it loaded normally together with others.

paul92 09-01-2019 18:37

Re: [L4D2] ScavengeBotsDS
 
Ok, same result with the finale of The Passing. At this point i'll try and look if there is some conflict. Are you aware of any possible conflict/known conflict? Will try to remove all the plugins and find what's wrong..

paul92 09-01-2019 19:27

Re: [L4D2] ScavengeBotsDS
 
Ok i think i'm getting this sorted out. If i still get some issues i'll get back to you! Thanks for your availability, this is a great plugin!

Xanaguy 03-19-2020 00:46

Re: [L4D2] ScavengeBotsDS
 
Data Update: The "Infection Overdrive" campaign is now compatible with this plugin.

Masterman444 03-21-2020 07:36

Re: [L4D2] ScavengeBotsDS
 
Where can I download the .cfg files?

Tonblader 06-23-2020 21:35

Re: [L4D2] ScavengeBotsDS
 
When i add this in scavengefinalebotsds.cfg (exact origin and exact angles as in my source:stripper configuracion) :

"c2m5_concert" // Dark Carnival - Chapter 5
{
"origin" "-3565.377929 3012.331298 -255.968750"
"angles" "30 0 0"
}

With my source:stripper configuration it does not work.

https://media.discordapp.net/attachm...75/unknown.png

In other no-finale maps, the source:stripper configuration it works

source:stripper c2m5_concert (It is not finished)

https://pastebin.com/JfJbRe18


EDIT:
one more bug:
If I drop a gascan on a cliff, the bots will also jump off the cliff.

EDIT2:
Now everything works fine for me, I already set it up correctly, even after The Last Stand Update.

DreadedGhoul575 09-24-2020 20:04

Re: [L4D2] ScavengeBotsDS
 
Now to update Last Stand.

Psyk0tik 09-27-2020 19:08

Re: [L4D2] ScavengeBotsDS
 
Here's the coordinates for the nozzle in the Last Stand finale. Goes in scavengefinalebotsds.cfg.

PHP Code:

"finalemaps"
{
    
"c14m2_lighthouse"//The Last Stand - Chapter 2
    
{
        
"origin"    "-3863.68 4036.03 704.03"
        "angles"    "30.37 -95.15 0.0"
    
}



Marttt 01-30-2021 12:19

Re: [L4D2] ScavengeBotsDS
 
1 Attachment(s)
This is a version that I modified to make it compatible with my plugin [L4D2] Multiple Gascan and Cola Fill.

I did minimum modifications to the original code, becoming easier to diff the changes.

In case you don't use my plugin, I recommend using the main post/author version.

Iizuka07 08-10-2021 00:19

Re: [L4D2] ScavengeBotsDS
 
Does anyone have coordinates to the map Buried Deep? It has scavenge in the final chapter.

Tonblader 08-10-2021 01:42

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by Iizuka07 (Post 2754932)
Does anyone have coordinates to the map Buried Deep? It has scavenge in the final chapter.

bdp_bunker05a

Quote:

{
"targetname" "pour_target"
"spawnflags" "1"
"origin" "-5516 -2632 -628"
"nozzle" "gas_nozzle"
"classname" "point_prop_use_target"
"hammerid" "275766"
}

Iizuka07 11-21-2021 05:29

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by Tonblader (Post 2754935)

Well this worked well in the previous map update back in May 2021 but the map is updated to a new version in October 2021 with lots of changes. Can you update the coordinates please?

Tonblader 11-29-2021 13:26

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by Iizuka07 (Post 2764014)
Well this worked well in the previous map update back in May 2021 but the map is updated to a new version in October 2021 with lots of changes. Can you update the coordinates please?

I checked the map again and the entity is still in place.

plug344 03-01-2022 21:43

Re: [L4D2] ScavengeBotsDS
 
Is there a way to get all the bots together and collect only one or two gas cans at a time? After the bots dispersed, they gave great convenience to the infected, so they were killed one by one by zombies, each time leading to a very rapid death of all the team, even if there are other non bot players on the team who want to lead the bots, they still can't do anything

Edit: I modified the source code to make only one bot collect gas cans, but other bots just linger at the position of the machine that needs refueling and don't follow and protect the bot who is collecting gas cans, so that lonely guy was quickly killed by zombies. It seems that bots will only follow non bot players. Is there a way for bots to follow a bot? (just like they follow a non bot player)

LoneBat 10-27-2022 13:03

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by Tonblader (Post 2754935)

How do I use it?

ArcticCerebrate 07-18-2023 05:11

Re: [L4D2] ScavengeBotsDS
 
1 Attachment(s)
I have made a modified version of ScavengeBotsDS designed to work alongside the "Survivor Bot AI Improver" plugin:
https://forums.alliedmods.net/showthread.php?t=342872

This additional plugin is not required for the modified ScavengeBotsDS to function, but the mod will benefit from the plugin or any equivalent plugin that improves the Bot AI during battle.

Modified Changes:

- Fixed an issue where if a special infected manages to kill a bot carrying gas before another survivor can help, the bots will not touch that particular gas can even if it is the last one because they believe their dead teammate can still bring it home.

- Fixed an issue where a bot that is on thirdstrike/black&white still maintains their claim on a gas can but will not fetch it due to thirdstrike/black&white status. This issue resulted in healthier bots ignoring that particular gas can forever if no teammate has any health items to heal the injured bot. The modified version will take any thirdstrike/black&white bot off scavenge duty and unassign their gas cans.

- Fixed a rare issue where a bot carrying a gas can thinks they need to fetch a new one.

- Bots are more cautious and will engage/defend against any special infected they encounter. The "Survivor Bot AI Improver" plugin is recommended to enhance this aspect of the mod.

- Bots will assist pinned/downed teammates at any stage of the gas collection process. In the original ScavengeBotsDS, bots would only assist if they were on the return trip with a gas can, while bots that don't have a gas can would continue journeying to one.

- Bots with low hp will be taken off scavenge duty to allow them to heal. The original ScavengeBotsDS typically will not let bots heal until they are on thirdstrike/black&white.

- Bots will attempt to assign gas cans in clusters. Whenever a bot is searching for a new gas can, they will check which gas cans their teammates are pursuing and find a gas can in that vicinity. This improves the chances of creating a zone on the map with high survivor foot traffic, thus increasing the odds that a teammate is nearby if any bot gets pinned by the special infected. The original ScavengeBotsDS assigns gas cans based on whichever is closest to the bot.

- Bots can optionally use a buddy-pair strategy when collecting gas cans.
This feature can be enabled/disabled with a new cvar: scavengebotsds_buddy (0/1)
This cvar is disabled by default: 0
When enabled, bots will pair up with each other and attempt to collect gas cans together, thus improving their survivability at the cost of collection speed.
This strategy generally underperforms the original solo strategy (at least when bots do it) and should be reserved for non-finale custom campaigns where time/tanks are not an issue or if there are enough humans on the team to pick up the slack.

- Bots will prefer not to lose their current gas can assignments whenever a teammate is pinned/downed. After a teammate is rescued, bots will check if their gas can is still nearby, and if so they will return to it. If it is far away, they will clear their gas can assignment and find a new gas can to scavenge. This change is to reduce the odds that a boomer will send a gas can lying on the ground out of bounds.

- Bots will drop any gas cans they are carrying if the cvar "scavengebotsds_on" is disabled "0". This is only relevant if you wish to turn the plugin off in the middle of a scavenge.

- Bots will drop any gas cans they are carrying if the scavenge section of a campaign ends. This is only relevant in singleplayer where the number of required gas cans collected is fewer than the number of gas cans spawned or in custom maps that always spawn more gas cans than required.

Notes:
Code for special infected detection was borrowed from "Survivor Bot Fix"
https://forums.alliedmods.net/showthread.php?p=2757330

I am still new to SourcePawn so there may be still be unforeseen issues.

++++++++++
Edit: Newer updated version at:
https://forums.alliedmods.net/showpo...7&postcount=70

Mi.Cura 07-18-2023 14:28

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by LoneBat (Post 2791685)
How do I use it?

In file scavengefinalebotsds.cfg: add


"bdp_bunker05" // Burried Deeep - Chapter 5
{
"origin" "-5529.617188 -2629.964844 -687.968750"
"angles" "11.267521 -6.651766 0.000000"
}

BioHazardN7 07-23-2023 09:51

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by ArcticCerebrate (Post 2807329)
I have made a modified version of ScavengeBotsDS designed to work alongside the "Survivor Bot AI Improver" plugin:
https://forums.alliedmods.net/showthread.php?t=342872

This additional plugin is not required for the modified ScavengeBotsDS to function, but the mod will benefit from the plugin or any equivalent plugin that improves the Bot AI during battle.

Modified Changes:

- Fixed an issue where if a special infected manages to kill a bot carrying gas before another survivor can help, the bots will not touch that particular gas can even if it is the last one because they believe their dead teammate can still bring it home.

- Fixed an issue where a bot that is on thirdstrike/black&white still maintains their claim on a gas can but will not fetch it due to thirdstrike/black&white status. This issue resulted in healthier bots ignoring that particular gas can forever if no teammate has any health items to heal the injured bot. The modified version will take any thirdstrike/black&white bot off scavenge duty and unassign their gas cans.

- Fixed a rare issue where a bot carrying a gas can thinks they need to fetch a new one.

- Bots are more cautious and will engage/defend against any special infected they encounter. The "Survivor Bot AI Improver" plugin is recommended to enhance this aspect of the mod.

- Bots will assist pinned/downed teammates at any stage of the gas collection process. In the original ScavengeBotsDS, bots would only assist if they were on the return trip with a gas can, while bots that don't have a gas can would continue journeying to one.

- Bots with low hp will be taken off scavenge duty to allow them to heal. The original ScavengeBotsDS typically will not let bots heal until they are on thirdstrike/black&white.

- Bots will attempt to assign gas cans in clusters. Whenever a bot is searching for a new gas can, they will check which gas cans their teammates are pursuing and find a gas can in that vicinity. This improves the chances of creating a zone on the map with high survivor foot traffic, thus increasing the odds that a teammate is nearby if any bot gets pinned by the special infected. The original ScavengeBotsDS assigns gas cans based on whichever is closest to the bot.

- Bots can optionally use a buddy-pair strategy when collecting gas cans.
This feature can be enabled/disabled with a new cvar: scavengebotsds_buddy (0/1)
This cvar is disabled by default: 0
When enabled, bots will pair up with each other and attempt to collect gas cans together, thus improving their survivability at the cost of collection speed.
This strategy generally underperforms the original solo strategy (at least when bots do it) and should be reserved for non-finale custom campaigns where time/tanks are not an issue or if there are enough humans on the team to pick up the slack.

- Bots will prefer not to lose their current gas can assignments whenever a teammate is pinned/downed. After a teammate is rescued, bots will check if their gas can is still nearby, and if so they will return to it. If it is far away, they will clear their gas can assignment and find a new gas can to scavenge. This change is to reduce the odds that a boomer will send a gas can lying on the ground out of bounds.

- Bots will drop any gas cans they are carrying if the cvar "scavengebotsds_on" is disabled "0". This is only relevant if you wish to turn the plugin off in the middle of a scavenge.

- Bots will drop any gas cans they are carrying if the scavenge section of a campaign ends. This is only relevant in singleplayer where the number of required gas cans collected is fewer than the number of gas cans spawned or in custom maps that always spawn more gas cans than required.

Notes:
Code for special infected detection was borrowed from "Survivor Bot Fix"
https://forums.alliedmods.net/showthread.php?p=2757330

I am still new to SourcePawn so there may be still be unforeseen issues.

Code:

SourcePawn Compiler 1.11.0.6934
Copyright (c) 1997-2006 ITB CompuPhase
Copyright (c) 2004-2021 AlliedModders LLC

ScavengeBotsDS.sp(64) : warning 234: symbol "FCVAR_PLUGIN" is marked as deprecated: No logic using this flag ever existed in a released game. It only ever appeared in the first hl2sdk.
ScavengeBotsDS.sp(67) : warning 234: symbol "FCVAR_PLUGIN" is marked as deprecated: No logic using this flag ever existed in a released game. It only ever appeared in the first hl2sdk.
ScavengeBotsDS.sp(287) : warning 219: local variable "File" shadows a variable at a preceding level
ScavengeBotsDS.sp(885) : warning 225: unreachable code
Code size:        56288 bytes
Data size:        10704 bytes
Stack/heap size:      16980 bytes
Total requirements:  83972 bytes

4 Warnings.


ArcticCerebrate 07-23-2023 15:16

Re: [L4D2] ScavengeBotsDS
 
Quote:

Originally Posted by BioHazardN7 (Post 2807643)
Code:

SourcePawn Compiler 1.11.0.6934
Copyright (c) 1997-2006 ITB CompuPhase
Copyright (c) 2004-2021 AlliedModders LLC

ScavengeBotsDS.sp(64) : warning 234: symbol "FCVAR_PLUGIN" is marked as deprecated: No logic using this flag ever existed in a released game. It only ever appeared in the first hl2sdk.
ScavengeBotsDS.sp(67) : warning 234: symbol "FCVAR_PLUGIN" is marked as deprecated: No logic using this flag ever existed in a released game. It only ever appeared in the first hl2sdk.
ScavengeBotsDS.sp(287) : warning 219: local variable "File" shadows a variable at a preceding level
ScavengeBotsDS.sp(885) : warning 225: unreachable code
Code size:        56288 bytes
Data size:        10704 bytes
Stack/heap size:      16980 bytes
Total requirements:  83972 bytes

4 Warnings.


The FCVAR_PLUGIN flag warning comes from the original code, with the exception of the second identical warning coming from copied code for the newer "scavengebotsds_buddy" cvar. Though I would like to believe the FCVAR_PLUGIN flag isn't needed, I am not 100% sure if there is another aspect of this plugin's original code that relies on it in some manner that I am unaware about.

The "File" variable warning comes from the original config loader code. I haven't touched the original code that handles the config files and data, but if someone encounters issues with the .cfg files, I may try to take a look at it.

The unreachable code is the (mostly unedited) original gas can assignment code which is no longer being called as I have added modified versions of gas can assignment for cluster assignment and buddy gas can assignment. I left the original code intact (but unused) in case a bug is found with the newer assignment code, in which case I would be able to quickly re-attach the original code if needed without worrying about fetching it from the original .sp and accidentally forgetting to re-introduce minor edits.
If the newer gas can assignment code proves to be reliable enough, I will probably permanently remove the original gas can assignment code from future versions of this fork.

ArcticCerebrate 07-30-2023 18:33

Re: [L4D2] ScavengeBotsDS
 
1 Attachment(s)
I have updated the AI-focused fork of ScavengeBotsDS posted earlier:
https://forums.alliedmods.net/showpo...9&postcount=66

Changes:
- Added a new CVAR "scavengebotsds_buddyWithHuman": (0/1)
This CVAR is enabled by default and is only effective when the buddy-system CVAR, "scavengebotsds_buddy" is also enabled.
When enabled, bots that do not have another bot partner for scavenging will attempt to partner with a human player and pick up any gas cans the human player finds.
When disabled, bots that do not have another bot partner will attempt to scavenge gas cans alone.
Note: Bots that partner with human players will not pick up gas cans that are already marked for pickup by another bot. Human players can pick up a gas can to clear any marked assignments bots have on that gas can.
Note#2: If the prior version of this fork has already created the "l4d2_scavengebotsds.cfg" for CVARS, you may need to manually add the new CVAR into the .cfg file or delete the .cfg file and let the plugin generate a new one.

- Reduced the number of TR_TraceRayFilterEx() calls needed for nearby infected detection. This should give a slight performance improvement.

- Fixed an issue with the newer infected detection code running even when a scavenge is not active. Infected detection should no longer be active until a scavenge session starts.

- Removed an unnecesssary for-loop from the original IsBot() function.

- Bots will now also consider human players for healing. The previous version only checked if bots needed healing.

- Fixed an issue with the Buddy-Pairing system where pairings would be re-established more often than necessary whenever a bot died then was later revived.


All times are GMT -4. The time now is 23:10.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.