Struct in Binärdatei schreiben: Eintrag ist immer doppelt in der Datei vorhanden
-
Das "beste" wäre sicherlich sich für jede Komponente die du in deinem Spiel hast, wozu auch die Highscorespeicherung gehört, ausreichend Zeit zu nehmen, um dies generisch zu gestalten.
Das hat mehrere Vorteile:
a) es ist sauber und daher leicht zu warten
b) es ist wiederverwendbar (für spätere Spiele)
c) man lernt was dabeiWenn du nun zB eine Klasse schreibt, der du per Schnittstelle die Daten gibst, die dann selbstständig Checksummen erstellt und eventuell sogar verschlüsselt, hast du einen gewissen Lernfaktor dabei. Wenn du dann noch per Parameter angeben kannst wie die Daten geschrieben werden sollen, also ob binär oder textuell, hast du wieder was "wiederverwertbarer" gemacht.
Ist nämlich später ziemlich frustrierend wenn man nach ein paar kleinen Spielen das erste "vernünftige" machen will, nur um dann festzustellen das man das Rad zum x.ten mal neu erfinden muss, nur weil man es nie generisch gestaltet hat und es zu schwer ist aus dem alten Kram zu extrahieren, weil eh alles unterschiedlich aufgebaut ist.
Hab noch so viele alte Projekte die ich gerne beenden würde, würde aber wohl bei dem Versuch die Sachen noch zu verstehen (trotz Kommentare) Selbstmord begehen.

-
Hundefutter schrieb:
...
Ich arbeite grundsätzlich nicht nach dem Prinzip "hauptsache es läuft"!...Sorry, ich wollte Dir nicht auf den Schlips treten - ich kenne Dich einfach noch nicht gut genug, daher die Mutmaßung.
Hundefutter schrieb:
...
Welche Variante würdest du denn vorschlagen, welche die Manipulation nicht so einfach macht wie eine Textdatei? Ist da eine Binärdatei nicht die logische Konsequenz?..."Binär" hat ja nunmal nichts mit "sicher" zu tun ... deswegen ist es IMHO alles andere als "die logische Konsequenz".
Eine recht "preiswerte" Variante einer Verschleierung wäre ein binäres XOR mit einem festen Schlüsselwert.
(Vorteil: Zur Verschlüsselung kann man denselebn Algorithmus verwenden wie bei der Entschlüsselung und XOR ist ein bereits eingebauter Operator)Gruß,
Simon2.
-
Fellhuhn schrieb:
Das "beste" wäre sicherlich sich für jede Komponente die du in deinem Spiel hast, wozu auch die Highscorespeicherung gehört, ausreichend Zeit zu nehmen, um dies generisch zu gestalten.
Wenn du nun zB eine Klasse schreibt, der du per Schnittstelle die Daten gibst, die dann selbstständig Checksummen erstellt und eventuell sogar verschlüsselt, hast du einen gewissen Lernfaktor dabei. Wenn du dann noch per Parameter angeben kannst wie die Daten geschrieben werden sollen, also ob binär oder textuell, hast du wieder was "wiederverwertbarer" gemacht.
Bin gerne bereit, mir ausreichend Zeit zu nehmen, da es für 3 Spiele ist und diese bis jetzt auch sehr viel Mühe und Zeit gekostet haben und daher ich diese mit der Highscore gerne vernünftig abschließen möchte.
Werde deinen Vorschlag mit ner "Highscore-Klasse" gerne berücksichten, brauche ja eh was wiederverwendbares, da es in mehreren Spielen eingesetzt wird.Simon2 schrieb:
Hundefutter schrieb:
...
Ich arbeite grundsätzlich nicht nach dem Prinzip "hauptsache es läuft"!...Sorry, ich wollte Dir nicht auf den Schlips treten - ich kenne Dich einfach noch nicht gut genug, daher die Mutmaßung.
Kein Problem, wollte es nur richtig stellen. Will das Highscore-System nicht einfach so hinklatschen, sondern schon vernünftig machen.
Simon2 schrieb:
Eine recht "preiswerte" Variante einer Verschleierung wäre ein binäres XOR mit einem festen Schlüsselwert.
(Vorteil: Zur Verschlüsselung kann man denselebn Algorithmus verwenden wie bei der Entschlüsselung und XOR ist ein bereits eingebauter Operator)"XOR" sagt mir jetzt erstmal nichts.. Werde mal etwas Googeln, mal sehen, was ich so finde..
MfG
Hundefutter
-
c = a^b ist a XOR b. Beim Ergebnis (c) sind jene Bits gesetzt, die bei genau einem der beiden (a oder b) gesetzt ist.
Dann gilt: a^c = b und b^c = a.
So funktionieren übrigen einige der RAID-Konfigurationen, um mal ein weiteres Verwendungsbeispiel zu nennen.

-
Jo, so weit habe ich bei Wikipedia jetzt auch schon gelesen.
Vielen Dank für die ganzen Tips und Informationen.Werde jetzt mal versuche, eine Klasse dafür zu schreiben und dabei möglichst alle Gute beherzigen, was mit hier nahegelegt wurde.
MfG
Hundefutter