Ich bin dabei, einige Modellpakete von einer Website zu kaufen, um ein Prototyp für mein Spiel zu erstellen. In dem Vertrag heißt es, dass ich sie schützen muss, um zu verhindern, dass die Öffentlichkeit Zugang zu ihnen erhält.
Ich erinnere mich an die Arbeit mit den Valve-Spielen. Sie verwendeten .gcf (Spielinhaltsdatei), die im Grunde genommen ein Archiv aller Inhalte für jedes Spiel war. Sie packten Sound / Materialien / Modelle / Karten / etc. Ich dachte, es wäre vielleicht keine schlechte Idee, so etwas zu entwickeln, und schrieb einfach ein kleines Tool, mit dem ich Dateien hinzufügen / entfernen kann.
Das Problem ist, dass ich wirklich keine Ahnung habe, wie ich anfangen soll. Ich habe Google ausprobiert, wusste aber nicht einmal, wonach ich suchen sollte. Wenn jemand irgendwelche Ideen hat, Links, die von Nutzen sein könnten, oder irgendetwas anderes, würde ich es sehr schätzen.
quelle
Wenn Sie nur Prototypen erstellen, würde ich mir keine Gedanken darüber machen, Ihre Assets in eine GCF / ZIP / PAK-Datei zu packen. Die Öffentlichkeit wird Ihren Prototyp nicht sehen!
Darüber hinaus bietet der GCF von Valve so viel Schutz für Ihre Inhalte wie eine ZIP-Datei - also null. Die Datei ist nicht verschlüsselt. Sie können GCFScape herunterladen, um den Inhalt zu durchsuchen und zu extrahieren.
Es ist nicht wert, den Aufwand in Ihr eigenes Pack - Dateisystem zu schaffen , wenn Sie spezielle Bedürfnisse haben jetzt die nicht von ZIP - Dateien oder das eigenen Dateizugriffsmechanismus des OS erfüllt werden; Die einzigen Gründe, an die ich denken kann, sind:
quelle
Diese Forderung ist Bullshit.
Da das Spiel auf die Daten zugreifen kann und der Benutzer Zugriff auf das Spiel hat, gelingt es ihm, das Format, in dem Sie die Daten gespeichert haben, rückgängig zu machen, wenn Sie dumm genug waren um es zu verschlüsseln.
Sie können keine Sicherheit hinzufügen. Ich wiederhole: Sie können einfach keine Sicherheit hinzufügen . Sie können nur Dunkelheit hinzufügen, und Dunkelheit ist völlig sinnlos, da - wie gesagt - ein Benutzer mit genügend Geschick und Entschlossenheit es einfach kaputt machen wird.
Unterschreiben Sie nichts, was Sie nach etwas fragt, was nicht getan werden kann.
quelle
Oft stelle ich fest, dass es sich bei benutzerdefinierten Inhaltspaketen in der Regel um ein ZIP- oder ein RAR-Archiv mit einer anderen Erweiterung handelt. Dies ist natürlich nicht gut, wenn die Website eine benutzerdefinierte Verschlüsselung möchte.
quelle
Ein paar Ideen:
1] Haben Sie ein Standardmodellformat (z. B. .obj oder .x) verwendet oder verwenden Sie ein benutzerdefiniertes Modellformat, wenn Sie direkt in Ihr Spiel laden? Wenn Sie ein benutzerdefiniertes Format haben und Ihr Modellformat rückentwickeln müssen, um es in eine nützliche Form zu bringen, haben Sie bereits ein gewisses Maß an Schutz gegen den opportunistischen Asset-Ripper.
2] Kylotans Argument zur XOR-Verschlüsselung ist exzellent, mit der Ausnahme, dass Sie mit einer von einer Pseudozufallszahl generierten Sequenz (möglicherweise durch einen Hash auf den Dateinamen gesetzt) verschlüsseln können, um lange Folgen von Nullen in Ihren Quelldaten zu vermeiden, die Ihre Verschlüsselungszeichenfolge anzeigen. Natürlich müssten Sie Ihre Dateien sofort nach dem Laden an Ort und Stelle entschlüsseln, aber wenn Sie Ihre verschlüsselte Datei in neu startbare Blöcke aufteilen, können Sie die Entschlüsselung an Ort und Stelle für mehrere Threads starten, wenn dies wirklich zu einer Belastung beim Laden wird . Aber ich bezweifle ernsthaft, dass dieses Maß an "Schutz" erforderlich ist - insbesondere, wie andere gesagt haben, wird der entschlossene Ripper es umgehen. z.B. durch Abfangen der Draw-Aufrufe mithilfe einer DLL-Umleitungsbibliothek und direktes Zurücklesen der Vertex-Puffer / Index-Puffer.
3] Sie müssten den ursprünglichen Asset-Anbieter nach den Anforderungen an den Schutz fragen, aber es könnte auch nur darum gehen, Ihrem Programm-Begrüßungsbildschirm und / oder Ihrer EULA einen Hinweis auf die Urheberrechte für Assets hinzuzufügen.
quelle