Teamkiller Exploit


(NovaPrime) #1

Has anyone heard of a way to exploit team killing? I have this dude that keeps killing team members but somehow manages to get in SPEC before the damage stats hit him, so the server won’t kick him.

Anyone hear of this or know a way to patch it? or adjust cvars to prevent it?

I am running etpub and noquarter mods


(acQu) #2

Interesting. A quick look at clientPersistant_t shows this little comment here:

// client data that stays across multiple respawns, but is cleared
// on each level change or team change at ClientBegin()
typedef struct {
...
	int			complaints;				// DHM - Nerve :: number of complaints lodged against this client
	int			complaintClient;		// DHM - Nerve :: able to lodge complaint against this client
	int			complaintEndTime;		// DHM - Nerve :: until this time has expired
...
} clientPersistant_t;

This is from etmain code.

So probably whenever he switches team his counter “complaints” will get reset and he will not be kicked, because it can’t reach the maximum. You could use a Luascript to avoid that though.

_et_gclient_addfield(		pers.complaints,											FIELD_INT,			0										),

is accessible in etpub.

You can also check his teamdamage at the end of the round

_et_gclient_addfieldalias(	sess.team_damage,				sess.team_damage_given,		FIELD_INT,			0										),

Interesting nevertheless. Will further check this out during the month. Probably not that important, but maybe the mod dev whose mod you are using will fix it.


(NovaPrime) #3

He tends to use the panzer mostly, because he will blast it, and has time to go spec, then he will kill groups of same team, but he will be in spec by the time he does it. I thought about lua also. Maybe adding a delay in how long it takes to go spec, or maybe if server has FF on, it restricts the panzers to 0.

Another member suggested making a lua that only allows members of a certain rank to have the panzer (I like this idea)

But I am not strong in lua, otherwise I would probably do this :frowning:


(Mateos) #4

Some mods tweaked this to not reset the kill/death/acc stats, maybe this can be as well included, since some retarded enjoy it…


(twt_thunder) #5

If you know who he is, ban him from the server…


(NovaPrime) #6

lol good idea, and I did about 6 times

etpub has MAC+IP ban yet he returns


(Mateos) #7

Same etkey? Maybe force him to change of it each time :slight_smile:


(stealth6) #8

etkey is the easiest to replace. Take maybe 2 minutes max. Then you have Mac spoofing and dynamic IP so… Just need a better system.


(Mateos) #9

Something in the OS which can’t be changed or spoofed I guess, and enough unique so no doubt on the banned guy?


(acQu) #10

I just rechecked. Forget what i wrote n post #2 :slight_smile:

If you ban him via MAC+IP, and yet he returns, then he is probably a haxzorz: talk you must good side in him :smiley:


(NovaPrime) #11

I noticed he is only changing his last couple numbers in IP, then returns. One of his bans has a mac but he probably switched computers, used a virtual box…whatever.

Also, I notice in logs that many people connect with a MAC = NONE, not sure if this is a problem or not. So many people in my shrubbot file have this.

So I ended up blocking his IP range on the router. Isn’t there a subnet ban lua floating around? Would be so much easier.

As far as a more permanent solution, I just turned friendly fire off, and removed the vote. This sucks, but I cant handle this exploit anymore.