<?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>Lunikon &#187; AirlineSim</title>
	<atom:link href="http://www.lunikon.net/tags/airlinesim/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.lunikon.net</link>
	<description>lunar dust</description>
	<lastBuildDate>Sat, 23 Apr 2011 12:34:22 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>So&#8230;what next?</title>
		<link>http://www.lunikon.net/2010/04/30/so-what-next/</link>
		<comments>http://www.lunikon.net/2010/04/30/so-what-next/#comments</comments>
		<pubDate>Fri, 30 Apr 2010 01:49:05 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Persönliches]]></category>
		<category><![CDATA[Spiele]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[EN]]></category>
		<category><![CDATA[simulogics]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=218</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s almost 3 o&#8217;clock at night and I can&#8217;t sleep. Probably due to the larger quantities of coke and coffee I had the evening before&#8230;but also because I have a lot of stuff floating around my head that keeps my brain from slipping into sleep-mode.</p>
<p>In a few days time it will have been 10 months since the international portal for <a href="http://www.airlinesim.aero">AirlineSim</a> was launched. This basically marked the final public step towards my decission to do browsergames for a living. As you can see, I don&#8217;t live under a bridge just yet, so it hasn&#8217;t been all bad. But it&#8217;s also been a tough time that brought to light many weaknesses of AirlineSim that never appeared to me before. Most importantly I underestimated how difficult it would be to transform a hobby project that&#8217;s been around for several years into a commercial one that needs to sell well enough to pay the bills of at least one person (and his cats).</p>
<p>AirlineSim has always been layed out as what the name suggests: Being a realistic airline simulation. This never included making a game that achieves a revenue per player of X or a conversion rate per new visitor of Y. In fact, no such &#8220;KPI&#8221; ever occured to me or anybody else on the team and obviously it didn&#8217;t have to because there was no reason for the hassle. So several thousand files and 10s of thousands lines of code after it&#8217;s first appearance in 2002, AirlineSim has developed into what it is today: A huge piece of software that will never be &#8220;finished&#8221; and will never become a &#8220;bread &amp; butter project&#8221;.</p>
<p>Don&#8217;t get me wrong! I still love AirlineSim, it will always remain my baby and I won&#8217;t stop working on and extending it any time soon. But there&#8217;s a saying that I picked up quite some time ago somewhere on the net that sums up the problem quite well:</p>
<blockquote><p>If you have to keep putting money into it, it&#8217;s not a business, it&#8217;s a hobby.</p></blockquote>
<p>Now I&#8217;m not exactly putting money into AirlineSim. In fact, it pays most of my bills. But &#8220;most&#8221; isn&#8217;t &#8220;all&#8221; and there needs to be a point where I have to shift at least some of my resources (being time, primarily) towards something that will a.) close that money gap that AS fails to fill right now and b.) permits to further support AirlineSim as what it always has been and always will be: A niche game for a rather limited group of enthusiasts (including myself).</p>
<p>And there we go: The reason for my insomnia! It&#8217;s not the fear of living in cardboard boxes but the constant brain-storming about a follow-up project. It&#8217;s the first time in years that a new, large project appears on the horizon and whenever the daily work is finished I can&#8217;t stop thinking about all the different themes, possible features and hibernating ideas that would make for an interesting game. At the same time all these &#8220;nice-to-haves&#8221; mix with the experience I took away from 10 months of commercial AirlineSim that tell me something about what a web-game has to look like nowadays to become successful.</p>
<p>I&#8217;m pretty sure that, whatever it will end up to be, the next project will once again be some kind of business simulation. It will be a lot more streamlined than AS ever was and there will be a much stricter and better structured &#8220;master plan&#8221; to everything. There will be a focus on usability and intuitive gameplay from day one and I will put more emphasis on reaching a generally broader audience. At the same time there really mustn&#8217;t be the kind of feature-creep I&#8217;ve experienced in making AS, meaning that I could spend weeks after weeks adding new (important?) features without getting anywhere in the larger picture, pushing the development costs of the whole project through the clouds. A first playable release of the new project has to be out after a few months&#8217; work and earn money from the start.</p>
<p>So&#8230;exciting times coming up! I&#8217;m still looking for more ideas and I&#8217;m sure there are themes that you have always wished for in a game but never got realized. If that&#8217;s the case, feel free to drop me a line! For the AirlineSim fans among you: Rest assured that development of AS will continue as planned at least until 1.5 has been out the door and through it&#8217;s first few iterations. After that I&#8217;m planning to scale back on AS a bit but to keep supporting and extending it with regular patches.</p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2010/04/30/so-what-next/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,EN,simulogics';
var flattr_btn = 'compact';
var flattr_tle = 'So&#8230;what next?';
var flattr_dsc = 'It\'s almost 3 o\'clock at night and I can\'t sleep. Probably due to the larger quantities of coke and coffee I had the evening before...but also because I have a lot of stuff floating around my head that keeps my brain from slipping into sleep-mode.  In a few days time it will have been 10 months since the international portal for AirlineSim was launched. This basically marked the final public step towards my decission to do browsergames for a living. As you can see, I don\'t live under a bridge just yet, so it hasn\'t been all bad. But it\'s also been a tough time that brought to light many weaknesses of AirlineSim that never appeared to me before. Most importantly I underestimated how difficult it would be to transform a hobby project that\'s been around for several years into a commercial one that needs to sell well enough to pay the bills of at least one person (and his cats).  AirlineSim has always been layed out as what the name suggests: Being a realistic airline simulation. This never included making a';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2010/04/30/so-what-next/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Integrating CAS and Wicket</title>
		<link>http://www.lunikon.net/2009/11/24/integrating-cas-and-wicket/</link>
		<comments>http://www.lunikon.net/2009/11/24/integrating-cas-and-wicket/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 09:08:33 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[CAS]]></category>
		<category><![CDATA[EN]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Wicket]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=192</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>At AirlineSim we use <a href="http://www.jasig.org/cas">CAS</a> for user authentication and right now we are in the process of migrating parts of the game to the great web framework <a href="http://wicket.apache.org">Wicket</a>. Yesterday I thought about a way of integrating both in a way that a user is automatically redirected to a login page when he lacks access rights and that he returns to the exact same page after he has completed the login. All should be done in a &#8220;Wicket way&#8221;. Below you find my approach, please let me know when you find errors or if you can think of ways so solve it in a better way. For demonstration purposes I use simplified code passages. It looks slighty more complex in AirlineSim.</p>
<p>The first step is to check in a custom <a href="http://wicket.apache.org/docs/1.4/org/apache/wicket/authorization/strategies/page/AbstractPageAuthorizationStrategy.html">PageAuthorizationStrategy</a> whether a CAS assertion exists. I&#8217;m using the filters provided by the Jasig CAS Client to place the assertion in an AssertionHolder. If no assertion is provided (which means the user is not logged in) I use Wicket&#8217;s intercept page mechanism to redirect the user to CAS.</p>
<div class="codecolorer-container java default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> CASPageAuthorizationStrategy<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">extends</span> AbstractPageAuthorizationStrategy<br />
<span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; @Override<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #339933;">&lt;</span>T <span style="color: #000000; font-weight: bold;">extends</span> Page<span style="color: #339933;">&gt;</span> <span style="color: #000066; font-weight: bold;">boolean</span> isPageAuthorized<span style="color: #009900;">&#40;</span>Class<span style="color: #339933;">&lt;</span>T<span style="color: #339933;">&gt;</span> pageClass<span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Assertion assertion <span style="color: #339933;">=</span> AssertionHolder.<span style="color: #006633;">getAssertion</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>assertion <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span> <span style="color: #339933;">&amp;&amp;</span> isLoginRequired<span style="color: #009900;">&#40;</span>pageClass<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astringbuffer+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">StringBuffer</span></a> url <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astringbuffer+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">StringBuffer</span></a><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; url.<span style="color: #006633;">append</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;https://your.cas.installation/login?service=&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; url.<span style="color: #006633;">append</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aurlencoder+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">URLEncoder</span></a>.<span style="color: #006633;">encode</span><span style="color: #009900;">&#40;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">&quot;http://your.cas.clientapp/app/redirectAfterLogin&quot;</span>, <span style="color: #0000ff;">&quot;UTF-8&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aunsupportedencodingexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">UnsupportedEncodingException</span></a> e<span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RedirectPage intercept <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> RedirectPage<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> RestartResponseAtInterceptPageException<span style="color: #009900;">&#40;</span>intercept<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000066; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>As you can see, the code is pretty much straight forward: When the user isn&#8217;t logged in and a login is required (&#8221;isLoginRequired&#8221; just for demonstration purposes), the URL for the redirect to CAS is built. Since I&#8217;m using an intercept page, the path in the service parameter always points to &#8220;/redirectAfterLogin&#8221;, but more about that in a minute. The URL is passed to a new instance of RedirectPage which itself is passed to the RestartResponseAtInterceptPageException. When this exception is thrown, Wicket will &#8220;remember&#8221; the page the user just tried to call and redirect him to the RedirectPage. The latter will immediately redirect him to CAS for login. </p>
<p>So what about the &#8220;/redirectAfterLogin&#8221; in the service path? At this location I mounted the following page class:</p>
<div class="codecolorer-container java default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> RedirectAfterLoginPage<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">extends</span> WebPage<br />
<span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">public</span> RedirectAfterLoginPage<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">super</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>continueToOriginalDestination<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; setResponsePage<span style="color: #009900;">&#40;</span>getApplication<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getHomePage</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Its job is very simple. All it does is redirecting the user to the page Wicket &#8220;remembered&#8221; when the RestartResponseAtInterceptPageException was thrown. Since the user might access this page by accident and there is no markup for it, make sure to provide a response page even if no original destination is available. Otherwise the user will get to see an error page. I used the application&#8217;s home page as the default here.</p>
<p>And that&#8217;s basically it. Please note that the code snippets above are untested pseude code and will most definitely have to be adjusted to your environment. </p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2009/11/24/integrating-cas-and-wicket/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,CAS,EN,Java,Wicket';
var flattr_btn = 'compact';
var flattr_tle = 'Integrating CAS and Wicket';
var flattr_dsc = 'At AirlineSim we use CAS for user authentication and right now we are in the process of migrating parts of the game to the great web framework Wicket. Yesterday I thought about a way of integrating both in a way that a user is automatically redirected to a login page when he lacks access rights and that he returns to the exact same page after he has completed the login. All should be done in a \"Wicket way\". Below you find my approach, please let me know when you find errors or if you can think of ways so solve it in a better way. For demonstration purposes I use simplified code passages. It looks slighty more complex in AirlineSim.  The first step is to check in a custom PageAuthorizationStrategy whether a CAS assertion exists. I\'m using the filters provided by the Jasig CAS Client to place the assertion in an AssertionHolder. If no assertion is provided (which means the user is not logged in) I use Wicket\'s intercept page mechanism to redirect the user to CAS.  [cc lang=\"java\"] public class CASPageAutho';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2009/11/24/integrating-cas-and-wicket/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Going international</title>
		<link>http://www.lunikon.net/2008/07/15/going-international/</link>
		<comments>http://www.lunikon.net/2008/07/15/going-international/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 20:17:03 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[EN]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=68</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>The last few weeks <a title="AirlineSim" href="http://www.airlinesim.de">AirlineSim</a> have been quite a bit of fun again and it almost feels like the good old times. With the definite decission taken that we want to roll out an English version of the game before the end of the year a whole lot of things have happened. Let me summarize real quick:</p>
<p>First of all, the yearly team meeting which took place at a classic location in Stuttgart was a great success in any sense. Besides the culinary part of it we thought a lot about AirlineSim and how we could improve it. The bad thing: We&#8217;ve got so many nice want-to-haves on the list now that I have no clue when and how we&#8217;re supposed to realize them. But oh well, we&#8217;ll find a way&#8230;if you happen to be an experienced Java programmer and have an interest in helping us out, please let me know <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>As <a href="http://airlinesim.4players.de/vbb/showthread.php?p=70757#post70757">mentioned on the forums</a> we decided more or less spontaneously that AirlineSim deserves a major overhaul. So I&#8217;ve been spending a whole lot of time lately building up a new foundation based on an awesome component-based Java framework called <a title="Apache Wicket" href="http://wicket.apache.org">Wicket</a>. Although the learning curve is quite steep for my taste I&#8217;ve come to love it over the past months I&#8217;ve spent working with it at my day job. It most definately is a pleasure compared to the current Struts 2-based setup and it allows for far more up-to-date features while keeping development time for these gimmicks extremely low. So to keep it short: It&#8217;s been fun to work in AS lately and I&#8217;m really looking forward to our new major version&#8230;it&#8217;s going to be a milestone in AirlineSim&#8217;s history.</p>
<p>But that&#8217;s not all. As you might know, AirlineSim is published by <a title="4players" href="http://www.4players.de">4players</a> so far. And while it will stay that way for the German version we need to build up everything from scratch for the international launch. First question was: What&#8217;s going to be our domain name? Nobody (us included) thought of reserving airlinesim.net or another non-German and well known TLD when the project was started 6 years ago. Now all of the good variants are taken by other entities. Well, almost. One team member came up with the idea to get an <a href="http://www.nic.aero">.aero domain</a>. This sponsored domain is only available to &quot;members of the aviation community&quot; and because I liked the idea of such a domain a lot I handed in an application for a .aero ID on Sunday. Monday I got a response saying that more information on our request was needed&#8230;we had to prove that we actually deserve such a domain. I was kind of scared since I really wasn&#8217;t sure whether this was going to work out at all. So I wrote a short text about who we are and what we do, that we&#8217;re very interested in a realistic simulation and that many of our players and team members are actually aviation professionals (which is true, btw). When I opened my mailbox this evening the first thing catching my eyes was a heading which looked very promissing&#8230;and in fact it was the confirmation that we&#8217;re now authorized to register .aero-domains! Wohoo!</p>
<p>So now everything&#8217;s about paving the rest of the way to our international launch&#8230;registering the actual domain, getting a server, setting everything up and, oh yeah, program a new version of AirlineSim. I almost forgot. So dear reader&#8230;I&#8217;m back in the code. I&#8217;ll keep you updated!</p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2008/07/15/going-international/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,EN';
var flattr_btn = 'compact';
var flattr_tle = 'Going international';
var flattr_dsc = 'The last few weeks AirlineSim have been quite a bit of fun again and it almost feels like the good old times. With the definite decission taken that we want to roll out an English version of the game before the end of the year a whole lot of things have happened. Let me summarize real quick:First of all, the yearly team meeting which took place at a classic location in Stuttgart was a great success in any sense. Besides the culinary part of it we thought a lot about AirlineSim and how we could improve it. The bad thing: We\'ve got so many nice want-to-haves on the list now that I have no clue when and how we\'re supposed to realize them. But oh well, we\'ll find a way...if you happen to be an experienced Java programmer and have an interest in helping us out, please let me know ;-).As mentioned on the forums we decided more or less spontaneously that AirlineSim deserves a major overhaul. So I\'ve been spending a whole lot of time lately building up a new foundation based on an awesome component-based Java framewo';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2008/07/15/going-international/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>AirlineSim Code Statistik</title>
		<link>http://www.lunikon.net/2008/04/25/airlinesim-code-statistik/</link>
		<comments>http://www.lunikon.net/2008/04/25/airlinesim-code-statistik/#comments</comments>
		<pubDate>Fri, 25 Apr 2008 22:51:32 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[DE]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=65</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>Heute habe ich endlich mal ein kleines <a title="Matrics" href="http://metrics.sourceforge.net/">Plugin für Eclipse</a> installiert, mit dem man die eine oder andere Zahl über den Quellcode eines Projekts errechnet bekommt. Natürlich will ich euch das Ergebnis nicht vorenthalten. Also im Folgenden ein (wirklich) kleiner Absatz mit einigen Kennziffern zu AirlineSims Dimensionen in schnöden Zahlen:</p>
<p>Insgesamt hat der Kerncode von AirlineSim etwa 60.000 Codezeilen verteilt auf knapp 900 Klassen, was bei Java in etwa der Anzahl an Dateien entspricht. Diese verteilen sich auf 60 Verzeichnisse und enthalten insgesamt über 5000 Methoden. Keine Sorge, letzterer Wert ist vor allem wegen der üblichen Getter und Setter so hoch, welche in Java (und anderen objektorientieren Sprachen) zum setzen und lesen der Attribute verwendet werden.</p>
<p>Diese Zahlen erscheinen schon recht hoch&#8230;aber darin tauchen alle nicht-Java Dateien noch nicht auf. Lokalisierungsdateien die alle Texte enthalten, JSP-Templates welche für die Darstellung der HTML-Oberfläche zuständig sind und von denen es mindestens eines pro in AirlineSim sichtbarer Seite gibt sowie alle anderen Dateien wie Konfigurations- und Grafikdateien müssten also noch dazu gerechnet werden. </p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2008/04/25/airlinesim-code-statistik/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,DE';
var flattr_btn = 'compact';
var flattr_tle = 'AirlineSim Code Statistik';
var flattr_dsc = 'Heute habe ich endlich mal ein kleines Plugin für Eclipse installiert, mit dem man die eine oder andere Zahl über den Quellcode eines Projekts errechnet bekommt. Natürlich will ich euch das Ergebnis nicht vorenthalten. Also im Folgenden ein (wirklich) kleiner Absatz mit einigen Kennziffern zu AirlineSims Dimensionen in schnöden Zahlen:Insgesamt hat der Kerncode von AirlineSim etwa 60.000 Codezeilen verteilt auf knapp 900 Klassen, was bei Java in etwa der Anzahl an Dateien entspricht. Diese verteilen sich auf 60 Verzeichnisse und enthalten insgesamt über 5000 Methoden. Keine Sorge, letzterer Wert ist vor allem wegen der üblichen Getter und Setter so hoch, welche in Java (und anderen objektorientieren Sprachen) zum setzen und lesen der Attribute verwendet werden.Diese Zahlen erscheinen schon recht hoch...aber darin tauchen alle nicht-Java Dateien noch nicht auf. Lokalisierungsdateien die alle Texte enthalten, JSP-Templates welche für die Darstellung der HTML-Oberfläche zuständig sind und von denen es m';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2008/04/25/airlinesim-code-statistik/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Schock in der Nacht</title>
		<link>http://www.lunikon.net/2008/02/11/schock-in-der-nacht/</link>
		<comments>http://www.lunikon.net/2008/02/11/schock-in-der-nacht/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 23:50:30 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[DE]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=62</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>Als ob der Tag nicht turbulent gewesen wäre (auch wenn es die meisten nicht mitbekommen haben, der Start von Devau war nicht ganz reibungslos), wurde es heute Abend noch ein Stück besser. In der Updateroutine von Idlewild tauchte plötzlich ein Fehler auf. Nichts weltbewegendes, eigentlich nur eine Kleinigkeit. Aber es behinderte den Hintergrundjob und daher musste ein Fix her. Da die beiden alten Server sowieso den neuen Patch erhalten sollten war das eigentlich kein Problem: Fehler behoben, Patch eingespielt, alles läuft.</p>
<p>Naja, fast. Nach eine Runde Fernsehen mit der Freundin merke ich plötzlich, dass im Log was schief läuft. Wieder stockt das Update auf Idlewild und der Fehler wird sofort offensichtlich: Das Spiel hat &quot;vergessen&quot;, welches seine &quot;eigenen&quot; Unternehmen sind, also die Unternehmen, welche zum Beispiel die Flugzeuge verleasen. Grund hierfür waren uralte Codepartien, die die IDs dieser Unternehmen fix definiert hatten und die nach jeder Änderung in der ID-Sequenz neu angepasst werden müssen. Dies war auch mit dem neusten Patch der Fall, da mit diesem ein neuer Installer für AirlineSim Einzug gehalten hat, der beim aufsetzen des Spiels etwas anders vorgeht als bisher. Auf Devau ist das kein Problem, immerhin wurde diese Spielwelt mit dem neuen Installer aufgesetzt und alles passt. Beim einspielen des Patches auf Idlewild hatte ich aber nicht daran gedacht, dass hier noch das alte Format im Einsatz war. Die Folge: Die IDs waren verschoben, Operationen die auf &quot;offizielle Unternehmen&quot; zugreifen mussten erwischten mitunter die falschen oder garkeine. Eigentlich ein triviales Problem&#8230;aber das sind ja die meisten Bugs, nur dass in diesem Fall die Auswirkungen recht gravierend hätten sein können. Ehrlich gesagt ist auch noch nicht bekannt, was für Schäden das ganze möglicherweise angerichtet hat. Das wird sich aber in den kommenden Tagen zeigen.</p>
<p>Der Schock jedenfalls war die Tatsache, dass man dieses Problem nicht &quot;mal eben&quot; behebt. Also wurde dieses alte, fehleranfällige ID-Geschiebe, welches an nicht gerade wenigen Stellen im Code auftaucht, innerhalb einer halben Stunde wie ihm Wahn &quot;wegprogrammiert&quot;. Jetzt trägt jedes Unternehmen einen eindeutigen Flag, der es als &quot;AS&quot; oder &quot;nicht-AS&quot; identifiziert. Trotzdem&#8230;gut für die Nerven ist das nicht.</p>
<p />
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2008/02/11/schock-in-der-nacht/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,DE';
var flattr_btn = 'compact';
var flattr_tle = 'Schock in der Nacht';
var flattr_dsc = 'Als ob der Tag nicht turbulent gewesen wäre (auch wenn es die meisten nicht mitbekommen haben, der Start von Devau war nicht ganz reibungslos), wurde es heute Abend noch ein Stück besser. In der Updateroutine von Idlewild tauchte plötzlich ein Fehler auf. Nichts weltbewegendes, eigentlich nur eine Kleinigkeit. Aber es behinderte den Hintergrundjob und daher musste ein Fix her. Da die beiden alten Server sowieso den neuen Patch erhalten sollten war das eigentlich kein Problem: Fehler behoben, Patch eingespielt, alles läuft.Naja, fast. Nach eine Runde Fernsehen mit der Freundin merke ich plötzlich, dass im Log was schief läuft. Wieder stockt das Update auf Idlewild und der Fehler wird sofort offensichtlich: Das Spiel hat &quot;vergessen&quot;, welches seine &quot;eigenen&quot; Unternehmen sind, also die Unternehmen, welche zum Beispiel die Flugzeuge verleasen. Grund hierfür waren uralte Codepartien, die die IDs dieser Unternehmen fix definiert hatten und die nach jeder Änderung in der ID-Sequenz neu ang';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2008/02/11/schock-in-der-nacht/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The clock&#8217;s ticking&#8230;in several ways</title>
		<link>http://www.lunikon.net/2008/01/07/the-clocks-ticking-in-several-ways/</link>
		<comments>http://www.lunikon.net/2008/01/07/the-clocks-ticking-in-several-ways/#comments</comments>
		<pubDate>Mon, 07 Jan 2008 17:32:42 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Lunikon worldwide]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[EN]]></category>
		<category><![CDATA[Hong Kong]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=56</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>Yes, I admit, it has been fairly quiet around here over the last couple of weeks. And since a few people were complaining about this silence I&#8217;ll use this first post of year 2008 to get everybody reading this up-to-date about what&#8217;s currently planned and going on. Hopefully all of you had a merry Christmas and went well into the new year. I spent the holidays with my family and girlfriend in Hong Kong, managing to actually gain some (too much) weight although there were hardly any large, tasty and rich family meals as it&#8217;s usually the case when spending Christmas at home. Let&#8217;s just blame it on the candy&#8230;or the muscle mass gained while wandering around the city in a true touristic fashion. Anyway, I&#8217;m back to the gym now and my last days in Hong Kong go by.</p>
<p>That should be enough of the personal stuff though. Now that my family, my girlfriend and even my roommate left, one might think there should be plenty of time to get some work done. And as I never found a way out of my motivational dive cruise I can&#8217;t see myself spending much time travelling in the very near future either. Perfect conditions to rot in front of the screen&#8230;and in fact, after I wasted yesterday by bringing malaria pills to the airport (thanks Mark <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' /> ), today I officially started the work on the next major version of AirlineSim, namely 1.4. Don&#8217;t get too excited&#8230;not a single line of code has been hacked in so far. We&#8217;re having so many features, changes and improvements in mind for this milestone that the first thing to get done was some organizing. The result was a rough list of about 30 topics basically covering every aspect of the game in some way or the other. It contains mostly changes that will be applied to existing functions but there are also some brand new features on it which I will leave in the dark as of now of course <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Still, you should be able to imagine that a whole bunch of work will come along with this wishlist and I expect it to have grown to easily above 200 tasks after we went into the details. Actually it feels like at the beginning of a totally new project whenever I look at this pile of stuff to get done. Unfortunately all this will have to take place under heavy time constraints as I will only have about one month of spare time before my internship with <a href="http://www.agilitylogistics.com">Agility Logistics</a> starts in March. Naturally I&#8217;ll spend this time with my girlfriend to a large extend so we will have to see how AirlineSim can squeeze in. Either way I reckon that several months will pass until this major release will see the light of the day. And seriously&#8230;I can&#8217;t wait for it <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2008/01/07/the-clocks-ticking-in-several-ways/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,EN,Hong Kong';
var flattr_btn = 'compact';
var flattr_tle = 'The clock&#8217;s ticking&#8230;in several ways';
var flattr_dsc = 'Yes, I admit, it has been fairly quiet around here over the last couple of weeks. And since a few people were complaining about this silence I\'ll use this first post of year 2008 to get everybody reading this up-to-date about what\'s currently planned and going on. Hopefully all of you had a merry Christmas and went well into the new year. I spent the holidays with my family and girlfriend in Hong Kong, managing to actually gain some (too much) weight although there were hardly any large, tasty and rich family meals as it\'s usually the case when spending Christmas at home. Let\'s just blame it on the candy...or the muscle mass gained while wandering around the city in a true touristic fashion. Anyway, I\'m back to the gym now and my last days in Hong Kong go by.That should be enough of the personal stuff though. Now that my family, my girlfriend and even my roommate left, one might think there should be plenty of time to get some work done. And as I never found a way out of my motivational dive cruise I can\'t se';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2008/01/07/the-clocks-ticking-in-several-ways/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zeit für eine Frischzellenkur?</title>
		<link>http://www.lunikon.net/2007/10/23/zeit-fur-eine-frischzellenkur/</link>
		<comments>http://www.lunikon.net/2007/10/23/zeit-fur-eine-frischzellenkur/#comments</comments>
		<pubDate>Tue, 23 Oct 2007 08:12:27 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[DE]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=47</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>Keines der letzten Updates für AirlineSim enthielt nicht irgendeine Änderung bezüglich des Aufkommenssystems. Die neuste Version 1.3.3 macht da keinen Unterschied und bringt wieder einige &quot;Verbesserungen&quot; mit. Doch wie man sich eigentlich hätte denken können sind die erzielten Effekte nicht die, die man sich erwünscht. Entweder die neuen Regelungen sind wirkungslos, treffen die Falschen oder machen das Spiel unnötig schwerer und komplizierter. Auch wenn ich lange versucht habe ohne derartige Schritte auszukommen wird es wohl oder übel langsam Zeit, dass &quot;rumdoktern&quot; einzustellen und sich an die Ursachen des Problems zu machen.</p>
<p>Jeder der AirlineSim seit einer der ersten Versionen spielt, also schon mehr als 2 oder 3 Jahre dabei ist, weiß, dass einige Features in ihrer Art seit ihrer ersten Implementierung praktisch unverändert von einer Version in die nächste &quot;mitgenommen&quot; wurden. In der Tat war unser Ziel bei der Umsetzung der Java-Version von AirlineSim, zunächst einmal alle bekannten Features mit der neuen Technik umzusetzen statt große neue Pläne zu schmieden. Das ganze Schritt für Schritt anzugehen sozusagen. Insbesondere als uns unser Java-Experte verlassen hatte erschien uns dieses Vorgehen als das erfolgversprechendste. Spätestens jetzt zeigt sich aber, dass diese Taktik wohl so nicht aufgeht. Wichtige Komponenten des Spiels funktionieren mit den Funktionalitäten, welche die neue Technik ermöglicht, schlicht nicht mehr. Ticketpreise und Kosten, Parameter und Bewertungen sind ein Flickwerk jahrelanger Entwicklung und wurden nie tatsächlich und gamedesign-technisch aufeinander abgestimmt. Dies liegt natürlich auch daran, dass die Kombinationsmöglichkeiten gegen unendlich gehen und man praktisch nie alle &quot;Lücken&quot; durch die sich zum Beispiel findige Spieler mogeln können, im Auge behalten kann. Andereseits wäre es eben dann angebracht ein System zu entwerfen, dass möglichst selbstregelnd ist und auf irgend eine Weise allzu heftige Extremsituationen verhindert. Wie selbst der Laie vermuten kann ist das ein nicht ganz einfaches Unterfangen.</p>
<p>Wie dem auch sei, diese Probleme stehen ganz oben auf meiner Agenda, insbesondere weil die mir zur Verfügung stehende zeit sehr knapp bemessen ist. Ich werde also versuchen in den kommenden Wochen ein Konzept zu entwerfen, welches Serviceeinstellungen (für Serviceprofile und Flugzeugbestuhlungen warten die Überareitungspläne sowieso schon lange in der Schublade), Preisbereiche, Kosten, Flugbewertung und letztendlich Aufkommensverteilung unter einen Hut bringt. Da dies wie gesagt eine ziemliche Mammutaufgabe werden wird, werde ich vermutlich nicht dazu kommen viele Unschönheiten oder Fehler zu beheben&#8230;ich vertraue hier voll und ganz auf Marcus. Wahrscheinlich werden wir die Entwicklung in 2 Branches aufspalten: Der 1.3-Zweig mit gelegentlichen, kleinere Updates um Fehler zu beheben und einem 1.4-Zweig, in dem das System tiefgreifender überarbeitet wird. Wann letzterer dann das Licht der Welt erblickt bleibt natürlich offen. Ich kann mir aber Vorstellen, dass die Arbeiten bis in das erste Quartal 2008 dauern könnten.</p>
<p>Nun denn, ich stürze mich mal in Excel&#8230;</p></p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2007/10/23/zeit-fur-eine-frischzellenkur/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,DE';
var flattr_btn = 'compact';
var flattr_tle = 'Zeit für eine Frischzellenkur?';
var flattr_dsc = 'Keines der letzten Updates für AirlineSim enthielt nicht irgendeine Änderung bezüglich des Aufkommenssystems. Die neuste Version 1.3.3 macht da keinen Unterschied und bringt wieder einige &quot;Verbesserungen&quot; mit. Doch wie man sich eigentlich hätte denken können sind die erzielten Effekte nicht die, die man sich erwünscht. Entweder die neuen Regelungen sind wirkungslos, treffen die Falschen oder machen das Spiel unnötig schwerer und komplizierter. Auch wenn ich lange versucht habe ohne derartige Schritte auszukommen wird es wohl oder übel langsam Zeit, dass &quot;rumdoktern&quot; einzustellen und sich an die Ursachen des Problems zu machen.Jeder der AirlineSim seit einer der ersten Versionen spielt, also schon mehr als 2 oder 3 Jahre dabei ist, weiß, dass einige Features in ihrer Art seit ihrer ersten Implementierung praktisch unverändert von einer Version in die nächste &quot;mitgenommen&quot; wurden. In der Tat war unser Ziel bei der Umsetzung der Java-Version von AirlineSim, zunächst einm';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2007/10/23/zeit-fur-eine-frischzellenkur/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Memory, frogs and servers</title>
		<link>http://www.lunikon.net/2007/09/21/memory-frogs-and-servers/</link>
		<comments>http://www.lunikon.net/2007/09/21/memory-frogs-and-servers/#comments</comments>
		<pubDate>Fri, 21 Sep 2007 19:04:44 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Lunikon worldwide]]></category>
		<category><![CDATA[Spielzeug]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[EN]]></category>
		<category><![CDATA[Hong Kong]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=41</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re wondering what the things mentioned in the title of this post have in common let me tell you: nothing <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . This is meant to be a short entry covering a few of the more mentionable topics of last week since another week has passed since my last article. Which, by the way, means that I&#8217;m already in Hong Kong for a whole month. This again could be expressed as &quot;20% of my time in HKG is already over&quot;. Quite a shocking thought&#8230;I&#8217;m getting old I guess <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>It&#8217;s said that you can eat anything and everything around Hong Kong. Although I haven&#8217;t found places serving cats or dogs yet (probably due to my lacking knowledge of Cantonese) we occasionally eat at a thai restaurant which has a dish containing frogs on its menu. Last week I finally decided that I&#8217;d have to try this. First of all: The comparison to chicken isn&#8217;t too far off. If you don&#8217;t know what you are eating and you&#8217;re not paying attention to it you might think it actually is chicken. If this isn&#8217;t the case though you will notice some differences: The bones are very different in shape and nature, the meat is far softer and has a shape you usually wouldn&#8217;t find on a bird of any kind (the biologist in me tells me that this must be due to the fact that a frog is a &quot;jumper&quot; while a chicken is a &quot;runner&quot;). Besides that I was surprised at how big the bones where which is for me the only reason to keep in slight doubt about whether I actually ate frog or something else. Afterall I might want to mention that the dish was perfectly edible and not disgusting in any way. It looked and felt just like a regular asian meal and any weird feeling went away shortly after getting used to the mere thought of eating something a regular German might not be eating in his strangest dreams.</p>
<p>Last weekend we went to Mong Kok again. The place is said to be the second most crowded spot in the world when it comes to inhabitants. The streets in the area are filled accordingly and since it is a major shopping quarter for people from Hong Kong as well as foreigners the situation is even worse on weekends. Well, we didn&#8217;t care about this obviously and went there nonetheless. The reason was that Mark&#8217;s computer decided to suddenly dislike his operating system *cough* so we had to get a copy of Vista. Mong Kok is the address of choice when it comes to computer supplies since it accomodates a huge computer center spreading over 4 stories filled with uncountable small, independent stores, each more or less specialized on some kind of computer equipment (keyboards, software, &quot;Apple&quot;, screens and so on). While the others were trying to find an OEM version of Windows Vista I finally got the memory update for my laptop that I was planning on buying since I got it in december of last year actually. Instead of one gigabyte I got me two&#8230;it was only around 1000 HK$ which is quite a lower price than I would pay anywhere in Europe. Now developing with Eclipse, a running Tomcat- and MySQL-Server and several additional developing tools should work considerably faster.</p>
<p>Which leads me to my mandatory AirlineSim statement: Actually we already wanted to start a second server this week but since both Marcus and I are still working on some bugfixes it will most likely take till the end of next week to get everything ready for the launch. Besides that I&#8217;m working on a revised version of our portal page to replace the simple teaser which greets visitors at the moment. This will be necessary as soon as more than one server is in place and it should also make it easier for new players to find their way around especially to the various sources of help and support the team and the community have to offer.</p></p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2007/09/21/memory-frogs-and-servers/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,EN,Hong Kong';
var flattr_btn = 'compact';
var flattr_tle = 'Memory, frogs and servers';
var flattr_dsc = 'If you\'re wondering what the things mentioned in the title of this post have in common let me tell you: nothing :). This is meant to be a short entry covering a few of the more mentionable topics of last week since another week has passed since my last article. Which, by the way, means that I\'m already in Hong Kong for a whole month. This again could be expressed as &quot;20% of my time in HKG is already over&quot;. Quite a shocking thought...I\'m getting old I guess :)It\'s said that you can eat anything and everything around Hong Kong. Although I haven\'t found places serving cats or dogs yet (probably due to my lacking knowledge of Cantonese) we occasionally eat at a thai restaurant which has a dish containing frogs on its menu. Last week I finally decided that I\'d have to try this. First of all: The comparison to chicken isn\'t too far off. If you don\'t know what you are eating and you\'re not paying attention to it you might think it actually is chicken. If this isn\'t the case though you will notice some diff';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2007/09/21/memory-frogs-and-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Work ahead</title>
		<link>http://www.lunikon.net/2007/09/14/work-ahead/</link>
		<comments>http://www.lunikon.net/2007/09/14/work-ahead/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 05:00:51 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Lunikon worldwide]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[EN]]></category>
		<category><![CDATA[Hong Kong]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=40</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>The third week in Hong Kong is almost over. My opinion of the city hasn&#8217;t changed a bit, I&#8217;m still absolutely fascinated by it and I&#8217;m enjoying my stay a lot. But of course I&#8217;m here to study and not for (pure) fun. Classes slowly started last week and with the tutorials which commenced this week aswell one could say the full program is up and running. So far I&#8217;m enrolled in 5 subjects which will cover most of the things I have to do to get this semester approved by my home university including some subjects from the seventh semester. To make it perfect I will probably try to take a sixth class as well since this way I won&#8217;t have to catch up on anything when I&#8217;m back in Elsfleth. This of course means a lot of work: Me and my fellow students are already covered with readings and reports for several weeks, a further subject will most likely increase this amount of work considerably. It seems like the system at our university is very much focused on quantity. While lectures are easy to follow (not to say boring sometimes) and in my opinion could cover far more material, &quot;coursework&quot; is probably meant to compansate for this by simply being &quot;a lot&quot;. Usually every subject has a tutorial. In those tutorials teamwork assignments seem to be very common. In almost all of my tutorials some kind of these tasks were given so far and in most cases they make up a considerable share of the final grades. Overall I&#8217;ll be spending a whole lot of time reading papers and researching on the internet but let&#8217;s see how it turns out. It is quite a difference to Elsfleth though&#8230;that&#8217;s for sure.</p>
<p>But when talking about work there are other issues to be taken care of aswell&#8230;to be exact there are about 15 of them waiting in the bugtracker of AirlineSim <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Most of them are smaller cosmetic problems which should be done in no time. On the other hand there are still some major issues concerning the passenger behaviour. Fixing those, especially with the given situation stated above, will eventually take some more time to do. We are in process of working on patch 1.3.3 and we will see how many improvements will find their way into this just as the available time allows us to. Marcus is currently taking a look at the traffic rights which tend to cause some trouble right now so we hope to be able to present a fix for this as soon as possible, too.</p>
<p>And a little hint at the end: I&#8217;ve just <a title="Pictures from the city orienteering tour" href="http://www.lunikon.net/gallery/main.php/v/ImpressionsfromHongKong/Cityorienteering/">uploaded another 30 pictures</a> from Hong Kong, so have a look <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2007/09/14/work-ahead/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,EN,Hong Kong';
var flattr_btn = 'compact';
var flattr_tle = 'Work ahead';
var flattr_dsc = 'The third week in Hong Kong is almost over. My opinion of the city hasn\'t changed a bit, I\'m still absolutely fascinated by it and I\'m enjoying my stay a lot. But of course I\'m here to study and not for (pure) fun. Classes slowly started last week and with the tutorials which commenced this week aswell one could say the full program is up and running. So far I\'m enrolled in 5 subjects which will cover most of the things I have to do to get this semester approved by my home university including some subjects from the seventh semester. To make it perfect I will probably try to take a sixth class as well since this way I won\'t have to catch up on anything when I\'m back in Elsfleth. This of course means a lot of work: Me and my fellow students are already covered with readings and reports for several weeks, a further subject will most likely increase this amount of work considerably. It seems like the system at our university is very much focused on quantity. While lectures are easy to follow (not to say boring s';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2007/09/14/work-ahead/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yes yes yes</title>
		<link>http://www.lunikon.net/2007/09/05/yes-yes-yes/</link>
		<comments>http://www.lunikon.net/2007/09/05/yes-yes-yes/#comments</comments>
		<pubDate>Wed, 05 Sep 2007 07:40:11 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[AirlineSim]]></category>
		<category><![CDATA[DE]]></category>

		<guid isPermaLink="false">http://www.lunikon.net/?p=37</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>Merkt man dass ich mich freue? <img src='http://www.lunikon.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  So wie es aussieht, ist auch der &quot;Nachfolger&quot; des UTC-Bugs nun Vergangenheit. Wie erwartet war es eine gut versteckte Kleinigkeit und den Fehler zu finden hat mich viel Zeit und Mühe gekostet. Jetzt wäre ich dann bereit für UTC-Bug 3&#8230;kann mir ein Leben ohne UTC-Bug ja schon fast nicht mehr vorstellen&#8230;</p>
<p>Die Änderungen kommt dann mit dem Patch auf Version 1.3.2b, natürlich inklusive diverser anderer Kleinigkeiten, die behoben wurden. Der Termin für den Patch steht noch nicht, da noch der eine oder andere Posten aus dem Bugtracker abgearbeitet werden sollte, aber ich rechne mit dem Update für heute oder morgen Abend.</p>
<script type="text/javascript">
var flattr_wp_ver = '0.8';
var flattr_uid = '12981';
var flattr_url = 'http://www.lunikon.net/2007/09/05/yes-yes-yes/';
var flattr_lng = 'en_GB';
var flattr_cat = 'text';
var flattr_tag = 'AirlineSim,DE';
var flattr_btn = 'compact';
var flattr_tle = 'Yes yes yes';
var flattr_dsc = 'Merkt man dass ich mich freue? ;) So wie es aussieht, ist auch der &quot;Nachfolger&quot; des UTC-Bugs nun Vergangenheit. Wie erwartet war es eine gut versteckte Kleinigkeit und den Fehler zu finden hat mich viel Zeit und Mühe gekostet. Jetzt wäre ich dann bereit für UTC-Bug 3...kann mir ein Leben ohne UTC-Bug ja schon fast nicht mehr vorstellen...Die Änderungen kommt dann mit dem Patch auf Version 1.3.2b, natürlich inklusive diverser anderer Kleinigkeiten, die behoben wurden. Der Termin für den Patch steht noch nicht, da noch der eine oder andere Posten aus dem Bugtracker abgearbeitet werden sollte, aber ich rechne mit dem Update für heute oder morgen Abend.';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>]]></content:encoded>
			<wfw:commentRss>http://www.lunikon.net/2007/09/05/yes-yes-yes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
