Sometime we should think how to balance the "performance" and "quick refresh". It's no need to set every player's broad, I think you should cheek the example from skbee like this:
on join:
# set things here that don't change (no need to include them in the loop)
set title of player's scoreboard to "&bLe &3Title"
set line 15 of player's scoreboard to "&aPlayers:"
set line 13 of player's scoreboard to "&aMoney:"
set line 11 of player's scoreboard to "&aKills:"
set line 9 of player's scoreboard to "&aDeaths:"
while player is online:
# set things here that need to update periodically
set line 14 of player's scoreboard to "&7 - &b%size of all players%"
set line 12 of player's scoreboard to "&7 - &b%balance of player%
It's a better way to refresh "death" by using:
on death:
add 1 to {death::%player%}
set line 9 of player's scoreboard to {death::%player%}
At the end of command, I recommand you to use less skript addon because it's not so difficult and make this skript plugin more useful. By the way, you may need to simplify your command like "/nnsb-help" to "/nnsb help". It's more modernized. I'm waiting for your new skript plugins and share some other things with you.