HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Different approach on map protection?

10-07-2009, 09:30 PM#1
Cheezeman
This oughta been asked a million times already, but I need a good way to protect my friend's map.
I know that vex's optimizer is great (it really is) but this map has been unprotected several times, easily (no trigger damage).
People are probably thinking right now "wtf another noob who wants a protector" and tell me that there's no perfect protection, but he really needs this (it's a popular map and we don't want it in the wrong hands).
If you don't got any good tips about a protector other than vex, could you give me some tips on how to protect it with, say, hidden jass code? Like... preventing people from adding more objects, or renaming functions to be completely confusing.

All help is appreciated, and I hope I havn't offended you by posting another protector-related thread :/
10-07-2009, 09:36 PM#2
Anachron
Vex code optimation will change variable and function names into stupid letters and numbers, and remove all spaces and comments from code. Also it changes the location of the script to scripts/wc3script.j .

Thats enough, you don't need more.
10-07-2009, 11:17 PM#3
Bobo_The_Kodo
Can corrupt mpq easily with a hex editor so only wc can read it
10-07-2009, 11:22 PM#4
Vexorian
which the optimizer does already.

If wc3 can read it, so can a moron. It is the sad truth. So you can :
a) Embrace the problem, make the map too open.
b) Try to fix the issues adding magical triggers, will take more work to defuse but if somebody skilled is really interested in doing so, he will.
c) Ensure there is only one official place to get your map and tell your players to avoid getting it elsewhere.
d) live with it.
10-07-2009, 11:56 PM#5
Earth-Fury
Sorry to be the bringer of obvious but bad new, but...

If there truly is a massively epic protection method, people won't discuss it on public forums. Or with strangers. Or possibly at all. Simply because that would make it a much less awesome method, as more people would understand it.

Almost/all protection methods beyond deleting editor only data and obfuscating the script work out to be security through obscurity.
10-08-2009, 03:11 AM#6
Dark.Revenant
To paraphrase: You're on your own, kid.
10-08-2009, 03:24 AM#7
Bobo_The_Kodo
Quote:
which the optimizer does already.
It really doesn't
10-08-2009, 07:36 AM#8
Anachron
Quote:
Originally Posted by Bobo_The_Kodo
It really doesn't
I am not sure, but shouldn't Vex know what hes talking about?

And btw, DotA protection is pretty impressive.
10-08-2009, 11:48 AM#9
Strilanc
I write a hosting bot which has to read map files in order to compute checksum values sent to the players.

When castle fight 1.14 came out, it was using new protection. Invalid duplicate hash entries, invalid block table entries, and things like that. It took me a couple hours to update the bot to deal with it, and now that protection is no stronger than anything before it.

Protection generally pisses me off now, especially when it can be defeated automatically after a one-time amount of manual work. The only effective protection, where attackers have to do more manual work for each map, is removing as much editor-only information as possible (which the optimizer does just fine).
10-08-2009, 01:16 PM#10
Vexorian
Quote:
Originally Posted by Bobo_The_Kodo
It really doesn't
it does change the header size bytes. if you know a better way, that's fixable by a PM...
10-08-2009, 02:19 PM#11
Cheezeman
So if I'm understanding this correct, there's always a way to modify the map if it can be opened by wc3 (game)?
Then I guess I gotta work on some 'magical triggers' that prevent cheats and similar.

Thanks for all your help. If anyone has any suggestions of triggered map-protection then I'd be more than happy to listen.
10-09-2009, 04:12 AM#12
saw792
http://www.thehelper.net/forums/showthread.php?t=135225
10-09-2009, 04:39 AM#13
Vexorian
That's easy to work around, specially after reading that thread.

That's the problem, you can't release these tricks without letting everyone know how to break them...
10-09-2009, 05:03 AM#14
saw792
Yeah I am well aware. He still seemed interested though, that's why I posted it. The more interesting thing about that is that the game doesn't seem to do any bounds checking on arrays declared in a Preloader() file: http://www.thehelper.net/forums/showthread.php?t=137116

...or something. I'm not that familiar with that type of concept myself so I have probably described it incorrectly.
10-09-2009, 05:49 AM#15
blanc_dummy
try using Ultimate Map SLK Optimizer? that tool will encrypt hash table of your map