Page 5 of 8

Posted: 17 Jan 2007, 15:47
by 1v0ry_k1ng
Image

if its any help thats a good initial build order for XTA.

Posted: 17 Jan 2007, 16:09
by Lindir The Green
I don't have enough control with just the config to do anything like that...

But I've been perfecting its build order for like a year, and I think that it's decent.

Posted: 17 Jan 2007, 20:41
by AF
your build order isnt srictly a build order because it encompasses more than 1 unit. Tasklists in NTai are assigned to A unit, in the singular.

However I see no bug reports from your 1v0ry saying exactly what happened. I can only guess you saved while spring was running and expected NTai to switch configs midgame which is silly.

If you change a config and save it you have to restart spring in order to see the results.

Posted: 18 Jan 2007, 23:23
by Jomel
I've been trying to make it play NanoBlobs, but I'm having various problems.
  • It doesn't seem to want to scout (despite setting scouters), though it does occasionally send a wolf (flying NanoBlob scout) straight off the edge of the map, and you can see it flying out to infinity if you turn the camera. That's probably a Spring bug though :|
  • It refuses to attack (despite setting attackers), even if you attack it a little to jolt it, though this might be due to the lack of scouting (I thought you'd added a maphack though?).
  • If set to build 20 sheep, the lord would build one and then just stay there with his arm glowing until you manually moved the sheep out of the way, after which he'd build another (in the same place). Surely he could have just put the next one somewhere else?! Manually shift-alt-dragging a grid of sheep to build (as a human) works perfectly.
  • Similarly, when building autofacs on repeat the lord manages to build a couple, but still won't bother moving from his current position so will give up after building about 4. While this may be linked to spacing values, spacing values shouldn't prevent builders from moving into empty space around them?
  • I wanted to get the lord and sheep to spread out a little (to fix the above problem, and so the base is less clogged up), but b_randmove doesn't seem to do anything.
  • I wanted the sheep to help each other build things so I set them to b_guard_like_con, which worked fairly well, except you'd get loops of them all guarding each other and so doing nothing. b_guard_like_con would be much more useful if it only guarded active constructors (and passed on to the next item in the tasklist if there were no active constructors). Unfortunately by default several sheep all set to build autofacs will each build their own autofac, rather than assisting each other.
  • It recognised sheep as being b_power, but I couldn't get b_rules to do anything, so any power balance is going to be pretty tentative.
Anywhere here's my current best attempt. Slowly, inefficiently makes a base, and will defend a little, but won't even consider attacking. Simply makes 5 b_power per autofac, since I can't get b_rules to work. Needs lots of improvement, but may vaguely help someone...
http:/ jomelweb.tripod.com/nanoblobs03series.tdf.txt
Instructions: start a NanoBlobs game with NTai so it generates the necessary blank config files, then replace NTai/configs/nanoblobs03series.tdf with the download (make sure to remove the .txt extension).
(n.b. I don't really plan to maintain this...)

FYI here is a log from it running (including an incidence of a wolf disappearing off the edge of the map around 9:08 ): http:/ jomelweb.tripod.com/01-18-2007_2037_0_XE9.3.txt
Corresponding replay is here: http:/ jomelweb.tripod.com/070118-Mars-0.74b2-0.zip

Also a few bugs with the Toolkit v0.232 (which is a great idea):
  • It saves the attackers field as e.g. "attackers=archerdemonknight;" instead of "attackers=archer,demon,knight;", and also occasionally puts a spurious comma after an equals sign.
  • It crashes (DirectoryNotFoundException) if you open a config from the configs folder instead of the root NTai folder (I know this is mentioned on the Quick Help page, but it would make things simpler if you caught the error and explained).
  • It crashes (NullReferenceException) if you leave the units page without selecting a unit. Could fix this by just autoselecting the first unit.
  • Similarly, it crashes if you enter then leave the units page before loading a config (as there are no units to select).
P.S. I had to de-link the URLs in this post since "new users aren't allowed to post links" :evil:

P.P.S. I'm quite new to Spring, NanoBlobs, NTai and its Toolkit, so please forgive me if I make stupid mistakes!

Posted: 18 Jan 2007, 23:56
by AF
There are a few issues.

Nanoblobz suffers greatly because most of the units are nonblocking and thus they inherit a huge gigantic bug in spring todo with blocking maps thats being ignored.

And I ahve a version fo toolkit here with soem bgus fixed but without an NTai worth going with it there sint a point of releasing it atm. I'm working on a custom building placement algorithm which should clear up the building placement issues.

Posted: 25 Jan 2007, 02:11
by AF
Just a word up

I would release NTai recompiled but I am still having issues with building placement. At the moment this is how its looking:

http://img95.imageshack.us/my.php?image ... ing3vl.png

The green circles should not overlap.

Posted: 25 Jan 2007, 22:56
by Lindir The Green
:o

That's not good.

Posted: 25 Jan 2007, 23:02
by AF
Ok Fixed that.

The building placement algorithm works and NTai is building EVERYTHIGN its told to when possible, the only problems are:

- Lag spikes placing buildings, the algorithm needs to be moved to a seperate thread.

- Water building placement handling.

- Attacking is somewhat borked atm, aka it never sends units off to attack.

- Geothermal and mex spot reserving on the buildmap

Posted: 26 Jan 2007, 14:25
by penticrack
hm , fixed? sounds good, but i cant find a new version of ur great AI making tool. i need it for custom mods :)

Posted: 26 Jan 2007, 15:37
by AF
I tried to upload a beta version of toolkit 0.24 (just the GUI program).

NTai atm needs to have its new building placement algorithm threaded, otherwise it suffers from intense lagspikes when placing buildings.

Posted: 26 Jan 2007, 22:20
by penticrack
sounds good, that u r on it.

Posted: 28 Jan 2007, 12:29
by AF
Update:

NTai's main grid management classes are now thread safe, and I have managed to move a lot of code around to take advantage of this. Threaded construction is now possible, and has already built a URC reactor, however here are as always teething troubles which I need to sort out.

I'll also upload a beta version of Toolkit 0.24 (just the program no NTai dll) for people to look around.

Posted: 28 Jan 2007, 13:53
by Sahtor
is NTai going to be released as ntai.so for linux?

Posted: 29 Jan 2007, 02:35
by penticrack
AF wrote:Update:

NTai's main grid management classes are now thread safe, and I have managed to move a lot of code around to take advantage of this. Threaded construction is now possible, and has already built a URC reactor, however here are as always teething troubles which I need to sort out.

I'll also upload a beta version of Toolkit 0.24 (just the program no NTai dll) for people to look around.
hm without NTai.dll we can´t use it until recompile...right?

Posted: 29 Jan 2007, 03:29
by AF
Yes technically you cant test or generate enw cnfigs if I release just the c# program.

As for linux there are several issues:

A: I dont have linux (well, I have ubuntu but no networking, its just a vanilla OS off fo the CD with no way of getting new stuff onto it and not wifi drivers)

B: Nobody has come forward to ask for source to try to compile a linux version.

C: Nobody has even attempted to create Toolkit.mono yet. Without a mono version of NTai Toolkit there's no point in an NTai.so unless windows users make configs.

D: NTai isn't intended to be used as a skirmish AI for people to play against at the moment because there are no configs.[/ b] What I have released to date since XE9RC22 has been to encourage people to create configs and refine and share them between eachother, aswell as identify issues with the tools available for their improvement.

Posted: 29 Jan 2007, 12:05
by Kloot
A Linux version would be good to complement the rather meagre assortment of AIs there (AAI/KAI/TSI if it's recompiled). Windows users at least get RAI too, but the Linux AI department is just really short-changed ATM.

(Plus, more people playing/able to play NTAI means more people willing to make configs for it.)

Posted: 29 Jan 2007, 15:22
by AF
NTai was ported originally by Tobi (who mostly just changed include headers so they where case sensitive).

Since then I've not used any platform specific APIs that I'm aware of. Since the last NTai.so compilation I've only added my own code, and I've made use of the boost library specifically to keep platform portability, namely boost::shared-ptr and boost::thread/boost::thread::mutex/boost::thread::mutex::scoped_lock.


At the moment I see two problems with NTai on my machine.

Firstly in order to accomodate the threaded section I had to change my build function to operate in two stages, one preparing the build action and one that recieves the position from the thread.

This is a problem as this code was hurriedly copied in order to test the threaded portion. Whatsmore this moved code was originally in the Factor class, which was totally rewritten in XE9(except for the CBuild() function) as CManufacturer, which in my latest builds has again be made obsolete by my enw task system (except CBuild() function). So this CBuild() function I've split into two needs a lot of work to bring it into line.

Secondly, attacking didnt seem to work, and when I look closer, I see that all the unit types have efficiency values of 10, which is the minimum/default value. This could explain the problem as the thrat matrix is always empty as a result of this. Because the threat matrix is empty the attack routine simply decides not to bother and gives up.

In order to alleviate this problem temporarily ti may be best to just sue the UnitDef::power value spring uses to target units, which is a static value primarily based on cost (energy/k +metal IIRC where k isa constant I've forgotten that I know is less than 40 (40 is the value KAI used that I pinched *heehee*, its defined as ECON_RATIO where generally 1 metal == 40 energy for the vast majority of mods)).

However the redesigning of NTai and the movement of the codebase from a monolithic design to a highly modular design is going well. My new task system is entirely composed of object derived from the IModule class, and I've eradicated 8 or 9 obsolete classes, enums and definitions.

To date my scouting system is starting to crumble as its dependencies are made obsolete, as of the toolkit testbuilds the maphack turned the scouter class into a glorified raider class with its visit each mex behaviour. Atm its not a particularly nice looking behaviour. From now on I reccomend users dont set scouters, and try not to build scouters at all save as attack units so that they accompany attack groups.

I apologize if I seem incomprehensible in any of the above. I'm using IE6 atm as I'm in university and it has no spellchecker?!

Posted: 29 Jan 2007, 15:45
by McLoud
I think it may rum over mono, but for that you must make a pure assembly (no mixed native/managed garbage, VS.Net has mixed building enabled by default). I was looking into it bu life got in the way (was was that quote again? life is what happens when you are busy making plans?)

Posted: 29 Jan 2007, 16:25
by Fat Zombie
Hello there.

I'm not experienced at all with any sort of AI config, but I downloaded this and tried it in order to create an AI config for my fave mod, EE. However!
I seem to be having a problem at the first step. The "start the mod with the config" step. In so much that as soon as the game starts, it crashes to desktop saying "incorrect AI dll" and pointing to the NTai.dll file.

Could someone please tell me what obvious thing I am not doing; also, since you are more experienced, could anyone provide a decent EE AI config? Thank you very much.

Posted: 29 Jan 2007, 17:01
by tombom
Fat Zombie wrote:Hello there.

I'm not experienced at all with any sort of AI config, but I downloaded this and tried it in order to create an AI config for my fave mod, EE. However!
I seem to be having a problem at the first step. The "start the mod with the config" step. In so much that as soon as the game starts, it crashes to desktop saying "incorrect AI dll" and pointing to the NTai.dll file.

Could someone please tell me what obvious thing I am not doing; also, since you are more experienced, could anyone provide a decent EE AI config? Thank you very much.
The current version of NTai that you can download hasn't been compiled for 0.74b3 or whatever version we're on. AF is working on some more improvements and stuff before he releases the next version.

This is a somewhat working config.