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

<channel>
	<title>A Game Developer&#039;s Saga</title>
	<atom:link href="http://bantamcity.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://bantamcity.com/blog</link>
	<description>An uphill journey of a struggling game developer</description>
	<lastBuildDate>Mon, 27 Sep 2010 15:13:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Is it possible to make an MMO in Torque Game Builder (TGB) &#8211; Part 2?</title>
		<link>http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder-2/</link>
		<comments>http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder-2/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 15:07:37 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[java mmo server]]></category>
		<category><![CDATA[tgb]]></category>
		<category><![CDATA[tgb mmo]]></category>
		<category><![CDATA[tgb mmorpg]]></category>
		<category><![CDATA[tgb performance]]></category>
		<category><![CDATA[torque game builder]]></category>
		<category><![CDATA[torque game builder mmo]]></category>
		<category><![CDATA[torque game builder mmorpg]]></category>
		<category><![CDATA[torque game builder performance]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=288</guid>
		<description><![CDATA[You might remember my more optimistic part 1 post.
Well, I&#8217;m about 300ish hours into my MMO development (part time over the past year or so) and the other day I decided to finally do some performance testing&#8230; way too late to be doing this sort of thing btw.  I didn&#8217;t think too much of it [...]]]></description>
			<content:encoded><![CDATA[<p>You might remember my <a href="http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder/" target="_blank">more optimistic part 1 post</a>.</p>
<p>Well, I&#8217;m about 300ish hours into my MMO development (part time over the past year or so) and the other day I decided to finally do some performance testing&#8230; way too late to be doing this sort of thing btw.  I didn&#8217;t think too much of it before because the GG engines are touted for their networking layer, so I figured it should be able to handle the tiny packets that I was sending back and forth with no problem.</p>
<p>I started my testing with what I thought was a modest number of players for an MMO&#8230; 1000.  Not too high, not too low.  The server grinded to a halt! and suddenly I got that &#8216;Oh shit! What have I done?!&#8217; feeling.  So just to get a better measurement, I dropped it to 500, then 100 and finally to 50 before things started to perform normally.  Ouch!  Now, I&#8217;m not trying to get <a href="http://www.gamasutra.com/php-bin/news_index.php?story=21738" target="_blank">EVE Online numbers</a>, but 50?!?!  My stomach sank a little as I thought about all of the wasted work and all of the work I would have to do to rewrite the server.</p>
<p>How could something awarded for its networking ability come up so short?  Well, it wasn&#8217;t the networking causing the bottleneck at all.  What I failed to consider was not networking, but the processing cycles needed.  Apparently, TGB doesn&#8217;t make the greatest server for a synchronous MMO.  The inherently single-threaded processing and the speed of torque-script were drastically overestimated on my part.</p>
<p>I can probably performance tune the TGB server more and move some things into native C++, but in the end I decided it would be easier to rewrite the whole server in Java which is my native language <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />    While most people still have a negative impression of Java performance-wise, 1.6 is quite fast and it can usually be further <a href="http://www.amazon.com/gp/product/0596003773?ie=UTF8&amp;tag=bancitgam-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0596003773" target="_blank">performance tuned</a>.</p>
<p>Moral of the story: performance test early so that you can change technologies if necessary and not have to rewrite a ton of code.</p>
<p>I haven&#8217;t finished writing the server yet, but I will post an update once I do some early performance testing.</p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Saturn Doesn&#8217;t Start When Its Cold (or Hot)</title>
		<link>http://bantamcity.com/blog/general/my-saturn-doesnt-start-when-its-cold-or-hot/</link>
		<comments>http://bantamcity.com/blog/general/my-saturn-doesnt-start-when-its-cold-or-hot/#comments</comments>
		<pubDate>Sun, 28 Mar 2010 14:22:03 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[car problems]]></category>
		<category><![CDATA[ion doesn't start]]></category>
		<category><![CDATA[saturn doesn't start]]></category>
		<category><![CDATA[saturn issues]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=282</guid>
		<description><![CDATA[About a year ago (right after the warranty ran out on my Saturn) I went out to my car&#8230; put the key in&#8230; turned it&#8230; nothing.  I&#8217;m a fairly mechanical guy and it was a cold day so my gut told me that it was the battery (or so I thought at the time).  I [...]]]></description>
			<content:encoded><![CDATA[<p>About a year ago (right after the warranty ran out on my Saturn) I went out to my car&#8230; put the key in&#8230; turned it&#8230; nothing.  I&#8217;m a fairly mechanical guy and it was a cold day so my gut told me that it was the battery (or so I thought at the time).  I got out the charger, hooked it up and waited.  After about 10 minutes, I turned the key again and voila!  The car started.</p>
<p>After this happened a few times I replaced the battery.  To my surprise, the problem persisted, and not only that, but I started realizing that it only happens when its cold!  I checked over all of the power connections and everything looked good, so I turned to the All Knowing&#8230; Google!</p>
<p>I searched a bit and found out the real problem.  Apparently there is what I consider a design flaw in the anti-theft system.  The ignition measures the resistance of the key and if it doesn&#8217;t match the resistance that it was calibrated to then it triggers the anti-theft system and you can&#8217;t even <em>attempt</em> to start the car for another 10 minutes&#8230; yikes!  In extreme cold (or heat), the resistance of the key/ignition changes and the security system thinks that you are a thief!  I took the car to Saturn and they told me that it would cost some hundreds of dollars and I refused!  This isn&#8217;t just any abnormal malfunction!  From reading the amount of people that has this problem on the internet this is a problem that GM should have fixed years and years ago&#8230; I guess that&#8217;s why GM is in trouble and Saturn has gone out of business.</p>
<p>The Solution?  For older models, I remember reading that there was a work-around that includes starting the car and modifying some wiring, but for a newer model like mine (2006 Ion), I was out of luck.</p>
<p>I tried various things until I found one that worked:  I started bringing a lighter in the car with me and warming up the key and ignition before I tried starting it the first time (see disclaimer below).  The other important part is to turn the key very slowly (such that there is an even amount of tension on it) until the car starts.</p>
<p>I&#8217;ve even gotten to the point of breathing heavily on the key (the same way you do when you warm your hands up on a cold winter day) and then turn the key very slowly (such that there is an even amount of tension on it) until the car starts&#8230;. this seems to do the trick.</p>
<p>Not the most elegant solution, but it will save you some money.</p>
<p><strong>DISCLAIMER: I take no responsibility for you starting yourself, your car, or any of your stuff on fire!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/general/my-saturn-doesnt-start-when-its-cold-or-hot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Write Maintenance-Free Software</title>
		<link>http://bantamcity.com/blog/game_development/how-to-write-maintenance-free-software/</link>
		<comments>http://bantamcity.com/blog/game_development/how-to-write-maintenance-free-software/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 22:06:53 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[good coding processes]]></category>
		<category><![CDATA[good development processes]]></category>
		<category><![CDATA[good programming practices]]></category>
		<category><![CDATA[low maintenance code]]></category>
		<category><![CDATA[low maintenance software]]></category>
		<category><![CDATA[maintenance free code]]></category>
		<category><![CDATA[maintenance free software]]></category>
		<category><![CDATA[work flow tips]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=268</guid>
		<description><![CDATA[In my full-time job as a software developer I encounter a ton of code that is not only hard to read/understand, but is very high maintenance as well.  It doesn&#8217;t matter how quickly you can write code if it&#8217;s bad code, because over the lifespan of the software you are probably going to spend way [...]]]></description>
			<content:encoded><![CDATA[<p>In my full-time job as a software developer I encounter a ton of code that is not only hard to read/understand, but is very high maintenance as well.  It doesn&#8217;t matter how quickly you can write code if it&#8217;s bad code, because over the lifespan of the software you are probably going to spend way more time debugging/fixing code than you spent writing it in the first place.  In this post I hope to give you a few tips that could drastically increase the readability of your code and decrease your project&#8217;s short/long term maintenance.</p>
<p><strong>Standard Techniques:</strong></p>
<ul>
<li><a href="http://www.amazon.com/gp/product/0672330164?ie=UTF8&amp;tag=bancitgam-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0672330164" target="_blank">Object Oriented Programming</a> (OOP) &#8211; concepts such as encapsulation, cohesion, and coupling are key concepts to understand.  Modeling data structures after real world objects has been around since the 60s, and widely used since the 90s but you still find people that refuse to do it.
<ul>
<li><span style="color: #3366ff;">Tight Encapsulation</span> &#8211; this is a way to separate the public, potentially user-facing interface from the internal implementation of an object.  This is achieved by using different access modifiers such as public, private, etc.  It is very common to find public variables in an object that get accessed by other objects&#8230; this is bad.  If you then need to add new variables or change the way an object works internally (and you will), it creates a ripple effect and you now need to update all of the code for each of the objects that access the changed object.  The objective with encapsulation is to develop a stable public API for a particular class such that you can change the internal workings of that class (private methods and variables) without having to update the public interface.  What this accomplishes is that now you don&#8217;t have to update any of the other objects that are calling into the changed object&#8230; this equates to lower maintenance.</li>
<li><span style="color: #3366ff;">High Cohesion</span> &#8211; this basically means that all of the responsibilities (methods) of a particular class are very closely related to each other.  The more focused a class&#8217;s purpose is, the less it will need to be maintained and the more reusable it will be.  For instance, if you had a Computer class, it could have a turnOn method and a compute method, but it shouldn&#8217;t have a print method.  Instead you would have a Printer class that has a print method that the Computer object may call.</li>
<li><span style="color: #3366ff;">Loose Coupling</span> &#8211; this means that one class should not know too much about another class, more specifically, class A should not know anything about the implementation of class B.  This is achieved through tight encapsulation and good API design.  Class A should only know what class B wants the public to know about it.  Think of each class as strangers to each other class&#8230; you only give access to things (public methods) that you want the stranger to have access to and you never show the stranger your privates <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_eek.gif' alt=':shock:' class='wp-smiley' />   When classes are too &#8216;friendly&#8217; with each other (exposing things that should be private) it causes the same kind of ripple effect mentioned above.</li>
</ul>
</li>
<li><span style="color: #3366ff;">Class/Variable/Method Naming</span> &#8211; names that you use in your software should clearly reflect their purpose and for the love of god, please don&#8217;t abbreviate unless its a well known acronym.  ssPos could be anything from space ship position to seriously stupid piece of shit&#8230; ok, its probably not that, but you get the point. spaceShipPosition would be a more appropriate name.  You would know exactly what it was when you look at it a month/year from now.  Some argue that the long length of these variable names will slow down your coding process&#8230; it wont&#8230; especially with most IDEs having some form of code completion these days.  Class names starting with an uppercase letter and variables/methods starting with a lower case letter and both continuing with camelCase is quickly becoming the widely accepted standard (IMO), but even if you don&#8217;t follow this at least be consistent.  Don&#8217;t use ufoCount in one place and alien_count or BulletCount in another.</li>
<li><span style="color: #3366ff;">Don&#8217;t Hard-Code</span> &#8211; its very easy while programming to start &#8216;hard-coding&#8217; values directly into your code.  For instance, you have an condition that looks like &#8216;if(userCount &gt; 100)&#8217; in 3 or 4 places.  When in reality it should be &#8216;if(userCount &gt; MAX_USER_THRESHOLD)&#8217; and setting a constant called MAX_USER_THRESHOLD = 100.  Now if you want to allow more users, you simply update the constant value (or even better, put this in a config file as mentioned below) instead of updating it everywhere and potentially missing one.  Your code shouldn&#8217;t contain any hard-coded values unless they are what I call &#8216;universal truths&#8217;.  For instance, &#8216;if(userCount &gt; 0)&#8217;, there&#8217;s no need to replace the number 0 with a constant called ZERO_USERS. 0 is 0&#8230; its never going to change.  This includes array sizes too.  You should try not to  make your arrays a constant size unless the size is dynamically created.  Instead you should try to use objects that can expand as entries are added (in Java &#8211; ArrayList, etc).  If for some reason you need to use a fixed size array you can then create one by using the size of the list (in Java &#8211; &#8216;new String[arrayList.size()];&#8217;)</li>
<li><span style="color: #3366ff;">Commenting</span> &#8211; we all hate to do it, but you would be surprised at how foreign your code looks a year from now (even less time if you don&#8217;t follow some of the stuff mentioned above).  I&#8217;m guilty of leaving my code comment-free from time to time, but I try to comment anything thats not immediately obvious to me.  Also, make sure your comments clearly describe what is happening, not just &#8216;//do stuff&#8217;.</li>
<li><span style="color: #3366ff;">Refactoring</span> &#8211; we all have deadlines and time crunches to worry about so there are going to be times when you need to write a quick and dirty piece of code&#8230; it works, but it irks you to your core (the good programmers out there know what I&#8217;m talking about).  When you write code like this, mark it somehow (for instance, Eclipse/Java uses FIXME comments) and this will be an indicator that you need to come back to it when you have more time.  When you do come back to it, write it in a nice low maintenance way and test it to make sure it does the same thing that the old code did.  The more of these little bits of ugly code you leave in, the harder to maintain the software becomes!</li>
</ul>
<p><strong>Advanced Techniques:</strong></p>
<ul>
<li><span style="color: #3366ff;">Configuration File Processing</span> &#8211; there are times when you have a ton of small little pieces of code that do pretty much the same thing except for small differences here and there.  Extract out the commonalities and write one piece of code that does the common parts for everything, then extract out the differences and put them in some form of configuration file (I prefer XML).  Now when the piece of code that is common runs, it can read from the configuration file to act on any differences.  An easy example is if you often have to change a hard-coded start/end date in your code in 4 different places, put the start/end dates in a config file and add code in those four places to read from the config file (which can be cached for speed).  This cuts down the number of places from 4 to 1 and removes the need to recompile.  The down side to using config files is that most of the bugs you find will end up being typos in the config file.  Also, don&#8217;t go crazy and extract <em>everything</em> otherwise you will end up writing your own scripting language.</li>
<li><span style="color: #3366ff;">Reflection</span> &#8211; this is a fairly new concept to most programmers, but this allows objects/variables/methods to be used/called just by knowing the name/signature of it at run-time (as opposed to design-time when you would normally do this).  This combined with the Configuration File Processing above could cut down on code drastically and virtually eliminate needing to update/compile your code.  For instance, you write a game that has user definable player characters (different look, different actions, etc).  Using the above mentioned techniques you could let the user create a config file that describes the player.  This config file could have one entry for a jpeg file for the character&#8217;s look and another entry that has a class/method name for the character&#8217;s action.  Now using reflection you could actually create the class that the user wrote and call their method&#8230; Nice!  Most newer languages support reflection and even a lot of scripting languages used in game engines support it (but probably don&#8217;t call it reflection).  Its a powerful thing to have in your mental toolbox.</li>
</ul>
<p>Hopefully the above tips have shifted your thought process in the right direction and I won&#8217;t have to look at code like this from you:</p>
<pre>// time it
if(nElpsdTm &gt; 16400) {    &lt;--- really hate the brackets here btw <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />
      Tmp = nElpsdTm;
      nElpsdTm = 500;
      sndMsgWTm(nElpsdTm);
}</pre>
<p>If you have any other tips that you think would be useful to other readers, drop me a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/how-to-write-maintenance-free-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is it possible to make an MMO in Torque Game Builder (TGB)?</title>
		<link>http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder/</link>
		<comments>http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 17:29:13 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[tgb]]></category>
		<category><![CDATA[tgb mmo]]></category>
		<category><![CDATA[tgb mmorpg]]></category>
		<category><![CDATA[torque game builder]]></category>
		<category><![CDATA[torque game builder mmo]]></category>
		<category><![CDATA[torque game builder mmorpg]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=254</guid>
		<description><![CDATA[I hear this asked here and there throughout the Garage Games forums and once in a while in various other game development forums. So what&#8217;s the answer?
Honestly I can&#8217;t say for sure, but my current project is an MMO(RPG) and I&#8217;m using TGB to develop it.  Anyone who has used TGB might be thinking, &#8220;That&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>I hear this asked here and there throughout the Garage Games forums and once in a while in various other game development forums. So what&#8217;s the answer?</p>
<p>Honestly I can&#8217;t say for sure, but my current project is an MMO(RPG) and I&#8217;m using TGB to develop it.  Anyone who has used TGB might be thinking, &#8220;That&#8217;s suicide!&#8221;, but I think its possible and sooner or later (at the rate I develop games, definitely later) I&#8217;ll find out for sure!</p>
<p>I know TGB can be used to make quality games, so what more is there to consider in making an MMO?  Besides the sheer size of the project, the biggest thing that comes to mind is networking/data architecture to support thousands and thousands of players.</p>
<p>With that, here are some of the things I&#8217;ve already considered:</p>
<ul>
<li><strong>Will TGB&#8217;s &#8220;turn-based networking&#8221; be an obstacle?</strong> The networking that comes with TGB was initially referred to as turn-based networking which to me implies that it is kind of slow/laggy, but in reality its more of an RPC-based networking so as long as you don&#8217;t need real-time ghosting for something like a twitch-based game, I think TGB may be able to hold its own.</li>
<li><strong>Can TGB handle that many concurrent connections?</strong> I asked this question a few different ways on the GG forums and the big shots tell me that the only realistic limit is the bandwidth and server hardware.  I guess if they are wrong then by the time I find out for myself it would be way too late to change to a different engine and you&#8217;ll surely find me hacking away at TGB source code to try and make it work.</li>
<li><strong>Does TGB have DB support?</strong> No, but there are some community source code mods that make it pretty painless to add SQLite support and it took me all of a couple hours to get this working. I hate making source code mods to TGB, but this one was definitely worth it&#8230; you simply can&#8217;t make an MMO without DB support.</li>
<li><strong>How much bandwidth will the server need?</strong> This is one thing that worries me because its not something that I can easily test.  As far as bandwidth goes, EQLive published EverQuest&#8217;s usage years ago as being about 1 KB/s per user download and .25 KB/s upload.  While I&#8217;m sure today&#8217;s MMOs (WoW, etc) use way more than that, I&#8217;m also estimating that my MMO will use quite a bit less than that as it doesn&#8217;t require as much information to be sent as often (in theory).  TGB also has a way to &#8216;tag&#8217; strings between the server and each client such that subsequent sending of the same string gets sent as a tag ID rather than continuing to resend the same string over and over again.  This should cut down on the bandwidth usage.</li>
<li><strong>How will I scale up the server as more players join?</strong> Most likely I will host the TGB server myself until the beta is underway and then scale up to a VPS or Dedicated server as needed.  The server will need to be Windows based (mostly because that is my development platform).  I also need to be able to scale up quickly in case I get an honorable mention on one of the big gaming news sites, but I also don&#8217;t want to break the bank while I&#8217;m anxiously waiting for that to happen.</li>
</ul>
<p>All-in-all I think I&#8217;m going to have my hands full for a long time, but I wouldn&#8217;t even try this if I didn&#8217;t think it was possible.</p>
<p>If you&#8217;re considering using TGB or another GG engine to make an MMO, check out this awesome list of discussions on the subject:<br />
<a href="http://www.garagegames.com/community/forums/viewthread/84535" target="_blank">http://www.garagegames.com/community/forums/viewthread/84535</a></p>
<p>Even if you&#8217;re not going with TGB, here is a huge list of things to consider when making an MMO:<br />
<a href="http://www.devmaster.net/forums/showthread.php?t=11656" target="_blank">http://www.devmaster.net/forums/showthread.php?t=11656</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/is-it-possible-to-make-an-mmo-in-torque-game-builder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Turning 30 Sucks</title>
		<link>http://bantamcity.com/blog/general/turning-30-sucks/</link>
		<comments>http://bantamcity.com/blog/general/turning-30-sucks/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 01:14:18 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[30 sucks]]></category>
		<category><![CDATA[turning 30]]></category>
		<category><![CDATA[turning 30 sucks]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=241</guid>
		<description><![CDATA[So I&#8217;m turning 30 in a few days&#8230; and I think I&#8217;m going through a midlife err..um&#8230; third-of-a-life crisis  
I&#8217;m normally very logical and clear minded, but I&#8217;ve been very irritable lately (just ask my wife).  On top that, the clarity that I once had seems gone at the moment.  Turning 30 has motivated [...]]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;m turning 30 in a few days&#8230; and I think I&#8217;m going through a <span style="text-decoration: line-through;">midlife</span> err..um&#8230; third-of-a-life crisis <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_confused.gif' alt=':?' class='wp-smiley' /> </p>
<p>I&#8217;m normally very logical and clear minded, but I&#8217;ve been very irritable lately (just ask my wife).  On top that, the clarity that I once had seems gone at the moment.  Turning 30 has motivated me to start thinking about what I want to be doing for the next 5 to 10 years and therein lies the confusion&#8230;</p>
<p>I have a great job as a software developer, but is that what I want to be doing for the rest of my life?  It wouldn&#8217;t be the worst thing that could happen&#8230; I also don&#8217;t think quitting my job and scraping pennies as a wannabe game developer is the best choice either.</p>
<p>A little clarity would go a long way right now, but anyway here are some other things I noticed that suck about turning 30:</p>
<ul>
<li>I can&#8217;t eat a pile of really spicy wings anymore&#8230; well&#8230; I can&#8230; and do, but its not worth it the next day (if you know what I mean) <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_eek.gif' alt=':shock:' class='wp-smiley' /> </li>
<li>My hair is thinning&#8230; not that noticeable to other people, but I can&#8217;t help but notice the glimmer of my scalp through my hair when the light hits it a certain way.  I&#8217;ve been turning gray since I was 18, but that never bothered me as much as this.</li>
<li>I feel like I have no time to do anything outside of work and sleep, and I don&#8217;t even have kids yet!</li>
<li>Its easier to get hurt and slower to heal.</li>
<li>I didn&#8217;t make my first million yet&#8230; oh, like your goals for turning 30 are so much better! <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_mad.gif' alt=':mad:' class='wp-smiley' /> </li>
<li>My memory has been going downhill quick&#8230; I&#8217;ve got a ton of iphone reminders and post-its everywhere for things I&#8217;m supposed to do.</li>
<li>There&#8217;s only a few years left until the <a href="http://www.amazon.com/gp/product/B001IF5PCE?ie=UTF8&amp;tag=bancitgam-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001IF5PCE" target="_blank">end of the world</a>.</li>
</ul>
<p>That&#8217;s all I got for now&#8230; leave some comments and let me know what <em>you</em> think sucks about turning 30!</p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/general/turning-30-sucks/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>New Look and Feel for Bantam City Games</title>
		<link>http://bantamcity.com/blog/game_development/bantam-city-games-look-and-feel/</link>
		<comments>http://bantamcity.com/blog/game_development/bantam-city-games-look-and-feel/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 14:18:14 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=221</guid>
		<description><![CDATA[Sorry for the lack of posts in the last couple weeks&#8230; The 24 Hour Game Experiment got me thinking about what it would be like to be a full-time game developer.  What would I do first?  What&#8217;s most important?  When I thought about it, the first thing I would do is redesign the main website [...]]]></description>
			<content:encoded><![CDATA[<p>Sorry for the lack of posts in the last couple weeks&#8230; <a href="http://bantamcity.com/blog/game_development/the-24-hour-game-experiment/" target="_blank">The 24 Hour Game Experiment</a> got me thinking about what it would be like to be a full-time game developer.  What would I do first?  What&#8217;s most important?  When I thought about it, the first thing I would do is redesign the main website to be more customer friendly and less &#8216;corporate&#8217; looking.  I also wanted to get a better way to gather newsletter customers.  Lastly, I wanted to get some kind of up-sell system going.  After realizing that these are the first things I would do, I stepped back and said, &#8220;Well, why don&#8217;t I just do these things now!&#8221;  It&#8217;s not like they are huge time-consuming tasks like creating an MMO <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So, I haven&#8217;t done the newsletter part or the up-sell part yet, but I&#8217;m just about done giving the site a face lift (some of the ToW pages still need to be revamped).  So take a look around the <a href="http://www.bantamcity.com" target="_blank">Bantam City Games</a> site and let me know what you think.  For those of you too lazy to click the link and browse around, here&#8217;s a screen shot of the main page.</p>
<p><a href="http://www.bantamcity.com" target="_blank"><img class="alignnone size-full wp-image-223" title="bantamcity" src="http://bantamcity.com/blog/wp-content/uploads/2009/11/bantamcity.png" alt="bantamcity" width="451" height="447" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/bantam-city-games-look-and-feel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The 24 Hour Game Experiment &#8211; Conclusion</title>
		<link>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-conclusion/</link>
		<comments>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-conclusion/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 22:08:53 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=206</guid>
		<description><![CDATA[Well&#8230; the experiment is over.  I&#8217;m sure it comes to no surprise to most of you, that I did not finish the game in time.  I think realistically I would need another 72 man hours to make this game sell-able.  The problem is that it took me about 2 weeks to get in just 24 [...]]]></description>
			<content:encoded><![CDATA[<p>Well&#8230; the experiment is over.  I&#8217;m sure it comes to no surprise to most of you, that I did not finish the game in time.  I think realistically I would need another 72 man hours to make this game sell-able.  The problem is that it took me about 2 weeks to get in just 24 man hours and by the time I put in another 72 it would be way too late to get the game out for the holiday rush.  Not to mention some of the publishers I&#8217;ve contacted say that their queues are already jam-packed for the rest of the year.</p>
<p>With that being said, the project wasn&#8217;t a total waste.  Here are my observations:</p>
<p><strong>The Good:</strong></p>
<ul>
<li>I was able to include mouse-controlled game play, splash screens, menu, credits (all with screen transitions and some with final artwork), in 24 man hours.  That&#8217;s a huge accomplishment and quite frankly a credit to <a href="http://bantamcity.com/blog/game_development/torque-game-builder-review/" target="_blank">Torque Game Builder</a>.</li>
<li>I think a Christmas-themed game was a good choice from a sell-ability standpoint.  My thought here was that it should be easier sell a &#8216;less complex&#8217; game when it is properly themed.  I don&#8217;t think anyone buys a Christmas game expecting to play it for months and months.</li>
<li>I found a really cool site for generic vector graphics that can be reused in games (I found out that not all royalty-free sites have this type of licensing option).  <a href="http://www.vectorstock.com" target="_blank">www.VectorStock.com</a></li>
</ul>
<p><strong>The Bad:</strong></p>
<ul>
<li>24 hours is obviously too short a time to finish a game.  I half knew this going in, but &#8216;The 96 Hour Game Experiment&#8217; just doesn&#8217;t have the same ring to it <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':grin:' class='wp-smiley' /> </li>
<li>I started the experiment way too late in the year to get a Christmas-themed game to market (especially with me being <em>extremely</em> part time).</li>
<li>I underestimated the amount of time it takes to test the game&#8217;s fun factor and throw away parts that aren&#8217;t fun and come up with/test new ideas.  This is where I spent the final hours.</li>
</ul>
<p><strong>The Ugly:</strong></p>
<ul>
<li>Another unfinished project gets put on the shelf <img src='http://bantamcity.com/blog/wp-includes/images/smilies/icon_mad.gif' alt=':mad:' class='wp-smiley' />  (at least until next year)</li>
</ul>
<p>Overall, I&#8217;m glad I did the experiment and I hope to do another one at some point next year (with more realistic expectations).  This project made me realize how much I really can get done in such a short amount of time and that maybe being a part-timer isn&#8217;t the best way to go.  I&#8217;ll be putting some serious thought into how I can devote more of my time to game development in the near future.  For now, its back to working on my MMO&#8230;</p>
<p>I hope you enjoyed following along with the experiment and decide to stay tuned to see what&#8217;s next!</p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-conclusion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The 24 Hour Game Experiment &#8211; Update 4</title>
		<link>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-4/</link>
		<comments>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-4/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 10:46:13 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=193</guid>
		<description><![CDATA[Since I went back to work on Monday, my game development time is limited again, but over the last couple of days I did squeeze in about 4 more hours which brings me to 19 total.  This is the painful thing about being a part-time game developer.
Anyway&#8230; I added some production quality art into the [...]]]></description>
			<content:encoded><![CDATA[<p>Since I went back to work on Monday, my game development time is limited again, but over the last couple of days I did squeeze in about 4 more hours which brings me to 19 total.  This is the painful thing about being a <a href="http://bantamcity.com/blog/game_development/developing-games-in-your-spare-time/" target="_blank">part-time game developer</a>.</p>
<p>Anyway&#8230; I added some production quality art into the game (but still need to redo Santa and the houses) and finished up the Main Menu with some flashy artwork and here&#8217;s what I have so far:</p>
<p><img class="size-full wp-image-194 alignnone" title="MainMenuScreenShot" src="http://bantamcity.com/blog/wp-content/uploads/2009/10/MainMenuScreenShot.png" alt="MainMenuScreenShot" width="452" height="338" /></p>
<p><img class="alignnone size-full wp-image-195" title="InGameScreenShot" src="http://bantamcity.com/blog/wp-content/uploads/2009/10/InGameScreenShot.png" alt="InGameScreenShot" width="452" height="338" /></p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The 24 Hour Game Experiment &#8211; Update 3</title>
		<link>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-3/</link>
		<comments>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-3/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 18:11:22 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=181</guid>
		<description><![CDATA[I didn&#8217;t get a chance to work at all yesterday, but today I spent about 4.5 hours so its been a total of 15 hours and I&#8217;m starting to feel the crunch&#8230;
I have most of the game play worked out, but the game seems too simplistic right now.  It feels too much like one of [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">I didn&#8217;t get a chance to work at all yesterday, but today I spent about 4.5 hours so its been a total of 15 hours and I&#8217;m starting to feel the crunch&#8230;</p>
<p>I have most of the game play worked out, but the game seems too simplistic right now.  It feels too much like one of those flash games that you play for a few minutes at lunch&#8230; so I guess that means I need to enhance the game play a bit.</p>
<p>Most of the artwork is still placeholder stuff, and there&#8217;s no audio at all, so I need to get moving on that.  I think I&#8217;ll concentrate on the in-game art next.</p>
<p>I added an end-of-level stats screen which turned out pretty nice:</p>
<p><img class="alignleft size-full wp-image-182" title="24HourGameExperimentScreenShot14" src="http://bantamcity.com/blog/wp-content/uploads/2009/10/24HourGameExperimentScreenS.png" alt="24HourGameExperimentScreenShot14" width="451" height="354" /></p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The 24 Hour Game Experiment &#8211; Update 2</title>
		<link>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-2/</link>
		<comments>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-2/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 23:39:52 +0000</pubDate>
		<dc:creator>Bruno Campolo</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://bantamcity.com/blog/?p=173</guid>
		<description><![CDATA[Another 4 hours have passed and I didn&#8217;t feel nearly as productive this time&#8230; in fact right now I&#8217;m realizing that I wasn&#8217;t very productive at all for the last hour or so&#8230; mostly muddling around on various royalty free illustration sites looking for good images.
That&#8217;s my cue to pack it in for the night [...]]]></description>
			<content:encoded><![CDATA[<p>Another 4 hours have passed and I didn&#8217;t feel nearly as productive this time&#8230; in fact right now I&#8217;m realizing that I wasn&#8217;t very productive at all for the last hour or so&#8230; mostly muddling around on various royalty free illustration sites looking for good images.</p>
<p>That&#8217;s my cue to pack it in for the night and hopefully I&#8217;ll be ready to go for tomorrow and/or Sunday.</p>
<p>Not too much to show for myself this round, but I did fix a bunch of issues with the game play mechanics and here&#8217;s a nice screen shot of the credits:</p>
<p><img class="size-full wp-image-174   alignnone" title="Credits" src="http://bantamcity.com/blog/wp-content/uploads/2009/10/Credits.png" alt="CredtsScreen" width="451" height="343" /></p>
]]></content:encoded>
			<wfw:commentRss>http://bantamcity.com/blog/game_development/the-24-hour-game-experiment-update-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

