Thursday, April 09, 2009

On time

I write a lot about time, and it seems like a good subject to write about, as it seems that it is the human condition to be obsessed with time. We live our lives calculating how long we have to complete a task, or how long it is until the next task arrives to complete. We are a race obsessed with time. Even the word 'race' which we use as a classification has time built into it.

With such a heavy emphasis that time has on our lives, I find it interesting that it isn't used as frequently in games as one would think. Sure there a puzzle games where you have to complete the puzzle before a timer runs out, and there are games where you have to do a timed trial or race, but what about in the aspect of narrative in games.

I haven't been working on game design for a while, because, hey you guessed it, I haven't had the time. But when I started designing the Wrath of the Scarecrow series back in 2007, time was put in as a major influence to the flow of the story. The game world would be setup to have triggers executed to carry the game in a different direction if a player was not in the right place at the right time. It is a very complex system that calls for dynamic branching that I have yet to experience in a game.

As I'm longing to get back to game development, I'm beginning to think more about specific elements that went into some of my designs that I would like to begin testing once Troglodyte is in a stable state, that can prototype and test out these ideas. If anyone has any good examples of time usage in a game, I'd love to check the out.

Later.

Tuesday, March 31, 2009

Distilled Pursuit

I'm trying to make it so that I don't miss this month completely from making a blog entry, and it looks like I've barely made it, but made it I have. Spring is hear and with it is a rejuvenated sense of purpose.

As I sit down to continue working on the GoG project this week and complete some good portions of it, I can't help but begin to get excited with anticipation to getting back to work on troglodyte. It's been almost two months since I've done any work on the game engine, and I have to say I'm getting antsy. GDC being last week made it all that much work, especially as I on looked to all the indie coverage. I really wanted to go this year, but it just wasn't the time yet. Thanks to all the guys at TIGSource that attended, for posting links to many many pics, videos, and wordage of what looked like an excellent experience.

The book that I won from John Hattan arrived almost a month ago now, and while I'm only about halfway through it, hey I don't have as much time to read as I'd like these days :P , I have to say I'm enjoying it quite a bit. It's helping me think about structuring the business aspects of my endeavors and it has some good advice in it. I plan to write a review to post on my website at some point, a long with some other reviews that I wrote last year for some other programming books.

At any rate, I'm pretty optimistic about things. I have roughly four years left in my current time line for planning to get things off the ground and so far I'd have to say I'm on track for the most part. I think taking the time off from working on the engine will pay off in the long run, especially having worked mainly on it for the last two years. The breather has been pretty nice, but now I'm ready to get back on the road, hit it running and hit it hard.

The time off has given me time to re-establish a base line of quality for my work as well. There have been areas in the engine where I've been meaning to go in and change a certain feature, but have repeatedly put it off instead to work on adding more features. Not that the features being ignored were ungodly beasts gumming up the works by any means, but they were things that I wanted to do differently. Once I start revamping to port the windowing, serialization, and other components over to Qt, I realize that it's the perfect time to re-asses the things that I want to redo and go a head and do them.

The GoG project and porting the code over to the Qt frame work is going to delay the first beta release of the engine, but in moving a few more steps closer to my ultimate design goals, it'll be worth it. I was doing a weekly indie game review over on the GoG for a few weeks last year. I think it's something that I'm going to shoot for doing once again.

Sunday, February 08, 2009

Dev into Hope

So, as I continue working on learning various web languages and working on continuing to learn Qt, I begin to notice a continuing trend of getting away from game development. This is something that I have to keep in mind in the future, but for now, current paths must be continued until the current journeys come to an end.

So, Ajax, Mysql, and php are the newest members to the arsenal of development tools in my tool box. I'm having quite a bit of fun getting to know them, working on the decipherone website. I'm also getting to know web standards in the process, which has been interesting. Although I've been using websites, I never really noticed how much the development process has changed for them over the last decade. It just goes to show my lack of education in the area prior to the last few months that I've been preparing to tackle the GoG tournament connection tool and building the community website to promote Troglodyte and indie games in general.

While it's interesting and practical , and I could see myself doing it for a living, I just don't have the time to continue to do web development, work on a game engine, design games, make games, work a full time job, and fit the other hats in my life on my head. As stated currently, I've had to set aside the game development aspect, and it's something that I really want to get back to. So as I finally come to the forks in the road, I need to get back to the initial cause.

It looks like April will be the month where I actually get time to port the current code base of the engine over to using Qt. As I do that I'm thinking that I am going to need to finish the game state management that still isn't complete at this time, before starting to build the next edition of Scribe, the editor. By that time the official release of Qt creator should be out as well, which should be awesome. Qt will also be releasing version 4.5 in march, which will add a LGPL license, which should help with marketability for Troglodyte.

At this point in time I'd like to say this. The main reason of this game engine and editing suite is to provide a tool for myself and fellow companions to make games, do it well , and fast. I'm choosing to release it to the public after an agreed upon time in between myself and the guys of Phyersoft. In doing so, my hope is not to become rich from the endeavor, although if that happens it would be welcomed. Instead, it's my hope to provide a very affordable tool that is easy enough for a complete newb to use, while still having enough power to entice seasoned developers.

By having it be open source as well, I'm hoping that it give those who are interested in coding a good place to begin to learn about programming games. That is also the purpose of the website. Also, I hope to grow as a programmer because for the most part I'm self taught and I'd love for those who would be interested in looking at the code base to be able to offer and make suggestions.

In addition, I'd love to see people become passionate about the project and for it to grow into a robust development tool owned by the global community. Only time will tell if these hopes and dreams will be attained, but it should be an interesting journey to get to cultivation of the ideas.

Tuesday, February 03, 2009

Why Make Games?

[warning : This post may contain some deep symbolic and reflective content]

Like most people, I sometimes struggle with the meaning in day to day life. With everything that is going on in the world, as it has been since the dawn of space time, it is very easy to be caught into a web of disillusionment. To become over whelmed with fear and anxiety about ones place in the world and in the universe. These feelings can start to get in the way of our dreams, hopes, goals, and day to day activity. It can even send people down roads of self destruction and cause us to question our motives and even behave in ways that a person wouldn't normally behave. This is no new quandary for the human condition, keeping that in mind is a small reassurance in and of it self, but it doesn't allow for calmness and clarity to begin to come through. The calmness comes with a realization and understanding of who and what one truly is in the context of the universe. I am not the one to suggest directly a path for ascertaining this awareness, but rather urge everyone to pursue a path of self knowledge.



So what does all this have to do with games?



Well, for me, I have been finding myself over whelmed with the world around me lately. This has left me asking myself if I have been wasting my time pursuing creating tools for making games, and with wanting to make games in general. It seems that I was so overwhelmed, that I begin to forget why I wanted to make games in the first place. Games are cool, fun, and interactive, this is all true, but the main power behind games is the ability to share ideas, to use them as a communicative medium. To be able to share perspectives with one another, and to be able to display concepts, ideas, and share virtual spaces with one another across vast distances in real time.

Games as they are in their infancy, are very limited in these areas, as today they are mainly used for pure entertainment purposes. There are a few games that have attempted to use the potential of the medium, to be expressive as art, and some of these have even hit the mainstream. Even hidden nuggets of truth make there way through in commercial titles from time to time, but for the most part, games have been put into a mold that caters to what mass production companies have given us and we have come to expect.

This will change in the coming years, and while I don't expect things to happen over night, I think it will become more common place to use games as the potential medium to express ideas will happen. It will become more synonymous to movies, as we can already see happening with many major motion pictures having games produced, and even Kiefer Sutherland expressed the same thought of the two industries merging at this years Spike Tv VGAs.

This post kind of turned into something that it wasn't initially meant to be, but sometimes in life, you have to follow the natural flow of things and this article is how it turned out. In closing, I'll continue to strive to make games, in the hopes of inspiring future generations to form a better world. In the hopes of inspiring those around us to better understand our connection with who and what we are, and in the hopes of bringing joy into peoples lives, providing them a space where they can interact with their loved ones, and can make new lasting relationships.

The horizon before us is only the beginning. It's the bits and pieces that we connect that end up connecting us.

Thursday, January 29, 2009

Syntaxual Sickness

So, I've been a little under the weather once again the last couple of days. I'm not sure if I ate something bad or what, but my stomach just hasn't been quite right. It's gotten in the way of getting somethings done and zapped a bit of motivation from my bones. Yet, I press on, like the determined predator who has extinguished their food supply in a certain area, but who must continue to devour small furry creatures, and who is filled with an ever increasing hunger and blood lust. I am feeling some what better today.

As I'm working a lot on development of the GoG Tournament Connection and on the decipherone website, I'm finding myself having to deal with small syntax related issues with php that are causing me some headaches. I just have to remember to not get a head of myself and to not try and do something that I think should work, when I've seen nothing that has really told me that it should. Primarily I'm talking about things with string formatting and passing data around using variables. Coming from a heavy C++ background, I think I'm finding myself stuck in a certain mindset, or it could have just been the sickness causing me to make stupid errors as when I tried to code yesterday I couldn't really get anything done.

I've got to get back to working my through the Qt book today as well. I had put off working in that area for the last week or so to get caught back up on the other projects, but I should be back on track.

Sunday, January 25, 2009

Taking back the web.

Well, I've certainly done an excellent job of focusing on blogging :P At any rate, I am hard at work on things as per usual. I'm working to learn Qt still, attempting to work through the C++ GUI Programming with Qt 4 book that I purchased at the beginning of the month. I want to get through the entire thing before moving forward with porting the engine code over to making use of Qt. I figure it could be March before that process is completed.

It would be faster, but I'm also working to development a tournament tool for GatheringofGamers.com . This is going to be taking a lot of time up as it's turning into a rather large project as time goes on. It's been fun to design though and I can't wait to start developing it. I'm currently in full fledged R&D mode still, but as I work with the other site developers to polish the design, work on building it should pick up within the next couple of weeks.

In the mean time as I do research for this project, I'm moving forward with adding some functionality to the decipherone.com website. I added some basic news submission to the site and will be adding some more stuff in the coming weeks.


In other news, after my rant about Microsoft last post, I'm now the proud owner of an XBox 360. I spent quite a bit of time gaming the first few days I got it and have managed to put in an hour or so every couple of days, which is more gaming then I've done in a long time. I have to say I'm fairly pleased with it so far and with the exception of the payment system, am fairly impressed with Xbox Live as well. Dead Space is also an excellent game.

Sunday, January 04, 2009

The Qt life of a Troglodtye

This is the first blog post of 2009. I'm excited to be in a new year and am looking forward to making this the most successful and productive year yet. Last year there was a pretty steady increase in my blogging habits. I ended up with 48 which averages out to one post a week. This year I have a blogging goal of 100, all rich with useful information in content.

So, I've been diving into the world of Qt the last few days, and so far, I have to say that I'm very impressed. I've been looking for an alternative to MFC on windows for a long time, but never really wanted to get into .net coding. It has also been a goal to make Troglodyte cross-platform from the very beginning, but I was never really sure how to do it. While I currently don't have a Linux or Mac box to compile my projects on, using Qt at least provides the frame work for me to be able to do so in the future.

In addition to using Qt, I'm also in the process of learning their custom IDE Qt Creator and I have to say I like it very much so far. It's still in Beta, but it's pretty functional. The IDE can be setup to use various compilers, but comes setup with the GNU GCC, which I haven't messed with since I first started to learn C++ six years ago. I have to say I'm fairly pleased with the compiler as well.

I've been wanting to get away from Microsoft specific products for sometime for various reasons. Don't get me wrong. I like the products that Microsoft makes. I've enjoyed using visual studio for the length of time that I have, but what I have never really liked is how Microsoft has seemingly set out to Monopolize the markets that they are in. Collaborative work and allowing others to learn from what you have done allows for true progress to be made. While Microsoft has gotten a little better due to pressure from government agencies and users themselves, it still seems like things will always be in a certain light from Microsoft. I'll continue to use Microsoft products such as windows(as long as the Windows7 doesn't go the way of the vista) and as a software developer will be required too as it's still the major piece of the market pie.

The main reason for wanting to switch however is simply to be able to cater to the rest of the market. As well as use tools with little to no restrictions that I don't have to worry about licensing issues and I can share with the community that I'm hoping to build around the game engine. In addition Qt Creator is light weight and provides support for C++ which is the only language that I develop in, besides python.

So, as I've been learning Qt, I have to say that I'm very impressed. There is functionality put into these collection of libraries that will not only allow for simple cross-platform compilation and serialization issues, but also allow for things such as resolution of localization issues and rapid application development. I'm hoping that this will cut down development time on the editor by more then half.

The website is still coming along, as well as the tournament connection system for the GoG. I'm going to try and get the majority of the remaining design knocked out for that system today. It's great to finally have a couple of consecutive days off from work to get things done.

Tuesday, December 30, 2008

~ Begin the year end update ~

Yay! Server is back online and so am I, with a dedicated connection. This will be a good thing heading into the new year and should allow for things to continue to move forward. I was thinking of doing a year end review but I'm not sure if it'd really be all that beneficial for anyone. I mean, I reflect enough as it is and it seems like everyone is talking about year end wrap ups or recaps and, well good for them.

I've started work back on Barricade currently. I'm working to finish some of the game mechanics that I did not finish during work on the proto-type. I worked on it a couple of days last week and some decent headway.

I switched back to this for two reasons. One, I decided to port my existing code base over to Qt in order to get things independent of a specific OS. This will allow for the editor to be cross platform as well as the engine itself and will hopefully open up a wider user base.

I've never used to Qt before, but I'm getting the supposed manual and am going to start learning sometime in the next month. In the meantime, I decided to work on the Barricade demo some more. The second reason being, I have not been able to make a solid decision on the next iteration of the engines state management. I've gone through at least 3 redesigns this year, with the core system staying some what the same, but the implementations being very different. I need to buckle down and just make a decision for this as it's been holding back progress from other areas for quite sometime now.

On a more personal note, I usually find it hard to focus around this time of year, and this year is no exception. It's almost tormenting to simply want to put everything off until the new year and just go out and live it up with everyone, but there's times and places for those things, not every day.

Wednesday, December 24, 2008

Christmas Time in Des Moines

So, I was lucky and the lottery gave us a day off for Christmas at the last minute. Which means I have tomorrow off. They told us this today. Which is to be expected. Of course this means however that I had to plan my Christmas a head of time as if I was going to work, and now I won't get to see my son until after 3:30pm. Then Friday, back to work and we'll see if I end up having to work New Years day, which is a strong possibility. Groan, groan, whine, ect.. To be honest I'm just glad I have a job right now. So the little annoyances aren't really that bad.

I do however need to start concentrating on some sort of transitional period over the next year. I plan to continue my current job, but would like to be ready to go into a software development position of some sort by the first part of next year. At which time I'm also hoping to have the engine ready and being used for exclusive production of Phyersoft games for the length of the current agreed upon contract, after which the engine will be released to the public.

At that time, I'm hoping that over a few years of further development, support, and building a community around the engine, I'll be able to transition into having it as the base ip for my own business. Then, after getting some infrastructure setup to continue development and support, I can really begin concentrating on making games. Of course as soon as the engine is in a production quality state, I'm going to begin on a project of my own as well. I have three that have been partially designed that I'd really like to finish and build, but I'll have to cross that bridge when the time comes.

In the meantime, the challenge of staying focused and motivated is in the forefront. I may have to limit myself to being more selective in my future involvements in future projects that stretch outside of the realm of my main goals, after current projects are made good upon and completed. At least until I have more time. If I continue to be so fragmented in my undertakings, and going off on tangent projects, the next four years will go by like this past one. Time having passed with good intentions, some work, a lot of planning, and little to show for it. This of course would not be a good thing.

For anyone interested, I'm now on Twitter. Something that I put off for a while because I thought it was kinda weird, but after getting into it the last couple of weeks, you can get a peek inside the lives of people all over the world every day, which is an awesome concept, even if it is instantly brief and and enormous time killer. A cool thing I've done, just randomly select followers from one person to the next and see who you end up on after a random number of clicks.

Merry Christmas everyone, may your stockings be coal free, unless they're stuffed with clean coal, then market that shiznit and make some clean energy for the masses.

Friday, December 05, 2008

More of what I don't know

Made some progress today on the new data management classes for the engine. I'm working to get linked list implemented in such a way that objects and scenes will be able to be as dynamic as possible. And as per usual, I'm rolling my own, which is always fun, educational, and tedious.

I have to go Christmas shopping for the family sometime this weekend, which will be a nightmare I'm sure !!!!!!!!!!!!

I didn't meet my goal 15 minute segments of internet use today, but I did cut back, which helped me be more productive.

Thursday, December 04, 2008

Please sir, can I have some more...

So, it's crunch time for the next.. oh.. two years. Not the cap'n crunch kind of crunch time either, although I do have some crunch berries, my son picked them out. But no, I'm talking nose to the grind stone, eating, sleeping, pooping work.

I now have taken on three full time jobs. Lottery, Game Engine Developement/ Personal Website Development, and GoG Tournament system development. So what does this mean. It means that I've got to really get organized. My plate is full to the brim and if I'm going to be that orphan who gets that next bowl of gruel, I'm going to have to scarf down that first bowl, no matter how hot and tasteless it may be.

Luckily my metaphorical gruel doesn't taste bad, but that first bowl seems like it's a never ending amount to shovel. This just means that I have to get really organized.
In order to do this, I'm simply going to focus on the tasks that I lay out for myself each week, as well as limit the time that I spend on the internet (huge time killer) to 45 minutes a day, unless related to the Lottery, which doesn't count, 15 minute segments broken up throughout the day. The limitation includes research also, meaning that I'm going to have to use books for the vast majority of my reference hunting and if there is something that I need to look up, I better damn well have a good idea of what I'm looking for before I get on the net. This of course hasn't started today, but will start in the morning.

I'm also going to have to limit my gaming to no more then an hour a day (which I don't normally play every day anyways), which kind of sucks, because normally I'd just play for 3 to 5 hours twice a week or something, but this sucks those days away, which I'm going to need.

Before the new year, I need to :

Have Game States, G.U.I system, and the next version of the Editor started for the game engine.

Have a good start on the tournament system.

27 days after this one. Time to get this show on the road.

Tuesday, December 02, 2008

Riding the waves

Well, I did a radio spot today on Macs World for the GoG and it was a pretty cool time. I guess I don't really have a lot to say about it. I was trying to let Ben from Gathering of Gamers do most the talking as we were there to promote the GoG and he knows more about it then me. I do think that it was some good exposure for some of the things that we are trying to do in Iowa to further the gaming culture. Overall it was a great experience.

The last design posted previously to this post is currently being revised. I decided to go with a linked list approach to add some dynamic memory management at run time in the engine. So the previous constraints of the amount of scenes will be replaced.

I'm also going to be working on designing and developing an online tournament system for the GoG. With work, being a dad, game development, and now the tournament system being developed, my time is pretty much spoken for, for quite sometime. This isn't bad, doesn't leave a hole lot of time to play Fallout 3. Which shouldn't all be bad as it'll leave more of the game to play once they release a decent patch for the game which is scheduled sometime this month.

Sunday, November 16, 2008

Scene Development

Today I'm finally sitting down, after some long procrastination and a lot of lack of time, and also having to get the server back up after it went down, to get to work on the Scene class and file structure for the engine.

Scenes are but one parts of four file formats that the editor uses to build a final binary file that the engine will use. The four file types work together and combine all the the data and resources and as such are intermediary files.

The different file types are:

.TOF = Troglodyte Object File, used for storing Data specifically for Objects. This file format is specific to any one type of sprite object that can be used in the system. This type of isolation allows objects to easily be used across different scenes in any level or project. .TOF files can also hold purely audible data and can act as sound effects or music ques around a scene.

.TSF = Troglodyte Scene File, holds the data for a specific scene. Here is where game scripting, keeping track of objects, and object interaction begin to take place. This file knows how many objects are in a scene, keeps track of where the object data is stored on disk, and is responsible for resolving script and and object data at project compile time. Scenes can be a platformer level, and scripted animation scene, or even a menu, for example. Scenes are not limited to these types.

.TLF = Troglodyte Level File, this file is somewhat redundant in that it serves the same type of functionality for scenes that the scenes perform for the objects. Each level is limited to 25 scenes simply for simplicity, but does not have to make use of the full 25. If a developer feels that 25 scenes aren't enough, it's up to them to structure their data so that it works, or they can edit the source for the engine and recompile to suite their needs as long as they follow the EULA set forth.

.TPF = Troglodyte Project File, this is the all encompassing file that organizes all the other files types into a working structure to be used in the engine.

Once compiled these create a .TBF = Troglodyte Binary File. This file has all the video, audio, and script resources compiled into one file per level. If a project is named Quest, the files would be saved as Quest_L1.TBF, Quest_L2.TBF, and so on. L1 files will always be the starting point of any game. The editor will spit out compressed files into a structure such as specified directory/Quest/Bin

After a brief introduction into the file types, now onto the design for the .TSF files and classes.

All of the serialization work for the files are handled by a class called the hidden management layer. The Game State Hidden Management Layer is responsible for sending a message to start or stop a Scene and handles any errors that may arise during Scene and Level initialization and clean up. So, what this means for our Scene class, is that we can keep it fairly simple.

Things the scene class will need:

1. Know the number of Objects it has.
2. Know the number of Scripts the scene has.
3. Know which Script corresponds to which Object.
4. Know when an Object should be following a specific script.
5. Know when it needs to initialize and load data.
6. Know when scene execution should begin.
7. Be able to update the scene data each frame.
8. Know when to stop scene execution and updates.
9. Know when to clean up and release memory back to the heap.
10. Access to Objects interfaces to be to manipulate Objects.
11. The ability to add and remove Objects from the Scene at runtime.
12. A Scene Name. (Not to be Confused with state Name).
13. A unique numeric identifier for the Scene in order for the Level to keep track of it. This should range from 1 to 25. (Not to be confused with State_ID, which is used by the GS_HML.)
14. Area size. The size for one block on the area grid is 32X32 pixels. Area sizes of grids use multiples of 2 starting with 8X8 and the largest Area being 1024X1024. Which equates to up to a gig of background data being available in memory at any given time.

All Grid Sizes: 8X8, 16X16, 32X32, 64X64, 128X128, 256X256, 512X512, 1024X1024

15.Scene Orientation data. If the developer wants to use a platform type view for a scene, or if they wish to use an isometric or top down view, it must be specified using the Scene_Orientation variable. This is one of the variables that must be selected when creating a new scene.

16. Layers. Regardless of camera direction and placement, developers can make use of up to 32 layers. Depending upon the orientation of the camera however, the layers can either be used in only the z or y planes. Objects must be on the same layer in order for them to interact with one another, however, using scripts, changing an objects layer during game execution can be performed at run time. This can allow Objects to move from a background layer into the fore-front for example, or vice versa.



Things like pausing and swapping scenes and levels is once again handled by the Hidden Management Layer.

*Note: When adding Objects to a scene, a unique identifier for faster parsing of objects is going to be needed. This should be a numeric value.
No limit of Objects is implemented in the design per scene. This approach will require an increment to the identifier to made for each object added to each scene. This approach means however that if an object is removed from a scene, that the numeric value added to that object is no longer valid in that project.

For example, I add an Object called Apple. At the time of adding Apple to the scene it is assigned the Scene_ID of 25. I then remove apple from the scene because I decide that I want to use a different type of Object in its place. If I were to simply edit the Apple in the Object editor and update it in the scene, then it would retain the same Scene_ID. However, since I deleted the object, even if I later decide to add that same object back into the scene, it will be assigned a new Scene_ID at that time. 25 will become lost from the ID pool, but this shouldn't really matter to the developer as Scene_IDs are used internally simply for data management.


17. Error Messaging. When the GS HML loads or saves a scene any errors that may arise should be displayed to the developer in order for the developer to choose a course of action. Error logs should be generated in the Project folder for a project. The folder should be Error Logs and
inside there should be logs for problems with the overall project and then sub folders for each additional file format. This should handle:

17.A) Object Creation Errors - (Loading data from disk.)

Non-Critical Errors - The developer can be prompted to skip the object and continue Loading the Scene.
17.A.1) Resource Not Found. (A Texture, Sound File, or Script Associated with the Object can not be located.)
17.A.2) Corrupted Object File. ( The file has been corrupt and cannot be loaded.)
17.A.3) Missing Object File. ( The Specified Object File Cannot Be found.)

Critical Errors - The Scene will not be able to continue to be loaded.
17.A.4) Memory Out of Bounds (Buffer Overflow - Causes system to be corrupt. Engine/Editor must be restarted.)- This should generate
an error report pinpointing the Object that caused the error so that the developer can look at the Object and remove it from the scene if necessary.

17.B) Scene Creation Errors - (Loading data from disk.)

Critical Errors- The Scene will not be able to continue to load.
17.B.1) Corrupted Scene File. (The file has been corrupted and cannot be loaded.)
17.B.2) Memory Out of Bounds (Buffer Overflow - Causes system to be corrupt. Engine/Editor must be restarted.)-An error report needs to
be generated to show the developer which scene caused the error so that it can be removed from the project.
17.B.3) Mismatched File Type. ( The file attempting to be loaded does not have the .TSF file extension.)
17.B.4) Old file version.( The file being loaded is built with a previous version of the editor and the file format is out of date.) - Adding
support for some legacy file formats and being able to update them to the new format once loaded is a possible work around for this issue. This could potentially be a non-critical prompt message.)

17.C) Scene Serialization Errors - (Saving data to disk.)

Save Failure - If any of these errors occur the program will simply exit the saving method.
17.C.1) Scene File in Use. ( The file is an open stream being used else where.)
17.C.2) Minimum Data requirements not set. ( Some how the user by passed filling out the appropriate minimum data needed to create
a scene, therefore the file is not valid.)
17.C.3) Memory Corruption. ( The memory attempting to be read for serialization is corrupt.)

Save Prompt - If any of these errors occur the developer is prompted for action.
17.C.4) File already exists. ( User is prompted for to overwrite file.)

17. Followup Note - It will also be beneficial to allow the developer to set a flag that enables all non-critical errors to be ignored during in editor
testing. These messages should still be logged so the developer can fix them, but prompting the developer should be removed from the
process if that flag is set.

18. Scenes should inherit from the inheritance line of the class GAMESTATE in order to actually make use of the messages from the GS HML.

Thursday, October 23, 2008

Degredation

Blurry blurry vision, it's not as cool as it sounds believe it or not. Sure you see a big purple spot every where, but it makes it hard to read and to tell the difference between certain colors. Not really handy when your trying to put some new ends on a cat 5 cable. So, I experienced this last Monday and Tuesday. I finally decided to go to the doctor for the first time in six years after it didn't go away. The doctor sent me to a specialist, and after some test, they discovered that I have a condition called Central Serous Chorioretinopathy. It's an eye decease that effects mostly white males ages 25 to 45 and it causes retinal fluid to leak into the front part of the eye and causes warping of the pigmentation. This can lead to fun things like retinal detachment, or permanent visual defects. It's apparently caused by a reaction in the small single cell layer that separates the fluid and solid parts of the retina, brought on by a reaction to too much epinephrine( adrenaline for we simple folk), and is somewhat of a medical mystery.

The good news is that I should get most of my vision back and with some precautions, a the chance of a recurring episode can be greatly reduced. The bad news is that if it does happen again, the likely hood of permanent damage greatly increases. I go back to the doctor next Tuesday for a follow up to make sure the liquid has recessed and that everything is healing.

More troubles, except this time, in the server front. I have to assume that the server was some how cracked, because before this Monday, there was no trace of a problem, and I hadn't downloaded anything in months to the server. On Monday of this week however, I discovered that when trying to access the forums at decipherone.com, the forum software was generating an error message saying it was unable to connect to the database. I finally had some time to look into the problem after getting home from work late last night. Tenga.A virus anyone? If you want some I can send you any one of the exes on the server because they are all infected. Which after doing some research seems odd, because apparently there are patches for it in XP from service pack 2 up, and I have service pack 3 installed. I didn't get it, but now I get to spend this weekend reformatting the server and loading all the software back on it and setting up some new security precautions.

Well troubles are said to come in threes I heard one time, and I know of another problem that I won't discuss for reasons I leave a mystery, but the good news is life moves on. I really wish my work on the engine would though, but life keeps seeming to throw me some distractions that have to be taken care of first.

Wednesday, October 08, 2008

Cha Cha Cha Cha.. Changes!

There has been quite a bit going on since my last post. I moved last week, downtown, into a new apartment, which is quite nicer then the last place I was staying. The building is older, but it's kind of interesting to be in one of the first buildings built in the state. I haven't had any ghosts visit me, but that's all good and well I suppose as I don't think I really know how to entertain ghosts. I'm also finally not in a basement apartment, which I had been the last two before this one. Instead, I'm on the top floor and there's an awesome view of some trees and downtown streets from my many windows. Which is all well and good, it did suck having to move all my shit up four flights of stairs though. Many thinks to Dan and Sam for helping me move my stuff.

As I get settled I'm hoping to really get focused back on getting the engine to the 1.0 bench mark for beta by the end of the year. As I've been writing about for a while now, I haven't really been as focused as I should be. The good news however is that I really feel at home in the new place and feel a lot of focus starting to come my way.

I'm also really wanting to finish the Barricade Proto-type to showcase the engine and want to start working on my personal game project. With things being so close to completion I've found it really hard to stay the course, but after coming this far, it wouldn't make any sense to give up.

Work on the website needs to continue as well, although I'm thinking that it will take a back seat the engine now, which wasn't the approach I was taking the last few months. There's still a lot of work to do there, but things will be completed with time.

Not really much more to write as of now.

Tuesday, September 23, 2008

Damn you Internets!

I am spending way too much time reading and posting on forums these days. It's good to see all the great projects going on over at tigsoucre, but there is just so much information there that I've missed out on that I'm trying to catch up with that I'm easily spending two hours a day reading the forum posts. Plus working on my website and having various other things going on, I really need to refocus.

The server for the website will be down for a short amount of time as I'm going to move it on Thursday to a temporary place. Not that anyone goes to my site anyways, because there's not a lot to see there yet, but just in case someones wondering.

Monday, September 22, 2008

Changes

Well, I modified the blog layout to resemble the theme on the Main website so now things look somewhat uniform.
I've been doing way too much messing around the internet as of late and not enough coding on the engine. I'm also going to be moving again next week, so things are a little hectic right now.

I'll be moving into the heart of downtown Des Moines for the 3 time in four years. I finally got a decent apartment down there though, so I plan on staying there a few years. Which will be an awesome change because, well, I tend to move a lot.

So I'm supposed to be finishing up game state management, python interfaces, and working on the next version of Scribe. Those three things will put me to what I'll be considering a 1.0 version of the engine. It'll be the bare nuts and bolts, and will allow me to make games.

I'm then going to be working on a side scroller and completing the Barricade Proto-type, which has stood still since April.

Then there's the networking layer and the effects layer to take care of, which I'm considering extra at this point, but really is a necessary part of any modern game engine.(Hell even 10 years ago.)

I'm really aiming to have all of those tasks completed six months from now. Those things will be doable, but are going to require extreme focus on my part. Especially as I'm trying to do the gathering of gamers thing and develop my site community. I'm also going to be having to have some beta testers come on board and help test things.

If anyone is interested in beta testing email: support at decipherone.com

Wednesday, September 17, 2008

Source Control

Source control is something that I neglected for quite sometime due to some issues that I had a few years ago with using Microsoft Source Safe. I'd asked some fellas over at gamedev.org a little while ago about what they were using as I have plans to get some additional help with projects in the near future and was wanting to look into again.

After looking at some of their suggestions I decided on Subversion , and I finally downloaded it to the server and started working with it today. At first it was kind of a struggle because even though the documentation is pretty thorough, it leaves out some important details. It seemed no matter what phrases I was typing into google, I couldn't find any other documentation.

It wasn't until I entered the phrase subversion walkthrough that I actually found some sites that help me get it up and working. Mainly Video How To: Getting Started with Subversion and Source Control was what I looked towards for some straight forward answers. It's a really well made tutorial for anyone looking to start using subversion on windows and it also introduced me to the GUI command tool Tortoise which is way better then simply using the command line interfaces.

I'm pretty happy with the experience so far, and am glad that I can now have access to things remotely as well. Now to actually get some coding done.

Monday, September 15, 2008

Autumn and the Gathering of Gamers!

September is here already and although I've done better this year then any other at blogging I still haven't met a lot of my goals in that area, but things happen, people get busy, and time goes by, just like every other year and every other life.

At any rate, as per usual, I've been pretty busy. As previously mentioned, I'm still working on building the site over at www.decipherone.com , but it's been kind of slow going, along with production on the game engine. I haven't really been spreading myself too thin, more so I've been getting side tracked a lot with spending time with friends and also getting some other projects going.

One such project is getting involved with the guys over at www.gatheringofgamers.com . This is a great social networking site that is geared specifically towards gaming. With the exception of the great games experiment, I haven't been one for social sites, but this is one that I've actually been somewhat active in this year. I met the president Ben at our first game developer group meeting last year, and managed to meet up with him again and the site intern Zach (aka RyuBlitz on the site)a few weeks ago where we played some disc-golf, some 360 and had a few drinks. We had a great time.

At any rate, I'm very impressed with the site as it's grown to near 2,000 members as of this writing in a little over a year(just over as of August 26), and people keep getting more and more involved. There are plans for me to help out with some contract work as well as help promote the site and attempt to get some networking opportunities set up. It is dedicated to helping gamers network. You set up a profile and have friends, classic social site style.

Last week there was also the addition of a clan system that is used to help those involved in gaming ladders keep track of their members. The site has recently seen an onslaught of KSI members join since the system first went live and we expect to see numbers continue to grow.

Ben recently got back from New York last week where he went to meet up with the Microsoft based company Massive which specializes in in game advertisement. The plan is that the GoG is going to be in charge of a gaming event in New York in November.

Other interesting opportunities have happened for this small upstart, like attending E3 and plans to attend the Major League Gaming Playoffs in Dallas Texas in October.

If you are a gamer and you're looking for a place to hook up with other gamers, then the GoG is the place for you. Stop on by and check out some profiles, find other peoples gaming tags and meet up with them on line. Come be a part of a growing community that has of yet seen it's peak time. With many more plans for the future, get into the Gathering while the getting's good.

Wednesday, August 13, 2008

Our fair August

It's been a little while since I last wrote anything in here. What have I been up too, work mostly at the day job, but aside from that, I've been working on getting the website going. Really that's about all I've had time for, creating content, and I'm finally starting to deal with databases again for the first time in about six years, and starting to dabble with some php. It seems like I've been writing a lot also, but about what I'm not sure as it doesn't seem like I've actually produced a whole lot.

I'm also getting ready to move again, this time into a house finally. So things might be slow for a while a yet, but things are always moving in the background. I have forums up and running http://www.decipherone.com/community but odds are if you're reading this blog, you may already know that.

More as news develops at 10.