New skirmish AI: DyDo-AI rel 0.9
New skirmish AI: DyDo-AI rel 0.9
This is not the latest version of DyDo-AI. For the latest version, see: viewtopic.php?f=10&t=4107
----
Well after few weeks of work I am quite satisfied with this new AI for skirmish games I have developed.
I am still working on the AI, this means some update will follow.
The AI is called: DyDo-AI
If you want to know more about this AI, have a look at the webpage http://dydoai.wordpress.com/
This AI is released under licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. Based on a work at dydoai.wordpress.com. (see also http://creativecommons.org/licenses/by-nc-sa/3.0/).
This AI has a known BUG, I hope some WZ developer has time to have a look at it. The BUG is not causing any crash and DyDo-AI performace seems not to be affected by it.
For changelogs see DyDo website, for BUG reporting you can use this post or DyDo website.
DyDo is doindg well against both the standard AI and BecomePrey 2.92 (see this webpage)
Something about planning this AI...
I started planning this AI by looking an BecomePrey AI script and trying to improve it but soon I realized that there are too many things to be improved and that would have been better to work on a new AI.
I think I have reached a good result, as of today DyDO-AI is quite well balanced mainly for T1 games.
I still have many ideas on how to improved the AI and I am going to realize them as soon as I can.
The main objective is to create an AI with multiple personalities (attack oriented AI, turtle AI, research oriented AI, Cyborg AI…). The main core of the AI will be the same but the behaviours should be different.
In DyDo-AI script there is not much random actons/decisons like in many other AIs: harvesting, research, templates selection, defensive and offensive actions, just to mention few features, are not chosen randomly. There is obviusly some radom decision but it is really limited.
Of course, DyDo-AI is not cheating at all (...and as of today is the only AI not cheating...yes, BP cheats a bit on the event managePower(managePowerTr) )!
Enjoy it and let know your thoughts!!!
----
Well after few weeks of work I am quite satisfied with this new AI for skirmish games I have developed.
I am still working on the AI, this means some update will follow.
The AI is called: DyDo-AI
If you want to know more about this AI, have a look at the webpage http://dydoai.wordpress.com/
This AI is released under licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. Based on a work at dydoai.wordpress.com. (see also http://creativecommons.org/licenses/by-nc-sa/3.0/).
This AI has a known BUG, I hope some WZ developer has time to have a look at it. The BUG is not causing any crash and DyDo-AI performace seems not to be affected by it.
For changelogs see DyDo website, for BUG reporting you can use this post or DyDo website.
DyDo is doindg well against both the standard AI and BecomePrey 2.92 (see this webpage)
Something about planning this AI...
I started planning this AI by looking an BecomePrey AI script and trying to improve it but soon I realized that there are too many things to be improved and that would have been better to work on a new AI.
I think I have reached a good result, as of today DyDO-AI is quite well balanced mainly for T1 games.
I still have many ideas on how to improved the AI and I am going to realize them as soon as I can.
The main objective is to create an AI with multiple personalities (attack oriented AI, turtle AI, research oriented AI, Cyborg AI…). The main core of the AI will be the same but the behaviours should be different.
In DyDo-AI script there is not much random actons/decisons like in many other AIs: harvesting, research, templates selection, defensive and offensive actions, just to mention few features, are not chosen randomly. There is obviusly some radom decision but it is really limited.
Of course, DyDo-AI is not cheating at all (...and as of today is the only AI not cheating...yes, BP cheats a bit on the event managePower(managePowerTr) )!
Enjoy it and let know your thoughts!!!
- Attachments
-
- dydo-ai.wz
- (462.73 KiB) Downloaded 449 times
Last edited by Zarel on 15 Dec 2009, 16:40, edited 7 times in total.
Reason: direct readers to new
Reason: direct readers to new
Re: New skirmish AI: DyDo-AI rel 0.9
Great work!
Do you have a list of features somewhere? I remember that in the previous thread on forum you had something like that.
Do you have a list of features somewhere? I remember that in the previous thread on forum you had something like that.
Re: New skirmish AI: DyDo-AI rel 0.9
I am going to put as much info as possible on the DyDo-AI website in the next few days.guciomir wrote:Great work!
Do you have a list of features somewhere? I remember that in the previous thread on forum you had something like that.
One important thing, the mean feature of DyDo-AI is that it is thought to play with multiple personalities. I have set this as milestone for the version 2. Nowadays DyDo-AI comes with 4 personalities (General1-2-3-4), they different to each other as they follows different research paths (only), the main objective is to have the AI to beheaviour differently too and as I said this feature will be implemented on version 2. The personalities are chosen randomly at the start of each game but you can force them by changing a parameter in the VLO files (see how).
- lav_coyote25
- Professional

- Posts: 3434
- Joined: 08 Aug 2006, 23:18
Re: New skirmish AI: DyDo-AI rel 0.9
great site! xD
Re: New skirmish AI: DyDo-AI rel 0.9
I start a game and sensor towers flash all over the screen. I suppose it's to give the AI a map preview, but it makes me laugh like crazy! xD
Re: New skirmish AI: DyDo-AI rel 0.9
interesting AI, and I'm liking it a lot... but I have some questions for you:
where does the AI takes the limits from? since I've made a high limits mod, you know allowing 25 power station, 25 research facilities and such, and normally the AI runs a piece of script that locks the base limits not only for the AI but also for the player... and I know its necessary
would it be able to run this part of the script by reading the values on the limits.txt instead of hardcoding them???
where does the AI takes the limits from? since I've made a high limits mod, you know allowing 25 power station, 25 research facilities and such, and normally the AI runs a piece of script that locks the base limits not only for the AI but also for the player... and I know its necessary
would it be able to run this part of the script by reading the values on the limits.txt instead of hardcoding them???
Re: New skirmish AI: DyDo-AI rel 0.9
..happy to read you ejoy it!zoid wrote:it makes me laugh like crazy! xD
Re: New skirmish AI: DyDo-AI rel 0.9
I have planned the AI to build up max 3 research Labs, factories, VTOL factories and cyborg factories.winsrp wrote:where does the AI takes the limits from?
One of the most difficult thing I have found in building the AI is the "power management", you cannot always let all structures working at the same time and think also to build defences and do some struct upgrade.
The reson for this is that after 5-6 minutes you get very low power (floating always between 0-500) for the rest of the game. With this low power you cannot build defences, upgrade structures, build tanks, build cyborgs, built VTOl and do some research at the same time if you have all structures working. What I am trying to say is that for the most of the game we have max 1-2 factories,cyborg factories and research labs working.
Therefore having more then 3-4 of such buildings is a wasting of power and space (in some maps you have few space where to build the base).
The AI power management let all 3 of such structs working only if the power is > 1000.
the limits are set in the VLO files, you can change them by increasing the value of :winsrp wrote:would it be able to run this part of the script by reading the values on the limits.txt instead of hardcoding them
structsLimits[][], but I would not do that for the reasons explained above.
Re: New skirmish AI: DyDo-AI rel 0.9
Just to update the DyDo AI website address: http://www.obooma.net/dydo/
On the new website you can also downloadthe current DyDo AI version I am working on but I will still use also this forum to post new "stable" releases.
As I have some time available I am going to keep DyDo website updated with new posts like:
Ciao!
On the new website you can also downloadthe current DyDo AI version I am working on but I will still use also this forum to post new "stable" releases.
As I have some time available I am going to keep DyDo website updated with new posts like:
- Possibly add some mod where you can play with multiple AI
Ciao!
Re: New skirmish AI: DyDo-AI rel 0.9
I have tried this AI together with a friend for a bit, and it's actually worse in late game then becomeprey. In the early game it's also rather weak too.
What it does correctly though, is that it actually defends its expansions (well, we encountered missile towers when we attacked).
It would be a lot tougher if it does a few things:
- attack with enough force to break through the player's line of bunkers (a strong enough force to compensate for an army protecting the line).
- build and maintain an army pure for defensive purposes. This is to prevent it from being overrun.
- Once air becomes available, it should start building air defences in all its conquered areas, not just its base.
- As the game progresses its army should become stronger and stronger, however that doesn't mean its units should be more and more expensive. Tougher/stronger units are more expensive and take longer to build. So, it should compromise. That being said it should also stop using early designs in favor of modern ones (heavy MGs aren't as effective as twin rotary MGs, for example).
- Let it use air to destroy attacking tanks, and aa-tanks to destroy air.
Another option might be to let it build up a strong enough attack to overwhelm a position it deems important enough. It should also keep in mind that the enemy might have an army over there, so it should compensate for that.
What it does correctly though, is that it actually defends its expansions (well, we encountered missile towers when we attacked).
It would be a lot tougher if it does a few things:
- attack with enough force to break through the player's line of bunkers (a strong enough force to compensate for an army protecting the line).
- build and maintain an army pure for defensive purposes. This is to prevent it from being overrun.
- Once air becomes available, it should start building air defences in all its conquered areas, not just its base.
- As the game progresses its army should become stronger and stronger, however that doesn't mean its units should be more and more expensive. Tougher/stronger units are more expensive and take longer to build. So, it should compromise. That being said it should also stop using early designs in favor of modern ones (heavy MGs aren't as effective as twin rotary MGs, for example).
- Let it use air to destroy attacking tanks, and aa-tanks to destroy air.
Another option might be to let it build up a strong enough attack to overwhelm a position it deems important enough. It should also keep in mind that the enemy might have an army over there, so it should compensate for that.
Re: New skirmish AI: DyDo-AI rel 0.9
I think you should try newest Dydo 1.1
Re: New skirmish AI: DyDo-AI rel 0.9
My comment was about version 1.1
Re: New skirmish AI: DyDo-AI rel 0.9
xahodo, sorry for the late response o this and thanks for the advices for the future please use THIS post.
Before commenting them please take into considerations the following:
Dydo is currently optimized for T1 games, it has 4 different personalities and in DyDo 1.1b there is a quite difference between them even if the "main AI core" is the same. Therefore depending on the personalities and on the map and T level DyDo beheaves in various ways.
DyDo attacks when a min numb of units (7-8) + random value (0-10) + "min units to keep for defend" has been reached in one of the two teams.
There is also another random option where the units in the two teams are put together, and another random option (new since 1.2, the new build I am working on) which is activated after around one hour when only one enemy is live (like 1vs1 games), this new feature ("final attack") aims to collect a big number of units before attacking. The final attack is activated only if certain conditions are reached.
I am going to increase this for General 3 (Turtle AI) and possibly add an additional random number of units on the top of 4 ( like 4 + random(0,1,2,3) )
DyDo builds up a mix of heavy, medium and light bodies templates also using also some random probability (we want DyDo not to act always in the same way, don`t we?)...I give you an example, DyDo builds a template with the following rules:
Best Template is Mantis, probability to build a template is:
20% Mantis
15% Phyton
40% Cobra or Scorpion
25% Viper
Best Template is Panther, probability to build a template is:
20% Panther
15% Phyton
40% Cobra or Scorpion
25% Leopard
and one of the best template with that body is then randomly built. On this way DyDo does not spend too much power building only heavy bodies. Obviously this could be rebalanced.
Before commenting them please take into considerations the following:
Dydo is currently optimized for T1 games, it has 4 different personalities and in DyDo 1.1b there is a quite difference between them even if the "main AI core" is the same. Therefore depending on the personalities and on the map and T level DyDo beheaves in various ways.
DyDo has a two team management (2 defending and two attacking teams).xahodo wrote: - attack with enough force to break through the player's line of bunkers (a strong enough force to compensate for an army protecting the line).
DyDo attacks when a min numb of units (7-8) + random value (0-10) + "min units to keep for defend" has been reached in one of the two teams.
There is also another random option where the units in the two teams are put together, and another random option (new since 1.2, the new build I am working on) which is activated after around one hour when only one enemy is live (like 1vs1 games), this new feature ("final attack") aims to collect a big number of units before attacking. The final attack is activated only if certain conditions are reached.
This is already implemented, DyDo keeps at least 5 units on each of the two team just for defences purposes.xahodo wrote: - build and maintain an army pure for defensive purposes. This is to prevent it from being overrun.
I am going to increase this for General 3 (Turtle AI) and possibly add an additional random number of units on the top of 4 ( like 4 + random(0,1,2,3) )
You cannot spend all the power just to build AA, therefore DyDo builds them where they are required for sure. But I can change this in General 3 (turtle AI) and let it builds more AA.xahodo wrote: - Once air becomes available, it should start building air defences in all its conquered areas, not just its base.
This already implemented, maybe requires some more balancement. The way the templates are chosen is one of the most complicated part of the script as I did not like to use the same method as BP or the standard AI where only the best 3-4 templates are chosen (-> therefore always the heavy bodies).xahodo wrote: - As the game progresses its army should become stronger and stronger, however that doesn't mean its units should be more and more expensive. Tougher/stronger units are more expensive and take longer to build. So, it should compromise. That being said it should also stop using early designs in favor of modern ones (heavy MGs aren't as effective as twin rotary MGs, for example).
DyDo builds up a mix of heavy, medium and light bodies templates also using also some random probability (we want DyDo not to act always in the same way, don`t we?)...I give you an example, DyDo builds a template with the following rules:
Best Template is Mantis, probability to build a template is:
20% Mantis
15% Phyton
40% Cobra or Scorpion
25% Viper
Best Template is Panther, probability to build a template is:
20% Panther
15% Phyton
40% Cobra or Scorpion
25% Leopard
and one of the best template with that body is then randomly built. On this way DyDo does not spend too much power building only heavy bodies. Obviously this could be rebalanced.
This is something I am going to implement for sure, a better VTOL target selection and the building of AA-tanks (actually they are not used by DyDo).xahodo wrote: - Let it use air to destroy attacking tanks, and aa-tanks to destroy air.
Re: New skirmish AI: DyDo-AI rel 0.9
DylanDog wrote:Before commenting them please take into considerations the following:
Dydo is currently optimized for T1 games, it has 4 different personalities and in DyDo 1.1b there is a quite difference between them even if the "main AI core" is the same. Therefore depending on the personalities and on the map and T level DyDo beheaves in various ways.
I don't understand why everyone does this. Aivolution was optimized for T1, too. Troman got around it by balancing T2/T3 weapons to be much weaker than T1 weapons.
As far as I know, it's not hard to make an AI work in T2/T3. You just use T2/T3 weapons, and T2/T3 bodies, instead of T1 weapons and T1 bodies. You also build an Uplink Center, and maybe a LasSat, eventually. Heck, most T1 weapons have T2/T3 equivalents; just use those.
So what's the problem? :/
Re: New skirmish AI: DyDo-AI rel 0.9
The problem is balancing...another problem is that a thing could be well balanced for me but not for you (see BP example below).Zarel wrote:So what's the problem? :/
When I say optimized I mean it is well balanced, this means that:
-template choice
-research paths
-building of defences
-power management
...and so on are well balanced for T1 technologies and not optimized yet for T2 and T3.
This does not mean that playing TODAY on T2 and T3 DyDo is really bad, it is just that I have had no time to balance them, therefore I do not know if the decisions DyDo takes on T2 and T3 games are the best ones it could take.
Another example? BP has standard behaviours regardless of the T level, it always takes the same decisions regardless of the T level. Is it well balanced? yes, from his developer point of view.
Is DyDo well balanced on T2 & T3? not yet, from my point of view...when I started optimizing AI decisions for T1 level I made T2 and T3 less well balanced even if I have not touched them! you see what I mean? it is just a matter of "point of view".
A practical example: in DyDo on T1 level the mostly built droids are flamers, the researches pursued in the very beginning are made to make flamers strong. This is AI balancing/optimization.
Clear now?


