[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - Life-Like AI vs Good AI

Life-Like AI vs Good AI

Discuss Artificial Intelligence and Bot programming.

Moderator: InsideQC Admins

IS Life-Like AI Better Always? Post a Reply with reasoning, please.

Yes
3
27%
No
8
73%
 
Total votes : 11

Life-Like AI vs Good AI

Postby Team Xlink » Fri Sep 03, 2010 8:23 pm

The Goal of AI and Bots are to make a computer opponent that behaves like a human opponent.

Life-like AI isn't always good ai.

For example, these are some examples that I have seen while playing with friends.

If someone is typing a message we don't kill them.

If someone is trying to do a glitch, get outside the map or do something else thats related. we generally don't kill them because its usually hard to do and getting killed and restarting isn't fun.

If someone is lagging horribly we don't take advantage of it.

If someone is AFK, changed their name to AFK or said in the chat they would be afk, don't kill them, unless they say "I don't care if you kill me when I'm afk" thats what I usually do.

If someone is playing badly we generally don't try as hard, this part is more related to fuzzy logic.

Do you agree, why or why not?

Thank you.
Team Xlink
 
Posts: 368
Joined: Thu Jun 25, 2009 4:45 am
Location: Michigan

Re: Life-Like AI vs Good AI

Postby frag.machine » Fri Sep 03, 2010 9:23 pm

I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
User avatar
frag.machine
 
Posts: 2120
Joined: Sat Nov 25, 2006 1:49 pm

Postby mankrip » Sat Sep 04, 2010 1:08 am

A fair AI must, to some extent, teach the player on how it can be beaten, by providing some cues and teaching new skills according to the player's progress.

A good AI requires fairness, some common sense, creativity (unpredictability goes here), a reasonable level of accuracy, and must have the same limitations as any player (such as not being able to see what's behind itself).

And .
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
/ /
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Re: Life-Like AI vs Good AI

Postby Sajt » Sat Sep 04, 2010 4:26 pm

F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.
Sajt
 
Posts: 1215
Joined: Sat Oct 16, 2004 3:39 am

Postby Electro » Sun Sep 12, 2010 12:47 am

Benjamin Darling


Reflex - In development competitive arena fps combining modern tech with the speed, precision and freedom of 90's shooters.
Electro
 
Posts: 312
Joined: Wed Dec 29, 2004 11:25 pm
Location: Brisbane, Australia

Postby mh » Sun Sep 12, 2010 1:49 am

User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Postby mankrip » Sun Sep 12, 2010 2:33 am

Well, even though many PC gamers hates Halo (and I have never played it), seems to have a lot of really good points about making a more natural AI system.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
/ /
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Postby Sajt » Sun Sep 12, 2010 6:31 pm

F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.
Sajt
 
Posts: 1215
Joined: Sat Oct 16, 2004 3:39 am

Postby mh » Sun Sep 12, 2010 7:04 pm

User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Postby frag.machine » Sun Sep 12, 2010 9:44 pm

@mh: I liked the Half Life AI in general. The ninja girls weren't the most challenging, but since they weren't so frequent, it was okay.
The army squads were pretty good, though.

@Sajt: yeah, more hitpoints == better illusion of AI maybe work in the dumbed down world of Halo and other console games, but this is a flawed concept from the start. Otherwise, Shub Niggurath is the smartest monster in Quake. :D

In general, I'd be happy with Quake monsters that don't need to do wall hug to find you, and that don't shoot each other so frequently.
I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
User avatar
frag.machine
 
Posts: 2120
Joined: Sat Nov 25, 2006 1:49 pm

Postby mankrip » Sun Sep 12, 2010 11:52 pm

The monster infighting actually happens a lot less in Quake than in Doom, and is a feature that not only makes the available gameplay strategies more diverse (getting the monsters to kill each other may take more time than killing them directly, but it allows us to economize our own ammo), but also gives them more personality, since it gets pretty obvious that they're so angry and insane that they won't forgive anything, not even from their own mates.

The AI in Half-Life can really get pretty annoying. It works great for when the scenery gives us some tactical options that requires some thinking to beat them, but it's very, very annoying when our only option is to crawl as slow as possible to not let more than a few pixels of their head shows up for us to shoot them with the sniper. By the last stage I got so bored of crawling all the time that I cheated through the rest of the game. Soldier of Fortune and Turok 2 also suffers from this "crawling-to-snipe syndrome".

I may suck at aiming, but having that as the only tactical option for people who can't aim like a bot is ridiculous. I'm a lot better moving than shooting, maybe that's why I prefer Sauerbraten over any other FPS online; it's the only one I can always have a good time with, even if I'm on the bottom of the scoreboard.

About Sajt's comment on #4, I think that the way to prevent obvious behaviors from getting predictable is to only make them obvious after their actions has been taken. This way the player can still learn why he lost when he's beaten, and in doing so the player may perceive and understand how the different reactions of the AI works, but he still won't have means to predict which of those possible reactions the AI will choose to do next time.

IMO the main problem with (both AI and human) team communications in gaming is that it's usually implemented through a different interface (exclusive menus, console commands or keybindings), instead of being implemented through the actual mechanics of the gameplay. For example, why not have a team radar (either in the HUD or in a render-to-texture display in some areas) to always inform the position of your teammates, instead of having them disrupt their focus from the gameplay to either type messages or choose pre-defined ones to inform this? Communication should get the point across through the gameplay, instead of disrupting it.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
/ /
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Postby Electro » Mon Sep 13, 2010 12:14 am

Just to post again quickly, while all good and valid points (for the most part).. I believe Xlink was actually posting regarding bots. :)
Benjamin Darling


Reflex - In development competitive arena fps combining modern tech with the speed, precision and freedom of 90's shooters.
Electro
 
Posts: 312
Joined: Wed Dec 29, 2004 11:25 pm
Location: Brisbane, Australia

Postby Sajt » Mon Sep 13, 2010 4:23 pm

Yeah, he was! Good to get that point out there. BTW, spectating bots or monsters is great for examining AI.

Anyway, about infighting, that's another one of those things that seems to make the game more fun, while at the same time destroying immersion by making monsters retards with opaque logic. I always take advantage of infighting when I'm playing a custom map with early shalraths. But could this situation (leading a shalrath bomb around) be fun without the monsters being dumb? Previously the monster you lead the bomb into is totally unaware of it until he's hit, and when he's hit he instantly knows who threw it (even if you led around several corners) and predictably goes after the shalrath. If, instead, he tried to avoid the bomb while it was flying around, that could be fun. You could clear a path by riskily leading a bomb around. And if you are lucky you could still lead it into another monster. (But if you did, that monster would probably blame you, not the shalrath.)

Then again, I'm pretty sure all Quake's monsters were supposed to be blindly insane and completely stupid (it would seem out of place for them to be a bit more rational). But when you play the game, that doesn't come across, what comes across is bad AI. You could make them scream all the time and foam at the mouth, but I would get really annoyed by that. In any case, I don't think stupid monsters makes for a very oppressive atmosphere.

Whoops, train of thought ended, so no conclusive suggestions, sorry.
F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.
Sajt
 
Posts: 1215
Joined: Sat Oct 16, 2004 3:39 am

Postby Spike » Mon Sep 13, 2010 5:11 pm

screw lifelike ai, make efficient ai, 60 bots, and give them teamplay capabilities, get them to hunt you in packs.

your bot/monster/monkey should not act too stupidly. it shouldn't keep trying to bash the square peg in the round hole. having said that, if its a bot then it would be pretty lifelike if it did that...
bots that don't target players that are sitting idle is a matter of courtesy, but you can't always distinguish that from a player sniping.
A lifelike AI will favour killing whoever it has a grudge against.

For QuakeWorld, a hard AI is one that camps the items properly. But if it always stands on the same spot, you'll know where to lob that grenade.

If you want to keep a player entertained, you have to keep the AI changing and using different tactics and just generally dynamic.

But remember, this is a game, and thus the goal should never be truely lifelike AI, the goal should be fun AI.
The player should feel that he has a chance at beating it, but it shouldn't be too easy.
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Postby frag.machine » Mon Sep 13, 2010 6:25 pm

I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
User avatar
frag.machine
 
Posts: 2120
Joined: Sat Nov 25, 2006 1:49 pm

Next

Return to Artificial Intelligence

Who is online

Users browsing this forum: No registered users and 1 guest