Joost Ronkes Agerbeek wrote the first of what will hopefully be a series of game programming posts with Writing a Basic Game Engine. While it may not have a lot of meat to it, it is precisely the topic of the game loop that gets passed over a lot in game development tutorials and books. Usually, examples are either awkward or they are too specific to the example itself. Sometimes this loop is not discussed at all or in too general a manner to be useful. After all, the real game development is in input, graphics, sound, etc. It is a simple and basic article that I think fills a void for people learning to make games. I definitely see ways to improve on what I’ve done based on reading this post.
I recently bought and received Write Portable Code by Brian Hook of Book of Hook fame. As I intend to make my games playable on multiple platforms, I need to learn how to not only write good software but also write good portable software. I believe that this book can be invaluable to that end.
And within the first few chapters, I’ve already learned about a new tool: Valgrind. It’s an open source suite of tools for debugging and profiling x86-Linux programs. Sweet! I’m definitely going to look into it.
Anyway, the book promises to be both practical and informative. Hopefully it won’t be like other books that are failures at both, and so far, I don’t believe it will.
I’ve been walking every other day or so. Nothing too strenuous. Just an hour meandering around my neighborhood for an hour. It is great to get outside and move about, and I’ve come up with a number of ideas while thinking and walking.
Well, it rained today, so I decided to make use of the treadmill in the basement. I left the defaults and set it for 60 minutes. It was at a much quicker pace than I was used to doing. Still, I felt great, and I was able to read a book for about 10 minutes.
Then I started sweating. Eventually I had to put the book down because it was going to get wet. I didn’t feel out of breath or anything, so I kept going.
For an hour, I managed to keep going at a brisk pace. I took my shirt off halfway through. Note to self: don’t wear the clothes you went to work in when trying to keep a brisk pace for an hour!
Still, I accomplished it. One hour, on a treadmill, at about 2.5 to 3 miles per hour. I was worried throughout that I was going to pull something or somehow injure myself. I definitely needed to drink plenty of water afterwards, and the shower was great.
I felt fine for awhile, but found that some blisters had formed under my feet. What a great place for them! Now when I got to work or anywhere else, I’ll be in slight pain. Perfect. On top of it all, I think I will likely wake up in the morning with sore muscles.
So if you’ve been immobile for a few years and are starting to get active again, remember to pace yourself. I probably should have realized that the faster pace could have been done in 30 minutes instead of an hour. I could even have given myself a 10 minute break between two half hour sessions. And with my blisters and potential soreness, I’m not going to be in a position to play basketball or soccer anytime soon.
That’s my Exercise Caution.
Somewhere this past week I came across the Linux Gamer Guide Wiki.
I set this site up to help people be aware that there ARE linux gamers.. and gaming on a linux platform is a CHOICE!.. now… to add stuff.
I’ve been trying to get the site out more in the public..if you find any of these HOWTOs useful please give ’em a link 🙂
I didn’t post the link originally because the site was very new, but now it seems to be taking shape. I think it can be a great resource along with The Linux Game Tome and other sites.
This past weekend, I had a chance to play Prince of Persia: Sands of Time. My girlfriend’s cousin owned the game. I’ve been wanting to play this game for quite some time, and I finally did for a couple of hours. From the beginning, I could see why people loved this game. Just doing acrobatic moves without much effort was really cool.
I talked with my girlfriend’s cousin about how the game was a lot of fun and that I can’t believe no one bought it. He mentioned that his friends generally felt that the game looked like a “ripoff of Aladdin” and so they wouldn’t even give the game a try. Too bad for them…and unfortunately, too bad for the developers.
Over at Zen of Design, there is a post called Viewpoints on Why Great Games Don’t Sell. It cites a forum post on Idle Forums and a post by Scott Miller about the games Psychonauts and Ico. Both games are supposed to be amazing, and yet they had terrible sales.
While playing PoP:SoT, I did find that the jumping puzzles could have gotten frustrating. I wanted to fight off a group of opponents with flourish instead of jumping across pits at the right moment to avoid a buzz saw. On the other hand, running along walls and leaping from pillar to pillar was kind of fun in its own right. Apparently Ico and Psychonauts also had jumping puzzles.
Scott Miller provides a few of his own reasons for why a good game can fail, but I think part of the problem was the lack of marketing. I saw an ad in PC Gamer about Psychonauts. It didn’t immediately appeal to me and I still can’t tell you what the game is about. The review, on the other hand, made it sound kind of cool. I guess I didn’t read it very thoroughly though. And Ico was mentioned many times in the “Difficult Questions About Videogames” book, but I still don’t know anything about it. Of course, I don’t have a PS2, so I wouldn’t have played it anyway.
I suppose Miller could be right about the “kid’s game” idea. After all, Prince of Persia: Warrior Within was made darker and sexier than SoT, and it sold a lot better. But perception is a marketing problem. Obviously, Psychonauts looks childish, but I’m sure marketing could have figured out a way to convey the game itself rather than the idea that it is just a kid’s game.
Now, blaming it all on marketing is a cop-out, and I don’t believe it was the sole problem with these games. But I’m sure more could have been done to prevent this problem. Play testing is important. Are you telling me that no focus groups are arranged to figure out first impressions on games as well? “Based just on this ad, what can you tell me about the game? How do you think it would play? Would you buy it?” Tailor your ads based on the feedback you receive here.
Also, do something about the jumping puzzles and similarly tedious gameplay mechanics. It could be that no one really enjoys them. SoT at least made them interesting and fun for the few hours I got to play.
Months ago, I found that I was very productive. I would knock things off of all sorts of lists and get so much accomplished it was scary.
For a month or two, I’ve been coasting. I started tracking my lists again, and I’ve seen an immediate improvement. But for larger projects, I find they will stay on my lists for a long time.
While it is an old post, The Ten-Minute Method at the not-often-updated NinjaBee Dance blog is exactly what I needed. It is basically a variation on an idea that I’ve read elsewhere: time boxing.
The Ten Minute Method is this:
Work on the project every day, even if it’s only for 10 minutes. Every single day, no matter what, but you only need to commit to 10 minutes. You can always find 10 minutes, right? Maybe just before you go to bed, or just before you plunk down in front of the television.
The actual work you do can be anything. If you’re working on art, just sketch something. Clean something up. Go looking for reference. If you’re programming, just look through code for a while. Read some documentation. Comment old modules. Make lists of things to do later. Easy stuff, right?
Sure, it’s easy! I think it is sometimes easier to make an excuse than to do real work. “I can’t write code. I’m not at my desk, and I don’t have an hour to dedicate.” “I don’t have the time to write up a prototype.” “Blah blah time blah blah resources blah blah.”
Again, I’ve heard of time boxing before. I’ve even found it useful. But I can sometimes forget useful tools and have to be reminded. I just have to find a way to make sure I remember this technique. 10 minutes a day isn’t too much to ask, and I know I can dedicate it. I just have to remember to do so.
I’ve always been able to draw well. Give me a pencil and a piece of paper, and I can probably draw a fairly accurate portrait. Of course, art isn’t my concentration when it comes to game development. I can draw, but I’m terrible with tools like Blender and the Gimp. I’m a programmer. And programmer art is what I make when making a game.
Programmer art isn’t good enough for professional quality games, so I plan on outsourcing my artwork. Jon Jones recently wrote an appropriate article: Outsourcing Art: Ten Steps to Success.
I think it is really informative, but I think it also shows a disconnect between artists and game developers. While I don’t have much personal experience with game development, I’ve heard and read enough about the way games evolve during development. It isn’t always possible to plan out all of your art asset needs. Communication is definitely key, as Jones points out, although I think he places too much of the blame on game developers when relationships have gone sour due to poor communication. Both parties are involved in communication, so if one failed to communicate, the other failed to communicate as well.
LinkedIn is basically a way to network with others. You might have a list of people you know, but LinkedIn allows you to keep those contacts in an easy to use yet formal way. On top of that, you can meet others through the people you know.
LinkedIn uses the concept of connections. If I know you, we can make a formal connection between each other on the site. So let’s say that I make a connection with the CEO of a game company, and you are interested in meeting that CEO for a business proposition. If you know me, you can send a message to the CEO through me, and I will forward the message on for you. Naturally, if I don’t know you or don’t think it would be good to pass the info on, I won’t. But connections are made quickly, and you can grow your personal network to discuss business opportunities, gain expertise, or just keep contact with old coworkers.
I’ve long known that I needed to discuss game development with a mentor or two. I’ve just signed up, but I’ve already made contact with a few Chicago-area game developers that I didn’t know before. It’s still early to say, but LinkedIn might be one of those tools that you can’t live without. The Beta Subscription is currently free, and I think the people behind LinkedIn are trying to figure out how much to charge in the future or if they should use advertising. Part of subscribing for free is to fill out a survey to help them decide.
I read Seth Godin’s post Stuck (with a bump on the head). Apparently there is a study that found child seats are no more effective than seatbelts for children.
Yet Americans spend millions on car seats every year. In some cities, it is against the law to strap a child in with a seatbelt. In the mind of millions of people, child seats are safer, so they’re willing to spend that much on laws and products. Logically, these efforts are not well spent, yet people do it anyway.
I think that example can explain why the game industry is quiet when it comes to laws like the ones passed in Illinois. The laws try to ban the sale of violent and sexually explicit video games to minors. No similar laws are being passed to ban the sale of violent or sexually explicit DVDs or movie tickets even though such sales happen, and in the case of DVDs, can happen more often.
Apparently there are studies that show that most video game purchases are made or approved by parents. Yet politicians and media will go in a frenzy about the need to “protect our children” and then pass laws that ban the sale of games to children. Now, if most children get their games through their parents, how are they being protected by a law that prevents the sale of the game directly to them? They aren’t, but politicians and parents can feel good and pretend that they’ve made a difference.
And I think that the video game industry in general knows that these laws won’t make one difference in their ability to sell games. I haven’t heard an outcry, and the IGDA made an effort only after the laws passed one of the two parts of the Illinois Congress. Maybe people feel that these laws are helping. After all, children shouldn’t be playing games with an M or A rating, so they shouldn’t be able to buy them. It makes sense. Of course, how much sense does it really make when you can point out that children aren’t buying the games in the first place! Once again, all the studies that the Illinois governor has used point out that minors CAN buy the games. It doesn’t tell you whether or not that they do. And those same studies point out that those same minors CAN buy DVDs at a much higher rate of success than games. Shouldn’t we protect our children by also banning the sale of violent or sexually explicit DVDs to children?
No, because people seem to understand that just because a child CAN buy DVDs it doesn’t mean that they DO. But there is no public outcry over children watching these movies. Not all movies are for children, after all, and the public knows this fact. At the same time, these people can’t get over the fact that not all games are for children either. It is a lot easier to assume that children are buying excessively violent games on an epidemic scale and that such purchases need to be stopped. It is a lot easier to assume because it is easier to believe that these laws are actually helping than to do something that actually helps.
And the game industry doesn’t need to worry because it knows the laws are ineffective. EA won’t lose out on sales since it knows that the people who make the purchases aren’t affected by these laws.
I recently talked about the huge amount of trackback and comment spam I’ve been receiving. I’ve added a WordPress plugin called Bot Check to prevent comment spam by requiring readers to enter a code from a random image in order to get comments submitted.
Trackback spam, on the other hand, might have to go through another plugin, if it exists. The Mod_Rewrite Trackback Spam Blocker would be great, but it isn’t compatible with WP1.2, which is what I am running.