Categories
Games Geek / Technical Personal Development Politics/Government

What Games Taught Me

I grew up watching television and playing video games. I read books, but not as often as I do now. Somehow, I managed to get honors in high school. If games only allow me to “learn how to shoot cops”, how do so many people who play video games get good grades?

On Game Girl Advance’s Kids Can Learn to Read and Shoot Cops, the question came up: what can games teach us?

I would think that, if the game really gets a young, innocent, prelapserian child interested, then it also makes that child investigate the world of the game further. They might learn something about recent American history.

But maybe this is just me. Am I wrong? As a curious, unofficial poll, what new SAT words or useful skills did video games teach you folks? Have games taught you anything that makes you feel smarter or a better person? Any Trivial Pursuit questions answered correctly because of video games? To paraphrase Senator Schumer, can Johnny learn to read while shooting cops?

For the record, I did get a Trivial Pursuit question correct. Towering Inferno was one of my favorite Atari 2600 games, and I learned years later that it was based on a movie. While playing the DVD Trivial Pursuit, I listened to a mock pitch for a movie that sounded somewhat similar to the game I played. I got a piece of the pie for it. B-)

I also learned what scurvy was due to playing Illusion of Gaia. I remember looking up information on it because the idea of a lack of Vitamin C causing a disease was quite “out there”. Was it just made up for the game, or is it real? I had to find out. I had to learn.

I learned resource management. While I know of at least one person who hates strategy games (“Give me a mission, tell me what to do, and I’ll do it, but keep that crap away from me!”), I loved the intricacies of playing Ghengis Khan 2, Nobunaga’s Ambition, and P.T.O 2, all made by Koei. Real time strategy games like Total Annihilation and Starcraft similarly stressed the importance of resources. When I pack for trips or make plans for events for my LUG, I understand the importance of logistics. Not having enough pizza, underwear, or Medics can make or break your plans.

I also learned about the real-world people featured in the games. Nobunaga’s ambition to unify Japan was real. MacArthur’s famous “I shall return!” and the strategic importance of holding the Philippines were real. The political struggles, the balancing of Army and Navy resources, the value of allies and supply lines and research and intelligence…hundreds of hours watching the History Channel or reading history books doesn’t compare to the experience of watching a turn play out in front of you and knowing that what you did has an impact on the outcome.

What’s more vivid in your mind, reading about how North America was colonized by England, Spain, Holland, and France, or actively trying to keep peace with the Iroquois tribes nearby your main towns while preventing a competing nation from making landfall on “your” shores? Colonization introduced many of the major figures involved in the conquest of the New World in a way that history books just couldn’t.

Even games like Super Mario Bros taught me to tackle problems from multiple angles. You couldn’t find all of the bonuses or power-ups if you didn’t try hitting blocks that “weren’t there” or jumping into a pipe rather than over it. Thinking outside the box was normal in video games.

Games taught me how to be an organizer. Games taught me how to be efficient with limited resources. Games taught me how to experiment with new ideas or methodologies. Games taught me how to work well with others. Games taught me the importance of planning. Games taught me that my decisions can have multiple outcomes and affect many people.

Unfortunately, some people think that all I could have learned from video games is how to be dangerous and destructive.

To be honest, I did cause natural disasters like tornadoes and earthquakes in order to destroy my SimCity, but I distinctly remember cleaning the city back up and making it better than ever. B-)

Categories
Game Development

The Hero’s Journey

Yesterday I posted about the importance of heroes and how actions define who we are. The post was more philosophical than anything else, but Gamasutra had an article that fits into the theme quite well: Into the Woods: A Practical Guide to the Hero’s Journey.

It talks about how to make great stories, and obviously it is geared towards game development. Still, it demonstrates how important heroes and mythology are to the development of a person.

In The Cry For Myth, Rollo May points out four areas where myths are still active in modern life

  • Myths give us our sense of personal identity, answering the question, “Who am I?”
  • Myths make possible our sense of community. We are thinking mythically when we show loyalty to our town our nation or our team. Loyalties to our friends or community are the result of strong myths that reinforce social bonding.
  • Myths are what lie underneath our moral values.
  • Mythology is our way of dealing with the inscrutable mystery of creation and death.

In college, I took a class about mythologies of the world. It was one of the more interesting classes I took. I already knew that most cultures had a Flood story, but I actually got to read about the individual myths in this class. I read about the different creation stories. There are some major differences but also some incredible similarities between seemingly different cultures.

I once read somewhere that there are many stories that are going untapped in game development. There are plenty of worlds based on Tolkein’s Lord of the Rings or Medieval knights, but what about African or South American stories? Why aren’t there more games about The Tortoise and the Eagle or ambitious buffalo demons named Mahisha?

And even if we don’t try to make a story directly based on an existing, real-world myths, can’t we do a better job of borrowing ideas from them?

Categories
Personal Development

Who You Are

It is always eye-opening to read about someone’s history. How did events affect them? How did they become who they are? “Batman Begins” is a great film because of such interest, and biographies on J.D. Rockefeller and Benjamin Franklin tend to be popular as well.

Steve Pavlina’s Meaning of Life series starts by documenting how one person can change his/her outlook on life. He talks about questioning his long-held religious beliefs when he was younger and being unsatisfied with the (lack of) answers from those around him. He went from straight-A’s to a disinterest in college studies. He started to steal for the fun of it. After almost getting a 2 year jail sentence for grand theft, he was expelled from school for low grades.

This story is a stark contrast from the Steve Pavlina who is passionate about personal growth and graduated with honors and awards within three semesters.

Yet it is the same person. And it isn’t uncommon. I was raised Catholic, and I’ve heard plenty of stories about saints who were the worst sinners in their time. People go from living in the streets to becoming incredibly wealthy. Others are born into wealth and can become destitute or depressed. Many people never do any more than coast through life and stick with the status quo.

Steve Chandler said that we need heroes. They show us what is possible. Without heroes, we don’t know what we can do. If everyone is mediocre, then no one worries about doing their best. “Just enough” is perfectly fine. Apple’s “Think Different” campaign was great because it talked about how the people who make a difference in the world are those who don’t simply accept what everyone else thinks is good enough.

Steve’s story is great because it demonstrates that no matter how bad life gets, you can always improve it. Who you are depends on what you do, and it is clear that we can all be great. After all, many have shown us how already. It is just a matter of carrying out the appropriate actions.

Categories
Games Geek / Technical Linux Game Development

Letter to Gas Powered Games

I just received the latest copy of PC Gamer and saw Supreme Commander listed on the cover. I was a big fan of Total Annihilation, and I couldn’t wait to read about SC.

These days I run Debian Gnu/Linux as my main operating system and I would prefer to not have to boot up Windows just to play a game. If the game is only available for Windows, I’d be less inclined to play it. Are there plans to release a Linux-based port of the game? If not, will the game be designed and written in a highly portable manner so that such a port could be written by others without too much effort?

Thank you for your time,
Gianfranco

I just submitted the above message to Gas Powered Games, founded by Chris Taylor. Taylor was the creator of Total Annihilation, which is still my favorite real time strategy game. Today I found the latest PC Gamer magazine waiting for me when I got home. On the cover was Supreme Commander, which is his newest RTS. Atari owns the rights to TA, but SC is considered the “spiritual successor”. A big thank you to THQ for publishing it when others are insanely turning it down.

A lot of people say that the RTS genre has stagnated, but Chris Taylor apparently has the goal of actually adding strategy to the mix. Apparently you can play from multiple levels: tactical, which is what you find in most RTS games, and strategic, where you can get a high-level X’s and O’s look at the war. Besides the actual war and battles, the units will also match the epic scale. You can have normal units running amongst the legs of the massive units, and according to the preview, the battleship won’t fit completely on the normal screen. Nuclear explosions usually don’t look all that impressive in most games. Even in Empire Earth, which had the most impressive explosion (the screen went blindingly white), the blast radius only affected a small area. Original War had a really impressive weapon that actually left an area contaminated for a little while after the explosion, but it still wasn’t very massively destructive. But in SC, apparently nuclear weapons will live up to their name.

Part of the fun of Total Annihilation was just the excitement of blowing up so many things. It was far from mindless, but there was a lot of action going on. You could have multiple fronts in a massive battle with a large number of opponents. Plus, it was highly expandable, and people are still making mods and units for it.

Supreme Commanders is looking to make a big splash in the RTS genre when it hopefully gets released next year. It might finally be a real time strategy game that employs actual strategy so that the naysayers of the genre can be happy.

And having a Gnu/Linux port would be really nice. It would be unfortunate if it was restricted to only Windows and Mac OS X.

Categories
Marketing/Business

Ok, I’ll Be Selfish

Kathy Sierra, an author from the Head First series of Java books, has made an open post where anyone can comment and trackback, no matter how off-topic or shameless. So, I’m taking advantage of it. B-)

Well, to make it more useful, I’ll say that I wouldn’t mind seeing Head First Game Development, but I’d prefer C++ in my game dev books.

Categories
General Politics/Government

Legally Blog

I found out that the EFF has published a Legal Guide for Bloggers.

Whether you’re a newly minted blogger or a relative old-timer, you’ve been seeing more and more stories pop up every day about bloggers getting in trouble for what they post.

The difference between you and the reporter at your local newspaper is that in many cases, you may not have the benefit of training or resources to help you determine whether what you’re doing is legal. And on top of that, sometimes knowing the law doesn’t help – in many cases it was written for traditional journalists, and the courts haven’t yet decided how it applies to bloggers.

But here’s the important part: None of this should stop you from blogging. Freedom of speech is the foundation of a functioning democracy, and Internet bullies shouldn’t use the law to stifle legitimate free expression. That’s why EFF created this guide, compiling a number of FAQs designed to help you understand your rights and, if necessary, defend your freedom.

A great guide, especially for people who aren’t supposed to be getting paid to blog but do. B-)

Categories
Game Development

We Can’t Talk Yet Since We Have No Words

I’ve talked about the book Difficult Questions About Videogames already, but I have found quite a few more resources regarding the language and vocabulary we use to talk about games.

I’m still reading through the book, but I have to say that I am disappointed in the quality of the writing. The people who put the book together said that they wouldn’t do much more than publish the results, but could they at least have made it less painful to read? Simple spelling errors, grammatical mistakes, and others could have been cleaned up and still “kept it real”. It is still an interesting book to read. It is just not as enjoyable as it could be.

In any case, I’m now fascinated by the development of a common language to use in game development. A number of the articles will point out that video game language has so far been coopted from film, but film language isn’t always appropriat or available. Sure, there are certain terms to use to describe how a game looks. And there are terms to explain the narrative in role-playing (roleplaying? role playing? check google to see that there doesn’t seem to be a consensus here either) games. We can talk about technical aspects easily. But what about words to describe how items increase in power as a player goes through a game? Or how a game can provide you a situation and the player can create a plan based on it and the actions the game provides? These ideas are abstract and can be applied to many games in different ways. They’ve only recently been identified and given formal names.

Design patterns have sped up software development research by providing a standard way to talk about software. When someone talks about Singletons or Proxies, everyone knows exactly what he or she is talking about. Similarly, algorithmic analysis allows us to talk about the difference between algorithms that take constant, linear or quadratic time to complete based upon the input.

When it comes to game development, however, we seem to have very little to say that allows us to talk to each other. For example, what I mean by gameplay is different from what you mean by gameplay, so saying that Game X has better gameplay than Game Y is meaningless. Of course, it doesn’t stop people from having arguments about it.

I will be watching this field of study carefully, and hopefully I will be able to make my own contributions.

Categories
Game Development

The Benefits of Game in a Day

I loved participating in Game in a Day, and I gained a lot from the experience. For one, I have created a game that I can continue to work on until it is a finished product. I added a few more game development blog links to my list. Also, I learned quite a few new things as well as finally understanding things that I already “knew”:

  • I still have a lot of C++ to learn.
  • I still have a lot of Kyra to learn.
  • Nothing helps more than proper planning.
  • Hacking is a lot more fun with a good plan.
  • I need to remember to make clean before packaging a project. There is a big difference between 500KB and 2.2MB.
  • After a successful build, not checking in the code before attempting to add a feature is just asking for trouble.
  • Too much Mountain Dew is bad.
  • Not planning for snacks/eating/showering is even worse.
  • It is a lot easier to see that death marches can result in a lot of uncommented code, even with the best of intentions.
  • Eating your own dog food is great for revising your design since you can find out what doesn’t work quickly.

That last point is in reference to an article by Joel Spolsky. He basically talks about the importance of actually using your software to dig out bugs and usability problems before releasing them to the public. Eating your own dog food. While I was programming, I was testing. One problem I found was the arbitrary restriction of only four directions for movement.

When I created the control scheme, I didn’t want to waste time making four more images for diagonal movement (even though it would have been a few more minutes of copy, paste, edit, and encode to .dat file), so I made the movement restriction match the images in the game. Perfectly fine, right?

After a few iterations, adding a different feature or otherwise working on unrelated code, I found myself getting frustrated. When I built the program and tried to run it, I found that the controls were just plain irritating! At one point I decided to make the simple change so that the player character can move in all 8 directions. It wasn’t huge, but that tiny difference made the game less unbearable.

My ability to create improves every time I use it. All the theory and facts I’ve learned through books and tutorials are nice, but they don’t compare to the experience of actually making use of them. FuseGB may not be a great game, and I’ve definitely made some mistakes developing it, but at the very least it has provided me with a lot of experience to help in future game development. As Gilbert Chesterton says, “If a thing is worth doing, it’s worth doing badly.”

Categories
Geek / Technical Marketing/Business

Anti-FOSS Conspiracy? Meh.

In “Something’s Amiss in the Linux Community”, Walter V. Koenning suggests that there are people who are so against Linux and Free and Open Source software in general that they will take the time to post negative comments under articles that are pro-Linux. He notes that the negative comments appear to be copied and pasted into each article. At the same time, he notes that there seems to be more articles praising the merits of Windows.

Yet, I propose there is one big difference. The difference is so major that it allows me to smell the fishy smell, and notice that which has gone amiss and still sleep well at night.

Linux did not get to where it is today because it was promoted extensively, strategically deployed, well marketed, etc. It got to where it is today because there is an unquenchable thirst in the world (I’m talking about all of humanity) for creativity and collaboration.

Thousands of people have volunteered their blood and sweat to OpenSource because it matters more than general economics or power.

What we create with our minds and fingertips together with others we’ve never seen matters and benefits many and leaves a legacy that money can’t buy and power can’t wield. It’s not possible to stop inner human passion. Nor will it be possible to undermine the community that makes it tick so well. Instead, for every action, there will be an equal and opposite reaction.

If there are forces at work to try to undermine FOSS and make it appear dangerous and inferior to proprietary products, then doesn’t it mean that the people behind those forces are afraid? If it really was as bad as they say, FOSS wouldn’t survive on its own merits.

Yet it does. And apparently if the trends the author indicates exist, people are dedicated to spreading Fear, Uncertainty, and Doubt to slow it down. It simply demonstrates that Free and Open Source Software is important enough to be a threat, which means that it is good enough to compel people to switch.

Quite simply: they’re afraid.

Categories
Game Development

Part 3 of Results of June’s Game in a Day

Click below to track my June 2005 GID development progress:
Part 1
Part 2
Part 3

5:03 PM

Cans of Mountain Dew: 7
Subversion Revision: 35

Let’s take a break.

At this point, I am trying to think about what I can do to improve on the project. Right now, the main player can drop a pulsating bomb which explodes after a few seconds. The explosion will make the enemies disappear. The enemies move about in a random, convulsing sort of way.

I could try to clean up the code, but what’s the fun in that? Cleaning up the code is what you do after GID. During GID, you just try to make the best game you can in 24 hours.

I could try to improve the AI, but that would involve research since I am not too familiar with setting up scripts and the like. Everything is hardcoded unfortunately. Still, it doesn’t close off my options too much. I think I will make the enemies birth new enemies every so often. Also, if they touch the main player, the player dies.

I should probably add a new state to allow you to return to the game rather than call in the main menu state as a placeholder. I believe it also ruins the game by deleting the Kyra engine and creating it again. A new state would be much better.

6:01 PM

Cans of Mountain Dew: 7
Subversion Revision: 39

Cool. The game now pauses, although it doesn’t display anything to let you know. Bad UI, but hey, it’s a feature that wasn’t there before. It is difficult to exit the game since there is no feedback to let you know what state is active. If you hit Esc, you will pause the game. Hit Esc again, and you resume. Hit Q while paused and you go to the GameOver state. Hit Q to go to the main menu. Hit Q to exit the game. Whew.

7:04 PM

Cans of Mountain Dew: 8
Subversion Revision: 46

The enemies can now kill the player. The player can kill the enemies. It goes to Game Over, and if you want to start over again, it now restores the game properly.

The enemies are still stupid, but now the player has a DEAD state. I think it is amusing looking, although it is a bit too subtle:

PWNED!

PWNED!

8:13 PM

Cans of Mountain Dew: 8
Subversion Revision: 49

Took a break to change, wash up, and talk to people in #gameinaday before continuing. My sister took some pictures of development:




10:51 PM

Cans of Mountain Dew: 8
Subversion Revision: 52

COMPLETED!

After a little scare where I had an actual working game and then messed it up WITHOUT having checked the working copy into Subversion first, I finally got it to work again. I changed the vectors to lists so I can actually remove blasts and enemies when they are no longer alive. The enemies multiply at a quick rate, but they don’t currently pose much of a threat as they still just randomly convulse. Still, the gameplay is there. I’m proud of what I accomplished for my first GID. I learned that I need to improve on my understanding of C++ and Kyra if I want to work more effectively with them in the future. And I had fun! I mean, I made an actual game in 24 hours! It has no sound, the graphics leave a lot to be desired, and the actual gameplay isn’t much better, but it is a game. It is something I can claim that I created. It’s a great feeling.

Click on the image below to get the source and graphic files. The packages are available in .zip and .tar.gz formats. Make sure you get the latest revision unless you want to see how the project looked at an early stage. You’ll need to make sure you have the Kyra Sprite Engine on your system, which requires SDL.