Who's online
There are currently 0 users and 1 guest online.
|
Neue Beta Anfang Februar
Submitted by Sara on 4 January, 2008 - 13:07
Mit dem neuen Jahr kommt bei Conquer-Space.net auch eine neue Beta! Zur Version 16 von Conquer-Space.net hat sich viel getan, und deshalb benötigen wir euch hartnäckige Tester, um uns über alle auftretenden Ungereimtheiten aufzuklären. Eure ersten Eindrücke von der neuen Version werden uns bedeutend dabei helfen, den neuen Quellcode baldmöglichst in einer Gamma einzusetzen. Ihr seid also gefragt!
Doch was hat sich getan? Im Folgenden wollen wir euch einen kurzen Einblick geben, woran wir besonders gearbeitet haben, und was dies für euch bedeutet. Die Änderungen betreffen vor allem drei Bereiche:
- Unsere Datenbank
- Unsere Html-Template-Engine
- Struktur und Aufbau von CqS
Wie vielleicht schon hier erkennbar ist, haben wir uns darauf konzentriert Conquer-Space.net stabiler, schneller und leichter verwaltbar zu machen. Das Spielkonzept selbst wurde nicht verändert.
Unsere Datenbank
-
Dies ist der wahrscheinlich größte Eingriff in Conquer-Space.net. Bisher sah das Datenbank-System vereinfacht wie folgt aus: es gab keines! Es wurden nur alle Daten serialisiert, und in einzelnen Dateien gespeichert.
Nachdem wir das Project DarkStar entdeckten, beschlossen wir deren Konzept zu implementieren und bei Conquer-Space.net einzusetzen. Ohne auf die technischen Details einzugehen, wollen wir nur kurz die Vorteile, die dies mit sich bringt, vorstellen.
Bei der neuen Datenbank gibt es Transaktionen. Jede Veränderung der Datenbank wird über eine dieser Transaktionen gesteuert. Der Clou hier ist, dass eine Transaktion, falls sie an irgend einem Punkt scheitert, komplett zurückgenommen werden kann. Sprich, die Datenbank kann in den Zustand zurückgeführt werden, den sie hatte, bevor die fehlgeschlagene Transaktion gestartet wurde.
Transaktionen können aus verschiedenen Gründen fehlschlagen. Natürlich können Fehler auftreten, die das Scheitern verursachen. Es kann aber auch sein, dass man absichtlich eine Transaktion abbricht. Dies wird vor allem gemacht, wenn mehrere Transaktionen die gleichen Daten verändern wollen, und dadurch ein Konflikt entsteht. Dass eine solche Situation eintritt ist auch realistisch. Denn die Datenbank hat Multi-Threading-Support.
Bisher gab es in Conquer-Space.net nur einen Thread, das heißt keine Aktionen wurden parallel ausgeführt. Mit der neuen Datenbank hingegen ist es möglich mehrere Threads gleichzeitig auszuführen - und dementsprechend mehrere Aktionen. Dies hat nicht nur den Vorteil, dass das Spiel schneller läuft. Es birgt auch das Potential in der Zukunft eine Runde von Conquer-Space.net durch mehrere Server zu unterstützen.
Zudem werden sich manche von euch daran erinnern, dass - falls doch einmal ein Absturz eintritt - Backups eingespielt werden mussten. Da wir bisher alle Stunde die Daten speicherten, konnte eine Stunde Spielzeit verloren gehen. Jeder, der erfolgreich einen Krieg geschlagen hat, oder mühsam Flottenschleifen eingerichtet hat, weiß, dass selbst eine verlorene Stunde großen Frust verursachen kann. Mit der neuen Datenbank streben wir hingegen danach stets aktuelle Daten reproduzieren zu können. Sprich, selbst bei einem Absturz kann der Spielstand direkt vor Abbruch wiederhergestellt werden.
Zusammenfassend kann man zur neuen Datenbank sagen:
Durch ihren Multi-Threading-Support bewirkt sie, dass Conquer-Space.net schneller ist. Dies stellt auch den Anfang eines Multi-Server-Supports dar.
Durch das Zurückrollen von abgebrochenen Transaktionen bleibt die Datenbank stets konsistent, und ermöglicht so jederzeit einen Neustart ohne Datenverlust.
Insgesamt also: schneller und stabiler als zuvor!
Unsere Html-Template-Engine
-
Der Quellcode, der die Seiten im Spiel automatisch generiert, wurde stark überarbeitet. Die Scripting-Sprache, die wir benutzen, um Spieldaten einzusetzen, ist nun deutlich mächtiger. Dies bedeutet zweierlei.
Erstens wurde der Quellcode der Html-Dateien vereinfacht und verkürzt werden. Es können nun Templates entworfen werden, die für verschiedenste Seiten eingesetzt werden können. So kann unter anderem das grundlegende Aussehen der Seiten einfacher verändert werden. Die Seiten sind einfacher zu verwalten und zu verändern. Aussagekräftigere Fehlermeldungen helfen nicht nur den Spielern zu verstehen, was manchmal schief läuft, sondern gibt auch den Entwicklern einen Anhaltspunkt wie Probleme schnell behoben werden können.
Zweitens konnten wir große Mengen von Quellcode, der zuvor zum Bereitstellen der Spieldaten benötigt wurde, löschen. In Zahlen bedeutet das, dass wir insgesamt 18% des gesamten bisherigen Java-Quellcodes einsparen konnten. Und weniger Quellcode bedeutet stets weniger Potential für Fehler und bessere Verwaltbarkeit des Projekts.
Die Änderungen führen des weiteren dazu, dass die Seiten schneller generiert - und somit angezeigt - werden können. Endgültiges Ziel hier ist es die Seiten tatsächlich ausführbar zu machen statt sie nur zu interpretieren. Dies würde einen weiteren, deutlichen Performance-Boost liefern.
Insgesamt kann aber bereits jetzt gesagt werden: schneller und wartbarer als zuvor!
Struktur und Aufbau von Conquer-Space.net
-
Conquer-Space.net hat sich seit seinem Beginn stark entwickelt. Dies bedeutet auch, dass es zunehmend schwieriger wird, sich einen Gesamtüberblick über den Quellcode zu verschaffen. Deshalb arbeiten wir stets daran Conquer-Space.net in einzelne Bereiche einzuteilen, die einzeln gesehen einfacher zu begreifen sind. Diese einzelnen Bereiche können dann in Relation gebracht werden, um das Gesamtkonzept erfassen. Einer der Effekte dieses Aufbrechens des Projekts in einzelne Abschnitte ist die einfachere Erweiterbarkeit von Conquer-Space.net. So ist es vorstellbar, dass in der Zukunft individuelle Entwickler Plugins vorbereiten, die dann eingesetzt werden können.
Neben der Strukturänderungen im Aufbau des Quellcodes gab es auch Veränderungen in der Verwaltung von Conquer-Space.net. Es gibt nun eine detailliertere Rechteverwaltung für die Administration, und die Steuerung von Conquer-Space.net an und für sich wurde vereinfacht. Dies hat unter anderem den Vorteil, dass wir ab sofort LAN-Versionen für jede Runde anbieten können. Für das Starten von Conquer-Space.net im privaten Netzwerk ist dann nur noch eine Java Runtime Environment (JRE) benötigt, das Compilieren des Quellcodes fällt weg.
Schließlich ist es fortan möglich sich mit den gleichen Daten im Spiel und auf der Homepage, und dementsprechend dem Forum, anzumelden.
Insgesamt kann hier gesagt werden: wartbarer und Benutzer-freundlicher!
Wir hoffen dies gibt euch einen kleinen Einblick in unsere Bemühungen Conquer-Space.net zu verbessern. Eure Hilfe der neuen Version nun den letzten Schliff zu verpassen, und sie Gamma-tauglich zu machen, schätzen wir sehr. Es heißt also nun nur noch: auf zur Beta Anfang Februar - und keine Scheu beim Melden von Fehlern!
|
hallo...
hallo...
wie wird es denn aussehen mit der anmeldung, wenn man im forum und im game die selben login daten verwendet.
heist das das man sich nie mehr registrieren muss, wenn man bereits im forum registriert ist?
und nochwas...
T7hor hat entscheidende css veränderungenam grafigpack vorgenommen, die cqs ein neues flair geben und eine große bereicherung für das spiel sind, können denn diese grafischen veränderungen auch mit eingebaut werden?
als neuen standart vll?
Anmeldung + Grafikpack
Hallo scorp,
ja, das ist richtig. Wenn man bereits im Forum angemeldet ist, muss man sich nicht beim Spiel nochmal anmelden, sondern kann sich einfach mit seinem bisherigen Login einloggen. Beim ersten Login im Spiel muss man dann noch angeben, welchen Namen man im Spiel verwenden moechte, es wird nicht automatisch der Forennick verwendet.
Zum Grafikpack von T7hor: Wenn er uns seine Aenderungen zur Verfuegung stellt (und sie gut sind), dann koennen wir die gerne einbauen. Dafuer brauchen wir aber eine ausdrueckliche Zusage von T7hor, dass er uns die Benutzung seiner Aenderungen erlaubt, damit wir urheberrechtlich auf der sicheren Seite sind.
Ich hab gestern mal ins Grafikpack von T7hor reingeschaut, und (zumindest) die Farbverlaeufe sind sehr schick geworden!
Gruesse,
-- UlfJack
Auch was neues im Spiel?
Hi,
gute Sache sowas, wird es denn auch was neues im Spiel geben oder erst mit der Beta 17?
Und warum die Gamma beenden?
...
Weil userem Rundenmanager sonst fad wird XD
Re: Auch was neues im Spiel?
siehe oben: Das Spielkonzept selbst wurde nicht verändert.
-- Sara
Unsere Html-Template-Engine
Was genau ist das für eine Html-Template-Engine?
Wird es eine Dokumentierung geben wie, und auf welche Variablen zugegriffen werden kann?
In wieweit kann dort der Designer selbst Programmierschnipsel einfügen?
Welche Sprache wird unterstützt?
Immer noch nur Ulfscript oder wie die hieß?
Ist mit der "Ausführbarkeit" eine Überführung hin zu JSP- bzw. JSP-Tags gemeint?
Boah da geht ja wieder mal
Boah da geht ja wieder mal was! Kompliment!!!!!!!!!Dickes Lob!!!! Krass!
ich hoffe das sie auch
ich hoffe das sie auch rechtzeitig kommt, ehe wieder tausende cqs verlassen weil ihnen langweilig vor warten wird...
is ja nicht böse gemeint, aber diese langezgenen pausen zwischen den runden führen tatsächlich zu enormen spielerschwund...
dann leiber eine nicht ganz fertige version gestartet, dafür isses ne beta und vll kann man ja noch zwischendurch was einbauen. (speichern, neukompilieren, mit alten stand wieder neustarten oder so...)
Welche "tausende" sollen
Welche "tausende" sollen denn das Spiel noch verlassen...??
Ist jetzt etwas provokativ gesagt, aber ein bisschen mehr System täte der ganzen Spielkultur doch gut.
Ohne große Spielinhalte zu verändern sollten doch gewisse Rahmenbedingungen eingehalten werden, um den Spielern/Neueinsteigern nicht die Laune am Spiel zu verderben...
Dazu gehören schlicht und einfach:
Eine ständige/stabil laufende Version in der Gamma (die Beta reicht ja wohl aus um Neuerungen usw. auszutesten...)
Klar begrenzte Rundenzeiten der Gamma die immer eingehalten werden und wonach ein Reset erfolgt (Bsp. 2-3Monate).
Hm.... Also diese Gamma
Hm.... Also diese Gamma Runde ware genug Systeme ......
-----------------------------------------------------
[ALPHA]- FOR LIFE AND LIBERTY!
Legenden sterben nicht ... Sie schlafen nur
Amicus certus in re incerta cernitur
Si vis pacem, para bellum