ability: info - unit is set to 2 of my custom zerglings
ability: morph unit is set to nothing, same as the default swarm queen train. does the ability need it? because the default one doesn't and I just copied from it and changed Train 01 Ability: Info - Unit to 2 of my custom zerglings.
I'll try setting the morph unit to the default cocoon that the swarm queen uses.
EDIT: Changing the ability: morph unit to a cocoon with queue and connected to my custom ability had no effect.
EDIT 2: I've also added a button and command in the zerg cocoon (swarm queen) for making my zergling since I noticed the default one has a second page on its command card with those buttons and ability commands for training the default
EDIT 3: I think I know the issue... I have a requirement on the zergling training where I hide and make the button unusable if a dummy ability (which I'm using for hero upgrades) isn't complete at the unit. So the egg can't create the custom zergling because it doesn't have the dummy ability complete at the unit. Would I be correct in assuming this? And if so, is there another ability which could birth these zerglings like the swarm queen but be upgraded to birth more powerful zerglings?
EDIT 4: I created an effect - instant ability that creates zerglings using a "Create unit" effect that creates my custom zerglings. However... I want to have these spawned units take up supply and it seems spawned units don't do that. Would I have to add a behavior to the units that subtract supply? Is that possible?
Like the summon water elemental ability in warcraft 3.
I have an issue with the Swarm Queen train (like Niadra) trying to "train" units that I've made custom. I've created a custom zergling and a custom train ability. And what I've done so far is change the Train 01 of the train ability to create the custom zerglings.
What happens is that the Swarm Queen lays the egg, but the egg has nothing inside it and will never create the unit.
And in the actor events there aren't even any references to birth animations. I went into the cutscene editor to see if you could "remove" animations and it looks like no one can.
Jeez, I wish we had someone more experienced with data to help us. I have no idea what I'm doing here.
Did you view the nydus worm in the cutscene editor to see what its animation names are? I hate that we need to do this because in warcraft 3's editor you could view any and all models and animations right in the sidebar really easily.
Edit: And by "always play the same birth animation" you mean you want to eliminate all the other variations in the actor events?
This has probably been asked before but I've been searching for it through the searchbar and it yields no results.
I'm trying to make a custom structure where I copied the actor from an "igloo" from warcraft 3. I know the issue isn't that it's a warcraft 3 actor because I'm also using another warcraft 3 actor (the ice troll hut) for a different building and that one works 100% as expected.
I still can't upload images to show what's going on so, here are some image links (couldn't use imgur, it was giving me "error, try again" perpetually) of the screenshots and the map itself so everyone can take a look.
EDIT: Further testing reveals if I change the actor that if I copy ANY other actor (besides the igloo) then it will work as I want it to. Why does only the igloo actor not work?
EDIT 2: Even further testing reveals that if I copy a new model (like, say, the chieftan's hut model, from the models tab) and apply that model to the actor, it will still work. BUT if I change the model (in the models tab) to the igloo, then it, once again, doesn't work and comes out blank after construction finishes.
EDIT 3: Another test reveals if I change the actor to a known working actor then go into the model of that actor and change it to the igloo (even if it's a default unit being built from a default build ability from a default unit) it will be blank after being built.
Revival Events Unit -Any Unit dies Local Variables Heroes = No Unit <Unit[6]> Conditions Actions General -If (Conditions) then do multiple (Actions) If Then Else General -Else if (Conditions) then do (Actions) Else If (Triggering unit) == Heroes[0] Then General -Wait 10.0 Real Time seconds Unit -Create 1 (Unit type of Heroes[0]) for player (Owner of (Triggering unit)) at Hero Spawn 1 facing (Position of (Triggering unit)) (No Options)
I tried this for player 1 to test it and is not working. Did i do something wrong?
Well, in this instance, you haven't assigned a unit into the local variable. I would try making the "heroes" variable a global variable by making it in the space where all the triggers are, so you can use the variable in both triggers I put in the spoilers in my first post. Would you like me to provide you with an example map with the triggers I suggested?
I'm looking through what you suggested, and actually can't find the triggers you've suggested. I'm not sure if I'm just blind, or if they're actually not there.
Nor can I find an order to simple attack a location.
I am now gravely concerned I've broken something.
As for what my current trigger is, if it helps.
Events -Timer-Every 300 seconds of Game Time
Actions
-Unit - Create 15 Infested Terran (Campaign) (ID is InfestedCivilian) for player 4 at Wave Spawn East facing (Position of Command Center [135.50, 110.50]) (No Options)
-Unit -Create 15 Infested Terran (Campaign) (ID is InfestedCivilian) for player 4 at Wave Spawn East facing (Position of Command Center [135.50, 110.50]) (No Options)
Oh they're inside the spoilers, sorry, I wasn't sure if they were too large or not.
It appears that if you try to enable all 3 of them by their story mode upgrades through triggers, only the one for your picked race will work and the other two will not (ex: if you're playing as Terran and give all 3 upgrades, automated refineries will work but if you try to build an orbital assimilator or automated extractor then they won't do anything but act like the geyser is tapped out). What's going on here?
EDIT: Nevermind, there was a validator in one of the behaviors for automated gas extraction for each race that stops the extraction from happening if there is no town hall (ex: Nexus, Hatchery, Command Center) for the appropriate race. I didn't know before I built the automated refineries for the other races.
The way I do it in wave-based attack maps is I make a trigger where the event is "Any unit enters Entire Map" and then in the conditions check to see if the entering unit is from the owner of the enemies that I'm making attack. Then issue the order.
If you're looking to add all units of the player who owns the Infested to a unit group (including remainders) at every 300 seconds (or whatever interval you want to use) you could add a "Unit Group-Pick each unit in (Any units in (Entire Map) owned by player [insert the player number of the player who owns the enemies] Excluded: Missile, Dead Hidden, with at most Any Amount) and do (Actions)" action either at the beginning or the end of your trigger that creates the enemies. and in the "Actions" of that Pick Units action put a "Add (Picked Unit) to Unit Group" action.
It would look like this:
Events
-Timer-Every 300 seconds of Game Time
Actions
-Unit Group-Pick each unit in (Any units in (Entire map) owned by player [enemy player number] matching Excluded: Missile, Dead, Hidden, with at most Any Amount) and do (Actions)
--Actions
---Add (Picked Unit) to [enemy unit group]
As for the "Attack a specific point" trigger, I usually just do this:
Events
-Unit-Any Unit Enters (Entire Map)
Conditions
-(Owner of (Triggering Unit)) == [infested hordes player number]
Actions
-Unit-Order Unit to ( Attack targeting [Start Location Player]) (Replace Existing Orders)
I'm having trouble understanding your question with how it's worded... but from what I understand you want to have random heroes created for each player (Zeratul, Raynor, or Alarak) and have them be revivable.
So you want each player to be stuck with the hero they get in the map initialization or constantly receive a random hero whenever their hero dies? I'm going to assume, for now, you want them to keep the Hero they start with.
Here's what I'd do...
Create a variable called "Heroes" and check the box in the right called "array" and change it from "Integer" to "Unit". Keep the dimension at 1 and make the size "6". This is where we'll store each player's Hero.
Make a trigger (I'm gonna call it "Assign Heroes" but you can call it whatever you want). Here is how I'd make it look
Events
-Game-Map Initialization
Local Variables
-PickedHero=0<Integer>
Actions
-Set PickedHero = (Random integer between 1 and 3)
-General-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=1
----Then
-----Create 1 Master Zeratul - Void for player 1 at Hero Spawn 1 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=2
----Then
-----Create 1 Alarak - Void for player 1 at Hero Spawn 1 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=3
----Then
-----Create 1 Jim Raynor (Sniper) for player 1 at Hero Spawn 1 facing 270.0 degrees (No Options)
-Set Heroes[0] = (Last created unit)
-Set PickedHero = (Random integer between 1 and 3)
-General-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=1
----Then
-----Create 1 Master Zeratul - Void for player 2 at Hero Spawn 2 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=2
----Then
-----Create 1 Alarak - Void for player 2 at Hero Spawn 2 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=3
----Then
-----Create 1 Jim Raynor (Sniper) for player 2 at Hero Spawn 2 facing 270.0 degrees (No Options)
-Set Heroes[1] = (Last created unit)
-Set PickedHero = (Random integer between 1 and 3)
-General-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=1
----Then
-----Create 1 Master Zeratul - Void for player 3 at Hero Spawn 3 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=2
----Then
-----Create 1 Alarak - Void for player 3 at Hero Spawn 3 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=3
----Then
-----Create 1 Jim Raynor (Sniper) for player 3 at Hero Spawn 3 facing 270.0 degrees (No Options)
-Set Heroes[2] = (Last created unit)
-Set PickedHero = (Random integer between 1 and 3)
-General-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=1
----Then
-----Create 1 Master Zeratul - Void for player 4 at Hero Spawn 4 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=2
----Then
-----Create 1 Alarak - Void for player 4 at Hero Spawn 4 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=3
----Then
-----Create 1 Jim Raynor (Sniper) for player 4 at Hero Spawn 4 facing 270.0 degrees (No Options)
-Set Heroes[3] = (Last created unit)
-Set PickedHero = (Random integer between 1 and 3)
-General-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=1
----Then
-----Create 1 Master Zeratul - Void for player 5 at Hero Spawn 5 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=2
----Then
-----Create 1 Alarak - Void for player 5 at Hero Spawn 5 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=3
----Then
-----Create 1 Jim Raynor (Sniper) for player 5 at Hero Spawn 5 facing 270.0 degrees (No Options)
-Set Heroes[4] = (Last created unit)
-Set PickedHero = (Random integer between 1 and 3)
-General-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=1
----Then
-----Create 1 Master Zeratul - Void for player 6 at Hero Spawn 6 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=2
----Then
-----Create 1 Alarak - Void for player 6 at Hero Spawn 6 facing 270.0 degrees (No Options)
---General-Else If (Conditions) then do (Actions)
----Else If
-----pickedhero=3
----Then
-----Create 1 Jim Raynor (Sniper) for player 6 at Hero Spawn 6 facing 270.0 degrees (No Options)
-Set Heroes[5] = (Last created unit)
If you make a trigger like that, it should pick a random hero for each player and create them as well as assign them to a point in the array variable I would have created earlier.
If I was making this map and only had players have literally just their Hero to control, I would make a really simple revival trigger that just detects when a unit dies, then respawns it at the Hero Spawn for the player. Since I'm not sure the scope of the map, I'm going to create a trigger that leaves room for the possibility of controlling more units. I'll just call My Trigger "Revival"
Events
-Any unit dies.
Actions
-If (Conditions) then do multiple (Actions)
--If Then Else
---General-Else if (Conditions) then do (Actions)
-----Else If
------(Triggering unit) == Heroes[0]
-----Then
------Wait 10.0 Game Time Seconds
------Create 1 Heroes[0] for player (Owner of (Triggering Unit)) at Hero Spawn 1
---General-Else if (Conditions) then do (Actions)
-----Else If
------(Triggering unit) == Heroes[1]
-----Then
------Wait 10.0 Game Time Seconds
------Create 1 Heroes[1] for player (Owner of (Triggering Unit)) at Hero Spawn 2
---General-Else if (Conditions) then do (Actions)
-----Else If
------(Triggering unit) == Heroes[2]
-----Then
------Wait 10.0 Game Time Seconds
------Create 1 Heroes[2] for player (Owner of (Triggering Unit)) at Hero Spawn 3
---General-Else if (Conditions) then do (Actions)
-----Else If
------(Triggering unit) == Heroes[3]
-----Then
------Wait 10.0 Game Time Seconds
------Create 1 Heroes[3] for player (Owner of (Triggering Unit)) at Hero Spawn 4
---General-Else if (Conditions) then do (Actions)
-----Else If
------(Triggering unit) == Heroes[4]
-----Then
------Wait 10.0 Game Time Seconds
------Create 1 Heroes[4] for player (Owner of (Triggering Unit)) at Hero Spawn 5
---General-Else if (Conditions) then do (Actions)
-----Else If
------(Triggering unit) == Heroes[5]
-----Then
------Wait 10.0 Game Time Seconds
------Create 1 Heroes[5] for player (Owner of (Triggering Unit)) at Hero Spawn 6
Keep in mind this is not a "true" revival Trigger. It's creating a WHOLE new hero, just the same unit type of hero. You can also change the Wait time to be whatever you want.
This should be able to handle your creation and revival needs at a VERY basic level.
0
In reply to DrSuperEvil:
in the custom swarm queen train ability?
ability: info - unit is set to 2 of my custom zerglings
ability: morph unit is set to nothing, same as the default swarm queen train. does the ability need it? because the default one doesn't and I just copied from it and changed Train 01 Ability: Info - Unit to 2 of my custom zerglings.
I'll try setting the morph unit to the default cocoon that the swarm queen uses.
EDIT: Changing the ability: morph unit to a cocoon with queue and connected to my custom ability had no effect.
EDIT 2: I've also added a button and command in the zerg cocoon (swarm queen) for making my zergling since I noticed the default one has a second page on its command card with those buttons and ability commands for training the default
EDIT 3: I think I know the issue... I have a requirement on the zergling training where I hide and make the button unusable if a dummy ability (which I'm using for hero upgrades) isn't complete at the unit. So the egg can't create the custom zergling because it doesn't have the dummy ability complete at the unit. Would I be correct in assuming this? And if so, is there another ability which could birth these zerglings like the swarm queen but be upgraded to birth more powerful zerglings?
EDIT 4: I created an effect - instant ability that creates zerglings using a "Create unit" effect that creates my custom zerglings. However... I want to have these spawned units take up supply and it seems spawned units don't do that. Would I have to add a behavior to the units that subtract supply? Is that possible?
Like the summon water elemental ability in warcraft 3.
0
I have an issue with the Swarm Queen train (like Niadra) trying to "train" units that I've made custom. I've created a custom zergling and a custom train ability. And what I've done so far is change the Train 01 of the train ability to create the custom zerglings.
What happens is that the Swarm Queen lays the egg, but the egg has nothing inside it and will never create the unit.
Here are screenshots of my setup:
https://imgur.com/a/c1vzyKL
0
In reply to onlyleviathan:
Yeah, if I switch the model to ANY other model (in the warcraft 3 or starcraft 2 standard assets) it seems to work.
0
And in the actor events there aren't even any references to birth animations. I went into the cutscene editor to see if you could "remove" animations and it looks like no one can.
Jeez, I wish we had someone more experienced with data to help us. I have no idea what I'm doing here.
0
Did you view the nydus worm in the cutscene editor to see what its animation names are? I hate that we need to do this because in warcraft 3's editor you could view any and all models and animations right in the sidebar really easily.
Edit: And by "always play the same birth animation" you mean you want to eliminate all the other variations in the actor events?
0
This has probably been asked before but I've been searching for it through the searchbar and it yields no results.
I'm trying to make a custom structure where I copied the actor from an "igloo" from warcraft 3. I know the issue isn't that it's a warcraft 3 actor because I'm also using another warcraft 3 actor (the ice troll hut) for a different building and that one works 100% as expected.
I still can't upload images to show what's going on so, here are some image links (couldn't use imgur, it was giving me "error, try again" perpetually) of the screenshots and the map itself so everyone can take a look.
https://ibb.co/3McQGbm - general actor properties of the building that won't turn up
https://ibb.co/jggbjkm - events of the actor that won't turn up
https://www.dropbox.com/s/c8e15w7gg9bmoh7/mikayla.SC2Map?dl=0 - the map, so you can look at it
EDIT: Further testing reveals if I change the actor that if I copy ANY other actor (besides the igloo) then it will work as I want it to. Why does only the igloo actor not work?
EDIT 2: Even further testing reveals that if I copy a new model (like, say, the chieftan's hut model, from the models tab) and apply that model to the actor, it will still work. BUT if I change the model (in the models tab) to the igloo, then it, once again, doesn't work and comes out blank after construction finishes.
EDIT 3: Another test reveals if I change the actor to a known working actor then go into the model of that actor and change it to the igloo (even if it's a default unit being built from a default build ability from a default unit) it will be blank after being built.
0
Confirmed this only works... sometimes. I tried to follow the "custom builder" part but the "terran construction" ability doesn't exist.
0
In reply to Forge_User_68728548:
0
0
It appears that if you try to enable all 3 of them by their story mode upgrades through triggers, only the one for your picked race will work and the other two will not (ex: if you're playing as Terran and give all 3 upgrades, automated refineries will work but if you try to build an orbital assimilator or automated extractor then they won't do anything but act like the geyser is tapped out). What's going on here?
EDIT: Nevermind, there was a validator in one of the behaviors for automated gas extraction for each race that stops the extraction from happening if there is no town hall (ex: Nexus, Hatchery, Command Center) for the appropriate race. I didn't know before I built the automated refineries for the other races.
0
Alternatively, you could also add the unit to the unit group when it enters the map.
0
The way I do it in wave-based attack maps is I make a trigger where the event is "Any unit enters Entire Map" and then in the conditions check to see if the entering unit is from the owner of the enemies that I'm making attack. Then issue the order.
If you're looking to add all units of the player who owns the Infested to a unit group (including remainders) at every 300 seconds (or whatever interval you want to use) you could add a "Unit Group-Pick each unit in (Any units in (Entire Map) owned by player [insert the player number of the player who owns the enemies] Excluded: Missile, Dead Hidden, with at most Any Amount) and do (Actions)" action either at the beginning or the end of your trigger that creates the enemies. and in the "Actions" of that Pick Units action put a "Add (Picked Unit) to Unit Group" action.
It would look like this:
As for the "Attack a specific point" trigger, I usually just do this:
0.944705882352941
Apparently you need to do some XML editing to do this.
https://www.sc2mapster.com/forums/development/ui-development/165360-activate-classic-text-crawl
0
0
I'm having trouble understanding your question with how it's worded... but from what I understand you want to have random heroes created for each player (Zeratul, Raynor, or Alarak) and have them be revivable.
So you want each player to be stuck with the hero they get in the map initialization or constantly receive a random hero whenever their hero dies? I'm going to assume, for now, you want them to keep the Hero they start with.
Here's what I'd do...
This should be able to handle your creation and revival needs at a VERY basic level.