• 🏆 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!

Unit/Race Creation Help needed

Status
Not open for further replies.
Level 5
Joined
Jun 21, 2013
Messages
116
I am making a map with not just 4 original races, but many more, and I'm trying to make them unique, and not just build buildings, build army and attack style.
So I got an idea about making Dream Eater race, which would basically have only 1 unit, a Dream Eater. Dream Eater is a hero who doesn't gain attributes by leveling up, but by defeating units inside their dreams, he is invisible and doesn't initiate and when he reaches level 20, he can assume physical form, and when he gets strong enough, he could kill whole armies.
Now on my problem: I need to make trigger so that when he targets an enemy with an ability, they both fall asleep. Near them should be formed an SFX ring which only Dream Eater could see and they would fight inside the target's dreams, which mean no intervention from outside units. If possible, they should be invisible for everybody except Dream Eater. If the dream eater kills the target inside the dream, he should gain attributes.

Short summary of the spell:
From Dream Eater's perspective:
-Ring forms around him and the target
-Spectral units that are equal to Dream Eater and target fight inside the ring
-If the target is killed, Dream Eater gains attributes
From the target perspective:
-Unit falls asleep
-Unit wakes up/Unit dies (depending on the outcome of the fight)
 
Level 24
Joined
Aug 1, 2013
Messages
4,657
You ask a lot of things.

First of the new races:
You cannot make more races because the 4 races are hardcoded into warcraft 3.
You can make a dialog or any other system with abilities or units or whatever so every player must choose their race in-game.
With this you can create starting units, resources, anything that you want.

For the dreameater, you want us to tell you how to make a whole hero... a bit of a large request but could be fun.
You can set stats per level to 0 and trigger all unit deaths and stats gain.

-Ring forms around him and the target
You need a special effect or a destructable that will only be shown to the player who owns the dream eater.

-Spectral units that are equal to Dream Eater and target fight inside the ring
uhm... I think that you want to have some half-transparent uncontrollable units that fight each other.
In that case... you need something to make them look spectral. idk how.

-If the target is killed, Dream Eater gains attributes
There are GUI triggers that can add attributes to a hero.

-Unit falls asleep/-Unit wakes up/-Unit dies
Make a spell based of sleep and set its duration to the duration of the dream.
Let a dummy unit cast that ability.
If the unit died... he died and wont wake up any more.
(I thought that sleeping will be stopped when taking damage. In that case do a stun and add sleep special effect.)

After all, the feeling of this spell will be totally based on the artwork and how you want everything to happen...
Personally, it sounds a bit boring, but it can also be that I don't really understand what will happen :D
 
Level 5
Joined
Jun 21, 2013
Messages
116
You ask a lot of things.

First of the new races:
You cannot make more races because the 4 races are hardcoded into warcraft 3.
You can make a dialog or any other system with abilities or units or whatever so every player must choose their race in-game.
With this you can create starting units, resources, anything that you want.

For the dreameater, you want us to tell you how to make a whole hero... a bit of a large request but could be fun.
You can set stats per level to 0 and trigger all unit deaths and stats gain.

-Ring forms around him and the target
You need a special effect or a destructable that will only be shown to the player who owns the dream eater.

-Spectral units that are equal to Dream Eater and target fight inside the ring
uhm... I think that you want to have some half-transparent uncontrollable units that fight each other.
In that case... you need something to make them look spectral. idk how.

-If the target is killed, Dream Eater gains attributes
There are GUI triggers that can add attributes to a hero.

-Unit falls asleep/-Unit wakes up/-Unit dies
Make a spell based of sleep and set its duration to the duration of the dream.
Let a dummy unit cast that ability.
If the unit died... he died and wont wake up any more.
(I thought that sleeping will be stopped when taking damage. In that case do a stun and add sleep special effect.)

After all, the feeling of this spell will be totally based on the artwork and how you want everything to happen...
Personally, it sounds a bit boring, but it can also be that I don't really understand what will happen :D

Thank you, that was helpful. Most of the stuff I know how to make, I just need to find out how to make units visible only to one player.
 
Level 24
Joined
Aug 1, 2013
Messages
4,657
I just need to find out how to make units visible only to one player.

If you know how to use JASS, it will be very easy.
There is a simple function called "GetLocalPlayer()" that returns the player of the pc.
To actually realize what it really does, yo have to know what WC3 does with its runtime.
After all, you can use GetLocalPlayer() to do something for a player that others won't see.

Ex
Make a destructible.
Set it's visibility to GetLocalPlayer() if GetLocalPlayer() is equal to Player 1
For Player 1, it makes a destructible and sets the visibility to true.
For player 2, it makes a destructible and sets the visibility to false.
For player 3, it makes a destructible and sets the visibility to false.
For player 4, it makes a destructible and sets the visibility to false.
etc etc etc.

Here is a full guide of how to use Local Players.
But again this is JASS only (with exception of Custom Script GUI Action)
 
Level 5
Joined
Jun 21, 2013
Messages
116
If you know how to use JASS, it will be very easy.
There is a simple function called "GetLocalPlayer()" that returns the player of the pc.
To actually realize what it really does, yo have to know what WC3 does with its runtime.
After all, you can use GetLocalPlayer() to do something for a player that others won't see.

Ex
Make a destructible.
Set it's visibility to GetLocalPlayer() if GetLocalPlayer() is equal to Player 1
For Player 1, it makes a destructible and sets the visibility to true.
For player 2, it makes a destructible and sets the visibility to false.
For player 3, it makes a destructible and sets the visibility to false.
For player 4, it makes a destructible and sets the visibility to false.
etc etc etc.

Here is a full guide of how to use Local Players.
But again this is JASS only (with exception of Custom Script GUI Action)

Thanks, I'll try that. I just need to learn JASS, but I think I'll manage.
 
Status
Not open for further replies.
Top