Categories
Game Development

Oracle’s Eye Development: Blank Screen, Again

Yesterday I worked a bit on Oracle’s Eye Prime. I managed to get a simple window to open. Nothing special at all, but it is a good first step. When I last started working on OE, I had the benefit of an existing codebase from last year’s June Game in a Day. Since I am starting a new engine, I had to reimplement some basic functionality.

The upside? I have a much better idea how the code should look. It took me less than an hour to get this functionality up and running, and I imagine getting Kyra integrated will take even less time.

I plan to use a configuration file throughout the development. Previously I would have hardcoded everything and worried about loading data later. Now, if I hardcode anything, it is meant to be replaced once the functionality is implemented. For instance, the title bar of the window has the string “Oracle’s Eye Prime”, which is specified in the code. Once I get a working loader for the configuration file, that name, as well as the dimensions of the window, can be loaded dynamically without recompiling.

I think I should be able to get quite a bit accomplished before June 15th. Epic, I’ll still play Quake 3 Arena with you if I manage to get OE’ to the same point as OE was when I stopped working on it. B-)

Categories
Game Development

The Game Loop

Some time back I was wondering how to implement the game loop. I’ve since become comfortable enough with the concept that I am no longer afraid of doing the wrong thing. Still, it is nice to know whenever someone tackles the subject. The Game Loop by Koen Witters covers three possibile ways to implement one. The article covers some of the reasons why you would not use certain implementations, especially with regards to extremely fast or slow hardware.

Categories
Game Development Personal Development

Thousander Club Update: May 29th

For this week’s Thousander Club update:

Game Hours: 87.25 / 1000
Game Ideas: 378 / 1000

Target: 378

I left for Iowa on Thursday night to visit some friends. I also had to watch my parents’ cat while they were out of town earlier in the week. Between driving to their house and preparing for the trip, I didn’t have too much time to myself. Not that I didn’t squander the opportunities that I had, but they were few and far between.

I spent a little time while I was out of the state with a notebook and pen. I have a few use cases that should help me focus on how my engine will work.

I also have two cats now. Diego and Gizmo might be a handful. I’ll see if I can get some pictures up. Yes, my blog will actually feature pictures of my cats. It’s come to this.

Categories
Game Development Games Marketing/Business

Cloning is Financially Successful?

The Cloning Innovation is an article at Game Tunnel that focuses on the indie innovation issue. It essentially says much the same that Jeff Vogel claims: innovation doesn’t pay.

In the mainstream games industry, making clones of existing games is a sure-fire way to make your offerings mediocre, resulting in poor reviews and horrible sales. In casual games, however, cloning a successful game means that you can also be successful.

Weird? I think so. Then again, I don’t spend much time on casual game portals. I’m not familiar with what millions of people are playing in terms of casual games. Perhaps people loved Bejeweled so much that they wanted to play the Bejeweled clones as well. Would a Professor Fizzwizzle clone do as well as the original? Apparently so, especially if you find an audience that never heard of the original game.

If it is the case that you can be financially rewarded for simply engineering the same exact game that your competitors are making, what does it say about the importance of innovation? If the customers don’t care, then the only incentive is for the indie to be proud of making innovative games on principle.

No, principles don’t pay the bills, but there are a lot of moral choices that people make simply because it is the right thing to do and not because there is something in it for them.

Categories
Game Development Personal Development

Thousander Club Update: May 22nd

For this week’s Thousander Club update:

Game Hours: 86.75 / 1000
Game Ideas: 357 / 1000

Target: 357

Well, my week was very unproductive. Until Friday, I didn’t do any work at all. For some reason, I had trouble waking up in the mornings. Normally I try to get up at 5:30AM, and if I get up late, it is still 6:30AM at the latest. I still have plenty of time to get ready in the morning. For some reason, I kept waking up after 7AM this past week. It wasn’t like I was staying up late, either. I went to bed early enough. I just had trouble waking up. And so the rest of my day was pretty messed up. It is interesting how much of a connection there is between waking up early and getting things done.

On the other hand, I did use this past week to catch up on magazines and other readings that I’ve let stack up. My inbox is down to manageable again.

Friday I was tempted to lie down and relax after coming home from my day job, but Uhfgood from #gamedevelopers suggested I work on OE’. I figured I would put in about 30 minutes at the most. Once again, starting something allowed me to keep the momentum going. I ended up working almost two hours. Once again, #gamedevelopers helped keep game development at the front of my mind.

Categories
Game Development Personal Development

Thousander Club Update: May 15th

For this week’s Thousander Club update:

Game Hours: 85 / 1000
Game Ideas: 336 / 1000

Target: 336

I managed to work a bit on Oracle’s Eye. Since I finished the text-based board game, I wanted to reuse the techniques in OE. Rather than make massive changes to the game engine, I decided that I should start a new project. I dubbed it Oracle’s Eye Prime.

Yes, it is risky to redo the engine. I know the countless stories of hobbyists who never finish a game because they decide to redo the engine over and over again. Finishing a game is what counts. Still, I think that what I know now compared to what I knew when I started OE back in August is enough to justify the risk. When I was adding features to the board game, they fell into place very easily because the code was so easy to work with. Compared with OE‘s current engine, which would require significant refactoring and editing to add any feature, and I think it makes sense to redo the engine.

Since I’m so good at project scheduling (“That’s a joke, kid.”), I’m going to estimate that it will take me about a month to get the new codebase up and get OE’ to the same point that I had OE. Ok, maybe three months.

Categories
Game Development Games Geek / Technical Linux Game Development Marketing/Business

Linux Gaming Feasability

Hackenslash had posted Is Linux Gaming Plausible?. It makes for a good read, although I felt it was light on details and didn’t provide much of a definitive answer.

However, a major disadvantage for Linux gamers is the availability of DirectX in Windows, a multimedia tool that allows developers to create applications easier for the Windows platform.

“Unless DirectX runs on a different platform, it (Linux game development) might not really take off,” Gotangco said, adding that Linux gaming and game development would most probably remain an “indie” or independent industry.

DirectX is a Windows technology, and as such it is platform-specific. I don’t see Microsoft opening up access to their API to other operating systems. Since some major games, notably Doom 3 and Unreal Tournament 2004, have been ported to Gnu/Linux without the “advantage” of DirectX, it shows that Gnu/Linux game development is entirely possible and doable. Like DRM, DirectX isn’t a requirement for game development.

Multiplayer game servers are almost always provided for Gnu/Linux, and so the porting effort shouldn’t be too difficult for the client software. Unfortunately, when a developer uses a platform-specific tool such as DirectX, the porting effort becomes difficult. To create a version of the game that runs on a different system, you essentially have to gut your game code to remove the DirectX-specific parts and replace them with something available on a the target platform. Most developers will decide that the rewards would be too little to justify the expense of making such drastic changes to the code.

Still, I don’t believe that game development will be so dreary on Gnu/Linux.

A few Linux gamers actually have ways of circumventing the cross-platform issue of playing an enticing Windows game to Linux, without having to port it. One answer is just emulating the game for Linux. But according to Zak Slater, this isn’t an accepted industry and he said it is better for users to buy Linux versions or directly create Linux-native games.

I am 100% in agreement with Slater. I am not a fan of technologies like Wine or Cedega. It’s great when it works, but I would rather have native support for my platform of choice.

While the Linux gaming industry would not certainly be able become as big as traditional PC gaming, both Slater and Gotangco agree that Linux gaming is there to stay. They suggest that Linux game developer-hopefuls can get their Linux game fix from Icculus, Pompom Games (www.pompomgames.com), Tux Games (www.tuxgames.com), among others.

I’ll also note that the Torque Engine from GarageGames is both inexpensive and cross-platform, so games like Orbz and Dark Horizons: Lore can have native Linux-based clients right out of the box. With more indie games like those, I don’t think that we’ll have a problem if game development on Gnu/Linux remained an indie industry.

Also, using open source engines will probably become more common in commercial games. The infrastructure of a game isn’t the game, yet developers always spend a lot of time on recreating it. Using existing tools just makes sense, and using open source tools gives you a number of advantages, including the ability of your more technical customers to give you more than a simple bug report.

I believe that gaming on Gnu/Linux is definitely plausible. It’s very difficult to tell how many Gnu/Linux gamers there are since there are hardly any games available for them and they’ll likely pay for their games on the Windows system for lack of a better choice. They WANT native games for their preferred OS, and so far there aren’t many options.

Categories
Game Development Games Marketing/Business

New Indie Game Dev Podcast: VG Smart Interview

Action noted that the new Indie Game Developer’s podcast is up. This time there is an interview with Joe Lieberman of VG Smart. Joe recently published the book The Indie Developer’s Guide to Selling Games, which I hope to receive in the mail today. The interview features some excellent marketing advice, something every indie serious about business should have.

Also, Action requests that if anyone has finished a game or two, he’d like to interview you! To find out how to contact him, check out the link above. Perhaps we’ll hear your voice in the near future.

Categories
Game Design Game Development Games General

Improved Creativity Through Serious Games?

I believe I found this link through Gamasutra sometime ago: Breaking the Grip of Dominant Ideas In Games: What Serious Game Projects Have To Offer Entertainment Game Developers

It basically describes the positive impact serious games could have on general game development. One of the most interesting quotes challenged the prevailing theory that “ideas are a dime a dozen”.

The field of serious games – with its intrinsic creative encounter of game developer and non-game professional – the latter involved in the real strategies and “games” of business, military, medicine, education, science and so forth – could offer itself as a form of “outside help” to entertainment game creators, even if this is a secondary effect. We game developers would be smart to take advantage of the opportunity.

Many people today in the game development (and other) industries see ideas as cheap. You’ve heard it said “Ideas are a dime a dozen.” This is not true. In fact, the idea that ideas are a dime-a-dozen is itself a dominant idea. What is true is that gimmicks – or little ideas – are cheap. Gimmicks are what is a dime a dozen, and everyone can think them up. True ideas, though, are exceedingly rare and extremely valuable. True ideas are visionary.

Categories
Game Development Personal Development

Thousander Club Update: May 8th

For this week’s Thousander Club update:

Game Hours: 80 / 1000
Game Ideas: 315 / 1000

Target: 315

8%! Another 20 more hours and I will hit 10%, which will be a good milestone to reach.

While trying to stop up any memory leaks, I was using Valgrind. The following output was great to read:

==21519==
==21519== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 17 from 1)
–21519–
–21519– supp: 17 Debian libc6 stripped dynamic linker
==21519== malloc/free: in use at exit: 0 bytes in 0 blocks.
==21519== malloc/free: 6,543 allocs, 6,543 frees, 177,245 bytes allocated.
==21519==
==21519== All heap blocks were freed — no leaks are possible.

w00t!

I can finally move on to Oracle’s Eye again. After a two month “break” working on this text-based board game, it will be great to make progress on my original project.

Also, I’ve found that by wanting to add more hours to record for the Thousander Club, I am getting useful work done. If I wasn’t thinking about at least trying to meet my targets for the Club, I doubt I would have spent as much time as I have been working. By measuring what I do, what I do gets done.