Marko: Quelltext wieder

Hallo,
Ich weiss ja, dass es schlecht ist, den Quelltext zu schützten, aber ich habe ein Game programmiert, in dem Die Lösung im Quelltext vor der Nase steht. Ich will natürlich, dass die User sich die Lösung ehrlich erspielen. Was kann ich also tun?
Danke,
Marko

  1. Hallo Marko,

    Ich weiss ja, dass es schlecht ist, den Quelltext zu schützten, aber ich habe ein Game programmiert, in dem Die Lösung im Quelltext vor der Nase steht. Ich will natürlich, dass die User sich die Lösung ehrlich erspielen. Was kann ich also tun?

    wirklich machen kannst Du da nix. Vermutlich wird das Spiel ja auch
    nicht irgendwie serverseitig ausgewertet, wenn die Lösung im Quell-
    text steht, oder?

    Also lasse es einfach so, wenn jemand in den Quelltext schaut, dann
    betrügt er sich selbst ;-)

    Solltest Du das Spiel irgendwie auswerten (Highscore, Gewinne etc.),
    dann ist eine (reine) JavaScript-Variante nicht wirklich sinnvoll.

    Viele Grüße,
    Stefan

  2. hi!

    Ich weiss ja, dass es schlecht ist, den Quelltext zu schützten, aber
    ich habe ein Game programmiert, in dem Die Lösung im Quelltext vor
    der Nase steht. Ich will natürlich, dass die User sich die Lösung
    ehrlich erspielen. Was kann ich also tun?

    Ich weiß nicht, was das für ein Spiel ist. Aber möglicherweise könntest
    du die Lösung im Skript verschlüsselt speichern, und zwar so, dass nur
    eine Verschlüsselung, aber keine Entschlüsselung mehr möglich ist.
    Die Lösung des Besuchers kannst du dann auf die gleiche Weise ver-
    schlüsseln und die beiden codierten Werte auf Übereinstimmung verglei-
    chen.

    bye, Frank!

    1. Für ganz ganz einfache Zwecke (nur einfachen Selbstbetrug verhindern, nicht für Preise usw.) reicht es z. B., einen String Zeichen für Zeichen durchzugehen und den Zeichensatzcode z. B. um 5 zu erhöhen:

      function xyz(str){
        var out=""
        for(var i=0;i<str.length;i++)
          out += String.fromCharCode(str.charCodeAt(0)+5)
        return out
      }
      function xyz2(str){
        var out=""
        for(var i=0;i<str.length;i++)
          out += String.fromCharCode(str.charCodeAt(0)-5)
        return out
      }

      Als Variante evtl. noch +/-i % 3, dadurch: +5, +6, +7, +5, ...

      (ungetesteter Vorschlag)