Home World Forum
Stars! AutoHost web forums

Jump to Stars! AutoHost


 
 
Home » Stars! 2.6/7 » The Bar » Anti-cheating tools
icon5.gif  Anti-cheating tools Mon, 28 February 2011 09:26 Go to previous message
XyliGUN is currently offline XyliGUN

 
Ensign
Stars! V.I.P


Messages: 325
Registered: July 2004
Location: Russia, St.Petersburg

Let's imagine we have a cheater with the knowledge about Stars! files decoding/structure. What kind of unfair things that person can do? And the main question: what can be done to prevent possible cheating? Obviously there is no possibility to prevent all kind of cheating, so here I'll just talk about possible cheating issues related to broken files encryption/structure.

In general there are two type of possible cheating with Stars! files:

1. Getting normally invisible info from your own m file
Example (it was discussed already on the forum) is knowledge on what Mystery Trader would give to you if you catch him. Once MT entered known space your m file contains exactly knowledge on that, but Stars! never shows it to you. This is just an example, but there is much more sensitive info about the universe, which some players have in their m files, that is never shown by Stars.

There is two possible solutions:
1) Make this info available to everybody (so, cheater wouldn't get any advantage here).
2) Make it unavailable or useless for everybody (specifically make it unavailable or useless to cheater).

Personally I don't see any problem with allowing everybody to know what trader gives (thus Stars! creators decided to hide it, so let's keep it this way), but I do see a big problem with another knowledge, which definitely shouldn't be available (I'll keep details for a while, what I can say now is that it could be a mission critical and a game winner if used properly). So, the only reasonable way to avoid this issue is to remove that knowledge from m file right after generation (before player can even access his m file).
IMHO, the best solution here is a tool that will automatically zeroes such hidden info in m files (i.e. it would always looks like trader gives techs, but it would actually gives something different).

Let's say I have a tool (I'll call it cleaner), which can find and remove any sensitive info I was able to find without knowledge of m file password. All other info will be kept in m file unchanged, I can obviously give it to Ron, so he can use it on SAH, but the question here is how to test it? I've done a number of tests and it works just fine on my old games, but I cannot state that it's bugs free. The funny thing is that anybody who ready to test this anti-cheat tool would need to know the way to actually cheat to be able to check that it actually works. Any thoughts/comments/suggestions?

2. Getting advantages of game bugs (using an x file to perform actions that would be impossible to do normally)
The best example here is a free pop hack done by using memory editor to get a lot of pop from thin air. Technically, this hack results in adding a command into x file, which orders host to load/unload more pop (or minerals) that your planet/fleet actually have.
I don't see any possibility to prevent this other than automatically verify each uploaded x file for things like that (so, it makes impossible to cheater to actually use it).
The best solution here is to have a tool that will load xy, hst files and then verify each player actions from x file.
Technically speaking there are just 23 possible actions in x file (for example: load/unload, change design, change production queue, change waypoints and so on). And about 17 of them could be destructive (could be used by cheater to get unfair advantage).

I have a prototype of the tool (let's call it verifier) that verifies x file actions, it's more complex than cleaner, since it have to parse all file info, while cleaner just needs to parse and change a couple of blocks. So far, it's only verifies free pop hack (i.e. load/unload action), but I'm working on other actions to be verified. And again the most tricky question is how to test it (anybody who would test it needs to be able to learn on how to cheat)? Any thoughts/comments/suggestions?

It looks like I have to start creating a cheating files collection... Confused
...



[Updated on: Mon, 28 February 2011 15:58]




"Progress isn't made by early risers. It's made by lazy men trying to find easier ways to do something."
Robert A. Heinlein, Time Enough For Love

Report message to a moderator

 
Read Message icon5.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message icon5.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Corrupt M file
Next Topic: Wanted: map and p files for testing
Goto Forum:
  


Current Time: Wed May 08 19:37:34 EDT 2024