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. |
Re: Anti DoubleDuck
any difference with Ven`s one?
|
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).
|
Re: Anti DoubleDuck
I'm curious. What is double duck exactly? Is it like silent walking (should be called "silent running")?
|
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. =) |
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
|
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 |
Re: Anti DoubleDuck
Quote:
|
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]; Code:
new bool:g_bFakeDuck[33]; |
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.