Sacrifice?

HalosNTariff

New Member
Reaction score
13
Hi, I'm making a map in which it is possible to play as demons.

However I intend to make it so that demon players will have to use 'tortured souls' to produce the majority of their units, these souls having come from sacrificed 'slaves'. I figured I could use the undead sacrifice ability to turn slaves into souls but I cannot see a feild to alter which will change the units involved.

Also, how would I go about making souls into demons? Is it possible for me to make a building which can store souls only and the number of souls in the building determines the type of units you can create? If so how?

Thanks in advance.
 

LightChaosma

New Member
Reaction score
60
2. whenever you want to buy a unit, count the number of souls owned by buying player. if that number is greater than the cost, kill X souls, and create a unit
 

Siretu

Starcraft 2 Editor Moderator
Reaction score
293
You could also use the resources to keep count. Whenever you sacrifice a slave you get a lumber(Which you can change in game constants or something) You could also make it create a tortures soul every time you sacrifice. Then when you do a new demon you could kill the amount of souls needed. It'd make a nice visual effect.
 

duderock101

Check out my 2 Player Co-op RPG!
Reaction score
71
You could actually try and keep the acolyate, mabye create a custom unit off the acolyte and change model and stats and then see if that will work?
 

HalosNTariff

New Member
Reaction score
13
Regretably I cannot change the lumber to souls as I have other races available who still use lumber...unless it is possible to change lumber for only one person?

I've had an idea as to how to create the souls, If I set slaves point value to something obscure and then set a trigger so that whenever a unit with that point value dies a soul is spawned. However how would I get the soul to spawn at the spot where the unit dies? I recall that there is a way but I cannot remember what it is...

Then I still need a way of applying different levels of souls to different units...

Thanks
 

Samael88

Evil always finds a way
Reaction score
181
If you use point value as you said you can use the level of the units to check how many souls it should produce.


Here is how to get the souls to spawn where the slaves die:
Code:
Event
A Unit Dies

Conditions
Unit is a slave

Actions
Set A = Position of dying unit
Create 1 Soul at A facing...
Custom Script: call RemoveLocation(udg_A)

A is a point variable.
call RemoveLocation(udg_A)
They are there to remove the leak being created when using a create unit at POINT function. It is called a point-leak and is EVIL.

udg= User Defined Global, this means that you have used the variable editor to create the variable.
A is just the name of the variable.
It can be this to: call RemoveLocation(udg_TempPoint)
as long as the variables name is after the "udg_"
 

Faust

You can change this now in User CP.
Reaction score
123
There are two sacrifice skills I think. Check everything on Shade, and Sacrificial Pit
 

TechGeek001

New Member
Reaction score
3
I don't have WE open at the moment, but wouldn't you have to send all those souls to a certain other unit to be sacrificed?
What I'd do is control 'em all via triggers.
Player owns 5 souls -> kill every unit matching Soul -> create 1 <unit> at <point>.
Needless to say I'm in the middle of a coffee shop with no WE open.
 

HalosNTariff

New Member
Reaction score
13
Thanks everyone, I have most of the triggers working now.

I have dropped the sacrificial altar unit as it was causing me to get fatal errors, so instead now whenever you kill a Slave you have a 50% chance of a Soul appearing on the corpse.

However I'm now having problems with using souls to create units. I have made a test trigger using voidwalkers:

Player One Voidwalker
Events
Unit - A unit owned by Player 1 (Red) Begins training a unit
Conditions
(Trained unit-type) Equal to Voidwalker
Actions
Set TorturedSoul = (Units owned by Player 1 (Red) of type Tortured Soul)
Set NoSouls = (Number of units in TorturedSoul)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
NoSouls Greater than 2
Then - Actions
Unit - Order (Picked unit) to train/upgrade to a Voidwalker
Unit - Kill (Random unit from TorturedSoul)
Unit - Kill (Random unit from TorturedSoul)
Else - Actions
Game - Display to Player Group - Player 1 (Red) the text: Not enough Tortured...
Unit - Remove (Last created unit) from the game

However there are several problems with this, firstly it doesn't seem to prevent voidwalkers from being trained even if there are not enough souls (2 in this case.) Secondly I'm sure that there is a better way to remove Tortured Souls than killing them one by one but I can't find it. Finally when there are two tortured souls left then those two are not destroyed if I summon a futher voidwalker. Does anybody know how to fix these points?

Thanks in advance.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top