DyDo skirmish AI: ver 2.1.1 (21 Apr 2010)

Did you create a mod, map, music, or a tool? Present them here and earn feedback!
Note: addon requests do not belong here.
Note, everything uploaded to this forum, MUST have a license!
stiv
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 876
Joined: 18 Jul 2008, 04:41
Location: 45N 86W

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by stiv »

Patch for 2.3 svn using dydo-ai 2.0.6 is attached to ticket
http://developer.wz2100.net/ticket/1634

Thanks, DylanDog!
Mats
Trained
Trained
Posts: 137
Joined: 31 Jan 2010, 16:22
Location: Various

Re: DyDo skirmish AI: ver 2.0.3 (12 Feb 2010)

Post by Mats »

DylanDog wrote:There is also some more check in the AI code which forces attacks every 5-9 minutes, but this is quite complicated to explain. This further checks just put together the droids of both teams to increase the probability to reach the droidsRequiredToAttack
Could that be changed to 5-14 or something? This would be what is stopping massive attacks right? 9 mins isn't much time to build up a big army, but 50% more maximum time to 14 mins would be good. Is it choosing randomly 5,6,7,8 or 9 mins, or is it using something else? Three other things that could make the AI stronger would be:

Using the lassat to hit a group of tanks/droids just before attacking that base.

If DyDo kills more than x base structures in an attack, to attack that person for x minutes forgetting the minattackgroup = 7. (If DyDo has killed a few base structures in a base it is probably doing pretty well in the attack, for 3-4 minutes afterwards it could just send all its attacking units at that base to finish it off).

If DyDo attacks a base and doesn't destroy any base structures/very few tanks or hardpoints, then it should change plan. Attack derricks or save up and massive attack with VTOL or ground only. Maybe change minattack to 15 or something because DyDo is making no progress in this case.
After months of developing I got to the conclusion that it is almost impossible to develop an AI which can play well, without cheats, in 2, 4 and 8 players game. I think that DyDo is ok in 4-8 players game, as you can use alliances to balance the game.
DyDo is good fun in 4-8 players. Quite often you come under heavy pressure from multiple attacks! You are probably right it's nearly impossible to make AI match up to a human player, but you've made good progress from the other AI!
This should not be the case, if it happens too often than I have to review the AI code. I introduced already a very simple algorithm to make DyDo attacking from different directions...are you sure your base could be attacked from different sides? on which MAP were you playing and in which position? also was is a 2,4 or 8 player game?
On Rolling Hills, at the bottom corner, it attacks through just 2 out of 3 possible places.


rock gap rock rock gap rock rock rock rock rock rock rock rock rock
^ rock
no attacks come
from here gap

rock
rock

On Mischief I was attacked only on the top right and right side of my base for the entire game, not one attack came from left or bottom. There are many examples like this... I can't find the map (it's somewhere in the map pack) that had the situation I described before, but I'll give you the name when I find it again.
Anyway I agree this part can be improved, I will see what I can do.
Sweet!

-Your work is much much appreciated!
Full of ideas - Most are probably useless. Feel free to ignore them :)
User avatar
Berg
Regular
Regular
Posts: 2204
Joined: 02 Sep 2007, 23:25
Location: Australia

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by Berg »

With the present AI it seems to be a set design EG:-build #research structures and #factories etc.
Would it be posible for the AI to adapt to oil avaibility like on low oil maps the wheel for example 6 oil wells can be built if your quick enough and other are fought over.
On this map only build 2 factories
Adjusting units built etc to match the map.
Then on high oil maps have it max out every structure so the AI can choose at the start the numbers to make.
I do not know how to program a AI this is just suggestions.
AT START. map has 24 oil with 4 bases =low oil define build number =3
AT START. map has 100 oil with 4 bases =high oil define build number =max or 5
NOTE:This is just an idea.
I know you can have different personality generals that is where this idea started from.
Have different modes for different maps.
Regards Berg
User avatar
DylanDog
Code contributor
Code contributor
Posts: 347
Joined: 08 Apr 2009, 15:15
Location: Germany

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by DylanDog »

Berg wrote:With the present AI it seems to be a set design EG:-build #research structures and #factories etc.
Would it be posible for the AI to adapt to oil avaibility like on low oil maps
Regards Berg
This feature is already implemented in DyDo,look at this setting which is the minimum structs to be built for each personality:

Code: Select all

	// General 1
  structsLimits[0][0]			INT		3
	structsLimits[0][1]			INT		4
	structsLimits[0][2]			INT		3 
	structsLimits[0][3]			INT		3 

	// General 2  VTOL
	structsLimits[1][0]			INT		3
	structsLimits[1][1]			INT		3
	structsLimits[1][2]			INT		3 
	structsLimits[1][3]			INT		3 

	// General 3  Turtle
	structsLimits[2][0]			INT		2
	structsLimits[2][1]			INT		5
	structsLimits[2][2]			INT		2 
	structsLimits[2][3]			INT		2 

	// General 4  Cyborg
	structsLimits[3][0]			INT		1
	structsLimits[3][1]			INT		4
	structsLimits[3][2]			INT		5 
	structsLimits[3][3]			INT		1   

where the second [] identifies the type of building :
[0] = Factory
[0] = Researches
[0] = Cyborg factory
[0] = VTOL factory

then such quantities are increased by one if derricks/player >= 7 and by 2 if derricks/player >= 11. I could add another rule which decreases the quantities if number of derricks < 4;

derricks/player: all derricks+oil resources are taken into account.
My Warzone 2100 mods:
Download DyDo-AI for Warzone skirmish/multiplayer games.
Download A2C-HM (Alpha 2 Campaign - Hard Mode).
Download A3C-HM (Alpha 3 Campaign - Hard Mode).
zydonk
Trained
Trained
Posts: 453
Joined: 12 Jun 2008, 18:31
Location: Dublin, Ireland

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by zydonk »

Have not been able to play any version of DyDo since v1.2.7.

Herewith the contents of the stderr file:
stderr.txt
You do not have the required permissions to view the files attached to this post.
User avatar
DylanDog
Code contributor
Code contributor
Posts: 347
Joined: 08 Apr 2009, 15:15
Location: Germany

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by DylanDog »

zydonk wrote:Have not been able to play any version of DyDo since v1.2.7.

Herewith the contents of the stderr file:
stderr.txt

The stderr.txt file states you play with DyDo 2.0.6 not 2.0.7 also please provide some more info, with which version of warzone are you playing?

You should play with 2.0.7 on 2.3beta11.
My Warzone 2100 mods:
Download DyDo-AI for Warzone skirmish/multiplayer games.
Download A2C-HM (Alpha 2 Campaign - Hard Mode).
Download A3C-HM (Alpha 3 Campaign - Hard Mode).
zydonk
Trained
Trained
Posts: 453
Joined: 12 Jun 2008, 18:31
Location: Dublin, Ireland

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by zydonk »

So that's the reason... Thanks anyway.
Mats
Trained
Trained
Posts: 137
Joined: 31 Jan 2010, 16:22
Location: Various

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by Mats »

Been playing with DyDo as an ally. Some stuff that might be nice:

-Be able to ask how much power DyDo ally has.
-For DyDo to message allies at the start of game and say which DyDo personality is running. "Hello, player, DyDo turtle ai here." or something.
-For DyDo to acknowledge things - Give power to DyDo "Thanks". Give units to DyDo "Thanks for the units."
For DyDo to request power if it is low on power.
To be able to ask DyDo to target player colour. "DyDo target orange." - DyDo just attacks orange and no-one else until you cancel order "DyDo stop attacking orange" or until orange is destroyed. I know you can set a point for DyDo to attack, but you have to keep on doing this all the time to make DyDo attack one specific player.

It would also be really cool in the menu to pick which ai is playing. For example in 4 player game FFA:

player 0 - Human
player 1 - DyDo turtle ai
player 2 - DyDo cyborg ai
player 3 - DyDo cyborg ai

Very much like your ai DylanDog! Thanks for making it :)
Full of ideas - Most are probably useless. Feel free to ignore them :)
User avatar
DylanDog
Code contributor
Code contributor
Posts: 347
Joined: 08 Apr 2009, 15:15
Location: Germany

Re: DyDo skirmish AI: ver 2.0.6 (25 Feb 2010)

Post by DylanDog »

Mats wrote:Been playing with DyDo as an ally. Some stuff that might be nice...
Some stuff is already implemented since a while: have a look at DyDo website. For the missing stuff I' ll see what I can do.
My Warzone 2100 mods:
Download DyDo-AI for Warzone skirmish/multiplayer games.
Download A2C-HM (Alpha 2 Campaign - Hard Mode).
Download A3C-HM (Alpha 3 Campaign - Hard Mode).
Mats
Trained
Trained
Posts: 137
Joined: 31 Jan 2010, 16:22
Location: Various

Re: DyDo skirmish AI: ver 2.0.8 (10 Mar 2010)

Post by Mats »

Some weaknesses:

Light cannon bunker is a waste of power and DyDo shouldn't research this at all.

DyDo VTOL AI is very weak and very easy to beat. It needs to say to itself (attacks unsuccessful, need to attack with more units). You could make minimum attack number of VTOLs an int that increases if attacks fail? It also attack just from one direction so you can just put tornado AA sites there and you no longer have any troubles from DyDo VTOL. The best way to attack with VTOLs would be to put them into several attack groups. Have each group target a different base structure or defence. Right now, DyDo will send 10 VTOLs to destroy one derrick or factory when 10 VTOLs could split into 3 groups (3,3,4) and destroy 2 derricks and one factory in one run.

I think stronger vehicle bodies should be researched a bit earlier. Cobras a bit earlier.

DyDo could use long range artillary defensively just by building some of them in its base (anywhere in base) and then building sensor towers around the base and one any derricks.

Took a look around DyDo website, it's very informative!

Edit: DyDo always crashes when I try to design multi-turret dragon

DyDo turtle AI builds lots of ground defences, I've seen it build 10+ fortresses to protect its base, but, it builds hardly any air defences. It should be putting up stormbringer, SAMs and tornados as well as all these fortresses. It seems to wait until VTOLs attack to do any air defences, by then, it's often too late.
Full of ideas - Most are probably useless. Feel free to ignore them :)
User avatar
DylanDog
Code contributor
Code contributor
Posts: 347
Joined: 08 Apr 2009, 15:15
Location: Germany

Re: DyDo skirmish AI: ver 2.0.8 (10 Mar 2010)

Post by DylanDog »

Mats wrote:Some weaknesses:

... often too late.
Light Cannon bunker is not part of the research plan, if this has been researched is because when Dydo cannot perform a planned research, then it does a random one.

VTOL usage (not only in VTOl AI) needs improvment, this is not easy. I agree with all (and I mean that really!!) your statements. Another thing I have thought is to add an "Anti AA Radar" to the VTOL script to choose the best path to attack a target, it will not be easy to implement.

Cobra is already the fifth item to be researches (out of 80/90...)...but not in VTOL AI!

DyDo build already artillery but not sensors (onyl CB sensors)...I can easily add a script which builds sensors

Thanks for advising on the missing AA defences in turtle AI, you are right, I`ll have a look at the script.

Multi-turret: Do you make design for the AI using the cheats? you shouldn`t Dydo do not care about the design you make. The templates to be built are fixed

Code: Select all

  //1-Viper
	tmpl0[62]	TEMPLATE	"ViperMG01Wheels"//
  tmpl0[61]	TEMPLATE	"ViperFlameHalfTracks"  //Anti personnel
	tmpl0[60]	TEMPLATE	"ViperMG02Halftrack"    //Anti personnel
	tmpl0[59]	TEMPLATE	"ViperLtCannonHTracks"	//all-rounder 
	tmpl0[58]	TEMPLATE	"ViperPODHalfTracks"		//anti-tank
	tmpl0[57]	TEMPLATE	"ViperMRLHalfTracks"		//anti-tank

  //1-Cobra
  tmpl0[56]	TEMPLATE	"CobraPODHTracks"		//anti-tank
  tmpl0[55]	TEMPLATE	"CobraMRLHalftrack"//anti-tank
	tmpl0[54]	TEMPLATE	"CobraLtA-Thalftrack"//anti-tank
  tmpl0[53]	TEMPLATE	"CobraHMGHalfTrack"		//Anti personnel
  tmpl0[52]	TEMPLATE	"CobraMedCnHTrks"    //all-rounder 
  tmpl0[51]	TEMPLATE	"A-Cobra-Hover-MC"	  //all-rounder 
	tmpl0[50]	TEMPLATE	"CobraInfernoHTracks"//Anti personnel
  tmpl0[49]	TEMPLATE	"CobraInfernoHover" //Anti personnel
	

  //1-Phyton
  tmpl0[48]	TEMPLATE	"SK-Python-Hover-Lancer"  //anti-tank 
	tmpl0[47]	TEMPLATE	"PythonTKTracks"			    //anti-tank 
  tmpl0[46]	TEMPLATE	"PythonHoverInferno"      //Anti personnel
  tmpl0[45]	TEMPLATE	"PhytonHoverAssGun"       //Anti personnel
  tmpl0[44]	TEMPLATE	"PhytonHTrackAssGun"      //Anti personnel
	tmpl0[43]	TEMPLATE	"PythonMedCanTracks"	    //all-rounder 
	tmpl0[42]	TEMPLATE	"SK-Python-Hover-Mcannon" //all-rounder 
  tmpl0[41]	TEMPLATE	"Sk-PythonHvCanTrack"     //all-rounder 
	tmpl0[40]	TEMPLATE	"SK-Python-Hover-Hcannon" //all-rounder 

  //=================================================================
  //2-Bug
 
  //2-Scorpion {R-Vehicle-Body08}
  tmpl0[39]	TEMPLATE	"SK-Scorp-Hover-Lancer"	  //anti-tank  
  tmpl0[38]	TEMPLATE	"ScorpHTrackHMG"	        //Anti personnel     
  tmpl0[37]	TEMPLATE	"SK-Scorp-Hover-Mcannon"	//all-rounder

	//2-Mantis {R-Vehicle-Body12}
	tmpl0[36]	TEMPLATE	"MantisHoverAC"           //all-rounder
	tmpl0[35]	TEMPLATE	"SK-Mantis-Hover-Hcannon" //all-rounder
	tmpl0[34]	TEMPLATE	"SK-Mantis-Hover-HVC"     //all-rounder

  //=================================================================
	//3-Leopard {R-Vehicle-Body02}
  tmpl0[33]	TEMPLATE	"LeopardHoverPulseLas" //Anti personnel
  tmpl0[32]	TEMPLATE	"SK-Leopard-HTrk-ASGun" //Anti personnel  
  tmpl0[31]	TEMPLATE	"SK-Leopard-Hover-Needle" //all-rounder  
  tmpl0[30]	TEMPLATE	"SK-Leopard-Htrk-Needle" //all-rounder  
	
	//3-Panther {R-Vehicle-Body06}
  tmpl0[29]	TEMPLATE	"SK-Panther-Hover-TK"  //anti-tank 
  tmpl0[28]	TEMPLATE	"SK-Panther-Track-TK"  //anti-tank 
  tmpl0[27]	TEMPLATE	"PantherHoverPulseLas"  //Anti personnel
  tmpl0[26]	TEMPLATE	"SK-Panther-Htrk-ASGun"  //Anti personnel 
  tmpl0[25]	TEMPLATE	"SK-Panther-Hover-HVC"  //all-rounder 
  tmpl0[24]	TEMPLATE	"SK-Panther-Track-HVC"  //all-rounder
	
  //3-Tiger {R-Vehicle-Body09}
	tmpl0[23]	TEMPLATE	"SK-Tiger-Hover-TK" //anti-tank 
	tmpl0[22]	TEMPLATE	"SK-Tiger-Track-TK" //anti-tank 
	tmpl0[21]	TEMPLATE	"TigerHoverPulseLas" // Anti personnel
	tmpl0[20]	TEMPLATE	"SK-Tiger-Track-ASCannon" // Anti personnel
	tmpl0[19]	TEMPLATE	"TigerHoverRailGun" // all-rounder
  tmpl0[18]	TEMPLATE	"SK-Tiger-Track-Hcannon" //all-rounder
	//tmpl0[14]	TEMPLATE	"TigerPulseTracks"		//OK	
	//tmpl0[13]	TEMPLATE	"TigerHvLaserTracks"		//OK
	
  //=================================================================
  //4-Retaliation {R-Vehicle-Body03}

  //4-Retribution {R-Vehicle-Body07}
  tmpl0[17]	TEMPLATE	"SK-Retre-Hover-Scourge" //anti-tank
	tmpl0[16]	TEMPLATE	"SK-Retre-Track-Scourge"  //anti-tank
	tmpl0[15]	TEMPLATE	"RetreHoverFlashLight"  //Anti personnel - replace with PulseLAS??
	tmpl0[14]	TEMPLATE	"SK-Retre-Track-PulseLsr"  //Anti personnel
	tmpl0[13]	TEMPLATE	"SK-Retre-Hover-RailGun"  //all-rounder
	tmpl0[12]	TEMPLATE	"SK-Retre-Track-RailGun"  //all-rounder
	
  //4-R-Wpn-Cannon-Damage07 
  tmpl0[11]	TEMPLATE	"SK-Veng-Hover-Scourge"   //anti-tank
	tmpl0[10]	TEMPLATE	"SK-Veng-Track-Scourge"  //anti-tank
	tmpl0[9]	TEMPLATE	"SK-Veng-Hover-PulseLsr"  //Anti personnel
	tmpl0[8]	TEMPLATE	"SK-Veng-Track-HvyLaser"  //Anti personnel
	tmpl0[7]	TEMPLATE	"SK-Veng-Hover-Gauss"  //all-rounder
	tmpl0[6]	TEMPLATE	"SK-Veng-Track-Gauss"  //all-rounder

  //=================================================================
	//5-Wyvern {R-Vehicle-Body13}
	tmpl0[5]	TEMPLATE	"WyvernScourgeTracks" //anti-tank
	tmpl0[4]	TEMPLATE	"WyvernScourgeTracks" //anti-tank
	tmpl0[3]	TEMPLATE	"WyvernPulseTracks" //Anti personnel
	tmpl0[2]	TEMPLATE	"WyvernHvLaserTracks" //Anti personnel
	tmpl0[1]	TEMPLATE	"WyvernGaussTracks" // all-rounder 
	tmpl0[0]	TEMPLATE	"WyvernPlasmaCTracks" //all-rounder 
My Warzone 2100 mods:
Download DyDo-AI for Warzone skirmish/multiplayer games.
Download A2C-HM (Alpha 2 Campaign - Hard Mode).
Download A3C-HM (Alpha 3 Campaign - Hard Mode).
Mats
Trained
Trained
Posts: 137
Joined: 31 Jan 2010, 16:22
Location: Various

Re: DyDo skirmish AI: ver 2.0.8 (10 Mar 2010)

Post by Mats »

Multi-turret: Do you make design for the AI using the cheats? you shouldn`t Dydo do not care about the design you make. The templates to be built are fixed
I haven't cheated at all against DyDo AI. All the bugs/crashes everything is all from normal play. On a few maps I try to make a multi-turret and always it crashes the game to desktop.
Full of ideas - Most are probably useless. Feel free to ignore them :)
User avatar
DylanDog
Code contributor
Code contributor
Posts: 347
Joined: 08 Apr 2009, 15:15
Location: Germany

Re: DyDo skirmish AI: ver 2.0.8 (10 Mar 2010)

Post by DylanDog »

Mats wrote:
Multi-turret: Do you make design for the AI using the cheats? you shouldn`t Dydo do not care about the design you make. The templates to be built are fixed
I haven't cheated at all against DyDo AI. All the bugs/crashes everything is all from normal play. On a few maps I try to make a multi-turret and always it crashes the game to desktop.
ok, I understand now, you created the template for you not for DyDo. Well if the game crashes when you create a template then it should not be an issue related to the AI script as the AI is turned off for the player in the position taken by the human player.
My Warzone 2100 mods:
Download DyDo-AI for Warzone skirmish/multiplayer games.
Download A2C-HM (Alpha 2 Campaign - Hard Mode).
Download A3C-HM (Alpha 3 Campaign - Hard Mode).
User avatar
Black Project
Regular
Regular
Posts: 751
Joined: 04 Apr 2008, 20:53

Re: DyDo skirmish AI: ver 2.0.8 (10 Mar 2010)

Post by Black Project »

DyDo v2.0.8 doesn't prioritize the modules on all upgradable structures, they only apply the module on the Research Facility, leaving the Power Generator and the Factories with no modules (They research the modules, of course) :(

Even after 45 of gameplay, they only upgrade Research Center, leaving any human player to take advantage on power boost and manufacturing speed :gonk:

Note: I was playing with Warzone 2120 Mod. Gonna play without the mod to see if it is only happens on it :ninja:

EDIT: It happens in my mod :stressed: without the mod, the AI apply the modules normally without problems :scream: Now i'm in a serious trouble

You should make the AI prioritize the modules in the next version

But the rest is OK. Keep up the great work :)

Regards BP
Last edited by Black Project on 14 Mar 2010, 07:28, edited 2 times in total.
User avatar
Buginator
Professional
Professional
Posts: 3285
Joined: 04 Nov 2007, 02:20

Re: DyDo skirmish AI: ver 2.0.8 (10 Mar 2010)

Post by Buginator »

Just a note people, please report all bugs to trac concerning DyDo.
http://developer.wz2100.net/newticket

It is difficult for us to know what is going on with this mod, since lots of the dev staff don't check forums often.
and it ends here.