Categories
Game Development General Personal Development

Thousander Club Update: October 2nd

For this week’s Thousander Club update:

Game Hours: 197.25 / 1000
Game Ideas: 432 / 1000

Target: 756

On Saturday, I managed to get the basic game of Pong finished. It has two players, a ball, and two walls. The ball will bounce off of the walls and paddles, and it resets to the middle again if it goes out on either side. Now all I have to do is add scoring and sound, and I think anything else would be polish and shine.

Of course, then I have the choice of either polishing what will end up being just another Pong clone or moving onto another project. I don’t want to switch to another project prematurely. I’ve already jumped from one project to another multiple times. There are still a number of things I could implement to really “finish” the game. I could create a simple menu, a pause feature, mouse input, ball spin, and a credits screen. I haven’t made use of fonts or text in a graphical game, so it would actually be a good opportunity to learn what it takes.

On the other hand, the end result will still be Pong. How long will it take to polish it up? Could I better spend that time by adding a second game under my belt? If I go this route, I’m leaning towards working on the original version of Oracle’s Eye again. It’s a relatively original game, and finishing it will result in a game that I can say is mine.

If I had a third hand, I might say that I should try to make another classic game, such as Asteroids or Space Invaders. While I will still end up with a clone in either case, the advantage of picking a clone is that I already know what the game should look and feel like. OE doesn’t have a very specific set of features, and I don’t even know if it will turn out to be fun. Working on the clones might give me better insight into what it takes to make a game as well as what I can do to make my own games more fun.

After I add scoring and sound effects to my Pong clone, I will make my decision. For now, I just want to outline what I’ll be pondering, hoping that you’ll provide at least as much quality advice and feedback as you did last week.

Categories
Game Development Personal Development

Thousander Club Update: September 25th

For this week’s Thousander Club update:

Game Hours: 189 / 1000
Game Ideas: 432 / 1000

Target: 735

While I didn’t work very much, I did start a new project. I am calling it SDL Pong, although it will make use of Kyra. I am going to make a very simple, very specific Pong clone. I am not going to allow myself to overengineer it or to try to create an engine that could make more than what this project needs. I am trying to see what I can use from my existing projects, which should help even more, but the most important thing is that I am working on a known project, so from beginning to end, I should have a good idea of what to do.

I will write more about the project this week.

Categories
Game Development Personal Development

Thousander Club Update: September 18th

For this week’s Thousander Club update:

Game Hours: 188.25 / 1000
Game Ideas: 432 / 1000

Target: 714

Ahem…those numbers above haven’t changed in a week, and I think it is the first time it has happened since I started tracking my progress in the Thousander Club.

On the other hand, I did spend a good portion of the week catching up on all sorts of things. I’m finally getting things organized again, which leaves me with less stress. I should see a good turnaround in the coming week.

Categories
Game Development Personal Development

Thousander Club Update: September 11th

For this week’s Thousander Club update:

Game Hours: 188.25 / 1000
Game Ideas: 432 / 1000

Target: 693

The deadline for IGF 2007 has come and gone. It’s September, and I am not even close to selling a game of mine on my website. Well, I’ve been meaning to update my business plan for some time, and now that I’ve basically missed every date I have ever set, now would be a good time to do so.

I feel like I need to “get back to fundamentals” as Michael Jordan would say, but I realized that I don’t know what the fundamentals of game development would be. I feel that by expending so much energy on making a component-based game engine, I am preventing myself from making a game. And I’ve never made a Pong clone before, which means it is complex enough to be a real challenge for me. How is it that I’ve been working on projects for over a year and still haven’t made anything playable? What made me think that Pong would be too easy but an entire game framework, specifically a component-based one, wouldn’t be too hard?

I’m going to focus my limited energies on making a Pong clone. Am I scrapping my engine? Hardly, but without the experience of writing a few games, I don’t think I can even begin to identify those things that my engine would need to be able to do. I don’t like that I’ve now switched to a different project twice this year, but I feel like I am spinning my wheels trying to make a component-based game engine. I’ve managed to make some good components that I can probably copy and paste into a more “hard-coded” engine without too many changes, so the past five months or so haven’t been a total loss. Maybe I just needed the experience of biting off more than I can chew.

As has been said before, game development is tough. Even if you have a ready-made engine, making a game is a difficult thing to do. I’m of the mind that the code, the engine, is just infrastructure to support the game and is NOT the game itself. While an open-source component-based engine would be nice to have, I just don’t have the experience, knowledge, and resources to make one that would be useful in a timely manner. When I can prove that I can make Pong and other game clones, maybe then I can have a better idea of what it takes to make an engine that would make all of those games. Making a Tetris clone is something that still makes me nervous whenever I think about how to implement the various pieces and how to spin them.

Saying the above means admitting that I am still a beginner at game development. Maybe a little wiser than I was a year or two ago, but still a beginner. Pong is supposed to be relatively easy, though. Perhaps it might only take me a month of part-time work to create it.

Categories
Game Development Personal Development

Thousander Club Update: September 4th

For this week’s Thousander Club update:

Game Hours: 185.25 / 1000
Game Ideas: 432 / 1000

Target: 672

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

I dedicated this past weekend to game development, and while I didn’t get too much done or spend as much time as I wanted to spend, I still managed to be somewhat productive. I have been working with some physics code that I managed to get integrated with my component-based engine. It works, but too well. That is, I want to try to make a Pong clone just to demonstrate that the engine is useful, but so far it seems like I would need to completely rewrite some parts of the physics code in order to make it less realistic, which defeats the purpose of having it in the first place. I’ll keep the code around as it may be useful for a future project, but for now I will be writing some basic collision detection and response code to get a bouncing ball to bounce off of paddles and walls.

Categories
Personal Development

Achieving a Life Balance

When I try to squeeze game development into the rest of my life, it feels like everything encroaches on it; however, when I make game dev a big priority, I notice that other aspects of my life start to falter.

I have a regular day job, and I try to work on my own projects as well. Then I have the other aspects of my life, such as girlfriend, friends, family, cats, playing video games, reading books, keeping track of my finances, this blog, etc. It all adds up to a need for more effective uses of my time.

I know that I am sitting most of the time, which is why I am making an effort to exercise. I have read that getting your heart rate up for 30 minutes a day for at least three days a week is ok, and five days is better. I’ve been walking or running home from work, which has helped. I was 195 lbs (88.45 kg) about this time last year, and now I am 173 lbs (78.47 kg). I definitely hit my goal of losing 20 lbs, and I feel better when I breathe deeply or move quickly these days. Pickup basketball or soccer games are much more fun when you aren’t gasping for air. B-)

Physical health is important, but so is mental health. As you know, I keep track of the books I read. I’ve been trying to read a book a week, and for some time this year I was even a couple of books ahead of schedule. Since I’ve been concentrating on getting my game dev hours up, you can see that I am a few books behind.

My backup computer has failed, and I’ve yet to get it up and running even though I have had over a month. I have yet to make an appointment for a physical with my doctor or a dentist appointment for an opinion on my wisdom teeth. I have a number of tasks on my todo lists that have been there for weeks or months. There are still games that I haven’t had a chance to play. Civilization 3 is still unopened on my shelf, my Prince of Persia: Sands of Time save game has been about 50% complete for quite a few months, I haven’t gotten anywhere with DROD, and I’m still hoping to play games I have for the N64! As a game developer, I’m behind when it comes to actually playing games.

My project is moving along, especially in the past month when I have been doing a much better job of working on it. Does everything else getting put off become a natural consequence of essentially working two jobs, leaving little time for anything else, or can I be more careful about balancing my life?

One person told me that he does things in spurts. One week he’ll play games, then the next week is all work, although he didn’t say that he purposely scheduled his weeks in this way. It sounded like it was based on whim rather than conscious choice, though. Perhaps if I purposely decided that this day or week is dedicated to specific aspects of my life, I wouldn’t feel that they are getting neglected. After all, they are on my calendar, so when their time comes, they’ll be dealt with. You can’t schedule everything, of course, but for those things that you can schedule, they can get blocks of time set aside.

Exercise isn’t really something you can do in spurts. You’re either exercising or you’re not. Reading books is something you can do in spurts, though. I could probably finish my current book and a couple of other books if I dedicate an entire day or weekend to it. I could take an entire week to play video games, catching up on what I’ve been missing.

But if I schedule a week to a specific set of tasks, I then worry that it will be a month before I get to something. I don’t know if it will result in balance as it is more like consciously choosing to unbalance myself. If I play games one week, read books and articles the next, that’s two weeks in which no progress is getting made on game development. On the other hand, I could do a better job of dedicating certain days to certain tasks.

I was stressed when I was trying to work 20 hours on game dev and still expected to fit everything else into the week as well. I was setting vague and unrealistic goals without realizing it, and I don’t think I was fun to be around. I’ve been neglecting my weekly reviews, so I need to reboot my organizational tools, as I have too many calendars and lists. I need to make conscious decisions about how I am going to spend my day, my week, my month, and my year.

None of the above is really all that new. It’s just nice to remind myself once in awhile since I seem to fall in and out of it.

Categories
Game Development Personal Development

Thousander Club Update: August 28th

For this week’s Thousander Club update:

Game Hours: 176 / 1000
Game Ideas: 432 / 1000

Target: 651

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

Categories
Personal Development

Facing Reality

As I said in my weekly Thousander Club update, I was worried about making a game for IGF 2007.

Last year, I posted about my decision to enter the competition. Rereading the post, I found I became angry at myself. In October, I said “I’ll obviously need to have a game to submit, but I have the rest of the year to make one.” Well, a year is almost up, and it’s been a year since I first started working on Oracle’s Eye, and I have nothing to show for it but an engine that doesn’t play a game yet. According to my records, I’ve worked over 170 hours on game development-related tasks. I have created a simplified text-based boardgame simulation, which helped to secure my current day job and teach me about component-based development, so I guess that counts, but I am upset with myself for not having better results.

Something prevented me from acknowledging this anger at first. I think the problem was that I didn’t realize it was self-directed. It’s easy to get angry at the world, other people, or inanimate objects when you aren’t aware that your current situation is the result of your own actions. Blaming others is easy, but when you realize that you can take responsibility for your own actions, you feel empowered.

I get that. I might have taken it too far, though. I was angry at myself, but as soon as I even felt a hint of anger or frustration, I would dismiss it. “There is no point in getting angry as it is your own fault you are in that situation.” Meanwhile, my subconscious was probably screaming, “YES, YOU BEAUTIFUL MORON!” and then became even more frustrated since I wasn’t paying attention.

Sure, being angry with yourself isn’t going to be fruitful by itself, but you need to realize that there is something to be angry about in order to do something about it.

Now that I know that I am angry, what can I do about it?

I can face reality.

Last year I said would make a game and submit it to IGF, even though I had no specific game in mind to create. Months into it, I was thinking that I would make a game after I finish Oracle’s Eye. Months ago, I thought that OE might be the game to submit because there wouldn’t be time to make another. These past few weeks, I was hoping to have anything completed by the due date. Now, I think I will need to give up on my goal.

Was it too much to think that I could create a single game in a year? I don’t think so. If Game in a Day is possible, and it is, then I should be able to come up with something over an entire year. Was my project too ambitious? Maybe, but I cut a lot of features and left it with some really basic gameplay. I couldn’t seem to pull it together anyway.

Part of my problem was that I didn’t have a single focus. First I was working on OE. I found that small changes would require a lot of rework. After some time I decided that I should create a new engine to make development easier. A component-based framework would make game development almost as easy as editing a configuration file. Of course, creating one is more difficult than to hack away at a single game. The work is still there. It’s just moved from one end of development to another. I also took a little over a month to complete the boardgame simulation. While it was a good experience, I shouldn’t have taken such a long break from OE.

The bottom line: I’m not satisfied with my performance for the past year.

I’ve been taking some time to think about what I am really trying to do and how I am going to do it. I will post at least some of my plans on this blog. I’m not sure how I am going to improve my situation, but I am going to find out, and then I am going to do it. Wish me luck!

Categories
Game Development Personal Development

Thousander Club Update: August 21st

For this week’s Thousander Club update:

Game Hours: 171.5 / 1000
Game Ideas: 432 / 1000

Target: 630

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

I don’t have much to say in this update except that I went to Iowa this weekend and overtime at my day job needs to stop.

Categories
Game Development Personal Development

Thousander Club Update: August 14th

For this week’s Thousander Club update:

Game Hours: 166.5 / 1000
Game Ideas: 432 / 1000

Target: 609

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

This past week was another one spent mostly at my day job, and so all of my development happened on Saturday and Sunday. I probably could have spent a few more hours in development, but I let distractions get to me, the least of which was the five to ten minutes being tempted to learn Klingon while playing chess online. Thanks, cliffski! B-)

As suggested by others and my own thoughts after writing about porting physics code, I’ve decided to stop worrying about generalizing my engine too much. I will focus on making a Pong clone. I set August 18th as the date that I hope to have it finished, and I spent this past weekend working on creating some simple sprites for the game and designing some classes I would need for it to work. I already knew that if I wrote up a configuration file the way I think I would want to use it, I could code to make it work. I just never think to create other assets. Creating the graphics first helped me to focus my efforts, which allowed me to be efficient with my limited development time.

I’m a bit worried that I will miss the IGF 2007 submission date, but I believe that I can still make it with some serious effort. On the other hand, I haven’t finished a game since a Pac-man clone I did in QBasic in 1998. Is it unlikely that I can make even a slightly innovative game in less than a month?