Friday, March 20, 2009

I've been distracting myself with game programming

Somehow I got it in my head that I wanted to do javascript programming. I also had a game idea that was stuck in my skull and I needed to see it done.

The game is based on sliding tile puzzles, except that instead of the tiles containing parts of a picture, they contain letters. You get points if you form words out of the tiles. The longer the word, the fewer the clicks. The words go left to right and up to down. You are constrained by number of clicks.

I wrote the first game in C# as a Windows application to get the algorithm down. This is just because I am more familiar with Windows programming than web programming. The game was really ugly because actually making an attractive UI in Windows takes a lot of work. Once I got the basic logic down I stopped.

The javascript version of the game is some seriously sloppy coding. This is through pure lack of knowlege about javascript. I would want to do something a certain way, but not know how to do it (what syntax, command, object) so I would do it the stupid way. I also immediately introduced browser bugs (won't work in FireFox), which really annoys me. The problem I have is that getting it right is a matter of arcana. My opinion is that if the underlying technology (i.e. HTML, Java, etc.) were GOOD there would be no such thing as browser incompatibility. But no, its a loosey goosey form of programming that requires developers to memorize all sorts of detailed facts to get everything right. Fooey. Yes, I know... read, read, read.

Anyway, the javascript version is far more attractive than my original. This is because layout, and graphics are easier to tweak on a web page, so I was able to make a UI that looks more like a physical puzzle. Fun!

I then got an idea for doing the same thing, but making the tiles non-alphabetic like some sort of substitution cipher. The problem, then, would be to figure out what the letters were by accidentally forming words and then using logic to determine exactly which tile made the word. So, I modified the game - I took away the click limitation, changed the puzzle to look like some sort of alien hardware and changed the letter tiles to look like some sort of bizarre alphabet (I took one of the fonts that is all diacriticals and rotated the letters... they started looking latin and wound up looking totally alien).

The games are located here: http://www.wayneroseberry.com/apps

No comments: