People can just get a new ID and recreate the scores they had previously.
The easiest way to blacklist people is to blacklist them in the code of the map itself with their name and identifier. Not sure if this is possible though :(.
The strongest anti hack system I thought of was one where instead of saving the bank on a certain event, it would update the bank code the entire game and only at the end save it. If an "impossible" event would happen (through cheating/hacking), it would update the bank code is a wrong way making the bank unloadable. This will hinder your modifiability though and is not allowed to bug :(. Also being able to write weird Math function which are doing simple things can really help here so hackers won't know whether or not a function is helping the bank save the correct code or if it is doing the opposite.
(Very simple) example: ((SomeInteger * 112 - 39) / 5) / 19 != 0 will be false if SomeInteger is 1, but true if SomeInteger is 2.
High degree polynomials, Sin, ArcSin, Integer division, Integer overflows ... are your friends here in unreadable code.
Other ways of making maps hard to hack (this is mainly when you want to disable single player RPG) where you have an external program which generates masses of randomly generated galaxy protection code that protects any "impossible" events so they'll have a hard time removing this all. This takes some time to code though and can affect your performance though :(.
People can just get a new ID and recreate the scores they had
previously.
The ID and the score are mingled together in the cript.
It's not possible to compare player's names nor get their identifiers.
Also, unreadable code is not left in my map. Most of the simple numbers are functions like 324093242%233292/32236*59-2938282
This does not stop hackers.
Well, I think that the easiest way to get a good anti-hack system is to beg Blizzard to add a function called "BattleNet Player ID" which would just give an ID that is linked to the players account. Then if we notice a person is cheating we can just add a list of all "bad" IDs and kick them out of our maps when the game starts.
This would also be handy to validate admins.
Anyone up for begging Blizzard about it on the official forums with me?
When Blizzard adds the 'Get player name as string' function, you can just add an 'If player name == <blacklisted name> then end game for player <blacklisted player>. The only problem is that it would ban everyone with that name.
When Blizzard adds the 'Get player name as string' function, you can just add an 'If player name == <blacklisted name> then end game for player <blacklisted player>. The only problem is that it would ban everyone with that name.
Was a good idea in Wc3, probably isn't such a good idea in Sc2.
Ask for it, if I ask it on FR-EU forums its waste of time (admins dont read posts, ie a post was "YOU ARE ALL MOTHER F**" without the stars, and with the good content inside. the post last 3 weeks, then the guy edited it, and he is not ban).
It really depends on your map, but odds are you are caring too much about something that doesn't have that much impact; if it's just a score that has little or no impact on the gameplay it really doesn't matter that much. So what if they're on the top? If they want to, let them be. Even if it unlocks stuff; if they don't want to play your map to unlock them, then that's their loss. Who cares.
It should only be of concern when it actually hurts the fun the players that are legitimately playing your map have. And, if this is the case, it's better to just make sure changing something in the bank doesn't hurt their fun rather than trying to protect your map against hackers. I mean, how realistic is it for blizzard to allow banks to be saved server side? Especially with how greedy they were on map space (60$ gets you 50 mb, really?).
And when blizzard does add encryption to banks and better encryption to maps, it'll still be hacked, because hackers always find a way. There will always be assholes out to get you, and if you let them get to you, you're letting them win. Better to just ignore them.
I agree, but if it was a "simple" way to block hackers (like blacklist), why not ? Ok it is only a score, but if you display scores some of the players will play hard to be the one ; so if a guy have 100x their best score they will say "there is damn cheaters on this map, i go away". thats just the point. but I will see, before that I need a bank system that work, and as it's my first map / editor use and I dont have that much time I will focus on gameplay :)
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
People can just get a new ID and recreate the scores they had previously.
The easiest way to blacklist people is to blacklist them in the code of the map itself with their name and identifier. Not sure if this is possible though :(.
The strongest anti hack system I thought of was one where instead of saving the bank on a certain event, it would update the bank code the entire game and only at the end save it. If an "impossible" event would happen (through cheating/hacking), it would update the bank code is a wrong way making the bank unloadable. This will hinder your modifiability though and is not allowed to bug :(. Also being able to write weird Math function which are doing simple things can really help here so hackers won't know whether or not a function is helping the bank save the correct code or if it is doing the opposite.
(Very simple) example: ((SomeInteger * 112 - 39) / 5) / 19 != 0 will be false if SomeInteger is 1, but true if SomeInteger is 2.
High degree polynomials, Sin, ArcSin, Integer division, Integer overflows ... are your friends here in unreadable code.
Other ways of making maps hard to hack (this is mainly when you want to disable single player RPG) where you have an external program which generates masses of randomly generated galaxy protection code that protects any "impossible" events so they'll have a hard time removing this all. This takes some time to code though and can affect your performance though :(.
The ID and the score are mingled together in the cript.
It's not possible to compare player's names nor get their identifiers.
Also, unreadable code is not left in my map. Most of the simple numbers are functions like 324093242%233292/32236*59-2938282 This does not stop hackers.
too bad we cant compare name and player IDs...
by the way thanks for participation, I think I will look the anti-hack when my map will be ready :)
Well, I think that the easiest way to get a good anti-hack system is to beg Blizzard to add a function called "BattleNet Player ID" which would just give an ID that is linked to the players account. Then if we notice a person is cheating we can just add a list of all "bad" IDs and kick them out of our maps when the game starts.
This would also be handy to validate admins.
Anyone up for begging Blizzard about it on the official forums with me?
When Blizzard adds the 'Get player name as string' function, you can just add an 'If player name == <blacklisted name> then end game for player <blacklisted player>. The only problem is that it would ban everyone with that name.
Was a good idea in Wc3, probably isn't such a good idea in Sc2.
@RandomNoExit: Go
Ask for it, if I ask it on FR-EU forums its waste of time (admins dont read posts, ie a post was "YOU ARE ALL MOTHER F**" without the stars, and with the good content inside. the post last 3 weeks, then the guy edited it, and he is not ban).
It really depends on your map, but odds are you are caring too much about something that doesn't have that much impact; if it's just a score that has little or no impact on the gameplay it really doesn't matter that much. So what if they're on the top? If they want to, let them be. Even if it unlocks stuff; if they don't want to play your map to unlock them, then that's their loss. Who cares.
It should only be of concern when it actually hurts the fun the players that are legitimately playing your map have. And, if this is the case, it's better to just make sure changing something in the bank doesn't hurt their fun rather than trying to protect your map against hackers. I mean, how realistic is it for blizzard to allow banks to be saved server side? Especially with how greedy they were on map space (60$ gets you 50 mb, really?).
And when blizzard does add encryption to banks and better encryption to maps, it'll still be hacked, because hackers always find a way. There will always be assholes out to get you, and if you let them get to you, you're letting them win. Better to just ignore them.
@mark8264: Go
I agree, but if it was a "simple" way to block hackers (like blacklist), why not ? Ok it is only a score, but if you display scores some of the players will play hard to be the one ; so if a guy have 100x their best score they will say "there is damn cheaters on this map, i go away". thats just the point. but I will see, before that I need a bank system that work, and as it's my first map / editor use and I dont have that much time I will focus on gameplay :)