Deus Ex Clan [A]lpha
homeabout usprojectsmembersmatches
join uschallenge usdownloadsforum
Knowledge Base

Protecting a map against renaming

home / Knowledge Base / Mapping / Protecting a map against renaming

MapNameChecker — is the class which checks the map's name everytime it's played, thus disallowing hosters to rename it. It was created by [A]Nobody and could be obtained from our "Downloads". If you use MapNameChecker with MapProtectionTool noone will be able to alter your maps without your permission.

The principle MapNameChecker uses is quite easy. As you may know, not only .u/.utx/.uax files are Unreal Packages, but also maps (.dx). Therefore, you may treat your map as a package, by embedding textures, sounds, models and, of course, scripts into it. So, if you have, e.g. 2  .utx files and 3 .u files, you may just merge them with your map for simplicity. It's necessary to do with MapNameChecker class, so criminals of dark Deus Ex community couldn't modify the external .u file. When the procedure is done, each time the map will be run, MapNameChecker will check if the map's file name is equal to the default one. If some malicious dude renames your map, his server will crash.

You will have to spend some time in the beginning to learn how to use it, but later it will be way easier — protecting the map is a matter of three minutes.

Step 1

  • Make a backup of your map file.
  • Download and extract MapNameChecker.u to DeusEx/System.
  • Open your map in UnrealEd.

Step 2

Read two first steps from this article on BeyondUnreal Wiki (see "Importing Code into MyLevel" -> "...from a .u file"). The third step is to "provoke unloading". In the log window, type something like this (the name of the file doesn't matter at all, you may type anything you want instead of "blahBIGBLAHblah"):

obj load file=blahBIGBLAHblah package=MyLevel

 

 

Then, type the following command:

obj load file=MapNameChecker.u package=MyLevel

 

 

Step 3

Refresh UnrealEd classes browser (check and uncheck "Only show actor classes" option for this):

 

 

The class "MapNameChecker" should appear in the list of classes. If it did, "expand" the MapNameChecker (click on +). You will see a child class with some odd name (boxes or lines):

 

Step 4

Add this weird-named class to your map (it looks like eagle when placed). It doesn't matter where you place it. Then, right click on "eagle" and go to properties: 

 


 

In properties, go to "MapNameChecker". You will see two variables to change:
MapName — type your map's filename without extension (i.e. without .dx).
bCaseSensitive — when true, also disallows changing lower/upper cases (e.g. Dxmp_Smuggler and DxMp_sMugGLEr, etc). We don't recommend using it.

 

 

Step 5

Rebuild and save your map. Open MapProtectionTool and protect your map, so further editing in UnrealEd will not be possible (and criminals couldn't modify the MapNameChecker class).


← previousindexnext →

Powered by [A]