• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Help for StarEdit, and one question

Status
Not open for further replies.
Level 2
Joined
Apr 19, 2017
Messages
15
I was about to make an optional objective where you free Terran units by destroying the mature Crysalis'. But I don't know what are the exact triggers for that.

and also does the maps that are made in version 1.16.1 also works on latest versions and remastered too? (it's not modded tho)
 
Last edited:
Level 2
Joined
Apr 8, 2019
Messages
6
You're going to need to provide more details on your problem if you want a decent answer.
This answer is written on the assumption that you want:
1) A player to receive some Terran units
2)That are already present on the map
3) Upon destroying a Chrysalis

The trigger would be:
Players:
(Human Player)
(Player that owns the Chrysalis)
(Player that owns the Terran units that are rescued)
Conditions:
(Chrysalis owner player) has suffered the deaths of exactly 1 mature chrysalis [Assuming that there is only one Chrysalis on the map]
Actions:
Give all any unit owned by (Player that owns the Terran units that are rescued) at location anywhere [Alternatively, you can create a specific location from which the units are rescued and use that instead of "Anywhere"] to (Human player)

And yes, if a map is made using an earlier version of StarCraft but does not use mods or EUDs or certain map protectors, it should work with the latest version and remastered. That's why creators don't have to remake maps from scratch every time Brood War gets patched :) .
 
Last edited:
Level 2
Joined
Apr 19, 2017
Messages
15
well, the problem is, I can't see a condition where the players suffered deaths at location. it only has a deaths condition.
 
Last edited:
Level 2
Joined
Apr 8, 2019
Messages
6
My bad, I thought that the deaths trigger also had a location modifier. But yeah, just use the deaths trigger.
 
Level 2
Joined
Apr 19, 2017
Messages
15
Also... how can I make the AI zerg use nydus canals with triggers?

I always thought this was the case

Condition
Zerg Player brings atleast 1 every unit to location nydus entrance
Trigger
RUN AI SCRIPT: Enter transport

But it never worked.
 
Level 2
Joined
Apr 8, 2019
Messages
6
The AI can neither use nor build Nydus Canals in SC. You're out of luck.

In case you're wondering, the way Blizzard had Zerg pop out of Nydus Canals in Protoss Mission 1 of Brood War was by simply using a create units trigger to create units next to the Nydus Canal and to then play the Nydus sound. The trigger was set to execute when the player brought a unit to a location next to the Nydus Canals and as long as the AI actually had a Nydus Canal. But the AI isn't truly using the Canals; in fact, they are non-functional and do not have exit points.

What exactly do you want to happen on your map, why, and what do you want to set off the Nydus rush? Depending on these things, there might be similar workarounds using trigger magic.
 
Last edited:
Level 2
Joined
Apr 19, 2017
Messages
15
Well, I was gonna make a scene where a marine and his dark templar friend was surprised by the zerg, it turns out that the zerg that attacked them came from a nydus canal, so the player must destroy the nydus canal to prevent more zerg units from attacking. but thanks anyway.
 
Level 2
Joined
Apr 8, 2019
Messages
6
In that case, here's what you can do. This will give the computer the appearance of using a pre-placed Canal, which seems good enough for your purposes.
Firstly, you place a Nydus Canal wherever you want it to be. Then, make a location around the Nydus Canal, make it a bit large. At least this large:

upload_2019-4-21_15-48-21.png


I'll refer to it as "DOOMTUNNEL" from now on. Then, make another location at wherever you want the Zerg to attack; I'll refer to that location as "OHSHIT" from now on.
Then, create a switch. I trust that you know how these work. I'll refer to that switch as "Rush" from now on.

Then, you can create the following Triggers.

CONDITIONS:
[Whatever you want to actually start the attack, whether that is the player building a few units, a certain amount of time elapsing, a switch being set or cleared,or bringing a unit to a certain location]
ACTIONS:
Set switch "Rush"

Then


CONDITIONS:
"Rush" is set. [This trigger is just labelled "Switch" in the editor]
(AI Player) brings at least 1 buildings to "DOOMTUNNEL"
ACTIONS:
Wait for [Some amount of time, if you want there to be a time delay between waves of Zerg. If this action is absent, Zerg will just pour out nonstop with absolutely no delay]
Create [Desired Number] [Desired Unit] at "DOOMTUNNEL" for (AI Player) [You can use this action multiple times if you want there to be a few different units.]
Play sound\Misc\IntoNydus.wav
Issue Order to all men owned by (AI Player) at "DOOMTUNNEL" attack to "OHSHIT"
Preserve Trigger [This will cause the Trigger to execute continuously as long as the conditions are met. If the "Preserve Trigger" action is absent, then the Trigger will only fire once and never fire again].

This trigger will cause Zerg to appear at a Nydus Canal and attack a certain area once something sets it off and for as long as the Nydus Canal is alive.

Now, you need to import sound files to your map to actually use the play trigger. To do this, you go to Scenario>>>Sound Editor in your map editor. Then, look in the "Available game sound files (Virtual Sounds) box that appears. It should be the bottom one.

upload_2019-4-21_15-44-32.png

Find the IntoNydus file, click it once so that it is highlighted in blue, then click the "Add!" button. Now you can play it on your map.
 
Last edited:
Level 6
Joined
Mar 31, 2012
Messages
169
Just note that the play sound trigger would make it play for the player even if their screen was elsewhere. You can't detect screen position in SCBW (maybe with EUDs, not sure) so what I'd do is set a death or a switch instead of playing the sound, then use another trigger to detect that death/switch being set and play the sound IF the player's units are in a wider location around the Nydus (to simulate them being in earshot). If you wanna get real creative you can add a switch when you use the 'mute non-trigger sounds' action and have a copy of that trigger that plays a quieter version of the intonydus.wav.

The AI can neither use nor build Nydus Canals in SC. You're out of luck.
You can tell the AI to build them by modding the AI.

As for using them.... Soon.
 
Level 6
Joined
Mar 31, 2012
Messages
169
Sure, just have a location around the nydus entrance/exit and do `Current player brings at least 1 nydus canal to "entrance"` and `Current player brings at least 1 [men] to "entrance"` for the conditions, then move them to "exit" and preserve trigger. You'll only be able to reliably do this as a one-way teleport, though, unless you feel like getting really silly.
 
Level 2
Joined
Apr 19, 2017
Messages
15
One last thing... I'm gonna make a hero mechanic from Heart of the Swarm where if the hero dies he will be revived on a nearby hive cluster. What are the exact conditions and actions for that?
 
Level 6
Joined
Mar 31, 2012
Messages
169
First thing to note is that you have no simple way to pick the closest town hall to the hero. Starcraft will find a matching unit that is the closest to the upper-left-most tile of the map. If your player is zerg, you further complicate things since their town hall can be one of three units. There's probably a simpler solution than this, but here's my quick and dirty set. I'd recommend including hypertriggers in your map to make sure the countdown timer window is handled properly, but otherwise it should work out of the box.

Trigger 1 - Move respawn location to hive IF there are no town halls in that location.
Conditions:
Player X brings exactly 0 Zerg Hatchery to Location.
Player X brings exactly 0 Zerg Lair to Location.
Player X brings exactly 0 Zerg Hive to Location.
Player X brings at least 1 Zerg Hive to Anywhere.
Actions:
Move Location to Zerg Hive owned by Player X at Anywhere.
Preserve trigger.

Trigger 2 - Same as trigger 1 but if the player only has lair(s).
Conditions:
Player X brings exactly 0 Zerg Hatchery to Location.
Player X brings exactly 0 Zerg Lair to Location.
Player X brings exactly 0 Zerg Hive to Anywhere.
Player X brings at least 1 Zerg Lair to Anywhere.
Actions:
Move Location to Zerg Lair owned by Player X at Anywhere.
Preserve trigger.

Trigger 3 - Same as trigger 1 but if the player only has hatcheries.
Conditions:
Player X brings exactly 0 Zerg Hatchery to Location.
Player X brings exactly 0 Zerg Lair to Anywhere.
Player X brings exactly 0 Zerg Hive to Anywhere.
Player X brings at least 1 Zerg Hatchery to Location.
Actions:
Move Location to Zerg Hatchery owned by Player X at Anywhere.
Preserve trigger.

Trigger 4A - Set countdown timer for hero respawn. (This makes a visible timer, so if you don't want this, or if you're already using a timer for some other purpose, see trigger 4C)
Conditions:
Player X has suffered at least 1 deaths of Hero.
Actions:
Set deaths for Player X - Hero to 0.
Set countdown timer - set to 60 seconds.
Preserve trigger.

Trigger 4B - Set switch for hero respawn.
Conditions:
Countdown timer is exactly 1 second.
Switch HeroCanRespawn is cleared.
Actions:
Set switch HeroCanRespawn.

Trigger 4C - Run this for a computer player that has no other waits. Invisible timer.
Conditions:
Player X has suffered at least 1 deaths of Hero.
Actions:
Set deaths for Player X - Hero to 0.
Wait 60000 milliseconds.
Set switch HeroCanRespawn.

Trigger 5 - Respawn hero IF player brings a factory-class building to Location. I used Create Unit With Properties to make the hero spawn with full energy if applicable.
Conditions:
Switch HeroCanRespawn is set.
Player X brings at least 1 [factories] to Location.
Actions:
Clear switch HeroCanRespawn.
Create unit with properties - Hero at Location.
 
Level 2
Joined
Apr 19, 2017
Messages
15
How about the trigger where the hero respawns to the primary hive cluster instead... or tell me where to put the hyper trigger. I know how to use the hyper trigger but I don't know where to put them...
 
Level 6
Joined
Mar 31, 2012
Messages
169
My system should default to hive first, then lair, then hatchery.

Hypertriggers can be run for any human, computer, or rescuable player that don't have any wait trigger actions. So where you run them, just don't have any triggers that wait.
 
Status
Not open for further replies.
Top