Game Development Community

The long overdue blog...

by Melv May · 06/10/2008 (5:09 am) · 43 comments

So it's been quite a while since I last posted a blog, you may have noticed, you may not.

Either way I've been very busy not only generating code but generating another daughter. So the family has grown to Jessica (4 years old), Emily (8 months old), Dad (too old) and Mum (kill me if I told you). All are well and now that Emily is moving away from baby-hood, life is settling down to something resembling normality.

This blog for me is probably the second most important blog I've ever done here at GG. The reason? Well I'll get to that (eventually) but first I hope you'll let me indulge myself and hopefully you too in a little bit of Torque 2D nostalgia. The reason for the nostalgia? Well first and foremost is that this blog is more than just about the cold development of a product, it's about people who develop it and want to be involved in the development of it.

This is my story...


68.233.5.139/~transfer/melvstuff/gg.jpg
It was quite a few years ago now when I stumbled across the "GarageGames" web-site. I don't exactly remember how or why I surfed there but a few months later I was glad I did. The site just stood out for me and there seemed to be alot of excitement buzzing around the site. When I signed-up back in 2001 I started looking through the forums and there was an absence of profanity and arguing! That was very refreshing for an Internet forum. Better still there were no trolls and no adverts and there were these Demigods who apparently developed Tribes and they had a message so I sat down and listened, purchased and started learning ... slowly!

A few weeks after hitting the site I was hooked and it was my number one place to visit. It was soon to become my only place to visit because I had very little time to do anything else. The then "V12" engine soon to be renamed "Torque" (was that because of the "engine" association or because Jeff T loves motorcross?) was for me, very complex and poorly documented but it contained a whole world to explore and that's exactly what I did.


68.233.5.139/~transfer/melvstuff/nerd.jpg
Okay so I admit that I'm a complete computer nerd and this kind of stuff got me excited, hell it still does and I really hope it always will. After spending a lot of time really not doing anything useful but learning lots of stuff about GUIs and networking and graphics and resource management and scripting and lots of other stuff, I finally got around to producing something that I could post as a resource to the community.


68.233.5.139/~transfer/melvstuff/fx.jpg
After doing that I got lots of positive feedback from the community and to be completely honest, for me it was very nice to have a focus for my coding time. Getting positive feedback really motivated me to do more and that's how the "FX" set of resources were born! I jumped from one thing to another producing stuff like the "fxGuiSnooper", "fxFlare", "fxLight", "fxSunlight", "fxFoliageReplicator", "fxShapeReplicator", "fxRenderObject" and modifying the waterblocks etc.


68.233.5.139/~transfer/melvstuff/flower.jpg
During this period I watched the engine grow from a seed and the community grew and grew and really started to flourish. I personally found lots of friends, ended up owing lots of beers, was owed lots of beers and it was good. I was learning lots of stuff not only about coding in general or about low-level engine details but about producing stuff for a community. I actually got hooked into helping people on the forums and there are lots of people around who do that selflessly today and I have nothing but admiration for them. I personally get quite a buzz from helping people on forums. Some of it is because I see people asking questions that remind me of myself asking that very same question. Indeed I know what's behind someone posting such a question, sometimes hours and hours of frustration!

So over a span of a few years producing "FX" stuff and posting on the forums I ended up getting involved in a project called "Strategem" in 2003.


68.233.5.139/~transfer/melvstuff/strategem.jpg
I won't go into that but I will say that I got into it because there's that longing to make a game that emerges and I fell for it knowing how hard it was to actually complete one! Needless to say that we produced a working prototype that was very promising and for lots of reasons the team fell apart which was a shame but I learned lots from it. So soon after that fell apart I felt like I was in no-mans land. At this point I had all this knowledge and I really didn't feel like producing any more "FX" objects and apart from my involvement in the forums I couldn't think of what to do next. I really wanted to make something that people could use that had some real value.

I don't remember how long after "Strategem" it was but at some point I remember having a shower and having one of those "eureka" moments! The thought suddenly occurred to me, why not build a 2D 'layer' to Torque? I do remember hurrying to my computer room and scribbling some notes. My brain just opened-up and I was so excited by what I was seeing emerge in front of me that I took the next two days off work and being as we didn't have kids then, I isolated myself whilst I put together some ideas on how it would look. Sarah (my wife) didn't worry about this because she'd seen what she called my "mad-professor" moments before.

68.233.5.139/~transfer/melvstuff/docbrown.jpg

I've actually still got those original notes and I'm looking through them now as I write this blog. I told you I was indulging in nostalgia! Anyway, it wasn't long before I had what I thought was a good basis to start. Forgot your big detailed plans, this was A4 lined-paper with scribbled developer notes and I was primed and ready! So off I went in my own little world creating the beginnings of the "t2dSceneGraph" and "t2dSceneWindow" and the multi-view capability. Stuff like static-sprites emerged followed by an animated-sprite class. I then started researching tile-maps and got together a plan to achieve that but add a bunch more features. I didn't care about selling this or what alternatives there were I just wanted to create it.

Eventually though, I got the urge to start putting up plans to show the world what I was spending my time on and so I started posting on threads like this and posting up images such as...

68.233.5.139/~transfer/melvstuff/tilemap1.jpg68.233.5.139/~transfer/melvstuff/tilemap3.jpg68.233.5.139/~transfer/melvstuff/mountshot1.jpg68.233.5.139/~transfer/melvstuff/mouseshot1.jpg68.233.5.139/~transfer/melvstuff/collisionshot2.jpg68.233.5.139/~transfer/melvstuff/animationshot1.jpg

I got some amazing feedback and others showed genuine excitement about getting their hands on it so I got more elaborate in my plans and started showing the images and videos that excited me and I got carried away with the whole thing. As sad as some people may think, it became my every waking thought. My work suffered considerably. I dashed home from work, ate, kissed the wife and disappeared into my computer room. It wasn't a problem; she's a book-worm and read books for most of the evening anyway. We were (and still are) very happy and I love her very much for always supporting me. Months of development were poured into it and there was more than a single occasion when I fell asleep at my keyboard.

68.233.5.139/~transfer/melvstuff/yawn.jpg

So after several months of total immersion I was leading towards releasing it for free and I remember proposing a release date on the forums. I even had a name: "Torque Retro 2D"! I don't recall who posted on the forums but someone suggested "T2D" and I liked that!

68.233.5.139/~transfer/melvstuff/t2d.jpg

So sometime during that period when I was making plenty of noise about my new creation, my email box rang and it was from Jeff Tunnell. Holy Cow! One of those Demigods I mentioned earlier had just sent me an email. To most people that probably wouldn't seem like much but I had got an email from the "boss-man demigod" and I'm sure Jeff has had people call him many things but possibly never that!

68.233.5.139/~transfer/melvstuff/god.jpg

I thought about posting the email here but I'd be sad to admit that I've still got it ... errr ... which I ... errr ... haven't *ahem*. Anyway, the essence of the email was one of "give your hard work out for free, are you insane?" Now without providing the rest of the email you'd probably think that was just some evil capitalist statement but Jeff continued in the email to discuss how there's a great opportunity here for a product bigger than I had previously imagined. That gave my confidence a huge boost for which I will never be able to repay him. To say I was floating-on-air is an understatement.


68.233.5.139/~transfer/melvstuff/explosion.jpg
That email marks a point in time when T2D was born and an explosion of development happened. Soon after that email arrived I was put in touch with Josh Williams and I can honestly say that then began one of the most enjoyable times I've ever had writing code. I won't get all slushy and start thanking Josh, that's been done and he already knows how well our collaboration went. Good times indeed.

It was during that period when some hard production decisions were made and a whole bunch of my naive design decisions were blown out of the water but just as many held true. Between Josh and me we came up with a bunch of stuff we'd like to see in the first release. Lots of it was pretty complex stuff and although during our messenger chats I tried to "sound" confident in what was being discussed, a part of my brain was saying to me, "don't say yes to that, it sounds really hard"! The thing is I said "yes" and then took each of those chats and produced a bunch of designs and eventually the code for it. It was like tennis with Josh firing stuff at me on a Friday and by Monday I'd done it. It was a wonderful problem solving exercise.

During this period my wife gives birth to our first daughter Jessica and that was wonderful. I'm not sure how I managed it but during the following 8 months it didn't stop the T2D work at all. Any of you that are parents may think that a complete fabrication but I can honestly say that it's the truth. It's always been my problem: if I get my teeth into something I simply can't let go. Never under-estimate a single motivated person with the right tools! Anyway Jessica helped me develop it and as Josh pointed out at the time she did the "random key jabbing and drool QA testing"!

68.233.5.139/~transfer/melvstuff/jessicat2d.jpg

Prior to us releasing it we were considering all sorts of demos because so far we'd only focused on the engine and not how it'd be presented. I did a bunch of things, most of which had programmer art but we had some great help from the community and it was great to actually start making something with what I'd created.

68.233.5.139/~transfer/melvstuff/tablewip2.jpg

One demo that always comes to mind and I know Josh will kill me for posting this but I got a classic email from Josh where he gave me a rough idea on a design for a Pachinko style demo...

68.233.5.139/~transfer/melvstuff/joshdemo.jpg
WTH? Well my coding wasn't much better...

68.233.5.139/~transfer/melvstuff/pachinko.jpg
I think I actually swore that I'd delete that image during a chat with Josh. Well, I did delete it but then promptly recovered it from the trash-can so I techincally kept my bargin. Sorry Josh, you know I love you bud. ;)

Luckily we got some great help from the community, specifically Craig Fortune and Nauris Krauze and ended up with a better looking design that ended up being nothing like a Pachinko style game...

68.233.5.139/~transfer/melvstuff/gravbuildings.jpg

So after spending nearly 18 months of coding from the beginning, T2D was ready for release. I will never forget that time. We had packaged up the release and the web-site was being prepped for the download. It was very late (about 2am GMT-0) and I was getting email from various GG folks saying that it's about to go live! I got chatting with Dan MacDonald and the two things I remember vividly about that time was the moment T2D went live and the chat with Dan. We had a discussion along the lines of "you always remember your first product release!"

Finally I got an email from a bunch of people at GG saying "Woot, the sucker is live!!!" To say that it was like the birth of your first child wouldn't be correct but it was similar in that it was a moment where I was simultaneously excited and full of dread!

So that was it ... out in the wild. I was blown away by the response and to be honest, just by how many people wanted to get hold of it. The thing is that although I'm being awfully self indulgent now, at the time I was so humble that I was being allowed to release a product and actually accept any cash for it but that's what was happening. I honestly didn't care about the sales, I just wanted people to be kind and say that it was worth buying!

I dreaded people saying that "I purchased T2D and that it was rubbish." I don't think I really expected that kind of feedback but it was a latent fear. The response was better than I could have even hoped for but as with any product there were those who wanted more and I was only too happy to accomodate them so T2D grew and grew. There were a few that dinted my pride a few times but taking criticism is all part of the game. If you can't do that then you need to do something else. A friend took a particularly funny Dilbert cartoon and modified it and that brought me back from the brink one time.

68.233.5.139/~transfer/melvstuff/t2ddilbert.jpg

The great thing was that people were throwing prototypes and games together at such a rate it was hard to keep up. Nothing was ever going to be a million-seller but people were using it and having fun and it was awesome to watch...

68.233.5.139/~transfer/melvstuff/games/asteroids_johnvanderbeck.jpg68.233.5.139/~transfer/melvstuff/games//breakout_charlesgibson.jpg68.233.5.139/~transfer/melvstuff/games/breakouttwist_lennartsteinke.jpg68.233.5.139/~transfer/melvstuff/games/cardgames_jeremytilton.jpg68.233.5.139/~transfer/melvstuff/games/cloudkingdom_coreymartin.jpg68.233.5.139/~transfer/melvstuff/games/gravitygorilla_terrygreenlaw.jpg68.233.5.139/~transfer/melvstuff/games/hovercrash_chriscockcroft.jpg68.233.5.139/~transfer/melvstuff/games/isogame_mattvangorkom.jpg68.233.5.139/~transfer/melvstuff/games/jugglemaster_garybriggs.jpg68.233.5.139/~transfer/melvstuff/games/kings_gavinbeer.jpg68.233.5.139/~transfer/melvstuff/games/mathlessons_jasonmcintosh.jpg68.233.5.139/~transfer/melvstuff/games/missilecommand_coretymartin.jpg68.233.5.139/~transfer/melvstuff/games/packman_garypreston.jpg68.233.5.139/~transfer/melvstuff/games/smokinblobs_owenortmayer.jpg68.233.5.139/~transfer/melvstuff/games/starwars_randyanthony.jpg68.233.5.139/~transfer/melvstuff/games/twindistress_keithframpton.jpg68.233.5.139/~transfer/melvstuff/games/wildtaac_mattedwards.jpg

So since that time we've had a number of releases and many features added and bugs fixed but importantly, part the way through that, we ended up developing the product into Torque Game Builder.


68.233.5.139/~transfer/melvstuff/tgb.jpg
During the initial stages of the game builder I was actively involved in it but as time went on I was less and less involved and some very capable people at GG took that over and did a much better job than I ever could have achieved. I'm not a GUI tools guy, something inside me won't let me be! So for a long time, whilst the game-builder was going from good to great to excellent, I wasn't involved much in the product. This wasn't due to GG in any way, I think I was burned-out due to it. I'd spent so much time and energy in an almost never ending period of over 2-3 years. Beside, there were very capable people at GG to do alot of that work.

After a while I ended up coming back to it and fixing things here and there and adding features like tick-based physics but I always missed those early days. Over the last year we had our second child Emily...

68.233.5.139/~transfer/melvstuff/emily.jpg
She's adorable in every respect and Jessica had grown to nearly four years old...

68.233.5.139/~transfer/melvstuff/jessicagrownup.jpg
... now I'm starting to feel old. So, as I said at the beginning of this admittedly extended plan, Emily has now come out of baby-hood and life is settling down again. My work has also enabled me to spend more time at home and I'm finding I have plenty of useful free-time. I purchased a decent telescope (Celestron CPC 11" Schmitt Cassegrain) and started spending time looking at the night sky, something I did when I was really young and, weather permitting, I enjoy it more so now. There's something to be said about the solitude and quiet under a dark night-sky.

Anyway, earlier this year I started looking at how TGB has evolved and the itch came back like a ton of bricks. I did a whole bunch of work fixing up the physics that had become quite broken and started establishing some regular chats and communications with the new GG team. Boy has GG changed!

68.233.5.139/~transfer/melvstuff/future.jpg
So what does the future hold? For me I've pretty much dedicated a majority of my free time to TGB now. What does this mean for you? Well for a start I'm spending much more time on the forums trying to do my very best to help people. On top of that I'm monitoring bugs and entering them up on the GG bug tracking system and posting bug reference numbers but all this is small-fry.

What I'm really "here" for today is for your help and in no small way is this just me asking this, it's the folks at GG. What I'm going to do is pick your brains about the existing TGB product and how we can turn it into a product for the future. To do this we're going to put together some structured stuff like a survery which I'd love for you to grab a coffee and spend a few minutes of your time filling out. On top of this I want to enter into an open discussion and see what you folks would like, need or would drink a bottle of cooking-oil for. ;)

I don't want to limit this discussion to only minor changes to existing features. Open your mind to radical changes if you wish. If it's "you need to completely rewrite XXXX" then great, but if you can also tell me what you want in its place it'd be so much more useful. You can start by posting on this blog but it'd probably be better if you start posting in the TGB Suggestion Forum. I don't care if it's a list of disjoint features, whether it's a comprehensive breakdown of how you'd want a 2D engine working or just a simple post saying "make XXX work like this please."

If you haven't got time at the moment to do that then don't worry. I'm going to be making lots of noise around here in the coming weeks so you'll get your chance, but if you do get a moment then come back and post your thoughts. I don't care if you've been using TGB for 3 years or 3 minutes, all comments are welcome, none will be ignored.

Don't expect me to commit to a timeline of when any of the requested features may be implemented but do expect me to get involved in a discussion on how such a feature request might happen. For the moment though I'm trying to get a good "view" of what the community wants from the product. I may be able to provide more insight into the direction we personally want to take this product but for the moment, here is your opportunity to have your say and be heard.


68.233.5.139/~transfer/melvstuff/idea.jpg
In my next blog soon I'll be posting up a survey and gathering my thoughts into a more concise blog than this one turned out to be. I'm genuinely excited to be doing this and I really hope you can find some time to join in too.

Let the ideas commence...

Melv.
Page«First 1 2 3 Next»
#41
09/11/2008 (5:07 am)
Hi Melv. First let me say that I think you're doing some excellent work on TGB and we all appreciate it. But now I have to be a pain in the butt and ask if you can take some of your valuable time and take a quick look at my question over on the forums. I'd really appreciate it as we are nearing a deadline soon. Cheers.
#42
10/07/2008 (4:57 pm)
....! I *just* noticed this blog, and not only is one of my early T2D screenies in there, *TWO* of my early T2D screenies are in there! BEAT THAT CHUNKY! :D
#43
06/21/2010 (11:56 am)
Wow, that's some history! You are 'the God' now Melv, and you totally deserve it.

I didn't know what a sprite was before I started with TGB. The forums are awesome, the docs are great...the learning curve looked more like a flat line and am hopelessly hooked. I know it's 2010 (2 years after this was posted). Just wanted to say thanks, for spending all those days bent over your keyboard and Jessica for the QA...:)
Page«First 1 2 3 Next»