mineral gathering does not take place like in a melee map but reaching the cap does hinder your income which is sort of the point. I had thought about using triggers just was hoping there might be an easier way to display it. I will probably just use a leader board to display the variables. I like that idea for using the supply, an interesting alternative. Though I think I want the supply cap displayed as well. I dont know, I'll test it a couple ways. thank you all.
On the map I am working on I would like to cap the total minerals a player can have at a given moment but have that cap be upgradable. I would also like to display it like supply is displayed (current value/Max Value). I've done some searching of the forms but only seem to find topics discussing renaming and displaying custom resources, nothing about modifying existing properties of resources. can this be done?
I just set up a unit array for nydus worms. What I did was create a local point variable that is the target for summoning the nydus worm. After summoning the worm instead of using last created unit I assigned "closest unit to point (local variable point nydus worm was summoned)" to the individual variable arrays. Because the unit was just created at that point it will be the closest unit.
problem solved. I switched the Other Unit + field to "outer" immediately after posting this and it worked though I would still love to understand why it worked exactly. I had thought originally that since the ability was targeting the probe unit from the mineral shard unit that this field would have to be target but after this initial idea I though perhaps it is different because the effect is occurring after the ability has been cast and thus not "targeting" the unit?
Hello, I apologize ahead of time for my lack of understand regarding validators. I have found no tutorial specifically regarding the and have just randomly been poking at them lately. My problem is this, I have created a mineral shard unit that when it uses the "pickupminerals100" ability that applies the effect "pickupminerals100set". This set includes applying the "Carrymineralfieldminerals" behavior to the target unit. What I want to do is not have this ability run if the unit has the behavior "carryhighyieldmineralfieldminerals". I created a "unit compare behavior count" validator called "check mineral carry" . The fields in this catagory are set as follows:
Behavior - carry high yield mineral field minerls
Compare- equal to
Failure Result - Must target unit
Ignore While Channeling 0
Other Unit + (None):Target
Result - Failure Error
Unit + (None):Target
Value 1
I then applied the validator to the effect "pickupminerals100set" but nothing has been changed. I assume it may be an issue with either the "other unit +" or "unit +" field as they are the two which seem to make the least sense to me. Help is much appreciated thanks.
hi guys, I'm trying to do sort of the reverse of this. I have 1 unit that chases another and if the gap between them gets to big I want to run a trigger. So I figured event: unit enters/leaves range of unit; would work for this idea but also like about the unit I want to center the event on does not exist at the beginning of the game and can not be made a constant variable. I like the idea of using the scripting but am not sure how to implement it.
I put this code in my initialization trigger General - Custom Script: TriggerAddEventUnitRange(gt_Movement, null, gv_vUnit[1], 5.0, true);
and set the action in the trigger to kill triggering unit (just to test) but nothing happens. I'm not surprised considering I've never used scripting beyond calling functions. :-). Help is much appreciated thanks.
*Edit
I got the kill unit when it comes close thing working so now I just need to know how to reverse it. Unit leaving range rather than unit enter.
Figured it out....though no idea what I was actually doing wrong. I tweaked some stuff in the trigger editor and the data editor till it worked. Wish I was able to understand what happened though. :-(
So all that is left to my question regards AI of a computer player. I know you hear I'm working on a cat vs mouse game and think "that can't be to bad" but my particular twist requires the cats to be quite a bit smarter than other versions.
What is the best way to go about developing an AI? Is there already a forum somewhere discussing the basics of this?
Basically. it's cat vs mouse but a new version, pretty uniquely different than other versions, emphasizing the "chase" game play feel and working with you friends.
So I am working on a map in which my pylons are invulnerable and my utralisks have an ability that allows them to remove the invulnerability from the pylons so that anyone can attack them. This ability works, and when the ultralisks first spawn I have a trigger that tells them to use said ability on a random pylon in region. this works but after that in other triggers where I have random odds of different events it doesn't work anymore. particularly with the event "unit becomes Idle".
Alternatively I read something about making units use abilities with behaviors and was wonder what is the best way to go about this. and if I should use a behavior how should I do it and is there a good tutorial about this somewhere.
help is much appreciated. thanks.
So I want to create an invincibility ability that is passive, constant, costless, but can be targeted by 1 specific ability that would than remove the invincibility. also I would like a point in the right direction for any ability tutorials/tutorial videos on abilities. Help is much appreciated. :-)
I haven't tested this so Im not sure if it will work but...
I know you can modify ability cool down times from a trigger. Perhaps you can make a behavior that causes the unit to die but only activate it when the ability is used. Set the ability cool down time to your variable and start each unit with the cool down already activated. Set the unit to use it as soon as it is available and it should function the same as an expiration timer that your can modify with trigger variable.
edit: there may be an easier way to do this, just what I thought of on the spot
Alright so I was following along with the tutorial right up until I needed to modify field values. All of the necessary field values are gray and will not let me modify them. I skipped it at first thinking I would find the answer just by following along but nothing so I tried playing with some settings but I can't figure it out on my own. I have this feeling that since it is not stated it is going to feel infinitely obvious after you tell me, so why can't I modify the field values?
EDIT: Apparently it was just glitching, it is allowing me to modify the values now.
Ok so I was able to follow your tutorial alright, but now I am having trouble adjusting this to my needs. This is my first real attempt at using functions and I keep getting the error "expected a return value" but as far as I understand it I have a return value. I'm using the fuction to try to call back the integer value a a unit variables array from the unit rather than from the variable. This is something I will have to do frequently in my map so I thought a function would be a good approach. I want the function to return an integer. I want the parameter to be a specific unit. By setting this parameter equal to a local variable I attempt then run an integer loop for all numbers 1-10. The loop is an if than statement, if local variable unit=global variable (picked integer) then return value pick integer. If I read the above correctly the function should end after it successfully makes a return so I do not see what I am doing wrong. I am calling the function with a custom script in place of an integer (gf_unitarray(EventUnitTarget()) My function is as follows:
unitarray
Options: Function
Return Type: Integer
Parameters
parameter(unit) = No Unit <Unit>
Grammar Text: unitarray(parameter(unit))
Hint Text: (None)
Custom Script Code
Local Variables
localUnit = No Unit <Unit>
Actions
Variable - Set localUnit = parameter(unit)
General - Pick each integer from 1 to 10, and do (Actions)
Actions
General - If (Conditions) then do (Actions) else do (Actions)
0
@DrSuperEvil: Go
mineral gathering does not take place like in a melee map but reaching the cap does hinder your income which is sort of the point. I had thought about using triggers just was hoping there might be an easier way to display it. I will probably just use a leader board to display the variables. I like that idea for using the supply, an interesting alternative. Though I think I want the supply cap displayed as well. I dont know, I'll test it a couple ways. thank you all.
0
On the map I am working on I would like to cap the total minerals a player can have at a given moment but have that cap be upgradable. I would also like to display it like supply is displayed (current value/Max Value). I've done some searching of the forms but only seem to find topics discussing renaming and displaying custom resources, nothing about modifying existing properties of resources. can this be done?
0
I just set up a unit array for nydus worms. What I did was create a local point variable that is the target for summoning the nydus worm. After summoning the worm instead of using last created unit I assigned "closest unit to point (local variable point nydus worm was summoned)" to the individual variable arrays. Because the unit was just created at that point it will be the closest unit.
Hope this helps.
0
@redeamed: Go
problem solved. I switched the Other Unit + field to "outer" immediately after posting this and it worked though I would still love to understand why it worked exactly. I had thought originally that since the ability was targeting the probe unit from the mineral shard unit that this field would have to be target but after this initial idea I though perhaps it is different because the effect is occurring after the ability has been cast and thus not "targeting" the unit?
0
Hello, I apologize ahead of time for my lack of understand regarding validators. I have found no tutorial specifically regarding the and have just randomly been poking at them lately. My problem is this, I have created a mineral shard unit that when it uses the "pickupminerals100" ability that applies the effect "pickupminerals100set". This set includes applying the "Carrymineralfieldminerals" behavior to the target unit. What I want to do is not have this ability run if the unit has the behavior "carryhighyieldmineralfieldminerals". I created a "unit compare behavior count" validator called "check mineral carry" . The fields in this catagory are set as follows:
Behavior - carry high yield mineral field minerls Compare- equal to Failure Result - Must target unit Ignore While Channeling 0 Other Unit + (None):Target Result - Failure Error Unit + (None):Target Value 1
I then applied the validator to the effect "pickupminerals100set" but nothing has been changed. I assume it may be an issue with either the "other unit +" or "unit +" field as they are the two which seem to make the least sense to me. Help is much appreciated thanks.
0
hi guys, I'm trying to do sort of the reverse of this. I have 1 unit that chases another and if the gap between them gets to big I want to run a trigger. So I figured event: unit enters/leaves range of unit; would work for this idea but also like about the unit I want to center the event on does not exist at the beginning of the game and can not be made a constant variable. I like the idea of using the scripting but am not sure how to implement it.
I put this code in my initialization trigger General - Custom Script: TriggerAddEventUnitRange(gt_Movement, null, gv_vUnit[1], 5.0, true); and set the action in the trigger to kill triggering unit (just to test) but nothing happens. I'm not surprised considering I've never used scripting beyond calling functions. :-). Help is much appreciated thanks.
*Edit I got the kill unit when it comes close thing working so now I just need to know how to reverse it. Unit leaving range rather than unit enter.
0
Figured it out....though no idea what I was actually doing wrong. I tweaked some stuff in the trigger editor and the data editor till it worked. Wish I was able to understand what happened though. :-(
So all that is left to my question regards AI of a computer player. I know you hear I'm working on a cat vs mouse game and think "that can't be to bad" but my particular twist requires the cats to be quite a bit smarter than other versions.
What is the best way to go about developing an AI? Is there already a forum somewhere discussing the basics of this?
0
Basically. it's cat vs mouse but a new version, pretty uniquely different than other versions, emphasizing the "chase" game play feel and working with you friends.
0
So I am working on a map in which my pylons are invulnerable and my utralisks have an ability that allows them to remove the invulnerability from the pylons so that anyone can attack them. This ability works, and when the ultralisks first spawn I have a trigger that tells them to use said ability on a random pylon in region. this works but after that in other triggers where I have random odds of different events it doesn't work anymore. particularly with the event "unit becomes Idle". Alternatively I read something about making units use abilities with behaviors and was wonder what is the best way to go about this. and if I should use a behavior how should I do it and is there a good tutorial about this somewhere. help is much appreciated. thanks.
0
that is awesome thanks. The fact that I can so easily attack invulnerable units is actually going to make my map a whole lot easier thank you.
0
So I want to create an invincibility ability that is passive, constant, costless, but can be targeted by 1 specific ability that would than remove the invincibility. also I would like a point in the right direction for any ability tutorials/tutorial videos on abilities. Help is much appreciated. :-)
0
@malkavianVision: Go
I haven't tested this so Im not sure if it will work but... I know you can modify ability cool down times from a trigger. Perhaps you can make a behavior that causes the unit to die but only activate it when the ability is used. Set the ability cool down time to your variable and start each unit with the cool down already activated. Set the unit to use it as soon as it is available and it should function the same as an expiration timer that your can modify with trigger variable.
edit: there may be an easier way to do this, just what I thought of on the spot
0
Alright so I was following along with the tutorial right up until I needed to modify field values. All of the necessary field values are gray and will not let me modify them. I skipped it at first thinking I would find the answer just by following along but nothing so I tried playing with some settings but I can't figure it out on my own. I have this feeling that since it is not stated it is going to feel infinitely obvious after you tell me, so why can't I modify the field values?
EDIT: Apparently it was just glitching, it is allowing me to modify the values now.
0
Nevermind, figured it out. I had to create a local integer variable, assign the picked integer to it and return the value from outside of the loop.
0
Ok so I was able to follow your tutorial alright, but now I am having trouble adjusting this to my needs. This is my first real attempt at using functions and I keep getting the error "expected a return value" but as far as I understand it I have a return value. I'm using the fuction to try to call back the integer value a a unit variables array from the unit rather than from the variable. This is something I will have to do frequently in my map so I thought a function would be a good approach. I want the function to return an integer. I want the parameter to be a specific unit. By setting this parameter equal to a local variable I attempt then run an integer loop for all numbers 1-10. The loop is an if than statement, if local variable unit=global variable (picked integer) then return value pick integer. If I read the above correctly the function should end after it successfully makes a return so I do not see what I am doing wrong. I am calling the function with a custom script in place of an integer (gf_unitarray(EventUnitTarget()) My function is as follows:
unitarray
Options: Function
Return Type: Integer
Parameters
parameter(unit) = No Unit <Unit>
Grammar Text: unitarray(parameter(unit))
Hint Text: (None)
Custom Script Code
Local Variables
localUnit = No Unit <Unit>
Actions
Variable - Set localUnit = parameter(unit)
General - Pick each integer from 1 to 10, and do (Actions)
Actions
General - If (Conditions) then do (Actions) else do (Actions)
If
localUnit == Zerglings[(Picked integer)]
Then
General - Return (Picked integer)
Else