A thread on bot AI - Some feedback for SD


(deadlights) #1

I know there is a discussion going on about some Bot AI, but I thought it would be helpful for SD if some Quake Wars players took the time to break down their overall experience with bots in more detail. This can be the start of that thread.

It seems to me that BRINK will have a lot of bot play for those wanting to play alone or with just a friend. So that will be either 1 human + 7 bots vs. 8 bots, or 2 + 6 vs 8. And so on…

The AI seems very important in this game, and I am curious how it will be improved. I have an overall NEGATIVE view on the AI for ETQW. I am not saying it is not good… There are some positive things, but for the most part I don’t feel the AI was a good fit for the game in my opinion. And since Brink and ETQW = id Tech4, I am assuming the bots will be built on the same code. So here are some of my suggestions on what can be improved.

Maybe it is possible, maybe not… But I will suggest all I can anyways.

What I did was put the bots on stopwatch Salvage. 8v8, and I spectated. I had them running Hard difficulty. I did this so there would be no tanks, APCs, hogs etc… Just shooting, and infantry, like BRINK.

The bots balance classes well. This is a good thing.

The bots are set to do their class objectives first over anything… In my opinion. For example: I saw an engie planting a mine while a Strogg ran right by him. A human player would have started shooting, but the bot ignored him and kept on with the mine. Or a Strogg creating a spawn host in enemy fire… Just to die. A human player would have tried to fight the enemy then create the host. (in most situations). Coverts were more concerned with getting disguises than they were fighting… Etc. etc.

The first objective, the Strogg got the plant off quick. A general human team would work like this.

Push in - Kill - Plant - Push out - Defend.

Strogg did this.

Push in kill - Plant - Stand right by gen - Plant again - Plant again - Plant again

Now, if I was in there playing. One nade = kill whole team. They all seemed to want to crowd the objective. I hope the “plant and defend” is improved and not just “plant and sit and wait” - As for the GDF, I watched them come in one by one through the same way to get killed one by one.

This brings me to my next point. Bots holding choke points and flexing to weak points in the map. Or pushing different areas. Also providing cover fire for each other. Sitting and using lean around corners. Using a buddy system. Having objective classes push first, followed by medics to revive. Gibbing bodies. More “human” type things if you will. Moving, ducking… etc. Also bots could use a refresher cours on how to strafe jump. :wink:

The bots did a decent job in fire fights in terms of movement. A little too much bunny hopping in my opinion. As for their shot? Wow, aim bot. :slight_smile: - Now I hate hackers and hacking. But some of those guys sure can program a humanized aim bot from what I have seen in demos and stuff. That is what I picture the aiming should be for AI. The ETQW bots also have some serious “wall hacks” and the knowledge (and snap) of where players are coming from. This should be looked at IMO. Don’t make it so obvious that they can see everything even when there are walls?

Dealing with turrets. I watched the Strogg get mowed over by the GDF infantry turret like 6 rushes. They all kept going the same path every time. It made me feel that they were only using one of the 3517932 ways to get to the objective. They never used the hills or anything. Also, there are other side objectives that humans do that bots can do too… example: Strogg are building the laser. Maybe have a aggressor go and plant a charge on the west entrance to breach to spawn, so when the laser is built that is already done? - Human players do this. I did not see a bot attempt it.

Or maybe on the GDF side, building the tower and sitting a sniper in there?

Bots need to learn how to use grenades. :slight_smile:

I am doing another bot study on volcano later. But I just wanted to get some ideas going. My suggestion would be: Go in ETQW and watch a bot match on an infantry only level. Also, maybe watch a few demos from ETQW competitive matches to see what I mean by “flexing, cover fire”… and things of that nature.

I hope this feed-back helps.


(Rahdo) #2

Dead, thank you very much. This is REALLY useful feedback, and it will contribute to the quality of Brink, no doubt! Also, thanks to the responders in the other thread as well…


(Nail) #3

I think the purpose of the Bots in ET:QW was to help you learn the game, not act as SP AI, they’re set as mostly backup not main player, sorta like clan mates that do what you ask most of the time. They’re good at single tasking but constantly need direction to next task, much like aforementioned clan mates. They just don’t follow the linear objective like a human player would without direction between nodes.

Haven’t played extensively with the bots, but that was my initial impression, well done by the way.


(Shiv) #4

Awesome thread dead :slight_smile:
I found vs bots they would always take a corner the same, i used to put my crosshair in a certain spot after watching them for a little and be guaranteed of taking down nearly every bot every time, it felt like they where following a select line down the middle of the corridor or even over random terrain, the only place i can remember this not happening was the opening to the inside section of area… they seemed to spread out and try and tackle that one differently, they never chucked hogs down it tho (and since brink doesnt have vehicles you dont even need to worry about this XD)
this happens in almost all games with bots tho, there are always select lines they will take and it makes them really easy to mo down, i think this is what tells poeple they are bots, they need wiggle :smiley:

we just got to remember these are bots, they are meant to be making the game more thrilling for the player, you dont want them to always pull of amazing swoops into the bomb site, clear it out and setup defense with all bases covered, that would be boring to play… and its not ai, there should be mess ups where all the bots try and plant if they can (humans do it sometimes as well) just not so often, i think the idea toka had is the best, where each ai has its own emotional response…
man, i want to play this game pretty bad :x


(tokamak) #5

Okay I’ve been watching some ETQW bot matches. Which indeed really helps.

The most obvious thing is that bots really don’t give a damn about their own lives. They just walk around in the most dangerous situations as if they’re off to get some groceries.

The most glaring situation is the one in Area 22, between the generator building and the warehouse forward spawn. In any game that place is always a dead zone for both sides. The GDF defenders are always shooting from cover inside and the strogg attackers either use the cover of the warehous or make a sprint right across into the building. Bots do neither and just meet each other right in the middle of that field.

So a bit more respect for a bot’s own life would be awesome. Gears of War has very cautious bots, but then again, they already make use of the game’s cover function.

Wouldn’t it be possible to let a bot make use of the SMART system to detect cover around him? If your game can recognise obstacles to jump over and surely bots can recognise the same objects to find cover behind?Anyway, the ability for bots to react to situations and decide between being in an advantage or disadvantage needs the most attention.

In Brink there appear to be turrets as well. Turrets are more meant to deny pathways to an objective and not to kill loads of enemies. If bots can’t figure out that a certain route is denied by a turret, then it should be able to improvise and take a different route (or at least attempt to disable the turret). In any case, it should never ignore turrets, this is way too easy to exploit by human players.

What I really liked was bots with long ranged weapons finding higher spots to ‘snipe’ from or direct artillery fire. It was really pleasing to see an opressor find a upstairs lookout in the warehouse to call in his Dark Matter cannon.


(deadlights) #6

I am obviously not a programmer, but this step seems the most logical to me. If they can program AI for human players, I am that same AI the bots will have?

[QUOTE=Nail;195267]I think the purpose of the Bots in ET:QW was to help you learn the game, not act as SP AI, they’re set as mostly backup not main player, sorta like clan mates that do what you ask most of the time. They’re good at single tasking but constantly need direction to next task, much like aforementioned clan mates. They just don’t follow the linear objective like a human player would without direction between nodes.

Haven’t played extensively with the bots, but that was my initial impression, well done by the way.[/QUOTE]

I totally agree with you 100%. So this is why the AI of BRINK needs to be improved upon, because SD has said in alot of cases the bots will be the main action for the timid player who may not like multi quite yet.


(acidrain) #7

Well I imagine the SMART system is just predefined paths that have been manually placed within the maps, so I don’t see that being useful for helping bots.

I haven’t played around with the bots in my ETQW mapping but from what I understand there are a variety of bot entities that are used to help the bots perform certain actions. I don’t know if there is a “cover” entity but it seems like a natural thing to do.


(murka) #8

For some reason i think they managed to make it automatic, would be a tad hard to place every possible move as a path.


(acidrain) #9

Who said it was every possible move?


(jRAD) #10

Don’t be so sure :wink:


(tokamak) #11

[QUOTE=acidrain;195339]Well I imagine the SMART system is just predefined paths that have been manually placed within the maps, so I don’t see that being useful for helping bots.

I haven’t played around with the bots in my ETQW mapping but from what I understand there are a variety of bot entities that are used to help the bots perform certain actions. I don’t know if there is a “cover” entity but it seems like a natural thing to do.[/QUOTE]

Well in that case there can also be a ‘SMART’ entity ‘helping’ a bot at making SMART move that seems obvious to a human player but not to a computer.


(acidrain) #12

About predefined paths or them helping bots?

Umm… yeah :slight_smile:


(deadlights) #13

I believe to help the bot AI.


(ducks) #14

The SMART system is so-called as, well, it’s so smart we don’t need to define paths.

(“Roads? Where we’re going, we won’t need roads.”)


(tokamak) #15

Not for players, but surely bots are going to need a little help?

Though even if they don’t, that’s even better, that means they’re advanced enough to recognise safe cover as well.


(Exedore) #16

Ultimately, we’re trying to make the bots behave largely like you would expect players to. Lots of good ideas in this thread, and most of the suggestions are being examined in one shape or the other. It’s a bit early to be saying much more than that, and I don’t want to speak for Jonas, but I’m hoping some of our more innovative solutions will make it in.

Again, great stuff though, if there’s any more keep it coming!


(deadlights) #17

I do have some more for you all.

I watched a little bot match on Volcano today, but I had to leave it early before I could watch the flyer drone part. But I figured that was not important because I was watching for bot behavior and not drone flying.

OK there are some big issues with this as well… Now trust me SD I am giving you props on a well designed game, just note I am trying to help here when I am being “nit pickey” and not trying to bash you at all. Just wanna make that clear.

Ok so first the Strogg:

All of them ran to the foward spawn and I was impressed that there was a sniper sitting on the back hill trying to get some picks. The bots got a little confused when caping the foward and sat there for a few extra seconds. They then seemed to ignore the front door and spread out all over the beach. One thing I noticed was two bots taking a route never used by human players. (why? Because it would be silly for human players)

2 bots ran to the east and jumped in the water by the boats. A GDF bot saw them and started shooting them from the east bunker. What were they doing? Well… I later saw a lone bot run up that mountain to the far right and then along the railed path and into the bunker. Just a little out of the way in my opinion…

Bots planted the sea wall and the front door… Good, except they just stood there and crowded the plant. Other agressors also came to plant and there ended up being several plants on each. Remember push in - plant - push out - defend.

Once the front door was blown, the strogg pushed in and got the hack very easy. (I will tell you why when I do GDF)

The seawall and east were disarmed until the objective was hacked. The GDF then went to defend the transformer and this is when I saw something VERY odd:

The seawall was difused, so the Strogg went and planted on it with 4 agressors. Why? Humans would have planted with one, then ran through the door already blown and up the stairs to the objective, yes longer… But still a route. Then they went to do the east too… ? Why, this is sooo far out of the way by now. This caused a serious waste of time. But it lured the GDF out and allowed a strogg to plant the transformer and this then leads me to the GDF.

GDF:

I liked how they pushed the beach, that was cool. B ut all 6 of them did it… Because of this the hack objective was open, so was their spawn and everything… (Speaking of, Strogg never tried to get the GDF foward ever). Human Strogg players would have teleported over east and gotten being them to hack… And they would have had zero cover.

Also, when the Strogg planted the front door they ignored the plant. They swarmed the sea wall and east, but not the front. No one even built the MG nest in the window. And no GDF ran off the roof to flank strogg at the door. (who were just standing there). This made me a little sad. :slight_smile:

Finally, talk about MASS SWARMS. On the plant at sea wall and east. Talk about all 6 GDF to swarm one plant. A little overklill… And well because of this, the front door blew… The GDF went to go get east and a Strogg started hacking and go the hack with no issue.

Then when the Strogg went to get the seawall they planted about 4 charges and sure enough 6 GDF spilled over the wall. All 6 were killed by the exact same Strogg just sitting there.

Finally when the doors were open, there was no push out from the defence. No fighting ouside at all. At one point I watched a GDF and Strogg run side by side and as soon as they hit the door to the transformer room they demolished eachother. And once again the defence from the GDF was very speratic. No choke points, flexing…

Anyways, I hope this helps. I am just trying to uncover some key flaws. I can’t imagine how hard it would be to make a humanized bot, and hell the ETQW bots are amazing at several things. But there are just some silly things that happen that you can tell are just well… Bots. Obviously they don’t have emotion and thinking power, but I feel there can be a few dynamic improvements that will make them less obvious.

I hope this helps. Oh and also… Teach the bots to strafe jump and prime nades. :slight_smile:

CHEERS


(organon) #18

AI is mainly about three things:

  1. understanding the situation

  2. deciding what to do

  3. and, and then how to do it
    while all those things can somewhat influence each other. The main problem with almost every bot is, that they are just too single minded in all three aspects. I’ll try to put light on all three aspects now.

  4. Bots know the map perfectly, which should stay that way, since good humans do that too. Also, in deciding what player and bot positions they know on the map, it is generally quite good, e.g. they don’t know everything. The problem is, that they generally can’t decide what the enemy needs to do and where he needs to go and pass through and where to look at to win, which is, I guess, because they don’t really know it themselves. They literally don’t seem to know that one hast to traverse the space between A and B to get from A to B and how line of sight and line of fire works, and that this also applies to the enemy. If they just knew those three things, they could recognize choke points, areas to watch and guard etc. Also nice would be if they recognized that clusters of enemies call for splash damage. Sniping takes not really brains (goto place with good overview, fire away), so it’s no surprise bots are reasonable good at it. But they could be much better if they just had a notion of the above.

  5. Bots are horrible at setting priorities. Which is strange, since I think this is the thing that is easiest to fix. Maybe the main reason is that the are bad at 1. but that can’t be the whole explanation. Every bot should have a tiered todo list. Top level is objective, and under those objectives are the tasks needed to achieve it, where activities like “get to objective site” “eliminate opposition around site” “wait for teammates” etc are sorted into. Those tasks constantly get resorted, depending on where on the map the player currently is relative to the objective, his health, equipment, proximity to teammates etc. It would also be nice, if they could accommodate multiple tasks/objectives at the same time, e.g. fighting and not only positioning himself towards the opponent, but also towards the objective location. It is mentioned before, that bots need to get better at weighing survival against objective. Sometimes you gotta be kamikaze, but the reward must be worth it. And if medics are near dying might not be so bad after all. And bots need to be able to not only see, but also to quickly decide to pick the low hanging fruit, e.g. actually shooting at enemies that pops up right next to you or in the crosshair, although that was not your priority, or if you run across a turret from behind, take it out, if it isn’t too much of a detraction.

  6. Damn are bots stubborn. Predictable like a computer (doh!). Adding a little random epsilon to their computed most efficient path is one thing (and maybe not to do randomness at all if no opponents are to be expected in the next few seconds, like at spawning in a secure back area). Trying to flank opponents you spotted (or remember from where you died a few seconds ago) would also be nice. Maybe just let the enemy come to you, if you have nice position once in a while and be a bastard camper (but for that they need to be able to recognize good camping spots).

Maybe “thinking like your opponent” does might be a good way to improve bots. Always have them do a simulation of the game from the opposite point of view with the data they have and the rest filled out with good guesses. Apply their own decision making code to the enemy side, and create a feedback loop with that.

Now, I said a lot of things that bots are bad at. But one thing they are very good at: not being selfish. And that is something they should should stay, mostly at least. It’s sometimes hard to decide when heroism becomes stupid, but since bots don’t feel bad or frustrated, they should rather err on too much courage and selflessness. Humans usually err on too much cowardice and selfishness, so bots need to balance that out.


(tokamak) #19

Those are some very good points I can all recognise in game (especially the line of sight of the enemy is a good point). Except for the point that bots can’t recognise camp spots, I do see opressors and infiltrators find good spots. Not insane spots like humans do, on far hills etc, but just practical sniper hide outs are definitely in their repertoire.


(organon) #20

Well, they are not bad at it, and if it was deathmatch, it would be quite good actually. But they can’t put their camping spots in the context of objectives really well. Just stuff like hiding behind a door corner on a frequently used path towards the objective …