Jump to content
  • Advertisement
Sign in to follow this  
lightwavex

Unity anti aimboting hacking concept

This topic is 3093 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

ive been playing a few fps and im by no means a codeing guru but ive dabbled with it so i had a idea on the way hack prevention is delt with i wanted to run this idea by some of you guys the ideas i have are two fold 1) prevention 2) identification so the first idea this came to me in the idea of a virus altering itself to survive but in the sence of the program itself ive noticed alot of these fps and games nowdays do updates weekly or monthly and add or replace existing files i had the thought that maybe we could treat the prevention part as though screwing up the hackers app via a download was more effortless then the actual act of making the hack that way one person could rewrite a file easily and screw over a team of hackers placing critical parts to be hacked in a seperate small file or dll whatever that could be easily altered daily or weekly that is done thru the update the effect you would wish to have is to force the hackers to rewrite a hack daily makeing it very difficult to keep up and distribute a working version on a daily basis 2) this one is on identification everytime a ban is done the server tracks the frequency but doenst make that info availible to the players if a person is getting called or booted out of rooms constantly they will end up with a very high signature of being called out mods can then browse this list and track the types of hacks being used or possibly test their code to see if their hack prevention schemes are working this could even be used against hack users so mods can go into games with them to see if they are really cheating or not without them knowing alternatly these stats could be public and let the community decide weather or not to trust the said person the said stats would be games played # of accusations # of games kicked from by vote a new account would leave you a noob untrusted so you would start off the same as you would with alot of kicks and accusations however honorable players would not have this problem over time and that would be the jem of that idea anyways what do you guys think ???

Share this post


Link to post
Share on other sites
Advertisement
Your point one is indeed a nice thought. But, how do you ensure it is downloaded? How do you ensure every player on the game has the latest files? What if they have no internet and want to do Singleplayer? Do all gamers then have to download new files daily? Make sure it's really just a few kilobytes then.

But say a hacker hack the game so it says to the server it has the latest version? Or would this be some encrypted key that is derived from the changed data part?

Prevention part sounds good though. But be aware some hacks are barely noticeable, like wall-hacks. A good hacker can disguise it well.

Share this post


Link to post
Share on other sites
I don't know how easy it'd be to implement or how error-prone/slow it'd be, but one idea I had for protecting against wall hacking and somewhat against aimbots was to write the server in such a way that it doesn't send information about players if they're a certain distance away or obstructed.

e.g. The server knows (through some internal detection engine of some sort) that player X is behind a wall on which player Y is on the other side so it doesn't send X's coords to Y or Y's coords to X. With no coords to work with, an aimbot can't know where to aim... until they come from behind the wall and then it's game over. But this also works for wall hacks as if they can see through the walls... there's nothing there to see.

The idea is in its infancy, but might work with some tinkering.

Share this post


Link to post
Share on other sites
Quote:
Original post by Guinnie
I don't know how easy it'd be to implement or how error-prone/slow it'd be, but one idea I had for protecting against wall hacking and somewhat against aimbots was to write the server in such a way that it doesn't send information about players if they're a certain distance away or obstructed.

e.g. The server knows (through some internal detection engine of some sort) that player X is behind a wall on which player Y is on the other side so it doesn't send X's coords to Y or Y's coords to X. With no coords to work with, an aimbot can't know where to aim... until they come from behind the wall and then it's game over. But this also works for wall hacks as if they can see through the walls... there's nothing there to see.

The idea is in its infancy, but might work with some tinkering.


This is an idea which is certainly used in a lot of online games currently, although less frequently for action/shooter games.

Share this post


Link to post
Share on other sites
Reading the source code for cheats is a great way to understand how cheaters are thinking (you'll find sources for many counter-strike cheats are open source). And unfortunately, many of them are pretty creative. Now, I'm far from an expert in the field, but at some point i got quite interested in how cheats work. And its rather difficult to use prevention.

About changing the exe/dll: Assuming you actually find a way to force the version of the exe/dll to be up-to-date (I don't think you can). While you can change where functions are located in a game exe/dll, cheats usually keep hardcoded offsets to these functions. Now, every time you change the code, those offsets in game might change, depending on how you change the code. This is a problem that i've seen happen between some versions of CS releases. To counter this, they added automatic offset updating. I believe they also managed to dynamically find the offsets of the functions. Conclusion: Using this method, it will be really hard to prevent much.

About the player data: In many fps-games (where wall hacks may have the biggest impact) you can shoot through walls. If just the tip of your weapon is visible, i guess most part of the player model is rendered, and therefore can be made visible even when its behind (and the position etc is sent over the network). Big enough advantage already. Even if you manage to render only the visible parts and not send player coordinates when not necessary, sounds are played in 3D and can be rendered in an overlay. You don't know who's behind the wall, but who cares? Conclusion: While making the life of a cheater harder, it certainly doesn't stop them from shooting you through a wall.

Finally, the stats/tracking idea: In my experience many player accuse others of cheating when they, in fact, only are good players. Even server admins get this wrong sometimes. And i don't really blame them. It's sometimes really hard to separate cheaters from skilled players. Unless, of course, if you play against a rage cheater (360 degrees aimbot, wall hack, speed hack, etc). Conclusion: "Regular" players don't necessarily provide good/proper stats.

Pretty much is already done to prevent cheating, but since the code is run on the client computer, there is only so much you can do.

-- Unleeb

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
  • Advertisement
  • Popular Tags

  • Popular Now

  • Advertisement
  • Similar Content

    • By Aryndon
      Project Redemption is an semi-fantasy RPG with a linear story and an elaborate combat system.
      We are building in Unity and are currently looking animators and artists.
      What we are looking for
      -Someone who is okay with split revenue/profits when finished
      -Collaborate with others in the team. Do you have an idea/thought on what should be included? Tell us!
      -Someone who wants to work with people that are passionate about this project
      If you are interested. Please message me and I will get back to you as soon as possible! Or add me on Discord AJ#6664
    • By Aggrojag
      Hello!
      I'm working on a game that is a narrative driven dark comedy with some small aspects of platforming and puzzle solving. The project is rather small as well. It touches on topics such as suicide, mental illness, family, corruption, free-will, and redemption.
      This project is exercise in polish, this means some experimentation will be needed along with some reworking of assets as they're provided.
      This will be a revshare model.
      First, I'm looking for a 2D sprite artist, not pixelated, that can compliment the style of the attached images, and be similar to the temporary character.
      We are looking to bring on a SFX designer at this time. Full list of required SFX will be available upon request, as well as a build with all elements related to sound implemented in some form (many SFXs pulled from the web for now). Will likely require some field recording, and some pretty strange SFX for when things get weird. I imagine a good portion of these will be quite fun to create.
      Lastly, I'm looking for a male voice actor, English should be your primary language. There will be at minimum two characters that will need to be brought to life through vocals. The first voice is similar to Marvin from Hitchhiker's Guide to the Galaxy. A reference for the second voice would be a mix of Ren (Ren & Stimpy), and Android 21 (DragonBallFighterZ). Due to formatting, I'm not including YouTube links in the post, sorry.
       
      WIP Scene with our custom shaders attached (platforms are lazily placed, as this was an asset test):

      A scene with dynamic lighting and temp character:

       
      Unshaded asset:

      If you made it to the bottom, thank you, and I look forward to hearing from you.
    • By SickTwistGames
      Ok, firstly, Hi.
       
      This is my first post on this forum. I am an Indie Dev making my first game so bear with me when I say dumb stuff, I'm on a huge learning curve.
       
      My first question is about inventory systems for unity. I am trying to make a survival type game with crafting. I have purchased Inventory manager pro by devdog from the unity asset store and it seems like a pretty powerful assett but for an intermediate coder its a little tough to use.  I'm beginning to wonder if it was the right purchase.
      So my question is.... does anyone have any experience of inventory plugins / systems for unity and can anyone reccomend a system to me?
      It needs to have the following: Loot system, crafting system, character sheet, blueprint system,  character stats system. Ideally with as little coding as possible.
       
      Thanks
    • By ethancodes
      I've got a bug with my brick breaker style game. The bricks move down one line at a time ever 1.5 seconds. What appears to be happening is occasionally the ball will be just about to hit the brick when the brick moves down a line, and now the ball is behind it. I'm not sure how to fix this. I have two ideas but I'm not sure of implementation. 1 solution would be to check where they were and where they are going to be before rendering the frame. Then if they crossed paths, then register the brick as hit. Solution 2 would be change how the bricks move. I could maybe slide them down line by line, instead of a jump down. I'm not sure of this will fix the issue or not. Any ideas?
    • By Pixeye
      I wrote an extension for unity inspector that allows to group/fold variables. 
      Available on github  , cheers!

       
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!