NTAI - Page 3

NTAI

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

Moderators: hoijui, Moderators

DimmurWyrd
Posts: 2
Joined: 19 Oct 2005, 16:57

Post by DimmurWyrd »

I just had an unhandled exception also. Was only running NTAI vs me... game went like so I built til AI attacked static defenses mowed down AI then I sent a few units I had made to beat on AI blowing up a TON of windmills and a few guns and one nuclear plant hehe. nothing much... then as I was stupidly sitting there trying to build a nuclear plant without enough base economy eventually I got the ai.dll unhandled exception. the ailog.htm is around 600k or so game was fairly lengthy I guess 57:36 hehe. here are first and last lines. if you want the rest let me know.

**edit** Also I noticed the AI giving the message "guarding" just before it died but I wasn't attacking and there were no other AIs/players.

Game started: October 19 2005 09:21 PM.
corepyramidv6.smf
xta_se_v065.sdz
map size: 80 x 80
starting cains cmetalhandler class
metal handler loading states
metal handler loading states completed
Chaser::InitAI
Assigner::Unitfinished
Factor::UnitFinished()
chaser::UnitFinished
CBuild()
CORLLT
CBuild()3
[00:26] Assigner::Unitfinished
[00:26] Factor::UnitFinished()
[00:26] chaser::UnitFinished
[00:26] factor::UnitIdle() new task
[00:26] CBuild()


[57:12] FBuild()
[57:12] issuing mobile unit :: CORAK
[57:15] factor::UnitIdle() new task
[57:15] CBuild()
[57:15] CORMMKR
[57:15] CBuild()3
[57:36] Assigner::Unitfinished
[57:36] Factor::UnitFinished()
[57:36] chaser::UnitFinished
[57:36] factor::UnitIdle() new task
[57:36] CBuild()
[57:36] CORWIN
[57:36] CBuild()3
CaptainMaim
Posts: 265
Joined: 04 Sep 2005, 01:25

Post by CaptainMaim »

Hey Yeah! Mine crashed too while I was kicking some AI base butt. Only I managed to burrow a large arc out of the AI's solid mass of a base. (Ya know that base really ought to be more spaced out. I sware there was a massive pile up around some of the factories.) Hmmm.. And now that I think of it, once the AI reached my start point. He pretty much went to sleep. When I got there his factories were dozing and only JCAI was busy. In fact his army was the only one really to greet me. NTAI had a few guys puttering around like decorative guards who only attacked when provoked. It was just weird.
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

I think that NTAI is mostly defensive in nature at the moment. AF will probably fix that in the near future.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Thanks, those responses where by far the most helpful i've recieved, and I cna explain a few of those bits.

In the version that I released last the attack agent figured out what the exact opposite location to its starting position was, which is usually the starting position of player 1/2 on most maps. So thats where it will send its untis, and on maps like brazillian battlefields and metal hekc this is accurate to within a solar plants width. And thats where it ends though, The AI just atatcks that spot and untis get recalledbakc to it when anew unti is built.

Traffic congestion is not a problem because of base layout, but rather because of construction code. A unti is given a hardcoded tasklist as soon as it's built
When ti finishes that tasklist it's told to find another construction unit with tasks left and to guard it. The problem there is that after a while chains of construction untis quickly build up and they surround the root construction unit that still has tasks left forming jams.

I also suppose these crashes could possibly be a result of constructions untis being destroyed. AI sees a unti is not building anymore (it's actualyl dead) so ti gives ti the next command in the list (but its dead) cue the crash.

Also I noted that JCAI doesnt play longer than 30-40 minutes for me and gives the error. If you leave NTAI idnefinately it should play for an infinite amount of time. The problem there is it maxes out 500 untis on average every 50 minutes when starting from scratch. I believe that is why the factories where idle.

Also, several untis where hardcoded to be built and then are used byt he scouting agent, but the scoutign agent was commented as I had an inkling it was making the whole thign unstable which turned out true.

V0.3 should have a better cosntruction system and attack system that gets rid of the problems. But before then I'll work on it and I'll make masse do another JCAI vs NTAI test with the updated code.

Apart from that NTAI is mostly defensive in nature but onyl because it's attack code is befuddled and Zaphod changed the resources so AI's start out with 1k/1k rather than 5k/5k so i have to rebalance resources again.

I may also have some rudimentary mod support in 0.3 but that all depends on how well the new building code is working.

Image

Above is a shot from masse showing JCAI vs NTAI. As you can see NTAI has the forces to incinerate JCAI but they're being pulled back to the calculated point before they can do any more damage.

note to others:: I have fixed the problem I had with cains class.
User avatar
Stanky105
Posts: 7
Joined: 04 Apr 2005, 05:07

Post by Stanky105 »

Can anybody tell me how to get a look at the AI log file thing? I'd like to help more but don't know how to do it.... :oops:
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

In the spring folder c:\program files\taspring\ there are a number of files containing logs.

JCAI has:
testAI.log in the Aidll/globalAI folder

ZcAIn has:
ZcAIn.log in the spring folder

And NTAI has:
AILog.htm in the spring folder

There is also infolog.txt in the spring folder which might contain AI information but otherwise contains the output of the info console.
Kixxe
Posts: 1547
Joined: 14 May 2005, 10:02

Post by Kixxe »

Wow! This is awsome!

The AI aculy gave a fight! i still owned it, but still, it was very good.

One problem, it won't let me have 2 ai's at the same time, says something about build confilct...
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

building conflicts shouldnt occur udner that unless the AI's are sharing the same memory sapce which shouldnt happen at all unless somehtign si seriously wrong within the spring engine.

Build conflicts are when the AI gives a location for a building and another building is given the same location before the construction unit arrives to start building.
User avatar
DeathHawk
Posts: 278
Joined: 19 Oct 2005, 02:02

Post by DeathHawk »

This AI Crashed with me The game starts Up game goes berzerk then the computer rebooted it self :shock:

I am never touching this AI again :(
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

You shouldn't say that. A crash like that isn't bad, it's just nerve wracking. Unless it blinks up the improper shutdown, it shouldn't have any negative effects.
User avatar
DeathHawk
Posts: 278
Joined: 19 Oct 2005, 02:02

Post by DeathHawk »

But mate it only did that when Running NTAI The game Went funny then My machine rebooted and that never happend in spring before something must be definatly wrong.

All other AIs run fine for me
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Ahem, the version you have is very temperamental to what map it runs on and is only the 3rd released version.

More importantly you provided no information to help me correct the problem, no inflog.txt's no AILog.htm's, not even an I was doing this at the time.

All I know is it was a memory leak from the looks of it but NTAI shouldnt have done that and since you've provided me with no information it might be the map you where using the AI or the engine itself that caused the crash.

Otherwise bad mouthing unfinished work for the sake of it is plain rude unless it has a lengthy track record, which no AI could have existed long enough to gain in this community.


Anyway, expect V2.5 out in the next day or two, I'm just running it through playtests looking for any bugs.
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

2.5? Excellent.
User avatar
DeathHawk
Posts: 278
Joined: 19 Oct 2005, 02:02

Post by DeathHawk »

Yeah I oppologise for my first remark But it scared the living Shit outta me my computer has not done that Before EVER i thourght it Killed my machine.

I will run it again tonight and ill send ya the files ya need to see the error Maybe its not compatibe With the latest Absolute annihilation thats why It went berzerk i think.
User avatar
Maelstrom
Posts: 1950
Joined: 23 Jul 2005, 14:52

Post by Maelstrom »

the AI is made for XTA. Simple as that. Running it under anything but XTA will have bad effects. In your case, and in my case once, Spring crashed. Try it in XTA and it SHOULD run fine.
Kixxe
Posts: 1547
Joined: 14 May 2005, 10:02

Post by Kixxe »

And it only works for CORE.... Right?
User avatar
Min3mat
Posts: 3455
Joined: 17 Nov 2004, 20:19

Post by Min3mat »

yup
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

I will run it again tonight and ill send ya the files ya need to see the error Maybe its not compatibe With the latest Absolute annihilation thats why It went berzerk i think.
NTAI atm is hardcoded with XTA core names. I t should run under OTA or AA as long as the same untis are rpesent however it will 100% stall after 2 minutes for certain, it could be a lot mroe unstable, the scouter agent and the attack agent are guaranteed to do absolutely nothing if they use different unti healths whihc is very likely, and it will most certainyl crash when ti tries to build the core mini fusion which as far as I know is XTA only.

But I'll have mod support in V0.3 among a few other overhauled bits I'm planning, it'll just take some more time otherwise I wouldnt do a v0.25 release. 0.25 just needs some work making ti 100% stable thats all.
User avatar
FireCrack
Posts: 676
Joined: 19 Jul 2005, 09:33

Post by FireCrack »

Have you thaught about tapping into the global build AI already available? While it may not be the best solution it cetrianly better than having the constructor chains. If, that is, it is doable.
User avatar
DeathHawk
Posts: 278
Joined: 19 Oct 2005, 02:02

Post by DeathHawk »

FireCrack what your suggesting basicly is cheating and stealing other peoples work.

Let Alantai Work it out himself, Just like Zaphod does.

How would you like it If you worked so hard towards something and someone just copies your stuff into theres.
Post Reply

Return to “AI”