QAI Advanced AI Thread

QAI Advanced AI Thread

Here is where ideas can be collected for the skirmish AI in development

Moderators: hoijui, Moderators

User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

QAI Advanced AI Thread

Post by QMan »

Welcome to the new QAI Spring AI thread.

QAI will be a comprehensive AI suite, inlcuding unit learning based on a variety of factors, a robust economy management system, and advanced planning and attack routines.

So far, things are in a very prototype stage, and functionality is limited. Current source is V0.03, and DLLs.

Current status:

Overall:
-[Complete-NotTested]Mod independent
-Dynamic unit selection based on current world state

Economy:
-Reliably maintains metal and energy levels.
-Dynamic unit picker up and running for most units.
-Need to add defense buildings to dynamic unit picker.

Building Placement:
-Sector based building placement.
-Base growing as room is needed.
-[Not Started] Defense building selection and placement
-[Not Started] Wall selection and placement (dragon teeth)

Scouting:
-[Complete] Basic scouting, with sector assessment.
-[Not Started] Advanced scouting by any unit in the region.

Attacking:
-[In Progress] Sector based enemy information.
-[In Progress] Skirmish mode (outlying buildings are attacked)
-[In Progress] Selective invasion mode (certain building types attacked, such as factories, mexes, energy plants, constructor units, etc)
Last edited by QMan on 31 Mar 2006, 20:04, edited 7 times in total.
User avatar
FizWizz
Posts: 1998
Joined: 17 Aug 2005, 11:42

Post by FizWizz »

yeah, and KAI and NTAI (and SAI and AAI and this and that and the other) also claim that they will be robust, advanced, flexible, intelligent, etc.
It's good to see another AI enter the competition though, I'm looking forward to when the AI can give a good fight.
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

Another question:

How can I get the UnitDef from a UnitDef ID, rather than the standard unit ID assigned from a unit.

I know currently getUnitDef(int id) gets it from the unit id assigned to each new unit, and getUnitDef(string unitName) gets it from a string with the unit name.

Example: I want the UnitDef associated with ID 4, which in XTAPEV4 would be ARMACK.

-QMan
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

My goal is to first work out the AI economy (which is nearly done), then focus on defensive building placement (which is just starting), and lastly on scouting/attacking (which I haven't thought about at all yet).

On a side note, is there some special trick to posting a file on FileUniverse? All my attempts to use the "File Upload" buttons brought up a 404 error after submitting the file and no file appearing.

-QMan
User avatar
Min3mat
Posts: 3455
Joined: 17 Nov 2004, 20:19

Post by Min3mat »

get it spamming attack forces so it can be said to be a skirmish AI. in AA (best mod atm IMHO) defenses are far better with unit backup. although getting it to stop the spam when a player has a strong defenses so it starts stockpiling units and teching will be the hard part :)
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

when the files been uploaded it should be at the top fo the latest files list and in the public section.

Also why you would want to get a untidef based on the unitdef id and not any other means I dunno but soemthing like getting the unitdeflist and then the unitdef would be array[unitdef id]

Anyways Making claims like that sint gonna get you anywhere, and remember what you first plan isnt necessarily the best way fo doing it. Look at TAI to see that, or listen to krogothe as he constantly rewrites his systems in KAI.

That and finally I am happy that Epic will be the first AI that isnt a set fo initials infront of the word AI

KAI
AAI
JCAI
OTAI
ZcAIn
SAI
NTAI
TAI
MyAI
etc.......
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

Anyway, I figured out the UnitDef ID thing. It was a matter of using GetUnitDefList(list) and indexing into list with the UnitDef ID.

We'll see how far I can get on my initial design, and then I'll jump into massive revisions. :)

-QMan
User avatar
Veylon
AI Developer
Posts: 174
Joined: 21 Sep 2005, 19:45

Post by Veylon »

Well, good luck! It takes a lot of time and imagination to do AI programming, and we could all use the challenge.
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

Status Updated!
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Another threat matrix AI! Maybe I shouldnt have suggested using threat matrixes in that first thread, then maybe it wouldnt have pervaded so many of the AI projects
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

So, it's all AF's fault huh... Kidding. If I could ever get my AI to work I'd release it as something other than an initial followed by AI, but...
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

It's a very rough matrix though, brazilian battlefield is 4x4 or 8x8 depending on my sector size.

Mostly I use it to determine where the enemy base is, as well as where enemy metal extractors are in the periphery sectors.

-QMan

PS Status updated again!
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

hmm you're working fast QMan, dont you have a job/exams todo?

And could you provide a copy of that visio document in some other format? Something you could expect anyone with Office or OpenOffice to be able to view....
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

I do have a job, in fact. I work as the lead simulations engineer on large project for my company. I've been spending about 4 hours a night working on the code. So far, the code is about 2000 lines long.

Oh, I also finished a bunch of the attacker code last night, but it's still buggy as heck, so I'll probably release that tonight or tomorrow.

As for the Visio thing, check out Microsoft Office Viewers.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Really you should be posting stuff to the world in a worldly format, somethign more than 1% of people can view.

That office viewer stuf only views visio documents made with visio 2002 or older, it wotn open the files in your source downlaods, adn th format is all in binary so i cant flick through in notepad++ and get the jist of it like I can with other xml based formats
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

They were originally for my own reference, but I decided to release them anyway.

Which of these file types would you like (or can you open?):

XML Drawing (.vdx)
GIF Image (.gif)
Visio 2002 File (.vsd)
Scalable Vector Graphics (.svg)
Webpage (.html)

On a side note, does UnitDamaged() get called:

A) MyUnit hits EnemyUnit & EnemyUnit hits MyUnit

or just

B) EnemyUnit hits MyUnit

?

-QMan
User avatar
jcnossen
Former Engine Dev
Posts: 2440
Joined: 05 Jun 2005, 19:13

Post by jcnossen »

Why is it that almost every AI coder starts here with the idea "This is going to be my AI, and it is more advanced and more comprehensive than all your other guys are doing, even though I wrote little code for it already"?

I would say the users and other AI coders who review the algorithms and performance determine whether it is advanced or not: saying it in advance is quite pointless.

We have seen it with AF, krogothe (both have good AIs by now but also changed their attitude towards this), and now QMan...
ofcourse I'm not saying it will not be advanced, but making the claims in advance?

But good luck anyway, another AI is always nice as it can raise competition even further.
User avatar
QMan
Posts: 103
Joined: 17 Feb 2006, 01:10

Post by QMan »

I never made any claims to the "advancedness" of the other AIs. They are also very advanced by my book. There is no such thing as a simple AI. Hell, each of the three major AIs (NTAI,OTAI,AAI) has surpassed even the original TA AI by leaps and bounds, each with their own unique perspective and algorithms, and they should be commended.

I'm not making any claims that mine is, or will be, any better than anyone else's AI algorithms. Everyone should be proud of what has been accomplished here, as the field of RTS AI is pushing the envelope as we speak (err type ;] ).

I'm in this for fun and to teach myself C++, not for any competitive reaons. If people enjoy what I have written, so much the better. :)

-QMan

PS. Much code has been written :)
User avatar
jcnossen
Former Engine Dev
Posts: 2440
Joined: 05 Jun 2005, 19:13

Post by jcnossen »

There is no such thing as a simple AI.
So, should we call every AI an advanced AI? That would make using "advanced" a bit redundant ;)

But I see I incorrectly judged your attitude, so I hereby correct my earlier post :)

However we did in fact had a number of people claiming their AI would be better than anyone elses in advance :)
Ofcourse AF's Epic will actually be better than anything else, everyone knows that *kuch*
:lol: :wink:
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

.gif is good.

I'd even take screenshots if you're feeling lazy. JPG format for those though.
Post Reply

Return to “AI”