Entries Tagged 'Entertainment' ↓

Never were truer words spoken (or typed)

The other day I came across this really cool posting talking about school projects for computer science students.
Basically it talks about the different “levels” of effort required to make a certain type of video game for a CS class. Having just finished a CS class that involved a group project (but not a game) I was intrigued by the author’s take on the topic. (I usually try to dissuade people from doing games as a CS project, they just eat up too much time usually unless everyone in the group is on the same page.)

Overall I found myself agreeing with the various comments and evaluations of each game type (pacman, tetris, etc.). But when I got to the end of the “Advanced” topics section, I laughed out loud:

RPG - if you hate your life (and some apparently do), this obviously final year attempt at video game programming glory is likely to end badly.

That pretty much sums up my experience so far with my attempts to make a “simple” RPG. There’s a lot going on in a typical RPG, and it takes a lot of effort and attention to detail to pull it off and make it look good and play well. And even then, if you manage to get the mechanics of the game engine working semi-decently, then you have a tall order to fill by creating the contents (scripts, maps, graphics). Needless to say it can quickly become a huge time sink. Which isn’t to say it isn’t fun, because it is. But when you get overwhelmed on a project like this where you are working for yourself (i.e. not getting paid to work on it) it becomes very difficult to get your motivation back.

Personally, I’m hoping to get my motivation back to work on my little project some more. I think what I’ll probably wind up doing is working on it in-between other projects.

CSS + Javascript + web = fun Easter eggs!

It occurred to me the yesterday, with more and more people seeing the power of Javascript and CSS, more websites are getting slick. Ok, that’s a pretty obvious statement, but here’s something that’s not obvious: This presents a great opportunity for easter eggs!

Easter Eggs are little hidden things in side of a bigger program. Some times it just the developer’s names, other times it can be something totally unexpected like a flight simulator hidden in a spreadsheet program. With the power of Javascript and nice tutorials like this one, there’s a lot of opportunity to have some real fun!

Just think, with all of the computing power a modern browser affords us developers, it should be very easy to recreate tons of games from the Atari 2600, early Nintendo systems. The imagination can very easily run wild….

Title first, then game?

I’ve been watching Code Monkeys a lot lately. If you haven’t seen it yet, its a cartoon on G4 that is basically South Park, but set in a 80’s video game company. Its pretty funny, sometimes sick, but always twisted. Every week the characters get into all kinds of trouble, usually while trying to make a “new” game.

One of the best parts of the show is when the developers are either talking about or pitching their new games. Just from hearing the titles of the games I wish some of them had been made! Cool titles like “Monkey vs. Cobra” or “Hobo Killer” or “Family Ties: The Video Game”. Plus some of the shots of the games looked pretty funny too. Check out the whole list here: Games featured on Code Monkeys

All of those wacky titles reminded me of all the times in other movies, TV shows, games, etc. I saw a “fake” video game and thought it was the coolest idea ever. Like “Billy Graham’s Bible Blaster” on the Simpsons. Or “Astro Chicken” in the Space Quest series. Classics!

And thanks to the wonders of the internet/web2.0/lazy web/wikipedia, there’s a massive list of all of these fictional games! Check out the list here: Fake Games

Seeing all of those games there got me thinking: Wouldn’t it be cool if someone made some of these games based on just the title? (Or in the case of shows like the Simpsons, take the clip of the game and expand it into a full fledged game!)  That would be so cool. So cool in fact, I think I’m going to start doing that, looking at a title and then trying to come up with a game. Cheesy, yes. Wacky, you bet. Fun? Lets find out.

The trials of indie game development

I saw today that a indie developed “Fallout inspired” RPG was being taken down by the author due to lack of sales. This bummed me out because:

  1. It sounds like a game I would have really been interested in
  2. Although it had been out for some time, I had never heard of it
  3. I’m wanting to make a RPG that isn’t based in a dungeon
  4. The world needs new games that aren’t just derivative sequels of the same-old-same-old

Its always sad when a product is retired, but this situation sounds bad. According to the comments on the Ramapant Coyote site, lot of people are feeling the same way I do. But at the end of the day, its the author’s call, and in this case the author decided to pack it in.

I stated in #4 above that the world is too full of games that aren’t anything special. That’s why indie games are so exciting. Many are of the games that are made on the indie seen are passion works on the part of their creators. As a result these games are different than what you normally find in a store. They try new things, they take chances.

But sadly, just as in real life, sometimes you win, sometimes you loose. I hope Mr. Moffat finds the success he is looking for in his future endeavors.

Pyglet

Recently I heard about pyglet which bills itself as “a cross-platform windowing and multimedia library for Python“. This is more-or-less what pygame offers, but with one exception: pyglet doesn’t depend on SDL, its written in pure python.

As a side note, if you try to install pyglet on a Mac, there is a small catch. I’m running 10.4 Tiger which uses Python 2.4. Pyglet.org does offer a dmg file to install itself, but it doesn’t work. The reason for this is that Pyglet does need ctypes, and ctypes did  not become a standard part of python until 2.5. So, to get pyglet to work on your Mac, you’ll need to get (and build) ctypes, or install Python 2.5. I installed ctypes and found it to be pretty painless.

Its still in an alpha state, but I thought it sounded interesting so I decided to take a look at it. Compared to pygame, it seems to be a little more streamlined. I’ve never really push pygame to the limits, so I can’t really compare the two as fully as I would like. One thing that I did like were the demo apps and the examples in the documentation. They were concise, yet demo’ed useful things that I would want to do in an app.

I started reading the documentation after lunch the other day and within a few minutes I found myself modifying the code as I read through the docs. Within 5 minutes I decided that I would try a sprint: Could I implement a quick and dirty game of pong within an hour using pyglet? Well, the answer is Yes!

picture-1.png

After playing around for an hour I had everything except the computer’s paddle in place working. A few days later when I had some time I spent and additional 15-30 minutes (while watching the game on TV) and knocked out the “AI” for the computer player. This isn’t award-winning code or game play (the bounding box collision test is pretty crappy), but it did show me that I could get something done quickly using this framework.

So, check out pyglet. Here’s the code to my craptacular version of pong. (There are 3 files, two images for the paddles and the ball, and the source file pyglet_pong.py)

Markov Decision Processes and the iPod shuffle

I just finished reading Peter Norvig’s article about the “Martin Shuffle“. (By the way, if you are a computer programmer, you need to visit Mr. Norvig’s site. It is chock full of good programming/lisp/algorithm stuff.) The Martin Shuffle is basically a search for a specific song by using the random shuffle feature of an iPod.

Now I know what you are thinking, but its not a crazy thing to do. In a situation where you can’t see the display or access the controls (for example with an iPod Shuffle, or when I have my iPod mini hooked up to my car stereo and I have to control it with the CD changer controls which only allow skipping and turning the shuffle on or off) this “random searching” is actually a pretty good strategy. Basically you randomly skip through songs until you get to the artist you are looking for. Once finding the artist, turn off the shuffle part and search one song at a time until you find the one you are looking for! Pretty straightforward and a fun way, well ok, a way to pass the time while sitting in traffic.

Norvig’s article talks about the math behind this type of search. Specifically he solves how long it would take to find a song (on average). He describes the problem as a Markov Decision Process that can be solved using a value iteration algorithm. Its amazing how something that sounds so complicated is actually pretty straightforward. The code that is used to implement the solution is in python and it is pretty short so it is doubly impressive, at least to me.

Why so few post-apocalyptic themes?

This weekend while strolling through a bookstore, I noticed that there was a ton of D&D books.

I looked closer at the selection and noticed something odd: Among all of the RPG books there, most were dedicated to game worlds based around magic (duh), werewolves, monsters, dragons, and other Tolkien type stories. There was one based on the future, but even that one had mutants which are the equivalent of monsters.

Personally, I’m a fan of the post apocalyptic genre. For some reason I find the idea of starting over, or at least having to adjust rapidly in the aftermath of a disaster, to be really intriguing. Its a very accessible topic, after all it is based on the world of today, and there’s no shortage of scenarios that can be drawn from that.

Yet for some reason, there few RPG’s (and to an extent comics/graphic novels also) that tap into this rich vein of material. I’m really puzzled by this, reality TV (shows like Survivor, etc.) shows that the general population is interested in the idea, yet this isn’t reflected in a lot of other aspects of our entertainment. Fallout was quite popular, but that was almost 10 years ago. Lost and Jericho are popular, but few other shows seem to be following their example.

Is there such a disconnect between the D&D community and the rest of pop culture? Or is the idea of a post apocalyptic world just too scary, and in the post 9/11 and post Katrina world, too close to home? Or am I just shopping in the wrong stores?

Simple graphics on a Mac. Why is that so hard to do?

I don’t want a copy of Photoshop. Its not that I’m cheap (that’s a whole other story!), its just that I don’t like using sledgehammers to kill mosquitoes. I’m trying to do some simple bitmap editing and it has turned into a big headache because it is hard to find a simple graphics editing program.

I was using Pixen which is highly regarded and does just what I need it too. Buuuuuut… I can’t get the program to run more than a few minutes without a crash. And that just really bums me out because it seems like the perfect program. Sadly, I’m not the only one having this problem, posting around the net seem to indicate that this is a common issue.

And unlike Windows, the Mac doesn’t seem to come with any simple programs a-la Paintbrush. What’s up with that? I realize Apple is all about minimal cruft and what-not, but this really takes it to an extreme.

For the moment I’m trying out tileeditor which is a pretty minimal editor, but at the same time seems to work pretty well. (Although as a side note I would like to point out that you need to start the editor in the same directory as your artwork, otherwise it seems to try and save to the wrong directory. Every time I did this is put _tmp and the front of the path, which of course doesn’t exist. I’m not sure if this is a Mac specific thing, but just starting the program in the art directory seemed to get around this issue.)

An open letter to the producers of Stargate

Today on Gateworld we received news about two Stargate movies that are in the works. As a huge fan of Stargate, I am most excited to hear that the adventure will continue in some form with the characters I and many others have grown to love over the years.

However, I must admit that my heart sank when I read the details of the second movie. To the rumored director (Martin Wood) and writer (Brad Wright) of this movie I saw this: Please, no more time travel.

Time travel is one of the most abused plot devices in Science Fiction today. While at first it seemed like an interesting way to introduce “what-if” scenarios into a story, the over use of it has led to complications that eventually degrade the quality of the series that it is used in.

For example: Star Trek has used time travel many, many times over the various movies and series. More times than not, it has been used to “fix” a problem that has been introduced such as bringing back popular characters, or some other contrived situation (i.e. the writers of Star Trek: Voyager using time travel to help the crew get home in the series finale).

The use of time travel became such a crutch that the writers/producers of Star Trek: Enterprise  wound up introducing time travel (and time shifting bad guys) in the series premier of the show. As soon as I heard the words (and I paraphrase) “they come not from where, but from when” I shut off my TV. I tried to watch a few more episodes, but the venom of “time travel” had already circulated into the very lifeblood of the show rendering it uninteresting and unwatchable to me. Why would I want to invest my time and interest into something that could very well change next week based on the whims of what the writers want bring back or fix?

Some people claim that using time travel in Sci-Fi is a mark of sophistication and it shows that the writers and the audience are “smart” because they are able to follow the intricate web that is spun. For some shows (Dr. Who) I would agree that this is true, but for most shows, movies, stories, games, etc. I will simply call “bullshit” and say that it is the equivalent of the writers/producers reserving the right to revise thier works (George Lucas, I’m looking at you).

Stargate (both SG-1 and Atlantis) have walked a fine line when it comes to time travel. Wormholes are a manipulation of the very fabric of time-space so it is conceivable that time travel of some type could happen as was seen in episodes like “1969″, “2010″ and “2001″. Other episodes such as “Before I Sleep” and “Moebius” were stretching and straining their credibility with their particular usage of time travel (i.e. “we need a ZPM, hey let’s travel back in time and steal one from an enemy we killed a long time ago!”).

The amazing talents that have come together to bring Stargate to life are better than this. The writers, the directors, the actors, the props and special effects departments, and everyone else involved have created so many episodes of both show that are head and shoulders better than the typical TV fare. Especially in the Sci-Fi realm. It would be a shame to tarnish that proud tradition at the end of one of TV’s most enduring shows. From the beginning, Stargate has been about exploration of new worlds, much like the original Star Trek. Please don’t let it end the same way that Star Trek has.
Though I am confident the Stargate universe will not come to halt if a movie centered on time travelling is created and released, I think things would be better if it never happened in the first place. Obviously if time travel were possible this letter would be a moot point. :)
In all seriousness, please reconsider any plans that are on the table for the use of time travel. There are so many other avenues in the Stargate universe that can be explored that would leave the fans feeling much more fulfilled (and possibly leading to future spin-off opportunities). A few examples would be: Contact with the Nox, a story about a mission that goes horribly wrong, or a story that focuses on the war for a planet other than Earth (such as “Lost City” focused on Aybdos).

In closing, Stargate is an engaging, delightful show of the highest caliber. Please, don’t bring any more time travel into it. There is a reason that butterflies are kept under glass, some things are perfect the way they are and just shouldn’t by touched.

Spicing up iTunes playlists

I really like my iPod. I’ve got a 4GB Mini that I keep in the car (hooked up to the stereo) and I listen to that instead of the radio. I have a couple of playlists that account for about 2GB of songs on there. You would think with that many songs all would be good. And most of time it is, but after a while, you will listen to all of those songs and start to hear the same ones over and over and over. Even your most favorite of songs will begin to grate on your nerves.

So how do you prevent this?

For me the secret has been to set up two new play lists. One is dedicated to new songs (i.e. just bought or ripped), and the other is for songs that haven’t been played a while.

With iTunes, you can setup a play list that will select songs based on certain fields. For me, most of my play lists revolve around the “rating” of the song. 1 Star means I don’t like it, 5 Stars means its the best thing I’ve ever heard. As a consequence, I have a lot of songs that fall into the 3 to 4 star range. Randomly choosing songs from this pool is ok, but for some reason I always seem to wind up with the same core groups of songs, and like I said earlier, they are starting to get stale.

It turns out that there is another field that iTunes keeps track of, the “last time played”. This is interesting because now we can build a play list based not only on how much we like the song, but also how long it has been since we have heard it. Combining the two ideas together leads to an interesting new play list. Here’s a picture of how I have mine setup:

playlist.png

With this play list feeding into my iPod when I sync I get a nice selection of “fresh” songs almost every time. Since I have about 800 songs rated between 3 and 5 stars, this gives me a good size pool of songs to pull from. And since the play list is time dependant, what is in the list today will be different than what is in the list 2 weeks from now.

The real beauty of this play list is that as songs are listened to, their “last played” date is set to now, and when I sync up the next time, a new song will take its place. This way, I can keep listening to the songs I like, but don’t have to worry about stale songs because the play list is always being refreshed.

And as I listen to songs on the Mac, this updates the last played dates also, so the net effect is I’m adding a lot of chaotic variability to the play list. Which in turn means that the songs on the play list will tend to be more “random” because there are two sources of input (the iPod and iTunes) that are influencing the results of what gets picked.