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

Question about skills

Status
Not open for further replies.
Level 4
Joined
May 8, 2007
Messages
70
So again i try to explain it with my terrible english :smile:

When a hero get a level up, he is able to choose one new skill.

==========First Question:==========
How can i change it, that the Hero is able to choose a skill only after 3 lvl ups not after 1 lvl up.


So i want do a other way that the hero learn a new skill like this:

A Player Press the Button ESC
Then there open a Dialog with the Dialogbutten "Skills"
When the Player press this Skills-Button open a new Dialog
Then there is able to choose some skills like: Holy Light, Thunderclap etc.
Know the Player press the Holy Light-button
Than add holy light to the Hero of "klicking Player"

AND this trigger must so, that the "Skillbutton" is only avable all 3 lvl ups!

==========Seconde Question:==========
How i crate a trigger that THIS :eekani: is possible...
btw is that possible?? :eek: :eekani: :eek: :eekani:

I hope someone understand this and can help plz :grin:

------------ OR -----------

Is it better to create like this:
Every 3 lvl ups give 1 wood to player of "the lvl up hero"

Than there is a shop to buy skills for wood

But how does it work?^^
And than they hero can ONLY BUY skills not CHOOSE the skills (normaly)
 
Level 9
Joined
Jun 26, 2007
Messages
659
For a minimal level:
World Editor > Object Editor (F6) > Skills > your skill > Stats - required level > 3

For a 3 points upgrade cost:
You've only to create dummy level of the skill
Skill level 1, 2 and 3 = first effect
Skill level 4, 5 and 6 = second effect
Skill level 7 = third and last effect
(so you need 3 point to level up the skill from 1 to 4)
 
Level 4
Joined
May 8, 2007
Messages
70
Ok and when i want do it like Buy skills like:

Ereigniss: Unit - Get a lvl up

Bedingung: "Lvlup time" = 3

Aktion: Give 1 wood to player of "lvl up hero"

Than there is a shop where you can buy a skill for 1 wood.

(How does it work?)
 
Level 8
Joined
May 27, 2007
Messages
170
Here is one way you could do what I think you need, although there might be simpler ways, I do not know. Anyway, I would recommend something like this:


STEP 1: The hero gains a level

  • Hero Levels Up
    • Events
      • Unit - A unit owned by Player 1 (Red) Gains a level
    • Conditions
    • Actions
      • Set LevelUps = (LevelUps + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • LevelUps Equal to 3
        • Then - Actions
          • Set LevelUps = 0
          • Set SkillCredits = (SkillCredits + 1)
        • Else - Actions
          • Do nothing
LevelUps is simply an integer variable, which I am using to count how many levels the hero has gained. This trigger adds one to the current count whenever the hero gains a level, and detects when it reaches 3. So, every three levels, this trigger resets the level count to start again and detect the next three levels, then gives the hero a SkillCredit, which is another simple integer variable which the hero can use to acquire skills in the dialog.


STEP 2: The player opens the dialog box

  • Display Skills Dialog
    • Events
      • Player - Player 1 (Red) skips a cinematic sequence
    • Conditions
    • Actions
      • Dialog - Show SkillsDialog for Player 1 (Red)
      • Trigger - Turn off (This trigger)
      • Trigger - Turn on Hide Skills Dialog <gen>
  • Hide Skills Dialog
    • Events
      • Player - Player 1 (Red) skips a cinematic sequence
    • Conditions
    • Actions
      • Dialog - Hide SkillsDialog for Player 1 (Red)
      • Trigger - Turn off (This trigger)
      • Trigger - Turn on Display Skills Dialog <gen>
These two triggers simply display the dialog box and hide the dialog. The first one opens it whenever the player presses ESC, and the second closes it when the player presses ESC while it is still open.


STEP 3: The player chooses a skill for the hero to learn

  • Skill Is Chosen
    • Events
      • Dialog - A dialog button is clicked for SkillsDialog
    • Conditions
      • SkillCredits Greater than 0
    • Actions
      • Set SkillCredits = (SkillCredits - 1)
      • Dialog - Hide SkillsDialog for Player 1 (Red)
      • -------- Now you add your own triggers to give the hero the ability. --------
      • -------- You can find plenty of dialog tutorials which will give you --------
      • -------- the info you need to do this though. --------
This simply checks if your hero has and SkillCredits to spend when a dialog button is clicked for a skill to be learned. If there is atleast one credit available, this trigger then reduces the amount by 1 credit (sort of like your lumber idea, spending the credits to buy skills) and keeps a record of how many SkillCredits the hero has left. You can now add your own triggering to determine what skill is being learned, and to give it to the hero and so on.

If each player will only have one hero, this will be straight forward, but if they have more than one hero each, you may need to have some sort of area that the hero has to enter before they are allowed to choose a skill. You will also have to make SkillCredits an array variable, and use custom values for your heroes so you can correspond them to an index of the array.

I hope that gave you some help and ideas on how to approach your problem anyway :thumbs_up:

Good Luck, HermanTheGibbon
 
Level 4
Joined
May 8, 2007
Messages
70
WoW thx but i have a question...

In Step 1 i see 3 set... trigger..

There variable right... but WHAT variabletype?

FORGOT THIS QUESTION I SEE IT KNOW^^

So than the Player woth the Hero canchoose every 3 lvl ups a skill..
I have question to this skills. For example he choose Holylight. Normaly it heals 200,400,600 HP But i want to it so that Holylight heals x3 the INT of the Hero!!

How that?
 
Level 35
Joined
Oct 9, 2006
Messages
6,392
So than the Player woth the Hero canchoose every 3 lvl ups a skill..
I have question to this skills. For example he choose Holylight. Normaly it heals 200,400,600 HP But i want to it so that Holylight heals x3 the INT of the Hero!!
Now what?

What your talking about there is a custom spell. And you could do it with (set the normal healing it would do to zero):
  • Events
    • Unit - Starts the effect of an ability
  • Conditions
    • (Ability Being Cast) equal to Holylight
  • Actions
    • Set Healed to (Target of ability being cast)
    • Set Caster to (Triggering Unit)
    • Unit - Set life of (Healed) to ((Life of (Healed)) + ((Real((Intelligence of (Caster)(Include Bonuses)))) x (3.00))
You done, you may want to make it MUI but didnt bother to tjeck if it is now.
 
Level 4
Joined
May 8, 2007
Messages
70
Ok i want try it but i have a question I have do it like HermanTheGibbon
So every 3 level ups a Player can type: -skills
Than it open a skill menu! In this skill Menu is i Button with Holylight
So when the player klick on this button HOW i add this skill to the hero??

I have try: Add (Holylight) to leveling Hero <---Doesnt work
I have try: Add (Holylight) to triggering Unit <---- sure this dotn work

What must i take and i dont finde: Add (Holylight) to klicking Hero/Unit
 
Level 6
Joined
Mar 2, 2006
Messages
306
may want to make it MUI but didnt bother to tjeck if it is now.
it already is mui. also there is no need for the variables since you only use their values once.

When a hero get a level up, he is able to choose one new skill.

no. when hero gets A NEW SKILL POINT, he can chose a new skill (and he gets one new point with level gain).

now there is a trigger action (in the hero section) thet sets remaining skill points, so you can use that action to reduce skill points by one when hero gains a level if that level is not divisible by three. as simple as that.
 
Level 4
Joined
May 8, 2007
Messages
70
Jeah but i give the Hero new spells about a Dialogtrigger not the normal way. The Hero start with NO skills and never get one spellpoint this normal way and sure i know there is a Hero-trigger where you can add and remove Skillpoints^^

My Hero get Skillpoint in this way, what HermanTheGibbon write. Maybe u ready this =)
And maybe u give an answer for my LAST Question =)
 
Level 8
Joined
May 27, 2007
Messages
170
OK, the reason the the "Triggering Unit" and "Levelling Unit" actions don't work is because they can only take a unit when the trigger is set off by a unit event, and the "Hero gains a level event" isn't in the same trigger.

So, to do this, you are going to have to set your hero to a variable. To do this I suggest you have a circle of power or something that your hero has to enter before they can use the skills dialog. Create a region over your circle of power, and then use the following triggers.


STEP 1: Hero enters circle of power and becomes the target for the skills dialog

  • Hero Enters Skill Zone
    • Events
      • Unit - A unit enters Region 000 <gen>
    • Conditions
    • Actions
      • Set HeroToGainSkill = (Triggering unit)
      • Trigger - Turn on Show Skills Dialog <gen>
HeroToGainSkill is a unit variable.

  • Hero Leaves Skill Zone
    • Events
      • Unit - A unit leaves Region 000 <gen>
    • Conditions
    • Actions
      • Set HeroToGainSkill = No unit
      • Trigger - Turn off Show Skills Dialog <gen>
Use this to prevent lots of buginess


STEP 2: Opening the skills dialog

  • Show Skills Dialog
    • Events
      • Player - Player 1 (Red) types a chat message containing -skills as An exact match
    • Conditions
      • HeroToGainSkill Not equal to No unit
    • Actions
      • Dialog - Show SkillsDialog for Player 1 (Red)
Simply opens the dialog when the player types -skills (like you said) This trigger should be initially off (uncheck the box at the near the top of the trigger editor which says intitially on) This only works while there is a hero in the circle of power due to the triggers we made before.


STEP 2: Choosing a skill

  • Choose Bladestorm Skill
    • Events
      • Dialog - A dialog button is clicked for SkillsDialog
    • Conditions
      • (Clicked dialog button) Equal to BladestormDialogButton
      • SkillsCredits Greater than 0
    • Actions
      • Set SkillsCredits = (SkillsCredits - 1)
      • Unit - Add Bladestorm to HeroToGainSkill
Now we have a unit to target because of the variable we set earlier. Just use the unit variable you use to identify the hero entering the circle of power.

Again I think this is the easiest way to do what you want, good luck once again :thumbs_up:
 
Level 4
Joined
May 8, 2007
Messages
70
Jeah sure but u must think... you fight in a big dungeon... its dark and mobs came from all sides... than u get lvl up want new skill and cant go to the circle...

Ok maybe its possible, to create more then one circle..

Other Question...

How i must do it, when the Hero must by the skills?

I must create a shop and than?
 
Last edited:
Level 35
Joined
Oct 9, 2006
Messages
6,392
Hmmm the easy way isnt with the region... the easy way would be to write it then skill dialog shows up, showing how many skills points you got to spent, if you got none, you click tthe exit button, hich hides the manu again. If you want the dialog only to show up when he got a skill point to spend use the:
  • Events
    • Hero gains a level
  • Conditions
    • lvl of hero equal to (1+lvlnumber) where lvlnumber is from start set to zero
  • Actions
    • set lvlnumber to (lvlnumber + 3)
    • show Skill dialog for (owner of leveling hero)
Notice the lvlnumber is a variable you create from beginning of game and set the value to zero, if more heroes are needed use array to make one for each player, then you could also implant each type of skill dialog to the according hero, if you have dieffernt dialogs for each hero..

Havent checked this out, because I ait setting at a pc with WEU but should work.

edge[d1] I thought it was MUI, but didnt bother to check funktion if it was for sure, course I have the felling that if two cast this spell at the precisely same time, the variable would ran into problem maybe, but if it is a easy fix...
 
Level 4
Joined
May 8, 2007
Messages
70
Okok so my prob is...

In this Skill Dialog there are buttons.. for example:
Holy Light
Multi Attack
Deathwave

So a hero get lvl up and get a skill point, than your trigger open the Skill Dialog. WHEN i now press the Button "holy Light" How get the Hero this skill....

Dialog butten press for Skill Dialog

Dialog button = Holy light

Add Holy light to <......... Unit>

What Unit than u think?

Maybe best way are realy the circle
 
Level 35
Joined
Oct 9, 2006
Messages
6,392
Okay I made this map for you.. Showing both the skill dialog trigger and the holy light trigger in funktion.

Only one thing wrong with it...
I made so you can pick 3 spells, the tierd one you need to be lvl 6 to pick (which works) but then I also wanted to make so if you already had max lvl in the spell you chose you would have to pick again, insted of just having a skill point, but what I made only works for the tierd spell you can pick, not the two first, dunno why the trigger is the same... only differnce is: that the tierd ones condition is: level of (spell) less then 1
while the two others is: level of (spell) less or equal to 3 when it didnt worked for them I tryid using level of (spell) less then 4 but that also didnt work. So I hope you can use this, it does what you want + dialog + the custom spell.
TRY the map before you look at triggers please...
http://www.epicwar.com/maps/24863/
 
Level 6
Joined
Mar 2, 2006
Messages
306
edge[d1] I thought it was MUI, but didnt bother to check funktion if it was for sure, course I have the felling that if two cast this spell at the precisely same time, the variable would ran into problem maybe, but if it is a easy fix...

nothing to check. triggers do not run at the same time. they run one after another (possibly there are triggers sleeping because of wait actions), only one at the time. so waits are the only place when your trigger can be interrupted. after the slightest wait, hundreds of triggers may have run and changed your global variables... so: if your spell has one trigger without global variables, it is mui. if your spell has one trigger without waits, it is mui.

I have try: Add (Holylight) to leveling Hero <---Doesnt work
I have try: Add (Holylight) to triggering Unit <---- sure this dotn work

What must i take and i dont finde: Add (Holylight) to klicking Hero/Unit


What Unit than u think?
Maybe best way are realy the circle

i do not understand. Leveling Hero works fine (if you don't use wait). Triggering Unit also works fine (use that one).

action is the problem. you can't add hero-abilities to heroes just like that. it doesn't work. (works fine for unit-abilities, even if thay have multiple levels)

my experiments with engineering upgrade were mostly unsuccessful. while it is possible, it is too complicated and there are too many workarounds for me to consider it success.

that leaves only one solution: turn all hero-abilities into non-hero abilities (one checkbox for each) and use Add Ability to Unit and Set Level of Ability for Unit actions. that is how it was done in "The Great Strategy" map.
 
Level 4
Joined
May 8, 2007
Messages
70
Ach i have kp this dont work i dont know what i do wrong... still when i copy it from your map and paste in my map...
I have same varible as u... same Unit as you, same skills as you...and it dont work.
So fuck that shit
 
Level 35
Joined
Oct 9, 2006
Messages
6,392
While it shouldnt make any difference because I didnt use any WEU stuff, but anyway dl WEU from this site, it has its bonuses. And maybe that could solve the wierd problem (even if I dont know why I should solve it, WEU is still good to have)
After dl and install try making the map again, like you said copy my triggers, see if it works out.. for you
 
Level 4
Joined
May 8, 2007
Messages
70
jeah i have a question..

In your map, when the Hero get a lvl up than i dialog direct open with the skills..

So i want do it so, that when the Hero get a lvl up, he get a massage, that he have one skillpoint and know can write: -skills
With this command -skills open the Dialog with the skills

What i must change?

(can u tell me how i can poste my trigger in this forum like u do it?) maybe its easyer to see what i do wrong!
 
Level 35
Joined
Oct 9, 2006
Messages
6,392
Well:
Make a other trigger, call it something like: Skill Dialog
Copy paste all conectet to dialog from the trigger I made first, replace the dialog thing in the original triggr with a game message saying you have gained a skill point, type -Skills to use it.

  • Events
    • Unit - Gains a level
  • Conditions
    • Unit - Level of (Triggering Unit) equal to LvlNumber
  • Actions
    • Set LvlNumber = (LvlNumber + 3)
    • Set LevelingHero = (Triggering Unit)
    • Game - Display to (Owner of LevelingHero), offset (0.00,0.00) for 10 seconds the text: You gained a skill point. Type Skills to use it
    • Trigger - Turn on Dialog Shows up <gen>
This is the Dialog Shows up trigger, shouldnt be enabled from start (Initialy On, shouldnt be marked):
  • Events
    • Player - (Owner of LevelingHero) types a chat message containing -Skills as An exact match
  • Conditions
  • Actions
    • Dialog - Clear SkillDialog
    • Dialog - Change Title of SkillDialog to Choose your skill
    • Dialog - Create a dialog button for SkillDialog labelled Holy Light
    • Set DialogButton[1] = (Last created dialog button)
    • Dialog - Create a dialog button for SkillDialog labelled Multi Attack
    • Set DialogButton[2] = (Last created dialog button)
    • Dialog - Create a dialog button for SkillDialog labelled Deathwave
    • Set DialogButton[3] = (Last created dialog button)
    • Show SkillDialog for (Owner of LevelingHero)
That should do it... only problem would then be that if he doesnt use his gained skillpoint at once, he lose it if he gain 3 mor elvls before trying to use it... it could be avoided, but I dont want to write how now.
 
Level 4
Joined
May 8, 2007
Messages
70
Know something must be wrong...

1d6aeda052.jpg


f24d4a0703.jpg


f4bedfa787.jpg


So i do this with copy paste... but know iam not abel to type -skills to open the Skill Dialog... i have ALL Varible must i dont know why it doesnt work jet :confused:
 
Level 4
Joined
May 8, 2007
Messages
70
OK! Skill prob is done... wow finaly it works... damn

THX to HermanTheGibbon and bigger THX to RED BARON for this skillshit
:infl_thumbs_up: :infl_thumbs_up: :infl_thumbs_up: :infl_thumbs_up:

I have another question but not about skills so maybe a write a new Thread again thx alot !!

=== Ähm i hope someone ready this===

I have one more question...
I see i must add the spell to the hero, later he gains a lvl up than he open dialog with -skills and than he can chose the skill. I know max skills is 5... but what is when i want to a Dialog with 10 skills... and he can chose 5 from this? who it works?
 
Last edited:
Status
Not open for further replies.
Top