Staredit Network

Staredit Network -> Concepts -> Kills-to-Cash: Defense version
Report, edit, etc...Posted by Wing-of-no-Wing on 2006-01-26 at 21:05:59
Note: this method was purely theoretical at the time of this post. It has since been tested (see map below).

This has probably been thought of before, but none of the tutorials on Kills-to-cash list it, so here goes...

So let's say that you're working on a defense map, and you want to use units with splash damage, and lots of them, enough that the enemy is frequently losing multiple units at once, so that not even hyper triggers can make a conventional kills to cash system work happily. It is fully possible to keep track of your kills exactly, with no chance of glitching.

See, in making a defense, you have a huge advantage over map-makers using a kills-to-cash system for any other purpose, namely, you know what kind of unit the computer will have at any given time. Because of this, all you have to do is use that knowledge to translate kill score to kill amount, and you will have a splash-friendly kills to cash. Simply use a series of direct score-to-cash triggers with your method of level tracking in the conditions, so that for any given level, the score-to-cash trigger is active that accurately converts the score of one such unit to one kill. Add as the condition of each level that your score is gone, since this method processes your kills one at a time no matter how many you have had, so one or two might be queued up at the end of the level, especially with slower hyper- or unhyper triggers.

Example: Let's say that your first level is a level of marines, and your second level is a level of defilers. Let's say also that you're using gas to keep track of levels, though whatever system you want to use is OK so long as you can make a condition off of it. You would have a trigger activated by 1 gas and 100 score that removes the 100 score for a kill, and another trigger activated by 2 gas and 450 score that removes the 450 score for a kill.

For only one trigger a level you get direct conversion of kills to cash.
Report, edit, etc...Posted by nimadude on 2006-01-26 at 21:20:39


You could simply make the cash trigger work like so:

Current player has at least 100 kill score, subtract 100 kill score, add 1 gas.

So no matter how many kills u get, they all give you a final score, and that score is eventually converted.
Report, edit, etc...Posted by Wing-of-no-Wing on 2006-01-26 at 21:22:39
Actually, no. See, different units have different kill scores. So under your method, you would get more minerals for more valuable units. Under mine, you wouldn't.
Report, edit, etc...Posted by nimadude on 2006-01-26 at 21:30:10
QUOTE(Wing-of-no-Wing @ Jan 26 2006, 06:22 PM)
Actually, no. See, different units have different kill scores. So under your method, you would get more minerals for more valuable units. Under mine, you wouldn't.
[right][snapback]414000[/snapback][/right]


Exactly, higher valued units should yield more cash.

Otherwise you could get a set of all the values for each unit and work it out.
Report, edit, etc...Posted by FatalException on 2006-01-26 at 21:32:31
Whoa... Wait. If you explain this in terms of triggers, and it worked, YOU WOULD BE MY HERO!!! Seriously, work on this, perfect it, and tell me how to do it! biggrin.gif
Report, edit, etc...Posted by Wing-of-no-Wing on 2006-01-26 at 21:34:17
The point isn't to make higher valued units give a different amount of cash, since the mapmaker might want to use less valuable units for higher levels (especially zerglings). The point is to accurately keep track of the kills. Different conversion factors can be built into the individual level triggers: they don't have to be exactly identical if you don't want them to be.

Addition: I'll see what I can do about working a quick proof-of-concept map, just to show things in action and iron out any difficulties...

Oh and, if you ever absolutely have to make a defense map WITHOUT hyper triggers, this system will still work, only with a bit of added delay between levels while the score dequeues.

Addition 2: System tested! Everything works exactly as it should. Please see the attached map. The map is a simulated defense with 3 levels. The first level is 2 ultralisks, the second level is 9 zerglings, and the 3rd level is 20 SCVs. When you have killed everything, you will have 31 minerals. Levels 1 and 2 use the bare minimum of the system, processing one kill at a time. The 3rd level demonstrates the ability to use tiered conversions with this system for faster running: if you've killed a bunch at once, it will process them five at a time, until you have less than 500 kill score left (each scv = 100 score), and then it will go to 1 at a time, which is how it processes individual kills. Feel free to kill units with the firebat, the tank, or even the nuke, as many at a time as you want.
Report, edit, etc...Posted by Carlsagan43 on 2006-01-26 at 23:47:24
Its nice, but its not practical to make an extra 30 triggers so that the player gets a few more kills. it would be easier to just spread out the enemies so that multikill cant come up at all (expecially with a path defense)
Report, edit, etc...Posted by Wing-of-no-Wing on 2006-01-27 at 08:08:30
I made the test map for this in a couple of minutes tops, and a good bit of that 120 seconds was taken up by making the "levels", so making the triggers for this system wouldn't take that long. The fact is, sometimes you want to allow multikill (because it lets the player exploit splash damage, and looks cool), and sometimes (especially if the player makes the path, as in Path D, where your income seems to vary depending on how much the normal kills to cash malfunctions) you can't help it. While I concede that the system does take a little longer to make, especially if you use tiered versions, I'm sure some map makers will want their defense's kills to cash to be, well, exact.
Report, edit, etc...Posted by AgenT_Nick on 2006-01-27 at 09:50:04
ive seen it b4. lurker d 16way
Report, edit, etc...Posted by Wing-of-no-Wing on 2006-01-27 at 11:55:02
I expected that someone might find a copy of it in practice somewhere (see the start of the first post). It still needed to be on the site, though, so that defence makers won't always be referred to systems that are less suited to their purposes
Report, edit, etc...Posted by Urmom(U) on 2006-01-27 at 20:19:41
Umm, nothing really new. In the tutorial it sais to put the triggers in order of the highest to lowest kill score which would most likely fix the problem. This would work good though if there are two units with the same kill score. Even then, you could just use the "Computer commands at least 1 <Unit>" or "Computer suffers at least 1 death of <unit>. Then you don't really need to keep track of the levels.
Report, edit, etc...Posted by Doodle77(MM) on 2006-01-29 at 12:14:20
This system is for if you want accurate conversion like f/e
Level 1:Gerard Dugalle give 4800 score. You want it to give 1 mineral for each kill.
Level 2:SCV give 100 score. You want 48 to give 48 minerals.
this allows you to give 1 for the dugalle and 48 for the SCV's
Report, edit, etc...Posted by Demaris on 2006-01-29 at 17:11:07

No, this would allow it to be 1 for Gerard and 1 for SCVs.
Report, edit, etc...Posted by Wing-of-no-Wing on 2006-01-29 at 21:11:18
QUOTE(Moose77 @ Jan 29 2006, 12:14 PM)
This system is for if you want accurate conversion like f/e
Level 1:Gerard Dugalle give 4800 score. You want it to give 1 mineral for each kill.
Level 2:SCV give 100 score. You want 48 to give 48 minerals.
this allows you to give 1 for the dugalle and 48 for the SCV's
[right][snapback]415865[/snapback][/right]



QUOTE(Heretic @ Jan 29 2006, 05:11 PM)

No, this would allow it to be 1 for Gerard and 1 for SCVs.

[right][snapback]416065[/snapback][/right]


It would allow you to set the exchange rate to whatever you want, regardless of the initial score of the unit OR whether the unit is used for more than one level. You could have multiple minerals per kill by adjusting the reward part of the trigger, OR multiple kills per mineral by setting the score condition to some multiple of the kill score for the unit of that level. So, in a sense, you're both right.

That, incidentally, is one of the two advantages that this system has over the more complicated system from the tutorials described by Urmom: you could have one level be unit X at a certain HP, or a certain number of them, and another level be unit X at a certain HP, and you can make them be worth exactly the same amount OR different amounts, and because the tracking is level-based, it wouldn't matter that the unit has already been used. The other advantage is that, since you already have to have some way of knowing what level is running, there's no chance of a glitch coming from your other way of determining conversion factor: For example, if you use a Commands condition, what if you need the computer to have a unit of the same type elsewhere? Some defence maps have areas where you can see what units are coming. If you use a Deaths condition, you have to either reset the deaths, which you may want to keep track of, or not, in which case you have difficulty with multiple levels of the same unit.
Report, edit, etc...Posted by smasher25 on 2006-01-29 at 21:47:06
For the kills for money I just add the kill counter switch. For the custom scores I think that its good to experiment everything. I experiment all the time when I make maps. (perhaps a little too much because I tested incomplete maps before I got my router and somehow the router kept me from hosting games)
Report, edit, etc...Posted by oneil on 2006-02-12 at 21:08:02
Here's a modified take on a classic cash-for-kills trigger I've created. Basically the problem with this trigger (kill at least 1 unit, give 1 mineral) was when multiple units were killed the minerals were off. Classic problem.. Therefore I created 2 copies of this trigger and made them for 2 and 3 kills. The order of these triggers is crucial:


Trigger
Description:
oneil's cash for kills 3
Players:
¤ Player
Conditions:
¤ Current Player Kill count is at least 3
Actions:
¤ Add 3 Mineral
¤ Set Kills to 0
¤ Preserve



Trigger
Description:
oneil's cash for kills 2
Players:
¤ Player
Conditions:
¤ Current Player Kill count is at least 2
Actions:
¤ Add 2 Mineral
¤ Set Kills to 0
¤ Preserve



Trigger
Description:
oneil's cash for kills 1
Players:
¤ Player
Conditions:
¤ Current Player Kill count is at least 1
Actions:
¤ Add 1 Mineral
¤ Set Kills to 0
¤ Preserve



With this setup, mineral count is accurate and unfailing. If you plan on killing more units at once (mine had high hp so max that died at once were mebbe 2-3) just add a couple more of these..
Report, edit, etc...Posted by Staredit.Net Essence on 2006-02-12 at 21:18:48
Been done, nothing new and it is in tutorial.
Report, edit, etc...Posted by oneil on 2006-02-12 at 21:24:56
In that case allow me to delete my post.
Report, edit, etc...Posted by Azu on 2006-02-13 at 02:53:26
It's simple

It's nothing new

And it requires lots of triggers, you may as well use

Curent player kill score is at 10 add 1 mineral

Curent player kill score is at 20 add 1 mineral

etc

...

Report, edit, etc...Posted by Kumano on 2006-02-14 at 05:42:12
QUOTE(oneil @ Feb 12 2006, 06:08 PM)
Here's a modified take on a classic cash-for-kills trigger I've created. Basically the problem with this trigger (kill at least 1 unit, give 1 mineral) was when multiple units were killed the minerals were off. Classic problem.. Therefore I created 2 copies of this trigger and made them for 2 and 3 kills. The order of these triggers is crucial:





Trigger
Description:
oneil's cash for kills 3
Players:
¤ Player
Conditions:
¤ Current Player Kill count is at least 3
Actions:
¤ Add 3 Mineral
¤ Set Kills to 0
¤ Preserve






Trigger
Description:
oneil's cash for kills 2
Players:
¤ Player
Conditions:
¤ Current Player Kill count is at least 2
Actions:
¤ Add 2 Mineral
¤ Set Kills to 0
¤ Preserve






Trigger
Description:
oneil's cash for kills 1
Players:
¤ Player
Conditions:
¤ Current Player Kill count is at least 1
Actions:
¤ Add 1 Mineral
¤ Set Kills to 0
¤ Preserve

With this setup, mineral count is accurate and unfailing. If you plan on killing more units at once (mine had high hp so max that died at once were mebbe 2-3) just add a couple more of these..
[right][snapback]425831[/snapback][/right]


No, that doesn't work because you are using an action that doesn't exist in Starcraft (set kills). You can only set the kill score, which is a lot different than kills.
Report, edit, etc...Posted by IanMM on 2006-02-15 at 11:35:42
I use this in my battle front map:


Trigger
Description:
Kill board
Players:
¤ all players
Conditions:
¤ Always
Actions:
¤ Display kill board
¤ comment: I always use these




Trigger
Description:
Now to cash
Players:
¤ 1-8
Conditions:
¤ current player has at least 1 kill score
Actions:
¤ subtract i kill
¤ add 5 minns
¤ preserve trigger
¤ comment: oh ya

Next Page (1)