Staredit Network > Forums > SC1 UMS Mapmaking Assistance > Topic: Help with Kill triggers
Help with Kill triggers
Dec 21 2009, 8:28 pm
By: Kaaysel  

Dec 21 2009, 8:28 pm Kaaysel Post #1



Yeah so, let's say, i'm trying to make a map where you gotta kill ANY enemy units from ANY player to score 20 kills. The problem is that when i try to use the "Kill" condition, it asks me WHICH player needs to score 20 kills (Lets say it's force 1), then it asks me the quantity mode (Exactly) and the quantity number (20) and of WHICH unit (any), but it doesn't ask me which player/force the units that are to be killed must be from.

Therefore, i don't know how to make this victory condition work. It might sound silly i know.

So yeah, if anyone can help PLEASE. And thans beforehand, too.



None.

Dec 21 2009, 8:37 pm BaneOfRome Post #2



Since the player can kill ANY unit from ANY player, the trigger you have should work.

Edit : The actual trigger.

Conditions :
Current Player kills Exactly 20 [any unit].
Actions :
Victory



None.

Dec 21 2009, 8:38 pm Kaaysel Post #3



Yeah but it's a 4-way battle with 2 players on each team, so what if they kill eachother just to earn their kills and win? That'd be lame.

Sorry for not including this information though, i forgot >.<.



None.

Dec 21 2009, 8:40 pm Jack Post #4

>be faceless void >mfw I have no face

Try Perfect Kills to Cash, but add to a deathcount instead of minerals. Then, when the deathcount reaches 20, victory. I can explain more if necessary.



Red classic.

"In short, their absurdities are so extreme that it is painful even to quote them."

Dec 21 2009, 8:41 pm Kaaysel Post #5



...Yes it's kinda necessary...

Sorry i don't really understand too much concepts of "advanced" map-making. Heck, only recently i started using Scmdraft 2.



None.

Dec 21 2009, 9:07 pm Jack Post #6

>be faceless void >mfw I have no face

You want to read these articlds
http://www.staredit.net/wiki/Kills_To_Cash
http://www.staredit.net/wiki/Death_Counters

But when i think, the easiest way is probably something along the lines of a trigger like this.

Player 1
Current player has killed exactly one Men owned by force 2

Actions:
Set deaths, add 1 deaths of Cantina for Player1

Trigger 2

Player 1
Current player has killed exactly two Men owned by force 2

Actions:
Set deaths, add 1 deaths of Cantina for Player1

Keep copying these triggers, 20 times total, adding 1 to the kills in the condition. Then copy all those triggers twice each, and change the force in the first twenty to force 3, and the force in the next twenty to force 4.

Then add
Player 1
Conditions
Current player has suffered exactly 20 deaths of cantina.

Actions
End game in victory for current player

Copy THAT trigger 7 times, changing who runs the trigger from player 1 to player 2, 3 etc.

I'll stop now, there's more to be done but I'm busy ATM. That method is the simplest, although fairly tedious.



Red classic.

"In short, their absurdities are so extreme that it is painful even to quote them."

Dec 21 2009, 9:26 pm Kaaysel Post #7



Well it does seem simple enough. Thanks for the help.

EDIT: Although in the first post i state that the trigger condition does not give me the option to specify which force the unit to be killed must be from. This is the main problem.



None.

Dec 21 2009, 9:53 pm NudeRaider Post #8

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Quote from name:zany_001
But when i think, the easiest way is probably something along the lines of a trigger like this.

Player 1
Current player has killed exactly one Men owned by force 2
[...]
That condition does not exist




Dec 21 2009, 9:57 pm Jack Post #9

>be faceless void >mfw I have no face

Quote from NudeRaider
Quote from name:zany_001
But when i think, the easiest way is probably something along the lines of a trigger like this.

Player 1
Current player has killed exactly one Men owned by force 2
[...]
That condition does not exist
Ugh. OK, then you need to use the more complicated Kills to Cash system I believe. Read up on the article, and ask for help on anything you don't understand.

How many unit types are there on the map that are killable? It's easier if you only have one kind of unit, say terran marine, that can be killed.



Red classic.

"In short, their absurdities are so extreme that it is painful even to quote them."

Dec 21 2009, 10:18 pm Kaaysel Post #10



Well, there's Dragoon, Archon, Hero Ghost, Marine and Probe.

EDIT: Screw it might as well use lives instead of goal kills.



None.

Dec 21 2009, 10:23 pm Jack Post #11

>be faceless void >mfw I have no face

5 killable units would be easy enough, but yeah, stick with simple stuff until you think you're ready for advanced stuff like kills to cash.



Red classic.

"In short, their absurdities are so extreme that it is painful even to quote them."

Dec 21 2009, 10:24 pm Kaaysel Post #12



I will. I have, actually. I tried to make a respawn system for weapons but it got too messy so i just leave them there, so that everyone picks but once you die you lose all earned weapons.



None.

Dec 22 2009, 2:17 am rockz Post #13

ᴄʜᴇᴇsᴇ ɪᴛ!

uh, if you're not killing multiple units at the same time, use deaths and kill score to detect who killed what, then make the "cash" a dc instead of minerals.



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Dec 22 2009, 2:30 am Jack Post #14

>be faceless void >mfw I have no face

Quote from rockz
uh, if you're not killing multiple units at the same time, use deaths and kill score to detect who killed what, then make the "cash" a dc instead of minerals.
As I said, Kills to Cash, but adding a DC instead of minerals...but he decided that was too complicated.



Red classic.

"In short, their absurdities are so extreme that it is painful even to quote them."

Dec 22 2009, 2:50 am rockz Post #15

ᴄʜᴇᴇsᴇ ɪᴛ!

5 triggers isn't that complicated



"Parliamentary inquiry, Mr. Chairman - do we have to call the Gentleman a gentleman if he's not one?"

Dec 22 2009, 4:01 am Kaaysel Post #16



Well i think the problem is in that it's 4 teams of 2 players each, in the map i'm making, and they could just kill each other to earn the kills, which would be quite lame. Besides, life system is much easier, and allows me to give bonuses to the ones with less chance of winning.



None.

Dec 22 2009, 5:40 am NudeRaider Post #17

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

You could add a check for deaths of the other forces. This isn't perfect when an enemy dies the same time you're killing your teammate, but if you penalize teamkills they'll most probably lose more money than they are making through slips in the trigger system. Btw. Hyper triggers are a must for that.

Or just give each team different units. Then you know exactly who has been killed by whom.

I just realized that you can also check for deaths. If in a team a unit dies while no enemy team has made a kill you know this team has teamkilled. Maybe as an additional check for the above...

Post has been edited 1 time(s), last time on Dec 23 2009, 5:46 am by NudeRaider.




Dec 22 2009, 5:16 pm DavidJCobb Post #18



A way of doing this could be to check kills and deaths. If a player has a death and his enemies have no kills, then reset that player's death counters and handle the incident (which is either a teamkill or him killing his own units). If a player has a death and at least one enemy has a kill, then his unit was killed by an opponent; reset the deaths and kills and handle the incident.

I use Current Player and Foes for checking, so I can use the same few triggers for all relevant players. I've attached a map to demonstrate.

Attachments:
TEST - Kill Detection.scx
Hits: 0 Size: 39.58kb



None.

Dec 23 2009, 5:50 am NudeRaider Post #19

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Quote from DavidJCobb
A way of doing this could be to check kills and deaths. If a player has a death and his enemies have no kills, then reset that player's death counters and handle the incident (which is either a teamkill or him killing his own units). If a player has a death and at least one enemy has a kill, then his unit was killed by an opponent; reset the deaths and kills and handle the incident.

I use Current Player and Foes for checking, so I can use the same few triggers for all relevant players. I've attached a map to demonstrate.
Thanks for reiterating what I said.
But there was a reason why I suggested enemy force instead of foes: You can just unally and your former teammate becomes a foe.
However I just realized that there is a simple workaround: Always ally everyone to its own force.




Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[2024-5-10. : 8:46 pm]
NudeRaider -- Brusilov
Brusilov shouted: Hey, what happened to EUDDB? Is there a mirror for it somewhere? Need to do a little research.
https://armoha.github.io/eud-book/
[2024-5-10. : 8:36 am]
Brusilov -- Hey, what happened to EUDDB? Is there a mirror for it somewhere? Need to do a little research.
[2024-5-09. : 11:31 pm]
Vrael -- :wob:
[2024-5-09. : 8:42 pm]
Ultraviolet -- :wob:
[2024-5-08. : 10:09 pm]
Ultraviolet -- let's fucking go on a madmen rage bruh
[2024-5-08. : 10:01 pm]
Vrael -- Alright fucks its time for cake and violence
[2024-5-07. : 7:47 pm]
Ultraviolet -- Yeah, I suppose there's something to that
[2024-5-06. : 5:02 am]
Oh_Man -- whereas just "press X to get 50 health back" is pretty mindless
[2024-5-06. : 5:02 am]
Oh_Man -- because it adds anotherr level of player decision-making where u dont wanna walk too far away from the medic or u lose healing value
[2024-5-06. : 5:01 am]
Oh_Man -- initially I thought it was weird why is he still using the basic pre-EUD medic healing system, but it's actually genius
Please log in to shout.


Members Online: 2adrianc51100hr9, 1adrianc1491gB4