Week 1 - Development Started

We have finally started coding on our project! It took us a while to get some of the core design ideas figured out before we got started. So here is what we are thinking so far.

We are aiming for a pixel-art top-down style for walking around and exploring the world. This would be very similar to the classical role-playing games on the Super Nintendo such as Final Fantasy 2 and Chrono Trigger. This is a style we have always liked and is fairly easy to implement.

One of the biggest issues we have had to figure out is how to handle combat and various encounters in the game. We do not want to make a fast paced action game. There are many good action rpgs out there already and with our focus being more on the narrative side we don't want to go that route. How would we deal with combat then? If the characters are walking around a map in real time then usually they have their combat on that same map. We didn't want this. We went back and forth a lot between the idea of having the walkable map and a type of game play that fit our narrative style without having actual maps to walk around on. Our solution was to have the walking map and put our combat/encounters into a different interface.

We have not quite figured out exactly what it will look like to handle combat/encounters yet but just the idea of splitting them apart has (at least for now) removed the last roadblock we had to get started.

For those of you who have read our eariler posts we were labeling them by week. We like this idea and will keep doing it but since we have started the actual development now we have 'reset' to week one. Stay tuned for more updates.

Summary

We have been plodding ahead on our game this past week. There have been some prototypes (software used to prove if something can be done) but most of our effort has been in thinking. Probably the hardest thing to do in almost any project, especially video games, is determining "scope". Scope is a list of the things you want to include in your project but more importantly it is also a list of things you do NOT want to include. Trying to do to much greatly increases the difficulty, increases the time required, and usually decreases the quality of the final product.

How do you determine your scope? For some projects this can be crystal clear. Sometimes you have a really good idea of what you want to do. For us this has always been difficult. There are so many things to include how can you filter out the "should dos" from the "would be nice to dos".

Recently while discussing this project I said an idea that had not occurred to be before. The idea was that this game would be an attempt to replicate the pen and paper role playing experience as much as possible. It was an off the cuff remark but I began to think about this more afterwards.

As I fleshed this out I began liking the idea for several reasons. First of all it is unique. This is an unusual idea, not many games have tried this before. Sure there are tons of role playing video games but they all feel quite a bit different then the old fashioned pen and paper style. Secondly it fit well with some of the other core concepts I wanted to deliver on, primarily a heavy narrative/story style play.

If you are ever working on a project I highly recommend talking to other people about it. Not just in the beginning but through the entire process. Often time just talking your ideas through helps solidify them. There is also a chance you will get useful feedback hearing perspectives that are different (and more removed) from your own.

Next up we will be writing about the specifics of what this means for our game, but what about you? Any ideas you want to get some perspective on?

So what are you doing?

So we have decided to make a video game and attempt to chronicle the process for others to read and hopefully learn more about. The first step involved in making a game (or any project really) is "What the heck are you going to do?"

Answering this question when it comes to video games can be a long subject in and of itself but I think the first place to start is the 'elevator pitch' idea. Write up a few short sentances that can quickly describe the overall idea you are trying to accomplish. In business terms this could be considered a 'mission statement' but that term isn't as much fun to say as 'elevator pitch'. Here is ours:

The Genesis Project is a browser-based RPG set in a unique setting that blends a typical fantasy world with cyberpunk and space travel. Gameplay is mostly focused around exploration, storytelling and a heavy amount of player crafting (both of items and of the world).

How does that pitch sound?

First Monday update

So I have decided to try and give regular updates every Monday on the progress of The Genesis Project. These updates will be focused on what has been done the past week and likely what will be attempted the upcoming week. We may occasionally do extra posts if we have something more in depth to cover. This past week we have been refactoring our proof of concept and are probably over half way done. So what does this mean?

In software refactoring is taking something that is working, breaking it and then putting it back together in a better way. When you are done you will seem to be right where you started but things behind the scenes will be much better off. A good non-software example of this is if you break your arm. The doctor might have to break it again in order to get it to set right.

You might be wondering what types of things are we refactoring. Many might be a bit too technical for this point but I can give one example. Games have to rely a lot of co-ordinates or "where are things at". What makes our game interesting in that area is we have two sets of co-ordinates we can use. One is the 'normal' set you would think of as a typical X and Y number. This tells us for example exactly where in the world each character or object will be. We also break our worlds up into 'tiles' of a certain size. We will cover what this means more in the future but a short version is we have a 'grid' we break the maps up into. So we also need to track which 'tile' or 'grid' a character or object is on.

If you were thinking that this does not sound too bad then you would be right. By itself this is not an issue. However the idea of 'tiles' was added after we had a big part of the work done. So in many places in our code we are expecting a 'point' (the non-tile co-orindate), in others we were expecting a 'tile' co-ordinate. To make things even worse some places expected the X and Y to be split as two different values and some expected them as a 'pair'.

This is a perfect type of thing to refactor. We create what we call a 'Point' object that contains data on both the tile and non-tile co-orindates and are using this everywhere to refer to a location in the world. There are several benefits to this, mostly in cleaner and more consistent code. We know every time we are dealing with a location what to expect.

Well this already ran longer then expected but feel free to leave comments or ask questions if this does not make much sense. Otherwise you will hear something from us again before too long!

Announcing 'The Genesis Project'

We are proud to announce the Phoenix Studio has our first big game in development! We are calling it 'The Genesis Project' although this is only a working title so it may change. So what is The Genesis Project about?

Well the 'elevator pitch' is that this game will be a multiplayer sandbox RPG in space with a very detailed simulation of your ship and the ability to travel to (and walk around) on a variety of locations from planets to space stations. More details will be coming soon.

Our plan is to attempt to use this blog to not only reveal information about the game itself but to also try to shed some light on how the process of developing a video game works. While we would love to put some pictures up to show you our work we are currently going through a big refactoring project right now, so its currently a bit broken. What is refactoring you ask? Well, I think that sounds like a good topic for our next post. Stay tuned.

Moved to SquareSpace

We have decided to move this site to SquareSpace for a fresh start. This should make it much easier for us to maintain regular updates and to get feedback from our (hopefully future) users.