[3.1+] NullBot: an adaptive skirmish AI

Did you create a mod, map, music, or a tool? Present them here and earn feedback!
Note: addon requests do not belong here.
Note, everything uploaded to this forum, MUST have a license!
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by NoQ »

Thanks (: I've just filled the wiki a little. It is some sort of a brief guide of NullBot coding.

Also, Sourceforge allows to pick some license, but it doesn't really offer CC-0 as an option. Is it worth switching to, for example, CC-BY or GPLv2 simply to fill in this field?
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by NoQ »

v0.29

Changes:
  • Add difficulty level support: Easy is something like old generic AI (unspecialized research), Medium has adaptation disabled. Don't forget to choose HARD to see NullBot as it actually is.
  • Research cannons before engineering for MC and FC versions of the regular AI.
  • Use adaptive research tree for Hover AI, prevent it from making sensor wheel tanks before hovers are invented.
Last edited by NoQ on 25 Feb 2012, 14:42, edited 1 time in total.
User avatar
aubergine
Professional
Professional
Posts: 3462
Joined: 10 Oct 2010, 00:58

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by aubergine »

You know your AI has properly arrived when it has it's own website :) Loving the wiki!

Had several really fun games against NullBot recently. It's still struggling with walls and AA but it's getting better with every release.
"Dedicated to discovering Warzone artefacts, and sharing them freely for the benefit of the community."
-- https://warzone.atlassian.net/wiki/display/GO
User avatar
dak180
Trained
Trained
Posts: 288
Joined: 01 Nov 2009, 23:58
Location: Keeper of the Mac Builds

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by dak180 »

NoQ wrote:Thanks (: I've just filled the wiki a little. It is some sort of a brief guide of NullBot coding.

Also, Sourceforge allows to pick some license, but it doesn't really offer CC-0 as an option. Is it worth switching to, for example, CC-BY or GPLv2 simply to fill in this field?
Not unless one of those is what you want; all you really need to do is add a file called "LICENCE" and put what you want in that.

Also CC-0 is equivalent to their "Public Domain" licence.
Last edited by dak180 on 24 Feb 2012, 15:20, edited 1 time in total.
Reason: add info
User:dak180
Keeper of the Mac Builds
User avatar
JDW
Regular
Regular
Posts: 1669
Joined: 18 May 2010, 20:44

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by JDW »

Could Nullbot be added to the 3.1 code? Would be great if we could have it tested properly and included in the finall 3.1 release. Semperfi and Nexus just don't cut it. And I wouldn't want to wait till Nullbot is included in 4.x :P
"Speak when you are angry and you will make the best speech you will ever regret."
-- Ambrose Bierce
User avatar
Emdek
Regular
Regular
Posts: 1329
Joined: 24 Jan 2010, 13:14
Location: Poland

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by Emdek »

JDW, I believe that we will have at least 3.2.x, and I hope that it will have shorter release cycle. ;-)
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.


Beware! Mad Qt Evangelist.
User avatar
JDW
Regular
Regular
Posts: 1669
Joined: 18 May 2010, 20:44

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by JDW »

Yeah, but that's beside the point.
"Speak when you are angry and you will make the best speech you will ever regret."
-- Ambrose Bierce
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by NoQ »

dak180 wrote:Not unless one of those is what you want; all you really need to do is add a file called "LICENCE" and put what you want in that.

Also CC-0 is equivalent to their "Public Domain" licence.
Done, thanks! (:

Also you ... forked me :oops: Is there anything i should do about it? Is there an easy magic way to apply your changes to my code, and/or is it worth it? (will there be many of them?) :o
User avatar
dak180
Trained
Trained
Posts: 288
Joined: 01 Nov 2009, 23:58
Location: Keeper of the Mac Builds

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by dak180 »

NoQ wrote:Also you ... forked me :oops: Is there anything i should do about it? Is there an easy magic way to apply your changes to my code, and/or is it worth it? (will there be many of them?) :o
When I feel that I have enough stuff to be worth sending your way I will send you a pull request; for right now though I am mostly just experimenting.
As for the future, who can say?
User:dak180
Keeper of the Mac Builds
User avatar
aubergine
Professional
Professional
Posts: 3462
Joined: 10 Oct 2010, 00:58

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by aubergine »

Having great fun against NullBot ~Turtle~:

Image

The image doesn't do it justice (click it to zoom and turn monitor brightness up), but the map looks like a starry night due to all the radar blips!
"Dedicated to discovering Warzone artefacts, and sharing them freely for the benefit of the community."
-- https://warzone.atlassian.net/wiki/display/GO
User avatar
aubergine
Professional
Professional
Posts: 3462
Joined: 10 Oct 2010, 00:58

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by aubergine »

Sent some VTOLs in to see what Turtle was up to:

ImageClick for large view

Still no AA built from what I can see - just gazillions of radars...
"Dedicated to discovering Warzone artefacts, and sharing them freely for the benefit of the community."
-- https://warzone.atlassian.net/wiki/display/GO
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by NoQ »

Lol ... Probably a bit too many radars :lol2:

In fact, it only builds AA
  1. at the base,
  2. where there was an actual VTOL attack.
It doesn't really fill the whole map with AA, though i can easily teach Turtle AI to do that. Good idea (:
JDW wrote:Could Nullbot be added to the 3.1 code? Would be great if we could have it tested properly and included in the finall 3.1 release. Semperfi and Nexus just don't cut it. And I wouldn't want to wait till Nullbot is included in 4.x :P
By the way, i'm getting suspicious about dak's recent activity :roll: He's suddenly showing some serious interest without explaining why :o
User avatar
JDW
Regular
Regular
Posts: 1669
Joined: 18 May 2010, 20:44

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by JDW »

NoQ, I have a few queries about Nullbot. First, have you scripted your bot to recycle out-dated units?

And my second question is, is it possible to script Nullbot so that it will transfer a truck (and perhaps even power) to an ally who has lost all his units? The ally could also be another bot. Or is this feature out of the scope of bot scripting?
"Speak when you are angry and you will make the best speech you will ever regret."
-- Ambrose Bierce
User avatar
aubergine
Professional
Professional
Posts: 3462
Joined: 10 Oct 2010, 00:58

Re: NullBot: an adaptive skirmish AI for v3.1+

Post by aubergine »

Transfer of power/units to ally is currently not possible via the JS API :(

@Per/Cybersphinx *cough* API features for transfers between players and beacons *cough* ;)

EDIT: I don't think nullbot recycles units yet, but it certainly recycles old buildings (and prolly replaces them with even more sensors lol)
"Dedicated to discovering Warzone artefacts, and sharing them freely for the benefit of the community."
-- https://warzone.atlassian.net/wiki/display/GO
User avatar
effigy
Regular
Regular
Posts: 1217
Joined: 22 Jan 2010, 03:21

Re: NullBot: yet another AI for v3.1+

Post by effigy »

recycling:
NoQ wrote:Well, i'm not yet ready to give a precise enough definition of an outdated design in all possible game situations.

I also can't really explore the design of any given droid via scripts. I could encode this info into the unit name though (:
I can divert some of my time to completing my .dither() function - you pass it a list and a function to run actions on that list and it dithers the enumeration over several frames...
I do something like that with attackStuff() function already. I'll try to do it manually when necessary, and it'd also be nice to have an automated way you propose (:
This is why some features aren't implemented: http://forums.wz2100.net/viewtopic.php?f=30&t=7490&view=unread#p87241