Tiendas WoD - Información técnica - Guía técnica

De World of Dungeons - Enzykloplaedia

Damit alles juristisch und technisch einwandfrei und fair ist und dein WoD-Geschäft auch in Betrieb gehen kann, muss es die folgenden Bedingungen erfüllen:

  • Die Richtlinien für WoD-Geschäfte müssen eingehalten werden.
  • Das WoD-Geschäft muss in PHP realisiert sein und eine MySQL-Datenbank verwenden.
  • Das WoD-Geschäft muss wartungsfrei sein - Details siehe unten.
  • Konvertierungen müssen korrekt behandelt werden und die player_id muss gespeichert werden - siehe unten.
  • Dies heißt auch: Es darf keine statische Liste von WoD-Welten (Algarion, Barkladesh, Cartegon, ...) gespeichert sein. Wenn eine Welt-Liste verwendet wird, muss diese dynamisch in einer Datenbank gespeichert sein. Diese Liste muss bei Einführung einer neuen Welt automatisch ergänzt werden (wenn z.B. ein Spieler aus einer neuen Welt das Geschäft betritt.)
  • For the shop, a reset url is implemented.
  • Das WoD-Geschäft darf die Server nicht übermäßig belasten.
  • Es muss inhaltlich und grafisch zu World of Dungeons passen.
  • Das WoD-Geschäft muss für alle Spieler zugänglich sein.
  • Alle Grafiken müssen von dem Server geladen werden, auf dem das WoD-Geschäft installiert ist.
  • Das WoD-Geschäft darf keine Foren, kein Mailsystem und keine Chat-Möglichkeit enthalten.
  • In dem WoD-Geschäft dürfen keine Links auf externe Seiten enthalten sein. Es dürfen keine Werbebanner, Javascript-Layer oder Popups eingeblendet werden.
  • Eine Weiterleitung auf externe Seiten ist nicht gestattet.
  • Links auf World of Dungeons und auf andere WoD-Geschäfte sind erlaubt.
  • Das WoD-Geschäft darf nur mit World of Dungeons und nur gemäß der hier beschriebene Schnittstelle WoD-Transfer Daten austauschen. Ein Datenaustausch mit anderen Servern oder auf andere Weise ist nicht gestattet.
  • Es dürfen keine persönlichen Daten der Spieler (wie z. B. die Email-Adresse oder den realen Namen) erhoben oder gespeichert werden. Die zum Betrieb des WoD-Geschäfts notwendigen Spieldaten (Heldenname, Gold, Gegenstände) dürfen selbstverständlich auf dem Server gespeichert werden.


Contenido

Wartungsfreiheit

Der Betrieb muss auch ohne einen Administrator, der regelmäßig Aufgaben durchführt, gewährleistet sein. Sonst gibt es Probleme, wenn du mal Urlaub machst oder das Geschäft nicht weiterführen möchtest.

Dies heißt auch: Es darf keine statische Liste von WoD-Welten (Algarion, Barkladesh, Cartegon, ...) gespeichert sein. Wenn eine Welt-Liste verwendet wird, muss diese dynamisch in einer Datenbank gespeichert sein. Diese Liste muss bei Einführung einer neuen Welt automatisch ergänzt werden (wenn z.B. ein Spieler aus einer neuen Welt das Geschäft betritt.)

Konvertierungen

Manchmal konvertieren Helden. Dabei ändert sich ihr Name und ihre User-ID. Die player_id bleibt aber gleich! Deshalb sollte die player_id bei jedem Helden in deinem Geschäft gespeichert werden.

Das Geschäft muss dem Helden eine Möglichkeit bereit stellen, nach einer Konvertierung an sein Guthaben bzw. Lager zu kommen. Dazu gibt es die Transaktion conversionhistory.

Sicherheit

Alle Eingaben eines Spielers müssen geprüft werden!

Gold-Beträge

Spieler können die Werte von POST- und GET-Variablen und COOKIES frei bestimmen. Selbst wenn das Web-Formular eine Beschränkung enthält, gibt es Tools, mit denen man diese umgehen kann.

Deshalb muss jede Wert, der vom Webbrowser des Spieles kommt, geprüft werden.

define('MAX_GOLD', 1000000);

$gold = 0+$_POST['gold']; // Sicherstellen, dass Goldbetrag eine Zahl ist und kein String.
                          // Sonst könnten durch " oder ' Datenbank-Abfragen manipuliert werden.

if ($gold>=0 && $gold<=MAX_GOLD) { // Sicherstellen, dass nicht durch Variablen-Überlauf Fehler entstehen
    // dies ist ok - Eingabe verabeiten
}

Datenbank-Abfragen

// Sicherstellen, dass Spielereingaben Zahlen sind und keine ' oder " enthalten.
mysql_query('UPDATE accounts SET gold=gold+' . (0+$_POST['gold']) . ' WHERE id=' . (0+$_POST['hero_id']))


Véase también

Herramientas personales