Managed World

Techno-babble from yet another babbler RSS 2.0
# Friday, May 19, 2006

Seeing that George is so willing to be open about his plans and progress, I've decided to follow you suit. After all, this should make it more enjoyable for you readers out there (is there anybody out there?). So, on to a progress report, shall we?

In order to help manage the scope of this project due to the time frame, I have decided that Spaceballs will be a 2d game instead of 3d. This should simplify many aspects of the coding by minimizing the sheer amount of code that needs to be written. The other thing that I am doing to help manage the scope is that I'm not writing my own "engine" code from scratch. That's right, you won't see a lick of Managed DirectX or OpenGL code out there (which some of you may find shocking).

So, if no Managed DirectX or OpenGL, what am I using? I'm actually using the .NET wrapper for SDL. Since I won't have to write much graphics or input code, I should be able to spend more time focusing on the game features and game play.

In the vein of controlling scope (aka preventing scope creep), there are several features that I was getting around to implementing in Tanks that I have decided to axe in Spaceballs. Mainly, I will not be writing a virtual in-game Console, and I won't be doing saved games or game replays.

To help me get from start to finish sooner, I have decided to adopt the "Tracer Bullet" paradigm from The Pragmatic Programmer. I will get my game fully functional through and through (with very few features) and then I will improve on that over time. As of tonight, I have actually made progress in this regard.

Where do I stand tonight? I have my MessageProcessor (the "nervous system" of the game) completed and hooked up. I have also created my GraphicsService and StateService classes and completed the ServiceLocator that will be able to lookup and retrieve these services at runtime. I will go into this pattern in a future post and explain how it will also make unit testing the game quite easy (well, at least easier than what it would be using other means).

I also have all my main game states (MenuState/PlayState/RecapState/HighScoreState) hooked up to the StateService. Not only that, but I have the keyboard handling working and pumping into the StateService. Currently, you can use keys to navigate through every state of the game. The "instructions" for how to navigate are printed on each state and state transitions are handled when the correct keys are pressed. I'm thinking that this weekend I'll probably add a ShipSelectionState and DirectionsState.

Sooooooo, to make a long story short, I have my "framework" set up and a good start to a tracer bullet working. Everything is also logging as expected by using log4net.

Sometime this weekend I will try to make a longer post on the patterns I am using to establish the architecture of my game code. If done properly, this should definitely easy the development process while cranking this game out the door. Until then, I'll see you all next time :).

P.S. I now officially have this coming Monday-Wednesday off of work (PTO), so expect me to make a serious push to getting this sucker playable :P.

 #       Comments [0]

Well, it looks like Tattoo-Boy is back to his old tricks. With all the time he is spending on writing comics (don't quit your day job, buddy), it's obvious that he needs some help to get going in this project. In that vein, I have put together this project plan that he can use to help him "compete" in this contest (and by "compete", I mean write useless code while thinking that you stand any chance to beat the Almighty George of the Jungle):

Day 1: Buy book "Learn to Program VB in 21 Days"

Day 2-25: Read book (<-- Notice the extra days, that helps give some padding because of the slower mental processes due to the amount of absorbed tattoo ink over the years (I've been meaning to ask you Chris, can you get through a metal detector at the airport with out it going off?))

Day 26-28: Write Hello World application

Day 29: Try to figure out why Hello world application is not working

Day 30-37: Learn the intricacies of Console.WriteLine and design some ASCII art for game

Day 38: Have main character (aka "@" symbol) respond to keyboard events and move around the screen

Day 39-40: Create a dragon that has "AI" that doesn't respond to any input

Day 41: Get game compiling

Day 42: Submit partially functional game, with partially working code, with Trash Talking posts as blogging progress, and with pretty colors to make game "fun"

Day 43: Proclaim self winner

Day 44: Lose

Now, on the other hand, here is what George and I will be doing (or have already done):

Day 1: Open up IDE, immediately ensuring victory over Chris

Chris, if it makes you fell any better, I'm sure you could beat several monkeys if they entered the contest (okay, that might stretching it a bit, how 'bout dogs?).

 #       Comments [0]

Okay, I'm taking a bit of a break from the trash talking for this post. I have to say one thing: I'm really excited about how this game development contest is shaping up. It looks like George is off to a great start. I read through his design document and if he can complete his game, I think that I for one will definitely enjoy it and that he would stand a good chance at winning that 360. I really love reading about other people writing games and I have a feeling that there is going to be no shortage of that in the next 40+ days.

Another thing that excites me is that, if this continues, it might be able to bring some good attention to leveraging .NET as a hobbyist game developer since you can do it for completely free now.

Anyways, sorry for the diversion. Back to the trash talking and game programming :).

 #       Comments [0]

I just happened to have the television on while writing my winning entry in the GWB gaming contest and the Andy Milonakis Show just came on. OMG. WTF?!?!?! Is this actually a show? And why am I still watching? OMG, LMAO, ROFL. I can't believe this show. It just keeps getting better and better.

Okay, I'm just speechless. What is up with this rapping? How old is this kid? OMG. I can't take my eyes off the screen, I'm transfixed. This is nuts. It's utterly crap but it's utterly funny. "Pork fat in my Sippy Cup"???????? Okay, I'm..... just...... shocked. And why am I laughing?!?!?!?!?

Posted in Personal
 #       Comments [0]
# Thursday, May 18, 2006

Not much to report today. I had some family engagements so I was only able to spend 20 minutes or so on the game. I did get a new repository on my Subversion server created and a bare-bones project imported into it. I have the simple "Hello World" app per usual. Tomorrow evening I'll really get started on the sucker :).

Why Spaceballs? Well, I was feeling frisky and, frankly, _maybe_ just a tad bit drunk (those of you who know me may laugh now). I also wanted to give a bit of an homage (as we learned (that's Learn-Ed) people call it) to the great Mel Brooks, simply by the name though since the game has absolutely nothing to do with the movie by the same name.

This game that I'm creating for the GWB game coding contest is inspired by the XBox-great Geometry Wars Evolved. There are some changes I'm making though to hopefully give it a little BAM-WHIZ-BANG flavor to it. I'll go into those features at a later date though.

My renewed impressions of Visual C# Express? After being used to using Visual Studio 2005, it is truly striking just how much of the same functionality the Express Editions truly have. So far, I have yet to truly miss a single feature. With the work that Jamie Cansdale has done getting the TestDriven.NET add-in working with the Express Editions, I have nearly everything I need.

The one feature I kind of miss? The Class designer. To tell you the truth, it was basically the only reason I upgraded to Visual Studio 2005 for my hobby projects at home. However, at the time, it was simply because I wanted to start using the feature. In practice, I realized that I don't actually use that feature that much (at least not yet). I kind of expect to go along and not experience too many holes of missing features in the Express Editions for the hobbyist development I'm doing (which is great since they are now officially free forever).

I suppose I'll see you all next time around when I have a bit more information to share with you. Until then, I need to do some thinking about a project plan and how long I have to get a functional prototype so I can start messing around with actual gameplay. Mmmmmmm, gameplay!

 #       Comments [0]

Well, it turns out that someone is wanting to make a go of this game programming challenge for GWB. If I recall, the contest rules dictate that part of the winning total also comes from blogging your progress. I have one thing to say to Mr. Maximus in that regards: "You're In Deep Horsey Doo-Doo!!". I fully expect that Chris will be able to "step away from the methodology buffet and actually produce something that works" as he puts it (speaking of producing, how's that next release of HA! coming, monkey boy?), but as for writing about it? Ha, that's a funny one!

You see, the advantage I have is that I can actually write well and be understood. Sure, Chris looks pretty cool with all his "tattoos" and such, but there are proven side-effects from having so much ink in your blood (and by "proven", I mean that I'm like totally making this crap up). One of the medically known side effects is that you can't write code worth crap. It's true! It's proven medical fact! I have a strong feeling that on June 29th, he's still going to be trying to figure out why his code won't compile :). (Hey Chris, here's a hint, it's probably because you're trying to compile VB code in C# Express :P).

"GAME ONNNNNNNNNN!!!"

 #       Comments [0]

Contact

Email Me Send mail to the author(s)

Calendar

<May 2006>
SunMonTueWedThuFriSat
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

About this site

Jason Olson's thoughts on Programming, Games, Music and Life in General

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2008
Jason Olson

Sign In
All Content © 2008, Jason Olson
Theme based on 'Business' created by Christoph De Baene (delarou)