roman-murashov / hedgewars

Automatically exported from code.google.com/p/hedgewars
GNU General Public License v2.0
0 stars 0 forks source link

Teach AI how to use: Bee, PickHammer, Rope, Mine, Dynamite, Parachute, MineStrike, BlowTorch, Girder, Teleport, Seduction, HellishBomb, Napalm, Ballgun, RCPlane, LowGravity, ExtraDamage, Invulnerable, ExtraTime, LaserSight, Vampiric, Jetpack, Birdy, PortalGun, Piano, Flamethrower, Resurrector, DrillStrike, Freezer #184

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Remove respective items from summary when done with them :)

Original issue reported on code.google.com by sheepyluva on 2 Feb 2011 at 10:50

GoogleCodeExporter commented 8 years ago

Original comment by kyberneticist@gmail.com on 2 Feb 2011 at 11:42

GoogleCodeExporter commented 8 years ago
Issue 154 has been merged into this issue.

Original comment by sheepyluva on 2 Feb 2011 at 11:44

GoogleCodeExporter commented 8 years ago
Issue 113 has been merged into this issue.

Original comment by vittorio...@gmail.com on 24 Feb 2011 at 9:50

GoogleCodeExporter commented 8 years ago
Issue 143 has been merged into this issue.

Original comment by vittorio...@gmail.com on 24 Feb 2011 at 9:57

GoogleCodeExporter commented 8 years ago
Added the Kamikaze weapon to the AI.

Added a TestKamikaze to uAIAmmoTests and RateKamikaze to uAIMisc.  

Original comment by goliath....@gmail.com on 14 Apr 2011 at 10:48

GoogleCodeExporter commented 8 years ago
Nice to see you're working on AI.

I haven't looked through the source code in detail yet, but gave it a try.
Two things I noticed:

a
+function TestSniperRifle(Me: PGear; Targ: TPoint; Level: LongInt; var ap: 
TAttackParams): LongInt;
slipped in, eh? Breaks build :P

Should a lvl 5 cpu player really sacrifice a hog for this: 
http://img713.imageshack.us/img713/4021/screenshot114l.png ? :P

Original comment by sheepyluva on 14 Apr 2011 at 12:59

GoogleCodeExporter commented 8 years ago
Err, I removed TestSniperRifle from my local.  Looks like I didn't select it in 
the changeset for the patch though.

For the second issue =p Looks like the max range of the AI's kamikaze shot 
evaluation needs to be slightly adjusted.

Original comment by goliath....@gmail.com on 14 Apr 2011 at 6:23

GoogleCodeExporter commented 8 years ago
Updated the TestKamikaze to not test for collisions against Land and tweaked 
the range of kamikaze ammo tests.

Original comment by goliath....@gmail.com on 20 Apr 2011 at 9:28

Attachments:

GoogleCodeExporter commented 8 years ago
this may sound stupid... but how do you knock somebody off a ledge while you 
are using the rope?

Original comment by wyatt...@gmail.com on 5 Jun 2012 at 9:13

GoogleCodeExporter commented 8 years ago
Switch, kamikaze, cake, sniper are implemented.

Original comment by unC0Rr on 7 Aug 2012 at 8:04

GoogleCodeExporter commented 8 years ago
Drill is implemented.
Is DrillStrike implemented yet? 

Original comment by RedGrin...@gmail.com on 9 Jun 2013 at 5:27

GoogleCodeExporter commented 8 years ago
I have no idea how the AI works, but I suggest an outline for basic AI 
strategies for ExtraTime, Vampirism and Invulnerable.

Here are two no-brainer strategies that Always Work™:
- Vampirism is used, NO MATTER WHAT, if the AI got an infinite of it and if it 
isn’t already a vampire. 
- Invulnerable is used, NO MATTER WHAT, if the AI got an infinite amount of it 
and the AI is not already invulnerable. 
These strategies have NO negative side-effect whatsoever. Not using them brings 
NO advantages and there is afaik no tactical reason NOT to use Vampirism and 
Invulnerable immeciately if one got an infinite amout of them.

Here are some additional basic strategies:
- ExtraTime is IMMEDIATELY used if there is less than half a second on the 
clock left, the AI has still no idea what to do and the AI has at least one 
ExtraTime. Reason: This is the very purpose of ExtraTime and saving ExtraTimes 
“for later use” doesn’t make much sense in my opinion since the 
alternative to not using ExtraTime would be wasting an entire turn.
- Vampirism MAY also be used right before an attack if the AI has a finite 
amount of Vampirism and if it thinks it may deal great damage.
- Vampirism SHOULD be used more likely right before an attack if the AI has a 
large amount of it. The probability shall increase even more the higher the 
crate proabilty of vampirism and the general crate drop probability are and 
with the current number of weapon crates in the game and of course also with 
the crate ammo. The reason for this is, if it is likely to collect Vampirism in 
a crate, the AI can be more “wasteful” with Vampirism, but if it is less 
likely, the AI should more likely attempt to save Vampirism for very good 
situations.
- Invulnerable SHOULD be used if the AI got a finite amount of it and it thinks 
it’s in immediate danger (fall from great height right now, nearby mine is 
about to explode or has random timer.). Normally the AI shouldn’t walk into 
danger in its own turn but it still happens from time to time so this can be a 
“last-second rescue switch”.
- Invulnerable COULD be used stratetically to be able to drop from a great 
height in order to walk on new terrain that was inaccessible before. The new 
terrain that could be walked this way SHOULD be considered in the calculations 
then.

Original comment by almikes@aol.com on 27 Aug 2013 at 3:03

GoogleCodeExporter commented 8 years ago
Oh, by the way, you should add “Rubber” to the list. ;-)

Original comment by almikes@aol.com on 31 Dec 2013 at 2:51

GoogleCodeExporter commented 8 years ago
The drill rocket is NOT implented, bots simply refuse to use it. CoolKid 
reported this in the following post:
http://hedgewars.org/node/5982#comment-30078

I was able to reproduce it in r9819e69bc6db on a simple hand-drawn maps and 
giving the AI only drill rockets to use. The AI never shot, neither through 
wall nor directly.

Original comment by almikes@aol.com on 20 Dec 2014 at 4:05

GoogleCodeExporter commented 8 years ago
OK, I take it back about the drill rocket. I do want to note, however, that low 
level AIs are a bit cowardish about the drill rocket. They rather skip the turn 
than to shoot the rocket. I don’t know if this is intentional.

Original comment by almikes@aol.com on 20 Dec 2014 at 4:52