Page 1 of 1

[TOOL] ModProtectionTool

PostPosted: Tue Jun 28, 05 11:27 am
by Dae
ModProtectionTool

Type: tool
Version: 2.8
Project: [A] tools

DOWNLOAD FROM DEUSEXNETWORK.COM

About:
This tool modifies a package file (extension - .u) in the way so noone else can see the source code even with the use of WOTGreal or other exporters. There are 3 levels of protecting: the first one is against the exporting of the mod's source code, the second and the third one protects the mod's binary against decompiling.

Requirements:
Windows 95/98/2000/ME/XP

Installation:
No installation required.

Use:
You can use the program in 2 ways. The first and simpliest way: just launch the program and specify the filename with extension and the program will pass your mod over all the three levels. You can use the second way if you need to choose between these 3 levels of protection. Run the program within commandline or batch file (.bat) with the parameters.

Syntax:
Code: Select all
ModProtectionTool PackageFileName [options]


Parameters:
Code: Select all
-ss   the program will remove the source codes against exporting
-fp   the program will protect all function against decompilation
-np   the program will screw up the variables function identifiers
     (just if identifiers are marked with a  _   in the beginning of the name)


Examples:
Code: Select all
ModProtectionTool FLKeypad.u -ss -fp -np
- 3 levels of protection to package FLKeypad.u

ModProtectionTool FLKeypad.u -ss -fp
- removes the source code against exporting and functions and against decompilation

ModProtectionTool FLKeypad.u -ss
- removes the source code so noone else can export it anymore but don't forget that advanced users can still decompile it


We recommend to use always the source code removing (-ss) otherwise two other levels don't make sense ;)

Todo list:
this is what we're planning to add in further releases
    n/a

Changes log:
this is what we've changed
  • 2.8 - Program size decreased due to compression, works with Win98 now
  • 2.7 - changed package recognization system (so that the program recognizes if the package was already modified before)
  • 2.6 - Added Self-check
  • 2.5 - fixed version for the log-feature
  • 2.4 - (inofficial) log-feture screwed up everything (>_<)
  • 2.3 - Added logging feature for detailed information
  • 2.2 - everything worked well. how i remember
  • 2.1 - fixed problems with NameTable protection (program acted in mod like an elephant in a glass house O_O)
  • 2.0 - Added MTL like NameTable protection
  • 1.9 - added batchfile compatibility
  • 1.7 & 1.8 - (inofficial) troubleshooting versions for the coming MTL like protection
  • 1.6 - added a better class-begin recognition for StripSource
  • 1.5 - modified StipSource that you didn't need to mark the end of your class anymore
  • 1.4 - added StripSource protection (idea from JomBowen's stripsource perl-script)
  • 1.3 - same like 1.2
  • 1.2 - extended the range of protectable functions
  • 1.1 - Added possibility to specify an unrealpackage
  • 1.0 - Program with embedded Function-Protection Created

Known bugs:
    none at the moment - please reply to this topic if you found some

Credits:
AUTHORS:
BETA TESTERS:
  • alrightythen


Copyrights/permissions:
This program was not made and is not supported by Ion Storm and Eidos Interactive.
You may not claim this work as your own!
You may distribute this program, as long as it is free of charge and includes no changes and modifications.
You may use this program without author's permission.

Comments/questions/problems? Quick, reply to this topic! :)

PostPosted: Wed Jun 29, 05 2:04 pm
by alrightythen
I beta-ered this too :lol: Its a great program, and us codders highly need it (unless we are sharing code of course lol) 8)

PostPosted: Fri Sep 09, 05 10:17 pm
by ~ô¿ô~Nobody~
topic updated to version 2.7

PostPosted: Thu Dec 15, 05 3:36 am
by docholiday
Does this just mangle names? There is a tool out there to unmangle them so WOTgreal can decompile them. Worked with MTL.

PostPosted: Thu Dec 15, 05 8:30 am
by Alex
Is there one? I thought the MTL team released it.

PostPosted: Thu Dec 15, 05 9:35 am
by Dae
Could you show us this tool?

PostPosted: Thu Dec 15, 05 10:57 am
by alrightythen
As far as Im aware only nobody has a program to unprotect nametable and make mod almost decompilable...as he is the 'tool' that unprotected mtl..

As Dae said would be interesting to see this tool..and if it was available, Im sure mtl would have been unprotected sooner

PostPosted: Thu Dec 22, 05 3:56 am
by Mike
nice

PostPosted: Thu Dec 22, 05 10:11 am
by Gishank
^^^^
SPAM!, And to make sure this isn't spam vola.

PostPosted: Sat Dec 24, 05 9:13 pm
by docholiday
I didn't hang on to it, but I can't imagine it would be hard to make another one. Regardless though, this kind of protection worked with MTL for a very long time, so this is definitely a good thing to put out.

PostPosted: Sat Mar 18, 06 3:17 am
by kBo
Just a quick note, you may want to protect the executable somehow, so people aren't able to get full asm dumps and whatnot as easily.

Doesn't make much sense to me for you to go through all of this trouble to release an Unreal package protector (well done, I might add -- props to Nobody) and leave the executable wide open.

Edit: Although I realise that the DX community is chock-full of plagiarizing, stealing nine-year-olds, why not just release the source for people to play around with instead of going through all this trouble to protect the packages from decompilation?

Just my $0.02.

PostPosted: Wed Jul 26, 06 10:36 pm
by MainMan
One limitation: I can't get it to work with a package that extends dxmtl152b. I have a mtl-extender tool (made by Nobody), and I have tried:

1. Extend MTL
2. Protect

and also

1. Protect
2. Extend MTL

Either way the server crashes as soon as it starts up. >_>

PostPosted: Mon Jul 02, 12 6:22 pm
by atrey65789
Link doesnt work.

PostPosted: Mon Jul 02, 12 6:45 pm
by Alex
Link has been fixed.

PostPosted: Mon Jul 02, 12 6:45 pm
by atrey65789
Thank you very much :D

PostPosted: Sat May 18, 13 11:38 pm
by ProtoType
lol is it protected agiants unrealed XD if not then there is no point in it since unrealed needs to read the code and if its protected items cant be added because unrealed cant read it

besides there are moders out there that take advantage of other people script to use to their advantage (like me because i cant code myself) but still great things can be created when doing this and people can learn of it

like eidos would bother telling you not to use their script or put the copyright before your nose when they allowed modding they also allowed making use of there work meaning if eidos was thinking off protecting the game then gues we wouldnt have mods in the first place XD

if its about models and textures or sounds maybe that some protection but in reality everybody can hear and see its from another mod and people really cant copy eachother their is always a difference

im not really going to use this tool ever unless it would be a total conversion then still its a old game and things like this shouldnt really be added protection should be mostly focussed on game company's not a mod for a game since how much you want to protect it truth is if you post a mod or other you have to accept that your work might be used by somebody else including code use this is a harsh reality of making free stuff

and last im sure somebody wil ever make a tool that reverses this process thing is if you make it harder to get to people want to unlock it resulting in a tool like i mentioned above

PostPosted: Sun May 19, 13 12:24 am
by Kaiden
Hi, interesting post. Alpha wholeheartedly supported and still does "open source", but at the same time it's completely understandable that modifications such as anti-cheat mods were protected.

truth is if you post a mod or other you have to accept that your work might be used by somebody else including code use this is a harsh reality of making free stuff

And this mod made it not a truth. At the end of the day, some modders, unpaid, put a lot of time and effort into creating modifications. If they wanted to release the source code at their leisure, then that's fine, this mod allowed them to do that. I disagree entirely with the "You've made this, so it must be completely open to the public" philosophy you seem to be endorsing.

At the same time you may want to look at the map protection tool, which pretty much does entirely the same thing. I'm of a firm belief that content created by someone belongs to them (while regarding actual game licenses etc), and how they choose to distribute it is up to them. In this community, sure in the long run it may have been beneficial to have had almost 100% of everything open source, but at the same time I don't see how having CRDM or AdvBan open source would have helped at all; all it would have resulted in is compromises of the mods purposes.