<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8139311083065752880</id><updated>2012-02-08T22:46:48.266+01:00</updated><category term='Voodoo'/><category term='scat'/><category term='Intel sucks'/><category term='skiing it is'/><category term='what a forehead'/><category term='strategy'/><category term='so that&apos;s how they make money'/><category term='underestimated reverse-engineering'/><category term='here we go again'/><category term='happy happy joy joy'/><category term='tevesilen 1.0'/><category term='bad thought'/><category term='all play no work'/><category term='motivation'/><category term='epic steering fail'/><category term='One to go'/><category term='UFOs'/><category term='zombie'/><category term='Aha'/><category term='resource'/><category term='seppuku'/><category term='police post'/><category term='Pain in the NAT'/><category term='unpacking a pilot and an AI'/><category term='noon the next day'/><category term='work'/><category term='perfect to get back on track if I loose some brain tissue'/><category term='Flushing a game down the toilet'/><category term='facism'/><category term='idle development'/><category term='the red just got huger'/><category term='Majblommor'/><category term='sinus2'/><category term='spoiler cutie dies in the end'/><category term='resource system'/><category term='one step fwd two steps back'/><category term='pay up'/><category term='buy now'/><category term='introspection'/><category term='Time to go to work'/><category term='day job'/><category term='tit'/><category term='work less earn more'/><category term='817... .5 - WTF'/><category term='mac'/><category term='pain'/><category term='frameworks are tired'/><category term='deranged'/><category term='I&apos;m still an idiot'/><category term='corruption'/><category term='love'/><category term='on hold'/><category term='premature optimization'/><category term='ideas thumpin&apos; in my head'/><category term='app store'/><category term='irrational logic'/><category term='elevator'/><category term='2011'/><category term='generic'/><category term='Ma gawd game dev is painstakingly sloooooooow'/><category term='Ahhhhh...'/><category term='flat'/><category term='reverse engineering'/><category term='Gothic'/><category term='template'/><category term='PHP sucks'/><category term='mantra'/><category term='consensus'/><category term='Finally getting somewhere'/><category term='sleep'/><category term='wart and host'/><category term='Pirhana Bytes'/><category term='Ximbaltughzxitzx'/><category term='I am white trash'/><category term='yield cash'/><category term='bat'/><category term='jitter elimination'/><category term='tevesilen 1.2'/><category term='cruelly busy half-ass'/><category term='correspond'/><category term='Seemless server'/><category term='flying saucers'/><category term='deutche tant'/><category term='brighter'/><category term='epic-jump-auto-flip'/><category term='off track'/><category term='intranetz'/><category term='net promotor score'/><category term='sold some'/><category term='reduce'/><category term='Note to self: charge for beta'/><category term='All hardware manufacturers are parrot-torturers'/><category term='buy hard'/><category term='idea about excavating'/><category term='Gfx trial and hopefully not epic fail'/><category term='shippin'/><category term='nat'/><category term='combination'/><category term='vinden har vänt'/><category term='no games just home work'/><category term='epic fail'/><category term='Doppler rocks'/><category term='grunt-master'/><category term='Ja-yo'/><title type='text'>Trial and Epic Fail</title><subtitle type='html'>Ventures of an indie game developer</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default?start-index=101&amp;max-results=100'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>120</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8020733153343448326</id><published>2012-02-08T22:46:00.002+01:00</published><updated>2012-02-08T22:46:48.279+01:00</updated><title type='text'>Tech good to go</title><content type='html'>Got in-app purchase working, neat. I think. Apparently you can only add a single in-app purchase product until the product has been approved. Suckiesuckie. I'll work on content -- and soon, very soon I'm done! I could use some time off, and that's the understatement of the month.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8020733153343448326?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8020733153343448326/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/02/tech-good-to-go.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8020733153343448326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8020733153343448326'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/02/tech-good-to-go.html' title='Tech good to go'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4072794758602419798</id><published>2012-02-04T02:31:00.002+01:00</published><updated>2012-02-04T02:31:48.171+01:00</updated><title type='text'>In-app purchase</title><content type='html'>Now the only techie feature I have left is In-App Purchase. Then it's adding levels, tutorial, content, icons and tweaking... Praise Jesus!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4072794758602419798?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4072794758602419798/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/02/in-app-purchase.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4072794758602419798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4072794758602419798'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/02/in-app-purchase.html' title='In-app purchase'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7262294534951482074</id><published>2012-02-02T01:31:00.001+01:00</published><updated>2012-02-02T01:43:49.579+01:00</updated><title type='text'></title><content type='html'>I was able to deploy and run my Google App Engine app through my domain by first setting up some DNS TXT to authenticate that I was the owner of the domain, then adding a CNAME to refer to the application running on a Google server somewhere. So now it is running at &lt;a href="http://gamehiscore.pixeldoctrine.com/html/UnitTest?platform=Computer&amp;level=Level&amp;avatar=Avatar"&gt;gamehiscore.pixeldoctrine.com&lt;/a&gt; and I have a C++ interface working through &lt;a href="http://scumways.com/happyhttp/happyhttp.html"&gt;HappyHTTP&lt;/a&gt;, so now all I have to do is add the logic to my game. Should be a piece of cookie.&lt;br/&gt;&lt;br/&gt;The server-side Python app is only some 200 lines which includes some shady security stuff, Google's database read/writes, a hand-made JSON writer (Python 2.5 in GAE has no built-in JSON support) and the no-longer working HTML interface. If it gets hacked I'll add HTTPS and challenge-response, but I suspect I'll have to make a good game first to attract some hackers, and it sure ain't gonna be Kill Cutie, since the iOS controls sucks ass.&lt;br/&gt;&lt;br/&gt;This is the Python object to JSON writer (run with myjson.dumps(o)):&lt;br/&gt;&lt;br/&gt;&lt;pre&gt;&lt;br /&gt;class myjson:&lt;br /&gt;  @staticmethod&lt;br /&gt;  def tostr(o):&lt;br /&gt;    "Converts input object to string."&lt;br /&gt;    if type(o) == dict:&lt;br /&gt;      return '{' + ', '.join([myjson.tostr(k) + ':' + myjson.tostr(v) for k,v in o.items()]) + '}'&lt;br /&gt;    elif type(o) == list:&lt;br /&gt;      return '[' + ', '.join([myjson.tostr(e) for e in o]) + ']'&lt;br /&gt;    elif type(o) == unicode:&lt;br /&gt;      return repr(o)[1:] # Something along the lines of u'\xe5asdf\xe4\xf6\xe5'&lt;br /&gt;    elif type(o) == long:&lt;br /&gt;      return str(int(o)) # Typically 97L or so.&lt;br /&gt;    elif type(o) == str:&lt;br /&gt;      if len(o) &lt; 2 or o[0] != '"' or o[-1] != '"':&lt;br /&gt;        return '"' + o.replace('"', '\\"') + '"'&lt;br /&gt;      return o&lt;br /&gt;    else:&lt;br /&gt;      return str(o);&lt;br /&gt;  @staticmethod&lt;br /&gt;  def dumps(o):&lt;br /&gt;    "Tries to emulate json module in Python 2.5 and newer. Simple enough."&lt;br /&gt;    return myjson.tostr(o).replace("'", '"')&lt;br /&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;On the client I do something like:&lt;br/&gt;&lt;br/&gt;&lt;pre&gt;&lt;br /&gt;Cure::HiscoreAgent lHiscore(_T("gamehiscore.pixeldoctrine.com"), 80, _T("GameName"));&lt;br /&gt;lHiscore.StartDownloadingList(_T("Platform"), _T("Level"), _T("Avatar"), 0, 10);&lt;br /&gt;while (lHiscore.Poll() == Cure::RESOURCE_LOAD_IN_PROGRESS)&lt;br /&gt;  ;&lt;br /&gt;Cure::HiscoreAgent::List lHiscoreList = lHiscore.GetDownloadedList();&lt;br /&gt;lHiscoreList.mOffset;&lt;br /&gt;lHiscoreList.mTotalCount;&lt;br /&gt;lHiscoreList.mEntryList.size();&lt;br /&gt;lHiscoreList.mEntryList[0].mName;&lt;br /&gt;lHiscoreList.mEntryList[0].mScore;&lt;br /&gt;lHiscoreList.mEntryList[1].mName;&lt;br /&gt;lHiscoreList.mEntryList[1].mScore;&lt;br /&gt;&lt;br /&gt;// or:&lt;br /&gt;&lt;br /&gt;lHiscore.StartUploadingScore(_T("Platform"), _T("Level"), _T("Avatar"), _T("me"), 1234);&lt;br /&gt;while (lHiscore.Poll() == Cure::RESOURCE_LOAD_IN_PROGRESS)&lt;br /&gt;  ;&lt;br /&gt;int lMyPosition = lHiscore.GetUploadedPlace();&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7262294534951482074?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7262294534951482074/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/02/i-was-able-to-deploy-and-run-my-google.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7262294534951482074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7262294534951482074'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/02/i-was-able-to-deploy-and-run-my-google.html' title=''/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-972289903319190401</id><published>2012-01-30T23:52:00.000+01:00</published><updated>2012-01-30T23:59:06.638+01:00</updated><title type='text'>Am I gae?</title><content type='html'>Just home after visiting my aunt, supporting as best we could.&lt;br/&gt;&lt;br/&gt;Picked up high scores again, decided to go with a &lt;a href="http://code.google.com/intl/sv/appengine/"&gt;GAE&lt;/a&gt; solution, using &lt;a href="http://scumways.com/happyhttp/happyhttp.html"&gt;HappyHTTP&lt;/a&gt; on the client-side. I just tested it, and it seems to work. I'll make it tiny, but re-usable on the server side, so all my apps can have a global hiscore list - sweet!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-972289903319190401?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/972289903319190401/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/just-home-after-visiting-my-aunt.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/972289903319190401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/972289903319190401'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/just-home-after-visiting-my-aunt.html' title='Am I gae?'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3181792430143272163</id><published>2012-01-21T21:34:00.000+01:00</published><updated>2012-01-21T21:36:29.398+01:00</updated><title type='text'>A prince in need</title><content type='html'>You sweet, cute boy with golden hair andblue eyes.&lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;You sit in your her lap,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;she asks you to repeat&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;what you recently have learnt to say.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;“I love mom&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;mom loves me&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;we love eashodder!”&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;We weep bitterly as you,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;still sweet but now tall,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;place the banner&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;“Sweet dreams, daddy”.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;I wish I would have helped you,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;but I didn’t.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Today, three months after your father,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;you too took the liberty of drifting away&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;on our river of tears,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;leaving your sick mother and tormentedbrother in excruciating pain.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Safe journey dear cousin. Sweet dreamsdearest prince.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;Kalle Karlsson, 1993–2012&lt;/i&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif; font-size: x-small;"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3181792430143272163?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3181792430143272163/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/you-sweet-cute-boy-with-golden-hair.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3181792430143272163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3181792430143272163'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/you-sweet-cute-boy-with-golden-hair.html' title='A prince in need'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3345352055777698614</id><published>2012-01-18T20:42:00.004+01:00</published><updated>2012-01-21T21:42:17.911+01:00</updated><title type='text'>Code bloat and competence keyboard</title><content type='html'>Last thing I did at work was to reduce a piece of newly written Java code (object converter) by 95%, from a bit more than 2k lines of code spread across a dozen files into a single 100-line method! And I'm no guru, but the one who designed the code has 10 years+ experience with Java... I'm not sure what that says about him... or Volvo IT. Tolstoy said reduction was the best improvement of a work, and I agree, but this is ridiculous.&lt;br /&gt;&lt;br /&gt;I'm running with the hiscore, it's going to be fun! Currently trying to handle iOS keyboard input, which is very straight-forward. Add the following to your EAGLView:&lt;br /&gt;&lt;pre&gt;- (void)insertText:(NSString*)text {&lt;br /&gt;    ...&lt;br /&gt;}&lt;br /&gt;- (void)deleteBackward {&lt;br /&gt;    ...&lt;br /&gt;}&lt;br /&gt;- (BOOL)hasText {&lt;br /&gt;    return YES;&lt;br /&gt;}&lt;br /&gt;- (BOOL)canBecomeFirstResponder {&lt;br /&gt;    return YES;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;plus call [view becomeFirstResponder] and you're done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3345352055777698614?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3345352055777698614/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/code-bloat-and-competence-keyboard.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3345352055777698614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3345352055777698614'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/code-bloat-and-competence-keyboard.html' title='Code bloat and competence keyboard'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2124841808778288531</id><published>2012-01-12T21:54:00.000+01:00</published><updated>2012-01-13T01:07:14.449+01:00</updated><title type='text'>Exhausting steep climate</title><content type='html'>I wouldn't have thought that they would be &lt;a href="http://www.youtube.com/watch?v=ElI-XVGHCHs&amp;feature=player_embedded#!"&gt;so openly immoral&lt;/a&gt;. Stupid, powerful, egocentric men. Corruption remains the biggest human problem once poverty and dictatorship are resolved. Climate change as it is now is just a direct result of corruption.&lt;br/&gt;&lt;br/&gt;The vehicles I tinker with won't take much part in the climate change. But oh brother, the details you have to take into account to get everything working nicely. Such as balancing steepness for the "path finding". As you might know empirically, or more probably sense intuitively, cars won't climb just any hill. I use some predefined Catmull-Rom splines for "path finding", but if a vehicle is shot out of orbit, or pushed by some physics toy, it has to re-evaluate where to go and then steepness comes into play. All four vehicles have very different characteristics, but I'm striking the golden mean. I use Catmull-Rom since the parameterized curve passes through all control points. It looks like this when I place the control points, then I configure the paths using regexps.&lt;br/&gt;&lt;br/&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-WlgsAeDbTBM/Tw91VF6HAoI/AAAAAAAAAJw/Lbo1ngujAFE/s1600/splines.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="174" width="200" src="http://1.bp.blogspot.com/-WlgsAeDbTBM/Tw91VF6HAoI/AAAAAAAAAJw/Lbo1ngujAFE/s200/splines.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2124841808778288531?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2124841808778288531/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/climate.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2124841808778288531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2124841808778288531'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/climate.html' title='Exhausting steep climate'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-WlgsAeDbTBM/Tw91VF6HAoI/AAAAAAAAAJw/Lbo1ngujAFE/s72-c/splines.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8870549409119053644</id><published>2012-01-08T21:52:00.000+01:00</published><updated>2012-01-13T01:08:52.072+01:00</updated><title type='text'>Java</title><content type='html'>Some day somebody must come up with a language which is to Java what &lt;a href="http://www.youtube.com/watch?v=SHv3-U9VPAs"&gt;Pirahã&lt;/a&gt; is to English. Java sucks apedick. Perhaps the language is the least bad thing in the unholy alliance of lengthy syntax, RAM-eating VM, huge and expressive API, ugly resource building/integration (.xml/.properties loading, manifests, JAR/WAR/EAR, ant/maven build system), open sourcy/design-by-committeé/consensus crap and least but not least documentation instead of examples.&lt;br/&gt;&lt;br/&gt;Using Java for enterprise solutions is exactly like voting Berlusconi: the alternatives are worse.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8870549409119053644?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8870549409119053644/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/java.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8870549409119053644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8870549409119053644'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/java.html' title='Java'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5162672689855653219</id><published>2012-01-02T21:48:00.000+01:00</published><updated>2012-01-03T05:31:55.704+01:00</updated><title type='text'>Philosophy</title><content type='html'>Noted three things:&lt;br/&gt;&lt;br/&gt;It takes a certain kinda guy to test his own boring, casual game for six months without adding anything noteworthy.&lt;br/&gt;&lt;br/&gt;Two and a half men is to little people what Excel is to small firms.&lt;br/&gt;&lt;br/&gt;Ah, maybe it was two then.&lt;br/&gt;&lt;br/&gt;What happened lately? I downsides the "world" by a factor 2, which made the ballistic missiles fall twice as fast and the pendulums ::sqrt(L) times as fast. Thinking of releasing the game for Mac App Store. Optimized the game. A lot of tinkering and tweaks. Worked some on the UI in general and iOS controls in particular. Thinking of dropping the highscore idea after all, it varies on a day-to-day basis.&lt;br/&gt;&lt;br/&gt;In the last month it's been coming together to look like a game, but still has some bits left (apart from content). Not too much though. I realized that releasing the exact same game for both Computer and iOS is a lot of work, especially in the UI. Here are some of the things that remain:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;Slow-mo when hitting Cutie&lt;/li&gt;&lt;li&gt;Improve iOS UI&lt;/li&gt;&lt;li&gt;Improve 3D models (in Maya) of vehicles&lt;/li&gt;&lt;li&gt;Produce 3D models of levels (also Maya)&lt;/li&gt;&lt;li&gt;Bugfix&lt;/li&gt;&lt;li&gt;Make "tutorial" (I'm thinking a small introduction with voice-over)&lt;/li&gt;&lt;li&gt;Two player mode: flip sides after each round&lt;/li&gt;&lt;li&gt;Create icons for game and a few in-game&lt;/li&gt;&lt;li&gt;iOS version: in-app purchase of levels and vehicles&lt;/li&gt;&lt;li&gt;Different iPhone/iTouch and iPad versions (iPad includes 2 players, iPhone/iTouch does not)&lt;/li&gt;&lt;li&gt;Computer version: create iOS App Store link when released&lt;/li&gt;&lt;li&gt;Tweaks&lt;/li&gt;&lt;/ul&gt;Not much left, releasing soon. The last bullet will take up most of my time, I suspect.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5162672689855653219?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5162672689855653219/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/philosophy.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5162672689855653219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5162672689855653219'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2012/01/philosophy.html' title='Philosophy'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1448528310491666727</id><published>2011-12-28T00:19:00.001+01:00</published><updated>2011-12-28T00:19:43.338+01:00</updated><title type='text'>By committee? Really?</title><content type='html'>A camel is a horse designed by committee, but then again &lt;a href="http://www.gamasutra.com/view/news/38999/Opinion_No_One_Cares_About_Your_Cool_Game_Idea.php"&gt;maybe not&lt;/a&gt;... I'll  try bouncing my ideas off a few people some games ahead and see what comes out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1448528310491666727?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1448528310491666727/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/by-committee-really.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1448528310491666727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1448528310491666727'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/by-committee-really.html' title='By committee? Really?'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8559955876305651989</id><published>2011-12-20T02:32:00.002+01:00</published><updated>2012-01-13T01:12:45.281+01:00</updated><title type='text'>World Championship</title><content type='html'>I've lost it again. Earlier I thought I'd skip implementing a global high score list, but it's much too addictive, I just have to do it. You see, I accidentally ran into &lt;a href="http://tagnytt.nu"&gt;this simple game&lt;/a&gt; and immediately realized that the high score list was the only thing keeping me there for five minutes. Plus I want to be World Champion, and since I'm The Maker I should be entitled to the title. Of course all users will hate the cryptic algorithm I use to score them. I'll have to weigh in computer difficulty, total time, damage done and keep unique high score lists for each combination of vehicle and level. That leaves me with 12 or perhaps 16 high score lists. So there can be at most 16 World Champions. Hopefully a lot of people want to compete about pole position. It's just too bad about the steering, but now I'll have think of something. Implementing all this tech, then throwing it all away on lousy controls...&lt;br/&gt;&lt;br/&gt;This is how I forsee the pricing. I'll charge extra for getting write access to the global high score list. Reading will be free and read/write to the local one will be free. App w/ one car and one level - free, get three more cars - tire 1, get two (or three) more levels - tire 1, get write access to global high score - tire 2. I'll let people buy their way into better chances of getting a good high score.&lt;br/&gt;&lt;br/&gt;Mmmpf... I just added a couple of months to this project, didn't I? Don't shoot the implementer.&lt;br/&gt;&lt;br/&gt;On the other hand, I'll just re-use the tech for my next project. Next game is going to be very small and totally free - some type of gyro/accelerometer game for iOS only, I'll do it as a test mainly to see how many downloads it gets. I'm currently selling around one app per day. Which I could have bought four chewing gums for each day if chewing gum prices would have stayed the same as when I was a kid. Maybe this game could land me 10 purchases per day for a few months. That would get me almost a lunch per week... Mm mm! Almost lunch...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8559955876305651989?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8559955876305651989/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/world-championship.html#comment-form' title='2 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8559955876305651989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8559955876305651989'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/world-championship.html' title='World Championship'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4888858504169250948</id><published>2011-12-18T15:31:00.002+01:00</published><updated>2011-12-18T15:31:29.541+01:00</updated><title type='text'>Sweet but delayed music</title><content type='html'>I wanted some music in the game, but since the size of the binary increases a lot with each song added, I figured I’d look into MOD playing. I ended up adding .XM support utilizing a 3rd party lib called ChibiXM (MIT license). It’s not perfect, but good enough for me, and the API was pretty easy to use after looking at the SDL reference implementation; I interface with OpenAL. So now, each song takes about 20-40 kB – nice!&lt;br/&gt;&lt;br/&gt;A couple of weeks ago I realized I won’t make it before X-mas, so I pulled back some on the pace. I’ve invested some than four-five calendar months already, so I’ll polish some more on the game until I ship. This is my first game, so it’s not going to be fantastic, but I would have totally wasted my time, I guess, if I don’t follow through.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4888858504169250948?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4888858504169250948/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/sweet-but-delayed-music.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4888858504169250948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4888858504169250948'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/sweet-but-delayed-music.html' title='Sweet but delayed music'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7208165038057286850</id><published>2011-12-06T22:56:00.001+01:00</published><updated>2011-12-06T23:18:34.672+01:00</updated><title type='text'>Windows Phone 7</title><content type='html'>... or should I say &lt;a href="http://www.dailymotion.com/video/x10jdb_manu-chao-king-of-bongo_music"&gt;MONGO&lt;/a&gt;. I just went to a coding dojo where we tried to code some stuff. Microsoft of course had their own take on mobile development. I hadn't set eyes on an MS Phone for eight years, and while much has changed the important stuff are the same.&lt;br/&gt;&lt;br/&gt;They require you to run .NET exclusively. No OpenGL support, however SilverLight and XNA. They still want to run their own standards, but now they try to do it all the way. My guess is this is going to come down on them like a ton of bricks; too bad they never learn, Apple could do with some competition. And I'm never porting my shit to C#.&lt;br/&gt;&lt;br/&gt;What I AM doing, on the other hand, is finalizing the game. Slowly, slowly it's moving along. Currently I'm fixing game set and match, game restart, side switching after lost game, score counting and the like. After that, and some help with icons from a friend, it's not much left! I WILL ship my first game! Whoa, after all this time. Can hardly believe it. Knock on wood, but probably going to die in a car crash before that happens. Keep your fingers crossed please!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7208165038057286850?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7208165038057286850/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/windows-phone-7.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7208165038057286850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7208165038057286850'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/12/windows-phone-7.html' title='Windows Phone 7'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6658444883689364568</id><published>2011-11-29T21:32:00.001+01:00</published><updated>2011-11-29T22:29:58.434+01:00</updated><title type='text'>Getting Paid and no AI Christmas</title><content type='html'>I'm getting an outrageous day-time job raise in a month, doing the same thing I do, in the same place, with the same people. I'm start my own business as a consultant sub-contractor. Take a look:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-DlG9hya6CEQ/TtVCXzrwZPI/AAAAAAAAAJg/08mpkBWEwqw/s1600/salary.png" /&gt;&lt;/div&gt;&lt;br /&gt;See that awfully high sample in the end? I'm not going to earn that much developing my own games in a few years. Perhaps never, might as well enjoy it while it lasts.&lt;br /&gt;&lt;br /&gt;I spent one night coding to be able to create "paths" in Maya for Cutie to follow in the game. Spent another one getting a vehicle "AI" driving from A to B. At first thought I'd make it generic so I could reuse it, but came to my senses and used an enum instead. It's pretty fun to do something that on some level imitates human behavior. All I have to do now is to add some type of circumventing behavior for obstacles (grenades and traps) and make it back up if something is in the way and the driving AI is done!&lt;br /&gt;&lt;br /&gt;Apart from the vehicle AI I now only have 20 tasks left in my ToDo-list before the game is done, each of which is only a few hours. I could actually manage to finish it before Christmas. Christmas sprit will have to wait ‘til next year though.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6658444883689364568?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6658444883689364568/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/getting-paid-and-no-ai-christmas.html#comment-form' title='2 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6658444883689364568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6658444883689364568'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/getting-paid-and-no-ai-christmas.html' title='Getting Paid and no AI Christmas'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-DlG9hya6CEQ/TtVCXzrwZPI/AAAAAAAAAJg/08mpkBWEwqw/s72-c/salary.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-228346712352549002</id><published>2011-11-17T20:59:00.001+01:00</published><updated>2011-11-17T20:59:52.776+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grunt-master'/><title type='text'>Plumbing is good</title><content type='html'>&lt;a href="http://www.johndcook.com/blog/2011/11/15/plumber-programmers/"&gt;http://www.johndcook.com/blog/2011/11/15/plumber-programmers/&lt;/a&gt; :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-228346712352549002?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/228346712352549002/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/plumbing-is-good.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/228346712352549002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/228346712352549002'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/plumbing-is-good.html' title='Plumbing is good'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4629091400986513030</id><published>2011-11-16T01:56:00.001+01:00</published><updated>2011-11-16T02:06:56.143+01:00</updated><title type='text'>3h</title><content type='html'>I just spent three hours on HUD and 3D rendering permutations. I've got&lt;ul&gt;&lt;li&gt;Single play car, single play launcher, dual play&lt;/li&gt;&lt;li&gt;iOS, computer&lt;/li&gt;&lt;/ul&gt;which yields six variations (give or take). The reason is that I hard-coded (and ugly-coded) big-time in Kill Cutie, but I'd say it's winning me a lot of time. The engine I keep clean; but for a small, casual game such as this I go straight to the nitty-gritty details. It's a bit like prototyping with quick results and fire-and-forget code, and it feels good. I think I'm going to stick with ugly-coding for all my casual games in the future.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4629091400986513030?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4629091400986513030/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/3h.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4629091400986513030'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4629091400986513030'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/3h.html' title='3h'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2300468687702942457</id><published>2011-11-11T00:37:00.001+01:00</published><updated>2011-11-11T01:03:10.389+01:00</updated><title type='text'>Single player</title><content type='html'>I decided to implement single player mode in Kill Cutie as well. The AI for the launcher was easy enough, and I wanted to make a game that at least is fun on one platform (computer, iOS-device steering sucks). Perhaps I should even try to charge money for a PC/Mac game... not that I'd like to spend any development time there though. And no chance in hell I'm going to get any money that way anyway. We'll see.&lt;br/&gt;&lt;br/&gt;What you see in the clip with the lousy audio+video quality is the launcher AI trying to shoot at me, and me trying to get in the way. I like the detail with the wheels coming off when Cutie dies! :)&lt;br/&gt;&lt;br/&gt;&lt;center&gt;&lt;iframe width="425" height="349" src="http://www.youtube.com/embed/F7sQeZLQIrw?hl=sv&amp;fs=1" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2300468687702942457?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2300468687702942457/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/single-player.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2300468687702942457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2300468687702942457'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/single-player.html' title='Single player'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/F7sQeZLQIrw/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5698067136057096847</id><published>2011-11-05T21:09:00.001+01:00</published><updated>2011-11-05T21:09:51.988+01:00</updated><title type='text'>Canned Heat</title><content type='html'>... I'm on the road again. I've changed projects in my day job and have been busy with practicalities, but a few days ago I started poking around in the game code again. Does it ever take time to finish off the bloody ice berg... I just added some type of "capture and hold" functionality of the destination parking lot, accompanied by the mandatory raising of the flag. However Swedish. Tonight I'm busy watching &lt;a href="http://www.itv.com/downtonabbey/"&gt;TV&lt;/a&gt; though. Hooked from the start like millions of countrymen and Brittish.&lt;br/&gt;&lt;br/&gt;Small recap of recent developments. I did some explosion physics tweaks, set a starting-point garage for Cutie, wrote some  trajectory guide "compasses" to facilitate launcher controls, added some physics toys in the level (such as a bridge and a huge wreck ball pendulum above it), placed some trees in the terrain, and a whole lot of physics and gaming tweaks. Although I still think it's too had to play, which is going to be it's downfall.&lt;br/&gt;&lt;br/&gt;Let me think what might be left in the to-do list... menus, power bar for cutie, flip sides between games, score counting and player indication, adding a vehicle and a couple of levels for paying customers, 2D graphics, icons, default iOS screens, tweaks &amp; polish... and all the stuff I forgot.&lt;br/&gt;&lt;br/&gt;I however came up with ten other gaming ideas in a stroke of inspiration; at least half of which seem very good on a principle level. Easy to implement, entertaining enough in a casual single-player setting. Playing with yourself on the bus, hoping not to get arrested. I'll showcase the ideas as I develop and release in the coming year. But now, lovely Downton Abbey, here I come!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5698067136057096847?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5698067136057096847/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/canned-heat.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5698067136057096847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5698067136057096847'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/11/canned-heat.html' title='Canned Heat'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2491723384572157771</id><published>2011-10-24T22:19:00.001+02:00</published><updated>2011-11-14T21:45:31.213+01:00</updated><title type='text'>Problem solved, eh?</title><content type='html'>Although no evidence of cold fusion or the like has yet been presented, it is hard not to remain hopeful &lt;a href="http://www.forbes.com/sites/markgibbs/2011/10/17/hello-cheap-energy-hello-brave-new-world/"&gt;in these times&lt;/a&gt;. Rossi might be up to a scam, but slight endorsements (if it's not a hoax) by Professor Kullander (member of Royal Swedish Academy of Sciences) and Professor Essen (former chairman of the Swedish Skeptics Society) and the footage and test data available online holds some credibility I think. Best of all, in my point of view, is that he approached the problem like an engineer trying to get a working product out there, not as a researcher just trying to understand what's going on.&lt;/br&gt;&lt;br/&gt;Time will tell of course, but if this is for real our environment/energy problems are but a memory. And &lt;a href="http://www.teslamotors.com/"&gt;Hello Electric Car&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2491723384572157771?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2491723384572157771/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/problem-solved-eh.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2491723384572157771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2491723384572157771'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/problem-solved-eh.html' title='Problem solved, eh?'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6658048301613773890</id><published>2011-10-19T00:21:00.000+02:00</published><updated>2011-10-19T00:21:31.870+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='epic steering fail'/><category scheme='http://www.blogger.com/atom/ns#' term='tevesilen 1.2'/><title type='text'>Pseudo-work</title><content type='html'>The steering didn't work out too well on Kill Cutie, which is going to ruin the whole game. Aww... I should have foreseen that. I'm still going to release it though.&lt;br/&gt;&lt;br/&gt;In the mean while I did an update of Tevesilen, mainly ported to iPad. Didn't even bother to create a background for the higher resolution. Porting is easy if you know what to do, and how; but if not, quite the contrary. Especially if you do a lot of tweaking in your Cocoa Touch code. I've earned 10x more on this app than the Slime Volleyball one, which is still a meager pay. It's going to be interesting to see what happens to Kill Cutie, my guess is that it will sell for more than Slime Volleyball, but less than Tevesilen. I'll post stats here once I know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6658048301613773890?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6658048301613773890/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/pseudo-work.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6658048301613773890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6658048301613773890'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/pseudo-work.html' title='Pseudo-work'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7523512122669467605</id><published>2011-10-06T01:09:00.001+02:00</published><updated>2011-10-06T01:09:32.195+02:00</updated><title type='text'>Pilot</title><content type='html'>&lt;center&gt;&lt;iframe width="425" height="349" src="http://www.youtube.com/embed/Undg0ctszMs?hl=sv&amp;fs=1" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7523512122669467605?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7523512122669467605/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/pilot.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7523512122669467605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7523512122669467605'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/pilot.html' title='Pilot'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/Undg0ctszMs/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3171025567809763937</id><published>2011-10-03T23:07:00.002+02:00</published><updated>2011-10-03T23:08:29.544+02:00</updated><title type='text'>INCOMING!!!</title><content type='html'>I have doubted the "Kill Cutie" idea. A lot. But I shouldn't have; it feels amazing hitting the car at a distance! This could actually be really fun if I tweak it enough. The hard part is probably still going to be getting the graphics good enough but best, but perhaps I can pull back some on that if the game is really well-balanced.&lt;br/&gt;&lt;br/&gt;It's a two player game though. I think I'll make the AI real dumb, but at least it's gotta have some different difficulty levels, but nonetheless I figure it's not going to be something you play on the bus. But then again, people play Angry Birds on the bus... and that's got more similarities to kissing dog poo than it does to surfing Microsoft sites...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3171025567809763937?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3171025567809763937/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/incoming.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3171025567809763937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3171025567809763937'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/10/incoming.html' title='INCOMING!!!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4155024034423549964</id><published>2011-09-30T03:51:00.000+02:00</published><updated>2011-09-30T04:00:18.979+02:00</updated><title type='text'>RESTful Grenades</title><content type='html'>Worked some more on Kill Cutie, mainly fixed a few bugs, tweaked some stuff for iPhone/iPad and added steering for the grenade launcher. It's probably not going to be that bad after all, but it's really difficult to hit the target using a ballistic grenade without propulsion. Plus I'm going to need a lot of graphics coding if I'm going to get away with murder... :-/&lt;br/&gt;&lt;br/&gt;I read up some on &lt;a href="http://en.wikipedia.org/wiki/REST"&gt;REST architech&lt;/a&gt; by Roy Fielding today, since I'm going to use it at work and the concept seems brilliant to me! I've always hated the web, but by "the web" I've always thought more about HTML and browsers than the infrastructure. RESTful systems is the shit, if you ask me!&lt;br/&gt;&lt;br/&gt;So I started studying some C# / .NET / WCF / System.ServiceModel.Web.dll for a couple of hours, but while they all seem pretty thought through they had that typical "framework feel". Big and annoying, where you have to install a huge IDE and an enormous web server, plus configuring the latter, and then some.&lt;br/&gt;&lt;br/&gt;But then I looked at what options Python provides in the RESTful field, and that was worthwhile. I found &lt;a href="http://webpy.org/"&gt;web.py&lt;/a&gt;, which requires download and 15 lines of code and zero configuration to run a RESTful web service. No web server required, a simple one is embedded. web.py is about ~1k lines of code. I still almost get goosebumps on a monthly basis for this scripting language I've been using for the past six years. That's gotta be a good thing, right?&lt;br/&gt;&lt;br/&gt;From now on, when I for instance need a highscore list (or master server or just about anything online, really), I'll definitely use REST/JSON to accomplish that. Thanks Python! Thanks web.py! &lt;a href="http://svenskapython.blogspot.com/2011/09/restful-och-webpy.html"&gt;Mm mm.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4155024034423549964?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4155024034423549964/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/restful-grenades.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4155024034423549964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4155024034423549964'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/restful-grenades.html' title='RESTful Grenades'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2402091008023853682</id><published>2011-09-26T20:19:00.001+02:00</published><updated>2011-09-26T20:19:36.461+02:00</updated><title type='text'>Mock</title><content type='html'>Early conseptual mock (700 lines of code):&lt;br/&gt;&lt;br/&gt;&lt;center&gt;&lt;iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/MhveQVp924g?rel=0" width="560"&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2402091008023853682?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2402091008023853682/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/mock.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2402091008023853682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2402091008023853682'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/mock.html' title='Mock'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/MhveQVp924g/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-861019645764298084</id><published>2011-09-09T13:26:00.003+02:00</published><updated>2011-09-09T13:27:21.155+02:00</updated><title type='text'>On the subject</title><content type='html'>This is probably the TED talk that aligns best with this blog:&lt;br /&gt;&lt;br /&gt;&lt;object height="374" width="526"&gt; &lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true" /&gt; &lt;param name="allowScriptAccess" value="always"/&gt; &lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;param name="bgColor" value="#ffffff"&gt;&lt;/param&gt;&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011G/Blank/TimHarford_2011G-320k.mp4&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/TimHarford-2011G.embed_thumbnail.jpg&amp;vw=512&amp;vh=288&amp;ap=0&amp;ti=1190&amp;lang=eng&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=tim_harford;year=2011;theme=a_taste_of_tedglobal_2011;theme=new_on_ted_com;theme=unconventional_explanations;theme=not_business_as_usual;theme=tales_of_invention;event=TEDGlobal+2011;tag=Business;tag=Culture;tag=creativity;tag=society;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" /&gt; &lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011G/Blank/TimHarford_2011G-320k.mp4&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/TimHarford-2011G.embed_thumbnail.jpg&amp;vw=512&amp;vh=288&amp;ap=0&amp;ti=1190&amp;lang=eng&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=tim_harford;year=2011;theme=a_taste_of_tedglobal_2011;theme=new_on_ted_com;theme=unconventional_explanations;theme=not_business_as_usual;theme=tales_of_invention;event=TEDGlobal+2011;tag=Business;tag=Culture;tag=creativity;tag=society;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;br /&gt;&lt;br /&gt;I also find that it aligns perfectly with how interesting stuff is. On the opposite end we find work that can be performed by a machine.&lt;br/&gt;&lt;br/&gt;I haven't worked anything on Kill Cutie lately, but will soon. It's not going to be very fun I think, but perhaps a few friends could pitch in and improve the idea.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-861019645764298084?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/861019645764298084/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/on-subject.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/861019645764298084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/861019645764298084'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/on-subject.html' title='On the subject'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7277038548824394110</id><published>2011-09-03T01:28:00.001+02:00</published><updated>2011-09-03T01:28:58.288+02:00</updated><title type='text'>Oh the Whizzdom!</title><content type='html'>&lt;a href="http://www.zpub.com/notes/idle.html"&gt;This&lt;/a&gt; is probably the wisest I ever read about society. Truthfully, I haven't read much, if anything, by historical political thinkers. But still. The last part might be a bit fluffy, but I find the document still is valid on modern society some 80 years after it was written. Which to me is huge, put into the context where we so often speak about how "everything" now moves so fast. (Which in turn points out that by "everything" we usually mean technical innovation rather than the important parts of our society.)&lt;br/&gt;&lt;br/&gt;So I'll set a working goal for myself within my game company to be: I'll do less of "altering the position of matter at or near the earth's surface relatively to other such matter" and more of leisure. I want to be a bit like &lt;a href="http://leobabauta.com/ "&gt;Leo&lt;/a&gt; and &lt;a href="http://www.fourhourworkweek.com/blog/"&gt;Tim&lt;/a&gt;, which would help me dodge Parkinson's trap "[w]ork expands so as to fill the time available for its completion." 4h days are going to be such a breeze after 12h dittos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7277038548824394110?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7277038548824394110/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/oh-whizzdom.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7277038548824394110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7277038548824394110'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/oh-whizzdom.html' title='Oh the Whizzdom!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2885180274391930866</id><published>2011-09-01T04:09:00.000+02:00</published><updated>2011-09-01T21:54:25.344+02:00</updated><title type='text'>No progress, thanks Apple!</title><content type='html'>I just got my engine ported so it runs (still have some GL transform errors I haven't looked at yet though). Took me one night due to Apple's total imbecil "CgBI" addition to the PNG format, which they even have a patent pending for. libpng wouldn't read the file, since the chunk was listed as "required to parse". Also, Apple switches RGB(A) order into BGRA and dares to call that "compression". :(&lt;br/&gt;&lt;br/&gt;The solution was not that hard though, once I understood what was up. Xcode 3.2.5, Project menu, Edit active target, Build tab, uncheck "Compress PNG Files".&lt;br/&gt;&lt;br/&gt;If Apple makes some bad decisions after Jobs I'm hoppin' on the mob bandwagon along with Google to shout and spit and watch the demise from the "I never liked them anyway" perspective. I usually like, just not tonight.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2885180274391930866?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2885180274391930866/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/no-progress-thanks-apple.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2885180274391930866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2885180274391930866'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/09/no-progress-thanks-apple.html' title='No progress, thanks Apple!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8667936010691266823</id><published>2011-08-23T23:12:00.000+02:00</published><updated>2011-08-23T23:12:12.794+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bad thought'/><title type='text'>Use the force</title><content type='html'>I wounder if forcing someone else to play the game you want to make could be &lt;a href="http://www.youtube.com/watch?v=A_gKcq9aAh4"&gt;hillarious&lt;/a&gt;. In any way. Think not. Good thought though.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8667936010691266823?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8667936010691266823/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/use-force.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8667936010691266823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8667936010691266823'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/use-force.html' title='Use the force'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6172722871238664783</id><published>2011-08-14T21:46:00.001+02:00</published><updated>2011-08-17T23:22:46.989+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spoiler cutie dies in the end'/><title type='text'>MacWorld</title><content type='html'>I sent out a few tips here and there of my apps. A guy at MacWorld (Sweden) asked me for promo code (smart thing, hadn't heard of it before) and I got him one, to which he replied with an article nominating Tevesilen for &lt;a href="http://macworld.idg.se/2.1038/1.397925"&gt;app of the day&lt;/a&gt;. Good stuff.&lt;br /&gt;&lt;br /&gt;Now I'll pick up my next project again, but in a slow pace. Project name so far has been "Grenade Run", but I came up with "Kill Cutie" during our move; implications of which I don't have to explain. I also cracked another game idea that I know that at least I will love. Hm, might have to get me one of them iPhones after all.&lt;br /&gt;&lt;br /&gt;The best part of it is the App Store and all the direct feedback that I've longed for since I started working as a programmer. With the App Store you make something, try to sell it to customers and get thumbs up or thumbs down. Piece of pie in App Store, but I've never had it anywhere in my professional life in 12 years at the six companies I've worked for. This is the main reason I'm going to start my own business; not today but some day. Insh'Allah.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update:&lt;/b&gt; Sales before and after MacWorld. Too bad it didn't last.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-7RU6PaLPE5E/Tkwwl7dwrUI/AAAAAAAAAI4/M1y7HLvI-H4/s1600/Sales.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="82" width="200" src="http://2.bp.blogspot.com/-7RU6PaLPE5E/Tkwwl7dwrUI/AAAAAAAAAI4/M1y7HLvI-H4/s200/Sales.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6172722871238664783?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6172722871238664783/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/macworld.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6172722871238664783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6172722871238664783'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/macworld.html' title='MacWorld'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-7RU6PaLPE5E/Tkwwl7dwrUI/AAAAAAAAAI4/M1y7HLvI-H4/s72-c/Sales.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5409273313709746402</id><published>2011-08-09T03:14:00.001+02:00</published><updated>2011-08-09T03:14:52.754+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sold some'/><title type='text'>Ahh, that's where sales came from</title><content type='html'>Had some unexpected sales of Tevesilen lately (not a whole lot, but at least 10 units in two days, which is a lot to me, especially given the price). A quick google showed me that "PC för alla" ("PC for everyone") had crowned it &lt;a href="http://pcforalla.idg.se/2.1054/1.396432/ar-det-nagot-bra-pa-tv"&gt;"app of the day"&lt;/a&gt;.  ,]]]&lt;br /&gt;&lt;br /&gt;Hm... I should probably send out press releases for my stuff. Hmhm... Yep, I'll do just that. Some other day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5409273313709746402?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5409273313709746402/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/ahh-thats-where-sales-came-from.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5409273313709746402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5409273313709746402'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/ahh-thats-where-sales-came-from.html' title='Ahh, that&apos;s where sales came from'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-9208472394777498010</id><published>2011-08-08T02:33:00.005+02:00</published><updated>2011-08-08T02:41:45.052+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unpacking a pilot and an AI'/><title type='text'>Status Quo</title><content type='html'>Packed, moved, fixed the plumbing, fixed the heating, unpacked... about 10% of our stuff. Never realized we owned this much junk. During packing I piloted some of my idea on PC. It probably could become a fun game, but I foresee some graphical programming if it's going to be anything but rubbish. First I'll have to unpack the Mac to be able to try out the pilot on iOS, just to make sure ODE and my rendering works.&lt;br /&gt;&lt;br /&gt;Just now I added another AI ("level") for single player Slime Volleyball for iPhone/iPad. I still needed to patch the game, since a bug made it impossible to retry the last level. Also, Psycho Slime was too easy for me eventually, so I wanted some competition. This is actually the first time I play a casual game on a regular basis -- too bad I didn't come up with the idea in the first place.&lt;br /&gt;&lt;br /&gt;I sold about 70 copies of Slime Volleyball in July, which means I only have some 1842.5 left to sell to reach my goal. Every now and then someone buys Tevesilen, but I'd guess it's less than 15 purchases per month. I do get some feature requests for it though. Not gonna happen, ask me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-9208472394777498010?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/9208472394777498010/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/status-quo.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/9208472394777498010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/9208472394777498010'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/08/status-quo.html' title='Status Quo'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7026249784984579564</id><published>2011-07-15T23:53:00.002+02:00</published><updated>2011-07-15T23:59:02.269+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ideas thumpin&apos; in my head'/><title type='text'>More iOS</title><content type='html'>The ease of release (on the App Store) and the fact that I won't have an iPhone in six months makes me rethink my plans. The &lt;a href="http://www.youtube.com/watch?v=TLkQthnPOhQ"&gt;not-very-thought-out toy/game&lt;/a&gt;, which holds no hope of kick-back (timewise or otherwise), has to give way to yet another project (if 3D rendering and physics is feasable). I can't stop thinking of another two-player game, but this time a game of my own.&lt;br /&gt;&lt;br /&gt;This 3D game lets one person control a jeep, the other controls artillery power and angle and... nothing else. One flees, the other shoots. Make it from A to B and the jeep guy's safe. That's it.&lt;br /&gt;&lt;br /&gt;I'll make this one free for PC/Mac too, but they won't get the extras. The basic version is free on the iPhone/iPad, but I'll add in-app purchase for 1) three more vehicles and an extra artillery gun/ammo, 2) three more levels (basic will have only one) and 3) high-score for 1P mode (basic will allow you to view high-score, but not push your own).&lt;br /&gt;&lt;br /&gt;The look will be sorta real but somewhat on the cute side (not too foul though), controls will be digital. Probably with some type of degree indicators on the artillery side. In 2P game (on iOS device), the players will be facing each other, thus I'll try to render the two scenes +90 respective -90 degrees rotated, compared to landscape orientation.&lt;br /&gt;&lt;br /&gt;The thing that I hope will hook you should be the feeling when getting the perfect trajectory and hitting your target at long range. In a couple of weeks I should have time to port my 3D rendering+physics and create a prototype, so it might take a month before I have anything to show. Not counting the moving bit, and vacation... Of course.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7026249784984579564?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7026249784984579564/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/more-ios.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7026249784984579564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7026249784984579564'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/more-ios.html' title='More iOS'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5061100104426505030</id><published>2011-07-09T21:40:00.003+02:00</published><updated>2011-07-09T21:49:14.984+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='buy now'/><category scheme='http://www.blogger.com/atom/ns#' term='pay up'/><category scheme='http://www.blogger.com/atom/ns#' term='yield cash'/><category scheme='http://www.blogger.com/atom/ns#' term='buy hard'/><title type='text'>The Coming Out</title><content type='html'>&lt;a href="http://www.pixeldoctrine.com/"&gt;In stores now!&lt;/a&gt; The iOS version waited for review for six days, was in review for one hour and took four minutes to publish to the App Store. If you have an iPad you have to pay up bro! iPhone not so much, but at least download the free version and beat some friend in a two player game.&lt;br /&gt;&lt;br /&gt;My über-nerdy pals couldn't even keep from playing it for hours on a big screen during a party I went to yesterday. Even the host rather played than socialized, which bodes well. So c'mon what you waitin for?!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5061100104426505030?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5061100104426505030/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/coming-out.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5061100104426505030'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5061100104426505030'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/coming-out.html' title='The Coming Out'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1700071559829966512</id><published>2011-07-08T16:51:00.003+02:00</published><updated>2011-07-08T17:13:57.736+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='frameworks are tired'/><title type='text'>Framework vs. Components</title><content type='html'>There's frameworks, then there's toolkits and then there are components. Some parts of my game engine was built like a framework, sorta like "ifI build it like this, it's impossible to misuse it". Who was I kidding, and who the fuck was I building for? I'm building it for my fuckin self!&lt;br /&gt;&lt;br /&gt;Toolkids are a step down on the ladder, they're smaller and usually doesn't force you into patterns, just into access. I use toolkits to separate GUI stuff (which goes into clients) and non-gui libs (which I probably can compile+run on any Posix system without any work). I like toolkits for this reason, they force me to not accidentally use stuff that I shouldn't touch, or linker errors ensue.&lt;br /&gt;&lt;br /&gt;Components are the royal jewel of code though. They can be used as you want when you want it.&lt;br /&gt;&lt;br /&gt;My friend and boss often tell me to "implement this type of framework", which just as often sends shivers down my spine. Although we often joke about that, I still think it's very important to make the distinction and to use it to your advantage. Even though some frameworks (such as &lt;a href="https://www.djangoproject.com/"&gt;Django&lt;/a&gt;) are incredibly well-written and works amazingly well, I've spent too much time thinking out, mending and developing rubbish frameworks to entertain the idea that a framework could be "perfect if you analyze and design it properly". People use the same reasoning to support agile rather than waterfall, but I'm looking forward to the day when a programming bible arrives which establishes that as a known fact.&lt;br /&gt;&lt;br /&gt;Today is my last day at this job. Hopefully I'll find something fun to do after my vacation, let me know anybody who needs a tired programmer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1700071559829966512?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1700071559829966512/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/framework-vs-components.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1700071559829966512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1700071559829966512'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/framework-vs-components.html' title='Framework vs. Components'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6513445281990323603</id><published>2011-07-06T21:41:00.006+02:00</published><updated>2011-07-06T22:55:22.739+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ahhhhh...'/><title type='text'>SlimeBall waiting for review</title><content type='html'>The (well not my) first game submitted for testing for the App Store. Ahh, walking on sunshine. My web page is updated, ready for launch. :)&lt;br /&gt;&lt;br /&gt;My last app, TeveSilen (utility app, helps rid you of zapping through Swedish television) has currently sold in 27 copies, of which perhaps eight, say ten, are friends of mine which buy it out of pity. Let's try to extrapolate on those figures for SlimeBall: it's ten times as ugly, but five times as addictive, the pissed-off factor is at least three times as high and if we count the song Tingaliin on endless repeat it's doomed to go up by a factor of two. And there is probably a factor 100 people waiting to buy. But then again, an amazingly bad version of Slime Volleyball, and like four other clones, are already on the App Store - some for free. Which is likely to piss people off in the wrong way by a factor 40 (I'm not entirely sure about that factor). This time I'm using price tire 1 instead of 2, which yields a factor five. I've also made a home page for the PC and Mac versions, which are free (and features a button which takes you to the App Store), and that should promote the iPhone version by a factor three. Therefore it follows that&lt;br /&gt;&lt;br /&gt;(27-10) / 10 x 5 x 3 x 2 x 100 / 40 x 5 x 2 = 1912.5&lt;br /&gt;&lt;br /&gt;persons will buy the app, counting both &lt;a href="http://www.rickygervais.com/images/tsott_080611.jpg"&gt;midgets&lt;/a&gt; and the rest of us non-circus people. Translates to 8434.125 SEK after Apple taxes and 10% music royalties to Grotesco, which should pay for about half of my work. Mustn't grumble, since I got most of (my whole?) engine ported to iOS.&lt;br /&gt;&lt;br /&gt;For TeveSilen I tried submitting a free version (named TeveSilen Gott, as in "gratis är gott") to the App Store, but they where like "Noo, we're not taking that shit anymore"! Nowadays they want in-app purchases instead. While in-app purchase looked pretty simple to implement I invested my time elsewhere. Let the cheap fuckers rot! (Danged, just remembered I'm one of them.) I'll do the same this time over.&lt;br /&gt;&lt;br /&gt;Now I'll invest some time in real vacation; no day-time job, no night-time job, the kids promised to sleep til noon... Besides, we'll probably have our hands full since we're moving from our current house to another one in a couple of weeks.&lt;br /&gt;&lt;br /&gt;This autumn, and possibly the rest of my life, I'm going to try to only work a few hours here and there, and be very focused in actually shipping my vehicle toy game and whatever upcoming titles I... come up with. The previous goal was shipping the vehicle toy game before X-mas, but I'm pretty sure that's unrealistic. On the other hand I wouldn't be here if I was a realist anyway, would I? Both the cyber-me and mini-me would have given up in the initial race some thirty years ago, so fuck realism. I'm shippin' now! I'm shippin' for X-mas!... But first: ahhhhh...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6513445281990323603?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6513445281990323603/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/slimeball-waiting-for-review.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6513445281990323603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6513445281990323603'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/07/slimeball-waiting-for-review.html' title='SlimeBall waiting for review'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4608005246587171219</id><published>2011-06-30T03:11:00.004+02:00</published><updated>2011-06-30T03:41:40.360+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deutche tant'/><title type='text'>Vi kallar tanzen Blomman!</title><content type='html'>After a fantastic week's vocation visiting friends in Wärmeland, Uppsala and Stockholm I took a couple of all-nighters to nail the final stuff in the Slime Volleyball, which now is going to become SlimeBall, i.e. if it's free, since Slime Volleyball gets cut off on the iPhone. I just need an icon and I'm done... or so I think. (Thanks Simon for the great improvement with dual thumb steering!) Controls aren't 100%, but I don't think they can be in a fast-paced sports game without tactile feedback.&lt;br /&gt;&lt;br /&gt;I'll run it for a couple of days before I post it on the app store, but I'll probably loose my Mac and iPhone in a week or so, since both are work-related and I'm going on a long vocation+pappaledighet before starting some new job. I also want a port to the iPad in place, even though those controls are going to suck slightly more. I'm going to leave the two-player mode in there on the iPhone version, but you'd have to be deranged in both head and fingers to play 2P on such a small screen.&lt;br /&gt;&lt;br /&gt;Never ceases to amaze me how long time stuff takes. Last few days, after everything was “done”, I&lt;br /&gt;&lt;ul&gt;&lt;li&gt;added two player game support,&lt;/li&gt;&lt;li&gt;changed touch controls to use two fingers instead of one,&lt;/li&gt;&lt;li&gt;added buttons, plus layout (for platforms with window resizing), and made adaptations in the game control flow,&lt;/li&gt;&lt;li&gt;fixed a couple of bugs in the juckie GUI code (it’s thoroughly filled with cut’n’paste code that is never used nor tested not to mention the GUI looks like crap; I didn’t write the code and resent it badly),&lt;/li&gt;&lt;li&gt;fixed proper screen orientation for GUI which took place in GL (graphics) and game code (touch+graphics), added an easier AI level for da n00bs (required a bit of tweaking and tinkering), &lt;/li&gt;&lt;li&gt;fixed a bug on Mac where the OS requires you to not have a full keyboard buffer or stalling will occur,&lt;/li&gt;&lt;li&gt;etc.........&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;It's always more than you think, but now I'm finally at beta minus icon. Hammertime!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4608005246587171219?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4608005246587171219/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/06/vi-kallar-tanzen-blomman.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4608005246587171219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4608005246587171219'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/06/vi-kallar-tanzen-blomman.html' title='Vi kallar tanzen Blomman!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1370342689796560679</id><published>2011-06-12T07:47:00.005+02:00</published><updated>2011-08-08T02:48:40.681+02:00</updated><title type='text'>SlimeBall</title><content type='html'>This is what the controls are going to be like, sorta:&lt;br /&gt;&lt;br /&gt;&lt;iframe width="560" height="349" src="http://www.youtube.com/embed/zbBXd9y5_wU?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;(if you can tell behind the free version banner taking up most of the space). I still hugely suck, but touch controls are actually better than keyboard dittos in some ways, since I increased the accuracy by removing the minimum movement step a human slime can do.&lt;br /&gt;&lt;br /&gt;Got reply from Grotesco comedy crew as well, they said it's OK to use their song as long as they get some royalty if I'm going to sell it. So the free versions for PC and Mac will be free for all, and the iOS versions will cost me some. I suggested 10 %, but I have no idea of what's fair or common. It's a theoretical discussion though I guess, but you never know.&lt;br /&gt;&lt;br /&gt;Now I'll step away from porting for a few days and add two player game support, create the UI, add streaming mp3 capabilities, mash some icons and startup pngs together and so on and so forth. Within a couple of weeks the game should be on my webpage and on the AppStore. From what I could tell, some people were actually asking for someone to port it on some forums. If all of them are &lt;a href="http://sethgodin.typepad.com/seths_blog/2011/06/discovery-free-145.html"&gt;unwilling to pay up&lt;/a&gt;, it's going to be no fun. I'm optimistic though, as it has some traits that might make it a hit.&lt;br /&gt;&lt;br /&gt;If it doesn't sell, it's probably going to be due to lack of (or amazingly ugly) graphics. One the one hand. On the other, it might actually make it stick out. I always get pissed off when people make simple games and earn big bucks, so I've been thinking maybe there's a pissedoffability-factor involved. If I can make people even more pissed off with SlimeBall, I might have a chance! :)&lt;br /&gt;&lt;br /&gt;This new year's I said that 2011 was going to be a great year for us, and so far it's been fantastic! The house is sold, we're looking for another one; the car was stolen but we bought a better one for the insurance money we got; my girlfriend got a new job (she hated her previous one); and my (oh well, the) first AppStore game is going to be released! I'm going to try to make every year this good from now on.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1370342689796560679?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1370342689796560679/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/06/slimeball.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1370342689796560679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1370342689796560679'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/06/slimeball.html' title='SlimeBall'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/zbBXd9y5_wU/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5375442341025473250</id><published>2011-06-09T18:32:00.004+02:00</published><updated>2011-06-09T19:53:41.253+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='here we go again'/><title type='text'>Yet another platform</title><content type='html'>Since porting to C++/Windows, then to Mac, was so easy, the decision to port the tiny game and my engine to the iPhone seemed easy. The engine itself was ported nicely, but the build system took me .5 nights to get in working condition for the app to compile for ARMv6 (excluding certificates, keys and what-have-yous). And last night I hacked away all night trying to compile for iPhoneSimulator. Today I gave up for the time being and created an Xcode project manually which took me an hour.&lt;br /&gt;&lt;br /&gt;I asked Swedish public television and the Grotesco comedy crew if I could use their Tingaliin song in there, we'll see what they say about that. Then I'll implement very simple controls, I think I already know how I'll do it. Also, I'll rip the 2P version (also decompile from Java Applet), and from there I should be close to deployment on iPhone and iPad.&lt;br /&gt;&lt;br /&gt;Feature creep will have it's course though. Perhaps a little sound fx when the ball bounces, at least a minimal UI, but hopefully I'll be able to restrain myself to that. It's fun to get somewhere!&lt;br /&gt;&lt;br /&gt;I think I might have sold less than ten copies of TeveSilen, but with this I'm aiming at 100+ copies sold. When done with the iOS versions I'll post the Win+Mac versions for free on my site; if there are some old fans out there they might chose to buy a copy to their iOS device. Even with no money in it, it still feels better if you think that at least someone is enjoying my port out there. If I get the controls right, it could actually be a hit on the iPad; an even 2P match is really addictive! Wish me luck...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5375442341025473250?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5375442341025473250/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/06/yet-another-platform.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5375442341025473250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5375442341025473250'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/06/yet-another-platform.html' title='Yet another platform'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4400606438654574860</id><published>2011-05-31T02:35:00.003+02:00</published><updated>2011-05-31T02:57:09.972+02:00</updated><title type='text'>Temporary game</title><content type='html'>I got a bit tired of my own game, even though I haven't done anything on it lately. So I'm taking a break. In the mean while I'm porting &lt;a href="http://3dslime.com/oneslime.php"&gt;Slime Volleyball&lt;/a&gt; to PC+Mac. This is what it looks like after two days of reverse-engineering and porting to my engine:&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="390"&gt;&lt;param name="movie" value="http://www.youtube.com/v/3ckvPnatwPs?fs=1&amp;amp;hl=sv_SE"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/3ckvPnatwPs?fs=1&amp;amp;hl=sv_SE" type="application/x-shockwave-flash" width="480" height="390" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;It's too fast for me, I can't keep up with my co-workers or even the crappy NPC. I'll port it to iPhone and iPad, I think. iPad would be the shit for this thing, really. But I don't have one. Think I'll do it nonetheless. Sell it cheap, hope a lotta people wants it! :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4400606438654574860?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4400606438654574860/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/05/temporary-game.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4400606438654574860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4400606438654574860'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/05/temporary-game.html' title='Temporary game'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6559580856349805225</id><published>2011-05-16T22:49:00.005+02:00</published><updated>2011-07-06T22:56:19.597+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='police post'/><title type='text'>Fork and knives in the road</title><content type='html'>My time has lately been consumed by car theft and preparing the house for selling (yey!). That is to say, I haven't been stealing cars, but we've gotten our old Volvo stolen. (To my dismay, just after I discovered it being stolen, I walked into the closed+locked police station, setting off the alarm in the process - only to find out it was no longer a police station, but that's a different post.)&lt;br /&gt;&lt;br /&gt;Game-wise this gives me some time to ponder what direction to take. Thing is I've come to the point where I need to pick what game I want to make. "Vehicle simulation for father and son" - and then what? Over time I've had some ideas:&lt;ol&gt;&lt;li&gt;Excavating land, building walls, levels, elevators, machines, which very quickly gets overly complicated in all aspects (not to mention the steering for the kids, but that's possibly acceptable since only driving around is always an option).&lt;/li&gt;&lt;li&gt;Quest-based "move crate to destination", "pile up stuff here", which could be acceptable but not fabulous.&lt;/li&gt;&lt;li&gt;Mission-based "go there, flip switch, fetch thing, perform stunt, etc., on level 1 to move on to level 2", dull.&lt;/li&gt;&lt;li&gt;Puzzle: "solve how to get out of level x to get to level x+1", hopeless.&lt;/li&gt;&lt;/ol&gt;Perhaps a mix between 2, 3 and 4. Doing that allows me to finish reasonably quick, but also allow me to not earn a single penny. It's a stab worth taking at this unknown market, not the least to finally be able to ship, so I'm going to do something smaller than #1 anyway. Time will tell, hopefully at least this decision doesn't lead to locked doors with alarms that gets me arrested.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6559580856349805225?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6559580856349805225/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/05/fork-and-knives-in-road.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6559580856349805225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6559580856349805225'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/05/fork-and-knives-in-road.html' title='Fork and knives in the road'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2202354320172406540</id><published>2011-05-05T23:48:00.002+02:00</published><updated>2011-05-05T23:51:22.637+02:00</updated><title type='text'>git help</title><content type='html'>I have a hard time remembering stuff. git's syntax is extensive, and can't remember any of it, so I made a &lt;a href="http://lazybones-git.blogspot.com/"&gt;blog&lt;/a&gt; for it. If you want to contribute, pass me a line and I'll get you an account.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2202354320172406540?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2202354320172406540/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/05/git-help.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2202354320172406540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2202354320172406540'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/05/git-help.html' title='git help'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2019646864359463636</id><published>2011-04-27T01:05:00.004+02:00</published><updated>2011-04-27T01:09:39.030+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='intranetz'/><title type='text'>Cyberspace launched</title><content type='html'>I got me a name and launched &lt;a href="http://www.pixeldoctrine.com/"&gt;a site&lt;/a&gt;. I'll have to read up on how to do stuff online, SEO and all that stuff. But foremost I'll keep it simple to download a lite version of the game and simple to buy the full version. When the time comes. Must come up with a name for the game as well. "Gaaah"?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2019646864359463636?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2019646864359463636/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/04/cyberspace-launched.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2019646864359463636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2019646864359463636'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/04/cyberspace-launched.html' title='Cyberspace launched'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-188974135375512722</id><published>2011-04-26T01:15:00.002+02:00</published><updated>2011-04-26T01:35:46.688+02:00</updated><title type='text'>Polishing the Rolls</title><content type='html'>I'm going over the vehicles I've already created and raising their quality. Each needs some extra modelling; looping engine sounds without glitches; an icon for the GUI; detailed tweaks on engine strengths, friction of different parts, joint ranges, child steering adaptation parameters and various rendering options. I thought it would be a quick process, but it takes a couple of hours on each of the mainstream ones; the queer need a lot more, which usually include coding as well. I'm done with half of the current 17 vehicles, only a few won't cut it, I think. The complete game should pack around 20-25 vehicles with varied functions and difficulties.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-188974135375512722?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/188974135375512722/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/04/polishing-rolls.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/188974135375512722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/188974135375512722'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/04/polishing-rolls.html' title='Polishing the Rolls'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-921092034052488754</id><published>2011-04-15T07:44:00.004+02:00</published><updated>2011-04-15T08:14:58.987+02:00</updated><title type='text'>Server sync</title><content type='html'>Struggling with getting app work done, but I almost always end up fixing grisly bugs in the engine. The system is becoming so complex now that it's hard to touch central parts without breaking stuff. My last fixes include better server synchronization. What you see here is two clients (split-screen) where the one on the left shows the physical boundaries of where the server thinks stuff is.&lt;br /&gt;&lt;br /&gt;I always run server/client*, even when running only on localhost, and there's always approx. 2 ms lag between a client and the server (server tells client to stay lag+jitter+1 frame ahead so that packets arrive nicely in time to resolve physics). There are three bugs at play here.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/TLkQthnPOhQ?rel=0" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;ol&gt;&lt;li&gt;A packet loss (due to client packet arriving to late due to overdue timeslice processing) causes a lost movement when the excavator pushes down and "pulls in" the hovercraft beneath it, so when the server informs the others on what has happened, the hovercraft is moved out again.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Due to the small lag, there is some penetration on the remote ends when the excavator tries to hold on to the hovercraft. The penetration exerts a strong force which cause the hovercraft to spin out of control.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;As you see in the end, when I rotate the camera somewhat, there is a jerky movement as the excavator rolls. It is caused by "time compression" as the game tries to run at 30.5 Hz and the video recorder at just below 30. Thus the game sometimes needs to take multiple frames in a single step (stretching the frames in game-time is not a good idea since that breaks what little prediction I can muster), and the client and server steps don't coincide.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;I won't fix these tacky bugs, but #2 is already solved for non-player objects, which is the important part. Perhaps a lot of players wouldn't have liked being held down by the excavator anyway. :)&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" &gt;* I'll talk more on why this is eating up all my time in some other post.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-921092034052488754?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/921092034052488754/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/04/server-sync.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/921092034052488754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/921092034052488754'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/04/server-sync.html' title='Server sync'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/TLkQthnPOhQ/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4583698572799200778</id><published>2011-03-31T02:43:00.003+02:00</published><updated>2011-03-31T03:22:06.752+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='epic-jump-auto-flip'/><title type='text'>Back in the saddle</title><content type='html'>Back from skiing; did me some good I should hope. Though I got a bad scare when I crashed into a tree after an EPIC FAIL jump, but didn't even fracture anything. At the time though I thought I was done for since I was going fast, but hadn't realized how much I had slowed down while skidding the last 20 meters before being airborne 5 meters from the final bump into a small birch. Got lucky with just a bit of muscle ace.&lt;br /&gt;&lt;br /&gt;So instead of spending the last few evenings in the morgue, I have been hacking away. I've gotten two things done: I've add synchronizations to "object attributes" and I added a much-needed auto-flip feature.&lt;br /&gt;&lt;br /&gt;The "object attributes" are currently used on the arbitrary avatars (in this game simply vehicles) to synchronize states such as if the player is a child (which will yield some cuter appearances and somewhat less difficult controls) or if the player is engaged in some type of activity (for instance if in a race time will be shown). I'm also going to use it to allow customizations of various looks.&lt;br /&gt;&lt;br /&gt;The auto-flip is there for when you over and over accidentally flip over during crashes, or when you try out jumps, or when you land the helicopter too hard, or when to take to sharp turns with a truck, or... Oh, you got the picture.&lt;br /&gt;&lt;br /&gt;This is however the last night in yet another couple of months that I'll have time/energy to code. I'm going to be busy fixing up the house, since we finally are going to sell the friggin' thing - YEY, party!, good riddance you fuck*n cunt house! We've survived thus far, but in the past it used to be the closer we get to freedom, the more horrific the vengeance...&lt;br /&gt;&lt;br /&gt;If I'm not heard from in three months time, please take the time to send the prick L.W. who rebuilt Stjärnås 1:28 his little fingers and ears. Thanks!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4583698572799200778?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4583698572799200778/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/back-in-saddle.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4583698572799200778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4583698572799200778'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/back-in-saddle.html' title='Back in the saddle'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-768589882506998252</id><published>2011-03-18T22:34:00.004+01:00</published><updated>2011-03-31T02:42:47.547+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='skiing it is'/><title type='text'>Free Ski</title><content type='html'>YEY! Time for proper vacation! The kids are all handed over to friends and family and the bag is packed. We're off on a skiing vacation in Åre; first time skiing for ten years (break a leg)! Most of the stuff is provided by the company, it's a "conference trip". First time on a &lt;a href="http://www.copperhill.se/"&gt;luxury hotel&lt;/a&gt;, that's not going to suck bad.&lt;br /&gt;&lt;br /&gt;I'm already spoiled, going to bed at 2 am makes me feel like goo when I get up; but once back I'll start working on The Project again. Not looking forward to it particularly, though...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-768589882506998252?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/768589882506998252/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/free-ski.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/768589882506998252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/768589882506998252'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/free-ski.html' title='Free Ski'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3740789182842810709</id><published>2011-03-07T10:32:00.003+01:00</published><updated>2011-03-31T02:42:35.664+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sinus2'/><title type='text'>Sinus is back in town!</title><content type='html'>This time around we'll have a go at my sinuses from another entry (&lt;a href="http://trialepicfail.blogspot.com/2010/10/ive-had-sinus-infection-for-year-and.html"&gt;last time was from the mouth&lt;/a&gt;). It's not up &lt;a href="http://t0.gstatic.com/images?q=tbn:ANd9GcS0G7tZHKU1sMYuYixgv-44FAvJidrVwUPL7mlonCd3MUVEx11Y"&gt;here&lt;/a&gt;, more like &lt;a href="http://www.toffelcenter.com/images/face.jpg"&gt;this&lt;/a&gt;, I suspect. Supposedly very painful, I'll require some more vacation.&lt;br /&gt;&lt;br /&gt;A friend wanted to know if I was interested in helping with porting his old Amiga game from way back to the iPhone. Sounds like fun to work on a project together (tired of working alone), but it will probably take three months to finish. I'll probably do that + port my TV app to dutch, and not resume the my main project for another few months.&lt;br /&gt;&lt;br /&gt;Checked out &lt;a href="http://en.wikipedia.org/wiki/Modafinil"&gt;Modafinil&lt;/a&gt;, but it sounds scary and expensive to buy from some online pharmacy, even though it would improve my mood during development (less sleep is probably not possible :). Oh, well. I'm in no rush anyway...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3740789182842810709?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3740789182842810709/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/sinus-is-back-in-town.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3740789182842810709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3740789182842810709'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/sinus-is-back-in-town.html' title='Sinus is back in town!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8070029017365589966</id><published>2011-03-03T10:31:00.003+01:00</published><updated>2011-03-03T11:00:01.868+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='app store'/><category scheme='http://www.blogger.com/atom/ns#' term='shippin'/><title type='text'>I'm shippin'!</title><content type='html'>The TV filtering app is &lt;a href="http://itunes.apple.com/se/app/tevesilen/id422193300?mt=8"&gt;in the cloud&lt;/a&gt;. Now I'll make a free version linking to the full app in the App Store. I've prepared it with a couple of buttons and a limitation: it only has Swedish channels SVT1&amp;2 and TV3&amp;4.&lt;br /&gt;&lt;br /&gt;It took about eight days for the app to pass the approval tests at Apple. It would be interesting to find out what's going on behind the scenes. And since it's Swedish only, they had to pass (at least some parts of) the test through a knowledgeable guy. When you go through the App Store review you also realize how big a process Apple has in place to ensure the relevance and stability of all the apps out there.&lt;br /&gt;&lt;br /&gt;One more thing I realized, which I guess is very different to the Android Market, is that the App Store is not just a container where you dump your app. It more resembles creating a web site with the accompanying marketing material, searchability, and so on; with the difference that you get all the design (apart from your icon) for free. When you think about it a couple of seconds, anything else would be impertinent - but most of that stuff is so well hidden from the common iPhone App Store user that it tends to slip our minds. Typically Apple.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8070029017365589966?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8070029017365589966/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/im-shippin.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8070029017365589966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8070029017365589966'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/03/im-shippin.html' title='I&apos;m shippin&apos;!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1493746957973636895</id><published>2011-02-24T11:37:00.003+01:00</published><updated>2011-02-24T11:43:53.176+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tevesilen 1.0'/><title type='text'>iPhone app getting there</title><content type='html'>I opted for some higer standards, but the graphics sure didn't come out as nice as I'd hoped, but I don't want to spend more time on it (since it took like four-five times longer to produce than I thought). It's a great tool though, I'll use it 10 seconds per day over the coming years. This is what it looks like:&lt;br /&gt;&lt;br /&gt;&lt;iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/DHMWaDyiX-I?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1493746957973636895?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1493746957973636895/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/02/iphone-app-getting-there.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1493746957973636895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1493746957973636895'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/02/iphone-app-getting-there.html' title='iPhone app getting there'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/DHMWaDyiX-I/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3193599060004821248</id><published>2011-02-03T09:48:00.004+01:00</published><updated>2011-02-03T10:03:49.477+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cruelly busy half-ass'/><title type='text'>Venison App</title><content type='html'>I just saw two big dogs attack and eat a venison alive from my window. If you've ever seen dogs or hyenas prey, you know that nature can be cruel.&lt;br /&gt;&lt;br /&gt;I have been very busy with my paying job lately, so I haven't had time to finish the iPhone TV guide app yet, but it's finished enough to use for personal reasons. It doesn't have any design though, just uses standard looks and components. I realized that they are probably not going to cut it if I want to sell it. Or maybe it will. The purpose of the app is to simplify, straight to the point; but I guess you can both do that and still make it look good in the process. Two options: 1) make some half-ass attempts on graphics, and put it out there (like so many others); or 2) try to make it look better, coder art style. I'm leaning towards no. 1.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3193599060004821248?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3193599060004821248/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/02/venison-app.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3193599060004821248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3193599060004821248'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/02/venison-app.html' title='Venison App'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2800055938055207510</id><published>2011-01-21T03:57:00.002+01:00</published><updated>2011-01-21T04:04:54.639+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Aha'/><category scheme='http://www.blogger.com/atom/ns#' term='so that&apos;s how they make money'/><title type='text'>Small apps</title><content type='html'>I just started working on a side-project, a working TV guide for the iPhone. It took me seven hours to get quarter of an application complete. I had forgotten how nice it is to make stuff that actually is possible to finish! The remaining three quarters will be spent on data structures and communications (!), settings and polish. Then I'll make a demo version and put it on the app store; with any luck you'll be able to buy it within a week. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2800055938055207510?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2800055938055207510/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/01/small-apps.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2800055938055207510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2800055938055207510'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/01/small-apps.html' title='Small apps'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6756258449531881647</id><published>2011-01-10T00:04:00.003+01:00</published><updated>2011-01-10T00:07:43.885+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Port almost there</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_E_o-dRaY2es/TSo_SfijksI/AAAAAAAAAFc/-j4WVqKR7dM/s1600/Sk%25C3%25A4rmavbild%2B2011-01-10%2Bkl.%2B00.03.44.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 156px;" src="http://1.bp.blogspot.com/_E_o-dRaY2es/TSo_SfijksI/AAAAAAAAAFc/-j4WVqKR7dM/s200/Sk%25C3%25A4rmavbild%2B2011-01-10%2Bkl.%2B00.03.44.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5560326276878930626" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I must say I was surprised by how much more there is to porting besides compiling on another platform if you're running home-brew.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6756258449531881647?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6756258449531881647/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/01/port-almost-there.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6756258449531881647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6756258449531881647'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/01/port-almost-there.html' title='Port almost there'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_E_o-dRaY2es/TSo_SfijksI/AAAAAAAAAFc/-j4WVqKR7dM/s72-c/Sk%25C3%25A4rmavbild%2B2011-01-10%2Bkl.%2B00.03.44.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-405310978954691480</id><published>2011-01-02T19:07:00.006+01:00</published><updated>2011-01-02T19:13:41.569+01:00</updated><title type='text'>Pet Sematary</title><content type='html'>The story of our house is more and more looking like a Stephen King novel. Last three days I've been crawling around under it, trying to fix frozen water pipes. In some places the space was just enough to squeeze into, but mostly resembled a coffin. I had Andy Warhol channelized through me to illustrate it:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_E_o-dRaY2es/TSC_IP2qFdI/AAAAAAAAAFU/6Xe1VbJjkwc/s1600/FrozenWaterPipes.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 500px; height: 800px;" src="http://1.bp.blogspot.com/_E_o-dRaY2es/TSC_IP2qFdI/AAAAAAAAAFU/6Xe1VbJjkwc/s1600/FrozenWaterPipes.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5557652088590833106" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;There were also a couple of other things that were a few magnitudes worse, but our lawyer told us not to talk about it. And factually I'd rather not anyway.&lt;br /&gt;&lt;br /&gt;The game development is slowly picking up pace again after the vocation and holidays, but most of the time is spent on the game engine instead of the game itself. There's just too much detail in building a whole game engine, the last few days I spent trying to fix problems that happen when the physics engine is overloaded on slow computers. I still haven't figured out how to fix the problem, just the symptoms (ODE yields stack overflow when a LCP solver function returns)... I don't think I'll regret making the engine, at least I learned it can't (easily) be done well. Learning it the hard way is better than not learning it at all I guess.&lt;br /&gt;&lt;br /&gt;It's tiresome to never see any progress, even though I spend so much time on it so next up, I'll try to create some game features so at least I can see some progress.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-405310978954691480?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/405310978954691480/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2011/01/pet-sematary.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/405310978954691480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/405310978954691480'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2011/01/pet-sematary.html' title='Pet Sematary'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_E_o-dRaY2es/TSC_IP2qFdI/AAAAAAAAAFU/6Xe1VbJjkwc/s72-c/FrozenWaterPipes.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7541241736686152998</id><published>2010-12-10T18:34:00.005+01:00</published><updated>2010-12-10T18:37:28.796+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='epic fail'/><title type='text'>Round=bad, square=good</title><content type='html'>The idea isn't working. You probably can't tell what's going on in this 4x speedup, but rest assure that it would yield a crappy game.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/-uV0u1c5Kxg?fs=1&amp;amp;hl=en_US&amp;amp;rel=0&amp;amp;color1=0x402061&amp;amp;color2=0x9461ca"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/-uV0u1c5Kxg?fs=1&amp;amp;hl=en_US&amp;amp;rel=0&amp;amp;color1=0x402061&amp;amp;color2=0x9461ca" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7541241736686152998?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7541241736686152998/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/12/roundbad-squaregood.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7541241736686152998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7541241736686152998'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/12/roundbad-squaregood.html' title='Round=bad, square=good'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5600837906798918689</id><published>2010-12-07T04:58:00.000+01:00</published><updated>2010-12-07T05:01:44.060+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idea about excavating'/><title type='text'>Sleepwork</title><content type='html'>Woke up a couple of hours ago with some wonderful ideas spinning in my head that will entirely change the direction I’m taking with my game. I’ll post the first and easy part as soon as I have a prototype. Sleeping is working!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5600837906798918689?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5600837906798918689/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/12/sleepwork.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5600837906798918689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5600837906798918689'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/12/sleepwork.html' title='Sleepwork'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3964737545215809953</id><published>2010-12-03T23:31:00.004+01:00</published><updated>2010-12-03T23:45:14.783+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='all play no work'/><title type='text'>American Gothic</title><content type='html'>Weehaa! Just back from a three week trip to the US. There we visited distant relatives in AZ and went sightseeing in CA and NV. We had a blast! And since my girl friends third cousins pack a quite a few toys, we got some rides that’ll inspire a couple of game vehicles:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E_o-dRaY2es/TPlxFVaS54I/AAAAAAAAAFI/41V3oLn-goA/s1600/DSC02375.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://3.bp.blogspot.com/_E_o-dRaY2es/TPlxFVaS54I/AAAAAAAAAFI/41V3oLn-goA/s200/DSC02375.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5546588752544196482" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_E_o-dRaY2es/TPlxE2ARXbI/AAAAAAAAAFA/1YoqxuitnGg/s1600/DSC02313.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_E_o-dRaY2es/TPlxE2ARXbI/AAAAAAAAAFA/1YoqxuitnGg/s200/DSC02313.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5546588744113544626" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_E_o-dRaY2es/TPlxEV0j7SI/AAAAAAAAAE4/EOl8N_M_fHk/s1600/DSC02222.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_E_o-dRaY2es/TPlxEV0j7SI/AAAAAAAAAE4/EOl8N_M_fHk/s200/DSC02222.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5546588735474494754" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;During our vocation I bought "ArcaniA: Gothic 4" at Walmart, and it was very close to as good as Gothic 3 even though publisher JoWood switched developer from Pirhana Bytes to Spellbound. &lt;a href="http://images.google.com/images?q=arcania"&gt;Graphics are even better&lt;/a&gt;, bugs are fewer, but the liberating freedom (causing most of the bugs?) is somewhat reduced. Nonetheless, this is still one of the best games around, so I can strongly recommend it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3964737545215809953?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3964737545215809953/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/12/american-gothic.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3964737545215809953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3964737545215809953'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/12/american-gothic.html' title='American Gothic'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E_o-dRaY2es/TPlxFVaS54I/AAAAAAAAAFI/41V3oLn-goA/s72-c/DSC02375.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1771811039780813469</id><published>2010-10-28T22:53:00.004+02:00</published><updated>2010-10-28T22:55:55.950+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='the red just got huger'/><title type='text'></title><content type='html'>Just found &lt;a href="http://www.minecraft.net/"&gt;the most intriguing game&lt;/a&gt;, in principle developed by a single programmer over a year. According to public figures available on the web page, he claims to have sold .5 M copies of the game (alpha version) for €10 a piece. I find that to be a shitload of money for a game developed by one indie guy in one year!&lt;br /&gt;&lt;br /&gt;That makes me rethink my strategy. Before, I always thought I’d make my first project a small toy on top of a big engine, so that I could start working on the real deal right away after that. (I call it “toy”, since I thought I’d mostly skip having “goals” or “requirements”.) But what I’m thinking now is that I’ll make this game great, add some building features and create a few lax and optional goals around that.&lt;br /&gt;&lt;br /&gt;Sure, my game won’t be nearly as good at building/editing that Minecraft is, which is going to make a huge difference in popularity and profit, but now I’m thinking I won’t stop until it makes me at least a little bit of money. I’ll have to shift my focus from making a game for three-year-old imbeciles to adult wannabes, but as I’ve stated before many times, I’m already halfway there due to poor judgment.&lt;br /&gt;&lt;br /&gt;Now I have a year instead of four or so months left. As sad as that may be, it is an improvement from something sadder. Either that or epic fail, time will tell. I couldn’t resist graphing it out:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_E_o-dRaY2es/TMnix_rRAfI/AAAAAAAAAEo/LbSP0cbXmoY/s1600/nooooooo.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 86px;" src="http://4.bp.blogspot.com/_E_o-dRaY2es/TMnix_rRAfI/AAAAAAAAAEo/LbSP0cbXmoY/s200/nooooooo.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5533202965735735794" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1771811039780813469?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1771811039780813469/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/10/just-found-most-intriguing-game-in.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1771811039780813469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1771811039780813469'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/10/just-found-most-intriguing-game-in.html' title=''/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_E_o-dRaY2es/TMnix_rRAfI/AAAAAAAAAEo/LbSP0cbXmoY/s72-c/nooooooo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6189596308777375498</id><published>2010-10-21T12:28:00.003+02:00</published><updated>2011-03-07T10:34:50.108+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pain in the NAT'/><title type='text'>NAT and sinuses</title><content type='html'>I’ve had a sinus infection for a year, and the cause proved to be a cyst that grew in my upper jaw, just above a tooth. It is truly interesting how differently one reacts when thinking “dental surgery” and when the surgeon tells you “we’ll be making a ‘window’ about here [pointing to your cheek bone]”. So I just got me a window in my cranium. That was nice. In fact it was &lt;a href="http://www.studiodentisticovalenti.com/img/cisti1-2.jpg"&gt;wonderful&lt;/a&gt;! Made me feel special; ‘how many get this kind of treatment’, right? Since they weren’t able to plug the hole between my mouth and the sinus with the small price of bone they removed in order to access the cyst, I’m gonna get soup in my eye every time I eat for the next few weeks until the skin heals (is the organ covering your gums called "skin"?).&lt;br /&gt;&lt;br /&gt;Regarding NAT traversal, I finished it a week ago. In the form I’ll ship, that is. Now there are no biggies left engine-wise that needs my attention. Sure there’ll be a bit of camera collision, physical joint network synchronization, porting and bug fixing; but apart from that I’m done engine-wise!&lt;br /&gt;&lt;br /&gt;I can feel the anesthesia going away, soon time for painkillers, yey!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6189596308777375498?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6189596308777375498/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/10/ive-had-sinus-infection-for-year-and.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6189596308777375498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6189596308777375498'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/10/ive-had-sinus-infection-for-year-and.html' title='NAT and sinuses'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6838835135118678332</id><published>2010-10-02T01:38:00.010+02:00</published><updated>2010-10-21T12:34:44.018+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='I am white trash'/><title type='text'>Hard work</title><content type='html'>&lt;div style="text-align: left;"&gt;My neck has improved a bit. Received a treatment from friend who is an osteopath; I can recommend that. One of the things I’ve done lately is to &lt;a href="http://3.bp.blogspot.com/_E_o-dRaY2es/TKZ225WXoFI/AAAAAAAAAEY/f_I_yFLL1rM/s1600/DSC02052_r.JPG"&gt;&lt;img src="http://3.bp.blogspot.com/_E_o-dRaY2es/TKZ225WXoFI/AAAAAAAAAEY/f_I_yFLL1rM/s200/DSC02052_r.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5523232678496149586" style="cursor: pointer; width: 150px; height: 200px; " /&gt;&lt;/a&gt;. But most of all I &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_E_o-dRaY2es/TKZyRSP6CAI/AAAAAAAAAEA/r64T7NrqVD8/s1600/DSC02105.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_E_o-dRaY2es/TKZyRSP6CAI/AAAAAAAAAEA/r64T7NrqVD8/s200/DSC02105.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5523227634298390530" /&gt;&lt;/a&gt; and &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E_o-dRaY2es/TKZyRBLd6HI/AAAAAAAAAD4/ftHqJvadSEA/s1600/DSC02124.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://2.bp.blogspot.com/_E_o-dRaY2es/TKZyRBLd6HI/AAAAAAAAAD4/ftHqJvadSEA/s200/DSC02124.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5523227629716367474" /&gt;&lt;/a&gt; due to &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E_o-dRaY2es/TKZyRtZclKI/AAAAAAAAAEI/qqlcpR2D3_o/s1600/DSC02045.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://3.bp.blogspot.com/_E_o-dRaY2es/TKZyRtZclKI/AAAAAAAAAEI/qqlcpR2D3_o/s200/DSC02045.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5523227641586160802" /&gt;&lt;/a&gt;, which is shitty since it was caused by the former owner not knowing anything about how to build. Not having a bathroom or a toilet when having a gazillion kids is certainly no dream. And if you’re logistically challenged like me, my advice is don’t go there! Oh, well; what feels sad for a first world family when endured indoors in for a month, &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E_o-dRaY2es/TKZz9nGv-dI/AAAAAAAAAEQ/aMUwuMOOb2o/s1600/DSC02125.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://2.bp.blogspot.com/_E_o-dRaY2es/TKZz9nGv-dI/AAAAAAAAAEQ/aMUwuMOOb2o/s200/DSC02125.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5523229495322999250" /&gt;&lt;/a&gt;, possibly feels sadder for a third would family when endured outdoors for a couple of years, &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://newsimg.bbc.co.uk/media/images/41508000/jpg/_41508068_quake_416afp.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 416px; height: 300px;" src="http://newsimg.bbc.co.uk/media/images/41508000/jpg/_41508068_quake_416afp.jpg" border="0" alt="" /&gt;&lt;/a&gt;?&lt;/div&gt;&lt;div&gt;Or at least that’s what I tell myself when I breath in mold, having to cough up 100 kSEK/$15 k to get it fixed - in the mean while having to piss in plain sight of our neighbors.&lt;br /&gt;&lt;br /&gt;I also spent a few hours coding on the game, but I awkwardly invested them in fiddling with shaders instead of what I should be doing (which is NAT traversal):&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_E_o-dRaY2es/TKZ8r3nfqhI/AAAAAAAAAEg/EM2lK3M9qio/s1600/Shaders.png"&gt;&lt;img src="http://3.bp.blogspot.com/_E_o-dRaY2es/TKZ8r3nfqhI/AAAAAAAAAEg/EM2lK3M9qio/s200/Shaders.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5523239086122314258" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 200px; height: 129px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The front part uses shaders, the rear does not. Not to worry, I’ll take care of the NAT traversal soon enough. Unless the house gets me first. Has me by the bullocks.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6838835135118678332?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6838835135118678332/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/10/hard-work.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6838835135118678332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6838835135118678332'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/10/hard-work.html' title='Hard work'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E_o-dRaY2es/TKZ225WXoFI/AAAAAAAAAEY/f_I_yFLL1rM/s72-c/DSC02052_r.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3922714214443867553</id><published>2010-09-21T23:20:00.001+02:00</published><updated>2010-09-21T23:22:17.501+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='facism'/><title type='text'>Demands will stop being taboo</title><content type='html'>Jimmy and his crew have been voted into Parliament. Tjaa-lalala-laah! (OMG. Heil!) Without contemplating on it prior to election, I figured “what the heck – at least the other parties might start discussing immigration problems”. And I still think that. Even though the dimwits in SD can’t contribute themselves, I’m thinking that merely the fact that 6 % of the Swedes wants to see stricter regulations will help propel some ideas to solve integration issues.&lt;br /&gt;&lt;br /&gt;It didn’t take long for me, and most who hadn’t thought about it before, to realize the downsides. No one sane can vote for Höör municipality candidate Ibb Malmgren who clams it’s our duty to defend our white culture, “Although first we have to take care of all the obstacles in the way, such as Jews, immigrants, Mona Sahlin, etc”. Or municipality candidates such as Christian Hendlertz, Anneli Thörnquist and Isak Nygren who two years ago where active in Nazi movements. At least Mats Thuresson stays semi-true: “one should lye so it sounds likely” (on his slogan “one million Muslims live off of welfare”). And of course having neo-Nazis close to power in our country, who also rather look for differences than similarities in people, will lead to a harder climate. Not for me, but for people who leave their homes and cultures, fleeing for their lives. Last and least the risk of declining economic stability when having a minority government; this in turn will cause further problems for those at the bottom of our society.&lt;br /&gt;&lt;br /&gt;So everybody (sane) knows all about the drawbacks. But what are the advantages? Well, I hope that future integration comes closer to assimilation. We don’t want a new multicultural Baghdad here. If we wanted extremists detonating bombs in our country we could have devised expedient schools. Bad jokes aside, I think most Swedes enjoy living in a country full of queues, order, silence, hygiene, clouds, regulation and stiffness. Justifies going to Thailand twice a year. One of the most-referred examples of “good” immigration is the wave of Hungarians who came here in 68-69. It was good since they all became assimilated. Started working like Swedes. No welfare there. I even have one next door. Apart from the accent and the mythomania, he is just like everyone else. If you disagree on the assimilation part you should pick up all the gypsies you can find in your town center (try Nordstan if you’re nearby), loan them a tent in your backyard and come back in a week.&lt;br /&gt;&lt;br /&gt;Hopefully there will also be some qualifying requirements on both immigrants and refugees before being granted citizenship. Some minimum levels of demands are good. What would a home be without basic rules? What would work be? School? Look at what’s happened to our school system the last 20 years. At least now, leftists will have a hard time &lt;a href="http://static.sr.se/laddahem/podradio/SR_ring_p1_100819110011.mp3"&gt;calling serious politicians racists&lt;/a&gt; when there are seriously racist politics under the same roof.&lt;br /&gt;&lt;br /&gt;I think people in Malmö mostly voted for SD out of immigration reasons, while others game SD their votes due to general dissatisfaction. I blame the socialists for giving room for SD for both of the stated reasons. The reason I do that is that it people from that movement increasingly have made demands in general taboo and demands on immigrants nothing less than acts fascism. At least that will change now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3922714214443867553?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3922714214443867553/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/09/demands-will-stop-being-taboo.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3922714214443867553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3922714214443867553'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/09/demands-will-stop-being-taboo.html' title='Demands will stop being taboo'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8738900421707465017</id><published>2010-09-02T10:46:00.003+02:00</published><updated>2010-09-02T10:49:51.092+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='work less earn more'/><title type='text'>Not born in the U.S.A. (thank god)</title><content type='html'>An average American IT worker does &lt;a href="http://www.readwriteweb.com/enterprise/2010/08/it-workers-motivation-at-a-10.php"&gt;71 hours a week&lt;/a&gt;. That’s more than I do; plus I get to spend a big part of that on my own thing. For me, suddenly, working in the States for a year or so got a lot closer to fiction.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8738900421707465017?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8738900421707465017/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/09/not-born-in-usa-thank-god.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8738900421707465017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8738900421707465017'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/09/not-born-in-usa-thank-god.html' title='Not born in the U.S.A. (thank god)'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7790958234416359833</id><published>2010-09-01T21:15:00.004+02:00</published><updated>2010-10-02T01:31:01.596+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nat'/><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='tit'/><category scheme='http://www.blogger.com/atom/ns#' term='bat'/><category scheme='http://www.blogger.com/atom/ns#' term='scat'/><title type='text'>Bad back, good repo backing</title><content type='html'>I’ve always gotten along fine with my bodily functions, but lately most of them have been pushed aside by the sitting function, and that’s starting to hurt the others. So I’ll have to take a small break from this project to let the inflammation in my neck heal.&lt;br /&gt;&lt;br /&gt;I transitioned to git some 1.5 years ago. Git’s my tit. One week ago we moved over to git in my day-job. Which paid off today, since our business center was offline. With ol’ SVN we couldn’t have done jack, but with git we just continued working as normal (i.e. as “normal” as can get without teh internetz).&lt;br /&gt;&lt;br /&gt;To me, git is a great system for techies. The basics are easy to learn and you quickly reap the benefits. And if you dig deeper into the rabbit hole you’ll find a Wonderland of fantastic opportunities to fiddle with your, or someone else’s, repository. I haven’t really managed to trash something seriously yet, but I guess it’s a matter of time.&lt;br /&gt;&lt;br /&gt;When I pick up programming again I’ll produce NAT traversal code. I know what you’re thinking. I’m thinking it too. But it’s not going to be that bad. Not for you or your neck anyway.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7790958234416359833?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7790958234416359833/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/09/bad-back-good-repo-backing.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7790958234416359833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7790958234416359833'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/09/bad-back-good-repo-backing.html' title='Bad back, good repo backing'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7593308425676612993</id><published>2010-08-28T07:57:00.003+02:00</published><updated>2010-09-01T21:17:55.336+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='one step fwd two steps back'/><title type='text'>Network physics</title><content type='html'>I just added a required, but nonetheless groovy, feature. When the client vehicle touches any other object, physics simulation breaks down because network latency (or even localhost latency) causes the objects' positions, velocities and accelerations to diverge from what the remote end thinks is going on. This pretty soon evolves to deep penetration of the solid bodies within ODE (the physics engine I'm using), which yields a jerky look-and-feel. I used &lt;a href="http://gafferongames.com/"&gt;this man's&lt;/a&gt; grand ideas on how to resolve the issue: the client temporarily gets simulation ownership from the server of objects that it collides with.&lt;br /&gt;&lt;br /&gt;Every time the clients transmits its vehicle state it also needs to transmit all objects that it has simulation ownership for, otherwise the inconsistencies cause penetration. And there are of course a number of such boundary conditions which cause ulcer and headache and probably bad teeth too. Surely bad breath. Loss of sleep, you name it.&lt;br /&gt;&lt;br /&gt;This is the third out of four nights that I spend programming instead of the standard behavior. The dizziness is getting better; perhaps I could become some kind of expert on how to resist torture! I'd get a job training SAS special forces or perhaps some executive duty within the Pentagon. What to do with all that dough? Nah, I probably would just spend it on worldly things.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7593308425676612993?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7593308425676612993/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/i-just-added-required-but-nonetheless.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7593308425676612993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7593308425676612993'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/i-just-added-required-but-nonetheless.html' title='Network physics'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8478069653024850520</id><published>2010-08-17T23:36:00.004+02:00</published><updated>2010-08-17T23:44:30.628+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UFOs'/><category scheme='http://www.blogger.com/atom/ns#' term='flying saucers'/><category scheme='http://www.blogger.com/atom/ns#' term='Ximbaltughzxitzx'/><title type='text'>They're coming!</title><content type='html'>Everybody who’s ever flown a flying saucer, or Ximbaltughzxitzx as they prefer to call it, knows that it is light, fast and stable. This does of course not prevent it from now and again accidentally, and ever so gently, touch the ground. The race route for this type 'o thing is going to be wicked!&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/YqAIzEEVr4U?fs=1&amp;amp;hl=en_US&amp;amp;rel=0&amp;amp;color1=0x5d1719&amp;amp;color2=0xcd311b"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/YqAIzEEVr4U?fs=1&amp;amp;hl=en_US&amp;amp;rel=0&amp;amp;color1=0x5d1719&amp;amp;color2=0xcd311b" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8478069653024850520?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8478069653024850520/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/theyre-coming.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8478069653024850520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8478069653024850520'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/theyre-coming.html' title='They&apos;re coming!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1753951139687318534</id><published>2010-08-04T03:16:00.007+02:00</published><updated>2010-10-02T01:34:50.538+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ma gawd game dev is painstakingly sloooooooow'/><title type='text'>Slowmobile</title><content type='html'>A year has passed between start and finish of the following clip. Damn game development is slow and nasty and hairy. And fishy.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/-jz1QTnaO70&amp;amp;hl=en_US&amp;amp;fs=1?rel=0&amp;amp;color1=0x5d1719&amp;amp;color2=0xcd311b"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/-jz1QTnaO70&amp;amp;hl=en_US&amp;amp;fs=1?rel=0&amp;amp;color1=0x5d1719&amp;amp;color2=0xcd311b" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;I’m pretty sure you won’t notice (though I’m pretty sure you would if it wasn’t there) but I added a bit of main engine throttle whenever the digger is used. I simply connected the sound source to three different engines (fwd/back, turn and “hydraulics”). The vehicle is produced from an .ma file (Maya ASCII model) and an .ini text file. The .ini contains physical settings such as mass, friction, bounce, spring constants, engines type, strength and speed; and UI stuff such as sounds, eyes and break lights. I’m very pleased with this simple, concise configuration file that is analyzed build-time as opposed to some type of scripting language which would have had to interface with my code and in itself would contain hundreds of source files. This is what the above excavator main engine sound looks like:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;[tag:main_engine_sound]&lt;br /&gt;type         = "engine_sound"&lt;br /&gt;float_values = [1,2,1,   1,5,1,   0,0.5,1, 1,0.2,0.12] ; Low, high, exponent for: pitch, volume, intensity. One intensity factor for each engine.&lt;br /&gt;string_values = ["excavator_engine.wav"]&lt;br /&gt;phys_list     = [".*phys_body"]&lt;br /&gt;engine_list   = [".*engine:acc", ".*engine:turn", ".*engine:arm"]&lt;br /&gt;mesh_list     = [] &lt;/pre&gt;&lt;br /&gt;I find it condensed, plus it’s got very low coupling. Even if I didn’t touch it in a few years, I’m pretty certain that I’d pick it up in a few minutes. The regexps in the engine list each point out one engine (defined above in the same file). The last of the &lt;span class="Apple-style-span" style="font-family: monospace; font-size: 13px; white-space: pre; "&gt;float_values &lt;/span&gt;tells the sound code how much to raise the sound volume and pitch when the digger is run at full force. The first six of the &lt;span class="Apple-style-span" style="font-family: monospace; font-size: 13px; white-space: pre; "&gt;float_values &lt;/span&gt;are (in order): 1:1 sound pitch at idle engine, 2:1 sound pitch at full throttle, linear pitch curve (exponent=1), 1:1 volume at idle engine, 5:1 volume at full throttle, volume is also linear.&lt;br /&gt;&lt;br /&gt;Where was I? Ah, back to the excavator. The result is a slight main engine rev when using the digger. I allow myself some special-casing, or hacking if you will, in these occasions: gyro engines (such as rotors) and auto-locking torque engines (such as “hydraulics”) only respond to what I call engine intensity, never directly to user throttle. In a normal car engine, I do &lt;span class="Apple-style-span" style="font-family: monospace; font-size: 13px; white-space: pre; "&gt;INTENSITY x THROTTLE &lt;/span&gt;(and slide the throttle a little to simulate engine inertia). If the hydraulics engine would use the throttle factor to generate sound intensity, you wouldn’t get any sound if the digger is moving, but the button isn’t pressed. Which happens a lot since the engine is configured to “auto-lock”, i.e. hold the last input force.&lt;br /&gt;&lt;br /&gt;I might be overdoing it, but I feel that without this type of polish the game is never going to shine. I’m constantly striving towards simulation rather than arcade, though the end-user at the age of three hardly will appreciate it (quite the contrary).&lt;br /&gt;&lt;br /&gt;I’m a unsure of exactly how much time I’ve spent on this type of thing as opposed to making a fun game, but a reasonable guess could be 10:1 in favor of the unreasonable. I probably am afraid of shipping (as &lt;a href="http://sethgodin.typepad.com/"&gt;Seth&lt;/a&gt; would have put it), but it’s more to it than that. I want it to be remarkable. Hum… probably have to realize that the more time I put into making it a simulator, the less remarkable the outcome. I’ll try to realize that in the coming year + two weeks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1753951139687318534?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1753951139687318534/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/slowmobile.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1753951139687318534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1753951139687318534'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/slowmobile.html' title='Slowmobile'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8381688046242385447</id><published>2010-08-03T13:34:00.004+02:00</published><updated>2010-08-03T13:43:39.094+02:00</updated><title type='text'>Conserved ham and stock in tin cans</title><content type='html'>I laughed 'til I cried once I started to understand exactly &lt;a href="http://www.rockpapershotgun.com/2010/08/02/the-harm-of-gaming-we-present-the-facts/"&gt;how difficult pie charts are to understand&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8381688046242385447?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8381688046242385447/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/conserved-ham-and-stock-in-tin-cans.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8381688046242385447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8381688046242385447'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/08/conserved-ham-and-stock-in-tin-cans.html' title='Conserved ham and stock in tin cans'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3705230017254878338</id><published>2010-07-26T04:05:00.002+02:00</published><updated>2010-07-26T04:08:57.007+02:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_E_o-dRaY2es/TEzt3CQCp9I/AAAAAAAAADg/NMFWt5awsz0/s1600/corvette.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 128px;" src="http://1.bp.blogspot.com/_E_o-dRaY2es/TEzt3CQCp9I/AAAAAAAAADg/NMFWt5awsz0/s200/corvette.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5498030774865274834" /&gt;&lt;/a&gt;&lt;br /&gt;Thank you 3DM&lt;sup&gt;3&lt;/sup&gt; for hosting a forum for &lt;a href="http://www.3dm3.com/modelsbank/"&gt;free models&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3705230017254878338?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3705230017254878338/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/thank-you-3dm-3-for-hosting-forum-for.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3705230017254878338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3705230017254878338'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/thank-you-3dm-3-for-hosting-forum-for.html' title=''/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_E_o-dRaY2es/TEzt3CQCp9I/AAAAAAAAADg/NMFWt5awsz0/s72-c/corvette.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6130426544643485742</id><published>2010-07-17T07:56:00.005+02:00</published><updated>2010-07-17T08:05:08.745+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ja-yo'/><category scheme='http://www.blogger.com/atom/ns#' term='vinden har vänt'/><title type='text'>Poking 'round the bush</title><content type='html'>I just finished my last two major features required to make the game: spawn engines and “mass objects” (such as bushes or flowers). As of now, I only use the spawn engines to create some physics toys in random positions; but just as I had hoped the flowers add a sense of direction and speed (thereby making it a lot easier to fly the chopper).&lt;br /&gt;&lt;br /&gt;And yes, I will add some crashing noise when I detect heavy metal collisions.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object height="385" width="480"&gt;&lt;param name="movie" value="http://www.youtube.com/v/VNmeFgrIr34&amp;amp;hl=sv_SE&amp;amp;fs=1?rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/VNmeFgrIr34&amp;amp;hl=sv_SE&amp;amp;fs=1?rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Each “plant” is placed on the terrain using the mesh/ray collision code of physics engine, each size and direction randomized and batched into a grid. I use a 7x7 grid here, and fade batches depending on distance. Each batch is generated using a pseudo-random seed that is created from the grid position.&lt;br /&gt;&lt;br /&gt;Now it’s time for sleep and proper vocation. No more all-nighters for a few weeks - yum!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6130426544643485742?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6130426544643485742/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/poking-round-bush.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6130426544643485742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6130426544643485742'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/poking-round-bush.html' title='Poking &apos;round the bush'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3178066307251452771</id><published>2010-07-09T00:09:00.004+02:00</published><updated>2010-07-09T00:44:48.327+02:00</updated><title type='text'>Hungry</title><content type='html'>Today I didn’t eat. According to Wikipedia (and the FAO), starvation impacts lives of billion people, one in six. Half of the children that die do it from malnutrition. Me being slightly hungry does of course not affect that in any way at all, but gave me an opportunity to think about what I should do. The ol’ brain was muddier than normal - lacking the normal constant energy input - but it helped to pick up the topic a few times when my mind otherwise would have slipped into nothingness. Everything that allows for diversions from 1st world problems, mortgages, house warming parties, lumbago, career advancements, burglars and so forth, is a good thing if you ask me. How many of the one thousand million people starving devote any thought to H1N1?&lt;br /&gt;&lt;br /&gt;But thinking is not enough. Neither is saying. What have you done lately (apart from the monthly $10 to Save the Children)? If you feel like your actions/donations are long over due, what better time than now?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3178066307251452771?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3178066307251452771/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/hungry.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3178066307251452771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3178066307251452771'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/hungry.html' title='Hungry'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8205301389192220700</id><published>2010-07-01T03:36:00.004+02:00</published><updated>2010-07-01T03:54:13.117+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='I&apos;m still an idiot'/><title type='text'>Mission to M'arse</title><content type='html'>I got stuck on a totally &lt;a href="http://stackoverflow.com/questions/3135941/3d-triangulation-algorithm"&gt;idiotic mission&lt;/a&gt; to slightly improve the Maya importer in order to ensure that the whole import process would require no manual steps at all. My conclusion after two nights without sleep is to leave that tiny manual step to the modeler. Trial and epic fail - YEAH!&lt;br /&gt;&lt;br /&gt;Apart from that I’ve been moving the in-game logic over to the server side and made a few tweaks here and there. I also had to improve the logging filters to be able to gather more information on why some in-game rule objects were misbehaving. Oh, and I started adding spawn areas for various stuff which are imported into the game (but not yet used). Most of this could be said to belong to the engine rather than the game. I didn’t foresee the need of these, but when they’re done I’ll go straight to content again.&lt;br /&gt;&lt;br /&gt;Content-wise I made a few small things already. I’m meeting with a deadline in two days... I’ll keep this blog posted.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8205301389192220700?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8205301389192220700/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/i-got-stuck-on-totally-idiotic-mission.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8205301389192220700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8205301389192220700'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/07/i-got-stuck-on-totally-idiotic-mission.html' title='Mission to M&apos;arse'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1245603912198330888</id><published>2010-06-18T11:43:00.004+02:00</published><updated>2010-06-18T12:41:43.107+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Time to go to work'/><title type='text'>Vocation's over!</title><content type='html'>I took one week of "vocation" and another one socializing, planning and executing a bachelor party and being ill. Yesterday I fixed (motor) sound configurability, and dropped the previously hard-coded stuff.&lt;br /&gt;&lt;br /&gt;Each vehicle gets three settings each for pitch, volume and intensity: &lt;em&gt;exponent&lt;/em&gt;, &lt;em&gt;low&lt;/em&gt; and &lt;em&gt;high&lt;/em&gt; value. The &lt;em&gt;exponent&lt;/em&gt; is used on the motor "activity" which rage from zero to one. Then I linear interpolate the resulting value between &lt;em&gt;low&lt;/em&gt; and &lt;em&gt;high&lt;/em&gt;. Pitch and volume are obvious, but the intensity I haven't really figured out yet. What I want from it is that if you put the pedal to the metal, you'll get a more hollow sound. Ideally, you'd be able to hear the slurping from the engine. :)&lt;br /&gt;&lt;br /&gt;Since there's always holes to fill, I also spent a couple of hours trying to get the elevators to behave. Elevators are constructed from slider joints and they had some problems when full force was applied to the physical elevator when close to an end-point of the slider joint.&lt;br /&gt;&lt;br /&gt;But generally things are comming together. Apart from minor features, this means the game engine is finished (for now). I'll start making a vertical cut through the game and implement at least two of each thing, then try it out. Hope it gets more fun to play with content! All content I make from now on will be intended for production, testing is over. It will be very interesting to see exactly how much is missing from the engine, as I expect to find a lot of loopholes when digging in for real.&lt;br /&gt;&lt;br /&gt;Some of the things I know I'm going to make very lame, or extremely lame, are:&lt;ul&gt;&lt;li&gt;Networking (lossless UDP protocol is a pain)&lt;/li&gt;&lt;li&gt;Chatting is cut out, since networking is going to suck&lt;/li&gt;&lt;li&gt;Menus/controls for setting up advanced input devices&lt;/li&gt;&lt;li&gt;Access violation/program crash recovery&lt;/li&gt;&lt;/ul&gt;I'm really looking forward to making a game now, I've spent such enormous amounts of time on the game engine for years now that this feels like a big leap forward for me. I'm also curious to see if I can produce fun content. It's not &lt;a href="http://www.youtube.com/watch?v=MEMxSUGZ6TU"&gt;as easy as it looks&lt;/a&gt;, and it looks far from easy. Vocation's over!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1245603912198330888?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1245603912198330888/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/06/vocations-over.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1245603912198330888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1245603912198330888'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/06/vocations-over.html' title='Vocation&apos;s over!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3286554133563985073</id><published>2010-05-31T02:21:00.004+02:00</published><updated>2010-05-31T02:26:14.171+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='One to go'/><title type='text'>Aromatic textures</title><content type='html'>Yesterday my girlfriend cooked a garam masala curry to die for. Today I therefore crowned myself “Count Flatula” when nearly killing my family. My four-year-old wouldn’t even allow me into his room. I also spent four hours splitting wood. (Arghhh!) Unfortunately all good things must come to an end, including both my proctologic cunnings as well as my lumberjack ambitions.&lt;br /&gt;&lt;br /&gt;I also import textures from Maya now. Here’s a sample of what’s going to be a vehicle selection menu:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_E_o-dRaY2es/TAMBruKtxcI/AAAAAAAAADY/v2hBM4RVeZ8/s1600/life_menu.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 99px;" src="http://1.bp.blogspot.com/_E_o-dRaY2es/TAMBruKtxcI/AAAAAAAAADY/v2hBM4RVeZ8/s200/life_menu.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5477223422451631554" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Texture import includes, but is not limited to, shader settings. Such as blending on/off. It’s not going to challenge Pixar any time soon, but tech is getting closer to finished:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_E_o-dRaY2es/TAMBcge9bUI/AAAAAAAAADQ/Td5u2LTIHdQ/s1600/monster_02_with_eyes.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 160px;" src="http://1.bp.blogspot.com/_E_o-dRaY2es/TAMBcge9bUI/AAAAAAAAADQ/Td5u2LTIHdQ/s200/monster_02_with_eyes.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5477223161080409410" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I’ll do similar things with imports of sound settings in terms of volume, min/max pitch, reverb related to engines, collision/friction triggers, yadda yadda. When that’s done, I only have bug fixing, game programming and content left. Only. Count Flatula out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3286554133563985073?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3286554133563985073/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/aromatic-textures.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3286554133563985073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3286554133563985073'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/aromatic-textures.html' title='Aromatic textures'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_E_o-dRaY2es/TAMBruKtxcI/AAAAAAAAADY/v2hBM4RVeZ8/s72-c/life_menu.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1790543121936931449</id><published>2010-05-22T10:05:00.004+02:00</published><updated>2010-05-22T10:56:52.365+02:00</updated><title type='text'>Rubbing + wax on, wax off</title><content type='html'>Last few days have been spent not on texturing but on polishing up stuff:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;2D GUI buttons will use 3D objects for rendering, and previously the movement of these 3D objects could become jerky and their movement speed were not FPS-independent. Now that's taken care of.&lt;/li&gt;&lt;li&gt;There was a crash bug in Windows 7 in the OpenAL third-party sound library which I fixed.&lt;/li&gt;&lt;li&gt;Made some minor CPU/RAM optimizations.&lt;/li&gt;&lt;li&gt;Improving profiling tools somewhat.&lt;/li&gt;&lt;li&gt;I have a console to control things through, much like the good ol Quake console. Forking threads where previously allowed to leak, I fixed that.&lt;/li&gt;&lt;li&gt;Added various settings, such as font face and height, to the console.&lt;/li&gt;&lt;li&gt;Client no longer runs a local server if connecting to a remote server.&lt;/li&gt;&lt;li&gt;Made server poll sockets for inbound network data and process the outbound data ever now and than during each frame, instead of just sleeping to reduce ping times. Added a &lt;a href="http://stackoverflow.com/questions/835443/game-network-physics-collision#2880349"&gt;simple networking algorithm&lt;/a&gt; for removing physics jerks (probably only in low-latency situations, haven't dared pushing it yet :).&lt;/li&gt;&lt;li&gt;And so on, and so forth.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;When people talk about how long time it takes to make a solid engine, I guess this is it. The engine has a lot of advanced concepts which are not used by this, my first, game, but for which I pay dearly. I really have to put all these features to good use some time in the future...&lt;br /&gt;&lt;br /&gt;Now, however, I feel prepared to fix texture-mapping imports. After that I'll add sound inputs, and then I hope the engine will be done, and from that point on I'll focus on creating content, polishing it and creating a web site for the launch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1790543121936931449?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1790543121936931449/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/rubbing-wax-on-wax-off.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1790543121936931449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1790543121936931449'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/rubbing-wax-on-wax-off.html' title='Rubbing + wax on, wax off'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5178429525588100794</id><published>2010-05-16T02:16:00.000+02:00</published><updated>2010-05-16T02:17:20.207+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Seemless server'/><title type='text'>Integrated server</title><content type='html'>Moved server code into client, so that there won’t be any need for starting a separate dedicated server when running a local game. Worked like a charm with a minor refactoring on the server code (separated “application” and “game”, sortof).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5178429525588100794?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5178429525588100794/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/integrated-server.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5178429525588100794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5178429525588100794'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/integrated-server.html' title='Integrated server'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8644014562642074000</id><published>2010-05-09T00:12:00.003+02:00</published><updated>2010-05-09T00:34:43.939+02:00</updated><title type='text'>Demo playback</title><content type='html'>Just added vehicle steering recording and playback. Must have been doing something right, since the code injection took me 1.5 hours to complete. Thinking of using the playback as a backdrop for the menus and the "full version teaser" end-screen.&lt;br /&gt;&lt;br /&gt;My game engine transfers input data in four steps until it reaches the physical motors: user inputs -&gt; output slots -&gt; engines -&gt; physical motors. The "user inputs" are plain key strokes, game pad joystick moves, etc. The "output slots" are named stuff like "forward", "tilt left", "hand break", etc. "Engines" are mainly a mapping from output slots to “physical motors”, and “physical motors” are stuff like "front-left wheel steering force" or "tail rotor angular acceleration force".&lt;br /&gt;&lt;br /&gt;The code injection happened in the output slots, without dependencies on what user inputs are used or what underlying physical constructs there are in the vehicle. The “engines” code operate independently of frame-rate, so the same recording will work just fine on any platform. I suspect the algorithm will work equally well on non-vehicles.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8644014562642074000?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8644014562642074000/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/demo-playback.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8644014562642074000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8644014562642074000'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/05/demo-playback.html' title='Demo playback'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6154445082879381780</id><published>2010-04-28T03:22:00.004+02:00</published><updated>2010-04-28T03:33:16.935+02:00</updated><title type='text'>Sound</title><content type='html'>Here is a clip showing the doppler effect when the left split-screen helicopter passes the blue hovercraft on the right side of the screen. Unfortunately I fly badly and flew to high, so it’s not visible the right part of the screen at all.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="640" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/v0Zkz4aUKx8&amp;hl=sv_SE&amp;fs=1&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/v0Zkz4aUKx8&amp;hl=sv_SE&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;You'll have to excuse the lousy sample. It's me barking (yep), pitched up somewhat.&lt;br /&gt;&lt;br /&gt;What else? Oh yeah, our house is alive and kicking again, unfortunately. It settled just enough to let us breath and go &lt;a href="http://www.imdb.com/title/tt0450385/"&gt;“hmmm… was it all a dream?”&lt;/a&gt;, but now it’s back again. This time over we might have to file suit, which is going to cost time, energy and not the least money. Gaaaah!&lt;br /&gt;&lt;br /&gt;If I have any time at all in the coming weeks/months/years to come, I’ll start with importing UVs/textures from Maya and implementing the necessities for getting texture mapping up and running.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6154445082879381780?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6154445082879381780/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/sound.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6154445082879381780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6154445082879381780'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/sound.html' title='Sound'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3343715049890369960</id><published>2010-04-24T02:53:00.003+02:00</published><updated>2010-04-24T03:03:14.786+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Doppler rocks'/><title type='text'>Available in Doppler Stereo</title><content type='html'>Tonight I added support for more than one sound listener ("microphone") to go with my split-screen mode. I placed the sound listener in origo, then to get doppler effects right I just inverse transformed the sound source velocity. What took me the longest was to give "sibling" sound sources access to one another across split-screen instances on a local client (usually only communicates through server over UDP).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3343715049890369960?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3343715049890369960/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/available-in-doppler-stereo.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3343715049890369960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3343715049890369960'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/available-in-doppler-stereo.html' title='Available in Doppler Stereo'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-398898765652133663</id><published>2010-04-21T09:36:00.001+02:00</published><updated>2010-04-21T09:36:56.225+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Intel sucks'/><title type='text'>"Porting"</title><content type='html'>I just "ported" my OpenGL code to some Intel graphics chip (previously I've only tested on nVidia and ATI) and found a curious thing: face culling was implemented differently (on that particular driver?). It looked like the frustum decided which facets were front facing, rather than the projected modelview. I also had to redo the font rendering to use bitmaps, as raster fonts was too slow. (Always a lot of extra work when doing it oneself rather than using middleware, but then again I think it's fun!)&lt;br /&gt;&lt;br /&gt;I beginning to wonder how many of these portability issues I'm going to run into before my first game is done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-398898765652133663?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/398898765652133663/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/porting.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/398898765652133663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/398898765652133663'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/porting.html' title='&quot;Porting&quot;'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3652039714545036258</id><published>2010-04-05T00:49:00.006+02:00</published><updated>2010-04-05T01:24:43.641+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Finally getting somewhere'/><title type='text'>Rendering</title><content type='html'>Here is the result of my rendering efforts:&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/8gMiBosh0lY&amp;hl=sv_SE&amp;fs=1&amp;rel=0&amp;color1=0xe1600f&amp;color2=0xfebd01"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/8gMiBosh0lY&amp;hl=sv_SE&amp;fs=1&amp;rel=0&amp;color1=0xe1600f&amp;color2=0xfebd01" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;I'm really satisfied since it came close to how I imagined it, plus I think it’s very aesthetic! On the technical side it couldn’t have been better either (I didn't have to throw the rendering engine away, easy to port and should work on low-spec GPUs).&lt;br /&gt;&lt;br /&gt;I’ll take a much-needed break for a few days before moving on to sounds.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3652039714545036258?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3652039714545036258/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/rendering.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3652039714545036258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3652039714545036258'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/rendering.html' title='Rendering'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2726632268813168746</id><published>2010-04-04T05:31:00.005+02:00</published><updated>2010-04-04T06:02:32.504+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='elevator'/><title type='text'>Triggers</title><content type='html'>Now I had the time to code for a few hours, and as usual it took me a &lt;em&gt;bit&lt;/em&gt; longer than I expected to finish the trigger functionality the way I wanted it. I implemented a simple elevator, as seen below.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/m2rC9xheLAc&amp;hl=sv_SE&amp;fs=1&amp;rel=0&amp;color1=0x5d1719&amp;color2=0xcd311b"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/m2rC9xheLAc&amp;hl=sv_SE&amp;fs=1&amp;rel=0&amp;color1=0x5d1719&amp;color2=0xcd311b" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;The code contains most of the components I need for other types of engine controllers. The physical trigger shapes are modeled in Maya, then imported as everything else. In this case there are three different triggers that control arbitrary engines, here a single slider engine for all three. Triggers support delayed action (you have four seconds to adjust your position on the elevator platform before it departs) and hysteresis (so that when the vehicle "jumps", it is not seen as a separate hit). The triggers have different priorities so that, for instance, an elevator thinks that the one standing in the elevator has precedence over someone else who tries to get it up or down. Also a "force release" time threshold is in place; it will make sure that no person can “camp” on a trigger (mainly used for multiplayer).&lt;br /&gt;&lt;br /&gt;Never mind the buggy and ugly rendering btw, I'll try to fix that next... Now it's time for a nap!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2726632268813168746?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2726632268813168746/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/triggers.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2726632268813168746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2726632268813168746'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/04/triggers.html' title='Triggers'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2341257752064884631</id><published>2010-03-30T23:33:00.005+02:00</published><updated>2010-03-31T00:57:47.916+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gfx trial and hopefully not epic fail'/><title type='text'>Soon time to prototype rendering</title><content type='html'>Over the last two of days I invented a cheeky rendering idea that I'll prototype soon (when there's time). I developed the idea partially from a painting I saw online that was made by a couple of artists who took turns in drawing. Each turn they surprised each other and &lt;a href="http://forums.cgsociety.org/showthread.php?f=133&amp;t=271616"&gt;the end result&lt;/a&gt; is, I think, both nifty and contradictory. I’ll mix that with some &lt;a href="http://www.crayonphysics.com/"&gt;Crayon Physics Deluxe&lt;/a&gt; and see what happens. In my mind, I’m on to something. But when it comes to graphics and art I’m usually way off; time will tell. Or the prototype will. Maybe better stick with the prototype.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2341257752064884631?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2341257752064884631/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/soon-time-to-prototype-rendering.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2341257752064884631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2341257752064884631'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/soon-time-to-prototype-rendering.html' title='Soon time to prototype rendering'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2634975927171896547</id><published>2010-03-24T00:10:00.003+01:00</published><updated>2010-03-24T01:48:33.828+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Note to self: charge for beta'/><title type='text'>Peace, Love and Pricing</title><content type='html'>&lt;a href="http://home.swipnet.se/~w-28490/bilder/anti-fa/follow_l.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 243px; height: 319px;" src="http://home.swipnet.se/~w-28490/bilder/anti-fa/follow_l.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;The Americans finally got their much-needed health care plan. Good for Obama and good for them; and of course the richest nation can afford insurance for 8 million kids otherwise left without. A lot of the opposing right-wing egocentrics label all acts of solidarity "socialism" (or worse!); just lucky the the NRA was unable to gun down the &lt;a href="http://en.wikipedia.org/wiki/Straw_man"&gt;straw man&lt;/a&gt; this time. I've always said there is no future for good ol' US of A as long as it's overcrowded with ignorant people (49 % voted for Bush), but maybe there's still hope... perhaps if NRA did like a great right-wing leader of the passed and turned the gun on themselves.&lt;br /&gt;&lt;br /&gt;Speaking about pricks, have you heard of Eskil Steenberg? Nah, he’s no prick, but mayhap somewhat overconfident and overzealous just as myself, but with 10x more time on his hands. And perhaps with a pinch of Linus Torvalds-attitude. He is, like me, making a game on his own. His game is going to be a near-MMOG. Almost. If I got it right, he said something like 200 people per shard and with possibility to migrate. I saw the game in way pre-alpha a few years back, and read some about it then, but just saw that tomorrow it’s released to the public after a month of beta testing. The game itself looks a bit like &lt;a href=”http://www.youtube.com/watch?v=6rEwlvOae98”&gt;something my son would paint in watercolors&lt;/a&gt;; pretty intriguing stuff. And he’s gone pretty wild on especially the procedurally generated content and AI. Discussing cons of procedural debuggability on his blog he states:&lt;br /&gt;&lt;br /&gt;“This approach however has one major drawback, it is incredibly hard to debug. Let me give you an example: If the AI finds a power source reasonably close to a settlement they will try to direct the power back to their settlement. First they have to find a path to pipe the power and then the AI need to send out characters to build it. It sounds very simple but a huge amount of things can fail, what if there is no path? what if the characters cant get to the path, what if they get killed on the way? What if someone pipes to power in a different direction? What if someone builds something blocking the path? Each of these possible failures may have a low probability, but together they will mean that the AI will almost always fail unless you build it very robustly. Debugging this becomes a nightmare because if something fails its very hard to know exactly why (there is so many reasons) and even worse its suppose to be able to fail, so when you see it fail you don't know if it does what it should or if its a bug.”&lt;br /&gt;&lt;br /&gt;All interesting stuff, but one thing that really caught my eye was his pricing. He charged €3/month for participating in the beta! Also, he is going to charge €10/month for the release version. Due to the publicity he is probably going to attract quite a few people, even though the pricing isn’t for everyone. I’m inspired! Perhaps I should try to charge some more than I first thought. Distribution and costs are surely easier if I only sell 1/5 of the volume (at 5x the price). But I’m still not sure I want my first product to be &lt;a href=http://vimeo.com/7253548&gt;really damn good&lt;/a&gt;, because it might mean investing too much effort. Still, a prick just game me some courage. Nah...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2634975927171896547?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2634975927171896547/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/peace-love-and-pricing.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2634975927171896547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2634975927171896547'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/peace-love-and-pricing.html' title='Peace, Love and Pricing'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1500957585140383634</id><published>2010-03-23T12:38:00.002+01:00</published><updated>2010-03-23T12:40:50.196+01:00</updated><title type='text'>Triggers</title><content type='html'>Currently working on triggers in the levels. I'm still unsure of how they should work, and I have some bad design from that that has to be refactored. But I'll hopefully get something going pretty soon. Then I'll post a video of the whole thing before I proceed with graphics...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1500957585140383634?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1500957585140383634/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/triggers.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1500957585140383634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1500957585140383634'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/triggers.html' title='Triggers'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2047043433751989800</id><published>2010-03-20T21:58:00.014+01:00</published><updated>2010-03-31T00:55:48.606+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flushing a game down the toilet'/><title type='text'>Babbies and bad ideas</title><content type='html'>&lt;div align="left"&gt;&lt;a href="http://2.bp.blogspot.com/_E_o-dRaY2es/S6VFXNhCsFI/AAAAAAAAADI/QzhcPpY23LU/s1600-h/TreeMe.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5450839189069410386" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 150px; CURSOR: hand; HEIGHT: 200px" alt="" src="http://2.bp.blogspot.com/_E_o-dRaY2es/S6VFXNhCsFI/AAAAAAAAADI/QzhcPpY23LU/s200/TreeMe.jpg" border="0" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_E_o-dRaY2es/S6VEysmixJI/AAAAAAAAADA/HYYX9_w5-Hc/s1600-h/DSC01711.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5450838561758823570" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand; HEIGHT: 150px" alt="" src="http://4.bp.blogspot.com/_E_o-dRaY2es/S6VEysmixJI/AAAAAAAAADA/HYYX9_w5-Hc/s200/DSC01711.JPG" border="0" /&gt;&lt;/a&gt;While it is true that "when sheep bonk they get lamb", there is still something to that tingling feeling you get when you look deep into the eyes of your newborn. I became twice a dad week and a half ago, and the previously measly pace of development has dropped to a complete halt. Perhaps even reverse. There has also been the occasional Winter Game and Cutting Down of Gigantic Pine Trees to reduce spare time.&lt;br /&gt;&lt;br /&gt;I’ve also realized that what I was until recently trying to do was to create &lt;a href="http://trialepicfail.blogspot.com/2009/08/pick-product.html"&gt;two games in one&lt;/a&gt;. Intuitively it felt right since I wouldn’t have to invest much more time to do it, plus I thought it would open the product to a bigger audience. Common n00b error, but this is not news to me – I just didn’t take it that serious. I know the game is going to flop anyway! Thus combining two games into one just seemed like higher chance of success, not less.&lt;br /&gt;&lt;br /&gt;But then I did some thinking on the marketing side of things (since I haven’t had any coding time as of late) and came up with this formula:&lt;/div&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;span style="font-family:courier new;"&gt;Bad product + bad product ≠ slightly less bad product&lt;/span&gt;&lt;/div&gt;&lt;p&gt;The First Game is bad since it can’t be sold. The Second Game is worse since it’s boring to play. In theory the Second Game might be made more interesting by features from the First Game. In practice I find that very hard to believe.&lt;br /&gt;&lt;br /&gt;What I’ll do now is go ahead with the First Game, try to sell it like an idiot, and give up when I realize it can’t be done. After that I’ll create Another Game, which I trust will be good enough but best, and with a reachable user community. I just hope there will be some light at the end of the First Game Tunnel.&lt;br /&gt;&lt;br /&gt;I was quite a bit put down by the fact that I had hoped for synergies between the First Game and the Second Game in that they both utilize vehicles, but Another Game does not. But just as I was writing this, I realized that the physics can be put to real good use in the game levels. I’ve always found static game levels really boring. Think Team Fortress: it had a lot of things going for it (how can Cartoon-FPS go wrong, right?), but I just hated that the levels felt about as sterile as the Entropia Universe desert. Even Doom I (released some 16 yrs, three months and ten days ago) had fuckin moving 3D doors! I hold some faith in that my engine will be put to use there. If however the engine proves to be a waste of time – I’m ready for the asylum!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;PS. Did you spot the Lumberjack in Woman's clothings?&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2047043433751989800?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2047043433751989800/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/babbies-and-bad-ideas.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2047043433751989800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2047043433751989800'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/babbies-and-bad-ideas.html' title='Babbies and bad ideas'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_E_o-dRaY2es/S6VFXNhCsFI/AAAAAAAAADI/QzhcPpY23LU/s72-c/TreeMe.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8646904868626319165</id><published>2010-03-08T21:59:00.000+01:00</published><updated>2010-03-08T22:00:09.972+01:00</updated><title type='text'>MONGOOOOOOOOLLLL!</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8646904868626319165?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8646904868626319165/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/mongoooooooollll.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8646904868626319165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8646904868626319165'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/03/mongoooooooollll.html' title='MONGOOOOOOOOLLLL!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8524934949049799073</id><published>2010-02-13T01:26:00.012+01:00</published><updated>2010-02-13T02:12:41.320+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='introspection'/><category scheme='http://www.blogger.com/atom/ns#' term='perfect to get back on track if I loose some brain tissue'/><title type='text'>How I model stuff</title><content type='html'>&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_E_o-dRaY2es/S3XzPQ_s8eI/AAAAAAAAACo/CbEWdI7RCVo/s1600-h/mobile.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5437519568705483234" style="FLOAT: right; MARGIN: 10px 10px 0px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 167px" alt="" src="http://1.bp.blogspot.com/_E_o-dRaY2es/S3XzPQ_s8eI/AAAAAAAAACo/CbEWdI7RCVo/s320/mobile.PNG" border="0" /&gt;&lt;/a&gt; When I model my vehicle there's three things I have to do:&lt;ol&gt;&lt;li&gt;Make sure that the pivots are in the places where the joint anchors lye.&lt;/li&gt;&lt;li&gt;Keep all shape data (can't kill history).&lt;/li&gt;&lt;li&gt;Hang physical shapes onto mesh shapes (swapped by my importer).&lt;/li&gt;&lt;/ol&gt;Every time before I save, I run a minimal exporter. It's a mel/Python script. When I need to I'll make it so it embeds in the file and is run automatically on saving, but 'til then I'll just manually click a toolbar button before every save. The importer (converts native .ma into my own format) also refuses to import the .ma model if I've forgotten the export click.&lt;br /&gt;&lt;br /&gt;In the same way, I also keep a mel/Python script for aligning the rotation and scale world pivots. The physical shapes can (currently) only be one of:&lt;ul&gt;&lt;li&gt;box&lt;/li&gt;&lt;li&gt;sphere&lt;/li&gt;&lt;li&gt;capsule&lt;/li&gt;&lt;/ul&gt;I try to keep my mesh poly count very low; then I'll easily be able to ramp up if my target platforms supports it. I haven't even prioritized texturing yet, and I expect to procrastinate on that for some time still. I'm also going to have a crack at splitting up meshes and combining sub-meshes with sub-materials as well as curing other Maya illnesses.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_E_o-dRaY2es/S3XzPG36BmI/AAAAAAAAACg/LjKAyclice0/s1600-h/hoover.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5437519565988431458" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 245px" alt="" src="http://2.bp.blogspot.com/_E_o-dRaY2es/S3XzPG36BmI/AAAAAAAAACg/LjKAyclice0/s320/hoover.PNG" border="0" /&gt;&lt;/a&gt; The pink, transparent stuff you see in the models are the physical shapes. They're of course not rendered during normal execution, just used for collision detection and to some degree for moment of inertia.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_E_o-dRaY2es/S3X0sLURUqI/AAAAAAAAAC4/PwmJztgqo6A/s1600-h/scene_graph.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5437521164908974754" style="FLOAT: right; MARGIN: 10px 10px 0px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 110px" alt="" src="http://1.bp.blogspot.com/_E_o-dRaY2es/S3X0sLURUqI/AAAAAAAAAC4/PwmJztgqo6A/s320/scene_graph.PNG" border="0" /&gt;&lt;/a&gt; Here is a typical scene graph when modelling. All nodes named i_xxx are ignored. My importer flips the physical and mesh nodes, yielding a pure hell of linear algebra. Also, I have made some simplifications for the modeller [...me?] that in no way eliviated the importer burden. (Since the linear algebra involved is far from "placed here, rotated so", I had a hard time getting this far, and I still have a few boogs.)&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_E_o-dRaY2es/S3XzPhjUihI/AAAAAAAAACw/RJbPhkkdxhw/s1600-h/monster.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5437519573149846034" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 262px" alt="" src="http://2.bp.blogspot.com/_E_o-dRaY2es/S3XzPhjUihI/AAAAAAAAACw/RJbPhkkdxhw/s320/monster.PNG" border="0" /&gt;&lt;/a&gt; One of the flip sides of modelling a monster truck like this is that it easily fals on its roof. Good luck flipping it back! I'll probably modify all vehicles a bit so that steering isn't rendered totally insane.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8524934949049799073?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8524934949049799073/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/02/how-i-model-stuff.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8524934949049799073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8524934949049799073'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/02/how-i-model-stuff.html' title='How I model stuff'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_E_o-dRaY2es/S3XzPQ_s8eI/AAAAAAAAACo/CbEWdI7RCVo/s72-c/mobile.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5472007391353314595</id><published>2010-02-08T10:55:00.002+01:00</published><updated>2010-02-08T11:00:43.854+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idle development'/><title type='text'>Vehicle grunt work</title><content type='html'>Lately, I haven't had that much coherent development time, so instead I invested what little I had into making a few vehicles. I spend only a couple of hours on each, so they're not very polished. Never will be (since it's coder art), but when I'm closing in on a release I'll try to give 'em some finish. Hopefully I'll have learned some Maya by then as well. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5472007391353314595?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5472007391353314595/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/02/vehicle-grunt-work.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5472007391353314595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5472007391353314595'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/02/vehicle-grunt-work.html' title='Vehicle grunt work'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-1898887814477213875</id><published>2010-01-30T08:25:00.003+01:00</published><updated>2010-01-30T08:37:43.837+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='net promotor score'/><title type='text'>A must-read for any entrepreneur</title><content type='html'>Order your copy at &lt;a href="http://www.theultimatequestion.com/"&gt;http://www.theultimatequestion.com/&lt;/a&gt;. It’s the most to-the-point, no-bullshit, factual business book I’ve read. Although perhaps somewhat dreary, the book allows you to understand how to quantitatively conduct customer satisfaction surveys where you can measure amount of positive and negative word of mouth (!) about your business, allowing you to take appropriate action.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:50%;"&gt;My current employer keeps it as company bible, and having read half of the book I understand why.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-1898887814477213875?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/1898887814477213875/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/must-read-for-any-entrepreneur.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1898887814477213875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/1898887814477213875'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/must-read-for-any-entrepreneur.html' title='A must-read for any entrepreneur'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2042993995128561371</id><published>2010-01-28T23:09:00.001+01:00</published><updated>2010-01-28T23:12:22.773+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='817... .5 - WTF'/><title type='text'>Time's up!</title><content type='html'>I estimated the amount of time remaining until my first game is in some sense complete. It didn’t quite land where I’d hoped: 817.5 work hours left until done! Gaaah!&lt;br /&gt;&lt;br /&gt;Only just over 300 of those are engine and polish while the rest is actual game and "marketing". The worst part is that I know that I haven’t even accounted for all things that needs doing yet. But I’ll sweep it under the carpet for the time being; I’m not man (i.e. parasite) enough to face the facts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2042993995128561371?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2042993995128561371/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/times-up.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2042993995128561371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2042993995128561371'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/times-up.html' title='Time&apos;s up!'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7412827035872266863</id><published>2010-01-25T20:55:00.003+01:00</published><updated>2010-01-25T21:21:45.403+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wart and host'/><title type='text'>Croutching parasite, hidden developer</title><content type='html'>Game-dev wise, I've been extremely sloppy as of late. On the up side of things I've decided to not sell my soul to the consultancy devil and instead go all in on an arbetsmarknadsåtgärd at an acquaintance’ company. The praktikplats is probably only for a few months, at the end of which I’ll hopefully become a happy sod with great colleagues, a title and entrepreneurial assignments. This sounds like a lifetime opportunity to me, but to my other significant and parents loosing my income insurance (covering 80 % of my previous income during unemployment, meaning 8,000 SEK less a month) for a few months plus the risk of the company going bankrupt is not worth it by far.&lt;br /&gt;&lt;br /&gt;Thus, unfortunately, I’ve spent my time arguing about social actions while repainting a room in the house instead of developing a game. But today I heard an explanation on why I enjoy developing games and doing fun stuff more than the treadmill: the male sex probably developed as a parasite. When you think about it, it doesn’t really sound that far fetched, does it? Enjoy life, do fun stuff, reproduce. No one likes a parasite, but I guess most people would rather be a parasite than a parasite-infected host.&lt;br /&gt;&lt;br /&gt;Therefore I think I’ll round the evening off by modeling some kinda vehicle in Maya, after that I’ll practice my RC helicopter skills in X-plane and lastly play a game of Operation Flashpoint 2. Ahhh, I’m the perfect wart!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7412827035872266863?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7412827035872266863/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/croutching-parasite-hidden-developer.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7412827035872266863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7412827035872266863'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/croutching-parasite-hidden-developer.html' title='Croutching parasite, hidden developer'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-4869879178762807899</id><published>2010-01-18T12:30:00.004+01:00</published><updated>2010-01-25T21:21:24.376+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP sucks'/><title type='text'>Port</title><content type='html'>Yesterday I spent trying to port my code to Mac. Although time well spent, it was more of a hazzle than I first thought. Core services here, shared static linking there. Running 32-bit kernel in 64-bit environment here, non-posix compliance there.&lt;br /&gt;&lt;br /&gt;However dull this might sound to you, it was… different to PHP by far. You see, I’m probably going to be employed as a consultant, doing PHP the next few months. Last few days I've poked around with the language, trying to make a sample, while at the same time keeping my nose tucked into Google searches on the topic. To anybody who’s ever used Rails or Django, PHP looks like it not worth the cyber fabric it’s made of.&lt;br /&gt;&lt;br /&gt;Another thing that sticks out about PHP is that, as you learn more on a certain technology it becomes more interesting. This is probably the first time I experienced the opposite ("get away from the madness as fast as possible!"). See for yourself:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$x = "a string";&lt;br /&gt;if ($x == 666) {&lt;br /&gt;    $x = 1;&lt;br /&gt;    echo 'foo: ' . $x+1 . ' bar';&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Outputs:&lt;br /&gt;1 bar&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-4869879178762807899?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/4869879178762807899/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/yesterday-i-spent-trying-to-port-my.html#comment-form' title='2 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4869879178762807899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/4869879178762807899'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/yesterday-i-spent-trying-to-port-my.html' title='Port'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8617888147941784034</id><published>2010-01-10T23:56:00.002+01:00</published><updated>2010-01-10T23:57:25.348+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='what a forehead'/><title type='text'>ENLARGE! NOW! Your forehead.</title><content type='html'>Do you want to grow your forehead two inches? I just did. I got my Java textbook done, leading to less beard. You could say that I looked like a clown before, but that would be somewhat humiliating to clowns. Now I’m going to stick with the baby-face look for a while, even though I suspect that it leads to worse games in the long run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8617888147941784034?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8617888147941784034/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/enlarge-now-your-forehead.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8617888147941784034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8617888147941784034'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/enlarge-now-your-forehead.html' title='ENLARGE! NOW! Your forehead.'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-7038272649024902121</id><published>2010-01-09T19:02:00.002+01:00</published><updated>2010-01-09T19:05:11.990+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='no games just home work'/><title type='text'>Stephen King's House</title><content type='html'>My house hates me. It’s trying to dehydrate me, but soon enough it’s going to do a Stephen King on me. Have you ever seen The Mangler? It’s written by King and the plot goes along the lines of “a giant laundry folding machine, that can walk stairs, follows people around and devours them”. I’m probably going to end up crushed by some wall toppling over me or perhaps the house decides to impale me on the toilet some how. But it hasn’t come to that yet; currently it’s only warming up with dehydrating its tenants.&lt;br /&gt;&lt;br /&gt;I know millions of people endure a lot worse (“third world countries”), but not having water is ghastly. And, in a sense, I still have water, since my neighbors are glad to borrow me some, which I carry home in buckets. But this is the sixth time since we moved here that we’ve been without running water from our well. The first time was one week after we moved in (the one-way valve jammed). We’ve also had e-coli bacteria in the water, and six months ago the old pump broke due to the aggressiveness of the water combined with the massive amounts of iron in the ground. (The iron is probably the evil brain behind the house, leaving the grunt work to lesser beings.) One week ago the water ate though the hydraulic accumulator, and through the hole water jetted out in our basement. Nice touch - “the house wet itself”. And last night at 04:00 the water in our pipes had frozen. Fortunately no copper pipes cracked, no equipment damaged. Yet.&lt;br /&gt;&lt;br /&gt;When the water’s gone for a week or two and there is no water to drink, no showers, no real hygiene, you realize how bad you need it. Just fixed the frozen pipes - this calls for a celebration! But the next time the house pulls something like this on me I’m going to… relive myself on it… badly!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-7038272649024902121?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/7038272649024902121/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/stephen-kings-house.html#comment-form' title='2 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7038272649024902121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/7038272649024902121'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2010/01/stephen-kings-house.html' title='Stephen King&apos;s House'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-352777616482031313</id><published>2009-12-30T00:08:00.006+01:00</published><updated>2009-12-30T01:56:09.004+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='2011'/><title type='text'>Hairy balls</title><content type='html'>I just got &lt;a href="http://www.joelonsoftware.com/articles/fog0000000043.html"&gt;build in one step&lt;/a&gt; working on Windows (&lt;a href="http://www.filedropper.com/prereleaselifewindowsx86rc20091229"&gt;result&lt;/a&gt;) and GNU/Linux/X11; Mac OS X will be dealt with in January. Creating a tiny build system was more work than I’d first thought; but then programming stuff usually is.&lt;br /&gt;&lt;br /&gt;My makeshift build system took me a two of days to create, and I’m not even started with compiler errors notifications (=blame mailing?) or auto-publishing (=http?), but a total of 700 lines of code (300 grunt-lines of which I had beforehand) without any other dependencies than Python speaks for itself. Besides, it would have taken me the same amount of time to install and configure &lt;a href="http://ant.apache.org/"&gt;plain bloat&lt;/a&gt; with even more &lt;a href="http://java.com/"&gt;lard-assed dependencies&lt;/a&gt; (mayhap a bad example, but nonetheless).&lt;br /&gt;&lt;br /&gt;Once again I find myself looking at the beauty of Python; both the language and the modules. I’m definitely no language onanist, but just look at the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&gt;&gt;&gt; Popen("uname", stdout=PIPE).communicate()[0]&lt;br /&gt;b’Linux\n’&lt;br /&gt;&gt;&gt;&gt; stat(“c:\\a.txt”).st_mtime &gt; stat(“c:\\b.txt”).st_mtime&lt;br /&gt;True&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The first line gets OS name on Posix by reading stdout from ‘uname’ and the other example compares two files for modification time.&lt;br /&gt;&lt;br /&gt;Stuff I didn’t know or didn't think of when creating the build system include (but are definitely not limited to):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;How cumbersome it is to find out CPU type in Python. Python goes a long way trying to be platform-independent – fortunately a very wise decision in all other aspects of development.&lt;/li&gt;&lt;li&gt;If you have MSVC or GCC installed, it builds the executables for you, otherwise just the data.&lt;/li&gt;&lt;li&gt;Tricks necessary to build LGPL (and STLport) code using .vcprojs and generated makefiles. Even found a bug in vcbuild.exe where it fails to locate .sln dependencies when running mixed code with parts in DLLs, parts statically linked.&lt;/li&gt;&lt;li&gt;Builds come in three flavors: incremental, rebuild and clean. That’s the obvious part. There is also the build “type”: debug on/off, Unicode on/off, internal setting X on/off, cross-compiling (which I completely and flagrantly ignored), .h include dependencies, portable linking of ncurses and/or 2D graphics and/or GL, and so on and so forth for quite some time.&lt;/li&gt;&lt;li&gt;Filtering out (or in) files that apply to certain platforms. That could have been hard work (but was effortless, since I have all platform specifics in six different .cpp files that have well-behaved names).&lt;/li&gt;&lt;li&gt;Executing Windows binaries from &lt;a href="http://www.mingw.org/"&gt;msys&lt;/a&gt; causes trouble since msys organizes the path like so &lt;span style="font-family:courier new;font-size:85%;"&gt;/c/Program/Blargh:/d/Windows/System32&lt;/span&gt; instead of the expected &lt;span style="font-family:courier new;font-size:85%;"&gt;C:\Program\Skit;D:\Windows\Fis&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;On published builds, Linux users crave hairy .tar.gz, Windows users want .zip. Or better.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;As expected, it proved to be a grand experience – which I of course could have done without. But if I stop doing peripheral stuff, I probably have to face creation of an actual product. Hmm, homing in on New Year’s, it looks like I have a vow to make. And if I promise something more relevant this year, such as putting up with more intimacy with the sambo or being less stubborn, there’s always another in not too long. Perhaps it’s best to aim for 2011 already.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-352777616482031313?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/352777616482031313/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/hairy-balls.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/352777616482031313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/352777616482031313'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/hairy-balls.html' title='Hairy balls'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-8691507868129987738</id><published>2009-12-17T21:13:00.005+01:00</published><updated>2009-12-17T22:16:08.985+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='All hardware manufacturers are parrot-torturers'/><title type='text'>Another evaporated very tiny animal</title><content type='html'>It died today. The animal in my PC. The animal had been making chirping sounds since I bought it - not unlike the sound of an undulate in heat. But during the last six months it started making more violent sounds; seemed to me like it was imitating a squealing pig. Though I haven’t wasted any time looking for the beast, I always found it strange that it hid so well. If I used the CPU a lot it squealed, but than again the same applied to stuff that mainly utilized the GPU. I thought ‘perhaps it’s two different pigs! Two very tiny pigs that’s snuck into both the CPU and the GPU’. But that theory seemed more unlikely since it also required a very tiny disc jockey in the hard drive to be consistent (searching for files on the hdd sounded more like a dj’s vinyl scratching than something from the barn).&lt;br /&gt;&lt;br /&gt;So I finally figured it had to be one of them very tiny parrots. It sure was talkative alive, but it didn’t make any sound dying. I guess it must have died instantly and it didn’t really smell anything either, but that probably has to do with that animals that are very small evaporate when electrocuted (the most plausible cause of death being number 27 &lt;a href="http://www.boaf.com/article_3.htm"&gt;on this list&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;When I opened the tower and looked inside I immediately realized why it had been squealing like a piglet: it had been locked up &lt;em&gt;on purpose&lt;/em&gt; in a small, jail-like piece of hardware with bars and everything. It’s standard these days – every such hardware comes with a built-in parrot (google for parrot+hardware if you don’t belive me – 1.5 million hits). Those bastards that manufacture the hardware didn’t even bother to name it Pepper, Snowflake or even &lt;a href="http://www.youtube.com/watch?v=ru2c9qvsn-w"&gt;Jacko Jackonelli&lt;/a&gt; – they simple named it “420W”. Is it just me who get that German 40’s feel? Gives me the creeps! I got a new very tiny parrot, this one called “650W” and it’s a lot more blasé and a lot quieter. But I think I prefer the talkative kind. It’s more me somehow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-8691507868129987738?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/8691507868129987738/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/another-evaporated-very-tiny-animal.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8691507868129987738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/8691507868129987738'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/another-evaporated-very-tiny-animal.html' title='Another evaporated very tiny animal'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-3045758495029773510</id><published>2009-12-15T02:29:00.005+01:00</published><updated>2010-03-31T00:38:30.453+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Majblommor'/><title type='text'>Milerock</title><content type='html'>The engine is coming along nicely, but the game not so much. I guess that when one's on such a rudimentary level, one can't really expect to make good game development progress. But things are (really?) about to change. My second milestone is approaching; and just as any lamer I fixed the milestone to certain features, not certain time. Nothing's certain here.&lt;br /&gt;&lt;br /&gt;After the second mile stone I'll have plenty of engine coding left, but then there'll be a business plan, web site, looking up online payment systems, print and distribution, and lastly I'll also develop the actual game and hopefully get some sweet-looking content rollin'.&lt;br /&gt;&lt;br /&gt;I'm looking forward to the business side of things. But I definitely don't know myself well enough to be sure that I'll like it, once I'm there. There's probably a good chance that I'm 100 % nerd with no hope of ever selling a single copy of the game. Somehow have to verify that those skillz from selling majblommor to neighbors in first grade are still valid and top of the line.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-3045758495029773510?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/3045758495029773510/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/milerock.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3045758495029773510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/3045758495029773510'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/milerock.html' title='Milerock'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-6460364247261859850</id><published>2009-12-07T13:36:00.003+01:00</published><updated>2009-12-07T13:50:10.694+01:00</updated><title type='text'>05:00 to 06:00</title><content type='html'>Had a GUI revelation this morning. Woke up pigg as a spigg with fantastic ideas on what to do in terms of "menu system", but stayed in bed for an hour while at the same time more great ideas just came along. Sort of like meditation. Meditation and creativity go hand in hand.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;No kids today meditate; they listen to rock 'n roll instead. That's why all kids are so uninventive. So instead of coming up with creative ideas, kids of today only chew on chewing gum, get poor grades, rob banks and kill senior citizens for a laugh. (Not very inventive, that hobby was totally over-hyped 150 years ago in the mid-west.)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-6460364247261859850?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/6460364247261859850/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/0500-to-0600.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6460364247261859850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/6460364247261859850'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/0500-to-0600.html' title='05:00 to 06:00'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5550149650266604982</id><published>2009-12-06T11:37:00.000+01:00</published><updated>2009-12-06T11:38:58.331+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='noon the next day'/><title type='text'>To whom it may concern i Sussex, Great Britain</title><content type='html'>Dear sir or madam,&lt;br /&gt;&lt;br /&gt;I spent some time experimenting with a teensy bit of font rendering for the very first time in fifteen years. It was quite jolly, although I must admit that I find reaching the goal much funnier than seeking out the path leading there when programming graphics. It is quite hard to tell if that is a good thing or not, isn’t it?&lt;br /&gt;&lt;br /&gt;Oh dear, look at me rambling on like this. It might have something to do with lack sleep. I had better try to fix that now with a bit of a nap before the kristet gräsänklingsdygn comes to an end. Fortunately, I shall have plenty of rest in a certain summer cabin in Vinberg this week, where I shall be socializing with a friend who has been living abroad the last ten years. Indeed, I am looking forward to it!&lt;br /&gt;&lt;br /&gt;Sincerely,&lt;br /&gt;Count Jonte Muppet Waggadoo Kvarnstenson-Skrotum Jr.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5550149650266604982?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5550149650266604982/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/to-whom-it-may-concern-i-sussex-great.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5550149650266604982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5550149650266604982'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/to-whom-it-may-concern-i-sussex-great.html' title='To whom it may concern i Sussex, Great Britain'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-5609393758952839294</id><published>2009-12-05T06:41:00.005+01:00</published><updated>2009-12-05T07:03:53.360+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jitter elimination'/><title type='text'>Jitter... bug?</title><content type='html'>Devised a nifty little feature which really did a lot for my game engine. At first it was more of something I wanted to do at some point, but the results turned out terrific! What I did was a “call graph time measurer” combined with some gay presentation. This allowed me to find performance bottlenecks far easier than any tool I’ve used before. Truth to be told, I haven’t used VTune or DevPartner’s Performance Analyzer for nine years, but I still think the most important features of my findings are quite valuable. And when using the tool I quickly got the frame rate up by ten times (from a jerky 130 FPS to smooth 1200 FPS+ in debug compile) on a basic setup with some graphics, physics, IO and so forth.&lt;br /&gt;&lt;br /&gt;The “call graph time measurer”, hereafter called ScopeTimer, is a simple fire-and-forget timer, much like the scoped mutex in boost. The constructor parameter to the ScopeTimer is a data container which knows about some basic stuff like start time, delta time, and also has a name and knowledge of parent and children. I keep all data thread safe by thread local storage. Around the ScopeTimer I added a convenience macro like so:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:70%;"&gt;#define MEASURE_SCOPE(name) \&lt;br /&gt;static const string _name_(strutil::fmt(#name ";" __FILE__ ";%i", __LINE__)); \&lt;br /&gt;static const std::hash&lt;string&gt; _hasher_; \&lt;br /&gt;static const size_t _hash_ = (_hasher_)(_name_); \&lt;br /&gt;ScopeTimer _timer_(ScopeData::insert(_name_, _hash_));&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When all the data is collected for a frame I can unfold the call tree for each thread I’m interested in, and print it out. Printing is an ok solution if all you have access to is a text console (i.e. server side). On the graphical side I added a cheeky renderer which takes the times for the scopes and plots them as line segments each frame, with a history of 100 frames or so. The result is a live feed on what scope is causing delays:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://docs.google.com/File?id=dcm4h8m8_10g46p5wvx_b" /&gt;&lt;br/&gt;&lt;span style="font-size:78%;"&gt;The pink part is "waiting for physics to finish this frame" and purple part is the graph rendering itself (highly unoptimized) and the green part is "sleeping until frame time over". The black graph just below is physics times.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I also added a printout of all the names that appear in the call graph, in the same color as their respective line segment, and what file/line they where declared on. Jitter detection is now a walk in the park, along with what's causing it.&lt;br /&gt;&lt;br /&gt;Although the idea was easy enough it still took me a couple of days+nights to get everything set up - but I would definitely recommend it!&lt;br /&gt;&lt;br /&gt;Oops: 07:03. Time to go to bed. Unemployment is good again! ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-5609393758952839294?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/5609393758952839294/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/graph2d.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5609393758952839294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/5609393758952839294'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/graph2d.html' title='Jitter... bug?'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8139311083065752880.post-2893380395093344207</id><published>2009-12-03T03:28:00.003+01:00</published><updated>2009-12-03T04:24:42.091+01:00</updated><title type='text'>Vibe</title><content type='html'>Went to Arbetsförmedlingen today. It struck me then, just like I guess it dawns on everyone who visits Arbetsförmedlingen; wow! Right now there must be hundreds of bewildered Google employees saying to one another “how did they come up with that vibrant corporate culture at Arbetsförmedlingen in the first place?” and “did they at some point decide to only hire fun/crazy people?”, and (of course) mostly it’s just hidden envy in the form “I could probably get a job there, but I choose not to”.&lt;br /&gt;&lt;br /&gt;The only person that spring to mind as more mentally adept and socially vigorous than an arbetsförmedlare must be a former boss of mine; lets call him “Jimmy”. Not only is he effortlessly left handed, no, he also has a mysterious bouquet from his bodily cavities. Apart from that he fears the nasty gay people and makes a lot of funny jokes on women and what you could do with those (if you had a chance).&lt;br /&gt;&lt;br /&gt;Another common denominator between Jimmy’s lovely appearance and the arbetsförmedlare I spoke to today is that they both wanted my service certificate for the time when I was employed by Jimmy. But Jimmy even wanted it so bad that he never gave it to me. Despite several reminders, calls and e-mails. True employer/employee love!&lt;br /&gt;&lt;br /&gt;Often my thoughts of this kind tend to swing over to a more general branch: the one on corporate atmosphere.  I’m more and more believing that hiring is the key to monetary success. With a competent, visionary boss and good people on the payroll, luck will find a way. If you add innovative projects and a friendly corporate attitude, you can be sure to have a fun ride there. (That’s surely the answer to why Arbetsförmedlingen is such a hit, and still going strong.)&lt;br /&gt;&lt;br /&gt;Should I find myself disbelieving this recipe any time soon, I’ll just do like super-smart old left-handed Jimmy and tell jokes on women and what I could do with those (if I had a chance) as a savory foundation for a cozy company ambiance.&lt;br /&gt;&lt;br /&gt;Or not.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8139311083065752880-2893380395093344207?l=trialepicfail.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trialepicfail.blogspot.com/feeds/2893380395093344207/comments/default' title='Kommentarer till inlägget'/><link rel='replies' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/vibe.html#comment-form' title='0 kommentarer'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2893380395093344207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8139311083065752880/posts/default/2893380395093344207'/><link rel='alternate' type='text/html' href='http://trialepicfail.blogspot.com/2009/12/vibe.html' title='Vibe'/><author><name>Jonte</name><uri>http://www.blogger.com/profile/08659441288730422189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_E_o-dRaY2es/SnwVVrNAIGI/AAAAAAAAAAM/Dm5mFB5_ubA/S220/Jonte.JPG'/></author><thr:total>0</thr:total></entry></feed>
