Thursday, February 28, 2008

Leap Year Leap

Today I posted Friday's game which is Leap Year Leap. This is a surprisingly challenging game where the goal is simply to run through non leap years while jumping over leap years. While this sounds very simple, the years come at you faster as you continue to be successful and quickly working out if a year is a leap year in your head while having to time jumps is quite a challenge.

Tuesday, February 26, 2008

50 FLOSS programs

While this is not game related, it is vaguely game development related. As anybody reading this knows already, I am a supporter of open source software. Today I stumbled upon a really interesting blog post: http://whdb.com/2008/the-top-50-proprietary-programs-that-drive-you-crazy-and-their-open-source-alternatives/

This is an interesting link at it contains a list of 50 commercial applications with each commercial application followed by an open source alternative. Most of the open source alternatives were available for multiple platforms, including Windows.

Monday, February 25, 2008

AIR has finally been released.

While this may not be an important thing to most people, Adobe's AIR has been released. I found out about it from http://www.mikechambers.com/blog/2008/02/24/adobe-air-10-thank-you/ as I was following the development. AIR lets you create flash/flex/ajax/html applications that will run on the desktop without the need to run in a browser or be connected to the internet. The best part is that the software development kit is being released for free so anybody can create air applications without a large cost. Obviously, tools such as FlexBuilder, DreamWeaver, and Flash will greatly aid in the development of AIR applications. I am currently developing One of those Weeks in flash for the web, but it would not be inconceivable for me to later create a downloadable AIR version of the entire game. Flex 3 also was released today. It too has a free SDK and it allows you to create flex/flash applets.

Saturday, February 23, 2008

Drop Dead final release posted

The final version of Drop Dead has now been posted to the Blazing Games website. I should point out that this was done at 19:30 PST so I actually finished everything half an hour earlier than I expected to. While this day won't be rated very high on my overall quality of day scale at least I managed to successfully finish this challenge even if it took me far longer than it should have. On the glass half full side, I also managed to almost get caught up with my pod cast listening. For the record, I always like to have some type of background noise going while I work and find podcasts and music fill this requirement nicely.

Drop Dead Release Candidate out, final version later this evening

The release candidate is ready. I probably would have succeeded in having the game entirely finished had something not come up. While this event only consumed about an hour of my time, it took over my thought process. While I am still able to get the code done, when your mind isn't into the flow of the code, things just take twice as long to do as they should. While I could probably rush the final version and call it a day, I instead am going to take an extended early supper break and then do a bit of fine tuning. What this means is that the final version of the game will probably not be posted until 20:00 PST (8PM for those of you who are not familiar with military time).

Drop Dead starting development

Even though I am still feeling under the weather, I am going ahead with my Game in a Day live challenge on Blazing Games. The game I chose to do today is a very simple game so I should have no problems completing the challenge today. The game is Drop Dead. It should be a fairly quick development so I will probably only post again once the game has been finished.

Thursday, February 21, 2008

Game in a Day on the 23rd?

My second, and possibly last, live game in a day is this weekend. While I will continue to do game in a days, I am not sure I will do them live. Unless, of course, there is a demand to do so. The reason for this is simple. A couple weeks ago would have been the perfect Saturday to create a game for the dozen day's series because the weather was so awful, but because it wasn't a scheduled day I never bothered. In hind site, this was a mistake. If people actually cared about the live days, that would be different, but most people just want to play the game and those that do have some interest in how the game was developed just care about the diary being written. For that reason I am thinking that in the future I will do the challenges when I am in the mood for one and release the results when there is an available slot in my release schedule.

I already have a good idea about what game I am developing on the weekend. As I am not feeling that well, and fear I will still be under the weather on Saturday it is a game that should probably be finished in under 8 hours. That being said, I have been wrong before about how long a project will take so don't read too much into that time estimate. If I am really under the weather, I have an unreleased Dozen Days of Dice game that I finished but didn't really think it was good enough to release. This was going to be my thirteenth dice game but will be my filler game if I am not up to the game development task.

Wednesday, February 20, 2008

FOSS Primer

While this article ( http://www.softwarefreedom.org/resources/2008/foss-primer.html ) was apparently posted on February 14th, it just came to my attention today. It is an in depth look at the legal issues surrounding free and open source software. While it seems to be more US oriented, it does cover copyrights, licenses, patents, and trademarks so if you are involved in any open source project you should probably read it.

Tuesday, February 19, 2008

Parents and Blu-ray update

Well, it appears that the HD format war is officially over and Blu-ray won. I still don't care because I still don't have a HD television. By the time I do get one, if ever, there might actually be some games for the PS3, but the Microsoft Blu-ray add-on will also probably be available which would mean that I would have a tough choice picking a gaming console. To be honest, I am not sure HD is worth it. While my parents have a HD TV, they mostly watch standard definition television on it. What decent HD programs are available are way over compressed so the compression artifacts are very visible any time there is any action or camera motion. Still images, though, look really nice. It is sad that the transition to HD has been handled so poorly.

For those of you who are wondering what happened with my parents, the main problem is still happening and probably won't be resolved until March 31st, and I have not heard about the accounting problem but hope that is finished with. It is sad to see such good people having to go through bureaucratic BS, but there is nothing I can do about it. I will probably be annoying the few people who read this with a bunch of politics in April just to get everything off my chest. I apologize for that right now.

Sunday, February 17, 2008

Modern Cypher's new interface.

I have finally got Modern Cypher (the game I am spending a few hours every Sunday working on) to the point where my revised user interface is working. I am thinking that the game is now far enough along (and is currently playable) that it is very likely that it will be ready by the end of this month and if not, is far enough along that I would not have too much problems putting it into the March release schedule. To be honest, all that is really needed at this point is clean up of the display and win detection officially implemented. I am planning on doing those things next Sunday, though if I am too exhausted by my Game in a Day challenge, this could slip.

For people who actually played with the earlier build from the repository, assuming there are any people who have, they will notice that the user interface has dramatically changed. First of all, the puzzle is presented in the middle of the screen in big letters, with the original cypher over top in smaller red letters. In addition, the original interface had up/down buttons for each letter for creating the cipher. This worked, but lead to the confusion problem of having multiple letters mapped to a single letter. The new interface requires that the player draw lines between source letters and the destination letter. This gives the player a visible view of how letters map to other letters, which I personally like a lot more than the rotating letters system used initially.

Thursday, February 14, 2008

Modern Dots Posted

I just finished posting Modern Dots on Blazing Games. As I say in the instructions (not that anybody actually reads those), if there is enough demand for a better AI, I will implement the more advanced AIs that I outlined in an earlier post. Actually, one of the things I would love to do but will probably never get the chance to is to create true multi-player versions of the ultimate retro project games so people can play against their friends over the internet. This would require more resources than I can currently justify and I am not sure that there are enough people interested in playing my games with their friends over the internet. Still, one can not predict the future so perhaps this will eventually happen.

Wednesday, February 13, 2008

Valentines Day 2008

Since I like to post in the evening PST, I am posting my Valentines entry today. It is a screen shot from the game that is going to be posted Friday, though with an obvious twist applied to it.

Happy Valentines day everyone!

Tuesday, February 12, 2008

Spoiling One of those Weeks?

One of those Weeks development is interesting as I don't have to worry about releasing a new episode until April. As a result I am actually able to develop episodes in a non-linear order. This may not sound like that big of a deal, but as some episodes share aspects with other episodes so I am able to more efficiently work on similar episodes. More specifically, I can take an element such as a navigation system for a certain vehicle, and work on the portion of the episodes that need that. My thoughts are that if I am focused on a certain feature then my overall development efficiency will be higher so I will be able to finish the work faster.

The big problem I have is the lack of being able to give detailed explanations of what exactly I am doing on this project due to the story nature of this game. I mean if I say something like "The sequence when Chuck the Squirrel turns into a giant space hamster and attacks the Gorbon fleet has been implemented" then part of the story will be ruined for people. At least the few people who read this. While I will not confirm that the above example is in the game, I will say that animating giant space hamsters is an entertaining activity.

Monday, February 11, 2008

Another Minor Classic Cypher Addition

started my Sunday afternoon making a minor change to Classic Cypher.Classic Cypher 1.0.2 now adds the ability for the user to select the particular puzzle that they wish to play. While this may not seem likethat huge of a deal, it allows players to go through all the puzzles allowing for completionist players to fully finish the game. I am thinking that I will only have 12 puzzles in each set and the puzzles for the classic version will be different from the puzzles in the modern version. This has the additional benifit that when I don't have enough material for a month, I can release additional puzzle sets. I am in fact thinking of doing a similar thing with my picture puzzle series, except I am thinking of porting those games over to Canvas supporting HTML/ECMAScript as that would be a great way of learning how to use the canvas. In fact, there is apparently an open source script for IE that allows use of Canvas in IE without any plug-ins.

I am also in the process of overhauling the interface in the modern version of the game. I was originally going to have a graphical tile set for the letters but after playing with the existing Marble letter set that Mary Caton created for me (see Modern Word Scramble), it was just too big. Instead, I am going to be using a big font and text sprites. I might later re-size all the tiles and go back to that route, but that would be a change that I would make after a releasable version of the game was ready.

Friday, February 8, 2008

Decade One

I was going to write about the progress I have made on One of those Weeks, but after seeing this http://perens.com/works/articles/State8Feb2008/ I have decided instead to take today to express my current thoughts on Open Source and my plans for it. If you haven't read Bruce's article, please do so as it is a worthy read. While free software existed for more than 10 years, the term Open Source was coined then. As anybody who follows Blazing Games knows, I have released a lot of my code as open source. Blazing Games current policy is to keep stuff proprietary only for a year or so and then release the source code under an open license such as GPL. Once One of those Weeks is finished, I am thinking that the site will focus all future game development on open standards. With support for the Canvas in HTML 5, I am even thinking that I might go with pure HTML/ECMAScript for future web games or return to Java for more complex games. Future Game in a Day games might be the testbed for this strategy.

I am also thinking that whenever possible I should be using open source software. If the existing open source software does not meet my needs, perhaps I should invest my time making the software meet my needs. Migrating away from paid tools should be an interesting experience, but I already use a lot of open source software, with CS3 being the only real commercial tool that I use and if I am not developing Flash then even that won't be too hard to migrate from.

The problem with open source game development is the funding. Right now the advertising on Blazing Games covers the expenses but doesn't pay me. I am sure that if the site was more popular that wouldn't be a problem, but I am clueless when it comes to promoting things. The thing is, games don't require any type of support, so making money off of open source games is tricky. One thought, which seems to be what other people are trying to do, is to open source the game core but sell the content. I really do want to keep my games free, but will have to take a look at my options. All I can say is that Decade One should prove to be interesting.

Thursday, February 7, 2008

Friday February 8th update and the reason for February 1st

The One of those Weeks episode 22 source code and making of chapter have posted. If my current plans actually comes together the way I hope then this will be the last OotW chapter/source release for quite a while. I don't want to go into too many details about my underlying plans due to the likely fact that they won't come together the way I want meaning that I will have to make changes to my plans.

As for my decision to focus on One of those Weeks and Ultimate Retro Project instead of Coffee Quest, my thought process went along the following lines. First, Coffee Quest needs to be a primary project because there is no way that working a few hours every Sunday would work. Therefore Coffee Quest must be a primary project. One of those Weeks could be developed on Sundays, but doing so would make it difficult to ensure that I can maintain a monthly or better release schedule. This is something that is important to me so that means that One of those Weeks has to be a primary project. I can only have one primary project as that is the whole point of my trying to be more focused on my projects. When looking at all the work that has to be done, One of those Weeks has the shortest development time. As much as I want to get Coffee Quest 5 developed once and for all, the logical choice was to go with One of those Weeks.

Wednesday, February 6, 2008

Accounting for Software

I think fate wants to delay my explanation as today I have yet another different topic to talk about. I had to help my mother today by making a spreadsheet and copies of cheques in order to prove that she is fully paid up for something I will not go into here. The person had a viewpoint that harks back to when businesses first started using computers but one which I haven't seen that often since PCs became normal place. The old "my computer says it therefore it must be true" syndrome resurfaced. I am use to people blaming the computer for their mistakes, so it was actually kind of refreshing even though it meant extra unpaid work for me.

While there are bugs that can cause errors, most mistakes that appear on a computer have a different source. The input. There is an old saying among software developers, "The output of a program is only as good as it's input." In other words, if there is data missing or incorrect data is put into your software, the output that software produces will be incorrect. Even accounting programs are subject to this law. While it is true that good software will try and validate inputs, that validation only goes so far as to make sure that the input is reasonable. What is worse is that the accounting software that I have used is designed to simplify input and will often fill in fields that are suppose to be used for checks and balances so it is even easier to make a mistake. That is why a paper trail is nice to have.

When you get right down to it, the problem with computers is that they only do what their software tells them to. Software, even today, generally takes some type of input, processes it, and returns some type of output. In fact, many of the bugs that hackers try to exploit aren't bugs in how the program works but are bugs in how a program validates input and as a result cleverly corrupted input can be used to attack an un-patched computer. Of course, crashing software is the result of a programmer making some type of mistake in their program. Programmers are, for the most part, human and do make mistakes.

Tuesday, February 5, 2008

HTML 5 draft

I was going to go into more detail about my February 1st decision, but earlier today I took a look at the HTML 5.0 draft to see what was changing. In particular, I wanted to see what was happening with the Canvas tag. This is an extension to HTML for allowing 2D graphics manipulation right inside the HTML page without needs for plug-ins such as Flash or the M$ Flash Clone. Needless to say that while Firefox supported this tag since 1.5 (and current versions of Opera and Safari support it) the Monopoly browser does not. Having the canvas as part of the HTML 5 specifications should eventually fix this problem. Sure enough, version 5 has the canvas class but what got me really excited was the statement "Note: A future version of this specification will probably define a 3d context (probably based on the OpenGL ES API)."

Obviously it would be really nice to have 3D built into the browser using a simple canvas tag. As part of an open standard, with no plug-ins to worry about or expensive tools to buy this would be great for developing browser based games. The question is what do they mean by future version of this specification? I am hoping that they are referring to a later draft version of HTML 5 and that HTML 5 is finalized soon.

Monday, February 4, 2008

Classic Cypher Updated

Yesterday I posted an updated version of Classic Cypher to the Ultimate Retro Project's repository. The game play was overhauled to make it easier to understand what was happening and to streamline the input. The display speed was also sped up. I probably would have also started doing some work on the modern version yesterday, except I ran into problems yesterday which ate up some of the time that I allocated. I will explain how cypher works another day, today I want to go over the problem I had.

The Ultimate Retro Project is developed on multiple machines. My Mac is the predominant machine I do the work on, but occasionally use my Ubuntu machine. Unfortunately, when I started up eclipse on my Ubuntu machine yesterday, it wouldn't bring up the project or editor windows siting a very long Java exception as the cause. I had just installed some other software days earlier so figured that could be the problem. Uninstalling them didn't fix the problem. Then I remembered that I had a similar problem on Windows when the default version of Java was set to an older version of Java by a program. That was solved by simply installing a newer version of Java. As I had Java 6 already on Ubuntu, this wasn't an option. Ubuntu wouldn't let me uninstall it as some programs need it. I had to scour the Ubuntu online documentation in order to find instructions for setting the default version of Java to use. This required a command line command be used, which I have no problems with but a less experienced user might have. In Ubuntu's defense, this is the first time I have ever needed to use a terminal to get something working and typing in a command into a terminal window is vastly easier than navigating the Window's Registry, not to mention a lot safer.

Needless to say, changing the default Java back to 6 worked otherwise I wouldn't have gotten any UR work done. There simply are too many versions of Java floating around. While I like the Java programming language, problems like this should never happen.

Friday, February 1, 2008

February in Focus

Those of you who read my 2008 plans on Blazing Games know that I want to be more focused on my game development. I also had an informal email poll about what I should do when I don't have enough material to fill a month. I know I would have got a lot more responses if I made it a form that readers could simply submit, but I figured I only wanted to hear from the people who actually care enough about Blazing Games to write an email. In hindsight, anybody who is willing to read that article really must like the site so I should have used a form. Four people emailed me with last month with the results being:

25% for extra open source releases
100% for more game in a day challenges
75% for strategy guides
25% for FLOSS third party game reviews
25% for Technical articles

Game in a Day Challenges don't impact my project plans but do take away a Saturday so I was glad to see a lot of interest in strategy guides. Strategy guides are nice because they can be written in 10 minute chucks so whenever I have one of those small chunks of time between other tasks I can work on that. As I said a couple of days ago, though, I am going to be focusing on one project(10-50 hours a week depending on my real work workload) with a second personal project being done on my day of rest (Sunday) if I am in the mood for coding. This personal project is going to be the Ultimate Retro Project. The primary project was a toss-up between One of those Weeks and Coffee Quest with OotW getting the final nod but I hope to be finished that project by April at which point the CQ series will gain my full attention.