GUI Questions and Problem

PooBucket

New Member
Reaction score
12
Well, I have a few questions about some of the GUI functions. I also have a little problem in spells. Can anyone please explain to me some of the GUI functions and help me fix up the spells?

(A) Spells - Arcane Light: Jaina creates a light full of magical power, it moves towards 700 range from Jaina and then teleports her to there. Anything in it's path gets damaged. The problem I'm having is that she won't get teleported.

Code:
Arcane Light
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Arcane Light 
    Actions
        Set Arcane_Light_Caster = (Casting unit)
        Set Arcane_Light = (Position of Arcane_Light_Caster)
        Unit - Create 1 Arcane Light for (Owner of Arcane_Light_Caster) at Arcane_Light facing Default building facing degrees
        Set Light = (Last created unit)
        Set Light_Pos = (Position of Light)
        Trigger - Add to Damage Light <gen> the event (Unit - A unit comes within 80.00 of Light)
        Unit - Order Light to Move To (Arcane_Light offset by 700.00 towards (Facing of Arcane_Light_Caster) degrees)
        Wait until ((Distance between Light_Pos and Arcane_Light) Greater than or equal to 700.00), checking every 0.10 seconds
        Unit - Move Arcane_Light_Caster instantly to Light_Pos
        Unit - Remove Light from the game
        Special Effect - Create a special effect attached to the origin of Arcane_Light_Caster using Objects\Spawnmodels\NightElf\NEDeathSmall\NEDeathSmall.mdl
        Special Effect - Destroy (Last created special effect)
        Set Arcane_Light_Caster = No unit
        Set Light = No unit
        Custom script:   call RemoveLocation (udg_Arcane_Light)
        Custom script:   call RemoveLocation (udg_Light_Pos)

That's the main trigger, I have some others which work with it, but that's the main problem right now.

(B) Spells - Spiritual Walls: Jaina creates 4 spiritual walls around her in a square formation, any enemy units that go through the walls gets pushed back and dealt damage with some mana sapped. The problem is my angles, I'm no good with it, it creates a wall at the top and bottom of her, but the other 2 walls attach to each of the top and bottom walls on the right and left of it. Also, when a unit walks into it, the results only happen if they go through the middle of the wall, why not the other parts? (I think I know why, but I want any enemy unit which goes through ANY part of the wall gets hurt.)

Code:
[Spiritual Walls
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Spiritual Walls 
    Actions
        Set Spirit_Caster = (Casting unit)
        Set Spirit = (Position of Spirit_Caster)
        Set Spiritual_Wall[1] = (Spirit offset by 600.00 towards 0.00 degrees)
        Unit - Create 1 Spiritual Wall for (Owner of Spirit_Caster) at Spiritual_Wall[1] facing Default building facing degrees
        Set Walls[1] = (Last created unit)
        Custom script:   call RemoveLocation (udg_Spiritual_Wall[1])
        Trigger - Add to Trigger Walls 1 <gen> the event (Unit - A unit comes within 80.00 of Walls[1])
        If ((Level of Power Tome  for Spirit_Caster) Equal to 1) then do (Unit - Add a 15.00 second Generic expiration timer to Walls[1]) else do (Unit - Add a 10.00 second Generic expiration timer to Walls[1])
        Set Spiritual_Wall[2] = (Spirit offset by 600.00 towards 90.00 degrees)
        Unit - Create 1 Spiritual Wall for (Owner of Spirit_Caster) at Spiritual_Wall[2] facing Default building facing degrees
        Set Walls[2] = (Last created unit)
        Custom script:   call RemoveLocation (udg_Spiritual_Wall[2])
        Trigger - Add to Trigger Walls 2 <gen> the event (Unit - A unit comes within 80.00 of Walls[2])
        If ((Level of Power Tome  for Spirit_Caster) Equal to 1) then do (Unit - Add a 15.00 second Generic expiration timer to Walls[2]) else do (Unit - Add a 10.00 second Generic expiration timer to Walls[2])
        Set Spiritual_Wall[3] = (Spirit offset by 600.00 towards 180.00 degrees)
        Unit - Create 1 Spiritual Wall for (Owner of Spirit_Caster) at Spiritual_Wall[3] facing Default building facing degrees
        Set Walls[3] = (Last created unit)
        Custom script:   call RemoveLocation (udg_Spiritual_Wall[3])
        Trigger - Add to Trigger Walls 3 <gen> the event (Unit - A unit comes within 80.00 of Walls[3])
        If ((Level of Power Tome  for Spirit_Caster) Equal to 1) then do (Unit - Add a 15.00 second Generic expiration timer to Walls[3]) else do (Unit - Add a 10.00 second Generic expiration timer to Walls[3])
        Set Spiritual_Wall[4] = (Spirit offset by 600.00 towards 270.00 degrees)
        Unit - Create 1 Spiritual Wall for (Owner of Spirit_Caster) at Spiritual_Wall[4] facing Default building facing degrees
        Set Walls[4] = (Last created unit)
        Custom script:   call RemoveLocation (udg_Spiritual_Wall[4])
        Trigger - Add to Trigger Walls 4 <gen> the event (Unit - A unit comes within 80.00 of Walls[4])
        If ((Level of Power Tome  for Spirit_Caster) Equal to 1) then do (Unit - Add a 15.00 second Generic expiration timer to Walls[4]) else do (Unit - Add a 10.00 second Generic expiration timer to Walls[4])]

Code:
Trigger Walls 1
    Events
    Conditions
        ((Triggering unit) belongs to an ally of (Owner of Spirit_Caster)) Equal to False
    Actions
        Set Pushed_Wall = ((Position of (Triggering unit)) offset by (150.00 + (50.00 x (Real((Level of Spiritual Walls  for Spirit_Caster))))) towards (Facing of (Triggering unit)) degrees)
        Unit - Cause Spirit_Caster to damage (Triggering unit), dealing (20.00 + (10.00 x (Real((Level of Spiritual Walls  for Spirit_Caster))))) damage of attack type Spells and damage type Normal
        Unit - Set mana of (Triggering unit) to ((Mana of (Triggering unit)) - (15.00 + (5.00 x (Real((Level of Spiritual Walls  for Spirit_Caster))))))
        Special Effect - Create a special effect attached to the origin of (Triggering unit) using Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl
        Special Effect - Destroy (Last created special effect)
        Unit - Move (Triggering unit) instantly to Pushed_Wall
        Custom script:   call RemoveLocation (udg_Pushed_Wall)[/SPOILER]

There are also 3 other of those copies (for each separate wall).

Functions: (A) For Each (Integer A) from 1 - 10, do (Actions). I don't understand the 1 - 10 part. Also, what's the difference with Integer A and B and Integer Variable?
(B) What's a ubersplat?
(C) Is leaderboard the one like Dota's -di? And is multiboard the one where a list just gets created in the center of your screen and you have to click one of those things on it?
(D) How do you set flying height?
(E) Is rescue when you take ownership of a unit?
(F) Is the only way how to remove corpses by Unit - Remove Unit when a unit dies?

Thanks people!

Edit: Oh by the way, when I import something from outside, and I delete the file but I've already imported it in WE, will it still work? Cause my brother getting capped >.<
 

Renendaru

(Evol)ution is nothing without love.
Reaction score
309
2:Know when you click on a critter too much and it explodes? That's one.
3:I haven't played it, but if it has multiple columns it's a multiboard, but 2 columns and some player, most of the time means leaderboard.
4:Unit - Height in Object Editor, or Unit - Set flying height of YourUnit to XX
5:Rescue is like in Campaigns where you break down a jail wall, and gain ownership of the units inside.
 

vypur85

Hibernate
Reaction score
803
A
Just a typical loop. Meaning if you put there loop 1 to 10, it will loop 10 times. At the first loop, Integer A is considered as 1 while second loop Integer A is 2, and so on until the tenth. That is if you're using Integer A. If you use Integer B, then you use Integer B as the variable reference.

Example:
Code:
For every Integer A 1 to 10 do multiple actions
 Loop - Actions
  Game - Display to Allplayers Integer(Integer A)
You will see 10 messages displayed from 1 to 10. The action within the loop has been repeated 10 times with Integer A value being changed progressively.

C
When you type -di, the title of the Mutiboard changes whenever you kill or deny any enemy or allied units. When you die, a Leaderboard appears as the countdown timer. Can you see the difference of both boards in terms of DotA?

D
In trigger:
Code:
Actions
 Unit - Add Storm Crow Form to YourUnit
 Unit - Remove Storm Crow Form from YourUnit
 Animation - Set YourUnit's flying height to 500.00 at rate 500.00

In Object Editor:
As mentioned in Post#2 but make sure the unit has either Float or Flying movement type.


F
Corpse has decay time, something similar to expiration time. This can be adjusted in Gameplay Constant. Once expired, the corpse is considered removed from the game. 'Unit - Remove Unit' is usually used when you want to remove the corpse before it finishes decaying.
 

PooBucket

New Member
Reaction score
12
Oh so Integer A and those stuff are used for like creating many units at once and make them cast spells at different angles.

So if I wanted to make a unit go into the air, I make him go into the air with animation at rate something? I don't need to add storm crow form do I? Cuz I let him down afterwards.

I still don't get multiboard very much =.=.

Ya, I meant removing the unit before the corpse expiration.

Thx for help people! Please help with the others! +rep to vypur and renen.

Edit: I can't +rep renun yet... need to spread some...
 

vypur85

Hibernate
Reaction score
803
> don't need to add storm crow form

You need. Or else, it won't fly up in the first place. This is some kind of bug in WC3 where Storm Crow Form (or Crow Form) allows your unit to be able to adjust flying height in game even though the unit is not of Flying or Float movement type.


> don't get multiboard

Multiboard is the one with multiple columns and rows hence the name Multiboard. Leaderboard only has one (maybe 2 if you count the player name... Or 3 if you count Icon...) row but it has special advantage because you can sort player position according to some integer value. You won't understand further if you don't try to play with them yourself. Try to create one and you'll learn.
 

PooBucket

New Member
Reaction score
12
Help with spells please!

Ty on the functions.

Can you tell me if it still works? (For the import question)
 

Renendaru

(Evol)ution is nothing without love.
Reaction score
309
Code:
Arcane Light
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Arcane Light 
    Actions
        Set Arcane_Light_Caster = (Casting unit)
        Set Arcane_Light = (Position of Arcane_Light_Caster)
        Unit - Create 1 Arcane Light for (Owner of Arcane_Light_Caster) at Arcane_Light facing Default building facing degrees
        Set Light = (Last created unit)
        Set Light_Pos = (Position of Light)
        Trigger - Add to Damage Light <gen> the event (Unit - A unit comes within 80.00 of Light)
        [B]Unit - Order Light to Move To (Arcane_Light offset by 700.00 towards (Facing of Arcane_Light_Caster) degrees)
        Wait until ((Distance between Light_Pos and Arcane_Light) Greater than or equal to 700.00), checking every 0.10 seconds
        Unit - Move Arcane_Light_Caster instantly to Light_Pos[/B]
        Unit - Remove Light from the game
        Special Effect - Create a special effect attached to the origin of Arcane_Light_Caster using Objects\Spawnmodels\NightElf\NEDeathSmall\NEDeathSmall.mdl
        Special Effect - Destroy (Last created special effect)
        Set Arcane_Light_Caster = No unit
        Set Light = No unit
        Custom script:   call RemoveLocation (udg_Arcane_Light)
        Custom script:   call RemoveLocation (udg_Light_Pos)

Those three are the ones doing the moving, try experimenting a bit, to see what happens.
 

Romek

Super Moderator
Reaction score
963
I don't think that'll make any difference...

A minor speed difference.
Triggering Unit > Casting Unit

Instead of ordering the dummy to move, use "Move Unit (Instantly)"
Then you can get rid of the "Wait until..." and it should work fine.
 

PooBucket

New Member
Reaction score
12
A minor speed difference.
Triggering Unit > Casting Unit

Instead of ordering the dummy to move, use "Move Unit (Instantly)"
Then you can get rid of the "Wait until..." and it should work fine.

Yes, I know it's a minor speed difference, but it wouldn't make my hero teleport anyway. Thanks, I'll try it... but wouldn't it be non-mui then? Cause I thought turning off trigger would make it almost impossible for it to be mui...

Any helpers on the Spiritual Walls would be appreciated!

So far so good! :thup:
 

saw792

Is known to say things. That is all.
Reaction score
280
Code:
Arcane Light
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Arcane Light 
    Actions
        Set Arcane_Light_Caster = (Casting unit)
        Set Arcane_Light = (Position of Arcane_Light_Caster)
        Unit - Create 1 Arcane Light for (Owner of Arcane_Light_Caster) at Arcane_Light facing Default building facing degrees
        Set Light = (Last created unit)
        [b]Set Light_Pos = (Position of Light)[/b]
        Trigger - Add to Damage Light <gen> the event (Unit - A unit comes within 80.00 of Light)
        Unit - Order Light to Move To (Arcane_Light offset by 700.00 towards (Facing of Arcane_Light_Caster) degrees)
        Wait until ((Distance between Light_Pos and Arcane_Light) Greater than or equal to 700.00), checking every 0.10 seconds
        [b]Unit - Move Arcane_Light_Caster instantly to Light_Pos[/b]
        Unit - Remove Light from the game
        Special Effect - Create a special effect attached to the origin of Arcane_Light_Caster using Objects\Spawnmodels\NightElf\NEDeathSmall\NEDeathSmall.mdl
        Special Effect - Destroy (Last created special effect)
        Set Arcane_Light_Caster = No unit
        Set Light = No unit
        Custom script:   call RemoveLocation (udg_Arcane_Light)
        Custom script:   call RemoveLocation (udg_Light_Pos)

Basically, you have set a position at the casting unit, created a unit there, set a position at the location of the last created unit (which will obviously be at the position of the casting unit) and then tried to move the caster to that spot... which is exactly where they are standing already.

Move the
Code:
Set Light_Pos = (Position of Light)
to immediately after the wait for condition.
 

Trithilon-V2

New Member
Reaction score
20
Just make sure you didnt null the point variables in the other trigger....or else it will bug the wait into waiting forever.
Like said above reallocate the varibles after the wait is over.
 

PooBucket

New Member
Reaction score
12
So basically, I do this? (For Arcane Light)

Code:
Wait until ((Distance between Light and Arcane_Light) Greater than or equal to 700.00), checking every 0.10 seconds

And then set my variable after it so when it is 700 range it teleports my hero. Right?

Btw, would that leak? Cause,don't I need a position variable in there too so it won't leak?
 

saw792

Is known to say things. That is all.
Reaction score
280
Yes that's where you should do it.

You already have two point variables in that condition...
 

PooBucket

New Member
Reaction score
12
Sorry, haven't been on for a while.

Thanks guys. So it would be like this: Wait until distance between Arcane Light and Position of Light Greater than or equal to 700.00.
And then Set Light_Pos = Position of Light
Sorry, just double checking :p

Spiritual Walls please!
 

Marsmallos

Member
Reaction score
17
Click on the "Test Map" button and see for yourself :p, but I think, yes it will work then.

Regarding
(B) What's a ubersplat?

As far as I know, since I usually don't use them, an Ubersplat is what is created when you create for example a building, it is an image drawn on the terrain. For example when you cast flame strike there is sort of a crater drawn on the ground afterwards.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top