Welcome, Guest. Please login or register.
Did you miss your activation email?
September 20, 2024, 02:59:58 AM
Home Help Login Register
News: Zombie Master 2 discussion

Zombie Master  |  Other  |  Trouble in Terrorist Town  |  Topic: Karma
Pages: [1] 2
Author Topic: Karma  (Read 13122 times)
Bad King Urgrain
Administrator
*****
Posts: 12276



« on: January 09, 2010, 07:05:26 PM »

An upcoming update (edit: v100110) will add an optional Karma system to TTT. It is meant to create in-game consequences for innocents killing other innocents.

It's really a fairly simple system, but there's a wall of text because I'm explaining all the details, because there's been a lot of discussion on systems like this. Before you ask: yes, servers can disable it. In the first release it won't even be enabled by default.


Every player has a karma value, starting off at 1000, which is also the maximum karma. If you damage a "teammate" (so an innocent if you're innocent, or a traitor if you're traitor), your karma will reduced by an amount based on your victim's karma and the amount of damage you did.

As your karma lowers, your weapons will do less damage. The karma to damage penalty conversion follows a curve, so as long as your karma is pretty good (say, above 800) you won't really notice. However, at 700 you will be doing below 80% of your damage, and at 550 karma it's only half. Of course, it will take quite some teamkills to get there.

Every round, your karma will increase a little if it's lower than the max. Playing a "clean" round, without harming a teammate, will get you a significant bonus to that. Damaging or killing a traitor will also net you a little karma. There's no bonus (or penalty) for killing innocents when you're traitor, but as traitor you're basically guaranteed to have a clean round anyway.

Your karma at the start of a round is taken as your "base" karma. It is used to compute your damage penalty (if any), it is shown on the scoreboard, and it is what others see a description of when they target ID you. This description is colour-coded like health and goes "Reputable" -> "Shady" -> "Criminal" -> "Backstabber" -> "Liability" depending on the karma level, where the lowest one means you're pretty much a blatant RDMer who can and should be shot on sight. (Suggestions welcome for better names.)

During a round, your "live" karma is tracked and updated as you damage/kill others. This "live" karma is used to compute the penalty your killer gets when he kills you. The moment someone damages you his "live" karma goes down. If you're a clean player, you know someone who RDMs you will be penalised. On the other hand, if you see someone kill/hurt several people you know your karma won't get destroyed if you shoot him, because he's either a traitor or he will have low karma.

The idea here is that, as much as possible, you can still shoot people you would normally shoot without fearing for your karma too much. You will not be in serious trouble unless you consistently kill teammates every round (which will get harder every time, with the damage penalty and the fact that it becomes cheaper for others to kill you).

For players who do stuff like plant bombs on thething (ie. bad stuff the game cannot track), you might consider teaming up with a few others and damaging and killing him together. This means any karma penalty will be "spread out" over all of you. It's essentially an execution. Of course, doing this repeatedly will start hurting your karma, so ganging up and just shooting everyone is not viable.

Misc notes:
* There's no concept like damage bonuses if your karma is high enough, at max karma you just deal 100%, normal damage. Server admins can configure the starting karma though, so if they want they can set it to eg. 800, so you'd effectively have a bonus compared to new players if you earn 1000 karma. Of course in TTT tradition a bunch of other values can also be configured (and, also in tradition, no one will do so).

* Note that the damage penalty is not updated during a round based on your "live" karma. It is set at the start of the round based on your "base" karma as shown on the scoreboard. This is because it would be possible in certain cases to determine if a killer is a traitor by having him shoot you and comparing his damage penalty to what it should be based on his base karma. A traitor would have the same penalty as his karma suggests, while an innocent would have a larger penalty. Hard to follow, and it wouldn't be easy, but goddamn people get up to crazy shit in this game.
« Last Edit: January 10, 2010, 12:16:23 PM by Bad King Urgrain »
worbat
Santaman
****
Posts: 13027


Fnar Fnar Fnar


« Reply #1 on: January 09, 2010, 07:23:20 PM »

Looking forward to trying this out.

Shadow:  Ben's secret name is ben

my god
Ajunk
Build Tester
*
Posts: 14000


ಠ_ಠ


« Reply #2 on: January 09, 2010, 08:14:26 PM »

Can I assume you can't reset your karma by just rejoining a server?



Anyways, while I love the system itself, I can't say I'm a huge fan of damage reduction. Obviously I'll need to play it first, but I loved the impact the non-gameplay affecting prop-ghosting, and how your powers were based on your score. I think it would be cool to see more things like that, such as having lower karma spawn you later into the game (in preparation mode).

You're all the most fucking heartless people
CrazyChicken
Poster

Posts: 604


Beep Beep Boop


« Reply #3 on: January 09, 2010, 09:24:52 PM »

I like it. Can't wait to try it out.

Most Neutral Poster
Release: ZM_BlackMesa1, TTT_Bank, TTT_Backalley
All my maps start with "B" hmm...
Bad King Urgrain
Administrator
*****
Posts: 12276



« Reply #4 on: January 09, 2010, 09:27:58 PM »

Can I assume you can't reset your karma by just rejoining a server?

Nope, it gets stored. It will currently reset at map change (because pretty much everything in memory resets). An obvious improvement if the system works out in practice would be to make it persist, which gmod has stuff for.

Quote
Anyways, while I love the system itself, I can't say I'm a huge fan of damage reduction. Obviously I'll need to play it first, but I loved the impact the non-gameplay affecting prop-ghosting, and how your powers were based on your score. I think it would be cool to see more things like that, such as having lower karma spawn you later into the game (in preparation mode).

Of course the issue with non-gameplay penalties is that it's harder to make players feel them. I've also considered health reduction, or accuracy reduction, or speed reduction. I like the idea of later spawning as well, though it's only effective on maps where weaponry is scarce. I can see it ending up as a bunch of cvars for servers to enable or disable types of punishment so they can mix and match.
« Last Edit: January 09, 2010, 09:31:39 PM by Bad King Urgrain »
C.Mong
Poster

Posts: 280


DNR Owner


« Reply #5 on: January 09, 2010, 09:59:37 PM »

Can I assume you can't reset your karma by just rejoining a server?



Anyways, while I love the system itself, I can't say I'm a huge fan of damage reduction. Obviously I'll need to play it first, but I loved the impact the non-gameplay affecting prop-ghosting, and how your powers were based on your score. I think it would be cool to see more things like that, such as having lower karma spawn you later into the game (in preparation mode).


This is pretty much what I think about this. I really like idea of spawning a little bit later in preparation mode, but like Ajunk I've never been a fan of damage reduction. Granted I'm willing to try it out, I've never really had a personal problem with killing teammates so I don't see this affecting me too greatly, hell it'll probably make the game easier for me. haha.

www.dnr-gaming.com
Sewora
Poster

Posts: 24


« Reply #6 on: January 09, 2010, 10:03:59 PM »

Sounds like a good idea, but it might have some serious consequences. Considering that the game is pretty much about innocent killing innocents due to paranoia and misguided suspicons, this change will make it harder for the traitors to turn innocents against innocents since people would be more reluctant against shooting eachother.

Don't get me wrong, I like the idea and it would help against people who are so incredibly cavalier about shooting other people, I'm just saying it might have some consequences like I mentioned.
Firespray
Build Tester
*
Posts: 1447


:-(


« Reply #7 on: January 09, 2010, 11:14:07 PM »

To be honest, I don't really like the idea.  It sometime really depends if some person just randomely joins a server, shoots a guy or two, and you say snipe them and they are innocent. It gets lowered.  Just because they just started playing.

Quote
Z3RO: Tanners sister isnt bad looking :v
Firespray: New sig
Z3RO: noooo

holocalls traumatize worbat
Gamerofthegame
Poster

Posts: 1533


I'm after you, Worbat!


« Reply #8 on: January 09, 2010, 11:23:57 PM »

I can't say I like the idea, either. While I know it has good intentions, it's just how TTT runs that means everyone will get karma hits. It also might turn into a pissing contest, as if someone does something suspicious and is killed for it, and turns out to be innocent, the killer will rage on the person in question.

Still, I hope DNR doesn't turn it on, but otherwise I suppose it's management's discretion.
JossiRossi
Build Tester
*
Posts: 2351


Now touching you ever so slightly less.


« Reply #9 on: January 10, 2010, 05:29:48 AM »

To be honest, I don't really like the idea.  It sometime really depends if some person just randomely joins a server, shoots a guy or two, and you say snipe them and they are innocent. It gets lowered.  Just because they just started playing.


In this event your reduction would not be very severe at all because the innocent you killed, had himself killed other innocents. Basically if you kill an RDM'er you get a significantly less penalty.

Get off my lawn you rotten kids!
Nah, he's just being 'correct'. It's just JossiRossi's way of dealing with it.

Indy Game News: Thanks For Playing.
Bad King Urgrain
Administrator
*****
Posts: 12276



« Reply #10 on: January 10, 2010, 08:46:53 AM »

Quote
it's just how TTT runs that means everyone will get karma hits.

I expect most people to be at 800-900 karma most of the time. This is not really an issue because if everyone does a few percent less damage, it has effectively stayed equal.

Everyone will get karma hits, yet at the same time, I think the reality is that you (very) often play a round where you do not hurt an innocent, and the bonus for that will add up.

Balancing will no doubt be necessary to make sure playing reasonably results in reasonable karma. I ran the numbers on a lot of different specific scenarios, but it's impossible to simulate an entire round with real players.
lynx
Poster

Posts: 34

[VD-Owner]


« Reply #11 on: January 10, 2010, 12:26:57 PM »

I expect most people to be at 800-900 karma most of the time. This is not really an issue because if everyone does a few percent less damage, it has effectively stayed equal.

Everyone will get karma hits, yet at the same time, I think the reality is that you (very) often play a round where you do not hurt an innocent, and the bonus for that will add up.

Balancing will no doubt be necessary to make sure playing reasonably results in reasonable karma. I ran the numbers on a lot of different specific scenarios, but it's impossible to simulate an entire round with real players.


If you require help with testing, me and a few people that are regulars on my community would be fully willing to help with that.

Venatus Defero Owner
Pulsar Effect Admin
Bad King Urgrain
Administrator
*****
Posts: 12276



« Reply #12 on: January 10, 2010, 12:59:50 PM »

I'm mostly looking for experiences in real-world gameplay, so just enabling karma and seeing how it goes would be the way to test. Depending on the results (like if everyone's karma sinks too quickly or something) I can suggest convar settings to tune it, and if they work out I can make that the default values for next version.

I don't really need specific scenarios tested or anything, I've already done that with bots. It's just about balancing the numbers at this point.
Charles445
Build Tester
*
Posts: 2338


I LOVE THIS AVATAR


« Reply #13 on: January 11, 2010, 01:28:04 AM »

So if you regain karma for rounds that you do not teamkill for, does this make idling possible?

del>Ok, so Bad King, you are just going to wait for Garry to fix?
What an idiotic thing to ask. Dammit weed.

Bookcases, Bookcases Everywhere
lynx
Poster

Posts: 34

[VD-Owner]


« Reply #14 on: January 11, 2010, 01:48:17 AM »

One thing I noticed was that the karma randomly drops on some people.  One of my admins had 800 something and dropped to 560 when he did nothing, and I dropped from 800 to 5-something after coming back from afk

Venatus Defero Owner
Pulsar Effect Admin
Bad King Urgrain
Administrator
*****
Posts: 12276



« Reply #15 on: January 11, 2010, 07:18:19 AM »

So if you regain karma for rounds that you do not teamkill for, does this make idling possible?

Yes, but I don't think it's worth it considering that karma resets on mapchange.

It's also not easy to prevent idling. If you say "only players who have played in a round regain karma", then people will just idle by spawning and then killing themselves.

Server admins will have to make sure the slots on their server are used as they want them to be used.

One thing I noticed was that the karma randomly drops on some people.  One of my admins had 800 something and dropped to 560 when he did nothing, and I dropped from 800 to 5-something after coming back from afk

The scoreboard karma information (ie. the "base" karma mentioned in the OP) updates only at the end of the round, to reflect how your damage penalty is also only updated at the start of the next round and not during one. Could that be what you saw?

There are really only a few places where your karma is increased or decreased during a round, and it's always because you did something to damage another player.
lynx
Poster

Posts: 34

[VD-Owner]


« Reply #16 on: January 11, 2010, 11:06:41 AM »

The scoreboard karma information (ie. the "base" karma mentioned in the OP) updates only at the end of the round, to reflect how your damage penalty is also only updated at the start of the next round and not during one. Could that be what you saw?

There are really only a few places where your karma is increased or decreased during a round, and it's always because you did something to damage another player.

Heres what happened with me:
Game started - 800 karma
Round ends - 857 karma
I go afk at this point for about 2 rounds, maybe less
Round starts when I get back - 540 karma

Venatus Defero Owner
Pulsar Effect Admin
Bad King Urgrain
Administrator
*****
Posts: 12276



« Reply #17 on: January 11, 2010, 12:34:16 PM »

Hmm. Not sure how that's possible, hard to tell as we don't know what happened in between. Were you in spectator mode during the AFK time?
Achilles
Poster

Posts: 2


« Reply #18 on: January 17, 2010, 11:57:58 PM »

Yeah I played on this server last night. Two suggestions however,

"Reputable" -> "Shady" -> "Criminal" -> "Backstabber" -> "Liability"
(really means: Good -> Bad -> Bad -> Bad -> Bad) We should change this.

Anyone with the Shady status or even having a non reputable status will be suspected quick. I think it should go:
Acclaimed-> Reputable -> Dubious -> Suspicious (or Shady) -> Escaped Convict (or just Convict)
(which means: Great -> Good -> Neutral -> Bad -> Worse)

Acclaimed will be 900 or higher.
Reputable will be 800 or higher.
Dubious will be 700 or higher.
Suspicious will be 600 or higher.
Convict will be 500 or higher.

My second suggestion is that everyone should start out around 800 or 850 giving people room to receive the acclaimed status or easily fall downwards into the dubious status. My reasoning? Everyone is a terrorist and they just pulled off a heist so everyone holds each other in equal regard until they do something wrong to go down to the bottom of the barrel or something praiseworthy to shoot to the top.

An admin told me last night people get banned for 5 minutes for dropping below 500. We should change this to 300 and try to make a more widespread use of the "spectrum." I've noticed that most people are either 1000 or 900. In other words, everyone is in "good" standing making this system somewhat pointless because the RDMers/typical fail players are always remembered from the previous round anyways. So, let's spread the karma out using the entire spectrum, start at around 800 and making the killing of innocent people more "dramatic" (twice as much karma loss) since there's tons of rounds where one person kills a suspected traitor, another one kills him, a third kill the second, everyone dies in the domino lineup.
Bad King Urgrain
Administrator
*****
Posts: 12276



« Reply #19 on: January 18, 2010, 08:39:18 AM »

A few of your suggestions apply only to TDR (saw your post there as well), like the banning. For the rest though:

The problem of starting below the maximum Karma is that players who have been on the server longer will have a damage bonus compared to people who just joined. This will encourage dumb stuff like joining a server and first idling or not really participating for several rounds until one's Karma is up.

Instead, with the current setup, everyone starts off equal. Any disadvantage you get is because you do something bad, not because your opponent has been on the server for 4 hours. I think that's good.

Most people being 900+ seems like a good thing to me, means they didn't RDM much.

Anyway, some of this stuff can be configured by the server to approximate what you want:
- ttt_karma_max will increase the max karma, though it won't give a damage bonus when you get above 1000.
- ttt_karma_kill_penalty can be increased to 30 for example, which will double the penalty of killing an innocent.
- ttt_karma_ratio can also be upped to increase the karma penalty for damaging or killing a fellow innocent.

The calculation to get the karma penalty for damaging someone works like this:
victim's karma * (damage amount * ttt_karma_ratio)

The default ratio is 0.001, so if your victim has 1000 karma and you deal 50 damage, you lose 50 karma. If you killed them as well, you get an extra kill penalty, which is equal to dealing a certain amount of damage. If the penalty convar is set to 30 as I mentioned, it would be as if you dealt 50 + 30 = 80 damage in total, so you lose 80 karma.

So ttt_karma_ratio is the best way to control the impact of hurting and/or killing someone. Setting it to 0.002 would double all penalties and make killing a fellow innocent a more serious thing.

Of course this would make it harsher on new players, easier on traitors, etc., but those balance considerations are up to the server if they want to modify things.
Pages: [1] 2
Zombie Master  |  Other  |  Trouble in Terrorist Town  |  Topic: Karma « previous next »
Jump to:  


Login with username, password and session length

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines
Page created in 0.01 seconds with 18 queries.