Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

L4D2 smac wallhack #3

Closed
lunatixxx opened this issue Mar 10, 2019 · 7 comments
Closed

L4D2 smac wallhack #3

lunatixxx opened this issue Mar 10, 2019 · 7 comments

Comments

@lunatixxx
Copy link

lunatixxx commented Mar 10, 2019

Anti wallhack and anti speedhack mess the code of the game on my server with 60 tickrate in Left 4 Dead 2. While they are stopping some cheaters from what i have see, there is still an important bug happening when you play survivors. In VS or scavenge sometimes you will be able to see special infecteds for a very short amount of time (1 second) while they are still in ghosts, you see the model of the monster like if he had spawned and then he disappear again. There is also other kinds of small bugs like the smoker tongue than pierce visually walls. 100% sure it's these two plugins as i tested everything one by one.

@lunatixxx
Copy link
Author

Will it be possible to modify these plugins to stop blocking wallhacks and speedhacks in real time, but to still detect if someone cheat and to alert admin ? That will definitely fix this bug.

@Silenci0
Copy link
Owner

Sorry for the late reply. You can modify it if you want as it is most likely possible to have it simply detect players that might be wallhacking or speedhacking by having it only looking at calculations rather than trying to take action. If I have time, I can attempt to make this change, but it will take some time and there is no guarantee that it will get done in time.

Also, keep in mind that the wallhack module has some known graphical issues in some games and for L4D1 and 2 it only works on survivors (as far as I know, at least according to the original maintainer's wiki). Some bugs are most likely the work of the module itself.

As for the speedhack module, be aware that client-side lag can have an affect on it. The plugin bases most of its calculations on the server's tickrate * 2 and if it looks like the player is going "faster" than the server via ticks, it will attempt to prevent the speedhack by slowing them down and reporting the person suspected of speedhacking. This can also be changed, but the reason it attempts to slow players down rather than banning them is due to that false positive, so there is a good chance that it could detect a player "speedhacking" when they are really just experiencing heavy client-side lag for whatever reason.

@lunatixxx
Copy link
Author

Thanks for the answer, i'm not a coder so i will not try to modify it by myself. Something else not related but the eye test plugin had a bunch of false positives when you play as special infected sometimes, don't know the reason.

@Silenci0
Copy link
Owner

That might have something to do with the changing view angles that occurs when some animations occur that take you from first person to 3rd person, if I were to guess.

Other games have issues with the eye_test module, though for different reasons, but one of them, TF2, sometimes had issues with this module due to certain taunts like the conga taunt, so it would not surprise me if certain special infected actions cause false positives with the module. I will make a note of that as well since there a number of issues that the eye_test module has with other source games.

@lunatixxx lunatixxx changed the title L4D2 server tickrate 60 bug L4D2 smac wallhack Apr 19, 2019
@lunatixxx
Copy link
Author

After more test this bug only happens with SMAC anti wallhack. The anti speedhack works fine, so i edited the title of the issue.

By the way i discovered a new bug caused by SMAC anti wallhack, once it is activated on the server in Left 4 Dead 2 it break the facials animations of survivors. Why it does that ?

@Silenci0
Copy link
Owner

Ah okay. I was attempting to replicate the issue you mentioned regarding the speedhack module with no success, but thank you for the update. I'm glad to hear that the plugin is working for you.

As far as the wallhack module, the reason that the anti-wallhack does that is due to how it detects and prevents wallhacks. While this module may work for some games, not all games react in the same way to this module and, due to the general purpose nature of the module (ie: it can be used in almost any Source game), some games end up having various issues, such as graphical glitches, as a result of the using the module. Unfortunately, based on various forum posts regarding this module and L4D2, it seems that L4D2 is one of those games that the module causes some graphical issues for when attempting to detect/prevent the use of wallhacks and only seems to work well with the survivors, but not the infected.

As an fyi, this module is listed as an optional module on the wiki page (https://github.com/Silenci0/SMAC/wiki) due to several inconsistencies or incompatibilities with certain games, including games like CS:GO. You may wish to disable this module on your server for now for L4D2. I will see if I can fix some of the incompatibilities, but there is a good chance that I may not be able to do so.

@Silenci0
Copy link
Owner

Looking into this further, I feel as though the wallhack module of SMAC is very generalized and attempts to catch everything it can for more than one game, which is part of the problem with the module itself on top of being a resource hog and attempting to do a lot of work to prevent/detect wallhacks themselves. I think this module will need to be rewritten and even made into several sub modules. The idea here would simply be as follows:

  • The wallhack core module would be very general and all encompassing with very basic checks and cvar settings for the core and sub wallhack modules. It would be required for other sub modules to work.
  • The sub modules would be game specific, so each module would have to be tailored to its respective game rather as opposed to being more generalized to work with other games and how they need to be checked for wallhacks and each sub module would feature its own specific cvars (assuming they would be necessary for specific things). This way, people could simply add the module they need for their game and ignore the other modules, reducing overall workload in some areas.
  • The core/sub idea for this specific SMAC module would also make it easier to address some incompatibilities and add in game-specific fixes that would be tailored to each game without worrying about whether or not said change will affect other portions of the code that deal with another game.

This is, of course, a more high-concept ideal that sounds good on paper, but I'm sure is a bit more challenging to implement in practice. This is something I would like to see done with the wallhack module so that it is more useful and less of a burden in regards of functionality and resource usage. That said, it would require time and there is simply no guarantee that it can be done, however, I will be looking into it further to see if its even possible or not.

As for this specific ticket/request for the wallhack module, at present, it would be much harder to simply have it notify for hacks being used as it would require a number of code rewrites to separate blocking from notifying. I will attempt to address this in a future update, but I would not count on that happening anytime soon.

Thank you for the report, if you have any other issues in regards to SMAC, feel free to open a new ticket.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants