<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>UGamela Blog &#187; UGamela</title>
	<atom:link href="http://ugamela-blog.pheelgood.net/tag/ugamela/feed/" rel="self" type="application/rss+xml" />
	<link>http://ugamela-blog.pheelgood.net</link>
	<description>Entwicklung eines Browsergames</description>
	<lastBuildDate>Mon, 12 Dec 2011 18:28:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Dritter Geburtstag</title>
		<link>http://ugamela-blog.pheelgood.net/2010/11/24/dritter-geburtstag/</link>
		<comments>http://ugamela-blog.pheelgood.net/2010/11/24/dritter-geburtstag/#comments</comments>
		<pubDate>Wed, 24 Nov 2010 13:18:36 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=344</guid>
		<description><![CDATA[Nun sind es tatsächlich drei Jahre. Die Zeit vergeht schnell. Ich habe eben ein bischen recherchiert, mein Forum und Blog wurde mittlerweile in der Googlesuchplatzierung überholt. Von Polen, die sich keinen Deut um Copyright stören. Evolution Skin, OGame Startseite, &#8230; Miserable deutsche Übersetzung, aber für die Suchmaschine reichts.. Die Franzosen basteln immer noch an &#8220;XNova-NG&#8221;, [...]]]></description>
			<content:encoded><![CDATA[<p>Nun sind es tatsächlich drei Jahre. Die Zeit vergeht schnell.<br />
Ich habe eben ein bischen recherchiert, mein Forum und Blog wurde mittlerweile in der Googlesuchplatzierung überholt.<br />
Von Polen, die sich keinen Deut um Copyright stören. Evolution Skin, OGame Startseite, &#8230;<br />
Miserable deutsche Übersetzung, aber für die Suchmaschine reichts..<br />
Die Franzosen basteln immer noch an &#8220;XNova-NG&#8221;, wobei da anscheinend auch nichts passiert ist das letzte halbe Jahr. Wie für das Genre üblich, werden Releasedates immer weiter hinaus geschoben.<br />
Die deutschen XNova Kiddies haben sich auch nicht verändert, vielleicht mal eine kleine neue Idee, aber keine fähigen Leute die das Spiel anständig neu schreiben.</p>
<p>Ich war und bin das Jahr vor allem mit meinem Studium beschäftigt.<br />
Für german UGamela ist daher dieses Jahr auch fast gar nichts passiert, was aber nicht bedeutet, dass ich nicht weiter an meinen Ideen gearbeitet habe. Es kristallisiert sich immer mehr heraus. </p>
<p>Mittlerweile steht zum Beispiel die Platform fest: NodeJS<br />
Ein JavaScript-Server auf der V8 Engine. Das bedeutet kein PHP, dafür sehr viel JavaScript (Das wiederhole ich jetzt auch schon länger).<br />
Das sollte jetzt nicht unerwartet sein, ich habe in vergangenen Artikeln schon öfter über JavaScript geschrieben&#8230;</p>
<p>Mehr fällt mir momentan nicht ein, ich wollte mich mal wieder melden.</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2010/11/24/dritter-geburtstag/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Zweiter Geburtstag</title>
		<link>http://ugamela-blog.pheelgood.net/2009/11/22/zweiter-geburtstag/</link>
		<comments>http://ugamela-blog.pheelgood.net/2009/11/22/zweiter-geburtstag/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 15:23:43 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=280</guid>
		<description><![CDATA[Ich kann mir Geburtstage einfach nicht merken. Naja, bei diesem ist eh nicht klar, wann er genau war, jedenfalls im November vor zwei Jahren. (Hab grad nochmal nachgesehn) Interessant, mir kam es so vor, als würde ich schon seit drei Jahren an diesem Projekt arbeiten. Dennoch war dieses Jahr ganz anders wie das letzte. Lebt [...]]]></description>
			<content:encoded><![CDATA[<p>Ich kann mir Geburtstage einfach nicht merken. Naja, bei diesem ist eh nicht klar, wann er genau war, jedenfalls im November vor zwei Jahren. (Hab grad nochmal nachgesehn) Interessant, mir kam es so vor, als würde ich schon seit drei Jahren an diesem Projekt arbeiten. Dennoch war dieses Jahr ganz anders wie das letzte.</p>
<p>Lebt UGamela noch? Fragen sich viele. UGamela wird noch sehr lange leben, denn viel zu viele Browsergameprojekte haben den UGamela Source als Basis verwendet. Selbst OpenSource wird ein Zweig von UGamela weiterentwickelt: XNova. Gut, ob das wirklich Entwicklung ist, darüber könnte man sich jetzt streiten&#8230;</p>
<p>Für mich, und damit das ganze german UGamela Projekt, war das Jahr von meinem Abitur, Ferien und meinem Studienbeginn bestimmt. Code wurde nicht viel geschrieben, dafür habe ich mich auf professionelles Niveau, was Objektorientierung angeht,  gebildet und einen guten Stil in JavaScript gelernt. Mittlerweile kenne ich auch noch andere Sprachen und weiß Vorteile von PHP und JS zu schätzen. Ich habe auch einige Techniken gelernt was allgemein Softwareentwicklung angeht und hoffe, dass ich in der Lage sein werde ein Opensourceprojekt zu leiten.</p>
<p>Mit einem Release rechne ich trotzdem nicht vor einem Jahr.</p>
<p>Alles weitere weiterhin auf diesem Blog!</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2009/11/22/zweiter-geburtstag/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>German UGamelas Geburtstag</title>
		<link>http://ugamela-blog.pheelgood.net/2008/11/17/german-ugamelas-geburtstag/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/11/17/german-ugamelas-geburtstag/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 19:18:04 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=142</guid>
		<description><![CDATA[Ich weiß den genauen Geburstag nicht mehr, aber irgendwann dieser Tage hab ich mit Sascha am frisch gebackenen deutschen UGamela Forum herumgebastelt und die ersten User haben sich registriert. Zu dieser Zeit kamen auch die Versionen 0.3 und 0.3a heraus. Beide fürchterlich verbuggt und größtenteils unvollständig. Das ist nun ein Jahr her, seitdem ist viel [...]]]></description>
			<content:encoded><![CDATA[<p>Ich weiß den genauen Geburstag nicht mehr, aber irgendwann dieser Tage hab ich mit Sascha am frisch gebackenen deutschen UGamela Forum herumgebastelt und die ersten User haben sich registriert. Zu dieser Zeit kamen auch die Versionen 0.3 und 0.3a heraus. Beide fürchterlich verbuggt und größtenteils unvollständig. Das ist nun ein Jahr her, seitdem ist viel geschehen!</p>
<p>Anfang Dezember habe ich das Forum neu aufgesetzt, weil ich dachte, dass wir kein PHPBBplus mit User-Sternzeichen brauchen^^. [Phlegmas Registrierungsdatum: 7.12.2007]</p>
<p>Danach kam noch die Version 0.4(a) raus, die Chlorel Anfang 2008 für sein XNova verwendet hat. Ich habe noch vor Jahrende den Downloadbereich gesperrt, weil 0.4a schon damals schlecht war und es nur so Bugmeldungen hagelte.</p>
<p>In der nachfolgenden Zeit habe ich das Release der Version 0.5 immer weiter verschoben und sehr viel dazu gelernt.</p>
<p>Anfang des Sommers gab es mal intern eine Version 0.4++, die irgendwie geleakt ist. Später habe ich dann &#8220;meine&#8221; 0.5 an Sascha übergeben, der sie immernoch vertreibt, wenn auch mit wenig Andrang.</p>
<p>Zur Feier des Jahres habe ich eine Reihe von Themen für den Blog vorbereitet, die meine jüngsten Erkenntnisse dokumentieren und die Blogleser teilhaben lassen. Erwartet nicht zuviel, aber freuen dürft ihr euch drauf! ;D</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/11/17/german-ugamelas-geburtstag/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ein Haufen UGamelas / XNovas</title>
		<link>http://ugamela-blog.pheelgood.net/2008/11/06/ein-haufen-ugamela-xnova/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/11/06/ein-haufen-ugamela-xnova/#comments</comments>
		<pubDate>Thu, 06 Nov 2008 18:20:58 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Freehoster]]></category>
		<category><![CDATA[UGamela]]></category>
		<category><![CDATA[XNova]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=115</guid>
		<description><![CDATA[Wieviele XNova Spiele geistern da draußen im Netz herum? Keiner außer Google weiß das genau, aber die haben ja ganz andere Probleme. Jedenfalls sind es jede Menge, täglich kommen neue dazu, täglich brechen welche zusammen.

Ich möchte das nun einmal analysieren. Dazu versuche ich mich in die Lage eines der Kiddies zu versetzen, die den Großteil der vermeintlichen Spieladmins darstellen. 

Danach werde ich versuchen dem Problem auf den Grund zu gehen!]]></description>
			<content:encoded><![CDATA[<p>Wieviele XNova Spiele geistern da draußen im Netz herum? Keiner außer Google weiß das genau, aber die haben ja ganz andere Probleme. Jedenfalls sind es jede Menge, täglich kommen neue dazu, täglich brechen welche zusammen.</p>
<p>Ich möchte das nun einmal analysieren. Dazu versuche ich mich in die Lage eines der &#8220;Kiddies&#8221; zu versetzen, die den Großteil der vermeintlichen Spieladmins darstellen.<br />
Danach werde ich versuchen dem Problem auf den Grund zu gehen! <span id="more-115"></span></p>
<p><span style="text-decoration: underline;"><strong>Motivation:</strong></span><br />
[ Der folgende fiktive Monolog eines "Kiddies" ist wohl irgendwas zwischen Durchschnitt und WorstCase ]</p>
<p>Boah, OGame is voll lahm und Abzocke! Ich will das selba machen! &#8230;googlegoogle&#8230; cool XNova&#8230; Download.. hmmpf was brauch ich da&#8230; uhm Webspace.. Funpic.. [nun folgt höchst beschwerliche Arbeit: den Webspace dazu bringen was das Kiddie will] *Dateien draufklatsch* .. so, jez was?.. /install/install.php aufrufen.. das Tutorial is aber echt kompliziert&#8230;</p>
<p>Endlich! hach is das cool, jez such ich mir ein paar Leutz und stell den Speed auf 20x [mal 2500]. Hm warum kommt den niemand&#8230; ach ich muss Werbung machen! *Forum such*, *nicht die Regeln les*, *vollspamm*, nächstes Forum&#8230;</p>
<p>[ Dies ist übrigens das Nervigste am ganzen Problem, die einmalpostenden Spammer, ohne sie würde wahrscheinlich kaum jemand von den aus dem Boden sprießenden XNovas gestört. ]</p>
<p>Oh nein, wo is meine 3kk RIP Flotte??! WTF! Ich muss gleich mal zu dem Forum rennen wo ich das her hab, die sind bestimmt Schuld! &#8230; Achso ja, das is verbuggt? .. und es gibt noch keine neue Version? WANN KOMMT DIE NEUE VERSION? WARUM HABT IHR DEN TERMIN VERSCHOBEN? &#8230; Ja tut mir Leid, dass ich nicht die Suchfunktion benutzt hab &#8230; *dummguck* .. Nein ich kann doch kein PHP, das macht ihr schon&#8230; WANN KOMMT DIE NEUE VERSION?</p>
<p>[ Das nervt wirklich fürchterlich, weil es einfach verdammt schwer ist, sowas zu schätzen, daher sollte man es eher gleich lassen. Die Wörter "vielleicht" oder "ungefähr" werden sowieso grundsätzlich überlesen, wenn es um etwas geht, das einem Weihnachtsgeschenk gleicht. ]</p>
<p>*3 mal am Tag ins Forum schau, erste verkrüppelte PHP Gehversuche mach, extrem spamme*</p>
<p>[ Nun, das ist immerhin mal ein guter Ansatz, aber es nervt immer noch fürchterlich wegen des Spammens, zumal man für ein Browsergame doch mehr Erfahrung im Programmieren braucht, als man auf den ersten Blick so denkt.. ]</p>
<p><span style="text-decoration: underline;"><strong>Zurück zur Problematik:</strong></span><br />
Ich habe schon gehört wie sich Leute darüber aufgeregt haben, dass XNova das ganze Genre der Weltraumspiele ruiniere und es allgemein dem Ruf der Browsergames schade.</p>
<p>UGamela ist OpenSource. Das bedeutet nunmal, dass man den Source einfach herunterladen kann und dass es umsonst ist. Das Problem an XNova und UGamela war nur bisher, dass der Code einfach nicht gut war. Es ist unmöglich, etwas wirklich Gutes mit Dreckscode als Basis aufzubauen. Das bedeutet, diese Packages waren/sind untauglich zur Weiterentwicklung, wofür OS doch eigentlich gedacht ist. Stattdessen tritt die zweite Verwendungsmöglichkeit, das einfache Erstellen eines eigenen Spiel ohne wirkliche Arbeit, deutlich hervor.</p>
<p>Für den neuen Ansatz gilt also:</p>
<p>1. Guter Basiscode, dazu gehören im zweiten Entwicklungsstadium auch eine enorm gute Organisation und Arbeit sowie Zusammenhalt im Team und mit der Community.</p>
<p>evtl. 2. Noobblocker: Das Spiel darf nicht allzu leicht installierbar sein, einfach um eine zu große Anzahl von Spielen, die von unfähigen Leuten geleitet werden, zu verhindern. Auch ein Filter im Forum wäre möglich, beispielsweise ein kleiner Test beim Registrieren oder wenn man weniger assozial sein möchte, ein abgeschotteter &#8220;besserer&#8221; Bereich, für den man sich von den anderen abheben oder bewerben muss.</p>
<p>Das lässt sich natürlich umgehen, daher muss alles gut kontrolliert werden und von erfahrenen Leuten mit viel Zeit geführt werden.</p>
<p>Erfahren bin ich nun hoffentlich, aber die Zeit fehlt. Allein werde ich das nicht führen.</p>
<p>Unter diesen neuen Vorraussetzungen hoffe ich, dass das ganze eine gute Entwicklung nehmen wird, auch für die, die bereits XNova verabscheuen. Ein fairer Wettstreit unter den Spielen sowie Zusammenarbeit und Innovation wären dabei meine Wünsche.</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/11/06/ein-haufen-ugamela-xnova/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>UGamela Stille</title>
		<link>http://ugamela-blog.pheelgood.net/2008/11/04/ugamela-stille/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/11/04/ugamela-stille/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 16:51:06 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[UGamela]]></category>
		<category><![CDATA[XNova]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=106</guid>
		<description><![CDATA[Unheimlich. Mein Forum scheint ausgestorben und doch wird es täglich von treuen Mitgliedern besucht. In Saschas verbleibendem Forum ist auch nicht viel los. Auf meinem Blog ist dies nun etwas Neues seit Wochen. Gefällt mir natürlich genauso wenig wie euch! Wir haben schon November und ich bin immernoch nicht sonderlich weiter, so kommt es mir [...]]]></description>
			<content:encoded><![CDATA[<p>Unheimlich.</p>
<p>Mein Forum scheint ausgestorben und doch wird es täglich von treuen Mitgliedern besucht. In <a href="http://ugamela-mods.ath.cx">Saschas verbleibendem Forum</a> ist auch nicht viel los. Auf meinem Blog ist dies nun etwas Neues seit Wochen.</p>
<p>Gefällt mir natürlich genauso wenig wie euch! Wir haben schon November und ich bin immernoch nicht sonderlich weiter, so kommt es mir jedenfalls vor. Stattdessen denke ich darüber nach die Sprache zu wechseln (PHP+PgSQL/Python+PgSQL/Java+PgSQL), möchte aber nicht schon wieder aufgeben, was ich bereits geschafft habe.</p>
<p>XNova ist so aktiv wie immer, kann aber die Ruhe um UGamela nicht nutzen um einmal etwas wirklich Gescheites zustande zu bringen. Stattdessen gibt es diverse Kleinkriege zwischen Membern oder Großkriege um Copyrights &#8211; wie üblich.</p>
<p>Vor lauter XNova, XNova, XNOVA hört man gar nichts mehr von UGamela; kaum einer weiß überhaupt noch, dass XNova auf UGamela basiert.</p>
<p>Damit muss man leben.  Ich bin über meine Ruhe froh ;D</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/11/04/ugamela-stille/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Browsergame Eventhandler</title>
		<link>http://ugamela-blog.pheelgood.net/2008/09/21/eventhandler/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/09/21/eventhandler/#comments</comments>
		<pubDate>Sun, 21 Sep 2008 20:22:11 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Daemon]]></category>
		<category><![CDATA[Eventhandler]]></category>
		<category><![CDATA[Phlame Engine]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=76</guid>
		<description><![CDATA[Das Thema ist wohl bekannt und wurde, wie man über Google merkt, oft diskutiert. Ich berufe mich deshalb nicht nur auf meine Erfahrung, sondern möchte auch darauf hinweisen, dass man bei Google Ähnliches findet. Das große Problem: Bei einem Browsergame wie UGamela läuft die Zeit weiter, wenn der User sich abmeldet. Dem Server ist es [...]]]></description>
			<content:encoded><![CDATA[<p>Das Thema ist wohl bekannt und wurde, wie man über Google merkt, oft diskutiert. Ich berufe mich deshalb nicht nur auf meine Erfahrung, sondern möchte auch darauf hinweisen, dass man bei Google Ähnliches findet.</p>
<p><span style="text-decoration: underline;"><strong>Das große Problem:</strong></span></p>
<p>Bei einem Browsergame wie UGamela läuft die Zeit weiter, wenn der User sich abmeldet. Dem Server ist es sowieso egal, ob der User gerade eine Page liest, es kommt immer nur auf die Momente an, zu denen jemand klickt und Daten nachgeladen werden.</p>
<p><strong>Annäherung:</strong><br />
Das Naheliegendste ist es zu denken, dass die Daten immer aktuell gehalten werden, dann wäre ja alles klar. Aber das ist mit einfachen PHP Scripten nicht möglich und wäre auch arg ressourcenverschwenderisch.</p>
<p><strong><span style="text-decoration: underline;">Lösungsvorschläge:</span></strong><br />
Die Erste und wohl beste Methode wäre es, aus komplexeren Problemen, wie den Flotten, Events, kleine Jobs für einen Daemon, zu machen. Daemon bedeutet ein Script, fast eigenständiges Programm, das permanent läuft und Ereignisse dann abarbeitet wenn sie Geschehen. Diese Möglichkeit wäre eindeutig einfacher, wobei man nurnoch auf sehr seltene Überscheidungen achten müsste (zwei Events zum gleichen Zeitpunkt mit überschneidenden betroffenen Objekten), aber selbst das wäre kein Problem, das es ja nur eine Daemon Instanz gibt, also keine <a title="Blogeintrag Thema Race Conditions" href="http://ugamela-blog.pheelgood.net/2008/09/15/race-conditions-ein-bg-problem-flottenverdoppelung/">Race Conditions</a>.</p>
<p>Ein solcher Daemon müsste tiefer im System sitzen als ein kleiner PHP Script im Apache Server und sollte nach Möglichkeit in einer schnelleren Programmiersprache als PHP geschrieben sein ( C(/#/++), Java ). Daher ist dafür in jedem Fall mehr als ein einfacher Webspace nötig. [OGame hat nach eigenen Angaben ein C oder C++ basiertes Script und extra Server nur für die Kampfberechnung.]</p>
<p>Damit möchte ich mich nicht zufrieden geben. Früher habe ich UGamela gerne mit phpBB verglichen, aber so einfach ist das dann doch nicht. In einem Forum passiert nichts wenn es nicht ein User direkt tut&#8230; Trotzdem will ich den Spagat schaffen, dass das Spiel auch auf einem einfachen Webspace läuft. <strong></strong></p>
<p><strong>Hier mein Ansatz:</strong><br />
Eine Berechnung wird erst dann nötig, wenn die Daten benötigt werden, aber dann muss gründlich berechnet werden. Um die Rohstoffe korrekt zu berechnen habe ich MySQL Prozeduren geschrieben, die das erledigen bevor der Apache überhaupt was von den Daten zu Gesicht bekommt. Bei den Flotten will ich auch nur die berechnen, die gerade relevant sind. Aber ich will keinem user Wartezeiten zur Kampfberechnung aufbürden. Der Einzige, der nicht meckert &#8211; außer möglicherweise dem Apachen selber &#8211; wenn der Script zu lange braucht und selbst auf einem Webspace zur Verfügung steht, ist der Cronjob. Allerdings höchstens alle zwei Minuten. Nun können wir uns ärgern, dass wir dann die Kämpfe nicht zum richtigen Zeitpunkt berechnen lassen können oder wir schieben die Kämpfe in dieses zwei Minuten Raster. Dann findet der Kampf halt nicht sofort statt wenn die Flotte ankommt, sondern &#8220;läuft&#8221; während einer gewissen Zeit, zum Beispiel könnte man eine Runde alle zwei Minuten ausrechnen, der User könnte dies &#8220;live&#8221; mitverfolgen und sogar seine Flotte während des Kampfes zurückziehen. Auf jeden Fall ist dies um einiges realistischer als der 10-Sekunden Kampf&#8230;</p>
<p>Die meisten anderen Events werden ähnlich wie die Rohstoffberechnung von MySQL Prozeduren abgearbeitet. Nun sorge ich mich langsam nicht mehr um meinen Apachen sondern um meinen MySQL Server&#8230; Überlast? .. Ich bin mir da noch nicht sicher, aber ich werde auf jeden Fall mit einem Sessionmanagement aushelfen, teils werden wir gar keine Queries oder Prozeduraufrufe brauchen, hoffe ich.</p>
<p>Ich bitte hier nur die Leute, die wirklich etwas davon verstehen zu posten, ansonsten garantiere ich nicht dafür, dass ich die Kommentare stehen lasse.</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/09/21/eventhandler/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Phlame Engine: Flottengeschwindigkeit, Treibstoff, Bauteile</title>
		<link>http://ugamela-blog.pheelgood.net/2008/09/02/phlame-engine-flottengeschwindigkeit-treibstoff-bauteile/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/09/02/phlame-engine-flottengeschwindigkeit-treibstoff-bauteile/#comments</comments>
		<pubDate>Tue, 02 Sep 2008 12:47:16 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[OGame]]></category>
		<category><![CDATA[Phlame]]></category>
		<category><![CDATA[Phlame Engine]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=41</guid>
		<description><![CDATA[Sehn wir uns das mal bei OGame an: Jedes Schiff hat eine bestimmte Geschwindigkeit, die je nach verwendeter Antriebstechnologie noch verbessert werden kann. Um das Problem der Unrealistik mit einem Verbrennungstriebwerk von einer Galaxie zur anderen zu fliegen kümmere ich mich noch. Doch, dass der Treibstoff bei Flottenstart einfach komplett verpufft finde ich doch sehr [...]]]></description>
			<content:encoded><![CDATA[<p>Sehn wir uns das mal bei OGame an:<br />
Jedes Schiff hat eine bestimmte Geschwindigkeit, die je nach verwendeter Antriebstechnologie noch verbessert werden kann. Um das Problem der Unrealistik mit einem Verbrennungstriebwerk von einer Galaxie zur anderen zu fliegen kümmere ich mich noch. Doch, dass der Treibstoff bei Flottenstart einfach komplett verpufft finde ich doch sehr seltsam.</p>
<p>Auch wenn dies einige Rechenarbeit ersparen würde, möchte ich das ändern. Zudem finde ich man sollte Geschwindigkeiten etwas variabler machen.<span id="more-41"></span></p>
<p>Beispiel Auto: Autos haben einen variablen Benzinverbrauch, und natürlich sind nicht alle gleich schnell. Am sparsamsten sind Autos wenn man mit ihnen nicht zu schnell und auch nicht zu langsam fährt. Vom sich wiederholenden Anfahren in der Stadt ganz zu schweigen.</p>
<p>Nun sagen wir jedes Schiff besitzt eine &#8220;beste&#8221; Geschwindigkeit und eine maximale Geschwindigkeit. Ich würde sagen wenn das Schiff nicht &#8220;beste&#8221; Geschwindigkeit fliegt, dann verändert sich der Treibstoffverbrauch mit einem schwachen Exponenten.</p>
<p>Interessant wird noch der Fall des Kampfes, bei dem möglicherweise mitfliegende Tankschiffe zerstört werden. Was macht dann die verbleibende Flotte, die nicht mehr genug Sprit zum heimfliegen hat (Weil dieser nicht schon komplett am Anfang abgezogen wurde&#8230;)? Zuerst mal auf die durchschnittlich &#8220;beste&#8221; (effizienteste) Geschwindigkeit umschalten. Wenn das nicht reicht werden sie wohl irgendwo im Raum ein anfliegbares Gebilde bilden müssen (könnte man theoretisch mit einer Art Planeten- bzw Objekteintrag realisieren).</p>
<p>Die Geschwindikeit wird übrigens wie Angriffs- und Verteidigungswerte nicht mehr variabel an den zugehörigen Ressourcen hängen (Wieso sollten beim Techen gleichzeitig alle Schiffe ausgebaut werden?). Vielmehr kann man dann bei seiner Flotte auf &gt;Aufrüsten&lt; klicken, und muss dafür wieder Ressourcen zahlen. Sogar ein Bauteillager wäre denkbar.</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/09/02/phlame-engine-flottengeschwindigkeit-treibstoff-bauteile/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Phlame Engine: Ressourcenberechnung (Fusionskraftwerkproblem/Endliche Rohstoffe) &amp; Bauliste mit Wartefunktion</title>
		<link>http://ugamela-blog.pheelgood.net/2008/08/30/phlame-engine-ressourcenberechnung-fusionskraftwerkproblem-bauliste-mit-wartefunktion/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/08/30/phlame-engine-ressourcenberechnung-fusionskraftwerkproblem-bauliste-mit-wartefunktion/#comments</comments>
		<pubDate>Sat, 30 Aug 2008 13:36:41 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Bauliste]]></category>
		<category><![CDATA[Fusionskraftwerkbug]]></category>
		<category><![CDATA[Phlame]]></category>
		<category><![CDATA[Phlame Engine]]></category>
		<category><![CDATA[Ressourcenberechnung]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=32</guid>
		<description><![CDATA[Ich arbeite schon den ganzen Sommer an der Ressourcenberechnung und gerade zur Zeit an einer Bauliste und dem Eventhandler (Das sind die drei Ebenen der Planetenaktualisierung, die bei jedem Klick geschehen. Daher müssen sie auch besonders performant sein). Mich wundert das noch niemand den Fusionskraftwerkbug bemerkt und ernst genommen hat. Er bedingt einige Funktionalitäten auf [...]]]></description>
			<content:encoded><![CDATA[<p>Ich arbeite schon den ganzen Sommer an der Ressourcenberechnung und gerade zur Zeit an einer Bauliste und dem Eventhandler (Das sind die drei Ebenen der Planetenaktualisierung, die bei jedem Klick geschehen. Daher müssen sie auch besonders performant sein).</p>
<p>Mich wundert das noch niemand den Fusionskraftwerkbug bemerkt und ernst genommen hat. Er bedingt einige Funktionalitäten auf die ich nicht verzichten möchte:</p>
<p>Gebäude mit starkem &#8220;Resourcendrain&#8221; (hoher Verbrauch, höher als die Produktion ist) oder eine sehr knappe Ressource die von bestimmten Gebäuden verbraucht wird.<span id="more-32"></span></p>
<p>Beispiele:<br />
AMmine/Ultramine: Verbraucht AntiMaterie (das nur sehr wenig bis gar nicht produziert wird) und produziert große Mengen von Energie und als Abfallprodukt Aluminium und Silicium&#8230; (gut noch etwas gesponnen sollte aber nur ein Beispiel sein)</p>
<p>Rohstoffwandler: Dieses Gebäude verwandelt Dunkle Masse (die man nur auf Expeditionen findet) langsam in ein Aluminium/Silicium-Gemisch um (Über einen gewissen Zeitraum).</p>
<p>Betanken eines Schiffes: Man lässt eine Extra-Resssorte den Tank herunterzählen (leichter als ein variables Limit einzurichten)  &#8211; Energiebetankung/Laden von Batterien?.</p>
<p><strong>Erklärung des Bugs:</strong><br />
Die Ressberechnung basiert auf dem einfachen Prinzip Produktion (Rohstoff durch Zeit) mal Zeit ergibt Rohstoff. Problematisch wird dies allerdings wenn bestimmte Grenzen erreicht werden. Besonders die untere Grenze wird bisher nicht berücksichtigt, weil die Produktion eigentlich immer positiv ist. Wer den Bug beobachten will, der baue einfach mal das Fusionskraftwerk so weit aus wie möglich, stelle seinen Deutextraktor auf Null und das Kraftwerk auf volle Power. Spannend wird es wenn 0 Deuterium oder weniger erreicht wird (MinusDeut?!).</p>
<p>Um dieses doch etwas komplexere Probleme zu lösen hatte ich zuerst eine Klasse in PHP geschrieben, habe mich dann aber von meikel überzeugen lassen, dass es besser wäre das in SQL zu lösen. Nachdem ich irgendwann mein Argument, dass das mit SQL gar nicht möglich wäre aufgeben musste habe ich es in MySQL geschrieben. Dadurch ist der Script weit statischer (versch. Ress-/Energiesorten), doch man kann den Script ja vor dem speichern in der Datenbank durch PHP jagen, welches dann die vierte und fünfte Resssorte hinzufügt, die der Admin gerne hätte&#8230;</p>
<p>Als ich das geschafft hatte habe ich mich an einen SQL Eventhandler und eine Bauliste gemacht, die beide fast fertig sind.</p>
<p>Die Bauliste unterstützt eine Wartefunktion, die es dem Spieler erlaubt eine Liste anzulegen ohne vorher auf die Verfügbarkeit von seinen Ressourcen zu achten. Das ist leider noch nicht ganz fertig und bestimmt nicht bugfrei, aber der Ansatz steht.</p>
<p>PHP bekommt hinter dem SQL Core nurnoch die Aufgabe die Daten des Users zu validieren, zb ob er das überhaupt schon bauen darf&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/08/30/phlame-engine-ressourcenberechnung-fusionskraftwerkproblem-bauliste-mit-wartefunktion/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Phlame Engine: UGamela Tabellenumstrukturierung &amp; KS</title>
		<link>http://ugamela-blog.pheelgood.net/2008/08/26/phlame-engine-ugamela-tabellenumstrukturierung-ks/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/08/26/phlame-engine-ugamela-tabellenumstrukturierung-ks/#comments</comments>
		<pubDate>Tue, 26 Aug 2008 15:51:55 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Phlame]]></category>
		<category><![CDATA[Phlame Engine]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=21</guid>
		<description><![CDATA[Da bei OGame und somit UGamela jedes Schiff eines bestimmten Typs die selbe Angriffskraft hat, reichte es Flotten und Planeten mit Gebäuden in einzelnen Zeilen darzustellen, in denen jeder Typ ein Feld besitzt. Da dies unpraktikabel für Erweiterungen und vor allem für besondere Schiffe ist, werden Flotten und Planeten nun als Blöcke (mehrzeilige Tabelleneinträge) dargestellt. [...]]]></description>
			<content:encoded><![CDATA[<p>Da bei OGame und somit UGamela jedes Schiff eines bestimmten Typs die selbe Angriffskraft hat, reichte es Flotten und Planeten mit Gebäuden in einzelnen Zeilen darzustellen, in denen jeder Typ ein Feld besitzt. Da dies unpraktikabel für Erweiterungen und vor allem für besondere Schiffe ist, werden Flotten und Planeten nun als Blöcke (mehrzeilige Tabelleneinträge) dargestellt. Dies hat zum Vorteil, dass beim hinzufügen eines neuen Schiffes kein ALTER TABLE mehr ausgeführt werden muss. Zudem bekommt jedes Schiff in der Flotte spezielle Angriffs-, Verteidigungs- und Lebenswerte. Für mein Kampfsystem kommt noch ein spezieller Kampftyp dazu, der die Berechnung der Kämpfe zuerst zwischen kleinen und großen Schiffen unterteilt (Die Jäger tragen untereinander erstmal ihre eigene Schlacht aus). Zudem basiert der Kampf auf der Summenbildung des Schadens, welche einfach per MySQL SUM(`damage`*`count`)  erledigt werden kann. Im Kampf werden erst die größten Schiffe zerballert, da sie das größte Ziel bieten.</p>
<p>Resultierend aus dieser Umstrukturierung wird es auch möglich sein dem Spieler eine individuelle Schiffgestaltung zu überlassen. Dh. man könnte es beispielsweise ermöglichen bestimmte Waffen einzubauen. Dies ist vorerst allerdings nur Zukunftsmusik, ich kümmere mich vorerst nur um serverinterne Angelegenheiten und um Performance &amp; Erweiterbarkeit. Das Interface könnten danach auch ein paar Helferlein schreiben können, die nichtmal so viel davon verstehen müssten.</p>
<p>Leider ist mir heute bei einem Windoof Absturz mein SQL Ressourcen- und Eventhandlerscript abhanden gekommen, einen Großteil hatte ich mir zum Glück ausgedruckt, aber die Bauliste muss ich wohl neuschreiben, zudem muss ich einiges abtippen. Das kostet mich Zeit und regt mich auf, aber das wird schon.</p>
<p>PS: Morgen werde ich 18 <img src='http://ugamela-blog.pheelgood.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/08/26/phlame-engine-ugamela-tabellenumstrukturierung-ks/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>UGamelas OGame Ähnlichkeit</title>
		<link>http://ugamela-blog.pheelgood.net/2008/08/22/ugamelas-ogame-aehnlichkei/</link>
		<comments>http://ugamela-blog.pheelgood.net/2008/08/22/ugamelas-ogame-aehnlichkei/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 02:03:12 +0000</pubDate>
		<dc:creator>Phoscur</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Copyright]]></category>
		<category><![CDATA[OGame]]></category>
		<category><![CDATA[UGamela]]></category>

		<guid isPermaLink="false">http://ugamela-blog.pheelgood.net/?p=16</guid>
		<description><![CDATA[UGamela war anfangs als OGame Clon geplant und meist auch so verwendet. Problem dabei ist natürlich das Copyright der Gameforge, das vor allem klar auf ihrem Skin (Bilder) und den Texten liegt. Dazu kommen noch ein paar Scripte. Wie ich bereits mal erwähnte gibt es ja ein Gerücht, dass einmal sogar durch ein Leck serverseitige [...]]]></description>
			<content:encoded><![CDATA[<p>UGamela war anfangs als OGame Clon geplant und meist auch so verwendet. Problem dabei ist natürlich das Copyright der Gameforge, das vor allem klar auf ihrem Skin (Bilder) und den Texten liegt. Dazu kommen noch ein paar Scripte. Wie ich bereits mal erwähnte gibt es ja ein <em>Gerücht</em>, dass einmal sogar durch ein Leck serverseitige OGame Scripte ergattert werden konnten (PHP). Klar ist aber nur das Copyright auf dem Javascript, HTML und CSS Code. Das auch schon verletzt wurde. ich bin mir nicht sicher, aber es ist gut möglich, dass sich immer noch eine OGame Javascript Datei im XNova und sogar UGamela Release befindet. Jedenfalls tat sie das einmal. Aber mittlerweile sind vor allem Texte und teils Namen geändert. Vom Verwenden eines OGame Skins rate ich ab, als Standard ist er jedenfalls nicht eingestellt.</p>
]]></content:encoded>
			<wfw:commentRss>http://ugamela-blog.pheelgood.net/2008/08/22/ugamelas-ogame-aehnlichkei/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

