Month: December 2006

Dragon Quest VIII

I’d heard a lot about this game when it was first released. Sadly, most people who bought it at the time did so because – OMGWTFBBQ! – it included a demo of Final Fantasy XII with it. Those people missed out. This isn’t like that Metal Gear Solid 2 demo being released with Zone of the Enders.

I’m about ten hours into Dragon Quest VIII, and honestly, it’s the best console RPG I’ve played in a long, long time. It’s gotten very positive reviews but most reviewers have suggested that the game isn’t for a general audience since it uses such archaic game mechanics.

I personally think that the game stays true to the Dragon Quest line but also makes a lot of concessions that make the game easier to play than older games in the series, and I actually would recommend it for a general audience.

Yes, the game is tough. But that’s okay. In most RPGs nowadays, random encounters are effectively yard trash, pretty chunks of XP that will hardly give you any trouble at all. Thus, fighting them is boring. Final Fantasy XII tried to fix this problem by introducing the Gambit system, which allowed you to automate such yard trash fights. What a concept.

Dragon Quest VIII instead solved the problem by actually making just about every encounter a possibility for your party to wipe. When you enter a new area, the enemies there are typically capable of killing you if you’re unlucky and encounter a group of five or six toughies (especially if they get to act first). Thus, encountering a new enemy type is interesting, not boring…the player thinks, with some trepidation, “Huh…I wonder what he can do.”

But you have a good chance of fleeing from anything other than a boss fight. Your main character will quickly learn the spell Evac that will instantly exit whatever dungeon you’re currently in, and soon learns the spell Zoom that allows you to teleport to any place you’ve already visited – even dungeons. And wiping causes you to merely get resurrected at the nearest town with the loss of half your gold – there is no “Game Over” screen in Dragon Quest VIII. So death is annoying but no more than that.

And as if that weren’t enough, your secondary character, Yangus, quickly learns an ability called Whistle that instantly causes a group of enemies to spawn and attack you. So despite its old-school rep, leveling in Dragon Quest VIII is actually less boring and faster than in just about any other console RPG I’ve ever played. Just find an area where the monsters are tough but killable and have Yangus whistle over and over. When you’re getting low on health and mana, Zoom to town, rest up, Zoom back to the dungeon and do it again. Once you’re carved out of wood, go complete the current plot point.

Plus, the game is pretty. It’s pretty WoW-style, which means that the game isn’t any kind of technical achievement but has a clean look and nice textures and models. The voice acting is actually quite good, with the cheesy characters sounding cheesy and the serious characters sounding serious and the tough characters sounding tough. The music is quite nice, and it’s almost all streaming digital stuff that was composed by Koichi Sugiyama and performed by, oh, I don’t know, the TOKYO METROPOLITAN SYMPHONY ORCHESTRA. The Japanese do not look down on games as an inferior medium like Americans do, which is what makes uber-coolness like this possible.

And it’s $20 new now. Definitely worth picking up if you’ve got a PS2 and like console RPGs. Or if you have a PS2 and have never tried a console RPG.

Merry Christmas, Game Developers!

I hope you and yours have a wonderful holiday.

(Me? I’ll be glad when it’s over…or at least when the cooking is done.)

There’s a Hole in my Soul…

I guess it’s time for me to stop messing around and admit to myself what I really want.

So what is it I really want? Well, let’s see. Exactly what projects have I undertaken since I started this blog back up two years ago?

I wrote an rpg.

I wrote an rpg team-based combat prototype.

I wrote a little arcade game.

I tried to write an RPG in one page. (That’s on permanent hiatus by the way; RPGs are just too information-dense to do in one page of source. I might try to write one in two pages later, we’ll see.)

And now I’m writing a 3D engine with a fixed 3/4 perspective.

Let’s face it; I want to write a 3D RPG.

Specifically, I want to write this 3D RPG:

The Real Ultima IX.

There’s a hole in my soul, and it’s Ultima IX-shaped. This Wikipedia article goes over the basic facts that lead up to the train wreck that Ultima IX became.

The version of Ultima IX I am referring to is the second design mentioned in the Wikipedia article, the one Mike McShaffry was working on. The one before the entire team got pulled off to finish Ultima Online and before that team subsequently quit and before EA execs started saying things like “It will be our Tomb Raider 2” and before the game was redesigned five times by people who knew nothing about Ultima.


But back when I was still working at Origin and the game was still in development, the mantras going around were “The plot is going to be a remake of Ultima IV” and “The engine is going to be Ultima VII in 3D”. The early screenshots certainly seemed to bear that out, and my anticipation was palpable. It led me to my doom at Origin, when I decided I wanted to test Ultima IX instead of Ultima Online.

There were four aspects of the original design of Ultima IX that I felt were vital to the game’s appeal.

* The game was fully 3D.

* The game utilized a fixed isometric perspective.

* The game had a streaming world.

* The game was party-based rather than a single-character game.

I don’t think I’ve ever seen another game with all four features. The closest I’ve ever seen was Dungeon Siege, which was much closer to Diablo than Ultima.

So I guess if I want to play such a game, I’ll have to make it myself. The problem, of course, is that such a game is way to big for me to make myself. And yet, looking back over the work I’ve actually done over the last year, it’s obvious that I’ve been subconsciously making sure that everything I did somehow contributed to the overall goal of making a 3D RPG. So I may as well just come out and admit it.

Now, this does not mean that I won’t finish Planitia. Quite the opposite; I intend to make all my newbie 3D mistakes on Planitia instead of on my 3D RPG. But after that…well, there’s no sense putting it off any more. It may not be a big 3D RPG; it may not be a very full-featured 3D RPG; but for cryin’ out loud, I need to write this 3D RPG if only to get it out of my system.

Comment Spam Again

I had to nuke over a hundred comment spams today. They all got caught by the moderation filter and none made it onto the site, but it’s getting ridiculous.

Therefore I have started using the blacklist. I didn’t really want to do it, but I don’t really have a choice. Posts with blacklisted words now get insta-nuked – they don’t come to me for moderation. They’re just sent straight to the bit bucket. So if you post a comment and it doesn’t appear, it’s possible you’ve used a blacklisted word.

(What are the blacklisted words? Well, if I use one, this post won’t show up so I can’t tell you. Just look inside your own spam filters for examples. I will say that talking about various parts of male and female anatomy, modern popular chemicals, and certain card games will trigger the filter.)

I hate to do this, because it puts part of the onus on you guys to not use certain words or phrases in your posts, but I just don’t have the time to visually look through a hundred comments a day and see which ones are valid and which ones are spam. Sorry, guys.

I Dream Of GameDev…

Had a dream last night about game development.

First, I must explain. I occasionally have very vivid, lifelike dreams that tend to hold together even after I wake up. It’s almost like watching a movie while I sleep. I’ve gotten some very good ideas this way, which feels like cheating.

This was one of those dreams. I was interviewing in person at a big game development studio that was part of Microsoft’s gaming studios. They wanted me to work there very badly (for some reason) and they were pulling out all the stops. I toured the main building of their “campus”, which was opulently appointed. They fed me well. I shared an elevator ride with Bill Gates. (Neither of us said anything.)

Then the studio heads sat me down and inundated me with their “vision”. They’d shipped one game that had been a huge hit and their stock with Microsoft was rising. They told me not to think of them as a “development studio” because that label was too limiting.

See, there was this band, said one guy. (He named a band that sounded pretty famous, but I wasn’t a fan of them and now that I’m awake I don’t even remember what band it was.) Anyway, this band stopped calling itself a “band” and started calling itself a “group”. This way, when they performed they were free to do whatever they wanted – recite poetry, give an ontology lecture, or even play a little music – and their fans could presumably listen to what they wanted and not listen to what they didn’t. It was all about freedom, baby!

So this guy tells me not to think of them as a “development studio” but as a “group”. He pointed to various small projects employees of the company had done – things like card and board games, and smaller indie-style computer games – as indicative of how this company didn’t crush their employee’s freedom, maaaaaan.

Then I was invited to a general employee assembly. I managed to get away from my handlers and sat down next to a young female programmer. We started talking about realistic foliage placement on heightfield terrain and she invited me back to her office to see some of the stuff she was doing. I accepted her invitation gladly.

We left the main building and started walking through what I’d thought was a vacant lot next door. It was full of standing but gutted and useless buildings and trash. A warehouse at the back was where the employees actually worked (the main building was solely for the owners and directors and to impress investors). As we walked we were joined by other employees on their way back to their cubes after the company meeting. As we talked it became clear that these people were frustrated by the complete lack of direction of the company, and were doing these little projects just so they could be doing something and keeping their skills from deteriorating. What they wanted was a single big, company-wide, challenging project like their first game was and that was exactly what the directors of the company refused to give them. They did this in the name of “freedom”, but it felt more like they were doing it in the name of “avoiding responsibility”.

That’s pretty much the point at which I woke up, having already decided that I wasn’t going to take the job.

What’s my point? I guess I don’t really have one that wasn’t already made by my subconscious. That dream was just too good to forget.

(DISCLAIMER: This really was a dream. It has nothing to do with my current employment. Aspyr is, if anything, the exact opposite of the company in my dream. I love it here. It’s stupid that I even have to say this, but it’s true.)

Dungeon Keeper 2 Tip…

If you get a hankering to play Dungeon Keeper 2 again and you’re running Windows 2000 or Windows XP now, do not patch the game. The patch actually introduces a sound stutter and crash bug that wasn’t in the original version. True, you won’t be able to play multiplayer, but who plays DK2 multiplayer any more?

Planitia Update 2

Looking better?


I figured that I needed some real map data to work with instead of just a jiggled heightfield so I could make sure everything was rendering properly. I wanted to use some data from Dungeon Keeper or Dungeon Keeper 2, but their file formats were fairly impenetrable and I didn’t want to spend too much time getting the data since it was just for test.

Fortunately, I then searched for Syndicate Wars map data and was rewarded with:

The Unofficial Syndicate Site

This site covers all three games in the series and even goes so far as to deconstruct the data files for each game, so I was able to get some heightfield data very quickly from it. I still don’t have any real lighting, but Ryan suggested that I alter the color of vertices based on their height to show elevations and that’s working nicely for now. The camera control works at least as well as Syndicate Wars’ did, though I’ll probably add some smoothing at some point. Proper textures would be nice but that would require figuring out a rather arcane texture coordinate system and it’s not necessary right now.

So I guess it’s time to stop messing around with this and start dropping units onto the heightfield! Hopefully that won’t take long.

Planitia Update 1

Welcome to Planitia.


I know, it doesn’t look like much. That’s a heightfield with the height slightly jiggered so it’s not perfectly flat. It’s textured with the grass texture from Ultima VI. And there’s no lighting, which is the worst part. That’s why there’s no good definition on how the terrain actually changes.

But I wanted to post this anyway, because I met an important goal – I now have a 3D RTS-style camera control system working. You can move along the terrain using the arrow keys or WASD cluster, rotate the map about the viewpoint using Q and E, and zoom in and out using R and F.

The next step is to get units into the game, make them selectable by the player (which will require raypicking), make it so you can click on the terrain to give them movement orders (which will require an even more difficult version of raypicking) and have them move across the terrain in the proper manner.

No matter what kind of game Planitia ends up being it will needs these technologies, so I can go ahead and implement them while I’m still thinking about the design.

Name That Game 12!

Crud, I forgot to post this yesterday.

Again, I don’t know how tough this one is going to be. I deliberately tried for something slightly easier, since last week’s was such death. But hell, I didn’t think last week’s was that tough…

I've got it!  Super Monkey Ball!

Name and developer, please. Your reward? Oh, you want a reward? What, free amusement isn’t enough for you, you want even more?! I work and slave over a hot compiler all day long for you people, and you’re just never satisfied! Go to your room!

Sacrifice, Part 2

Okay, I spent most of the weekend playing Sacrifice. I used cheats to take the edge off. I really wanted to see if I could pinpoint where this game went wrong.

I’ve talked a bit about the design of the GUI and how it hampered Sacrifice (the fact that you are playing an RTS game with a third-person shooter interface). But I feel that there are a couple other aspects of Sacrifice that went at least partially wrong in the design of the game itself.

Sacrifice uses three major game design elements:

Rock, Paper, Scissors
Tug of War
Control Points

The Rock, Paper, Scissors element comes into play early on, and deals with your unit types (of course). The three basic unit types in Sacrifice are the Flyer, the Fighter and the Archer.

Flyers fly and have short range missile attacks. They can attack land or air. They tend to be fast, but quite weak. Therefore, flyers are perfect to kill fighters, because fighters cannot hit them back.

Fighters are land-based attackers. They have no range and can only attack enemies on the ground next to them. They tend to be slow, strong and hit hard. They are perfect for killing archers, because archers cannot do enough damage to them to kill them before the fighters can engage them, and the archers tend to go down quickly to the heavy damage of fighters.

Archers are land-based attackers with very long range missile attacks. They can attack land or air. They tend to be moderately fast and strong. Thus, they are perfect for killing flyers, because the typically weak flyers die long before they can get into range to use their own missile attacks.

The Tug of War element is also introduced right away, and deals with the major resource of Sacrifice – souls. Every creature in your army must be summoned, and you must have at least one soul in order to summon a creature (larger, more powerful creatures require more souls). You start each mission with a handful of creatures and a small number of souls. The only way to get more is to kill enemy creatures – when a creature is killed, its soul is released and floats above the body. If the creature was yours or allied to you, the soul will be blue and you can just pick it up. But if the creature was an enemy, the soul will be red and must be converted first, requiring you to cast a spell on it that causes a special unit – the “sac-doctor” – to appear. The sac-doctor drags the soul back to your altar and sacrifices it. Then you get the soul. Needless to say, this process can take a while.

Thus, it’s easy to see that there are only a finite number of souls on the map – the ones in the creatures you start out with, the ones in the creatures you will fight (or are owned by the enemy wizard), and the ones in any neutral entities on the map. The real goal of playing a Sacrifice mission is to play tug of war with the enemy wizard, stealing his souls and converting them while making sure he does not do the same to yours. I think this mechanic is the cause of a lot of the frustration I had with Sacrifice. A single bad battle can erase a lot of hard work on your part and even make a mission impossible to complete.

The final element of Sacrifice’s design are the Control Points. These are mana founts, places where mana spouts out of the terrain. Your wizard needs mana to cast spells and his mana doesn’t simply regenerate – he must draw it from a mana fount. If a wizard stands near a mana fount his mana will regenerate slowly. You can make the mana regeneration more efficient by building a manalith on the mana fount. This also means that no other wizard can now recharge from that fount. The more manaliths you build, the faster your mana regenerates. Thus it’s vital that you first claim all the unclaimed mana founts and then destroy all the enemy’s manaliths, building your own in their place. This raises your mana regeneration rate and reduces his.

Manaliths are also vital because when you die, you must recharge your mana to come back to life. If all the mana founts in the level have enemy manaliths on them, you have no place to recharge except your altar itself which is very slow. And at this point your enemy is probably attacking your altar, meaning you’re probably about to lose the game.

The Tug of War element is the most controversial to me. Tug of War occurs when the resource on a map are indestructible and shared. My friend Dave Shramek has mentioned over and over that he hates base building and just wants an army to command. If I give the player such an army and he has trouble completing a mission with that army, what then? This mechanic does not allow the player to trade time for skill like “standard” RTS mechanics do.

But if the player constructs his own army from resources gathered, we’ve got the full RTS experience, which may not exactly be what I’m shooting for here. I suppose I could give the player a set number of “souls” at the beginning of the game that can be renewed but cannot be stolen…here, you have 25 souls and can summon these creatures. Accomplish this objective. If creatures die, their souls can be gathered and they can be resummoned; the souls cannot be lost. But if that’s the case, how do you lose the game?

More thought is required. To paraphrase Barbie, thinking is hard.