lithin9 / Unturned-Custom-Plugin

Other
0 stars 0 forks source link

Rethink the death rewards #27

Closed jcvl92 closed 9 years ago

jcvl92 commented 9 years ago

Someone's kill value should be based on how long they were alive(mostly this one) and how many people they have killed(this one to a lesser extent). Otherwise people could party up to tp to each other, disband, kill each other, and repeat until they are rich.

lithin9 commented 9 years ago

Base value + (( Seconds alive / 10,000 ) + ( players killed total / 50 ))

Surviving for 2 hours would make them worth 43.2 plus base value of 5, and had they killed three hundred people then it would add 6. A total of 54.2 credits. I think that's a good formula, and can be easily manipulated for event bonuses. Or whatnot.

lithin9 commented 9 years ago

Maybe add bonus money for head shot kills. Maybe even distance kills get more money? Distance and melee and headshot!

jcvl92 commented 9 years ago

Distance would be difficult, but could probably be done, we just diff the locations of the players. Head shots can grant 1.5x credits. Head shots are easy to detect. We can't make bleeding out give credits though :(

lithin9 commented 9 years ago

We should take kdr into affect as well. If a player has low kdr, then they should be worth less. A revised formula would be (baseValue + ((secondsAlive / 10,000) + (playersKilled / 50))) * ((kills of target/deaths of target) + eventBonus)

If they don't have a kill then they should be worth anything, other than maybe the base value. This will help new people start.

jcvl92 commented 9 years ago

I think baseValue should be 0 in order to enforce honorless kills and prevent spawn killing. My ideal formula is this:

( min( (victimsMinutesAlive / 3), 10) + victimsPlayersKilledSinceSpawn_5)_bonusMultiplier + flatBonus

So someone alive for half an hour who has killed 2 people will be worth 20 credits. Each kill DOES reward 5 credits, but it will reward it to the killer of the killer. So we still get the circulation of credits without the incentive to spawn kill. Spawn killing will just make you more valuable to others. This also solves credit farming with friends.

KDR would make good players that just spawned worth a lot, which would subject them to griefing. So any contributing stats have to be cleared on death.

bonusMultiplier and flatBonus are going to be at the discretion of what events are going on, what admins want to do.

Another caveat is that timeAlive and killsSinceSpawn both need to be persisted across login sessions. So, logging out and in won't reduce your value by zeroing your timeAlive and killsSinceSpawn. Also, it won't make your timeAlive huge. It will have to include a mechanism for stopping time measure on disconnect and restarting it on connect.

Events such as arena will store the current value object of all players and replace them with a new one according to the event(arena will have a base of 5 credits, plus 1 credit value per kill). After the event ends, their objects are replaced and timers are restarted, etc.

Also, one the same note, I think we should have a command to get the value of someone. so /value PlayerName will tell you how many credits they are currently worth. /value N will print the top N most valueable people and their values. You can get your own value too. This info should be added to /info as well.