AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Approved Plugins (https://forums.alliedmods.net/forumdisplay.php?f=8)
-   -   Anti DoubleDuck (https://forums.alliedmods.net/showthread.php?t=70721)

MPNumB 04-30-2008 14:09

Anti DoubleDuck
 
1 Attachment(s)
Description:
This is an engine bug fix plugin - removes ability of doubleducking.


Requires:
FakeMeta


Additional info:
Tested in Counter-Strike 1.6 with amxmodx 1.8.1. But should work with all Half-Life mods and some older amxx versions. There were some plugins like this before, but they all were just setting client speed to 0, to remove only silent-run bug. But doubleduck can be used in some more cases, so I decided to create this one, what permanently blocks this bug.


Notes:
If you are using not Counter-Strike mod please change cs awp world view model to your mod world view model. Model isn't visible, but is really needed so client-side engine trace line could detect anti-doubleduck entity. You can change model at source-code line 79.


Warnings:
* Using this plugin may cause problems in non up-to-date half-life dedicated servers. Make sure you have the newest version of hlds what is provided steam (newest versions: windows / linux).
* If client has custom "models/w_awp.mdl" (by default) - player can be not able to move or even crash in result.
* If you are trying to get rid of crouch-hopping also known as silent-run or russian-walk, I strongly recommend to use anti silent-run plugin instead!


Change-Log:

* 1.7
- Changed: Client-side doubleduck block uses almost twice less CPU power.

* 1.6
- Fixed: There was one frame delay during what player was fully ducked while trying to doubleduck.
- Changed: Plugin uses a bit less resources.

* 1.5
- Added: config in source code to disable client-side doubleduck block (when disabled uses less resources).
- Changed: plugin uses a bit less resources.

* 1.4
- Fixed: client-side bug moving up. (Suggesting to use sv_stepsize 17 instead of standard 18, but there are not much blocks where you are going up = 18 units.)

* 1.3
- Fixed: if user is lagy and in a run - client-side doubleduck block isn't working properly.
- Fixed: if user just landed and doubleducked client-side doubleduck isn't working all the time (pends from ping).
- Fixed: client-side doubleduck block not working properly in random map areas.
- Fixed: if user just unducked and made a doubleduck - client-side doubleduck block isn't working all the time (pends from ping).

* 1.2
- Added: client-side doubleduck block.

* 1.1
- Changed: made 1-based array (lower cpu usage).
- Changed: modified check when user is pre-doubleducking - now uses only 1 variable (lower cpu usage).

* 1.0
- First release.

NelegalJke 04-30-2008 15:09

Re: Anti DoubleDuck
 
any difference with Ven`s one?

MPNumB 04-30-2008 15:17

Re: Anti DoubleDuck
 
Ven's plugin just resets speed and not allways. This one blocks the bug for the engine. For client v_ view (I mean only the bugger hemself) this bug can be showned (view can be teleported), but realy he will be on the ground (pending from ping mostly).

v3x 04-30-2008 16:54

Re: Anti DoubleDuck
 
I'm curious. What is double duck exactly? Is it like silent walking (should be called "silent running")?

MPNumB 04-30-2008 17:13

Re: Anti DoubleDuck
 
It's when you arent fully ducked and you release your duck key. Result: you are teleported 18 units higher (if nothing up there dosn't block you. In other case you just wont be teleported, but your view wont reset to normal, your speed will be like ducked speed, your world view and hitboxes - like you are standing, and when you will walk from there you'll get teleported up 18 units higher). Thats what doubleduck is.

P.S. First I was planing to create a fake entity 18 units higher player head, but realised, that it can force some engine parts act not normaly. Then I was thinkging of saving user position in and in postthink teleport hem back, but it had some bugs with other moveable objects. So forcing player to duck and unduck instently is the best solution I found. =)

Vm|Mayhem 04-30-2008 21:17

Re: Anti DoubleDuck
 
Nice plugins you've submitted today. You hit a lot of areas I was interested in. I'll definately try this. + karma

Silencer123 05-01-2008 09:23

Re: Anti DoubleDuck
 
Double ducking is a nice trick to spy over 64 units high crates without being seen from the other side. I would not like to see it being removed. It is a nice trick known among experienced players. Congratulations on managing to 'fix' it, though.
:p

MPNumB 05-01-2008 10:01

Re: Anti DoubleDuck
 
Quote:

Originally Posted by Silencer123 (Post 619705)
It is a nice trick known among experienced players.

CsProMod developers said exectly the same, but removed kreedz (xtreme-jumping) ability, what needs realy not noobed skills and as I know is possible to only 1/10.000 of players. But they added doubleduck, so please don't start exlaining me what bug needs more experiences and what needs to be removed and what not. Bug is a bug and it has to be removed nomather how much who likes it! ProMod developers have to be shamed of there selfs, if they don't understand it!

Brad 05-01-2008 10:26

Re: Anti DoubleDuck
 
It troubles me that you are using g_bFakeDuck as a 0-based array, which it is, rather than pretending it's 1-based and ignoring the first element, which makes everything else easier.

Instead of:
Code:

new bool:g_bFakeDuck[32];

... 

public
client_putinserver(id)
   
g_bFakeDuck[id-1] = false;

It's easier to understand (for example):

Code:

new bool:g_bFakeDuck[33]

... 

public
client_putinserver(id)
    g_bFakeDuck[id] = false;

In this way, id is, in any context, used the same way.

lIl_sAiNt 05-01-2008 10:58

Re: Anti DoubleDuck
 
dude do you ever stop :)


All times are GMT -4. The time now is 23:26.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.