Sonntag, 9. Dezember 2012

First Design Ideas


As I was told that my mother tongue is quite error prone in it's written form, I'll keep this blog in English from now on. Let's regard it as an exercise for the author and also the reader :)


Below there is shown a first - Photoshop created - design concept for Land2. Obviously only the RPG section is shown in two different views.

Please consider that none of the used styles, rather for font, color or structuring elements are fixed right now! For once very subjective comments about the whole design are welcome!

Concept - RPG Overview
Concept - RPG Overview
On the left side there is an element which could be called "personal bar".  Here your online friends (yes only friends, not everyone) and your RPGs with the most recent posts are listed. Below that bar a chat box is floating around. This could be a replacement for the classical PM system, allowing for a more responsive communication.

The RPG overview image shows multiple description texts on the left of the overview element, places that can be traveled to in the RPG are depicted in the upper right whereas the roles are in the lower part.

The RPG founder can create as many description texts as she wants to. This should help to organize the description in a simple way. Individual description texts can be made available to the public, only for RPG members or even only for RPG administrators.

The places can be scrolled through where each place has some properties (shown as icons) and a description. Places also have connections from one to another, which are not displayed here.

As the mouse cursor hovers a role, information is shown. Each role has an age, sex, name, multiple properties (shown as icons) and of course a description which is not displayed. This holds for all places where a role image is seen. A green border around a specific role  means that it is still available, a gray border means that it is occupied.

Concept - RPG Posts
Concept - RPG Posts
This image shows writing posts in action. The upper part is a possible idea how to visualize the places in a RPG. And yes, places can be disabled and you can still write your RPG in a monolithic manner. Nevertheless if the RPG founder has enabled places for the RPG, each place is itself an RPG in the classical Land1 sense, i.e. postings are shown only in the respective place. Roles can of course change places. This feature should help to build bigger RPGs with many players, not necessary playing all together.

Technical: places will be (naturally) modeled as an undirected graph (or even as a partly directed graph for one-way streets?)

The lower part shows an user entering a post. The role for which to post, can be changed by clicking the small arrow at the bottom of the role image. Posts can be altered by clicking the small gear in the lower right corner.

Please consider that none of the used styles, rather for font, color or structuring elements are fixed right now! For once very subjective comments about the whole design are welcome!


The next post in this blog will be rather technical, discussing the use of the JQuery library and plugins in the typed superset of JavaScript: TypeScript!

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