Community-Tutorials (Source)

Map vor dem Decompilen schützen

Eine Map vor decompilen durch VMEX protecten:

Hallo und willkommen zu meinem Tutorial!

Ich werde euch zeigen, wie ihr eine Map protecten könnt, sodass VMEX diese
nicht mehr decompilen kann.

Hierbei gibt es mehrere Methoden. Doch bevor ich auf diese eingehe, werde ich
schreiben, warum überhaupt protecten, oder eben warum nicht.

Warum Protecten - oder ich will daraus lernen:

Von einer geschützten Map können andere nichts von dir abschauen, und ohne
zu fragen kopieren. Und das schlimmste; ohne dein Einverständnis und deine
Credits in einer anderen Map einzufügen. Hier kann das protecten helfen.

Wenn es jetzt aber eine einfache und keine komplexe Map ist, sollte man diese
so lassen. Hieraus können nämlich anfänger lernen, wie man z.B. einen Aufzug
oder Teleporter gemacht hat.

Darum überlegt es euch, ob es sich lohnt, eine Map zu schützen.

Map protecten Variante 1:

Ladet euch dieses Prefab runter.

Protector (~ 5KB)

Dieses Gebilde verhindert, dass VMEX die Map decompilen kann.
Speichert es unter:

X:\Programme\Steam\SteamApps\***AccName***\sourcesdk\bin\prefabs\Prefabs HL2

korr001.jpg

Achtet darauf, dass ihr Insert Original Prefab anklickt und nicht
eines erstellt mit dem Brushtool. Es sollte die Ausmasse von 10 Units haben.
VMEX erkennt dieses Gebilde und verhindert ein decompilen.

korr002.jpg

Wichtig: Man darf das Protector Prefab NICHT drehen und auch NICHT in der
Grösse verändern.

Map protecten Variante 2:

Seit dem letzten Update des Hammer Editors ist es nun möglich, die Map per Hammer
vor dem decompilen zu schützen.

Geht dazu bei eurer Map auf Map >> Map properties und wählt den Eintrag
Disallow Decompiling. Im Drop-Down Menü wählt ihr nun den Eintrag Yes.

korr003.jpg

Update

Map Protecten Variante 3:

Falls die oben genannte Variante 2 nicht funktioniert, da euch der
Eintrag "Disallow Decompiling" fehlt (falls ihr keine Custom .fgd besitzt), könnt ihr
dies auf diese Weise umgehen.
Öffnet eure .vmf eurer Map und ihr werdet gleich am Anfang ein "worldspawn"
erkennen. Hier schreiben wir nun den Code rein, damit VMEX die Map nicht
mehr decompilen kann.

JPG~protect4.jpg

Dies, wo bei mir nun markiert ist, gibt es bei euch nicht. Darum
schreibt ihr nun an dieser stelle

"no_decomp" "1"

rein. Hiermit müsst ihr nur noch speichern und danach in Hammer die Map
compilieren.

Map protecten Variante 4:

Falls ihr zu faul seid, die .vmf ausserhalb des Hammer's zu editieren,
seid ihr bei dieser Variante richtig!
Öffnet eure Map in Hammer und platziert oder wählt ein zufälliges Entity.
Klickt einmal auf den Button "SmartEdit", damit ihr aus dem SmartEdit-Modus
seid. Ausserhalb dieses Modus könnt ihr Keys anlegen.

Ihr klickt auf Add Key und dann schreibt ihr beim Key-Namen

no_decomp

und beim Key Value
1

rein. Dies sollte am schluss so aussehen:

JPG~protect5_652.jpg

Update 2

Map Protecten Variante 5:

Eine weitere sichere Variante ist eine Textur zu erstellen, die den
Namen "locked" trägt. VMEX erkennt ein solches und verhindert ein
decompilen und schützt vor unberechtigtem Zugriff. Eine solche Textur
habe ich schon erstellt und stelle sie hier bereit zum download.

JPG~protect7.jpg

Download: locked.vtf (Danke an El Supremo für den Upload)

Die Textur muss hier rein:

SteamApps/***Acc***/Counter-Strike Source/cstrike/materials/tools/

Die .vmt im gleichen Verzeichnis erstellen und dies reinschreiben:

LightmappedGeneric
{
	"$basetexture" "tools/locked"
	"%compilenodraw" 1
}

Die Textur muss auf einen Brush aufgetragen werden, und zwar auf allen
Seiten. Ihr dürft nicht nur eine Seite damit belegen. Am besten an einem
Ort, welchen niemand erreichen kann in der Map.

JPG~protect8.jpg

Fehlenden "Disallow Decompiling" Eintrag hinzufügen:

Da anscheinend Einige den Eintrag "Disallow Decompiling" im worldspawn
Entity vermissen, haben Ich und El Supremo uns dran gesetzt um
herauszufinden, was die Ursache sein könnte.
Das Problem: Ich benutze eine Custom .fgd und hatte dies nicht bedacht.
Hier erkläre ich euch nun, wie ihr den fehlenden Eintrag added:

Öffnet eure cstrike.fgd und geht zum World-Abteil.

JPG~protect6.jpg

Dieser markierte Eintrag wird euch fehlen. Darum schreiben wir jetzt rein:

	no_decomp(choices) : "Disallow Decompiling" : "If Yes, then new versions of VMEX will refuse to decompile your map." =
	[
		"" : "No"
		1 : "Yes"
	]

Nun einmal Hammer neustarten und schon werdet ihr den Eintrag
"Disallow Decompiling" finden im worldspawn (Map >> Map properties).

JPG~protect2.jpg

Für die ganz Faulen habe ihr hier meine .fgd zum Download,
die unter anderem auch bearbeitete weapon_entites hat, also Waffen
immer mit Munition spawnen.

Download: csscustom.fgd

Zum Schluss nochmals; überlegt es euch, ob ihr eure Map wirklich schützen wollt.
Wenn es eine aufwändige Map war, oder etwas enthält, welches ihr nicht ohne weiteres
rausgeben möchtet, dann lohnt es sich auf jedenfall.

Es war mal ein nicht so langes Tutorial, welches schnell durchgelesen ist :D.
Ich war wieder mal zu nett, nicht sooo viel zu schreiben ;)

MfG
- Korr