Sunday, July 06, 2008

Reflections of terrestrial tides.

The month of June 2008 has come and gone already. Half of one orbital rotation has been completed and we are our on our way into the second half. As this begins, I think that it's important for me to reflect for a minute on things that have transpired this year. To see where it is that I am heading and to take note on where things need to change in order for more positive outcomes to be realized.

I was blessed enough to receive a job this year that has allowed me to hold true to completing obligations as well as fund my hobbies and personal business endeavors. It can be easy to forget where one comes from and to take for granted what one has when it becomes a part of ever day life and begins to seem less then extraordinary. The perception of course is wrong. It's something that I have to keep in mind as flight through the cosmos continues this year, and something that I think I should remind myself of, each and every day.

Family is also something that can start to be taken for granted. It's important to have family because they are the ones that help to keep us honest, that we share our triumphs and falls with. They are the ones that let us know when we are acting like a fool, even if we can't see it, and that help pick us up after we have had a bit of misfortune. When things start getting comfortable, it can be easy to forget just how important family is. They are the magnetic poles that guide our moral compasses.

Health is an area where I have been lacking in this year. I was doing well with taking care of myself for the first quarter, but once things starting getting a little unorganized, I allowed myself to fall into a pattern of little to no physical activity. This is bad for me as exercise has always been a huge way for me to relieve stress. This could potentially lead to other problem areas, which in turn could effect the other areas of my life that I've already reflected on. This is something that I've been making a note to change in my mind, but haven't really put forth an effort to remedy. If I don't get serious in this area, I fear it could have some adverse consequences.

I have not accomplished as much as I should have at this point with the game engine this year. At first my time was eaten into by other areas of my life such as work. But for the last three months or more, it's been mostly due to laziness and failure to structure my time to be productive. Granted, I have made some headway, but it hasn't been enough. I have failed to set consistent goals and know that I should have been doing more. Dedication in this area is a must if things are to be ready by the end of this year to move forward into what will be the second phase of my business endeavors. (which I will write more in about in the coming months)

I've been thinking a lot about my goals, community, and my future lately. Essentially, I've given myself five years to make it on my own from nothing to indie game development company. At the end of the five year period I plan on not giving up, but instead taking a more traditional method of academia, because at that point I'll have proven that I can't do it on my own. If things don't change, I'll be sitting here five years from now in too much of a similar position. Except I'll be having to take out loans to take a bunch of classes. I don't like being in debt for any reason, especially to learn(something that should be available to everyone if they want it, at an inexpensive cost, if not free)

Over the next few weeks, I'll be working to get back into a productive schedule that includes exercise and a minimum amount of time to work on things. I'm also working to develop a full fledged website and community to surround the game engine also, so time structuring will become more and more important as we come closer to the engine reaching it's first release phase, and the website officially going live.

Friday, June 27, 2008

Learn to be more like Sir Galahad

This week has been an interesting one. I've spent the better part of it with my son, which has been a blast. I took the week off from work and with the exception of a few days he's pretty much been by my side most of the time. Sadly, I don't really remember the last time I got to spend such consecutive time with him, but I don't think I've ever had a better vacation.

On the server front, I ended up abandoning ubuntu as I was spending way to much time managing system resources and setting things up. Damn it Jim, I'm a programmer, not a full time systems admin. It was just way too involved for the things that I wanted to do and the time that it would have taken to get everything going just how I wanted. So, I ended up re-installing windows and simply going with an Abyss server app. Now, I'm very pleased with Abyss so far very user friendly and easy to use. I also got setup with a dns redirect for decipherone.com and now we're in action. I just have to write all the stuff that I need for the website and PLOW! no more paying outrageous prices for hosting and or renewing or registering domains with over priced registrars. Thanks Google, enom,, and
Dyndns.org

In engine news, I finally finished the directinput functionality for the engine. So now you can use 360 controllers and generic controllers at the same time, as long as the developer puts interfaces to it in the game that they are creating. I started getting the GUI class fleshed out last night, but I'm guessing that it's still going to take me a while to get that finished up. There's just a lot of functionality to consider when writing a full fledged GUI. It'll be good to get it going though and be able to get the editor more object based. Currently it's written as an object simply called Editor and all the drawing for the menus and everything is done directly in functions in the class. This is bad. It works, but it kills frame rates. I'm also looking into using FBO to turn text files into textures once the text is read into the engine. Currently it simply reads from the file each pass and writes the bitmaps fonts to the screen each pass. This is very inefficient. Lots more to come.

Sir Galahad was the knight who successfully found the Grail. A king among men. We should all strive for such greatness.

Friday, June 13, 2008

Long Nights in a New Friend

So, I spent the better part of the day and night messing with the server. I had forgotten about a problem that I had noticed about a month ago when I was assembling most of the parts to begin with. It wasn't until about three failed attempts of installing the latest build of Ubuntu that I remembered it. You see the case that I currently have for the server is arranged in such a way that the cpu is kind of close to the power supply. Granted, that this might not normally be a problem (although still a bad design in my opinion) but in my case, the fan that I have over the cpu is pretty massive. It's about 2 1/4 inches resting on top of a 4 inch heat reduction coil. Now, this is good for cooling purposes, but bad when there is only about a 1/4 inch gap between the fan and the power supply. In my haste to get things going I suppose I put it off in my mind.

Needless to say, this caused the psu to overheat. Now for some reason, I was thinking, "what is going on, is the damn thing overheating," but I couldn't remember why. It wasn't until I opened up the case to make sure the cpu fan was working that it dawned on me that I had forgot about the problem. So, I had to do some temporary adjustments and the psu is now resting on the bottom of the case for time being, with the case open. This took care of the problem for the time being, and the system is no longer freezing up. It's kind of funny though, I don't normally get that excited about things, and here I was just blowing off a problem with the system. Well, I thought it was funny anyways.

So, I'm either going to have to do some custom cutting to the case to get something worked out, or I'm going to have to get a new case. I have some tin snips, so I think I'm going to try some custom work to the case first, but if that doesn't work out, I found a decent case on-line for under $50. It'll have to wait a few months though as there are more pressing purchases to make in way of summer clothes for the kid, car insurance payments, and a portable air conditioner for where the computers are so that they don't over heat this summer.

My thoughts on Ubuntu Linux so far, after spending about five hours messing around and setting it up are, I like the interfaces a lot, I haven't really gotten to do a whole lot as I spent time downloading updates and just getting familiar with basic file structures and the like. I also downloaded Boinc to run Seti so that I could free up my dev box from it, so hopefully it'll have a little longer life. One thing I'm not liking though is the inability to access things as a root user without having to do some sort of working around. I suppose it keeps inexperienced people from screwing things up, but it seems like over kill in the area of protection. I would assume that anyone who can manage to work around the system the way that it is setup to emulate a root user, they could still screw things up just as bad, even unintentionally, but I guess it would take a little bit more work. At any rate, it's going to be an ongoing learning process. I just have to make sure it doesn't get in the way of working on the engine as well. Long day tomorrow.. err.. today. I better get some sleep.

Wednesday, June 11, 2008

When it rains it pours.

It's flooding all over the state of Iowa right now, including here in Des Moines. I happen to be in an area with higher elevation, so I pretty much have lucked out so far and haven't felt the wrath of nature directly. I have however been witness to the many people who have not been as fortunate and who are losing their homes, access to their work, and even some people being separated from their families. If anyone reads this blog, and you happen to be the praying type, I'd ask that you do so now for those people who are having their worlds shaken up. At the same time I realize it's not like similar things aren't going on in the rest of the world, it just makes you take notice even more when it happens to hit close to home.

Speaking of weather, I've been kind of under it the last few days. I've had something of a fever and upper respiratory infection, so I've been kind of unmotivated to get things done. Not that I haven't felt that I wanted be motivated, in-fact, yesterday I attend the local Game Developer Forum Meeting, and today I completed assembling the server, and even now I'm taking the time to write in this here blog, but I've just felt un-motivated. I just hope to get back to feeling normal soon, but I suppose, just like the rain, all I can do is wait it out.

A few days ago, I did manage to complete the side by side XInput and DirectInput implementations for the engine. I also started working on a new test app, or rather a more polished demo showing recognized presses and the like for both generic and 360 controllers. I still need to finish that however. I am then going to tackle finishing up the GUI classes for the engine, which will probably end up taking me a little bit longer then I like, but it'll be a good experience.

I also decided to install Ubuntu as the os for the server. This will be good as I'll finally have a dedicated installation of Linux that I can start to code for, and work out serialization and windowing issues in regards to cross platforming for the engine. Although at this point it's not really a concern, but it's something to look forward to.

At any rate, I'll be spending time building up some resources for the server over the next few months. I'm not going to rush it, as I'm hoping to do some more professional things with the inter-web, and I also have a lot to learn in the way of the operating system, databases, server sided scripts, and server administration in general. I think I'm going to turn in early to try and get to feeling better, and to get an early start on things.

Sunday, June 08, 2008

More to Come

Things are starting to pick back up on the development side of things. I'm starting to really get focused back on my efforts and have been getting things organized once again. I've done a horrible job of documenting progress with releases of the engine and this is something that I'm really going to have to watch, just so it's easier to see what's been done for archival purposes.

On another note, I should be getting my server finally completed this week. It's something that has been a slow and steady build, but I'm just now waiting on the remaining parts to arrive for now. I'll be using it to run server software for the game engine as well as host some other projects that will be mentioned once the work is completed for them.

I've got a lot of work to do to get back on par with my development outline, so.. back to work.

Thursday, June 05, 2008

Life Happens

My son is sick again today with a high grade fever and some other symptoms, but apparently the doctors couldn't pin point what it was. I plan on doing some reading and code analysis before bed, but I'm dealing with my son being sick for the time being.

Wednesday, June 04, 2008

Re-focus

Well, I obviously haven't done a good job of meeting my goal of blogging everyday up to this point. Reason being, I've been a little off kilter still and not very focused on development. No more, I now banish laziness from my life. Now the question becomes, where do I start back on the engine.

I still have fractions of things partially written here and there, half-assed implementations of classes and the such. I suppose the best place to start would be the area that I initially began in when going through in March and butchering up my implementations. That area being the gamepad functionality. While I had implemented the XInput stuff, I did not finish the generic gamepad support. So this will be the first place I start. There are more pressing issues to take care of, such as finishing the state management, but I figure my efforts became so fragmented because I didn't follow through in one area before starting something new. I had never done this before in the project and my thought processes and planning things out definitely took a hit because of it. Lesson learned. Keeping my work orders simple and linear will help keep me focused and productive. So, instead of planning out things way in advance, I'm going to do one task, then re-asses what to do next, and continue in this pattern for a while.

I also am going to have to begin doing additional research for the python interfaces, which I will begin doing again tonight.

Tuesday, May 27, 2008

More distraction

I'm really going to have to work to balance things these next coming weeks as tomorrow an event happens that will surely take at least 70 hours of my time away from me. No, it's not the 8th World Biomaterials Congress Kick Off, nor is it my induction into the Nasa Bed Rest Study, instead..... It's the release of Mass Effect for the PC. Something that they said wouldn't happen. This couldn't be happening at a worse time, but it's something I'll have to deal with.

Monday, May 26, 2008

Serentiy

Things have started to slow down at work again. Which is good. It's been kinda of slow for a while, but I haven't had the mind set to get back to work on things full time, until now. I've done little to nothing for work on game development the last two months or more. This was due mainly to my work load, but also due to a lack of focus on my part. I took today to look through my archives and reflect on the things that I have accomplished over the last five going on six years. With the exception of the Conquest For Love proto type and the work that I've done on Troglodyte the last couple of years, I really have not been that productive. Of course when you start from nothing you have to build up knowledge and experience before you can do anything that is really worth while, but the reflection has once again put me in a motivated mindset. I am at a point where if I continue to work, over the next couple of years I am really going to start seeing my efforts pay off. Or, I could simply throw in the towel and move on to some thing else in my life. Doing so would leave me with a feeling of incompleteness however, and would leave me needing to have a redesigned vision for the future.

My current vision is in jeopardy itself. With the lack of work on a project comes the lack of management and a decrease in familiarity with the segments and details of the overall endeavor. It seems that I'm constantly coming back to this place. Doing large amounts for the project in short periods of time and then taking a break only to come back and have to get re-acquainted with everything once again. This is of course my own doing but seems to be necessary in balancing the other aspects of my life. Or, this is what I tell myself at least. At any rate, I'm finding myself once again having to structure my plans for things to come and a detailed plan of attack.

I am going to be blogging with the goal of writing something every day, and too have some progress to write about as well, no matter how small. I'm hoping that it will give me to motivation that I have been lacking.

Tuesday, April 15, 2008

Gamedev.org Expo 2008 and other things of Interest

Over at http://www.gamedev.org there is a competition going on over the next few weeks and I'm definitely getting in on it. I came up with a concept the other day and spent an hour or so fleshing out some of the details. I'm really excited about what I've come up with so far and thought that I would share my some what hacked together design document with the masses. So, without further ado, here is be :


2008 GameDev.org Expo

This Game inspired by Keep It Simple Stupid

This Game in dedicated to those that have passed away over the years your wit and creative spirits will be missed, but you are remembered.

Juho Vainionpää & Jam Rest In Peace.


GameDev.org Spam Bot Defender


Concept:

The premise of this game is a simple one. You are one of three forum
moderators who have been summoned by the Global Moderator Mikkom to help defend the virtual space of GameDev.org against an ever growing attack of porn spam on the website.

The enemies are actual spider bots who come by and drop porn images down from the top of the screen. As the images fall down towards the websites front end , it is up to the moderator to stop the image before it reaches the front end where it can be seen by the masses.

The spam bots have the help of distracting posters that come by and spam the forums with questions in regards to making mmo's, it's also up to the moderator to remove these posts from the forum front end as well. (This could be an added difficulty after the first few rounds.)


Actual Implementation :

Title Screens:

The screen fades in from black and displays the play area for the game, which consists of three different images each representing a different area of a virtual world.
---------------------------------------------------------------------------
The top of the screen (possibly done in a binary looking circuitry) represents the digital world, the internet. This is where the bots will be attacking and dropping the spam from.

The mid section ( this is the buffer zone where the player will have an opportunity to catch and destroy the spam. It will be most of the space of the screen and can have a simple image as a background.)

The bottom of the screen( the banner from gamedev.org) represents the forum front end. If spam hits this the forum is damaged and so is the reputation of the moderator.
---------------------------------------------------------------------------

At the fade in an image that says DecipherOne Productions Presents

GameDev.org Expo 2008

Spam Bot Defender.

Below this will be options for the player to choose one of three moderator
avatars.

Hymmerman
Ravuya
SDGamer
---------------------------------------------------------------------------
Each one will have different defense powers.
---------------------------------------------------------------------------

SDGamer will use disks of his movies to defend the forum.

Hymmerman will use small cities that resemble his city in the skies city.

Ravuya will use buckets of chicken to defend the forum.

---------------------------------------------------------------------------

Outside of the different avatar the player will see on the screen
and the different type of defense that will be used there is no difference between the moderator that is picked to represent the player.

---------------------------------------------------------------------------

After the player selects their avatar :

-- If time allows, core game mechanics need to be concentrated on first ---

A small story will unfold, presenting some god like eyes and a voice that talks to the player. IT is MIKKOM lord of the forum asking the player for their help in defending the forum against the hordes of spam bots that have been plaguing the forums lately.

This voice and and other classic characters from the forum will interact with the player throughout the game.

---------------------------------------------------------------------------

The entire game takes place in one area. Also, bots will attack in waves that get progressively harder with short periods of rest between each attack.
The player will be able to defend the forum using two types of devices that must be purchased from the armory.

The armory is where the player gets their defense devices. Each piece of spam that is destroyed leaves behind a karhma point (either 1 or 5) that the player must then use to buy defense devices.

Attack arsenal - These are standard range type defense devices.
Cost - 10 Karhma = 20 Rounds

Defense Barriers - Defense Barriers can be placed anywhere in the buffer zone. They destroy any spam they come into contact with, but they are also destroyed in the process.
Cost - 15 Karhma = 7 Barriers.



There will also be special weapons that the player will be able to purchase.

Arius's Cynicism - Completely obliterates any MMO posts from the forum.
Cost - 25 Karhma

Neko's Cry - This annihilates all spam currently on the screen.
Cost - 25 Karhma

DecipherOne's Ultimate-Defense - This creates a wall of defense barriers across the mid section of the screen. It last for 30 secs, after which all remaining barriers that have not be obliterated through being hit by spam, disappears.
Cost - 35 Karhma

Johnl's Wave of Wit - A wave goes through the forum turning all MMO posts into barriers that remain until they come into contact with spam or until the end of an attack phase. Also destroys any spam currently on the screen.

Cost - 45 Karhma

(A Note on MMO posts. These accumulate at the forum end of the play area and slowly stack. If not removed and bot spam comes in contact with one of them, it is considered a hit on the forum.)



---------------------------------------------------------------------------

Core Game Objectives

The player is given a Mod Reputation rating.

It starts off at 25 and can range from 1 to 100.

With each Karhma point collected the same value is added to
the players reputation.

The same amount is also added to a Score tally that keeps track
of the overall score throughout the game.

If spam comes into contact with the forum, what ever karhma points
the spam is carrying is then subtracted from the players
reputation.

If the players reputation goes below 1, then the Game is over.

It is the overall objective of the game to allow for an exponential increase in difficulty, fast play mechanics, a huge nostalgia factor for fun, and to allow for a comparison of scores to promote replay and competition.




------------------------------------------------------------------------------------


I'll be using Troglodyte to make the game and can't wait to get started.

In other news I let my http://www.decipheroneproductions.com domain expire today. The registrar I was with wanted entirely too much money to renew it and plus even though I've had that domain for five years, I always thought the name was too long. I instead registered decipherone.com for ten dollars through enom and google, which is a great deal. I won't be doing much with the domain for a public end until I get into a new place and get a server setup as well as an office, but I'm also pretty excited about that. Speaking of which, I have the day off from work today and am going to go house hunting as well as get resources ready for Spam Bot Defender.

There is still a lot of work to do for the engine as usual, but I'm putting that stuff on hold to participate in the contest. Wish me luck.

Wednesday, April 02, 2008

Time to hit Pause.

I've got a lot of over time to work the next month or so, and as such I won't be getting a lot done I'm guessing. Although for days that I don't work, I will be fully concentrating, but I'm just going to try and not get burned out on things.

I started working on the GUI for the engine this week. I didn't make a whole lot of head way and I still need to finish the other two systems previously started, but the GUI will tie into both of them, and it seemed like the logical next step at the time.
It's a pretty standard GUI, the only somewhat different thing is I'm planning on making it adaptable via python scripting, which is yet another system I need to finish.

I really need to take some time over the next few weeks and re-asses things for the engine once again, get things back on track with a plan of attack, before they get too out of control. Make a detailed plan of action but before that, I'm going to play some Team Fortress 2.

Tuesday, March 25, 2008

The unUpdate

Not really much to write. I'm still working on the state management system, when I have time. I have made head way in solidifying a workable idea for the system that took the general concepts I had before and makes them work. Now I just have to find the time to write and implement it.

The more I work on the engine the more I think that I may not continue to build tools myself once I decide to move into the realm of 3D. This may be a fleeting thought, and I'm definitely going to complete a version of the engine that is complete and capable of making 2D games, with 3D elements, but I'm not sure if I want to continue working on developing tools from the stand point that I have been over the last year and a half. This may change however as hopefully with the completion of the engine and current tool set I'll be able to start making the games that will allow myself to be an indie game producer and actually be able to concentrate on both tools and games, but currently, 90% of development time has gone to the engine, and the rest to actual game concepts. If it ends up that I'm not able to support myself making games, or end up working for another company doing games, or keep my current job for a long run, then I want to shift my focus back to why I started this crazy shindig in the first place, making games. I also realize I'm not on the fore front of anything, I'm simply remaking things others have made, although possibly slightly better, or worse.

Of course the whole concept of writing my own engine and tools is to be able to have complete IP freedom, as well as to have a better understanding of game engines and the development process in general. Also, eventually, to release the engine to the public, and allow others to learn from it as well. So, regardless of how things turn out, it's not in vain. I've just been thinking how I miss working on games lately.

Wednesday, March 19, 2008

Managing, the management, that will lead to better management of design for the Hidden Management Layer of the State Management System

Little time for game development. I keep attempting to get time in every day, and I do, but it seems that on average the most I pull out is an hour. Most of that time is spent recapping where I am and adding a few design notes, and a little bit more implementation. There isn't really time constraints at this point. It's been rather a matter of motivation to get my two hours that I've been shooting for and an ability to find two consecutive hours to work on things. It seems that as I'm working the rest of the world is constantly sending other challenges my way, interrupting the time that I do have set a side and distracting me. This is of course alright, because those things, such as work and family, are more important. Family always will be, and hopefully the work will be the game development some time within the next five years.

As such, I'm still working on the state management system for the game engine. I started writing ideas for it over a year ago and started working on the actual implementation last month. I think I've over complicated things for myself in the design area, specifically with something I call the Hidden Management Layer for game state management. I started out designing the HML simply to be the interface between the user and the game states. All commands going through the HML, via direct console commands, or GUI commands, and the HML being responsible for handling any commands that it was capable of taking care of, otherwise passing the integer value for a command code to a specified game state so that it could handle the functionality. The HML also is responsible for keeping track of states that are active, that are in memory, and that currently have the app focus, while the states simply update themselves if they are active and process any tansitional code, release and initialize memory, ect.. when needed. This all seems fine to me so far.

The over complication comes into play once I started growing my definition for what a game state should be and once I started to ask my HML to handle tasks that should probably be handled else where.

For example, at some point I got the bright idea to incorporate my different engine management structures(engine objects, Scenes, and levels) into game states. At some angle this made sense to me. By doing this I would be able to control every object, scene, and level in the game as if it were simply a state. I would be able to pause individual states(Meaning that if for some reason I wanted to freeze individual object logic from updating, or temporarily remove an object from a scene, it would be very easy to do.), also all the different management structures would be able to interact with each other very easily.

As I'm writing this I'm having too many ideas run through my head as to how I should approach this. Currently I've just been designing a ADT and planning on deriving three classes for the different types of Engine management structures. This may work out ok.

I can't seem to focus to write this now, so I'm going to leave these ideas un-elaborated on for now. The phone won't quit ringing.

Thursday, March 13, 2008

A little bit at a time.

I made a little bit of progress today. I finished some auxiliary functions for helping to manage opengl that I had been meaning to finish for a while, and I continued working on the design for handling game states within the engine.

I need to finish writing the state functionality as well as finish adding the DirectInput legacy support for the engine. Then I'll be able to move on to GUI stuff. I've got to work this weekend as well, but I hope to get the state management finished with. For one reason or another I started doing the state management and game pad support at roughly the same time, I should have just finished one before moving on to the other, but it's a little late for that. AH well. You know, I tend to lose my sense of humor when I'm tired, which is kind of weird. Or I lose my ability to express my sense of humor when I'm tired. It's like my comedic kryptonite.

Wednesday, March 12, 2008

Getting the Chedda.

The rat race is an unfortunate part of a capitalistic society. At the same time, it also challenges one to be smart with their time and resources. I for one will consider myself to be rich when I am able to fully support myself and my family as an Indie game developer by making games. To me, that will be the end of the rat race. It will be the beginning of a better life. In the meantime however, I've got to fund life and game development with a day job. It does help when the job doesn't completely suck, but it still sucks that it's not doing exactly what one loves. At any rate, it has still been taking up a lot of time, but I finished training last week and I'm starting to get used to being out in the field on my own now, so I've got to get back to working on the engine and finishing up the Barricade proto-type.

I'm going to still be working a lot of over time with work because of the area I'm assigned to having not had a service tech for six months before my presence, but I've got to push myself to work on things a least two hours a day. This should be reasonable even on the days where I have my son, but it also is going to require no dilly dallying on my part, but I've got to make time for it, especially if I'm going to even come close to getting things polished and ready for the full production of Barricade by June.

I'll also be moving again in June, but I haven't decided where to yet. Ideally some where closer to my sons school as driving all day and then having to make a round trip after work in my personal vehicle to pick up my son tends to take a lot out of guy, I'll have to figure something out soon though.

The weather has finally taken a turn for the better. Warmer temperatures are a welcomed blessing after a pretty harsh winter. It was to be expected and the cold isn't quite over, but a break from it was much needed.

Oh, if I ever use something like Chedda again in a topic or while speaking in real life, someone please slap me :P .

Last night was the monthly game developers forum meeting in Ankeny for the central Iowa area. It was pretty cool, the guys from intuition games came out and we were glad to have them. We got to take a look at Dinowaurs which is a very interesting RTS type game made in flash. I had to leave a little early from the meeting due to work the next day, but it was still very cool to see the game in it's current state. It's awesome to see all the game enthusiast in central Iowa coming together and to be a part of it.

More Later.

Sunday, March 02, 2008

XInput Finished

I finished up the XInput implementation for the Engine this weekend. I still have to finish the DirectInput functionality though. XInput was fairly easy to implement once I found some time to write the proper wrappers for it. It was so easy I wish it were the only thing that I needed to support, but that just wouldn't be smart.

Anyways, with as little time as I have hopefully I can get the DirectInput finished by the end of this week. It's my son and my nephews birthdays this week though as well as week three and the final week of training at my job, so I'll probably be really busy. I'll still find time to code though.

I also have decided that I need to write a more flexible version of the bitmap font class that is currently in the engine, because well, it kind of sucks the life out of updates. I've never really noticed it before because I have never had a lot of text on the screen at one time, but with the demo that I'm writing to test the input you can definitely see the difference.

Here's a screen shot trying the built in picture layout functionality of blogger. ( I usually don't like these because they are not as flexible or as easy to use as simple html tags.)




The frame rate is very low when a device is connected and there is a bunch of text
on the screen, but when a device isn't connected the frame rate is in the seven hundreds. That's a flag if I ever saw one. I still have a lot to do and I'm not really sure if the proto-type release will be done by Mid March, in fact at this point I'm pretty sure I'm going to go over as I'm planning on being a perfectionist because I really want the proto-type to be pretty polished. And if not the game, at least have a very polished version of the engine.

Thursday, February 28, 2008

Short and sweet.

Still working on the gamepad functionality. I still haven't had a lot of time to get things done this week. I decided to go with a better organized, but stream lined version of what I want for a final implementation, mainly because I really want to move on to getting the gui class stated and completed and then finish up the Barricade demo. Going to go play some Bioshock before bed for a little while. Later.

Tuesday, February 26, 2008

I'll take your input.

I ended up getting some basic gamepad functionality into the engine this past Sunday, but as for a completed class that offers the support of XInput and DirectInput both, in a flexible way, it has yet to see completion. I'll continue to work on that through out the week and am really looking forward to get a big chunk of work knocked out this weekend. I decided that I'm going to have to write a lot of custom initialization code for DirectInput as well. I'm still not really sure how I'm going to handle a few issues at this point, but I'll figure it out.

There is a lot that needs doing. At this point, I'm lucky if I get my two hours a day in for coding though. But I'm thankful I can even get that time in. I'm trying to convince myself that I can still make a mid march deadline for a proto-type release, but I'm not sure if that's realistic or not, especially with work now taking up a lot of time and it being harder to focus on things after work as I'm usually kind of tired. It may be beneficial to switch my schedule from working out in the mornings before work, to coding in the mornings before work and working out in the evenings. I may end up trying that next week. The problem with that being if I don't work out in the mornings, I usually feel tired all day and if I'm not really a wake I won't do very well getting things done code wise either. A little experimentation will probably be in order though.

Ok, I've got too damn much to do, so I'm going to quit blogging now.

Saturday, February 23, 2008

Attack of Comformity

Well, this week I started back into the work force. The good news is that I really like my new job. My boss is really cool and so are the guys who have been training me. Once training is over I'll pretty much be working on my own most of the time, which will be ok as well. Time was eaten up completely by work and family obligations this week. I only managed to code a total of about two hours, most of which time was spent working on the gamepad code and doing a bit of reading in that area.

I should have at least two hours a day to work on game stuff once training is over too as I ended up working some overtime almost everyday this week to get through the first part of training. It's going to take me a little bit to get some balance going on so I can fit game development related stuff into the mix. I should also be able to do 20 hours a week extra every other week when my son is with his mother, which will help out and then probably two to four hours in the mornings when my son is here if I get up at 5am. So, things will be progressing still. I will get the game pad code done by Sunday night. I've got a lot to do after that as well. More later.

Sunday, February 17, 2008

Enough with the snow already.

I'll be glad when spring is finally here. Don't get me wrong, I love snow, but after it snowing at least two times a week for the last two months, I'm just tired of it.

I start my new job tomorrow. I'll be working for Scientific Games as a service technician for lottery computers and networks. It should be exciting, seriously! Plus it will allow me to provide for my kid and for game production as well, it's got many benefits and will be the coolest job yet to date.

Ok, now back to some game production notes. As stated in my previous post I was to spend the weekend working on implementing dircetinput and Xinput into the engine. I sat down to start that yesterday, but I ended up getting side tracked from that and working on fixing the bullet path code for barricade, which I managed to fix. There still is some adjustments that need to be made to the speed of the bullet as the dot product changes so as to have the velocity of the bullet remain seemingly constant. Kind of a trial and error thing there to get the feel right. I also started restructuring some of the management components for the engine, such as the command console and organizing a better structure for game state management. Currently I just have it setup as IDs, but have been wanting to change over to a stack like implementation for state management. I started designing that also.

Today, I'm fighting a cold "AGAIN!", it's like every two weeks I get a new one. I don't get it. I quit smoking cigarettes again months ago, I work out almost every day, get plenty of sleep, eat lots of veggies and fruits, yet still manage to get a cold regularly. It's annoying to say the least. Especially because it causes me to not feel as focused as I should and I get side tracked a lot more easily then I normally do.

With that excuse in your mind now, I started to get the game pad stuff added into the engine. I'd say I'm about a quarter of the way finished with it, but I decided that I'm going to wait to finish it because, well, I'm having trouble concentrating because of the cold. So, instead, I'm going to take it easy the rest of the day. I probably won't get back to it until Tuesday night, as I've got to work and spend time with my son on Monday, but that's ok, things are still progressing and it shouldn't take very long to finish up the game pad stuff.

Ok, I'm going to go lay down now.