[UT2004] AntiPiracy_071

Name: [UT2004] AntiPiracy_071

Version: 1.0

Author: Mutant //

Date Submitted: September 17, 2025

Description

//============================​==============================​========//
// AntiPiracy V0.71 - Protection against map piracy - (c) by Mutant //
//============================​==============================​========//

This script will protect your maps against map piracy and will disable online/lan play if unauthorized changes has been detected. Offline play is not supervised.
All needed data will be stored in myLevel, so you don't need the external script files (AntiPiracy_B, AntiPiracy_P) on servers.

Notes: You HAVE to follow the instructions below EXACTLY! Otherwise the protection may fail!!
To add protection should be the last thing you do, so finish your map at first.
You have to do this for every map you want to protect.
This script is free to use.
If you have still problems, contact me.

Instructions:

1. Backup your map!
2. Place AntiPiracy_B and AntiPiracy_P in your UT2004/System folder.
3. Open your UT2004.ini (inside of System) and add this entry below [Editor.EditorEngine]:
EditPackages=AntiPiracy_B
4. Open the UnrealEd and load your map.
5. In the BrushBuilder section you will notice a new Builder called AntiPiracy. Rightclick it, enter your settings and click on Build in order to add protection.
- Keep in mind, the password is steady and cannot be changed any more, so write it down somewhere.
- The OrigAuthor value MUST equal the Author value in your LevelInfo.
- The OrigMapName value MUST equal the mapname WITHOUT its gametype prefix.
If you get an "Error, please try again." and this error persists, then contact me.
6. Do a full rebuild and save your map.
If you want to disable the AntiPiracy Builder, simply put a semicolon behind the entry in your UT2004.ini (;EditPackages=AntiPiracy_B). To enable it again remove the semicolon.
7. Check if protection works. To do that, change the Author value in LevelInfo and host a dedicated server to check if the script works properly. When protection fails, then delete the map and start all over again with your backup.
8. If you want to change some seetings you have to set bChange to true, enter the right password and the new settings; a click on Build will save these new settings and a "Done" will pop up.

AntiPiracy - Variables:

1. bChange: Set this to true, if you want to change some settings (bAlsoListenServer, OrigMapName, OrigAuthor, AuthorContact), but you have to enter your password so that the settings will change. This will only work if you already have protected your map before.
2. Password: Your Password, in order to change the AntiPiracy settings (bAlsoListenServer, OrigMapName, OrigAuthor, AuthorContact).
3. bAlsoListenServer: Only dedicated servers are supervised, this setting will enable supervision on listen servers too.
4. OrigMapName: Enter the original mapname here, without its gametype prefix. It is possible to add tags to the mapname unless this mapname string still exists.
5. OrigAuthor: Enter your name, initials or whatever here, but it HAS to be exactly the same as the LevelProperties.Author value.
6. AuthorContact: You can fill in this field, so that this contact data will be printed to the log, when someone made unauthorized changes.

Example:

OrigMapName = Rankin | Real mapname = DM-Rankin
Now let's change the real mapname
- DM-RankinV2 (this works)
- DM-ClanXYZ-Rankin (this works)
- CTF-Rankin (this works)
- DM-ranKiN (this doesn't work)
- DM-Ranki (this doesn't work)
- DM-MyStolenMap (this doesn't work either)

OrigAuthor = Mutant | LevelInfo's Author = Mutant
Let's change the LevelInfo's Author
- MuTaNt (this doesn't work)
- Mutant1 (this doesn't work)
- Mutant (this only works)
Any change to the LevelInfo's Author value will disable online(/lan) play.

Contact:

E-Mail: viper_squad@hotmail.de
EpicForums: Mutant117

Finally, I want to thank Wormbo who has helped me a lot to realise this protection module. :D