NTai XE10.1b - Page 92

NTai XE10.1b

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

Moderators: hoijui, Moderators

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

Re: NTai XE10

Post by AF »

As I said, I really do not know whether to choose yes or no, and since I am not in charge of the spring repot, I don't even have commit access, I have no control over it, as such it is only my choice out of nicety. If you want to, then go ahead.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1

Post by AF »

User avatar
Umrug
Posts: 141
Joined: 27 Nov 2006, 12:57

Re: NTai XE10.1

Post by Umrug »

So nice to see you updating :)

The bad part is that it crashes on frame 0. Infolog is empty (no AI messages). Log file is not created. However, the default config is copied over to BA.tdf
(BA 7.04, 0.80.5.1, Comet Catcher Redux vs RAI)

Go debug go.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1

Post by AF »

hmm you said that about XE10, and I dont get insta crashes here, so I bundled the pdb with it.

btw what cpu are you using?
mcgoo
Posts: 33
Joined: 09 May 2008, 07:31

Re: NTai XE10.1

Post by mcgoo »

crashes here too.
infolog :
http://pastebin.com/f47128d7c
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1

Post by AF »

Could you post the NTai log? The infolog is almost useless to me, the only help it gives is telling me what instruction set your cpu supports and that your running the right version of spring.
mcgoo
Posts: 33
Joined: 09 May 2008, 07:31

Re: NTai XE10.1

Post by mcgoo »

ntai produces no log for me :(
slogic
AI Developer
Posts: 626
Joined: 17 Mar 2008, 19:03

Re: NTai XE10.1

Post by slogic »

Why vc09.pdb? Where is SkirmishAI.pdb? On the other hand you've provided the right .pdb for NTaiToolkit.

PS. Are you really compiling your binaries against Spring 0.80.4.2 source files??

PPS. Added dump file exported from VS.
Attachments
spring.rar
(11.85 KiB) Downloaded 33 times
Last edited by slogic on 03 Nov 2009, 22:47, edited 1 time in total.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1

Post by AF »

No I just foudn it easier to delete everything in the 0.80.4.2 folder and replace it with the enw code than to reopen it in the file open dialog in Visual studio. The version number in ym personal dev folder path is an artefact at most.

Else how do you explain the kernel panic socket placement fix?

Keep in mind that I have no idea how to make use of these pdb files and the dumps you send me, let the googling commence!
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1

Post by AF »

nevermind I have noticed the blatantly obvious mistake. I have bundled yet again a release build not a debug build, and this stupid crash that I cant figure out howto fix is cropping up again.

edit:: reuploaded, XE10.1a
User avatar
1v0ry_k1ng
Posts: 4656
Joined: 10 Mar 2006, 10:24

Re: NTai XE10.1a

Post by 1v0ry_k1ng »

woop dlzing
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7052
Joined: 16 Nov 2004, 13:08

Re: NTai XE10.1a

Post by zwzsg »

Well, still crashes:
Attachments
infolog.txt
(23.48 KiB) Downloaded 134 times
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1a

Post by AF »

nevermind, 10.2 out shortly
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1b

Post by AF »

XE10.1b, I also snook in a minor improvement regarding construction checking for kernel panic which should boost gameplay. My tests here show it beats the lua AI now.
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7052
Joined: 16 Nov 2004, 13:08

Re: NTai XE10.1b

Post by zwzsg »

Confirmed! (Works, and beats the LuaA)

BaczekKPAI is still superior though. Time to fill in the config for the other factions and bundle it in KP installer then.

Ok, done writing the config. But:

There's a problem with the network faction: I don't know how to tell the AI to dispatch, which is a pretty vital custom command for that faction. So: I have a custom command, let's call it "dispatch", of CMD ID 31581. I want the buildings "port" to issue that command on flat nearby ground every second or so. How do I? Alternatively, how would I make the mobile unit "connection" issue that same command whenever attacking or under attack? There will be lots more of custom command to tell NTai about, each with its own use case, but lacking the others don't hamper it as much.

So, right now, I need a way to tell NTai to use custom command 31581 or else it can't play hacker.

Later, as part of making a configurable, you should add a way for config writers to add their own command, and tell the AI which condition to use them. For instance: Port should use CMD 31581 every 1 s. Or maybe: Connection should use CMD 31581 when fighting. Or: Terminal should use CMD 35126 where it thinks are many small enemies.

Edit: Better config making use of kp_dispatch for Network's ports.
Attachments
KP.n.tdf_rename_to_TDF_not.txt
While I'm at it:

KP Custom Commands:

CMD_SPECIAL = 33389
CMD_NX = CMD_SPECIAL -- For pointer, makes them fire a shot with a.o.e. and d.o.t.
CMD_DEPLOY = CMD_SPECIAL+1 -- For bug, morph them into exploit (stationnary turret)
CMD_UNDEPLOY = CMD_SPECIAL+2 -- For exploit, morph them back into bug
CMD_BUG2MINE = CMD_SPECIAL+3 -- For old hacker bugold, don't bother with it
CMD_MINE2BUG = CMD_SPECIAL+4 -- For old hacker bugold, don't bother with it
-- CMD_BOMBARD = CMD_SPECIAL+5 -- Commented out!
CMD_MINELAUNCHER = CMD_SPECIAL+6 -- For byte, fire five mines forward, cost hp
CMD_DISPATCH = 31581 -- For connection and port, spawn packets -- VITAL COMMAND!!!
CMD_ENTER = 31574 -- For packet, demateralize by entering into a port or a connection (kinda useless for the AI)
CMD_BOMBARD = 31647 -- For bug, move into range then morph into exploit and attack
CMD_AUTOHOLD = 32103 -- For worm, well don't bother with that
CMD_BURROW = 32104 -- For old hacker wormold, don't bother
CMD_FIREWALL = 34881 -- For firewall, cast a protection around unit in the area, that will last for 20s, stick to unit as they move, and make them reflect damage back to enemy
CMD_AIRSTRIKE = 35126 -- For terminal, fire the nuke
CMD_TIMEWAIT = 33201 -- For my mission thing, forget it
CMD_DEATHWAIT = 33202 -- For my mission thing, forget it
CMD_SQUADWAIT = 33203 -- For my mission thing, forget it
CMD_GATHERWAIT = 33204 -- For my mission thing, forget it
CMD_REPEAT = 33207 -- For my mission thing, forget it
CMD_TRANSFER = 33208 -- For my mission thing, forget it



KP Custom Parameters:

Spring.GetTeamRulesParam(TeamID,"bufferSize") -- Integer, or nil. How many virtual packet there are in the buffer. The dispatch command create actual unit out of this custom resource.
Spring.GetUnitRulesParam(UnitID,"ONS_Shielded") -- 1, 0 or nil. Is at 1 if a structure is shielded. Is at 0 or nil if not. No point in attacking anything shielded. Only structures can be so shielded btw.
(20.27 KiB) Downloaded 133 times
Last edited by zwzsg on 04 Nov 2009, 01:43, edited 4 times in total.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1b

Post by AF »

This build has a kp_dispatch keyword task that attempts to implement your CMD_DISPATCH
Attachments
SkirmishAI.rar
(450.43 KiB) Downloaded 37 times
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7052
Joined: 16 Nov 2004, 13:08

Re: NTai XE10.1b

Post by zwzsg »

Thanks for the quick response. Now all five factions know how to play KP, yay!

The immediate issue is fixed, but for the long term, think about some flexible way to tell NTai about new commands without hard coding them.
User avatar
Umrug
Posts: 141
Joined: 27 Nov 2006, 12:57

Re: NTai XE10.1b

Post by Umrug »

.80.5.1, BA 7.04, Comet Catcher

Using default config (auto-copied on first run)
Makes some attack units - and never attacks with them. Also, eats more and more CPU until I had to stop Spring.

Opened BA config with bundled toolkit, made only 2 changes: Author=Umrug and Message=Hello world, saved, the message appears on start but then the AI is idle. Log tells us that commander has no buildqueue - so, first problem (not really critical or even important) is that Toolkit can not load default file properly.

OK made some basic config...
1) HEY where's my "don't ever build this" tag?
2) Some sneaky but really annoying bug: select a unit (lets say armavp - adv veh lab, check its "factory" tasklist checkbox. Now switch to next unit (happens to be armawac) - and immediately switch back to armavp - the "factory" checkbox is clean again. Grrrr.
3) If possible - some unit search? Scrolling manually - especially if you don't remember the short unit name and have to read all of them - this sucks. Same for generic tasks, and units in task editing. Really, as I worked on config this frustrated me more and more.
4) Horizontal scroll bar in task editing (can't read the generic tasks description)
5) About b_rule and b_rule_extreme - what documentation am I supposed to look at?


Most important - attack behavior sucks, since units with different speeds arrive to enemy at different time and die separately.

Important - increasing lag and crash. Infolog empty, AI log gives nothing useful (ends with different commands every time).

When builds metal makers - they are just on all the time, even when it stalls.

Doesn't look like initial start group size and increase values affect something - it starts with some other num of units anyway, and proceeds to increase attack group size rapidly. (i.e. first group 5, next 15, when i want first 2 and increase by 1/10%)

Putting armsolar exclusion radius to 100 (just for kicks) doesn't seem to influence its placement. Actually, putting exclusion radius on anything doesn't seem to work.
User avatar
1v0ry_k1ng
Posts: 4656
Joined: 10 Mar 2006, 10:24

Re: NTai XE10.1b

Post by 1v0ry_k1ng »

insta crash

test before release brah
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: NTai XE10.1b

Post by AF »

It worked fine under kernel panic, I ran tests for 10.1a 10.1b and the interim build I posted for zwzsg with the kp_dispatch value. I'm retesting again, but keep in mind I tend to test the configs I actually have, and right now all I have is the default build tree and the kernel panic one, and one by IK that only supports basic t1 core ( doesnt even have conbots )

Toolkit is a red herring. I know there are issues with common sense logic like the one you mentioned umrug. My response a year ago was "scrap it and build a java version, C# is more trouble than it's worth". My current stance is "I dont have time to build a java version so Ill fix anything blatantly obvious thatll take a minute or two but you should really be editing the text files".

Now the motivation to meddle around heavy with toolkit at the moment is somewhat dubious considering the config format it is built around will likely be deprecated within 2 months and replaced with a backwards compatibility lua interface layer...


Since you have a working config that was generated from the default config, NTai obviously succesfully managed to copy the default config, what's more if it failed it would have told you so in the AI log and you'd see a lot of errors reported.

Can I confirm that you are all using 10.1B? 10.1 is a release build (uber crap crashbug when built in release mode) and 10.1a has a bug caused by the TDFParser that causes crash on start up.

And once again:

http://redmine.darkstars.co.uk/projects/ntai/issues/new

If you do not use my bugtracker:
  • Duplicate reports and confusion
  • Bugs reports that are never read because they're buried under a torrent of forum posts
  • Bugs that are forgotten because I don't have time to read back the last 5 pages of posts every time I go to do a release
  • Longer times to fix because on the tracker, I get instant reports wherever I am, on the forums I only check when I get home of an evening, I can plan my time ahead better if you use the bug tracker.
  • Bugs on the tracker HAVE to be dealt with. Bugs on the forum do not have to be dealt with.
A prime example umrug being your nobuild list. If you had entered it yourself I would have a supervisor to deal with, but because I instead entered it myself, I had free reign to move it to XE11.

Its not the best way of doing things but it saves me a lot of hassle considering that I only have limited resources, and especially considering my current modus operandi is not to make NTai better than all the other AIs.

So I make this warning nice and clear:

Those who do not use the tracker may find that when my coursework load piles up that I start ignoring forum posts to save time as I start prioritising issues on the tracker that are necessary for my final year project

You really have no idea how big a deal this is. Right now unlike the past I do nto answer to the community. The community only gets NTai here as a symptom of academia right now, and you're all working with an NTai that is 'not' a final result, a work in progress. You must understand there is only so far goodwill goes when it comes to adding features to systems which are in my mind already obsolete.
Post Reply

Return to “AI”