Sunday, December 7, 2008

The Holidays Caught Up

....and the holidays have officially caught up with me. Resulting in a temporary pause in Deep Blue. About the only thing I've been able to continue doing is reading more about C# (which at least is something).

But for now it seems my focus has turned to gifts art and commissions.

Saturday, November 29, 2008

Can't Seem to Stop

I know I said I was taking a break this week to handle other matters, but with the holiday and the few day's off from work I couldn't resist. Just having too much fun.

Bad me, I went into this week without any weekly goals (other than not working on the game). So from that stand point I guess I failed. I think I split my hours between programming and design about half and half this week. From the programming side I created a method to fade screens in, added enemy ships moving through the water, fixed the player's controls, added 'gravity' to the player sub and did a good deal of refactoring of code tidying up things. Names of many things to changed to support multiplayer play and I made a gameScreen class to make it easier to make screens like the splash screen, title screen, and game over screens. I also dropped some basic values and display for the in-game UI elements.

From the design side I wrapped up version one of the player sub, called the "Manta", which resembles the shape found in the game logo. It was a tough decision whether to go with hand painted art, or 3D rendered art. I actually really like the look of the painted background so we're sticking with a hand painted look for all the art elements.

Here's the final art, many times larger than what you'll see in the game but I felt the extra details didn't hurt.


From Development of "Deep Blue"



Hopefully, by the end of this weekend I'll have an update video for "Week 3".

Wednesday, November 26, 2008

"Manta" concept art

I thought I'd go ahead and post the latest player ship sketches. The ship, tentatively called the "Manta", was obviously inspired by the underwater dynamics of a manta ray. It seats two people and is propelled by a central turbine on the underside of the ship and twin rotating turbines on each wing.


From Development of "Deep Blue"


From Development of "Deep Blue"


Large lights run along the front edge of the wings which are essential for deep sea visibility.

Initially I had a "tail" at the back of the ship that acted like a rudder, but with the twin rotating turbines I didn't see manuverability as a problem.

Tuesday, November 25, 2008

Holiday Break

Unfortunately, with the holidays coming up, and the fact that I'm in need of a little cash "Deep Blue" is going to have to be put on hold temporarily while I hit a couple of illustrations.

It's a little disappointing since I feel things were rolling along at a nice pace. Hopefully stepping away won't handicap me too much once I get a chance to start up again.

I'll go ahead and post the ship concept sketches as well as the new title screen and main menus.

Monday, November 24, 2008

Week 2 Summary

Last week I put together a 3 page initial treatment for "Deep Blue" outlining the key game mechanics. I designed a preliminary logo for the game and carried it over to a new title screen. I designed the "How to Play" modal window. I was able to make a lot of progress on the player sub, but nothing really solid yet for the enemy subs.

From a programming standpoint I discovered the source of my instant movement on the player sub...I'd left an initial velocity test variable. I was able to drop in some testing text into the game screen so I can easily output different variables and watch their values as I play. Very helpful for testing. Even better, the test text display is a part of a defined #test mode in code so I can display them or not display them simply by commenting out a single line.

The ability to display a few variables on the screen has helped me narrow down a couple of bugs and I feel confidant that I'm very close to resolving the stretching issue with the splash and title screens as well as fixing the sub controls which are still a little off.

The bad news is, with the holidays coming up the need for cash may mean that "Deep Blue" gets sidelined for a bit so I can work on some commissioned illustrations.

All-in-all, I was only able to put about 10 hours of work in last week, which is a little less than I'd hoped for.

Saturday, November 22, 2008

Initial Treatment

I took a day off from work and hoped to do a little catch up from the hours I wasn't able to work earlier this week but the majority of the day was taken up with Thanksgiving school activities for the kids and a car breakdown in the driveway.

The good news is, the car seems to be running ok now (knock on wood). But I'm not sure if it was foreshadowing of things to come.

I did manage to get the initial treatment for Deep Blue written. It's a 3 or 4 page document giving a high level view of the game. It's by no means a game design doc or spec doc, but it still helped to flesh out some of the basic concepts around the game.

Still a little behind where I'd like to be for this week but hopefully I'll be able to make some extra ground this weekend.

Thursday, November 20, 2008

The new NXE Launches

Xbox launched it's "New Xbox Experience" yesterday, and I have to admit it's a pretty nice update, even if it lacks in originality. It's definitely the largest upgrade to date for the 360. It seems to be some sort of mashup of Apple meets Sony meets Nintendo.

The new avatar system is nice even if it seems to walk the middle ground between the Wii's kiddie Mii's and the PS3's more realistic Home avatars. The selections are pretty thin at the moment (a common theme in the XNE at the moment), but it's a nice start. We'll see how long it takes for the microtransactions to pop up to buy new clothing and accessories for your avatars.

I tested out the Netflix integration and although I found it a little odd that you do your movie browsing on the Netflix site instead of the 360 I must admit the quality and convenience of the whole system was nice. The biggest drawback at the moment is the very sparse list of good titles available.

Of course the one new feature I was most interested in seeing launch was the XNA community games. I was thrilled to see that it wasn't buried two or three levels deep in some dark corner of the dashboard. I was a little disappointed to find only two games available. After Microsoft just finished up their "Dream it, Build it, Play it" competition you'd think they would have at least a dozen or so games available. Then again, I'm big on the "quality over quantity" theory. Hopefully we'll see more game launch in the near future.

Tuesday, November 18, 2008

This Week's Mission

I know this probably should have gone up yesterday but I wanted set a few goals to get done by the end of the week, some bigger than others.

Last week I got a good deal of nervousness out of the way by getting a better start on the programming than I had originally anticipated. Honestly, and I risk cursing the whole thing now in saying this, but the programming side really hasn't appeared that bad. This week is heavier on the design end of things.

I'm shooting, no pun entended, to have the game backstory ironed out by Sunday night. Along with, vehicle designs for the player sub, at least one enemy, and any initial pickups designed. I'm also trying to get a game abstract put together for the base game mechanics and at least a roadmap to expanding things out once the foundation is laid.

All that makes for a pretty busy week given that I totally missed last night. But for the big "Bonus Points" I'd be thrilled to solve the mystery of the self moving player sub that refused to sit still at startup. A small victory would be solving the scaling issues with the screen backgrounds and getting some enemies swimming across the screen, even if they're not effected by anything.

Hmmmm....membership fees

So today I get hit with a reminder that I think XNA, as a program is great, but membership fees for XNA is a bit...well...odd. I recently read that Activision...uh make that Activision/Blizzard or Blizzard/Activision depending on whos really paying the bills, but anyhow THEY recently announced that they may actually try a subscription model with Guitar Hero World Tour's Studio content.

Let's get this straight, Activision is going to charge me a fee...for the privilege of downloading game content that they didn't even create. I figure that makes about as much sense as YouTube charging me to watch videos.

All this of course comes about because my XNA premium membership expired today. Let me restate that I really like XNA as a source of community generated games, but it still, in the back of my mind strikes me a little...odd...that I'm paying a fee for the privilege of creating games. Yes, the tools are "free", or maybe their not depending on how you look at it.

In any case, no more builds to the 360 until Thursday when I'll set up the next 4 months.

In other news I finished Halflife 2 on the 360 this evening. This was my third time through the game, but the first time on the 360.

Monday, November 17, 2008

Status - Week 1



Here's a short 40 second video showing the game as it stands at the end of one week of development. It's about 10-12 hours of actual developement time with this being a hobby and all...hey, a guy's gotta have a life.

This week was really all about getting started. Deciding on a game genre, concept and what the learning objectives are for the project. I'm approaching the project with an iterative design process and we'll see how that goes. Basically what that means is getting things rolling as quickly as possible and building up from those basics.

I've got a basic game concept, created some rough 2d assets, imported them into XNA game studio, set down some fundamental code for game flow, player movement and shooting, and I've even successfully sent an initial test build to my Xbox 360.

All-in-all, not a bad week.

Ship Thumbnails and Profiles

I thought I was going to get a little further today, but Rock Band 2 and Spore had other ideas. In any case, here's a couple pages of very quick ship sketches.



I focused primarily the ship profile since that's what the player will be seeing 99% of the time. I was also tossing around name ideas in my head and I think I'm going to go with "Deep Blue" for now. I know...it was the name of that chess playing computer but it sounded unspecific enough for a game that right now doesn't have many specifics about it. I like it because of it's unlimited possibilities (other than the fact that it sounds like it deals with something deep underwater).



With that in mind, I put together a few type studies for both title treatments and UI type. That helped narrow down the direction a little more. When I began I basically had three possible approaches to the look and feel of the game.
1) Targeted at Kids, fun, "happy bubble underwater game"
2) Arrggggg, "There be pirates!" approach
3) Sleek High Tech, "Seaquest 2010"

Based on the direction most of the ship profile sketches had taken and the fact that at its heart, it's an arcade shooter game, I veered away from the "Happy bubble" and "Pirate" games and more toward the "Seaquest 2010" look.

The good news is, this early on if something pops up and screams..."this just isn't going the right direction", it's not going to be too terribly tough to change.

Sunday, November 16, 2008

First 360 Build

I sent a quick build to the 360, just to make sure everything was behaving as it should. From a programming checkpoint, everything checked out. However it's clear the 'safe area' on various TVs is going to have to be dealt with.

The take away is that I'll most likely be placing all the game user interface (UI) elements in relation to the borders of the screen instead of at hardcoded x,y coords. Just a little something to keep in mind during UI design.

Saturday, November 15, 2008

Back To Design Mode

Well, I now have our player sub firing shots forward...there's a little tweeking to do since the shot spawns at 0,0 on the sub, which is around the area of the tip of the rear tail. But it's a first step. Again, the method I'm using with the overall game design is to get the basic game working and build with experimentation. It's sort of like painting, start with the a rough sketch or basic underpainting and work up the details as you progress while trying not to get to focused on any one point along the way.

Now I turn back to more familiar territory, for me at least, and that's the design of the ships, pickups and UI. I've got some initial thumbnail sketches of vehicles and I like the way a couple of them are shaping up.

First Screens and Flow

I put together some initial screens for the logo splash screen (no pun entended), title screen and game screen. While they're only for position only (FPO) they served their purpose of confirming loading in graphics, some including alpha channels, and having a visible flow from the splash screen, to the title screen (after hitting "A"), and entering the game (skipping the menu interface).

Here's a first look. It's not terribly exciting, but it's a start.

And I do have very crude control over the sub strictly for testing user input.

You can see some scaling problems I'm having with variable aspect ratios of standard and HD TVs.





Wednesday, November 12, 2008

Game Summary - "Phase 1"

So for phase 1 of the game here is our checklist of objectives.
1. Basic game flow which includes: logo screen, splash/title screen, how to play pop-up window, game screen, game over screen.
2. Game play will be a left-to-right, ship side scroller. Player movement will be limited to predetermined area of the screen. There will be only one 'layer' of scrolling background.
3. Player has a single fire weapon which fires in the direction the ship is facing.
4. There will be one type of enemy and it will spawn at random heights on the right side of the screen and move to the left.
5. Play time will be limited by an 'air supply' that the player's ship has. The game is over when the player runs out of air.
6. The only player pickup will be tanks of air that spawn at random intervals and move along with the background.

So, not the most original of games, but it's a start and one that can be expanded on once the basics are laid out.

Tuesday, November 11, 2008

Quick Start

In an effort to get things rolling as quickly as possible I put together rough concept art for the background and ship. It would be my version of "programmer art". The idea here is to get something playable as soon as possible so I can really start toying around with possibilities and testing what works and what doesn't work in terms of game play.

So I've got a nice simple underwater background and a single seat submarine for the player. I create a new Windows project in Visual Studio C# 2005 and begin to import my basic assets. I'm using XNA Studio 2.0 even though version 3.0 was recently released simply because it's already proven and established.

It only took an hour or so to get the background and the ship drawn on the screen with a basic control scheme to move the sub around. The rest of the time I spent concepting the story and actual vehicle designs.

Torque X

I just ran across the fact that Garage Games has partnered with Microsoft and XNA to provide it's Torque X engine to all XNA Premium members. I jumped on the opportunity and downloaded the engine.

However, for the time being, I'm going to continue with development of the underwater game as planned and most likely hit up the Torque engine for a later project.

Initial Ideas

Since I'm not looking to dive straight into the deep end of the pool, the main thing I'm trying to focus on is developing a game concept that can be built upon in little pieces.

After a couple of hours of brainstorming, (it's a 45 minute commute with no traffic to and from work), I've decided my first XNA game will be a 2D side-scrolling arcade style game. I'm also conceding that this first game will very much be a 'throw away' game. It should be fun enough to play with the kids here at the house, but I have no hopes of this ever making it past the XNA peer review.

Even being a 'throw away' there are a number of core things I'm looking to accomplish here.

1) Get a hands on basic understanding of C# and XNA as a tool set
2) Spot any inconsistencies between the Windows development and the 360 development (and learn how to deal with them)
3) Start to set up a basic pipeline for production (for 2d games)
4) Establish some basic game mechanics (game state management, player movement, scoring etc)
5) Build the game in a modular approach so that new elements/mechanics can be built onto the basic game as we go

As far as the theme/concept goes, it can be just about anything. I've always liked the ocean and aquatic life so I'll develop some story or concept that is ocean driven. It could be "Atlantis" inspired or "40,000 Leagues Under the Sea" or "Nemo" themed...there's so many possibilities somethings bound to pop up.

My immediate XNA background going into this consists of a handful of basic trial publishes to the 360, reading "XNA Game Studio 2.0", and so far approximately a quarter of the way through the "Visual C# 2005 - Step by Step" book. I also worked through the very nice 2d game video tutorial on the XNA site for the "Cannon Game". That was a big help, if you're a beginner and you haven't check it out yet I highly recommend it.

Sunday, November 9, 2008

A Beginning

Things have to start somewhere and this seems like a good place. I'm creating this blog to track my progress developing XNA games for the Xbox 360.

A little background on myself for those just dropping by. I began programming when I was eight, in basic on my old TRS-80 Model I. I spent many hours and sleepovers typing hundreds of lines of code from books and magazines just to get to play tic-tac-toe or mine sweeper. I was inspired by games like Wizardry, Bard's Tale, and a slew of Scott Adams adventure games (the ones with the verb/noun commands) and I was determined to become a game programmer. However, that quest ended sometime around high school when I was told you had to be really good in math to be a programmer. Even though I'd gotten straight "A's" in all my programming classes (up through Pascal), I was having serious trouble with basic algebra. Anyhow, one thing led to another and I abandoned my programming quest for an artistic one.

Fast forward 30 or so years and somehow I've managed to end up as "Senior Game Designer" for a casual/advergaming company called Blockdot. I put the title in quotes because that's not exactly an accurate description of my job. It's much more on the art side of things than the game design side.

In any case, although I never professionally took the developer route, I never completely gave dropped the ball on it either. I've managed to piece together games with Director, Flash, 3d GameStudio and a few other tools. And when I heard Microsoft was going to allow development of games for the Xbox 360 I knew I'd found my next new toy.

So here we are. I've ran a few proof of concept project with XNA Studio 2.0 but so far nothing has been approached as a complete project. It's all been more of a "where do I start" type of experiments.

So, let's get started.