You must be logged in to post messages.
Please login or register

Modding and Scripting
Moderated by Yeebaagooon, TAG

Hop to:    
Welcome! You are not logged in. Please Login or Register.11 replies
Age of Mythology Heaven » Forums » Modding and Scripting » Discussion: What do you miss/dislike in the AI interface?
Bottom
Topic Subject:Discussion: What do you miss/dislike in the AI interface?
Elchtest
Mortal
posted 09 April 2003 03:33 PM EDT (US)         
Hello,

i'm going to give a lecture at university about the AI interface of AoM. i already made some thoughts of it, but the real good players and coders are out here, in that forum.
so i would like to hear from you, what you miss or dislike in the interface. what abilities do you have as player and can't integrate them into the AI?
do you know any "bugs" of the AI?

if you got something please explain it explicitly, so non-experts (like me) still can get it

thanx a lot!

AuthorReplies:
Zycat
Mortal
posted 10 April 2003 07:40 PM EDT (US)     1 / 11       
A.I interface at AoM...?

What do you mean? the A.I's XML scripting language? It's great, with some flaws like :
- Not able to build on non-RMS-generated settlements.
- Not able to explicitly command the units to garrison and ungarrison.

Overall, pretty good compared to, say, Warcraft III's A.I scripting (which has NO documents at all...) or AoK's A.I scripting.


ESO : Heero_Yuy / Tonto_Zycat
Matei
Mortal
posted 10 April 2003 08:27 PM EDT (US)     2 / 11       
Wow, a lecture on AoM AI? Pretty cool. Is this for a course or just a "recreational" thing?


I haven't tried any AI scripting myself but I have used RM scripting (which is the same language) and trigger scripting (which is also the same language and can use some AI features). From a programming point of view, the main thing I miss in the AI language is object-oriented features. An RTS game is a perfect place to apply an object-oriented philosophy because there are many, clear classes of objects that interact with each other and may be extended into various sub-classes. This is less of an issue in RMS, but the AI is one of those places where being able to access the game in a structured way would help.


As for what an AI can do that a human player can't and vice versa, here are some points:


An AI player is better than a human in the areas of:


  • Keeping an "eye" on all of its units at the same time (so villagers don't ever go idle, or so it can attack 3 ways at once, or so each soldier targets something it counters, etc)
  • Mathematical calculations of all sorts: which unit in a 1v1 battle will win, how many villagers should be put on a certain resource to get 500 of it at a specific time, how far a group of units will travel in a certain time, etc.
  • Full knowledge of the game: exact stats and bonuses for each unit, technology costs and exact effects, major god bonses, as well as "instant" knowledge of opponent upgrades instead of having to quickly click units and press F1
  • Very fast reaction times
  • Following scripted build orders/strategies (for example, doing a "perfect" Ra Fast Heroic or Loki Hersir Rush build-up)

An human is better than an AI at:


  • Logical and deductive thinking (for example, knowing to cast Vision on one side of the Anatolia map at 10-15 seconds into the game and from that finding whether the enemy Ulfsark is building a dock on one side or the other)
  • Ability to avoid or exploit game quirks/bugs (for example, countering Raiding Cavs with Toxotes since Raiding Cav pathfinding is bad
  • Ability to count for terrain, objects, elevation, etc in calculations of who will win a battle (something very hard for a computer to evaluate in real-time)
  • Intuition and instinct (being able to figure out general patterns and make decisions based on limited or hard-to-define information)
  • Ability to learn and adapt. (Some AI systems try to "remember" what kinds of units the enemy is using or even what happened in previous games but humans are much better at it).


Programmer on 0 A.D., author of Norse Wars, co-author of Fort Wars.

[This message has been edited by Matei (edited 04-10-2003 @ 08:28 PM).]

Zycat
Mortal
posted 11 April 2003 00:03 AM EDT (US)     3 / 11       
And if you wonder why there's no array, there's "goals", which can be used to store things and as a pseudo-two dimensional-array.

The query system is pretty good, too.

But the main concern with A.I scripting is that it has a very steep learning curve.

If you ever want to ask more, ask Captn_Kidd, as he's the no.1 AoM A.I author right now


ESO : Heero_Yuy / Tonto_Zycat
taglag
Mortal
posted 11 April 2003 11:38 PM EDT (US)     4 / 11       
i agree with zycat, the settlement thing is screwed. should not be set as is. It apears to force the AI to have to know the exact location of the settlement. and that makes home made maps
pretty useless if you want to just make a map and play conquest against the CPU.
Matei
Mortal
posted 12 April 2003 07:49 AM EDT (US)     5 / 11       
You can actually place settlements that the AI can build on in an easy way, check http://aom.heavengames.com/cgi-bin/forums/display.cgi?action=ct&f=13,12325,0,365.

Programmer on 0 A.D., author of Norse Wars, co-author of Fort Wars.
Elchtest
Mortal
posted 15 April 2003 08:42 PM EDT (US)     6 / 11       
thanx that helped!

i'm going to talk 60 minutes about it. i'm introducing with RTCW AI system and switch then over to AoM.

the class itself has set the goal to improve the AI that is used at the moment. we begin with a peacefull map, where 4 groups have the goal, to get as much ressources as possible in 90 minutes.

... we add week by week more detail into it getting over war stuff and finally trying to do some teamplay ai.
(maybe you wanna look, it's german: www8.informatik.uni-erlangen.de/IMMD8/Lectures/AI-Games/hs/)

btw., teamplay AI... there aren't functions to use for communicating between your own two AIs?

Matei
Mortal
posted 15 April 2003 09:13 PM EDT (US)     7 / 11       
I see, looks really interesting. I think there are communication functions and AI's can even send flares to one another to point out places on the minimap. You'll have to search the documentation though. Perhaps you want to email CaptN_Kidd directly, he is the main AI person at ES it seems.

Programmer on 0 A.D., author of Norse Wars, co-author of Fort Wars.
Zycat
Mortal
posted 15 April 2003 11:57 PM EDT (US)     8 / 11       
NO, there are NO communication functions whatsoever... I checked it, and while it can send flares, it cannot read it.

ESO : Heero_Yuy / Tonto_Zycat
Matei
Mortal
posted 16 April 2003 08:28 AM EDT (US)     9 / 11       
Oh, that's pretty bad then; I thought I saw some Comm constants. I guess you can make pseudo-communication because every player can see the knowledge base, for example create a Spearman or tribute 4 wood to tell your ally to give you gold as a sort of pseudo communication code.

Programmer on 0 A.D., author of Norse Wars, co-author of Fort Wars.

[This message has been edited by Matei (edited 04-16-2003 @ 08:28 AM).]

Elchtest
Mortal
posted 16 April 2003 09:47 AM EDT (US)     10 / 11       
mhh... can't you use some echo commands?
like ai1 uses aiecho "ai1 needs 500 wood from ai2"... and ai2 is watching the messages passed? or something like that?
Zycat
Mortal
posted 16 April 2003 12:26 PM EDT (US)     11 / 11       
No, because while they can "speak", they can't retreive the information from it.

Also, "Comm" commands just sends a message, cannot interpret it.

Quote:

I guess you can make pseudo-communication because every player can see the knowledge base, for example create a Spearman or tribute 4 wood to tell your ally to give you gold as a sort of pseudo communication code.

Uh, that would be pretty hard to make, because there are NO functions that catches the tribute value.

Also, some communication commands has been disabled I think. You can't speak to the player unless you use the predefined strings (different for each language).


ESO : Heero_Yuy / Tonto_Zycat
You must be logged in to post messages.
Please login or register

Hop to:    

Age of Mythology Heaven | HeavenGames