- Joined
- May 8, 2010
- Messages
- 150
pRo.MAPMAKER
THE RPG TUTORIAL!
THE RPG TUTORIAL!
WHAT IS IN THIS TUTORIAL
-I will show you how to create abilities which deal damage and heal based on a heroes attributes.
-I will show you how to create realistic respawns.
-I will show you how to trigger a good RPG camera system(Arrow keys to control zooming in/out and rotation around a hero unit)
-How to create fading floating text. (Used when an ability is cast for example)
-Examples of all the above and how to create a mini-boss fight in a map.
USEFUL TOOLS!
Warcraft III Colourizer!
Really useful when announcing events in the game.
Floating Text
[Trigger=Floating Text]
Floating Text - Create floating text that reads (String((Intelligence of (Triggering unit) (Include bonuses)))) above (Triggering unit) with Z offset 0.00, using font size 8.00, color (0.00%, 100.00%, 0.00%), and 0.00% transparency
Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to 2.00 seconds
Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
[/trigger]
First off we need to create the floating text..
Floating Text - Create floating text that reads ------- above (Triggering unit) with Z offset 0.00, using font size 8.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
To make this floating text show an ability that has been cast you will need to set it as "Create floating text that reads 'Game - Ability Name'
Floating Text - Create floating text that reads (Name of (Ability being cast)) above (Triggering unit) with Z offset 0.00, using font size 8.00, color (0.00%, 100.00%, 0.00%), and 0.00% transparency
How to edit the time it takes to fade the floating text
Which triggers we need..
Floating Text - Change the lifespan of (Last created floating text) to --- seconds
Floating Text - Change the fading age of (Last created floating text) to --- seconds
Floating Text - Change the fading age of (Last created floating text) to --- seconds
Trigger 1
Floating Text - Change the lifespan of (Last created floating text) to 4 seconds
The white text is where you enter the amount of time it takes for the floating text to die. You should have this between 3-5 seconds.
Trigger 2
Floating Text - Change the fading age of (Last created floating text) to 3 seconds
This trigger, the white text is the amount of time it takes for the floating text to fade out(this should be one second less than Trigger 1.
The last trigger needed in the Actions is a trigger which allows the floating text to fade out.
Floating Text - Change (Last created floating text): Disable permanence
This is a simple trigger to find, and is easy to set up.
Events
To make this trigger reveal ability names when they are cast.. you need the right event.
Unit - A unit Begins casting an ability
With this event, anytime an ability is cast.. it will rise from the position of the casting unit(or triggering unit)
Events
You can add conditions in if you want to customise the floating text by having an ability being shown with a specific colour.. but if you do this.. remember to add to the trigger that shows if any ability is casted.. conditions, that the casting ability isnt the other trigger which is done seperatly.
Floating Text Colours??
You can change the colour of the floating text by either using the Warcraft Colourizer and adding a code into the text displayed.. or edit the trigger by altering the colouring.
Floating Text - Create floating text that reads Hello above (Triggering unit) with Z offset 0.00, using font size 8.00, color (0.00%, 100.00%, 0.00%), and 0.00% transparency
The above trigger will show the word Hello with the colour green.
You can alter the colours by adjusting the percents highlighted.
Abilities powered by a heroes attributes.
I will show you how to make a simple single target spell that either damages or heals a target unit based on a units attributes.
[trigger=Firebolt]
Firebolt
Events
Unit - A unit Begins casting an ability
Conditions
(Ability being cast) Equal to Firebolt
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Ability being cast) Equal to Firebolt
(Level of (Ability being cast) for (Triggering unit)) Equal to 1
Then - Actions
Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (4.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
Floating Text - Create floating text that reads (String(Stun2[(Player number of (Triggering player))])) above (Target unit of ability being cast) with Z offset 0.00, using font size 8.00, color (0.00%, 0.00%, 100.00%), and 0.00% transparency
Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to 6.00 seconds
Floating Text - Change the fading age of (Last created floating text) to 5.00 seconds
Wait 0.25 seconds
Floating Text - Create floating text that reads (String(((Integer((Real((Intelligence of (Triggering unit) (Include bonuses)))))) x 4))) above (Target unit of ability being cast) with Z offset 0.00, using font size 8.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to 6.00 seconds
Floating Text - Change the fading age of (Last created floating text) to 5.00 seconds
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Ability being cast) Equal to Firebolt
(Level of (Ability being cast) for (Triggering unit)) Equal to 2
Then - Actions
Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (8.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
Set Stun2[(Player number of (Triggering player))] = (Random integer number between 3 and 8)
Floating Text - Create floating text that reads (String(Stun2[(Player number of (Triggering player))])) above (Target unit of ability being cast) with Z offset 0.00, using font size 8.00, color (0.00%, 0.00%, 100.00%), and 0.00% transparency
Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to 6.00 seconds
Floating Text - Change the fading age of (Last created floating text) to 5.00 seconds
Floating Text - Create floating text that reads (String(((Integer((Real((Intelligence of (Triggering unit) (Include bonuses)))))) x 8))) above (Target unit of ability being cast) with Z offset 0.00, using font size 8.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to 6.00 seconds
Floating Text - Change the fading age of (Last created floating text) to 5.00 seconds
Else - Actions
[/trigger]
The above trigger is a spell with 2 levels, which deals at level 1 4x the amount of intelligence of a casting hero, and level 2 is 8x the amount of intelligence and displays the amount damaged above the targeted unit.
TUTORIAL WILL BE FINISHED SOON!
ATTACHED MAP CONTAINS ALL THE ABOVE.
ALSO HAS A BACKPACK SYSTEM WHICH ISNT WORKING PROPERLY YET.
Attachments
Last edited: