• 🏆 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!
  • 🏆 Hive's 6th HD Modeling Contest: Mechanical is now open! Design and model a mechanical creature, mechanized animal, a futuristic robotic being, or anything else your imagination can tinker with! 📅 Submissions close on June 30, 2024. Don't miss this opportunity to let your creativity shine! Enter now and show us your mechanical masterpiece! 🔗 Click here to enter!

How make custom exp required?

Status
Not open for further replies.
Level 6
Joined
Apr 5, 2018
Messages
116
This is possible to make to not? Exp based on number of killing units. 2 Exp per unit, 2 players (1 EXP PER PLAYER) RPG map. if it's impossible, how to calculate the experience gained on the map so that the hero neither becomes too powerful too quickly, nor does he gain experience too slowly. Do you can suggest me better idea. My map will be longplay i can't test exp a lot of time.
 
Last edited:

Uncle

Warcraft Moderator
Level 66
Joined
Aug 10, 2018
Messages
6,748
You can adjust the Hero experience rate.

  • Actions
    • Set VariableSet tempPG = (All players matching (((Team number of (Matching player)) Equal to 1) and (((Matching player) slot status) Equal to Is playing)).)
    • Set VariableSet tempInt = (Number of players in tempPG)
    • Player Group - Pick every player in tempPG and do (Actions)
      • Loop - Actions
        • Hero - Make (Picked player) Heroes gain (100.00 / (Real(tempInt)))% experience from future kills
    • Custom script: call DestroyForce (udg_tempPG)
You'd probably want to run the above trigger again when someone leaves so that they don't count towards the experience penalty.
  • Player - Player 1 (Red) leaves the game
 

Uncle

Warcraft Moderator
Level 66
Joined
Aug 10, 2018
Messages
6,748
"Exp based on number of killing units. 2 Exp per unit, 2 players (1 EXP PER PLAYER) RPG map"

^ I showed you how to do this.

If you want a different idea then how about lowering the experience rate every time a player gets a kill (down to a minimum value). Then increase it back again after say 30 seconds. So like -1% exp rate per kill, down to a minimum of 20%, and then 30s after each kill you get +1% exp rate back.

This way if the player kills a lot of enemies in a short amount of time their experience rewards will be much worse than if they spread out their kills over a longer amount of time.

Or an ugly but easy method, have a bunch of Elapsed Time triggers that adjust the exp rate at different times.
Elapsed Time 600 seconds -> Set exp rate to 90%
Elapsed Time 1200 seconds -> Set exp rate to 80%
Elapsed Time 1800 seconds -> Set exp rate to 70%
etc...
 
Status
Not open for further replies.
Top