StarCrack AI Official Thread (Latest Version: 7.0 )

Started by turdburgler, March 01, 2010, 08:32:05 PM

Previous topic - Next topic

Astazha

//--------------------------------------------------------------------------------------------------
//  AIManageSupplyMultiple (original AIManageSupply by Doix + Turd.  Modified by Astazha)
//
// checks to make sure there are enough supply depots for future production
// when supply is required build the number specified instead of just 1
//--------------------------------------------------------------------------------------------------


void AIManageSupplyMultiple (int player, int buildAmount)
{
   string supplyType;
   string p_race = PlayerRace(player);
   
   if(p_race == "Terr")
   {
      supplyType = c_TB_SupplyDepot_Alias;
   }
   else if(p_race == "Prot")
   {
      supplyType = c_PB_Pylon;
   }
   else if(p_race == "Zerg")
   {
      supplyType = c_ZU_Overlord_Alias;
   }


   if ( (PlayerGetPropertyInt( player, c_playerPropSuppliesUsed ) >= PlayerGetPropertyInt( player, c_playerPropSuppliesMade ) - 5 )
      && (AITechCount ( player, supplyType, c_techCountIncompleteOnly ) == 0 ))
   {
      //AISetStock( player, AITechCount( player, supplyType, c_techCountCompleteOnly ) + buildAmount, supplyType);
      AITrain(player, c_makePriorityHighest, c_townMain, supplyType, buildAmount);
   }
}


//--------------------------------------------------------------------------------------------------
//  AIManageSupply (by Astazha)
//
// build 1, 2, or 3 supply depots depending on how many spare minerals are lying around.
//--------------------------------------------------------------------------------------------------


void AIManageSupply (int player)
{
   if (AIHasRes(player, 1000, 0))
   {
      AIManageSupplyMultiple(player,3);
   }
   else
   {
      if (AIHasRes(player, 500, 0))
      {
         AIManageSupplyMultiple(player,2);
      }
      else
      {
         AIManageSupplyMultiple(player,1);
      }
   }
   
}


Tresh

Quote from: Astazha on March 11, 2010, 09:49:34 PM
@Trush I find that as long as I watch the replay before making further edits to an AI that it works fine.  I don't know if it takes a hash of the AI it was run with or what
Im not sure what you mean with hash, but ive tried watching the replay without editing anything after the game, and it didnt work. As i said, it played about a minute or so of the replay (About when i make my first rax with terrans), then goes desync.

Any further help / recommendation would be greatly appreciated. Im trying to see what am i doing right and wrong.

Astazha

Then I'm afraid I don't know.  My replays work except when I edit the AI it was made with.


If you play a game and then immediately watch the replay does it work then?

Astazha

I've just realized that I was wrong about the cause of the failing to re-tech thing, so disregard that bit.  A main base will retech as much as it needs to.  The problem seems to be that when the main is wiped out the AI will not retech at an expansion.


I recall someone discussing reassigning an expansion to be the main in one of these threads...

krutoistudent

#275
Quote from: paco on March 11, 2010, 10:35:00 PM
ouch

haha

seriously, why dont you guys make stronger ai? ??? ?
there is no improvement since version 5, just big talk but nothing is changing in difficulty

here played vs cheated 6.1.1
SC2 AI6.1.1 cheated version part1
SC2 AI6.1.1 cheated version part2

versus not cheating 6.1.1
SC2 AI6.1 part1
SC2 AI6.1 part2
SC2 AI6.1 part3
well if i have to compare this with human player i would say that it has a skill level of a wow player who plays his 2-3game ...

cliffton

Quote from: krutoistudent on March 12, 2010, 04:45:06 AM
seriously, why dont you guys make stronger ai? ??? ?
there is no improvement since version 5, just big talk but nothing is changing in difficulty
I'm sure they are keeping it the same just to piss you off.  If I was working on it that's what I'd be doing.  
There are changes from 5.0.  Maybe not as noticeable if you never let it live past 5 minutes, but changes are there and obvious and I can't take you seriously if you are going to pretend they don't exist.  Said changes lay a framework for making it more challenging and varied going forward.  
Given what they had to start with, progress in two weeks is great, and it isn't going to go any faster because some jerk on a forum says it should.  I mean what, you think they are just dicking around but now that *you* have come to tell them it should be harder they finally realize they need to do it right, or they finally have the motivation to do it right, and because *you* told them to suddenly they can snap their fingers and do it?  What an egoist.
Actually I take that back.  I have a stupendous idea!  Seriously, why don't *you* make stronger ai?  You seem to know exactly how easy it is.  They are holding back!  Show us th way! Hell, it's so easy I'll go do it.  I'll race you!

programm

Here is the solution: All unite on making Emulation bnet and get rid of crappy AIs cause AIs can never be like players. To stupid.

undeadnightorc

People are never happy. We were all dying for the beta. When we didn't get in we were dying for a free crack. When we finally got a free crack we were dying to play an ai instead of sandbox mode. When we finally got an ai we were dying for it to be improved.

Just remember we never paid a cent for all this so just be thankful there are people out there willing to put a great amount of effort bringing it to us FOR FREE.


earendur829

i'm finding it VERY, VERY hard to beat cheating AI terran as toss on maps with wide ramps.  :-[

krutoistudent

stop crying guys, since when its not allowed to say your own opinion? and stop coming with retarded reasoning, it was my opinion yesterday, it doesnt match yours? hell i could not care less, and again for people without beta key this is the only way too play, for me not, i have a beta key
i just played all match ups i didnt play yesterday and suprise ZvT and PvT was a great challend (cheated ai), so on this point i take back my word from earlier post !
the cheated ai as terran versus human Protoss/Zerg is pretty good
i will upload it later on youtube, seriously game is worth to watch ;-)

krutoistudent

Quote from: earendur829 on March 12, 2010, 06:33:36 AM
i'm finding it VERY, VERY hard to beat cheating AI terran as toss on maps with wide ramps.  :-[
hm yea kind of either u need to slow down your tech or you will need a few sentries to block the whole ramp
the cheated ai terran is pretty nice, come close to human terran player (just missing micro, but macro wise pretty nice)

iounas

Quote from: krutoistudent on March 12, 2010, 04:45:06 AM
Quote from: paco on March 11, 2010, 10:35:00 PM
ouch

haha

seriously, why dont you guys make stronger ai? ??? ?
there is no improvement since version 5, just big talk but nothing is changing in difficulty



well if i have to compare this with human player i would say that it has a skill level of a wow player who plays his 2-3game ...
Its very hard to code ai.. It cant think like a human..
It doesnt help that his opening is the same.. He makes zealots, player makes zealot counter- roach.. Player wins..
It was like that first few days of beta until protoss players went straight to immortals and stalkers.. And then zerg expected protoss to go with those units so zerg made zerglings and hydras.. Not easy to code that..

Jandos

Quote from: programm on March 12, 2010, 05:33:58 AM
Here is the solution: All unite on making Emulation bnet and get rid of crappy AIs cause AIs can never be like players. To stupid.

Signed !  :)

I really appreciate hard work of guys who making AI. It is good for people who dont have much experience with RTS. But for someone who played BW it will be always to easy and boring.

I hope they will be some  progress in emulating battle net server soon

mysticalmage13

Come on guys, be thankful that we get everything here for free. Just be patient, you can't expect them work any faster, they still have their lives to live, they simply can't invest all their time in this project they're doing out of their own good will. So, just relax and be patient. They're doing fantastic work and to think they're doing this for free.


I have to say, the A.I. keeps improving but you can't expect too much from a machine. If you ever go into coding, you'll realize that programming a computer to be human-like is difficult, you'll need tons and tons of lines of code. You'll have to tell them what to do for each possibility they'll encounter and it's not easy to do that out of all the countless strategies a person can manage to think of. I'm sure the developers are doing the best they can with the limited resources they have. I read a while ago that blizzard haven't release a proper code for the A.I. and that they have to implement their own, or something like that. So just be patient and be content with what's available.  :)