double binding and macro prevention

What do you want to see in Armagetron soon? Any new feature ideas? Let's ponder these ground breaking ideas...
Post Reply
ishAdmin
Match Winner
Posts: 625
Joined: Sun Jul 04, 2004 12:11 am
Contact:

double binding and macro prevention

Post by ishAdmin »

I've had a thought about double binding. What I don't like about it is when it's abused, and is used to lag the game server. That's not in the spirit of the game if you ask me. My proposed solution would also stop people from using macros, which should *never* be used in my opinion.

Can there be a test between identical actions for the period of time between them. Let's say the fastest someone can double click a key is every 100 ms. (This should be tested to find out what a reasonable minimum period is.) If the previous occurrance of an action, say, turn-left, was executed less than 100 ms earlier, then a player could warned or kicked. It could work like spam protection. Warning them first, and if it happens too much within a certain time period, it could kick them. This would even allow a double binder to use it occasionally to get out of a sticky situation, but would prevent them from repeatedly double binding to cause server lag. This will not prevent people from using double key binding as additional key options.

Or maybe if they double key bind repeatedly, their cycle delay could increase each time. (It would fall again with time) It would be pretty hard to lag the server if your cycle delay increased to a whole second. :)

Thoughts? Is this possible? Would it be difficult to code? Would it be a practical solution?
Image
User avatar
Marrow
MVP - Project Contributor
Posts: 1655
Joined: Mon Jan 19, 2004 9:05 am
Location: New York

Re: double binding and macro prevention

Post by Marrow »

ishAdmin wrote:I've had a thought about double binding. What I don't like about it is when it's abused, and is used to lag the game server. That's not in the spirit of the game if you ask me. My proposed solution would also stop people from using macros, which should *never* be used in my opinion.

Can there be a test between identical actions for the period of time between them. Let's say the fastest someone can double click a key is every 100 ms. (This should be tested to find out what a reasonable minimum period is.) If the previous occurrance of an action, say, turn-left, was executed less than 100 ms earlier, then a player could warned or kicked. It could work like spam protection. Warning them first, and if it happens too much within a certain time period, it could kick them. This would even allow a double binder to use it occasionally to get out of a sticky situation, but would prevent them from repeatedly double binding to cause server lag. This will not prevent people from using double key binding as additional key options.

Or maybe if they double key bind repeatedly, their cycle delay could increase each time. (It would fall again with time) It would be pretty hard to lag the server if your cycle delay increased to a whole second. :)

Thoughts? Is this possible? Would it be difficult to code? Would it be a practical solution?
It would be a practical solution and it's possible.

The fine line, as you said, would be keeping double binding, but preventing repeated double binds within a short period of time.
User avatar
Yaza Yamagotchi
On Lightcycle Grid
Posts: 33
Joined: Tue Mar 02, 2004 4:26 am
Location: Kobe, Japan
Contact:

Post by Yaza Yamagotchi »

From what I can tell by your remarks in the other thread - the only reason you even want to keep double binding is for RSI patients.

Speaking from experiance - If a person has RSI - they should switch to a arcade panel / gamepad / foot pedals - all of which allow the binding of buttons to keyboard presses through the use of software.

As far as macros - I do not remember seeing any tight U turns before DBing happened - which makes me wonder if anyone ever bothered - I do agree with setting a delay of 100ms or more just in case though. I would suggest recoding it so double binding is optional and enforcing it on your server, it would be fun to have an old school settings server - where no one can double bind and everyone has to play old-school.

I am not a programmer though - I just wanted to get my 2 cents in about RSI patients needing double binding. I hope that a way to toggle DB does get added into the game - you are the admin of your server and you should be able to decide how the game is played on your server.
bored of amagetron?
try swron or one of the other fun games @ Arcade Games Online
ishAdmin
Match Winner
Posts: 625
Joined: Sun Jul 04, 2004 12:11 am
Contact:

Post by ishAdmin »

I do want to respect people with RSI. They can't all afford special game controls, and will use double binding to help them reduce stress on hands etc. This is also true for people with arthritis.

I'm sure some game hosts like double binding. I'm not one of them, but mostly because of the abuse. Whatever gets coded will likely be optional, since everthing else is. I hope the delays are value control so the amount of double binding and macro use can be throttled. My whole concern is to stop people from hammering the game with multiple 180's and lagging the whole thing up.

And macros, well, no excuse for those in my opinion. It's about playing a person, not their macro. Might as well play the bots in that case.
Image
User avatar
locutus
Match Winner
Posts: 662
Joined: Mon Jan 19, 2004 10:28 pm
Location: MST [Quotation: "No Good Deed Ever Goes Unpunished.."]
Contact:

Post by locutus »

i really havent chimed in on the whole double binding thing yet because I feel mostly responsible for bringing it to the mainstream around here..but it would be a shame if certain servers didn't allow it, I have for years worn braces to prevent carpal tunnel syndrome and feel I should not be punished for being old or weak and not being let in on all the other reindeer games...
Image
ishAdmin
Match Winner
Posts: 625
Joined: Sun Jul 04, 2004 12:11 am
Contact:

Post by ishAdmin »

as long as you keep yer damned glowing nose off, I'm cool with it .... :)

So, locutus, would you be opposed to kicking a player if they did 3 or 4 rapid 180's in a row? From my end of it, it's about stopping game lag because of double bind and macro abuse. You'll still get to double bind, but not as a weapon to lag the game. (At least on my server). Am I correct in assuming that this arrangement would not have an impact on how you play the game?
Image
User avatar
root down
Round Winner
Posts: 344
Joined: Fri Jun 11, 2004 8:46 am
Location: closer
Contact:

Post by root down »

sounds like it would be hard to differentiate between server lagging and honest mazing
stakes is high
ishAdmin
Match Winner
Posts: 625
Joined: Sun Jul 04, 2004 12:11 am
Contact:

Post by ishAdmin »

Honest mazing probably wouldn't have extremely short duration double identical actions (like in a 180). And it wouldn't have a lot of them in a short period. I think suitable values could be worked out.
Image
User avatar
locutus
Match Winner
Posts: 662
Joined: Mon Jan 19, 2004 10:28 pm
Location: MST [Quotation: "No Good Deed Ever Goes Unpunished.."]
Contact:

Post by locutus »

ishAdmin wrote:as long as you keep yer damned glowing nose off, I'm cool with it .... :)

So, locutus, would you be opposed to kicking a player if they did 3 or 4 rapid 180's in a row? From my end of it, it's about stopping game lag because of double bind and macro abuse. You'll still get to double bind, but not as a weapon to lag the game. (At least on my server). Am I correct in assuming that this arrangement would not have an impact on how you play the game?
yeah I'd be fine with that, most ppl that kno my style of play know that i use 180's very sparingly unless trapped...abusers can be kicked imo, it creates lag and from an admin maintenance stand point, you are justified in my book to do so...
Image
Post Reply