Bug report and suggestion to improve AI
submit to reddit

  • ptanhkhoa Wrote

    "P/S: but I can make the Ai build wall in for one map :P, since I can determine the coordinate. Like make the Lost Temple AI, Blistering Sand AI. but it will be totally crazy. The AI which play can play all maps is much better and less boring. For now just imagine that an invisible wall when attack the terran and don't cross there choke point :P."

    ptanhkhoa, could you offer any more information on the code that places buildings @ a specific point on the map?

    i am making a set of custom cheese scripts for steppes of war and would like create a wallin for terran.
    any information on how to start would be appreciated.

    Anonymous
    78.146.252.xxx
    avatar
  • @deadmantalking: Using this function: GTBuildPA (int player, string aliasUnitType, int count, point p )

    Ex: GTBuildPA( player, c_TB_Barracks, 1 , Point (100,200)).

    AI will build a Barracks at coordinate (100,200).

    To find a fault is easy; to do better may be difficult.
    GT Creator
    avatar
    Battle.net
    Name:
    Ptanhkhoa
    Realm:
    Europe
  • ptanhkhoa,
    thanks very much indeed.
    just want to let you know i think your GT AI project is awesome :)
    I've only just started to learn AI scripting but have made up a few good scripts with your examples.

    cheers

    Anonymous
    78.146.252.xxx
    avatar
  • You can look into some basic code in this thread:
    GT AI Code Wiki

    Hope this help ^_^

    To find a fault is easy; to do better may be difficult.
    GT Creator
    avatar
    Battle.net
    Name:
    Ptanhkhoa
    Realm:
    Europe
  • Hi ptanhkhoa,
    thanks for the link to the wiki information i am sure its going to be of great help.

    i've now had time to test the GTBuildPA command and it seems to work as expected although sometimes the AI doesn't place the buildings in the correct locations. i am not sure why as it doesn't happen everytime.

    depot 61,44
    rax 61.5,41.5 (not sure if the GT/sc2 Handles the decimal points?)
    depot 64,41

    here's a youtube vid of 2 modified GT AI's scripts in action
    http://www.youtube.com/watch?v=3R_wMhgSyXA

    as you can see from the vid the terran AI built everything correctly although by default the supply depots are built lowered :(

    i've looked into possible ways of solving the prob and found:
    c_AB_DepotRaise c_makeStandard
    but i am not sure how to incorperate the commands into the script.

    part of the script:

    if (GTFinishIA(player, c_TU_SCV, 9) )
    {GTBuildPA ( player, c_TB_SupplyDepot_Alias, 1, Point (61,44));}

    unfortunately i resorted to using the IF statement to control when the supply depot is built
    but wonder is there any way to incorperate additional commands to the GTBuildPA similar to the line below without generating an error or
    do i have to add the IF statement?

    GTBuildPA ( player, c_TB_SupplyDepot_Alias, 1, c_TU_SCV, 9, Point (61,44)); <<<<would be cool but produces an error

    at the moment the 6 pool script seems to work fine but until i solve the depot problem the terran AI aint got no chance :)

    other problems i may face is when the depots and rax are built there's a real possibility that the scv's are going to be walled out.lol
    so i need some commands to control the scv's:
    lower depot
    move scv back to mineral line
    raise bunker

    any help appreciated.

    Anonymous
    78.146.252.xxx
    avatar
  • These 2 variant function will help:
    + GTBuildPAI ( player, c_TB_SupplyDepot_Alias, 1, Point (61,44),c_TU_SCV, 9)
    => Will build the Depot after the AI Started to train the ninth SCV
    + GTBuildPAA ( player, c_TB_SupplyDepot_Alias, 1, Point (61,44),c_TU_SCV, 9)
    => Will build the Depot after the ninth SCV is finised.

    The SupplyDepot will rise up when enemy come, not sure why it not happen in this case.

    To control SCV, it is simple. The SCV run because of this function: GTPreventScout(player), just add
    some condition to GTPreventScout(player) function in the commander file or simply remove it.

    To find a fault is easy; to do better may be difficult.
    GT Creator
    avatar
    Battle.net
    Name:
    Ptanhkhoa
    Realm:
    Europe
  • ptanhkhoa,
    thanks for the help
    looking forward to trying the new variants as they make the code a lot more flexible.

    as for the supply depots i have no idea why they aren't lowering.???
    for base defense or wall ins it would be safer if there was a command to overide the default especially if a 6 pool is involved as there's a real danger that the lings could move onto the lowered depot before the script gets a chance to raise it at which point the lings gain access to the base and its pretty much gg from that point.
    cheers

    Anonymous
    78.146.250.xxx
    avatar
  • correction to above post.
    as for the supply depots i have no idea why they aren't raising.???

    Anonymous
    78.146.250.xxx
    avatar
  • I havent read through every single post, but I do have a bug and a suggestion for you.

    I would just like to start out by saying that you have done something really amazing here, and much props to you for that :)

    down to business. I sometimes pit 8 insane GT AIs against each other for fun to watch them duke it out. it gives me a good chance to see them in action, and to watch their moves and choices without having to think about sustaining my side.

    I have noticed that the insane zerg AI, upon starting, build a few workers (i think 2 or 3) and then proceed to exectue a mass worker exodus and attack the enemy base. i remember a 4v4 where there was a zerg on each side and they both did the exact thing at the exact same time. they both attacked each other's bases and tried to kill the other worker units that were from the opposing zerg side. they kept building more workers until they ran out of resources. at this point their mineral income was zero, and their mineral balance was zero, and all of their workers were dead. they sat there for the rest of the match. it essentially became a 3v3. I hope that something can be done about this! it was quite funny the first time i saw it by the way lol.

    on another note, i havent seen any other bugs, but i have been training myself on medium these last few days on GT AI, and I have noticed that I am winning most of them. I dont want to fight the harder skill levels, because they get a mineral collection rate boost, thus making it less realistic of a situation compared to real live matches.the hard and very hard modes recieve some boost, whereas medium which recieves the normal amount. I would love for there to be a more challenging mode than medium that doesnt use a "handicap" (for lack of a better word) to make them more powerful. to improve upon this situation would require more advanced programming of the AI, so that they are smarter without having a natural boost.

    Thanks again for working so hard on this one. keep up the amazing work.

    Private
    avatar
    Battle.net
    Name:
    batlgor247@yahoo.com
    Realm:
    North America
  • hi there ptanhkhoa..i just downloaded the green tea ai 0.8 which i use with sc2allin by vernom7...some of the scripts don't work like the Unicorn commander for zerg. how do i fix that?

    Anonymous
    112.205.179.xxx
    avatar
  • Hi. Thanks for the AI script. It is very good.

    Starcraft just updated to patch 1.3 and I am now getting an error when trying to use Green Tea AI 0.8 (from SC2ALLin1)

    Script load failed. unexpected unused global variable or function name

    Then there is nothing on the map.
    Can you fix this?

    Registered User
    avatar
  • I found the problem with patch 1.3 and GT 0.8

    In the file Ai.galaxy it does not like line 39

    const int c_unitAttributeNone = -1;

    So I commented it out (put // at start of line) then replace "c_unitAttributeNone" with "-1" in all the files. Its in TactProtAI.galaxy, TactTerrAI.galaxy and TactZergAI.galaxy

    Probably not the best way to do it but it works. Hoping for the official update and new map pack soon

    Registered User
    avatar
  • works, thx :)

    Anonymous
    78.21.150.xxx
    avatar
  • I've written this suggestion in the main topic before, but didnt see there was a topic solely used for this :)

    On medium Terran vs me (protoss) if terran does marau/conc shell FE, the terran will always attack me with 3 or 4 marauders while I have 4 to 6 units and I'll have 0-1 unit losses with little bit of micro (ive also FE'd btw). The terran really shouldn't attack then, its basicly game over if he does and I dont lose any unit

    Anonymous
    78.21.150.xxx
    avatar
  • @Guff:Can you get the name of the commander, I will add some condition for this commander to attack.
    @Shotan: Just upload the new version, thanks but there are easier way to fix this problem :)

    To find a fault is easy; to do better may be difficult.
    GT Creator
    avatar
    Battle.net
    Name:
    Ptanhkhoa
    Realm:
    Europe
  • Sadly I always forget to look at the commander name, or I restart the game before he says his name cause I know I've won already.

    I'll make sure not to forget it the next time I play him =).

    I got another suggestion/bug report. Commander18 from terran (achilles) will for some reason stop making probes at 12-14 and then continue making probes after he made like 6-10 units, Is this ment to be a rush strat ? Cause its way to easy to be one =/?

    Anonymous
    78.21.150.xxx
    avatar
  • Played your gt AI for some time from around 0.5 and it was working fine, then I was away for quite some while and came back, updated sc2 to latest patch, everything is ok, but when I try to play with latest GT it says its not compatible and to make sure that I didn`t moved or deleted any files. Any suggestions on that topic? I don`t know how to fix it, done everything the same.

    Anonymous
    86.100.124.xxx
    avatar
  • Sry for double post, but the problem fixed itself, turned on pc, tried again and there it worked lol

    Anonymous
    86.100.124.xxx
    avatar
  • hi
    i am new user
    sorry my bad English , i am spanish

    i have one problem

    i have installed gt ai 8.1

    i play good but if i like play next day
    the units in the map is missing ¡¡¡¡

    if in the launch in the option "use custom ai" i write off the units in the map i see, but if "use custom ai" write yes in the map no have unit and no see the players

    i have dell sc2 and reinstall sc2 and reinstall sc2allin and i can play "use custom ai" but the next day.. no can play "use custom ai" unit and player missing

    please one help ¡¡¡¡¡
    thanks

    Registered User
    avatar
  • Hey, Love the AI but still want to make some suggestions.

    Is it possible to make a line of difficulty where the AI will never cheat to increase the difficulty? And or where you can set different micro intensities to account for different player ability.

    Pretty much what I would like is an AI that plays "normal" as rediculous as that sounds. One that doesn't double pool into in base hatch etc. But follows more human decision making. Similar with the resources, I already think the AI is very strong in being able to decide good paths and maybe a tiny little bit of cheat can be added at some point to account for error but as much as it has it's uses. It's really wierd to play a game and hold on and trade armies for ages and then suddenly 200/200 comes out under the fog of war..

    Stuff like ninja expansions,..(maybe once every 20 games is ok or something, and then you should be able to tell something is up because you can see their economy and read it, when its inflated and wierd by cheats this is not possible). I guess what I'm trying to say is if it's possible to make it more human in those aspects and then by some interface or expanding the hard - very hard into hard + micro, hard + micro - vision etc. ? So that you can pick if you want it to decide when it actually sees what you do, rather than knowing or even being smart about it and doing it naturally.

    Ok a lot of rambling, I'm sure these is a common thing that gets pointed out, I'll just leave it like that because I think the general intention is pretty clear. To have it play conventional strategies, maybe coop with yabot builds for that? and then have the difficulty tweaked by micro intensity and decision making and if needed a mini resource tweak only to correct for inefficiencies and errors in the AI in those aspects, not to "buff it".

    Thanks very much for your time, I love the AI ever since beta I thought it was really cool project, with the integration in yabot I've been using it frequently, and it's good but it leaves some things to be desired after many games.

    Anonymous
    62.234.190.xxx
    avatar
  • Hey ptanhkhoa,

    Wanted to let you know that it seems like the Very Easy AI (Blizzard Very Hard) will report a script failure when it tries to expand. The AI will never expand after this, and it seems like it will never report that it wants to surrender either.

    Registered User
    avatar
  • I'll send you priv msgs for some bugfixxes of AI. Its far to much to post this here.

    GTAI Core Dev
    avatar
    Battle.net
    Name:
    Nex
    Realm:
    Europe
  • what would be a very very usufull addition, sometime in the future, is a better ally ordering system!

    here is how i think the mechanism should work:

    • pin pointing a location or unit in the map the allies must respond and go there with there units!

    • now i order to prevent it from going back, here is the 3 major pin point methods i recommend:

    • point an area=====ally MOVES their units there and wait for few mins

    • point a unit or structure of users===allies must go and defeat that area! do not leave untill all enemies are dead!

    • point an enemy location or unit,===allies attack that area with everything they got!

    • point allies location ===== retreat

    the above is a very generic ideas, no typing command should be needed!

    or if you want because normally you type with your allies, then you should do like

    -defend and then pin point a location for that action
    -attack and then pin point a location for that action
    -move and then pin point a location for that action

    first type then wait few seconds for a pin point location, and execute that order. but when the battle is going on the above system i recommended should be more fast and helpful!

    This Business Is Binary. You are a 1 or a 0. Alive or Dead.- Play SC2 Offline with StarTCraft Loader: http://adf.ly/M0bMj
    Developer & Moderator
    avatar
    Battle.net
    Name:
    Vernam7
    Realm:
    Europe
  • When watching the AI duke it out, it seems that the Protoss always wins unless it's a big rush by the Terran or Zerg. A lot of it has to do with sudden mass expanding by all 3 races.

    I guess my suggestion would be for maybe the AI to be able to react to scouting and unit combinations better and faster. Especially not triple expanding when it sees a huge protoss deathball.

    Private
    avatar
  • I have a suggestion that the very hard AI's resource advantage be adjustable. For instance, currently the resource collection rate of the very hard AI goes to 1.5X after 10 minutes. Sometimes, I just felt it's so frustrating to lose due to AI's resource advantage (cheating). It would be great to allow us to tune these parameters (for instance, I can specify that AI's resource collection rate to go to 1.2X after 15 minutes).

    Anonymous
    138.15.164.xxx
    avatar

New Reply

If you were logged in you would gain 3 XP for posting a reply.

Please respect our terms of use when participating in Nibbits.

Preview
Comment
We will show a masked version of your IP address as well as your name.

Support Nibbits by linking to us: