• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Atrribute Stat Add

Status
Not open for further replies.
Level 3
Joined
Feb 20, 2009
Messages
28
Hello there.I Have a problem.I create 3 abilities named Agility + , Strenght +, Intelligence + but a problem occured. i want to make those abilities can learned more than 1 time every level..since i'm using 3 stat points every level..any suggestion?___please write a trigger.
 
Last edited:
Level 2
Joined
Mar 29, 2009
Messages
16
im pretty sure darkangelazazel is right, if its not in the gameplay constants, its probably in a trigger somewhere, id look it up right now and check... but im at a relatives house atm lol, so ill check on it tomorrow if its not already answered fully by then.
 
Level 2
Joined
Mar 29, 2009
Messages
16
just to be sure

Hello there.I Have a problem.I create 3 abilities named Agility + , Strenght +, Intelligence + but a problem occured. i want to make those abilities can learned more than 1 time every level..since i'm using 3 stat points every level..any suggestion?___please right a trigger.

just so im sure, you mean an add stat ability like in The Black Road rpg right?
 
Level 10
Joined
Mar 16, 2009
Messages
354
Event - A unit gains a level
Condition - none
Action - Create tome of power for triggering unit

you can put more tomes of power if needed or you could increase the experience per kill by . . .

1.) Open your map

2.) hit advanced then gammplay constants

3.)Set the Hero XP - creep reduction table set to the only # being 160

4.) play around with other Hero XP - Stats untill you get the right one
 
Level 5
Joined
Dec 18, 2007
Messages
205
sadly its unchangeable: 1 level - 1 skill point.
but you could make a trigger that detects the level up of a hero and then adds some skill points to the hero.

Events: Unit - A unit gets a level / levels up
Conditions: your conditions if needed (e.g. unit type = xxx)
Actions: Hero - Modify Hero Skill Points (+2)

greetings
 
Level 3
Joined
Feb 20, 2009
Messages
28
yeah the problem is that i want to make it so the player can have his selection...:/..if he wants to be an agility expert or strength or intelligent!!...i've seen this kind on a map..but i dont remember where...?
 
Level 7
Joined
Aug 29, 2007
Messages
336
Go to Advanced>Gameplay Constants> Hero Attributes - Abilities level skip (Default) and set the # to 1.

Then make this trigger.
  • Events
  • Unit - A unit gains a level
  • Conditions
  • Actions
  • Hero - Modify unspent skill points of (Leveling Hero): Add X points
That should do the trick.
EDIT: Meh was posting while bReathl3sS posted :p
 
Level 3
Joined
Feb 20, 2009
Messages
28
look i already created that trigger ....OMG...i want a trigger which will make the THE ABILITY BE LEARNED MORE THAN ONE TIME IN 1 LEVEL...=/
 
Level 7
Joined
Mar 29, 2009
Messages
139
ok, i'll try to help you xD
Go to advanced, then gameplay constants. Then find Hero Abilities Level Skip (Default). Use custom gameplay constants and double click the Hero Abilities field. Change the integer to 1. Skills can be learned every level now.
You need a trigger too!

Events:
Unit - A unit gains a level
Conditions:
(Owner of (levling hero)) Equal to Player 1 red.
Actions:
Hero - Modify unspent skill points of (Leveling Hero): Add 2 points


Done!

You need more triggers like this if you have more players in the game.
Just change the condition to (Owner of (levling hero)) Equal to Player 2 blue.

EDIT: Sorry! The action was wrong! It is correct now!
 
Level 7
Joined
Aug 29, 2007
Messages
336
Look I just tried to help . . .
I just made a suggestion, and I thought changing the ability level skip would do the trick.
But sorry for trying to help you.
 
Level 5
Joined
Dec 18, 2007
Messages
205
Well Kamlon then this is what you need??
add 2 skill points and then do the action 'hero learn skill' tiwce.

ps: nice one fimbus, i was faster :D fallout rocks;)
 
Level 8
Joined
Nov 9, 2008
Messages
502
I understand what you are looking for. There is a map called Virus Infection where you get 6 wood every levelup and you press ESC to pick str, int or agi.

If you don't want to use wood I think the only way is to store the points in a variable and have some way, like a dialogue, for your players to select an attribute.

I would write you a trigger but you say you made one already. Well done.
 
Level 8
Joined
Nov 9, 2008
Messages
502
Well do you want me to use wood or an invisible integer?
Do you want players to upgrade at a building or wherever they like?
Do players have only 1 hero or are there many that will use the system?
 
Level 2
Joined
Mar 29, 2009
Messages
16
i understand, go to gameplay constants, and change the required default level skip to 0
then go to the ability in the object editor and set the abililties level skip requirement to 0
 
Level 3
Joined
Feb 20, 2009
Messages
28
i would like you to make an invisible integer and every player has 1 hero and upgrade wherever they like.Thanks.
 
Level 8
Joined
Nov 9, 2008
Messages
502
VARIABLES USED (you need to replicate these):

NameTypeArray?/SizeDefault Value

available_stats
IntegerYes/Number of Players0

diag
DialogNon/a

dia_button
Dialog ButtonYes/4n/a

temp_hero
Unit GroupNoEmpty

  • levelup
    • Events
      • Unit - A unit Gains a level
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Set available_stats[(Player number of (Owner of (Triggering unit)))] = (available_stats[(Player number of (Owner of (Triggering unit)))] + 5)
  • edit diag
    • Events
    • Conditions
    • Actions
      • Dialog - Change the title of diag to (Please choose an Attribute - + ((you have + ((String(available_stats[(Player number of (Triggering player))])) + to spend))))
      • Dialog - Create a dialog button for diag labelled Strength
      • Set dia_button[1] = (Last created dialog Button)
      • Dialog - Create a dialog button for diag labelled Agility
      • Set dia_button[2] = (Last created dialog Button)
      • Dialog - Create a dialog button for diag labelled Intelligence
      • Set dia_button[3] = (Last created dialog Button)
      • Dialog - Create a dialog button for diag labelled Cancel
      • Set dia_button[4] = (Last created dialog Button)
You need to copy below trigger for every player and edit the event/player.
  • show diag
    • Events
      • Player - Player 1 (Red) skips a cinematic sequence
    • Conditions
      • available_stats[(Player number of (Triggering player))] Greater than 0
    • Actions
      • Trigger - Run edit diag <gen> (ignoring conditions)
      • Dialog - Show diag for (Triggering player)
Below trigger is where the tomes are created and given to hero. I have chosen basic +1 tome but you could edit and put any thing here.
  • select attribute
    • Events
      • Dialog - A dialog button is clicked for diag
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal to dia_button[1]
        • Then - Actions
          • Set temp_hero = (Units owned by (Triggering player) matching (((Matching unit) is A Hero) Equal to True))
          • Unit Group - Pick every unit in temp_hero and do (Actions)
            • Loop - Actions
              • Hero - Create Tome of Strength and give it to (Picked unit)
              • Set available_stats[(Player number of (Triggering player))] = (available_stats[(Player number of (Triggering player))] - 1)
              • Dialog - Clear diag
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • available_stats[(Player number of (Triggering player))] Greater than 0
                • Then - Actions
                  • Trigger - Run edit diag <gen> (ignoring conditions)
                  • Dialog - Show diag for (Triggering player)
                • Else - Actions
          • Custom script: call DestroyGroup(udg_temp_hero)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to dia_button[2]
            • Then - Actions
              • Set temp_hero = (Units owned by (Triggering player) matching (((Matching unit) is A Hero) Equal to True))
              • Unit Group - Pick every unit in temp_hero and do (Actions)
                • Loop - Actions
                  • Hero - Create Tome of Agility and give it to (Picked unit)
                  • Set available_stats[(Player number of (Triggering player))] = (available_stats[(Player number of (Triggering player))] - 1)
                  • Dialog - Clear diag
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • available_stats[(Player number of (Triggering player))] Greater than 0
                    • Then - Actions
                      • Trigger - Run edit diag <gen> (ignoring conditions)
                      • Dialog - Show diag for (Triggering player)
                    • Else - Actions
              • Custom script: call DestroyGroup(udg_temp_hero)
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Clicked dialog button) Equal to dia_button[3]
                • Then - Actions
                  • Set temp_hero = (Units owned by (Triggering player) matching (((Matching unit) is A Hero) Equal to True))
                  • Unit Group - Pick every unit in temp_hero and do (Actions)
                    • Loop - Actions
                      • Hero - Create Tome of Intelligence and give it to (Picked unit)
                      • Set available_stats[(Player number of (Triggering player))] = (available_stats[(Player number of (Triggering player))] - 1)
                      • Dialog - Clear diag
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • available_stats[(Player number of (Triggering player))] Greater than 0
                        • Then - Actions
                          • Trigger - Run edit diag <gen> (ignoring conditions)
                          • Dialog - Show diag for (Triggering player)
                        • Else - Actions
                  • Custom script: call DestroyGroup(udg_temp_hero)
                • Else - Actions
                  • Dialog - Hide diag for (Triggering player)
                  • Dialog - Clear diag
It's quite nice if I say so myself, if not a little complicated. I am 92.57% certain it's MUI but I can be wrong.

I hope you are understanding everything :grin:
If not you can message me or else here and I'll see what I can do.

Good luck!

EDIT
It's complicated mostly because of the Dialog. If you had a building where they choose it would be a lot simpler.
 
Last edited:
Level 8
Joined
Nov 9, 2008
Messages
502
I'm so proud of this system I'm going to bump it :)

Can I get confirmation it's MUi and passing (triggering player) to another trigger works for multiple users?
 
Level 11
Joined
May 31, 2008
Messages
698
SPEAK ENGLISH .....
lol
But seriously i can barely interperet what you are trying to say. If you want the ability to give 3 points per level, then set it to that. If you want them to be able to choose, then make 3 different abilities. I think that what you are trying to do can be done in object editor, but i dont really understand exactly what you want...
 
Level 5
Joined
Dec 18, 2007
Messages
205
no-one really knows what he means...but if toofless is right then this thread is already solved.
but the english is really bad o_O
 
Level 8
Joined
Nov 9, 2008
Messages
502
Go play Virus Infection and you will know what he wants for heroes.

I'm sorry I just wanted to know the followup. Tested fine for me solo but I found out it bugs.

So not strictly solved
 
Status
Not open for further replies.
Top