<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE rss [<!ENTITY % HTMLlat1 PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent">]>
<rss version="2.0" xml:base="http://www.cokeandcode.com">
<channel>
 <title>Coke And Code - Java Games and Games Development - Random</title>
 <link>http://www.cokeandcode.com/taxonomy/term/39/0</link>
 <description></description>
 <language>en</language>
<item>
 <title>Children&#039;s Game Websites</title>
 <link>http://www.cokeandcode.com/node/1301</link>
 <description>&lt;p&gt;I&#039;m lucky, I have an excuse to be playing kids games on free websites. My daughter, who&#039;s nearly two, loves playing on the computer - clicking colourful things and getting wierd noises.&lt;/p&gt;
&lt;p&gt;I&#039;ve always been a fan of the &lt;a href=&quot;http://www.bbc.co.uk/cbeebies&quot;&gt;CBeebies&lt;/a&gt; website, it has a lot of familiar shows that she enjoys on the TV. However, being the hobbiest game developer I am, I can&#039;t help but evaluate the games on the site and can see that they both are lacking in design and polish. &lt;/p&gt;
&lt;p&gt;Thats why it was such a refreshing change to see the &lt;a href=&quot;http://www.disney.co.uk/disneychannel/playhouse/&quot;&gt;Disney Playhouse&lt;/a&gt; site - Meg has a need for Tigger everything just recently. The games are incredibly polished with really high quality audio and visuals. The site itself is well organized and loads quickly even on my terrible connection.&lt;/p&gt;
&lt;p&gt;The thing that struck me most was the quality of the game design though. Each game we (I) played was really top notch. In some parts Meg got annoyed with me because I wanted to carry on playing the game. Some of the game design is so good I couldn&#039;t help but thing an adult remake of it for the casual market could be a hit (I took notes of course :)).&lt;/p&gt;
&lt;p&gt;I am left feeling slightly overwhelmed with how good these &quot;throw away&quot; games are and how far I have still to go to produce anything like as good.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/17">Games</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/7">Life</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Sun, 24 Aug 2008 06:56:26 +0000</pubDate>
</item>
<item>
 <title>Issue and Bug Tracking Software - a rare find</title>
 <link>http://www.cokeandcode.com/node/1297</link>
 <description>&lt;p&gt;I like simple tools. Really simple tools. All these stuff I do for home is small scale, it doesn&#039;t need to be industry strength and it doesn&#039;t need to be highly available. I need tools to jobs that are as simple as possible to set up and maintain. I just don&#039;t have time for anything else. For instance, I love SimplePHPBlog. No database, no configuration. Downloading, unzip and use. Great stuff. JBoss AS is the same, wonderful stuff to be working against, download, unzip and use.&lt;/p&gt;
&lt;p&gt;Recently I&#039;ve been in need of some issue tracking software. I&#039;m starting to get too many bits of paper to hold on to and issues are getting lost. At the moment I have a 2 bits of A4 in front of me littered with thoughts and issues with the latest project, Salavge Rights. &lt;/p&gt;
&lt;p&gt;I went to look for software. I want something simple and web based (so I can access it from lots of different locations with ease). It needs to track ideas, let me update them and mark them as closed. It may need to support teams eventually but probably not right now.&lt;/p&gt;
&lt;p&gt;Everything I could find required dependency X, Y and Z. From libraries, to databases, to masses of configuration. And then I found &lt;a href=&quot;http://kennwhite.sourceforge.net/codetrack/&quot;&gt;Code Track&lt;/a&gt;!. Seriously, check this little beauty out.&lt;br /&gt;
&lt;UL&gt;&lt;LI&gt;No database required - check it uses flat XML files&lt;/LI&gt;&lt;LI&gt;Handles all the normal sort of issues things - check, basic but clean&lt;/LI&gt;&lt;LI&gt;Supports teams of people - check, without any work&lt;/LI&gt;&lt;LI&gt;Simple to install and configure - they claim less than 5 minutes&lt;/LI&gt;&lt;/UL&gt;Now, I dispute that last point a bit. It only takes 5 minutes if you include the download time. Less than 2 minutes I would have thought was a more accurate description. I&#039;m very impressed.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/6">Code</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/17">Games</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Thu, 21 Aug 2008 11:48:46 +0000</pubDate>
</item>
<item>
 <title>Testing 1 .. 2 .. 3</title>
 <link>http://www.cokeandcode.com/node/1272</link>
 <description>&lt;p&gt;This is a test, like most things in life. Move along.&lt;/p&gt;
&lt;p&gt;Nothing to see here.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Tue, 01 Jul 2008 12:02:35 +0000</pubDate>
</item>
<item>
 <title>Pixel Art is Hard</title>
 <link>http://www.cokeandcode.com/node/1260</link>
 <description>&lt;p&gt;Damn, pixel art is hard. I wanted to give it another go - my past attempts have not been good enough for me to even post. So an evening has gone by, following a few tutorials and trying to design a character I want for a future game Pobo - Galactic Explorer. After hours and hours of pushing pixels onto the screen I get this:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://www.cokeandcode.com/images/pobo/coloured.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://www.cokeandcode.com/images/pobo/coloured2.gif&quot;&gt;&lt;/p&gt;
&lt;p&gt;Static and walking. It&#039;s um, good for me and probably good enough. Does make me realize quite how much time and effort artists put into these things. Kudos guys.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/17">Games</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Thu, 05 Jun 2008 21:05:16 +0000</pubDate>
</item>
<item>
 <title>Hour Oriented Game Development</title>
 <link>http://www.cokeandcode.com/node/1258</link>
 <description>&lt;p&gt;So, I had a few drinks yesterday evening, a rarity for me. Mostly to celebrate my wife getting offered a new job - woo woo. I&#039;d been ranting at work about how mindless clicking games are so successful when other better games (putty of course ;)) go unappreciated. I had an inkling of an idea about bubbles and lines between them (I realised later this was probably derived from talking to &lt;a href=&quot;http://www.puppygames.net&quot;&gt;Cas&lt;/a&gt; about what he was doing). Anyway, back to the drink, few glasses of wine later I&#039;m spouting my normal nonsense on IRC and I start coding this idea up without really thinking about it. At the start I decided every hour I&#039;d check progress, if it wasn&#039;t working out or it stopped being fun I&#039;d just go back to my isometric project (see below).&lt;/p&gt;
&lt;p&gt;Well, this hourly thing works for me. It was really fun pushing to see how much could be stuffed in within an hour. I guess this is how the &lt;a href=&quot;http://www.ludumdare.com/&quot;&gt;Ludum Dare&lt;/a&gt; competitors feel. This is how it went:&lt;/p&gt;
&lt;p&gt;&lt;H3&gt;Hour 1 - Making it work&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.cokeandcode.com/demos/gempop/log/pop1.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/demos/gempop/log/pop1.png&quot; width=&quot;320&quot; align=&quot;left&quot; style=&quot;margin: 5px&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Development started at about 11pm. I knew the game idea revolved around bubbles appearing on the screen. I&#039;d talked to Cas about it earlier (see above) and one of things he&#039;d mentioned in the past was how to get the bubbles to push each other aside. First, lets spawn some bubbles. Create a basic slick state based game, default state and a class representing the bubble. The bubbles can draw them selfs and can be updated, for a change I allowed the bubbles to return an indication whether they&#039;d changed size or not. This made the game loop very easy - loop through all the bubbles updating them, if none of them changed size spawn another.&lt;/p&gt;
&lt;p&gt;The next step was a bit more complicated. When a bubble grows it needs to push the others out of the way. I took my normal discrete collision based approach. Limit the bubble to a 1 pixel growth. After the growth check for collision. If anything collides with the bubble that has grown move it away from the grower and add it to the list of pushed bubbles. While there are still pushed bubbles pick the first one and repeat. This was the first brute force approach that came to mind and it seems to work fine. &lt;/p&gt;
&lt;p&gt;So, the first hour was spent fiddling with setup and boilerplate classes, getting some rendering and basic logic in. Assessment after the first hour was that watching the growing and pushing red circles was enticing, especially in my now growingly inebriated state. &lt;/p&gt;
&lt;p&gt;&lt;H3&gt;Hour 2 - Making it Pretty&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.cokeandcode.com/demos/gempop/log/pop2.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/demos/gempop/log/pop2.png&quot; width=&quot;320&quot; align=&quot;right&quot; style=&quot;margin: 5px&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Next I thought I&#039;d make it look pretty. Thanks to the wonderful &lt;a href=&quot;http://www.fasticon.com/&quot;&gt;www.fasticon.com&lt;/a&gt; I had some nice looking fruits very quickly (though originally they were going to be gems). I lost 15 minutes or so hunting round for a bubble until asking on the #lwjgl channel and being told just to paint a gradient across a circle. Strangely it kinda worked, I like what&#039;s there now at least, maybe it&#039;s not quite bubble like but it works pretty well. &lt;/p&gt;
&lt;p&gt;Having replaced the circle drawing with images I noted a huge speed increase (circle drawing was taking up a lot of polys). So, I sat for a few minutes watching the spawn of fruity bubbles. Oh, thats good I thought. Hmm, whats going on with that FPS - it&#039;s getting lower and lower? What had I done!? &lt;/p&gt;
&lt;p&gt;Well it turns out I wasn&#039;t getting rid of the bubbles after they&#039;d left the screen. So the pushing code was slowly pushing more and more bubbles. As a result I added some little bits of code to determine if a bubble was on the screen and whether the mouse was over it. I stuck on a background (which you can see in the next screenshot) and started thinking about showing other people. &lt;/p&gt;
&lt;p&gt;Slick has some useful build scripts, so I grabbed one of them, updated it for the project - ran it and had a webstart ready to try. Webstart for anyone who doesn&#039;t know lets us Java type show each applications and games with minimal effort (including keeping it updated). Posted the link to it onto IRC and waited for a response. General approval - woo hoo - &quot;why can&#039;t I click the bubbles to pop them?&quot;. Well thats not the game, you have to draw lines - &quot;meh&quot;.&lt;/p&gt;
&lt;p&gt;A discussion then broke out about what the game should be like. They&#039;re a nice bunch of people, with good ideas. The game idea I had was reshaped into something a lot easier to play and enjoy. Mindless clicking for the win!&lt;/p&gt;
&lt;p&gt;&lt;H3&gt;Hour 3 - Making it Playable&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.cokeandcode.com/demos/gempop/log/pop3.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/demos/gempop/log/pop3.png&quot; width=&quot;320&quot; align=&quot;left&quot; style=&quot;margin: 5px&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The background is a kevglass original, the font some stock thing I&#039;ve hanging around pushed through &lt;a href=&quot;http://slick.cokeandcode.com&quot;&gt;Hiero&lt;/a&gt; for a bit of shading and shadows.&lt;br /&gt;
The game idea ending up being a simple matching game. The game shows you a fruit, you need to click all the fruits of that type - the more you click, the more points you get. I decided to add a timer to limit game play and score was updated based on the size of the bubble - smaller bubble = higher score.&lt;/p&gt;
&lt;p&gt;Searched for, found and added a few sound effects for bubbles popping etc. A simple pitch changed based on the size of the bubble seemed to give it a comfortable feel. With the constant spawning of bubbles this was already quite fun. The changes didn&#039;t take long but there were bugs galore. Just stupid silly bugs. I was getting tired by this point, it was pushing on to 2am. At 2am-ish I ran the build script and pushed out another version and decided to call it a day. There was still feedback coming in but work in the morning etc.&lt;/p&gt;
&lt;p&gt;&lt;H3&gt;Hour 4 - Rethinking the Game Play&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.cokeandcode.com/demos/gempop/log/pop4.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/demos/gempop/log/pop4.png&quot; width=&quot;320&quot; align=&quot;right&quot; style=&quot;margin: 5px&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hour 4 was, as often is the case, my lunch break at work. I decided to go the local canteen to save some time so I could read the feedback, chat a bit and design a logo. I wanted to call the game something suitably generic and corny - Super Bubble Pop Fruit Drop Deluxe Edition. 20 minutes of my lunch disappeared just designing the logo you see to the right. I&#039;m not an artist as you can tell :)&lt;/p&gt;
&lt;p&gt;Having processed the feedback and got the logo sorted I spent 10 minutes writing down a plan of attack for this evenings coding session. The last item on the list was writing this blog post. Why? Well, because I think I&#039;ll find it interesting in a few months looking back.&lt;/p&gt;
&lt;p&gt;The list also included the game play changes that needed to be made and the idea of porting the whole thing into Java 2D. That still might happen - there&#039;s a couple of hours left in the budget :) I&#039;m pretty determined not to let development time go over 8 hours at the moment, looks like it should be enough.&lt;/p&gt;
&lt;p&gt;&lt;H3&gt;Hour 5 (and a little more) - Making it a complete game&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;This evening&#039;s first hour started around 8. The game play needed to be changed. Talking on IRC had led me to the following changes:&lt;br /&gt;
&lt;OL&gt;&lt;LI&gt;There would be no timer, thats just a lame cop out&lt;/LI&gt;&lt;LI&gt;Lifes would be added, you lose of life if you click the wrong fruit&lt;/LI&gt;&lt;LI&gt;A score multiplier would be applied which ticks up as you click, and ticks down as you don&#039;t&lt;/LI&gt;&lt;/OL&gt;Adding these features was about 20 minutes of effort. All the code was really already there, it just needed moving about. However, it was now that I decided I need a title page, some instructions and a few more graphics (well one, for the lifes indicator) to make it feel more like a game. &lt;/p&gt;
&lt;p&gt;The graphics were easy, just visit fasticon.com again. The title page also didn&#039;t take long, slap the logo from lunch on the page and added a in code flag for the starting page. Made the logo wobble a bit because it seemed cute. Hurts your eyes if you watch it too long though :). The instructions however zapped up loads of time. &lt;/p&gt;
&lt;p&gt;First, I ummed and ahhed about whether to just define the instructions text as a string in code or in a separate file. Why? I don&#039;t know, I really don&#039;t. Next I wanted it displayed as a marquee, but drawing the whole string each time would have been super slow - so how to do it? Each part of the message is a separate object which only draws if it&#039;s on the screen. A quick inner class, a bit of buffered loading and a simply bit of maths for clipping the text off the screen. Annoyingly, this actually took me longer to get right than anything else so far. &lt;/p&gt;
&lt;p&gt;Finally for this hour I spent an age searching around for sound effects for when the fruit changes in game. All I wanted was a beep beep beep timeout sound, no luck. Eventually found one hanging around in one of my local game resource directories right under my nose. Sounds pretty good in game now.&lt;/p&gt;
&lt;p&gt;&lt;H3&gt;Hour 6 - Tuning and Polish&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.cokeandcode.com/demos/gempop/log/pop5.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/demos/gempop/log/pop5.png&quot; width=&quot;320&quot; align=&quot;right&quot; style=&quot;margin: 5px&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So far this 6th hour has been tuning and adding polish touches suggested by testers and myself. Tuning parameters like how long between extra lifes showing up, how long fruits are current for and how quickly the multiplier drops back is really interesting simply because of the massive effect it has on the way the game plays.&lt;/p&gt;
&lt;p&gt;And of course, half of this hour (a little more now) has been spent writing this blog which I hope has something readable in it. There are several things people say hurt productivity:&lt;br /&gt;
&lt;UL&gt;&lt;LI&gt;Making library code that you share with others - Slick has worked out ok for me! Lots of bugs reports have made it more reliable library for me as well&lt;/LI&gt;&lt;LI&gt;Chatting on IRC - IRC is a wonderful source of instant feedback for me. While I know what I like in a game, it&#039;s obvious that&#039;s not mass appeal and without the IRC channel I&#039;d have little hope of sorting out problems early on.&lt;/LI&gt;&lt;LI&gt;Writing blogs - I&#039;ve been looking forward to writing this blog since the first bubbles started showing up. It&#039;s been one of the goals and a great motivator.&lt;/LI&gt;&lt;/UL&gt;I&#039;m not sure any of the above is really a pattern, but I think I&#039;d say that you&#039;re as productive as you are. The things that are perceived to make you more or less probably have a very low percentage impact on your real output.&lt;/p&gt;
&lt;p&gt;&lt;H3&gt;What now?&lt;/H3&gt;&lt;/p&gt;
&lt;p&gt;Well the game will be available to play after a couple of hours more development time (maybe not tonight). It look like it&#039;s some extended features and a bit of polish before it&#039;s done. Two more hours should give me time to add a couple of ways of getting bonus scores at least. &lt;/p&gt;
&lt;p&gt;This blog is of course self indulgent nonsense, but it&#039;s just one of them things about being a geeky chap I suppose - you just need to tell others about the code you&#039;re pushing out. It&#039;s fun for me, it really is, but it&#039;s more fun if I get to show and talk to other people about it.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/6">Code</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/10">Geek</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Tue, 03 Jun 2008 21:21:52 +0000</pubDate>
</item>
<item>
 <title>Animated GIFs</title>
 <link>http://www.cokeandcode.com/node/1183</link>
 <description>&lt;p&gt;Animated GIFs are fruity, trying to find a good tool to produce them is annoying. Shame there isn&#039;t something free and good. A free trial got me to what I wanted though:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://www.cokeandcode.com/images/all.gif&quot;/&gt;&lt;/p&gt;
&lt;p&gt;Good idea Gareth!&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Thu, 06 Mar 2008 23:43:42 +0000</pubDate>
</item>
<item>
 <title>Retro Wonder</title>
 <link>http://www.cokeandcode.com/node/1160</link>
 <description>&lt;p&gt;What is retro? What is old? I remember we used to say &quot;the 70&#039;s&quot; - that was old, with their flares, huge hair and wierd flowering music. More recently the 80&#039;s has become the retro scene. Retro games are mostly based on 80&#039;s titles, retro music is definitely inspired by the new romantics and a selection of the cooler films seem to be set there.&lt;/p&gt;
&lt;p&gt;So, does that mean in a couple of years time when we enter 2010&#039;s the 90&#039;s are going to be retro? That&#039;s pretty scary to me, think about the things that become retro?&lt;/p&gt;
&lt;p&gt;Games: Quake, Ultima Underworld, Mario 64&lt;br /&gt;
Bands: Oasis, Pulp, Nirvana&lt;br /&gt;
Films: Trainspotting, Pulp Fiction and Toy Story&lt;/p&gt;
&lt;p&gt;It&#039;s just so freaky. Gonna have to get my a flux capacity enabled delorean and go back and fix it. Oh wait, that was the 80&#039;s.&lt;/p&gt;
&lt;p&gt;Never mind.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Wed, 16 Jan 2008 13:33:31 +0000</pubDate>
</item>
<item>
 <title>&#039;No Fun and No Code make Kev Something Something&#039;</title>
 <link>http://www.cokeandcode.com/node/1124</link>
 <description>&lt;p&gt;&#039;Go Crazy?&#039; - &#039;Don&#039;t mind if I do!!!&#039;&lt;/p&gt;
&lt;p&gt;Life is a bit on the lame side at the moment. At least 2 of the three members of my household have been ill for the past month an a half. Work wise I&#039;ve been sat on the same low priority but critical work for the last 3 months - not really going anywhere fast. No code involved at work and no energy to code at home. &lt;/p&gt;
&lt;p&gt;Haven&#039;t been out in a while, no pub, no trips, not much fun. Don&#039;t have time to play games even though I&#039;ve had Wii Paper Mario sat on the shelf for the past month. Christmas is coming and I can&#039;t begin to get excited. This time last year we were preparing to come home which could have been the worst mistake we&#039;ve made. Coming back was great from a family perspective but pretty much everything else has been a bit of a read through.&lt;/p&gt;
&lt;p&gt;What&#039;s more the idiocy of the world at large is begining to annoy me again. Road users - why oh why - just because something is legal doesn&#039;t mean it&#039;s sensible. Just because something is temporary doesn&#039;t mean it&#039;s automatically ok. No, there arn&#039;t double yellow lines - but parking there will still block the road. Bike users - weaving in and out of traffic is legal, but if it&#039;s cold, wet and early it&#039;s still dangerous as hell. And as to the woman that parked on the roundabout so she could &quot;just pop in&quot; to McDonalds to get her breakfast - I mean seriously, what sort of brain dead moran are you?&lt;/p&gt;
&lt;p&gt;Recieved a phone at work yesterday. This might not seem like a big deal worth blogging about but consider that I&#039;ve been working for a telecommunications company for 3 years and this is the first time I&#039;ve had a phone on my deak. It&#039;s pretty big news. Now, if it only actually worked it&#039;d almost be a positive aspect of my day.&lt;/p&gt;
&lt;p&gt;Meg is still coughing alot, she can&#039;t shake this bleady cold any more than anyone of us. However, she is still giggling and trying to walk and falling on her butt alot. Some how she&#039;s really into drawing now - she&#039;s just over 1, so it seems a bit bizarre - but she loves her crayons that she now takes everywhere with her in a little red handbag. There has to be a game concept in there somewhere.&lt;/p&gt;
&lt;p&gt;Talking of which, I&#039;ve decided to write 4 games in parrallel, the logic being that even if I give up one or two I should still get futher with some. So, the run down seems to be two that have been around for a while, Scorched Turf and Mootox and two new ones currently called Samson and Dumb Bots. Should I ever make it back to the computer at home I&#039;ll be pushing on with the golf game first since it&#039;s core engine is shared between all 4.&lt;/p&gt;
&lt;p&gt;Finally, I&#039;ve blogged again. Almost feels like normal if a bit random and tangenty. Anyone know of anything gamedev related in the Cardiff area let me know, I need to get motivated again!&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/31">BabyBlog</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/6">Code</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/17">Games</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/10">Geek</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/7">Life</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/8">Rants</category>
 <pubDate>Thu, 29 Nov 2007 08:29:25 +0000</pubDate>
</item>
<item>
 <title>Fortune Cookie #1</title>
 <link>http://www.cokeandcode.com/node/1088</link>
 <description>&lt;p&gt;&lt;i&gt;There are three types of people the world doesn&#039;t understand. Madmen, geniuses and people who mumble.&lt;/i&gt;&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Fri, 21 Sep 2007 19:41:33 +0000</pubDate>
</item>
<item>
 <title>Chavvy Chick Music</title>
 <link>http://www.cokeandcode.com/node/1078</link>
 <description>&lt;p&gt;Just realised I&#039;m developing an obsession with artists with city accents. The first now I come to think of it was &lt;a href=&quot;http://www.the-streets.co.uk/&quot;&gt;The Streets&lt;/a&gt;, OPM. A lot of the brogue works because of the accents, and the relaxed use of bad language makes the whole thing more natural to me.&lt;/p&gt;
&lt;p&gt;But then recently I&#039;ve been waxing lyrical about how great I think the &lt;a href=&quot;http://www.lilyallenmusic.com/&quot;&gt;Lily Allen&lt;/a&gt; is. It might be a fantastically scripted and prepared sentiment, but her and her music are pretty great.&lt;/p&gt;
&lt;p&gt;And now.. &lt;a href=&quot;http://en.wikipedia.org/wiki/Kate_Nash&quot;&gt;Kate Nash&#039;s&lt;/a&gt; music is floating my boat. More of the same sort of rough and raggerty rhymes and vocals. I&#039;m lovin&#039; it (tm).&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/7">Life</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Tue, 18 Sep 2007 11:34:12 +0000</pubDate>
</item>
<item>
 <title>For Cath</title>
 <link>http://www.cokeandcode.com/node/1076</link>
 <description>&lt;p&gt;&lt;i&gt;&lt;center&gt;&lt;br /&gt;
~ I understand, ~&lt;br/&gt;&lt;br /&gt;
I understand that you&#039;re in pain, and that it goes on and on.&lt;br /&gt;
I understand it makes you sad and angry.&lt;br /&gt;
I understand the guilt of resting on other people,&lt;br /&gt;
And leaving things when you can&#039;t go on.&lt;br /&gt;
&lt;br/&gt;&lt;/p&gt;
&lt;p&gt;I worry and I wait, for a solution to present&lt;br /&gt;
Or there to be something for me to do,&lt;br /&gt;
Most of the time I just get in the way,&lt;br /&gt;
Or worse, increase the burden&lt;/p&gt;
&lt;p&gt;But I understand, I really do, and it doesn&#039;t change a thing&lt;br /&gt;
You do your best, together we&#039;ll get through&lt;br /&gt;
I understand, and it&#039;s ok&lt;br /&gt;
I&#039;ll be there for you&lt;br /&gt;
&lt;/center&gt;&lt;/i&gt;&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Mon, 17 Sep 2007 11:01:22 +0000</pubDate>
</item>
<item>
 <title>More Tablet Work</title>
 <link>http://www.cokeandcode.com/node/1072</link>
 <description>&lt;p&gt;Another half hour, another arty attempt. This time just a child&#039;s drawing of a tree on a hill. Still loving the tablet, oils seems to be even more fun.&lt;/p&gt;
&lt;p&gt;&lt;center&gt;&lt;a href=&quot;http://www.cokeandcode.com/images/lonelytree.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/images/lonelytree.png&quot; width=&quot;350&quot;&gt;&lt;/a&gt;&lt;/center&gt;&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Thu, 13 Sep 2007 22:09:59 +0000</pubDate>
</item>
<item>
 <title>Bamboooo!</title>
 <link>http://www.cokeandcode.com/node/1070</link>
 <description>&lt;p&gt;I&#039;ve just received my new graphics tablet, it&#039;s a Wacom Bamboo. I&#039;ve never tried a tablet before and since the artist I&#039;m working with at the moment says they&#039;re cool I thought I&#039;d give it a go. It&#039;s an interesting experience - makes my hands ache a bit to be using at the moment. The change in feel is really neat tho, smooth likes and reshading seems to be very comfortable. &lt;/p&gt;
&lt;p&gt;Unfortunately my lack of artistic skill will-out, here&#039;s my first effort:&lt;/p&gt;
&lt;p&gt;&lt;center&gt;&lt;img src=&quot;http://www.cokeandcode.com/images/arty2.png&quot;&gt;&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;It&#039;s based off a photo and took about 20 minutes of me pratting about learning what this new tool can do for me. Yes, it&#039;s pretty awful, but it definitely looks drawn and not created. That, I like.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/7">Life</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Wed, 12 Sep 2007 17:34:00 +0000</pubDate>
</item>
<item>
 <title>Artificial Incompetence</title>
 <link>http://www.cokeandcode.com/node/1051</link>
 <description>&lt;p&gt;When I&#039;m writing games I try a bunch of stuff. It&#039;s mostly about learning about the different parts of game development. While doing this I&#039;ve had, as you&#039;d imagine, a few successes and a lot of failures in lots of areas.&lt;/p&gt;
&lt;p&gt;In rendering, my games have touched on lots of different methods, from DirectX to pushing bytes into the 0xA000 chain 4 screen buffer. In Java land I&#039;ve experimented with Java2D and OpenGL rendering. I failed plenty of times when trying to get it rendering fast enough, had a few wins along the way. I&#039;ve learnt about pixel buffers, buses, buffers, triangulation, rasterization, caches, shaders and driver compatibility crap-ness. It&#039;s been worth while.&lt;/p&gt;
&lt;p&gt;In networking, I&#039;ve tried a lot of stuff. From the early days when I was linking up draughts games via a serial cable - up to more recently multiplayer RTS across standard domestic home internet. I failed ALOT and succeeded a few times. It did teach me how brute force networking works, copy and forget, the Quake 3 model, lock step, loose step, client side interpolation, dual world consistency approach and about the security issues surrounding different types of online games (peer2peer, centralized session and ever scary massively multiplayer game). In short though I&#039;ve failed over and over, it&#039;s been worth while. &lt;/p&gt;
&lt;p&gt;I&#039;ve tried out Physics. I haven&#039;t spent much time here, but enough to write a fair bit of code. Mostly my physics has been failures - but I&#039;ve learnt plenty from them. It&#039;s been worth while!&lt;/p&gt;
&lt;p&gt;Unfortunately in AI (Artificial Intelligence in this case ;)) I&#039;ve never succeeded. Not succeeded in getting something working, but never succeeded in actually learning everything about the subject. I wouldn&#039;t mind failing so much with AI, but I never seem to have a better approach next time. I&#039;ve tried out scripting languages to help me along, I&#039;ve attempted to write the classic algorithms from my university AI books, but they just don&#039;t seem to apply very well in the modern world. The reusable frameworks I&#039;ve found for AI tend to be extremely specific to task.&lt;/p&gt;
&lt;p&gt;The texts and tutorials on AI seem to be so very specific to the example given. There&#039;s a bunch of things devs refer to as AI, like flocking/movement approaches, which I just don&#039;t see as AI. Maybe there are just different levels of AI, flocking comes in the fine level stuff I spose. The big stuff, how do you make an opponent play the game back at you has just never worked out for me. The closest I got was in one of the Space Hulk revisions, but the game was so primitive it really didn&#039;t help me understand.&lt;/p&gt;
&lt;p&gt;Anyway, the point of this blog post is I&#039;ve finally made some progress. In the game I&#039;m currently working on, not really public yet, I&#039;ve just implemented some &quot;simple AI&quot; to play against to make testing more interesting. The simple version has turned into something that&#039;s working pretty nicely. The game has reasonably complicated mechanics but the new AI system is pluggable and can be extended to support each new feature. The AI is separated into two sections. Feature application and unit movement/combat. The feature application area is configurable via classes. The movement/combat stuff is built up a series of facets which interact providing seemingly reasonably responses. It&#039;s going great guns.&lt;/p&gt;
&lt;p&gt;Random blog I know, but I&#039;m pretty chuffed to making my first small steps in this area!&lt;/p&gt;
&lt;p&gt;&lt;center&gt;&lt;a href=&quot;http://www.cokeandcode.com/images/gamex.png&quot;&gt;&lt;img src=&quot;http://www.cokeandcode.com/images/gamex.png&quot; width=&quot;300&quot;&gt;&lt;/a&gt;&lt;/center&gt;&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/6">Code</category>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Mon, 27 Aug 2007 09:06:48 +0000</pubDate>
</item>
<item>
 <title>Oi, you, no.</title>
 <link>http://www.cokeandcode.com/node/1003</link>
 <description>&lt;p&gt;Yes, you. Stop it. It&#039;s a bit strange.&lt;/p&gt;
</description>
 <category domain="http://www.cokeandcode.com/taxonomy/term/39">Random</category>
 <pubDate>Fri, 06 Jul 2007 18:33:12 +0000</pubDate>
</item>
</channel>
</rss>
