Jump to content
Sign in to follow this  
quantumstate

qBot (yet another AI)

Recommended Posts

Not sure if this is the same error as reported above:

Function call failed: return value was -110100 (VFS directory not found)
Location: vfs.cpp:105 (VFS::GetDirectoryEntries)

Call stack:

(error while dumping stack: No stack frames found)
errno = 0 (No error reported here)
OS error = 0 (no error code was set)

Error produced at the end of the match loading screen using latest public svn and latest qbot.

Edit: I'm using the autobuild exe - which hasn't been updated for a few days now, so that's probably what's causing the error...

Share this post


Link to post
Share on other sites

I'll wait for the next autobuild and test it again. (y)

The problem is nothing to do with the engine but qBot assumes you will name the AI directory "qbot" instead of something like "quantumstate-qBot-93af3f2" (it's explicitly referenced by _init.js).

Share this post


Link to post
Share on other sites

The problem is nothing to do with the engine but qBot assumes you will name the AI directory "qbot" instead of something like "quantumstate-qBot-93af3f2" (it's explicitly referenced by _init.js).

Confirmed, fixed it for me. Thanks!

Share this post


Link to post
Share on other sites

The problem is nothing to do with the engine but qBot assumes you will name the AI directory "qbot" instead of something like "quantumstate-qBot-93af3f2" (it's explicitly referenced by _init.js).

That worked, thanks.

Share this post


Link to post
Share on other sites

The problem is nothing to do with the engine but qBot assumes you will name the AI directory "qbot" instead of something like "quantumstate-qBot-93af3f2" (it's explicitly referenced by _init.js).

Is there any way to fix this by using a relative path? In the meantime I have removed the extra directory.

Edited by quantumstate

Share this post


Link to post
Share on other sites

Is there any way to fix this by using a relative path? In the meantime I have removed the extra directory.

I would think including source files in all subdirectories of the given module is the best solution, unless there's a reason to have AI directories that don't get used :)

Share this post


Link to post
Share on other sites

I was trying an Iberian tower push strategy against qBot, and when I began to encroach on it's territory, I found it endlessly trying to build a Mill behind enemy lines (and sending civilians in to build it).

0ADIberianTowerPush01.jpg

qBot is hele in red, and I'm Iberian in yellow. Mill is selected

You probably know about this already, but thought I'd post nonetheless

Share this post


Link to post
Share on other sites

I was trying an Iberian tower push strategy against qBot, and when I began to encroach on it's territory, I found it endlessly trying to build a Mill behind enemy lines (and sending civilians in to build it).

You probably know about this already, but thought I'd post nonetheless

Haha, that's great!

Share this post


Link to post
Share on other sites

I'm guessing "Tower Push" will be a big strat for the Iberians.

EDIT: You're a bad boy for using Wall Towers.

Random comment, but maybe wall towers should require placement adjacent to a wall? And I don't know if there is a limit on them yet (nor if there should be).

Share this post


Link to post
Share on other sites

I would think including source files in all subdirectories of the given module is the best solution, unless there's a reason to have AI directories that don't get used :)

Yes, that would work well.

The mill building problem is because qBot used a distance based approximation before territories got added, soon there should be proper territory support.

Share this post


Link to post
Share on other sites

With the most recent qBot, I get the following Java script error:


ERROR: JavaScript error: simulation/ai/qbot/qbot.js line 82
TypeError: this.toUpdate[i].update is not a function
()@simulation/ai/qbot/qbot.js:82
([object Object])@simulation/ai/common-api/base.js:92
@:0

The error appears after roughly two seconds on every map I tried and repeats itself over and over again.

Share this post


Link to post
Share on other sites

qBot surprised me yesterday and sent some rather large waves of units into my base when I did not expect. It also built expansions quicker than I expected. It was Oasis II and I was Greeks and the AI Carthage. So whatever is happening in the early/midgame is pretty good. The problem is the AI fails miserably once the match devolves into a war of attrition.

Share this post


Link to post
Share on other sites

Any plans on making this the "default" AI to come with Alpha 8?

Do you think it should be? I'd like to see it released with Alpha 8, although a few things still need to be fixed/added.

Share this post


Link to post
Share on other sites

I would like to see qBot to be included as an option in Alpha 8, but I am not in a place to make a decision. By that time I hope to have some military improvements so it will detect enemies on route so you can't pick off the troops as they walk past, and hopefully some more fancy strategies if all goes well. I got a friend to test it recently (with rough attack move) and it was a pretty close game but he had a 2:1 kill ratio so there is a lot which needs doing on that front. University work si fairly heavy at the moment though so progress is slow.

Edit:

a few things still need to be fixed/added.

If you don't mind elaborating on this it would be great, especially for prioritizing. You have probably played significantly more games vs qBot than I have since I primarily test bot vs bot because it is faster and I can watch exactly what is happening.

Share this post


Link to post
Share on other sites

If you don't mind elaborating on this it would be great, especially for prioritizing.

Mostly things you're already working on:

  • Attack Move - a must have - otherwise all the work qbot does building an army is wasted by a well placed fortress (with 10 garrisoned archers).
  • Female citizens should be garrisoned in nearby defensive structures if being attacked - they are defenseless otherwise
  • It should garrison ranged units in defensive structures when attacked. Garrisoned defenses are very powerful
  • The attacks should be less predictable, maybe sometimes the attacking force can divide into smaller groups, like Jubot does, and attack a number of targets.
  • The AI should take more territory mid-late game - and push forward with a fortress or a few forward towers. It should aim to control the map and remove the resources available to enemies.
  • Build a few scout towers when starting on a map that doesn't have defensive scout towers (i think it does this now)
  • Any starting resource treasures (those nearby the CC) should be gathered immediately
  • It could collect treasures throughout the map - these are an instant boost in resources
  • Starting regular cavalry units should aid the early economy by gathering food from chickens/sheep/goats
  • It appears to begin gathering metal and stone at the start, perhaps it should focus on food and wood to build a larger workforce.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...