[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
Bonsaiheld
Rookie
Rookie
Posts: 31
Joined: 24 May 2013, 23:54
Contact:

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by Bonsaiheld »

Game: Stable 3.1 Build 16 Jan 2013
AI: 2.05
PhysFS: 2.0.2-6 (can't get a higher one within the standard repositories)

stderr seems to be only available on Windows - starting the game with "--debug=error" didn't produce anything. :|

Yes, the game warns about something with PhysFS and tells me that i should update. But for some reason it doesn't do that always, so i can't reproduce it.

However, it seems i can't upgrade it to 2.0.3 as it's only available for Debian for some odd reason and would break others of my packages. And 2.0.1 seems to be unfindable. Well. :/
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

stderr seems to be only available on Windows
Emm, not exactly (:
However, it seems i can't upgrade it to 2.0.3 as it's only available for Debian for some odd reason and would break others of my packages.
According to packages.debian.org, it's currently in -testing.
You may try building a debian package with an updated source.
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

Suddenly an update! :o

v2.06:
  • Improve behaviour in "no vtol" games: don't spend too much money on building and researching AA when VTOL factories are disabled.
    • I cannot fix researching bombs though (not with that personality code) but in NullBot3 it should be possible to fix bombs as well.
Will commit this change to the base game (to get it to v3.1.1) if you guys test this change and find no bugs :wink:
portnov
New user
Posts: 1
Joined: 16 Oct 2013, 07:07

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by portnov »

It seems for me, nullbot 2.06 causes WZ from git master to create broken savegame files :/
It writes to templates.ini smth like: body=CyborgLightBody
But when loading saved game, it warns:

Code: Select all

info    |09:16:33: [loadSaveCompList:5716] Bad component -1
info    |09:16:33: [loadSaveCompList:5716] Assert in Warzone: game.cpp:5716 (compInc >= 0), last script event: '<none>'
I added a bit more debug output, and I see that it can not find "CyborgLightBody" comp. grep CyborgLightBody in current git master of WZ does not find anything at all.
May be, it was renamed recently?
User avatar
Duha
Trained
Trained
Posts: 287
Joined: 25 Mar 2012, 20:05
Location: SPb, Russia

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by Duha »

portnov wrote: I added a bit more debug output, and I see that it can not find "CyborgLightBody" comp. grep CyborgLightBody in current git master of WZ does not find anything at all.
May be, it was renamed recently?
https://github.com/Warzone2100/warzone2 ... dy.ini#L51
http://addons.wz2100.net/ developer
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

Bad component -1
Well, this "-1" thing was supposed to be a field name in an ini file :o
Looking into this.

Upd: Cannot reproduce. Line numbers in your log also don't match; are you sure you are running the latest master? - cause it changed a few months ago i think. Also, does the built-in NullBot in master work for you?
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

Due to a request, i've released a v2.07 (also to addons).

It contains an update to build order of MC personality. It also contains generic updates in build order code; it should be executed more correctly in some cases (or probably new bugs might have been introduced).
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

v2.08: along with further tweaks in MC personality (most of the build order bugs are supposed to be fixed now), i made a significant change - tried to backport NullBot3's unit movement and grouping code.

Please test to see if it's an improvement, or if any important aspects of the behavior were lost; specially those who like turtling, please see if it has become easier or harder, before i commit the recent changes into the base game.
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

v2.09: a quick hotfix (hopefully the last bug).
Cinh++
New user
Posts: 4
Joined: 16 Feb 2014, 19:03

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by Cinh++ »

i used nb2.07 and just tested mc 2.09 startup challenge. it's been a great match so far. I had a feeling i was playing against an average skilled player.
It kept pressure on me from the beginning to the time when i got half-track tanks. Then i pushed it until i won.

Some suggestions:
It'd better to research halftrack instead of hmg after twin mg?
It moves whole army to chase my damaged units which are retreating and gets both of my army and her in a mess. Is it worth to do that?
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

I had a feeling i was playing against an average skilled player.
Or rather a yesterday's noob who just decided to grow and took a few lessons (:
It'd better to research halftrack instead of hmg after twin mg?
Yea, that's true. Or rather after the subsequent mg upgrade before hmg, so that the AI keeps working as a balance test (if at all possible) of "you cannot move away from machineguns" (and just-before-HMG is the first place when inventing halftracks is an obvious win-win compared to inventing the new machinegun).

The real question is, when should it build the second lab? The question is, of course, poorly stated, as it depends on a lot of stuff, but the AI cannot consider most of this stuff.
It moves whole army to chase my damaged units which are retreating and gets both of my army and her in a mess. Is it worth to do that?
Usually chasing is worth it, just until you encounter a counter-attack, because when you're chased it's very hard to cover damaged units, so you're getting a lot more kills; i'd rather just decrease the regroup radius.
Cinh++
New user
Posts: 4
Joined: 16 Feb 2014, 19:03

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by Cinh++ »

NoQ wrote:Or rather a yesterday's noob who just decided to grow and took a few lessons (:
Not really. I've been playing with AIs for so long, people dont play low oil.
To make it harder, i usually play against a team of 3 bots.
Me vs semperfi + nullbot mc + nullbot flamer on sk-rush for example. Its really stress but fun.
I wonder if there is a Bot which are actually 3 or more bots inside? :idea: :lol2:
Cinh++
New user
Posts: 4
Joined: 16 Feb 2014, 19:03

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by Cinh++ »

Tested both MC and MR on Startup and Vision. They are really tough now. I dont think i can defeat them before 10 min. The only problem i see now is they dont know exactly when to attack or retreat. Manytimes, even my army is weaker, they still retreated. They lost their chances to defeat me.
Anyway, you did great jobs, NoQ. "Like NoQ, like NullBot"
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

Uhm, i'm seeing more obvious bugs with unit movement, and not enough time to investigate.
The only problem i see now is they dont know exactly when to attack or retreat. Manytimes, even my army is weaker, they still retreated. They lost their chances to defeat me.
A complicated problem even for a human, with its multiple factors (tech-oriented timing - "attack right after an upgrade is researched or when a new kind of droid comes out, avoid combat and fall back shortly before that, even if it means loosing derricks, and understand when same thing happens on the enemy side", build order oriented timing - "attack when your build order gives you a peak strength, as it's not reachable through any other build order", timing based on previous battle outcomes - "counterattacks", economy based timings - "no need to attack as long as time works for you"). As i allow NullBot to visibility-cheat, some of these might be implemented, but i'm not yet having a good vision of how to do that (and i hope it'd not be this old NullBot, as it's a huge pain to work on, as you might or might not have noticed).
User avatar
NoQ
Special
Special
Posts: 6226
Joined: 24 Dec 2009, 11:35
Location: /var/zone

Re: [3.1+] NullBot: an adaptive skirmish AI

Post by NoQ »

v2.10 is supposed to take care of the problems i was hopefully the only one to notice (:
Post Reply