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.

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.