Hi! Welcome to the forum for Platinum Arts Sandbox Free 3D Game Maker. I currently have the forums locked as I am attempting to properly update them.
In the meantime please join the new Discord Server!
If you have any questions please e-mail me through the Platinum Arts website.
In the meantime please join the new Discord Server!
If you have any questions please e-mail me through the Platinum Arts website.
Hack-prevention in Sandbox.
- RonnieNeeley
- Member

- Posts: 203
- Joined: May 5th, 2010, 6:35 pm
- Name: Ronnie Neeley
- Location: Illinois
- Contact:
Hack-prevention in Sandbox.
Well, this is probably at the back of everyone's minds: Hacking.
When we put our time and effort into Sandbox, we don't want Joe CheatEngine to come on by and ruin hours and hours of work in like 10 seconds.
I was just playing Sauerbraten to see if CheatEngine worked. It did. You could edit bullet amounts, but when you edited health it seemed to revert back to the original once you got shot, which brought me some hope. Oh, and of course, speedhack worked.
Would there be a way to block these programs?
Perhaps you could add an object that checked what programs the user had up, and if any programs that are on the "Block List" are running, the game closes out immediately.
Hacking a single player game is one thing, but I do not want my MMORPG to be able to be easily hacked. Otherwise, players will dupe items/edit stats and so forth, and all our work will have been pointless. Yes, there will always be hacks, but for god sakes, can we atleast block CheatEngine?
I suppose this is more of a discussion than a question, but please, feel free to add/help.
When we put our time and effort into Sandbox, we don't want Joe CheatEngine to come on by and ruin hours and hours of work in like 10 seconds.
I was just playing Sauerbraten to see if CheatEngine worked. It did. You could edit bullet amounts, but when you edited health it seemed to revert back to the original once you got shot, which brought me some hope. Oh, and of course, speedhack worked.
Would there be a way to block these programs?
Perhaps you could add an object that checked what programs the user had up, and if any programs that are on the "Block List" are running, the game closes out immediately.
Hacking a single player game is one thing, but I do not want my MMORPG to be able to be easily hacked. Otherwise, players will dupe items/edit stats and so forth, and all our work will have been pointless. Yes, there will always be hacks, but for god sakes, can we atleast block CheatEngine?
I suppose this is more of a discussion than a question, but please, feel free to add/help.
Tritium - An MMORPG :: viewtopic.php?f=10&t=1246
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
-
AndyLangel
- Member

- Posts: 55
- Joined: May 25th, 2010, 12:15 am
- Name: Andy
Re: Anti-Hacking in Sandbox.
I doubt you'll find anything directly linked into the Sandbox...
Though, since we would know how the game was built, we can do many things in hopes of preventing hacking:
Encryption
Although most likely not supported by the Cube language, a simple Visual Basic program can encrypt files when they are not being used, and then decrypt them as needed- though, this requires Visual Basic to somehow detect when the game needs access to a file so that it can decrypt it and obtain the information from it. You could also, in theory, use the Visual Basic program as a terminal for information between the encrypted file and the game.
The game will need to send a request to the Visual Basic program, which would then access the required files and transfer the needed information to the game. In this way the file is never decrypted, only read in a decrypted way. But all this would require extensive testing and more experimentation between Cube and Visual Basic. Though, it may be possible t write a Cube script allowing Visual Basic integration.
Program Detection
The Visual Basic program can easily detect what programs a user is running at the time of them using another program. This information can be sent back to the sever and if any 'Black List' programs are running you can terminate the users connection to the server and database. You could also do many server side options such as delete or ban the users account, block their ip, or whatever.
File Tampering
Visual Basic can detect if a file have been tampered with in an unauthorized way, which may be a mod to the game or a hack. The Visual Basic program will have to cross reference all user files with an official server-side set. Any changed files could then deny the user access to the game and do a list of other things like report the offense, where the user can be banned or whatever.
--
Basically, as long as Visual Basic can someone be integrated into the Cube language, then you can make the game as secure as you want it to be. If Visual Basic cannot be so easily integrated, i am sure you can at least have the two programs transfer data back and forth to each other. There are actually many ways to control the flow of data between the server, game, VB program, and the user. Below is a basic set of flow charts to give a visual of how these relations can be set up:

Okay, so here are only 3 ways the system can be set up- each setup has its pros and cons.
Red System
This system runs all data through you Hack Prevention program before it is transferred to its destination. This method is the most secure, since all data going to the server, from the server, to the game, from the game, to the user, and from the user has to pass through the hack prevention program. Though, this setup is almost surely going to slow down your game. If you can make the scanning of data quick, then this system may work, otherwise there will be major lag throughout the entire system.
Green System
This system allows all data to flow naturally between the server and the game, and the game and the user. The hack prevention system merely monitors activity within the game, which may or may not be very effective. This system has much less security, since the user can access the game directly, which can access the server directly. Though, although more prone to being hacked, this system is the fastest, allowing unhindered transferal of data between the server, game, and user.
Blue System
This system is basically a hybrid of the Red and Green Systems- though, it too is prone to lagging up the users connection the the game server. This system allows the user to directly access the game, so it is more than likely that they will be able to cheat on the client side of the game. However, since all data between the game and server will be monitored, the player will not be able to hack the game server. Basically, the user may be able to change their 1 coin to 1 million, and it would say 1 million- but when they go to buy something, the value goes back to one, since the game checks the server data to see if they have enough money.
ERROR: The blue system actually would monitor user inputs, not game outputs- the game and server would have direct communication, while the game and user have a anti-hacking buffer. Sorry i messed it up, but this is what i meant.
This system is much better suited, and may only add a few milliseconds to cross referencing time. Though, with all information being stored server-side, users will have a much harder time hacking the game, even if no Hack Prevention software was implemented. As in the game you tested, and hacked, that would be a client side game, though- server-side games are much different.
Also, while looking through the Sandbox files, i found that the engine run C-lite scripts, which means that Sandbox has C roots. This will allow for C# or Visual Basic integration if it is done right and slightly modded (i would assume). Anyways, time to wrap up my long winded book.
--
Basically, whether we can integrate a anti-hack program into the game or if we must use an outside program, the game will be harder to hack with server-side data. Though, hacking on the server-side is still possible, so we will have to enact some sort of anti-hacking system- but we will not need that until the game is near finished. Until then i will look into it and let you know if i get anything going with it. If it comes down to it, we can always manually ban users who hack
Hope this helped answer your question
and i hope you like reading books.
There may be some errors in this post, but i don't have the time to check it
so be warned.
Though, since we would know how the game was built, we can do many things in hopes of preventing hacking:
Encryption
Although most likely not supported by the Cube language, a simple Visual Basic program can encrypt files when they are not being used, and then decrypt them as needed- though, this requires Visual Basic to somehow detect when the game needs access to a file so that it can decrypt it and obtain the information from it. You could also, in theory, use the Visual Basic program as a terminal for information between the encrypted file and the game.
The game will need to send a request to the Visual Basic program, which would then access the required files and transfer the needed information to the game. In this way the file is never decrypted, only read in a decrypted way. But all this would require extensive testing and more experimentation between Cube and Visual Basic. Though, it may be possible t write a Cube script allowing Visual Basic integration.
Program Detection
The Visual Basic program can easily detect what programs a user is running at the time of them using another program. This information can be sent back to the sever and if any 'Black List' programs are running you can terminate the users connection to the server and database. You could also do many server side options such as delete or ban the users account, block their ip, or whatever.
File Tampering
Visual Basic can detect if a file have been tampered with in an unauthorized way, which may be a mod to the game or a hack. The Visual Basic program will have to cross reference all user files with an official server-side set. Any changed files could then deny the user access to the game and do a list of other things like report the offense, where the user can be banned or whatever.
--
Basically, as long as Visual Basic can someone be integrated into the Cube language, then you can make the game as secure as you want it to be. If Visual Basic cannot be so easily integrated, i am sure you can at least have the two programs transfer data back and forth to each other. There are actually many ways to control the flow of data between the server, game, VB program, and the user. Below is a basic set of flow charts to give a visual of how these relations can be set up:

Okay, so here are only 3 ways the system can be set up- each setup has its pros and cons.
Red System
This system runs all data through you Hack Prevention program before it is transferred to its destination. This method is the most secure, since all data going to the server, from the server, to the game, from the game, to the user, and from the user has to pass through the hack prevention program. Though, this setup is almost surely going to slow down your game. If you can make the scanning of data quick, then this system may work, otherwise there will be major lag throughout the entire system.
Green System
This system allows all data to flow naturally between the server and the game, and the game and the user. The hack prevention system merely monitors activity within the game, which may or may not be very effective. This system has much less security, since the user can access the game directly, which can access the server directly. Though, although more prone to being hacked, this system is the fastest, allowing unhindered transferal of data between the server, game, and user.
Blue System
This system is basically a hybrid of the Red and Green Systems- though, it too is prone to lagging up the users connection the the game server. This system allows the user to directly access the game, so it is more than likely that they will be able to cheat on the client side of the game. However, since all data between the game and server will be monitored, the player will not be able to hack the game server. Basically, the user may be able to change their 1 coin to 1 million, and it would say 1 million- but when they go to buy something, the value goes back to one, since the game checks the server data to see if they have enough money.
ERROR: The blue system actually would monitor user inputs, not game outputs- the game and server would have direct communication, while the game and user have a anti-hacking buffer. Sorry i messed it up, but this is what i meant.
This system is much better suited, and may only add a few milliseconds to cross referencing time. Though, with all information being stored server-side, users will have a much harder time hacking the game, even if no Hack Prevention software was implemented. As in the game you tested, and hacked, that would be a client side game, though- server-side games are much different.
Also, while looking through the Sandbox files, i found that the engine run C-lite scripts, which means that Sandbox has C roots. This will allow for C# or Visual Basic integration if it is done right and slightly modded (i would assume). Anyways, time to wrap up my long winded book.
--
Basically, whether we can integrate a anti-hack program into the game or if we must use an outside program, the game will be harder to hack with server-side data. Though, hacking on the server-side is still possible, so we will have to enact some sort of anti-hacking system- but we will not need that until the game is near finished. Until then i will look into it and let you know if i get anything going with it. If it comes down to it, we can always manually ban users who hack
Hope this helped answer your question
There may be some errors in this post, but i don't have the time to check it
- RonnieNeeley
- Member

- Posts: 203
- Joined: May 5th, 2010, 6:35 pm
- Name: Ronnie Neeley
- Location: Illinois
- Contact:
Re: Hack-prevention in Sandbox.
I don't like the colors you chose for the chart.
You're off the team.
Lol, JK. Again, you are restoring my confidence, because this was one of the problems lurking in my subconscious. You couldn't have worded it any better because everything in there was stuff that I was already thinking but had no clue how to do. Luckily, you have an understanding of it, ha ha.
I just wanted to figure this out before we move on with the project, because what good is a game if anyone can hack it.
And yeah, I hope to acquire a strong team of moderators to keep things in check. Yeah, we could just ban obvious players who hack, but if lots of people join and make alts to hack, banning will be a problem. Plus, if one person dupes a super rare item and isn't going crazy with hacking, we would have no clue.
(On a personal note towards the game, figured I'd put it here since we are talking about it: I intend to be kind of ruthless with banning proven hackers. Most games just ban the account, but I want to deter hacking even more by full IP bans on proven hackers. However we will discuss this more when the time comes.)
You're off the team.
Lol, JK. Again, you are restoring my confidence, because this was one of the problems lurking in my subconscious. You couldn't have worded it any better because everything in there was stuff that I was already thinking but had no clue how to do. Luckily, you have an understanding of it, ha ha.
I just wanted to figure this out before we move on with the project, because what good is a game if anyone can hack it.
And yeah, I hope to acquire a strong team of moderators to keep things in check. Yeah, we could just ban obvious players who hack, but if lots of people join and make alts to hack, banning will be a problem. Plus, if one person dupes a super rare item and isn't going crazy with hacking, we would have no clue.
(On a personal note towards the game, figured I'd put it here since we are talking about it: I intend to be kind of ruthless with banning proven hackers. Most games just ban the account, but I want to deter hacking even more by full IP bans on proven hackers. However we will discuss this more when the time comes.)
Tritium - An MMORPG :: viewtopic.php?f=10&t=1246
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
-
AndyLangel
- Member

- Posts: 55
- Joined: May 25th, 2010, 12:15 am
- Name: Andy
Re: Hack-prevention in Sandbox.
I like your sense of humor 
And yea- there are always ways to deture hacking, if we want we can make a Hacker Guillotine at the center map, chop their heads off, and then ban them hardcore
would be fun to animate 
but yea, too many game are lax on hackers- and thats why people try to hack
we could also make a nice promotional video on what happens to hackers, then chop their heads off and ip ban them
then show it game-wide on idle 'TVs' 
And yea- there are always ways to deture hacking, if we want we can make a Hacker Guillotine at the center map, chop their heads off, and then ban them hardcore
but yea, too many game are lax on hackers- and thats why people try to hack
- RonnieNeeley
- Member

- Posts: 203
- Joined: May 5th, 2010, 6:35 pm
- Name: Ronnie Neeley
- Location: Illinois
- Contact:
Re: Hack-prevention in Sandbox.
DUDE! BEAST! Wow, thats a great idea. MUAHAHA }=D
It would be even cooler to do that, then give them like spyware and a bunch of trojans, then IP ban them, but thats breaking some sort of rule I suppose -.-
I remember in 12 Sky, the highest level Jin on our server got banned for Speedhacking (he always denied it but they finally got him), and everyone went crazy. Having like, showed him getting his head chopped off and "televise" it would have been E P I C !
It would be even cooler to do that, then give them like spyware and a bunch of trojans, then IP ban them, but thats breaking some sort of rule I suppose -.-
I remember in 12 Sky, the highest level Jin on our server got banned for Speedhacking (he always denied it but they finally got him), and everyone went crazy. Having like, showed him getting his head chopped off and "televise" it would have been E P I C !
Tritium - An MMORPG :: viewtopic.php?f=10&t=1246
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
-
AndyLangel
- Member

- Posts: 55
- Joined: May 25th, 2010, 12:15 am
- Name: Andy
Re: Hack-prevention in Sandbox.
exactly!
so we just you know... every now and then make a guy- stat pad him to uber skillz, then say he hacks and kill him :d staged, but at least people would get the point 
- RonnieNeeley
- Member

- Posts: 203
- Joined: May 5th, 2010, 6:35 pm
- Name: Ronnie Neeley
- Location: Illinois
- Contact:
Re: Hack-prevention in Sandbox.
Good point.
Lol, it will turn into the Salem Witch Trials, "HE HAX!", "NO, HE HAX!". Like, we'll say "He was caught speedhacking while training" or something so people get paranoid xD
Lol, it will turn into the Salem Witch Trials, "HE HAX!", "NO, HE HAX!". Like, we'll say "He was caught speedhacking while training" or something so people get paranoid xD
Tritium - An MMORPG :: viewtopic.php?f=10&t=1246
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
"Like" Tritium on Facebook :: http://www.facebook.com/pages/Tritium/162872407060264
My Music :: http://www.facebook.com/InternetSlaveMaster
Re: Hack-prevention in Sandbox.
are you trying to get yourself banned for indecency?AndyLangel wrote:(..) Visual Basic (..) Visual Basic (..) Visual Basic (..) Visual Basic (..) Visual Basic (..) Visual Basic (..) Visual Basic (..) Visual Basic (..) Visual Basic (..) VB program
client side junk such as gameguard tick me off to no end. It is a rootkit (very bad for security) and it fails to work on linux which prevents me from enjoying the majority of MMOs on unix. so I really would not recommend it.
The server itself in my opinion should be doing the anti cheating. flagging, banning and making the use of said cheats incredibly annoying, or at least rendering them useless
if the player moves too fast without reason to, pop him to the position he would've been after a move of his correct speed.
if he ignores these pops, then just stream the data of the position he should be rather than where he is.
as for items, there is no reason for you not to be monitoring these heavily.
if they try to use an item they don't have, ignore it
if they manage to use it anyway, don't register its effect on the server,
if they try to change an item into another, once again ignore it, if they use it (and turned a usable into a usable), just register the original's effect, otherwise see above.
if they attack a mob and they boosted their damage significantly, ignore it and just apply the damage they'd inflict normally,
if they create drops and they modify them and then pick them up, then they pick up the original item. not the modified one.
and for maps you have CRC cums, unless these are being spoofed, you will know exactly when someone is using an older/modified map
do you see where I'm going with this?
most of the actions described above should result in immediate kicks, bans, and some of which should only be marked suspicious. Chances are your code will also be buggy, don't want to ban legitimate players now, do you?
that is all I have to say on the matter for now
This is not a url, clicking it is pointless
-
chocolatepie33
- Support Team

- Posts: 2458
- Joined: April 27th, 2010, 5:31 pm
- IRC Username: CP
Re: Hack-prevention in Sandbox.
Doesn't Wikipedia do something like that? If you're not registered and change a page, they record your IP address, I think. Is that where you're going?
Julius wrote:Contribute to http://www.opengameart.org NOW!
Save the wiki!
-
arcones
- Support Team

- Posts: 2734
- Joined: January 13th, 2010, 12:42 pm
- Name: Timothy
- IRC Username: I use Steam
- Location: Looking over your shoulder...
- Contact:
Re: Hack-prevention in Sandbox.
Well Hirato's point is well founded and I think this discussion is actually a good idea...
But another program I thought about was Punk Buster... I'll look into it, as I don't know if it's EA only.
But another program I thought about was Punk Buster... I'll look into it, as I don't know if it's EA only.

Want a user bar like this one? PM Leo!

