Making a Score Leaderboard

werasd

New Member
Reaction score
14
Ok lets go...

First the variables:
Name: Player_Kills ; Type: Integer (Array); Initial Value: 0

First Trigger: Create the leaderboard:
CreateKills
Events
Time - Elapsed game time is 5.00 seconds
Conditions
Actions
Leaderboard - Create a leaderboard for (All players) titled Score
Custom script: set bj_wantDestroyGroup=true
Player Group - Pick every player in (All players) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked player) controller) Equal to User
((Picked player) slot status) Equal to Is playing
Then - Actions
Leaderboard - Add (Picked player) to (Last created leaderboard) with label (Name of (Picked player)) and value 0
Else - Actions
Do nothing
Leaderboard - Show (Last created leaderboard)

Second Trigger: Modify if a unit dies:

ModifyKills
Events
Unit - A unit Dies
Conditions
Actions
Set Player_Kills[(Player number of (Owner of (Killing unit)))] = (Player_Kills[(Player number of (Owner of (Killing unit)))] + 1)
Leaderboard - Change the value for (Owner of (Killing unit)) in (Last created leaderboard) to Player_Kills[(Player number of (Owner of (Killing unit)))]
Leaderboard - Sort (Last created leaderboard) by Value in Descending order

Was it good? Post!
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
Custom script: set bj_wantDestroyGroup=true
Player Group - Pick every player in (All players) and do (Actions)
"All Players" Player Group is an already made group so if u destroy it u can't use it again so u better remove this custom script
 

AceHart

Your Friendly Neighborhood Admin
Reaction score
1,495
> Custom script: set bj_wantDestroyGroup=true

The very next trigger that runs a "pick every unit in" action will destroy whatever group it's using.
Remove it.
It's for unit groups btw, not player groups.

"All players" doesn't leak anyway.

"Do nothing" isn't needed, it isn't doing anything anyway.

> ((Picked player) slot status) Equal to Is playing

This condition isn't needed.


Your second trigger should have a condition:
(Killing unit) not equal to No unit
 

PurgeandFire

zxcvmkgdfg
Reaction score
509
It's good, some errors, (mentioned above), but this helped me sort some stuff out. Thanks! +rep

________________________________

HEAD BANGER!!! :banghead: :banghead:
 

Terrabull

Veteran Member (Done that)
Reaction score
38
>
> ((Picked player) slot status) Equal to Is playing

This condition isn't needed.

Wait, it's not? But if a player leaves, won't the slot status still be set to User? In other words, won't it add people who are longer playing? (given that it is done at the beginning of the game I realise that's a low-probability chance, but it still is a chance).

Your second trigger should have a condition:
(Killing unit) not equal to No unit

How would that be possible? Damage over time would refer to the unit that killed it, and most poisen won't kill a unit. Also, how would that make any problems if it wasn't there?


In refrence to your trigger, I like to put my leaderboards at 0.00 time, but if there isn't anything around to kill for 5 seconds it won't matter.
 

Master

Thou shall be helped by...The Black Adder!
Reaction score
72
How would that be possible? Damage over time would refer to the unit that killed it, and most poisen won't kill a unit. Also, how would that make any problems if it wasn't there?
A Unit dying by a DoT buff wouldn't actually have a killing Unit...it is usually reffered on killing by normal attack.
 

AceHart

Your Friendly Neighborhood Admin
Reaction score
1,495
> I realise that's a low-probability chance, but it still is a chance

Well, if that's something you worry about, you need a trigger anyway that deals with leavers once the game is running.

> How would that be possible?

You can die for plenty of reasons. Not all of them include an enemy beating you up...
Entangling Roots and the caster dies before you do.
Some long lasting effect, and the dummy unit that cast it is long since gone.
Some area spells that don't register a caster.

The problem?
Well, the player number of a player that doesn't exist is 0.
And the owner as such does not exist.
But you're still trying to set his value in the leaderboard.

Some day, you may want to add a multiboard to your map.
Features like this one will result in entire rows or columns to get weird values...
Leaderboards are rather resistant, but, well, at least you know about it... :p
 

werasd

New Member
Reaction score
14
Ok, anyway i dont need to reconstruct the thread. I think the users should see all the posts to make it work. Although it will help brushing up on World Editor.
 

Sim

Forum Administrator
Staff member
Reaction score
534
I suggest adding CODE tags too :p

The # button.
 
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