Categories
Game Development Geek / Technical Personal Development

Finding Ready-Made Code

This past weekend I was trying to work on some code that makes use of math. Specifically, I was working on acceleration and velocity, but I didn’t necessarily need a heavy-duty physics engine. I just wanted some low-level C++ code for vector math.

I shouldn’t have to write it myself, right? It’s been done before, by myself and others, and I’m sure some publicly available code would be better tested and more functional than anything I would write. It should be easier to find some code online than to pull out the math books and write my own. There is no need to reinvent the wheel.

It spent about an hour and a half researching a Vector class. It was difficult to find because a number of hits were for imitators or enhancements of std::vector. When I finally found a good implementation, it was part of a small library, but it was fairly trivial to separate it out. I had to make some changes to adapt it to Doxygen, but it definitely beats creating a complete class definition from scratch over the course of a few days.

It was difficult to find code that was generic enough and well-written. Some were too specific or too unwieldy. I found one library that was a “tiny matrix and vector” library, only to discover that the vector was a small footprint version of std::vector. It was one of those WTF moments. I found one class that would have been fine except that the author didn’t bother to present his name or the date that it was created. How can I keep the author’s name in the source code if he/she didn’t bother put it in there in the first place?

I finally found some useful code through Koders, a source code search engine. I also learned about a few other code search engines that I may use in the future:

Planet Source Code
Krugle

What do you do when you need some basic code that you know should be available as a library? Do you just take the time to write your own, or do you look for code online? Do you outsource it to someone, using a service like Rent A Coder?

Categories
Game Development Personal Development

Thousander Club Update: July 24th

For this week’s Thousander Club update:

Game Hours: 141 / 1000
Game Ideas: 432 / 1000

Target: 546

There are 47 days left until the deadline for entering a game in IGF 2007: Countdown to IGF 2007

I came down with something earlier in the week, and while I am still suffering from it, it is pretty mild compared to what it was. 102F fever, and then 98.6F the next day? Weird. I now have a nice cough as a souvenir, though. I couldn’t really work earlier in the week, but I think I did a decent job of catching up in the past few days.

The Chicago Indie Game Developer Club met yesterday, and once again I did not have anything to present. Oracle’s Eye Prime is almost at a state that is playable, but there isn’t anything to show yet. I will have more to say on it later this week.

My goal is try to work at least five hours a day for the next couple of days. Assuming I don’t get even more sick, it should be possible. I can make a lot of progress in a a couple of hours. I’d like to add more productive hours to my week, and even one day of five hours of work can make a big difference.

Categories
Game Design Game Development Marketing/Business

Lower Barrier to Market: Physics?

Chuck Arellano argues that indie game developers can compete on physics.

Players are expecting higher quality artwork in their games, especially with the advances in hardware we’re seeing. Creating said artwork, however, is generally expensive, and can easily be outside of the budget of an indie. So what do you do, especially if you want to compete with much more established companies?

Compete on physics. Physics is basically an application of math. You don’t need to pay experts to create physics assets. You just code it! And with some of the libraries listed in the article, you may be able to plug-and-play. Make it realistic or make it fantastic, but with physics, your game can be innovative and fun.

I will agree with Erik that physics isn’t the only place where indies can innovate. What about sound? What about input? I think that games like Platypus show that even with graphics, there is room for growth.

Categories
Game Design Game Development Marketing/Business

Which Project Do You Choose Next?

In Another Indie Quandary: Short v. Long, Tim faces the problem a lot of indies face. Do you pick the shorter project in order to make some cash sooner, or do you pick the longer project, the one you really WANT to make, hoping not to go bust in the process?

The short project, if successful, means you are one step closer to being financially independent of employee-dom. Of course, shorter projects are probably short because they aren’t very hard to make, which means anyone could make it and probably has. How successful can the game be? If it becomes successful, how hard would it be for competitors to encroach on your turf?

The longer project would require funding to help keep you alive long enough to finish, which usually means working for The Man for a little while longer. And that’s assuming you finish. Longer projects are notorious for becoming nothing more than tech demos. Tech demos don’t sell, unless you are trying to find a better The Man, but it is probably not why you wanted to make the game in the first place. Still, this project will probably be more enjoyable and, if successful, much more rewarding.

Is it a question of suffering for your art? Being timid vs being bold? What do you do?

Categories
Game Development Marketing/Business

Thousander Club Update: July 17th

For this week’s Thousander Club update:

Game Hours: 131.75 / 1000
Game Ideas: 432 / 1000

Target: 525

There are 54 days left until the deadline for entering a game in IGF 2007: Countdown to IGF 2007

As far as Oracle’s Eye Prime is concerned, I managed to work on an input system. As of this writing, I was able to get individual entities to detect the state of a keypress and send messages to each other based on them. For now, that means that multiple images on the screen can move about in different ways depending on what keys they are paying attention to. This week I hope to implement detection of key presses and releases. I hope to have something resembling a game as well.

One of my computers has three problems: a rattling CPU fan, a chipset fan that doesn’t spin, and a hard drive that was giving me errors. I bought a new hard drive, but I left off the other fans, partly due to the fact that I need to go to the manufacturer for chipset fans and partly because I just want a new CPU fan but apparently I need a new heatsink as well since they don’t sell them separately. I’ll leave the fans to another day. Last night I started copying files over to the drive, but it is entirely possible that as you read this post that they files are still being copied. A 160GB drive with multiple partitions will need to copy everything over to the new 250GB drive.

And the weird thing? It was my backup drive.

I’m also considering the purchase of a Dell laptop. I wonder if I could order it today and receive it by this weekend, in time for the Chicago Indie Game Developer Club meeting:

Where: The Starbucks at
Streets of Woodfield
601 North Martingale Road
Schaumburg IL, 60173

Date: Sunday, July 23rd, 2006

Time: 5:00 PM until whenever

If you’re in the Chicagoland area, feel free to drop by, give some feedback, and talk shop with other indies.

Categories
Game Development Marketing/Business

2006 Casual Games White Paper

As per The Ludologist, the 2006 Casual Games White Paper is out, although as of this writing you won’t find it on the reports page for some reason. You can find a copy of it on the IGDA Wiki as well as in PDF form at the Casual Games SIG.

Apparently the wiki format was used to encourage people to contribute to the knowledge base:

Contribute

We have decided to utilize this Wiki as it provides easy access for the entire community to contribute to and update this iteration of the paper. Please feel free to help out by updating any section in which you feel comfortable contributing to!

It should make for good bedtime reading.

Categories
Game Design Game Development

Converting Table Top Games to Video Games

Table Top versus Video Games: Part 1 – The Dice kicks off a three-part series on converting a table-top game to a video game. To make a successful conversion takes a bit of dedication and hard work. This series provides some idea of what it would take.

The other two parts:
Table Top versus Video Games: Part 2 – Jabber, Jingle, Google and 360
Table Top versus Video Games: Part 3 – Reaching Your Audience

Categories
Game Development Personal Development

Thousander Club Update: July 10th

For this week’s Thousander Club update:

Game Hours: 126 / 1000
Game Ideas: 432 / 1000

Target: 504

There are 61 days left until the deadline for entering a game in IGF 2007: Countdown to IGF 2007

I took most of Saturday to work on Oracle’s Eye Prime. I really like having entire days of development since I can get quite a bit accomplished in a short period of time. The project is coming together, although progress is still a bit slower than I would like. A few more Saturday’s like this last one would probably help quite a bit. Currently I can load sprites and entity objects dynamically through a configuration file, and there is a way to allow the entities to respond to input. Eventually game development will involve less coding and more configuration file editing.

Categories
Game Development

Indie Game Dev Podcast: Interview with Positech Games

Action has released another podcast, this time interviewing Cliff Harris of Positech Games, creator of Democracy and the upcoming Kudos.

It’s nice to get a voice to go with the posts on IndieGamer forums, and the interview is pretty eye-opening. If I can boil it down to anything, it is “Finish your game projects and you’ll be ahead of 90% of the people out there.” At the end, cliffski gives quite a bit of advice for indie developers.

Also, for another interview with cliffski, see Interview with Positech Games Producer Cliff Harris: Kudos Game Production

Categories
Game Development Personal Development

Thousander Club Update: July 3rd

For this week’s Thousander Club update:

Game Hours: 112.75 / 1000
Game Ideas: 410 / 1000

Target: 483

There are 68 days left until the deadline for entering a game in IGF 2007: Countdown to IGF 2007

I went out of town for the July 4th weekend, but I still managed to work a few hours during the week before I left. I feel like I am being more productive in the past few weeks, although I suppose I should check the actual numbers to be sure.