Friday, December 12, 2008

Season's Greetings

Well, this basement looks pretty darn nice with the Christmas lights I’ve put up. I of course don’t really turn them on; it attracts all manner of creepy-crawlies when I do. But just having them hanging here, full of luminescent potential, cheers the place up a bit.

Now, to ATSS…the time is coming when it will no longer be known as ATSS, my good friends. The game that started off as a space Role Play adventure morphed significantly a few months ago and is now something else entirely. And its coming along splendidly. Right now Dan and Troy are working on storyboarding the whole shebang, and we are working on quite a bit of story work at the moment, fleshing out everything that happens in the game, and where it happens. I’m also working very heavily on what happened in the world before the game.

So since there isn’t much I can say about the game proper at the moment without letting the cat out of the bag, I figured I’ll give some idea of what our timeline looks like for the game.

We are planning on a February or March reveal including some screen shots, description of the game, and a website. During the summer we are planning some game updates as well as some web content to help people get excited for the game and get into the world of…oops, I almost said it.

Release is planned for before Christmas next year on the Xbox 360. We are hoping to talk to Microsoft about their plans as well for being able to sell XNA games over Games for Windows, but we have to see how that will work.

So that’s about it. I’m going to get back to writing about this world and its inhabitants, and you folks can get back to wondering whether we’re making a first person farming simulator.

An early Merry Christmas and Happy Chanukah to all!

Thursday, November 13, 2008

Salvation and Imagery

Well, a bit of an update on the game (whose name shall not be released until I have a couple of screen shots for you all to look at) as we move steadily toward our goals.

First, our two artists, Dan and Troy, are working hard at getting concept work for the game done. We are trying to establish a working art style and main character concept. When this process is done, one of the gents will be working on the main character’s art, and the other will begin working on the environmental art. And I have to say, the first concepts back are very promising. I think we will have a really good look for the game…that’s if the game runs…

And that’s where I come in. At the moment I have the basic engine done, that includes animations, interactions with objects in the world, scripted events, camera movement, and game state code. What I’m working on now is a full save and load of all game assets. This involves a process of NOT saving anything that the main game itself loads into memory when booting up. So, if an object has an image that goes with it, I’m not saving anything but the tag of the image and then running it through a load process that will use the Content.Load(“Tag”) code. Very soon (like this weekend) I should have a fully working save and load feature set. That means that I still have to implement a way of naming the save games and giving you an option as to which one you want to save, but that stuff is pretty lightweight coding.

As well, the main story of the game has gotten padded out a bit. I’m trying to make the game less “a bunch of stuff to do” and more “things you do for a reason.” I’m also pretty excited about some of the features we are adding to the game which will set it apart in some ways from other games that have come before in its genera.

So, that’s about it. I’m excited to see what new XNA things pop up on Xbox next week. And I’m hoping that the community can make some real progress forward in the coming months. It’s not so bad working in a dank dingy condemned basement when you know that somewhere out there, there are other people doing the same thing.

Friday, October 31, 2008

Hardhats and Pencils

So it’s been a bit since I last updated, and a lot has been going on. Let’s start on the artist front.
We are in round three of artists for this project. I would say that I’m beginning to think that artists are, as a rule, an uncommunicative and taciturn group. However, my new artists seem to be breaking that rule a bit. Dan, a real professional at this, has been much more responsive than any of his predecessors. We have also brought on Troy to work with Dan as our artistic team and I’m in the process of bringing him up to speed on the project.

So with our art team pretty safely squared away (I hope), I can move on to programming. And that, my friends, is going very well. I have about 60% of the game engine done, and I’m hoping to be at about 90% by the middle of December. What this means is that once I get the game engine in place, the rest of the game development is going to be spent actually building the game, scripted events, and tweaking game play and performance.

My latest programming success was building the main framework of the scripted events engine. Now, this is a 2D game, so it’s not nearly as complex (I’m guessing) as a 3D scripting engine. As well, audio is not yet come into play (that will be the last 10% of the engine to be tackled). However, as of last night, I had a working scripted event where a character moves around the screen, and does a few other things.

The next step is a scripted event builder tool. This means that I put together a whole new program that allows me to display assets from the game, move them around the screen, and assign them dialog, actions, and animations as they go. This itself will be a big undertaking, but it will speed up scripted event development later on immensely.

So, down here in the basement, it’s all architecting and drawing, hardhats and pencils. I hope the rest of the XNA world is making as much progress, and I’m excited to see what’s going up on XBL from our community.

Wednesday, October 15, 2008

A web of References

So, things are progressing along on the programming side of the new ATSS game. However, things are still slow going on the art side. Our team is working and moving along, but these are still the introductory weeks and everything is all about concepts and style at the moment. When the art team really kicks into gear I’m sure things will be moving along smoothly.

As for myself, I’m building a web of references. In a game like the one I’m building, every object in the game needs to be able to interact with several game systems that have to have a persistent state. If we were programming in VB, I might do this with global variables. But, since we are doing this in C# (which XNA is set up in), I have to do it by reference passing.

For those who aren’t programmers, the whole idea can be boiled down pretty simply. Say you have a word document that you want to distribute to your friends. You have a couple of options. You can put the document on a central computer and let everyone access it by placing a link on their desktop to that document (kind of like any page on the internet, it’s stored on someone else’s computer, and you just have a link to it), or you can send them a copy through e-mail.

Now in the second situation, if you send them a copy, they can make any changes they want to it and your original document doesn’t change. They have a completely independent copy. But what if you want them to see all of your changes? Or, what if you want to also see the changes they make to it? Well then the first situation is what you really want. In that set up, you only have one document stored on a computer, and everyone opens, reads, and edits the same document.

This is the difference between what we call “passing by value” and “passing by reference.” Passing by value means that you send a copy of one object to another object. This is fine for really small objects, and things that you don’t care about changing. But if you have a very large object, and you care about how it changes, and you want to keep track of its changes, you need to pass by reference.

And this is what I’m doing right now, creating a web of references throughout the main game engine. I’m not sure if this is how “real” game programmers do things, but it’s how I know to do it. When I get to a point where I’m serializing the data out (or “saving” it) from one test to the next, then I will have to set up a system for renewing these references every time the game loads. This is one of those things that will happen when the loading message comes up. My hope is to mask that message with images and story elements.

So, development is continuing, and piece by piece programming breakthroughs are popping up over the weeks. So for those who are getting excited for a game they know nothing about…stay there.

Thursday, October 2, 2008

Crowded again!!!

Well well well…the basement is starting to get crowded again.

Development has begun again after a brief pause, reevaluation, and redesign of the game. What this means is that I’ve basically thrown most of the development from the past two months out the window (most, not all) and re-scoped the project.

For now, let’s keep calling it ATSS…but that’s not what it is. Among the Silent Stars is dead, most likely never to be reborn. However, one never knows.

In its place a new game emerges, leveraging quite a bit of existing code and intellectual background. This new game is also a much smaller game; much less ambitious from a technical and artistic point of view. This means that there will be less on the development side and much less on the art side.

Speaking of art, two new desks have popped up here in the dank sub-basement of our illustrious studios. They are equipped with lightboxes and everything, which is nice since the smoke from the torches I had keeping this place lit was probably causing me the early stages of black-lung, not to mention a very creepy Silent Hill kind of vibe.

So yes, that’s right, I have brought two new artists onto the team. This means that we are in fact a real team now. Updates will come soon enough on their roles and such in the game.

So, that’s about all for now. The new game is in its very beginning stages, and as it is a different kind of game than ATSS, I’m doing a bunch of redesign code-wise, which is exciting.

Stay tuned as we head down this new path.

Thursday, September 25, 2008

Lonely Here...

So I’m alone now in this dank basement working on my game. And I have to say, it’s a strange feeling knowing that the whole project is standing on this knife’s edge, about to teeter off into nothing.

The thing is, I no longer have an artist. And an artist is pretty important to a game.

I won’t go into the details as to why I no longer have an artist, but the fact remains, ATSS is without art, and without art, it’s just code and some crappy mock ups I’ve done in paint shop.

And I don’t have hundreds of thousands of dollars to pour into an artist. In fact, I’ve already dropped hundreds, and I’m no farther along than I was when I started.

So, what this means for ATSS…

Well, right now it means a couple of things. First, I’m looking for a new artist, someone who is willing to put the time in, as I am, without seeing anything upfront (like I am). I need a good 2D artist who really has a passion for games and who can see a value in a finished project.

This may be too much to ask for…people need to eat.

Second, it means a reassessment of the scope of the game. I’ve done a project timeline and with all of the features in ATSS I would be in development until March just on the game engine. I would like to cut this down quite a bit. This means that I’ll be scaling down some of the features, and doing a pretty major rewrite of the game design document. This also means I get to do a few things that I wanted to do before that would not have been possible.

With all of that in mind, I’m ready to being again, focusing more on a more streamlined, elegant game than one that is laden with so many features I can’t imagine debugging them all.

Now if only I could convince someone to come down to this place and draw something.

Tuesday, September 16, 2008

Subterranean Cartography

I’ve got one of those personalities that likes to check things off of a list, so looking at my project timeline as I go day by day through the first few pieces of actual engine development (as opposed to the month of tech-demo development we just exited) I’m already feeling good about the long term of the project.

Right now the timeline for game engine programming goes until March. That means that story script programming, planet maps, dialog trees, quests and so on will begin to be scripted (actually written in the game’s script language) in the second half of March. Until then, I’ll be writing down plot points, designing dialog trees and quests, all to be saved in a virtual binder (a real binder would get all damp and moldy in our underground offices) to be broken open like a time capsule in the second quarter of next year.

This year however, is all design and code and testing. Right now I’m working on the map system and mapmaking tools. By the end of the week we should have a fully functional map maker that allows us to lay down multiple layers of images, and save animations as well on the map surface. We will see how this goes, but I have high hopes for our map system.
Beyond that, there isn’t much to report at the moment. Eric continues to work on getting our sprites to look amazing. We are going with a hand drawn approach that I am very fond of and I think will give this game a nice unique look among the XNA games that are out there.
Well, that’s about all for now. Time to get back to building map making tools and spearing the rats that are trying to make their way up to eat my lunch.

Friday, September 12, 2008

Of Design Docs and Timelines: A love story

One of the more mundane tasks of any programming venture is the project documentation. You basically have to say of each and every piece “It needs to do this and this, and when you do this it needs to react like this and that, but not when you do this and this.” You need to give a plain language overview, and then a technically specific piece as well. And, for a general document like the one I just finished, you aren’t even doing all of the work you need to. There’s a second, much more in depth step that requires you to take those requirements and flesh them out in crazy detail so that when you go to actually program the thing, you’re not guessing at what you’re supposed to be doing.

So this is the phase that Among the Silent Stars is in right now. The 1.0 version of the design document for the game engine is done. The timeline is about 50% done in Microsoft project, and we’re looking at a game engine development cycle of until the beginning of March next year. Woof!

Aside from all of this, I learned in my perusing of the XNA website yesterday that the maximum game size for and XNA game on Xbox is 150 MB! Yeah, that’s less than the size of an RPG from ten years ago. This is very frustrating. I am told that XNA has great compression ability, and if that’s the case, then so be it. However, I’m a little boggled that Microsoft wants to put such a silly limit on our games. We’re the ones putting our time and effort into this, why shouldn’t we be able to make our games any size we want? And what about those who want to buy the games? Why shouldn’t they be able to buy games of any size?

This seems arbitrary and frustratingly like the Xbox team who is brilliant in their design and technical side, but terribly hard to understand in their decisions about access, size limits, and marketing.

Well, back to ATSS. I begin spec design on the first item on the timeline tomorrow. It’s a piece that I have not yet tech demoed, so I’m looking forward to bashing my head against the concrete pillars of my dank basement office and screaming into the darkness for the rats to stop their squeaking to just LET ME THINK! I think I will need a lot of tea and pastries from Panera to keep me sane.

Wednesday, September 10, 2008

Look at all of this Office Space!

So, here we are. I’ve just finished putting my computer desk together and I have to say, I’m liking the looks of this place. Dank basement smell? Check. Rats running around through some kind of hodgepodge of crumpled news papers, mildew infested dry wall fragments, and tattered bits of bum clothing? Double check. Flickering lights that hang menacingly from cords that dangle precariously from cracked ceiling fixtures? You guessed it…check.

So atop my desk is my trusty laptop which looks laughably small compared to the large mahogany beast it’s sitting on. But hey, the way I figure it, if you’re going to sit somewhere, even if it’s in the dank basement of an old abandoned, probably condemned building in the industrial district of Philadelphia you may as well do it with some style. And here, amid puddles of fetid water, crumbling masonry, and questionable decision making, a new XNA game is being born.

Yes, this is the home of the development team working on the game Among the Silent Stars (a working title which is arguably better than the old title “Nebulon”). How long have we been here? Well, we’ve just moved into our new cozy dank crime scene waiting to happen, but we’ve been working on the game for about a month now and boy are we making progress.

Well…sort of. We’re in design and tech demo phase right now. It’s all about, “Can we do this?” and “How do we do that?” at the moment. And so far, the answer to both questions is a resounding yes. There’s a lot of user interface testing and mouse clicking and so forth going on right now. And there is design document writing. My goodness, there is nothing more boring to me than writing a design document. It’s necessary, despite what anyone tells you about “indy gaming.” Unless you’re making the next “breakout” or Space Invaders, a design document is going to be needed to keep all of your jumbled thoughts straight. And my friends, it’s not fun to write.

We are…wait…let me explain what I mean by “we.” There is me, Josh, and then there is Eric. Eric is our artist. I’m…everything else right now. Project leader, lead developer, story writer, UI designer, and so forth. These are the hats I’m wearing right now (along with a brown superman hat that I picked up a week ago that I really like a lot). So I’m having to decide which hat to wear at what time. There is a part of me that just wants to sit down, write the story of the game, get my characters all fleshed out, and start hitting up quests and dialog and all of that fun creative stuff.

But that’s just not how I’m going to go about this thing. The truth is, I’m a programmer in my day job, a VB.Net developer to be exact. I know how projects go, and I’ve watched how projects are managed. You don’t get a big project done by doing the fun parts first. OK, well, that’s only partly true. I really love laying out how a thing is going to work (architecting I believe it’s called) and if you spend the right amount of time doing that, a project runs much more smoothly than if you don’t. So for me at least, you do get a job done by doing the fun part first. But that’s because I’m strange. Here the fun part however would be the creative bits like characters and story. But games don’t just architect themselves and especially not RPG’s.

Yes friends, I said RPG. One developer, one artist. It’s crazy, I’m aware. I’m also realistic about it. Hence the design document. We are going to go about this thing the way that it should be gone about (or do this thing the way it should be done, whichever you like better). Right now we have twenty four independent game engine specs from an inventory system to the game interface customization screen. And we’re going to spec each of these pieces out like we imagine professional game developers do. Well, I’m going to spec them out and Eric will tell me where I’m right, and where I’m crazy.

As I’ve said, we’re about a month into development already and I’ve got a bunch of tech demos up and running on all manner of different pieces of the game. And at the moment, I’m building a fairly respectable game library of classes and enums and all sorts of happy programmer jargon.

The next phase, after I’m done fully specing out the project is writing up the project timeline. We’re hoping for a one year development cycle, though it could go past that.

Right now I have two fears. 1. That we won’t complete the game. 2. That if we do compete the game, the XNA initiative on the 360 will have fallen on its face, or that there will be so many games on it that ours will get lost in the mix.

I’m hoping to keep this developer’s blog up and running on this site so that you, dear reader(s) will get some small insight into the pitfalls and successes of making an independent game.

Welcome aboard…oh, and watch where you step, I’m not sure if that’s water or...something else.