scintillating luminescence Jul 27 @ 10:26am
Brainstorming anti-rushing techniques
I was considering the design of an anti-rushing plugin. I would like to request some brainstorming ideas from the community about how one may detect rushing in a reliable and robust manner, appropriate methods of punishment, and other ways to create an incentive to stick with your team.

Here is what I have so far. The game has a concept known as "flow" - essentially, how far a Survivor is between the beginning and ending saferooms on the map (or how long until the rescue vehicle arrives for a finale). Think of a versus match with the progress bar for the Survivors - it shows the maximum flow they have achieved so far. I can accurately detect the current flow of each Survivor pretty reliably.

My anti-rushing detection was going to involve comparing the survivor with the highest flow to the other survivors. If the other Survivors are sticking together and one of them stands out as having a much higher flow, that will be detected as rushing. There may be some complications here if Survivors have been e.g. thrown by a charger or punched by a tank, or their teammates are incapped and he's rushing for score, etc. But I can probably account for those complications, as they are identified, or take a conservative approach that will favor "not rushing" when the situation is ambiguous, so that it only detects particularly egregious rushing.

There are also various punishments. Some of them should always be true, even when not rushing, just to remove the incentives for rushing. Like when an SI is culled because he's too far away to attack the Survivors, he should be instantly respawned. Or the Director should not go quiet until all Survivors are at the checkpoint of interest (e.g. if one Survivor races to the cola store, it won't stop the Director from spawning commons and mobs until his teammates get there too).

Others target the rusher specifically. Teleporting the rusher back to the Survivor with the lowest flow. Or blocking them from using their movement keys. Preventing them from closing the saferoom door. Forcing all mobs to spawn in front of the Survivors 100% of the time, raising the common limit, and reducing the mob timer. Or manipulating the various intensity cvars so that there is almost no relaxation and almost constant peak.

I was also considering giving the rusher a chance to save themselves. When a rush was detected, it would display a hint to the survivor that he has 10 seconds to start regrouping with his teammates before he begins to be punished.

That's what I have to start with. Does anyone have any other ideas for detecting, punishing, or adjusting the incentives around rushing? Does anyone see any pitfalls to any of the approaches listed?
Last edited by scintillating luminescence; Jul 27 @ 10:30am
Showing 1-15 of 36 comments
< >
Canadian Steak Beater Jul 27 @ 10:43am 
That makes no sense at all. The goal is to move forward, and some people "rush" because they realize their team has been standing in the same spot for 5 minutes eating one attack after another to look for a bottle of pills. Some survivors rush ahead to block spawns and secure locations to make them safer for everyone else. Some teams like to race and speed run with and against each other.

But if you really have a person rushing just to troll when you need them to help and cover you then use the kick function because thats what it's there for. Why would you want to implicate some overly complicated and unnecessary system as that when the kick function works better for that purpose.

Would you honestly want someone that doesn't want to play as a team with you anyway? If your "system" forces them to come back the next best thing they'll do is TK everyone and leave anyway. Which, again, the kick function is there.
Last edited by Canadian Steak Beater; Jul 27 @ 10:48am
scintillating luminescence Jul 27 @ 11:00am 
I'm not talking about the survivor who runs up ahead a little bit to spawn block. That's not the kind of rushing that I'm talking about discouraging. Nor am I talking about survivors who are all rushing together. No, I am talking about specifically targeting that jerk who leaves his teammates in the dust without any regard for their well-being. And I figured it was..."gentler"?...to create incentives to stay with your team, instead of falling back on good old votekick.

Forgive me, but none of the things I proposed sound all that complicated, at least to me. They're standard fare that I've been doing for years as I design sourcemod plugins. All of that is far less complicated than the jockey incap ride. Plus, I honestly do consider solely culling SI to be a bad design decision, rush or no rush, and that they should be respawned immediately in a better place. Same with the Director going quiet when any survivor shows up at certain triggers, instead of requiring them all to be there.

Also, while I appreciate the time you took to write a response, it wasn't the kind of material I was hoping to receive (at least, at first). If you wouldn't make use of such a plugin, or you don't find it useful, that's fine and nobody is making you use any sourcemod plugin that you don't want to use - but that's not the goal I had for this thread, which was brainstorming ideas.

Teleporting them back might cause them to TK and leave - and that's something I had not considered (and likely something I could even account for, by giving something like 10 second FF immunity after a teleport punishment). But there are other ideas, such as spawning mobs in front of them, that are far more subtle, and unlikely to be noticed. And who knows, maybe they're an arrogant punk who will TK, or maybe they're just a noob who doesn't understand that they're supposed to stay together.

If you don't have any ideas, that's okay. It's no big, not everyone is as interested in understanding and tweaking game mechanics as I am. (EDIT: Upon re-reading this, it can come off as condescending, which was not my intention; what I mean to say is that I am less satisfied with "just votekick" than you are) Thank you for pointing out the weakness in the teleport punishment, though.
Last edited by scintillating luminescence; Jul 27 @ 11:07am
Canadian Steak Beater Jul 27 @ 11:07am 
The same rules apply. If you have someone being a jerk leaving their team simply kick them. There would never be and justifiable reason to use a system to warn them, stop them and teleport them--good intentions or not.

If someone's leaving you behind just to be a dack, kick them and get it over with. Your "system" isn't going to make them any less of a dack. A person that intends to troll will troll. Your system just gives them the ability to stay in game and continue to do it. Unlike kicking them.
Last edited by Canadian Steak Beater; Jul 27 @ 11:11am
Mortis Jul 27 @ 11:23am 
I really like these ideas. I remember seeing an anti-rush plugin with a saferoom locker and a teleporter but to combine them and/or add a director to force spawns upon their location would be excellent. It is too often that I have people who join my games and rush like newbs while everyone is still fighting a horde, and then the same rushers bounce back when things are going south and who then hide behind the group.

Finding the appropriate solution has been rather difficult, without simultaneously raising the challenge for everyone solely because of the terrible role of the solo player. I really do like the idea of the director spawning hordes on the rusher, the instant spawning of the culled, and the distance factor to the lowest flow.

In this system, would it be possible to find a medium [as opposed to lowest] flow and bring back the rusher if he exceeds X distance?
Last edited by Mortis; Jul 27 @ 11:25am
(ΘČĐ)™Conrad925 Jul 27 @ 11:27am 
Hilarious that you gave this absurd notion so much thought. Don't you know that the first objective is to get from point A to point B so you can survive/be rescued?
scintillating luminescence Jul 27 @ 11:40am 
Originally posted by Mortis:
In this system, would it be possible to find a medium [as opposed to lowest] flow and bring back the rusher if he exceeds X distance?

There are not many limits on what I can do. The initial plan involved creating some constant or percentage that represents a "Rush Threshold", and if one Survivor's Flow exceeds the Rush Threshold for (all?) other Survivors who are not pinned or incapped, it will detect that as inappropriate Rushing.


Originally posted by (ΘČĐ)™Conrad925:
Hilarious that you gave this absurd notion so much thought. Don't you know that the first objective is to get from point A to point B so you can survive/be rescued?

I give many things a lot of thought. It's a trademark of mine; I'm a thinker. :) Don't you know that the first objective is...teamwork?
(ΘČĐ)™Conrad925 Jul 27 @ 11:42am 
Vote-kicking is the best solution to what you percieve as a problem. Your notion of punitive action against the rusher still leaves you short handed in battle, and is counter-productive.
[†]Munkee_King[†] Jul 27 @ 11:47am 
The point of this game is whatever the people want. For me, my goal is to keep my team alive, even if I die.

Other people it is get through the map fast as possible. Others like the stealthy play.

Others.. just wanna play as the zombies and om nom a mothah♥♥♥♥ah.

Don't wanna rush? Play Headshot Only mutation. That will slow you down alittle during a horde.
scintillating luminescence Jul 27 @ 11:48am 
Votekick is the best solution..In your opinion, you mean. That's the great thing about life - you can have your opinion, I can have my opinion, Mortis can have his, Munkee can have his, Rachel can have hers. And the best part - no one would force you to use any sourcemod plugin that you don't want to. If you think it's counter-productive, or you don't think rushing is a problem - cool, don't use the plugin. If you think votekick is enough - awesome, I'm glad the game's default solution is acceptable to you. However, votekick has already been mentioned, so I don't see why you feel the need to bring it up again. In the future, please try to be more constructive and productive with your replies. Thank you.
Mortis Jul 27 @ 11:50am 
I disagree that vote-kicking solves the problem of rushing. Sometimes you have the occasional regular player who feels inclined to rush for a few moments. While understandable that they want to push forward like mad, when a solo or a sizeable group leaves the other group behind, the discrepency caused in spawn locations becomes even greater. A reminder serves as a far better tool and feels more pragmatic, as opposed to simply commenting and/or freezing the player(s).
(ΘČĐ)™Conrad925 Jul 27 @ 11:52am 
Originally posted by scintillating luminescence:
Originally posted by Mortis:
In this system, would it be possible to find a medium [as opposed to lowest] flow and bring back the rusher if he exceeds X distance?

There are not many limits on what I can do. The initial plan involved creating some constant or percentage that represents a "Rush Threshold", and if one Survivor's Flow exceeds the Rush Threshold for (all?) other Survivors who are not pinned or incapped, it will detect that as inappropriate Rushing.


Originally posted by (ΘČĐ)™Conrad925:
Hilarious that you gave this absurd notion so much thought. Don't you know that the first objective is to get from point A to point B so you can survive/be rescued?

I give many things a lot of thought. It's a trademark of mine; I'm a thinker. :) Don't you know that the first objective is...teamwork?

Teamwork is a means to achieve the main objective. How does punishing a team mate help the team? Better to vote-kick someone who utilizes a different playstyle than the others and have a bot (until a new player joins) instead of trying to fight the hordes with only three survivors, no?
scintillating luminescence Jul 27 @ 11:55am 
Removing the incentives to rush (such as SI culling, using your slower teammates to spawn block commons in front of you, and Director quieting) changes the calculus of the rusher, who then may decide that it's better to stick with his teammates if he can't exploit the Director's predictable patterns.

EDIT: Think of this plugin as a lock. Locks don't actually keep dedicated thieves out. Someone who wanted your stuff will just break your windows to get in. Locks keep the honest man honest by gently persuading them to leave the car/house alone. In the same way, this anti-rushing plugin isn't going to stop dedicated rushers, who will just try to do it anyway. But that doesn't mean it won't do something similar to gently persuade the honest man to remain honest.
Last edited by scintillating luminescence; Jul 27 @ 11:59am
Canadian Steak Beater Jul 27 @ 12:12pm 
Originally posted by (ΘČĐ)™Conrad925:

Teamwork is a means to achieve the main objective. How does punishing a team mate help the team? Better to vote-kick someone who utilizes a different playstyle than the others and have a bot (until a new player joins) instead of trying to fight the hordes with only three survivors, no?

Yea exactly. This "system" doesn't stop anything from happening, and instead just allows for more destruction. If a person is there to be destructive to everyone around them what is the point in keeping them around. If they cant rush ahead, then they will just team kill, suicide, mic spam, or just watch you and your friends die to specials without helping you whether theyre standing next to you or not.

And leave after their job is done. Then youll be standing there thinking "Maybe i should have just kicked them?"
Last edited by Canadian Steak Beater; Jul 27 @ 12:14pm
acommoncreeper Jul 27 @ 12:14pm 
Really this doesn't make any sense, let's say a teammate is struggling behind with the horde and you want to run for points, it doesn't make sense for you to punished when your teammate is practically dead anyway.
scintillating luminescence Jul 27 @ 12:28pm 
Originally posted by ♥.:Mrs. McButt:.♥:
Yea exactly. This "system" doesn't stop anything from happening, and instead just allows for more destruction.

If you keep focusing on the teleport punishment, yeah. It's just an idea, one small piece of a larger puzzle. If it's a bad piece, I toss it.

SI respawning instead of culling? That's just a good idea, rush or no rush.

This "system" (I don't know why you continue to use scare quotes) as you call it did contain a proposed solution that does stop something - common spawn blocking. Rushing exploits how commons are spawned and culled by the Director so that the Rusher does not have to deal with nearly as many commons, which is in effect "spawn blocking" the commons by ignoring his teammates. Adjusting the chance that mobs spawn in front, and bumping up the common limit temporarily, will prevent spawn blocking commons.

And leave after their job is done. Then youll be standing there thinking "Maybe i should have just kicked them?"

If at any point I even suggested that I was considering the possibility of potentially removing votekick, please forgive me. That was never my intention. Votekick is, has been, and will always be an option, and it is not mutually exclusive with this idea. I am focusing on adjusting the incentives because I have faith that some humans will adjust their playstyle if the incentives to rush are removed or reduced. Not all of the players will adjust, but you can't win all of the time anyway, and I'm perfectly happy to settle for "some of the time", but more importantly - "on servers for people who would find this kind of plugin to be beneficial".


Originally posted by acommoncreeper:
Really this doesn't make any sense, let's say a teammate is struggling behind with the horde and you want to run for points, it doesn't make sense for you to punished when your teammate is practically dead anyway.

i.e. "their teammates are incapped and he's rushing for score", from OP. The intention was never to inappropriately punish someone who like that. But even then, at that point, if the guy at the back is basically dead, the mobs should arguably be spawning in front of the survivors, instead of the guy who is a lost cause. And anyway, if he's "rushing for score" it's probably versus, and you could make this only used in campaign.

---

Again, the intent is not to punish "legitimate" rushing. Please don't focus on the teleport punishment, which was but one example and probably a bad example to begin with, since it doesn't really adjust incentives so much as slap the offender around. It's like a shock collar when what you really need are the appropriate provision of treats (or, more aptly, the removal of inappropriately provided treats)

Rushing generally exploits design decisions, and my goal is to stop those exploits. People can and still would/should rush, people can and still would/should votekick...I'm just trying to tweak the incentive structure as gently as possible (hence, "spawn more mobs in front" and "raise common limit" to stop common spawn blocking, respawning instead of culling SI)
Last edited by scintillating luminescence; Jul 27 @ 12:41pm
Showing 1-15 of 36 comments
< >
Per page: 15 30 50
Date Posted: Jul 27 @ 10:26am
Posts: 36