Montag, 30. Juli 2012

Aller Anfang ist schwer ODER Warum es 8 Jahre dauerte

Vor langer langer Zeit...

...hatte ein gelangweilter Auszubildender aus Frust begonnen einen Webauftritt zusammenzuschustern.

Während des nicht allzu warmen Sommers 2005 entstand etwas, was ich damals wohl als abgespeckte "Animexx.de-Kopie" bezeichnet hätte. Ein Ort um Rollenspiele in text-basierter Form (konzeptionell ähnlich den angestaubten Text Adventures) zu spielen. Anders als erwähnte Webseite, sollte der Webauftritt einzig dem Spielen von solchen RPGs dienen, daher auch der Name: RPGLand. Es wurde fleissig gebastelt, meist spät Abends - unter starkem Koffeeineinfluss. Bald stellte sich heraus, dass die Nachfrage eines solchen Angebotes doch höher war als erwartet...

Das Ergebnis überstieg alle Erwartungen bei weitem!

RPGLand umfasst momentan ca. 12'000 Rollenspiele mit knapp 3'500 registrierten Benutzern.
Und es wurde seit ca. 3 Jahren nicht massgeblich verbessert.

Seit den Anfängen hat sich vieles getan: das "Land" wurde ausgebaut (Benutzer hatten Gold, konnten Gegenstände kaufen und ihre Haustiere auf die Jagd gehen lassen) und wieder eingerissen wegen Serverüberlastung.

Von der technischen Seite her betrachtet ist RPGLand veraltet. Die server-seitigen Scripts wurden von einem Anfänger geschrieben, der nie mit einer so regen Nutzung des Angebots gerechnet hat. Spaghetti-Code ist die Folge. Programmier-Muster waren ein Fremdwort, genauso Paradigmen wie DRY oder KISS. Objekt-Orientierung war mit damaligen Webentwicklungs-Werkzeugen kaum möglich. Heutzutage als wichtig erachtete Prinzipien wie "Loose coupling and high cohesion" waren dem Autor gänzlich unbekannt.

...aus diesen Gründen ist es nötig: RPGLand2!

Der Entschluss RPGLand nicht mehr weiterzuentwickeln, sondern einen gänzlich neuen Webauftritt zu schaffen, wurde schon vor einigen Monden (Monaten?) gefällt.


Ein mögliches Logo


Erste Entscheidung (Benötigte Zeit: ca. 3MM)
RPGLand2 wird von Grund auf neu entwickelt (nein, nicht wie Windows XP)

Zweite Entscheidung (Benötigte Zeit: ca. 6MM)
RPGLand2 wird auf Basis von JQuery und Twitter Bootstrap wachsen, JSON als Kommunikationsprotokoll nutzen und mittels Perl (oder PHP ;)) auf eine MySQL Datenbank zugreifen.

First Class Citizens ODER was wird als wichtig erachtet

Hier sollen einige Punkte aufgelistet werden, welche im Laufe der Zeit von Benutzern gewünscht oder als Hilfreich erachtet wurden. Natürlich sind auch ein paar eigene Ideen dabei :)

Kommentare oder Kritik an den aufgelisteten Punkten ist natürlich erwünscht! Wenn Deine Idee hier nicht aufgelistet ist, so hinterlasse doch bitte einen Kommentar :)

Rollenspiele


  • Natürlich werden wieder die Rollenspiele im Vordergrund stehen 
  • Benutzer sollen schnell und einfach über einen neuen Beitrag in ihrem Lieblings-RPG informiert werden
  • Die Administration eines Rollenspiels soll so einfach und effizient wie möglich gestaltet werden
  • Rollenspiele sollen, ohne die Fantasie der Beteiligten einzuschränken, stärker formalisiert werden. D.h. es können beispielsweise Gegenstände oder Aktionen definiert werden, die im RPG genutzt bzw. ausgeführt werden können. Durch solche formalisierten Handlungen lassen sich dann z.B. weitere Gegenstände freischalten (z.B. nach dem ausführen der Aktion "Prinzessin gerettet" könnte der Gegenstand "Prinzessinen Krone" freigeschaltet werden)
  • Ein Rollenspiel soll mehrere "Gebiete" beinhalten können. Diese können frei festgelegt werden (z.B.: Wohnzimmer, Garten, Schlafzimmer). Beiträge in den jeweiligen Räumen können nur gelesen werden, wenn die Rolle sich im Raum befindet

Rollen


  • Das zuletzt genannte Konzept soll gleichermassen auf die Rollen eines RPGs angewendet werden um z.B. einem Charakter die Haare zu färben oder ihn einer Pediküre zu unterziehen. Aktionen können im Lebenslauf eines Charakters wieder eingesehen werden, sodass man die Entwicklung seiner Charaktere nochmal in der Retrospektive betrachten kann
  • Die Aktionen welche auf einen Charakter angewendet werden, haben Einfluss auf dessen Eigenschaften. Solche Eigenschaften sollen per Rollenspiel vergeben werden können, welche die Charaktere besitzen (z.B. Haarfarbe, Lieblingseissorte)

Benutzer


  • Die Benutzer machen RPGLand aus, sie bilden Intressengruppen oder wollen einfach nur neben dem RPG miteinander chatten. Deshalb soll die Kommunikation untereinander so einfach wie möglich ablaufen
  • Für jedes RPG soll ein Chat zur Verfügung stehen, in dem Rollenspielbezogene Themen diskutiert werden können
  • Die direkte Kommunikation untereinander soll mit einem einfachen Nachrichtendienst stattfinden. Neue Nachrichten sollen sofort auf der Oberfläche angezeigt werden, sodass bei Bedarf schnell geantwortet werden kann
  • Es soll eine Freundeliste geben, die sich jeder Benutzer zusammenstellen kann
  • Natürlich wird das persönliche Profil (oft fälschlicherweise als "Stecki" bezeichnet ;)) erhalten und erweitert werden. Der BB-Code Parser wird komplett ausgetauscht werden und jedes Profil soll ein kleines Tagebuch enthalten, in dem Neuigkeiten präsentiert und kommentiert werden können
  • Spam/Stalking/Mobbing soll durch technische Mittel bestmöglichst unterbunden werden

Kommentare oder Kritik an den aufgelisteten Punkten ist natürlich erwünscht! Wenn Deine Idee hier nicht aufgelistet ist, so hinterlasse doch bitte einen Kommentar :)

Nur bla bla bla und was jetzt?

Photoshop ist geöffnet, ein erster Designvorschlag für Land2 schimmert auf dem linken Bildschirm. Erste Erfahrungen mit JQuery und Bootstrap wurden gesammelt, objektorientiertes PHP begriffen. Die Registration ist client-seitig fertiggestellt.. aber es bleibt ein weiter Weg.

Du möchtest mit gehen? Gesucht sind:
  • Pixelartisten (1-2): Du liebst den heiligen Pixel und kannst Grafiken noch ohne Pfade und weichem Pinsel zeichnen? Benötigt werden ca. 30 Symbole in noch nicht definierter Grösse (<= 128x128) welche alle im selben Stil gehalten sein sollen
  • Grafiker (1): Photoshop oder Gimp ist dein Freund? Das RPGLand2 Logo ist noch nicht vollends abgesegnet. In einer späteren Phase werden ebenfalls grössere Grafiken gebraucht werden, z.B. Tiere ;)
  • Erfahrene Programmierer (0-2): Du musstest auf keinen der technischen Links in diesem Beitrag klicken, da dir die Schlagworte alle gut bekannt sind? Du hast schon grössere Projekte durchgeführt und weisst, worauf es bei der agilen Softwareentwicklung ankommt? Dann wartet hier viel Arbeit auf dich :)
  • Autoren (1): Dir fallen Fehler in Hilfetexten auf? Du ärgerst dich über schlechte Formulierungen und falsche Grammatik? (Jaa davon gibts zwei oder drei ne) Benötigt werden Hilfetexte sowie kürzere Statusmeldungen
Kommentare (fast) jeglicher Art sind erwünscht.

Dieser Beitrag wurde nach bestem Wissen und Gewissen frei von Anglizismen geschrieben.

  XelX