Designed (almost) entirely in AI files as a sixth level of difficulty rather than in triggers
It's not as complete as I wanted it to be, but this is what I've got. Known caveats:
Cheats: It can see the whole map. This is because I'm not done with scouting techniques yet.
A couple AI functions are still in triggers and haven't been ported to the AI files yet.
It's not nearly as good as it will be.
Phoenix micro basically ignores all units except mutas (For kiting. Its attack AI is normal non-micro for all non-muta air units). This will be expanded upon in the future.
Sentry AI is unoptimized (and unfinished). Large battles with many sentries may result in heavy lag.
Only PvZ (Zerg player, Protoss computer) is currently supported!
I named it 'fledgling' to reiterate the fact that it's nowhere near completion or even a state I'd consider ready for an alpha release. I think it will probably be able to beat most bronze/silver players regardless. I haven't done extensive testing with mutas or anything past T2 so feel free to try, but I can't promise it will counter very well. :)
How exactly do you lose that? Was it a page on the internet? Did you dump the list yourself? Can't you dump it again? Don't you have the function in question ON A MAP?
Well, i don't got it right here but just dump the list from sc2.exe using a debugger and look for "speed" (can't remember the exact name) there is only 1 argument which is speed (int) so it should be easy to find.
Would it not have taken you less keystrokes to simply type out the function name? What the fuck?
Hey all, I know everyone is playing around with AI at the moment. I was hoping somebody had discovered a way to wall a choke with buildings using SetStockEx. :P
Currently I can get the computer to build my first building (pylon) directly at the choke, but all the following buildings are spaced out, not forming the tight wall I'd like. These are the flags I'm using to build my first pylon, but doesn't work for subsequent builds: c_nearFarDefense | c_nearChokePoint
So if you've figured it out, or are working on it, or just feel like challenging yourself let me know :) I'll post the flags here as well if I figure it out.
Not sure which file it can't find, but I'm running this from an extracted folder, I selected the correct path and file via browse and I have .NET 3.5 installed. I am using Windows XP (32-bit).
There are no timers and the movement is completely smooth. The BNet lag associated with using WASD is still associated, as it inherently will be with any method you use.
Posting my WASD Library here. It works for any camera view and only weighs 11kb. It only deals with WASD, it does nothing with mouselook etc or any other function. It's very simple to use, there are 3 public functions you'll want to plug into your code.
Considering the beta extension, and how long it takes to make a well-defined AI, I'd like to request/suggest an extension on the deadline. :)
I'm working on BEHEMOTH - An insane protoss computer that will (hopefully) wipe the floor with any level of zerg player using perfect micro/macro/counters. I've spent a full day on it and have only really been able to finish the initial build order (first 20 supply), so it's proven to be a fairly time consuming process, one I'm not sure I can finish before the current deadline. Though, it's pretty impervious to any rush. ;) The goal is to make it insanely hard to beat without using any sort of cheats. Normal resource collection rate, no additional units, can't see the entire map, etc.
Inside your project, open the triggers tab (F6). Open the libraries window by hitting CTRL+SHIFT+L. Right click inside the libraries window, move your cursor to "Library" and select "Import Library..." Import my library.
Now you'll need to change the Library ID. Right click on my main library folder, move your cursor to "Library" and select "Change Library ID". Hit the checkbox, and in the text field enter 'WASD'. Hit Okay.
Plug In The Functions
Now all that's left is plugging the functions into your triggers. You will need three triggers total:
A trigger with the event "Any Player presses Down Any Key"
A trigger with the event "Any Player pressed Up Any Key"
A trigger wherein you define which unit each player is controlling
If you don't have one or any of these triggers already, make them. In the KeyDown trigger you will want to add the function WASD KeyDown Check() with the parameters Triggering Player and Key Pressed. You will want to do the same in the KeyUp trigger, except you will call WASD KeyUp Check(). Lastly, wherever you define the units that each player is controlling you will want to call WASD Set Controlled Unit(), passing the player you're setting the unit for as your Player parameter and the unit you want him/her to control as your Unit parameter.
And that's it! Simple right? You can use this for both mouse-look and top-down views. The library uses the unit's speed so no special work is needed to change the movement speed of your unit in the library, simply change your unit's speed the standard way through the data editor.
0
Alright, I'm gonna be hanging out with friends and busy the rest of the contest period so here's my entry: http://www.sc2mapster.com/assets/behemoth-ai/files/1-behemoth-fledgling/
Features:
It's not as complete as I wanted it to be, but this is what I've got. Known caveats:
I named it 'fledgling' to reiterate the fact that it's nowhere near completion or even a state I'd consider ready for an alpha release. I think it will probably be able to beat most bronze/silver players regardless. I haven't done extensive testing with mutas or anything past T2 so feel free to try, but I can't promise it will counter very well. :)
Phoenix micro video:
Sentry micro video:
0
How exactly do you lose that? Was it a page on the internet? Did you dump the list yourself? Can't you dump it again? Don't you have the function in question ON A MAP?
0
@A1win: Go
Looks pretty cool! Reminds me of the Abe's Odyssey platformer series.
0
@malu05: Go
Sweet, when are you dumping that function list?
0
@onisagi: Go
Oops. Overlooked that.
0
Would it not have taken you less keystrokes to simply type out the function name? What the fuck?
0
Hey all, I know everyone is playing around with AI at the moment. I was hoping somebody had discovered a way to wall a choke with buildings using SetStockEx. :P
Currently I can get the computer to build my first building (pylon) directly at the choke, but all the following buildings are spaced out, not forming the tight wall I'd like. These are the flags I'm using to build my first pylon, but doesn't work for subsequent builds: c_nearFarDefense | c_nearChokePoint
So if you've figured it out, or are working on it, or just feel like challenging yourself let me know :) I'll post the flags here as well if I figure it out.
0
Not sure which file it can't find, but I'm running this from an extracted folder, I selected the correct path and file via browse and I have .NET 3.5 installed. I am using Windows XP (32-bit).
0
There are no timers and the movement is completely smooth. The BNet lag associated with using WASD is still associated, as it inherently will be with any method you use.
0
If I were a mod I'd probably delete all of your shit and ban you just because I don't like that you're a pompous pre-teen ass-hat.
0
Posting my WASD Library here. It works for any camera view and only weighs 11kb. It only deals with WASD, it does nothing with mouselook etc or any other function. It's very simple to use, there are 3 public functions you'll want to plug into your code.
The main asset page is here: http://www.sc2mapster.com/assets/wasd-library-8-directional/
And you can download it here: http://www.sc2mapster.com/assets/wasd-library-8-directional/files/1-wasd-movement-library-v1-1/
Important: After importing you must change the library ID to ‘WASD’.
Public Functions:
WASD KeyDown Check(int Player, key 'Key Pressed')
Place this in the map's "Key Down - Any Player - Any Key" trigger.
WASD KeyUp Check(int Player, key 'Key Pressed')
Place this in the map's "Key Up - Any Player - Any Key" trigger.
WASD Set Controlled Unit(int Player, unit Unit)
Use this to set which unit a player is controlling with WASD.
0
You're seriously going to post this and not post the function?
0
Considering the beta extension, and how long it takes to make a well-defined AI, I'd like to request/suggest an extension on the deadline. :)
I'm working on BEHEMOTH - An insane protoss computer that will (hopefully) wipe the floor with any level of zerg player using perfect micro/macro/counters. I've spent a full day on it and have only really been able to finish the initial build order (first 20 supply), so it's proven to be a fairly time consuming process, one I'm not sure I can finish before the current deadline. Though, it's pretty impervious to any rush. ;) The goal is to make it insanely hard to beat without using any sort of cheats. Normal resource collection rate, no additional units, can't see the entire map, etc.
0
@ubermikeleet: Go
You need to set the ID when you import.
0
Hello all, time for another rrowland tutorial. I've made this one much easier for you. :)
Download Library
First, you'll want my WASD Movement Library (Latest version): http://www.sc2mapster.com/assets/wasd-library-8-directional/
Import Library
Inside your project, open the triggers tab (F6). Open the libraries window by hitting CTRL+SHIFT+L. Right click inside the libraries window, move your cursor to "Library" and select "Import Library..." Import my library.
Now you'll need to change the Library ID. Right click on my main library folder, move your cursor to "Library" and select "Change Library ID". Hit the checkbox, and in the text field enter 'WASD'. Hit Okay.
Plug In The Functions
Now all that's left is plugging the functions into your triggers. You will need three triggers total:
If you don't have one or any of these triggers already, make them. In the KeyDown trigger you will want to add the function WASD KeyDown Check() with the parameters Triggering Player and Key Pressed. You will want to do the same in the KeyUp trigger, except you will call WASD KeyUp Check(). Lastly, wherever you define the units that each player is controlling you will want to call WASD Set Controlled Unit(), passing the player you're setting the unit for as your Player parameter and the unit you want him/her to control as your Unit parameter.
And that's it! Simple right? You can use this for both mouse-look and top-down views. The library uses the unit's speed so no special work is needed to change the movement speed of your unit in the library, simply change your unit's speed the standard way through the data editor.