Jump to content
Unity Insider Forum

Brauche Hilfe beim speichern/verändern und auslesen von MySQL


Recommended Posts

Hallo Leute!

 

Ich versuche mich aktuell an einem Spiel das vom

Prinzip her wie zB.: "Monster Warlord" aus dem Hause Gamevil.

 

Die Programmierung an sich stellt soweit keine Probleme dar. :ph34r:

 

Nun zu meiner Frage:

 

Ich möchte dass der Spieler verschiedene Werte hat,

Bsp.:

- Geld

- Leben

- Exp

etc...

 

Aktuell habe ich dafür je eine Variable die sich eben bei gewissen Aktionen ändern.

 

Mein Ziel ist es aber das die Variable nicht auf der jeweiligen Plattform

gespeichert ist sondern in einer Datenbank.

 

Der Grund dafür ist das die Werte nicht manipuliert werden können.

Zumindest war so mein Grundgedanke. :D

 

Nun hab ich mich ein wenig "Schlau" gelesen und hab diese Wiki Anleitung zu Erstellung

einer HighScore - Liste befolgt.

Das klappt auch Wunderbar! :ph34r:

 

Nur habe ich nun das Problem das ich nicht so recht weiß wie ich das nun "umbauen"

kann um meine Variablen zu speichern.

 

Noch dazu benötige ich eine Möglichkeit einen Zeitserver ab zu fragen wegen der Regeneration der Leben etc.

Bzw. Tägliche Quests.

 

Gibt es die Möglichkeit die App mit einem Zeitserver zu konfigurieren?

 

Und zu guter Letzt noch eine Frage.

Macht es überhaupt Sinn die Daten hoch zu laden oder ist eine App die mit Unity programmiert wurde so verschlüsselt das es "genügend" Sicherheit verspricht?

 

Es wäre sehr schade wenn jemand einfach eines dieser Programme öffnen würde, den Wert der Variabel für das Geld suchen würde und dann Cheaten könnte.

 

Ich wäre über jede Information sehr erfreut! :wub:

 

MfG. Daniel!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Daniel,

 

Daten lokal abzulegen ist immer mit einem Risiko verbunden. Je nachdem, wie erfolgreich dein Spiel ist, gibt es immer Hacker, die darin eine Herausforderung sehen. Und da haben sich auch große Firmen schon mehrere Zähne ausgebissen.

 

Für ein Indie-Spiel würde ich aber sagen, dass eine einfache Verschlüsselung zum Absichern der Savegames völlig ausreicht. Mit C# hast du da ein paar interessante Möglichkeiten. Der Suchbegriff "c# encrypt decrypt" in Google bringt dich da ein schönes Stück weiter. Natürlich hat so eine Verschlüsselung auch Nachteile, da der Schlüssel selbst sich ja irgendwo im Programm befindet. Aber die meisten Casual-Gamer haben keine Ahnung, wo sie da mit dem Suchen anfangen sollen. Das würde mir persönlich reichen.

 

Das mit dem Zeitserver ist schon etwas komplizierter. Ich würde mir da einen Webservice basteln, der bei einem Hoster läuft. Der kann dann ein Zeitsignal bereitstellen, welches einfach abgefragt werden kann. Ist natürlich mit Kosten verbunden. Wenn du dann so einen Webspace hast, kannst du auch über Datenbank-Basiertes speichern auf dem Server nachdenken.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 weeks later...

Das Problem ist, dass man beim Highscore, aber auch hacken konnte :D.

 

Also zufällig verfolge ich gerade die Entwicklung eines Browsergames.

 

Er hat zu jede Aktion eine PHP-Datei erstellt und dort wird immer halt dann überprüft ob die Aktion möglich ist.

Das wird bei dir aber nicht so möglich sein.

 

Bei Unity ist es leider anders: Irgendwann wird der Client doch irgendwie senden "Habe diesen Monster getötet" und zack gehackt "habe 100x diesen Monster getötet" und kriegt auch 100x das Gold gut geschrieben. Es ist ja nicht IMMER Datenbank basiert.

Es sei denn du hast ein Server wo der Server alles nochmal kontrolliert bzw. alles zu Datenbank schickt wird. Dann würde es noch klappen.

 

Bei Single-Player brauchst du diesen Aufwand nicht machen.

 

 

Robocraft finde ich ist ein gutes Beispiel. Es benutzt, wenn ich mich nicht irre Photon Cloud und hat täglich 500-2000 Spieler online. Da haben am Anfang auch voll viele gecheatet. Speedhack, NoRecoil usw. Jetzt ist da EasyAntiCheat drauf und viele machen nichts mehr oder trauen eher gesagt nicht mehr weil sie gebannt werden. Wenn es was großes wird, warum dann nicht sowas? Natürlich falls online ist.

 

Ansonsten gab es noch in asset store auch irgendwas mit anti cheat. Ist auch sehr gut. :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...