Brad Wardell's Blog


Building a fantasy world

Published on Thursday, February 26, 2009 By Brad Wardell In Elemental Dev Journals

0577_001

If you’ve ever played D&D with friends, you no doubt got a feel that you were adventuring in a world that was much larger than just your party. Elemental is, in a way, about building that world.

Each game of Elemental is meant to be different and customizable in such a way that players can make those worlds theirs.  For us, that means having a world that feels organic. As you build things up, things begin to happen automatically. There isn’t a ton of micro management in Elemental by default (though you can really go nuts if you want).  Instead, trade happens largely automatically. You see people, caravans, etc. on the roads you build moving about living out their lives. You will even see parties of adventurers running around dungeons and stirring up trouble.

The player’s skill comes in by deciding how they want their fantasy civilization to evolve – what its focus will be, what direction it will take, etc.

The network of the damned

Published on Wednesday, February 25, 2009 By Brad Wardell In Demigod Journals

image

[scary voice]

Gathered from across the lands the QA team at Stardock has brought together the oldest and most terrible of routers, firewalls, shareware virus scanners, port blockers and beyond in order to create…

THE NETWORK OF THE DAMNED

After Beta 3A gets released, we will begin finding and solving as many of these horrible configurations as possible in order to help make Demigod’s multiplayer experience as bulletproof as possible.

And if you are one of those people who just can’t connect to games, after beta 3A, hang out on #demigod in the Impulse chat channel and we shall seek you out.

Living with Windows 7: Part 3

Published on Monday, February 23, 2009 By Brad Wardell In Personal Computing

Since 2001, when Windows XP shipped, most users have hovered between 1 and 2 gigabytes of memory.  That’s because 32-bit Windows really can’t use more than 2 gigs (technically 3 gigs).

With 64-bit Windows, however, there’s no real limit any time soon.  I predict that within the next couple of years you’ll see 16GB machines become pretty common and when that happens, lots of interesting things will start to happen again for PCs.

One interesting thing will be virtual machines. 

image

Running Windows XP within Windows 7 has a lot of utility to it as a developer but for most users, it’s largely meaningless. That will change as applications themselves start to be able to specify the conditions in which they run under. 

One of the things that has held Windows back has been backwards compatibility. But virtualization largely eliminates that issue because you could simply have programs run in their own VM.

image

It’s a real shame that Microsoft is even making Windows 7 in a 32-bit form because it just delays the migration to 64-bit computing.  The reason this is important is almost totally based on RAM.  This sort of virtualization isn’t cheap when it comes to RAM usage. But virtualization will free Windows to go in many different directions at once.  It’s the next big thing.

 

Related:

Demigod Beta closes tomorrow

Published on Monday, February 23, 2009 By Brad Wardell In Demigod Journals

With about 30 days until we go gold for the retail version and another 45 days for the BonusPak (day 0 update) update, we're going to close the beta to new users tomorrow.

From here on out, there will be a couple of new betas for the existing beta team to try out. Some of the updates will occur without requiring the users to download anything. But Thursday will introduce beta 3A which is a big deal in terms of fixing bugs and such.

I know we’re having fun beta testing!

 

image
My son Ryan (8 years old) draws the rook.

image
My older son Alex (12 years old)  diagrams the rook.

Demigod – Impulse Reactor: Multiplayer Skills

Published on Sunday, February 22, 2009 By Brad Wardell In Demigod Journals

I wish we had more time to communicate with the beta team on what we’re doing. I’m left with Sunday nights really to do that because the rest of the time we’re just in massive crunch mode.

So let’s discuss Demigod and its relationship with Impulse Reactor.

Impulse Reactor is a DLL that ships with games that want to make use of its features.  It doesn’t require the Impulse client to be installed on the machine. Impulse Reactor is a true virtual platform whose home isn’t in a client but rather in “the cloud”.

Here are some of the things we’re doing with Impulse Reactor and Demigod:

Chat:

image image

Starting hopefully with Demigod beta 3A, the Impulse chat will be able to be brought up in-game (here it’s skinned to look like Aero but we’re going to add the Demigod skin prior to its inclusion). 

By doing this, GPG didn’t have to spend precious development cycles on an in-game chat and we could build something pretty sophisticated (it’s standard IRC so you can be in the chat without being in Demigod).

Intellectual Property Protection

Copy protection, DRM, whatever name you want to call it. Impulse Reactor supports it. Stardock games like Demigod don’t require the user to keep the CD in the drive or “call home”. 

But our non-games have, for years, made use of this technology that we’re now making available to other players.  They can either incorporate it into their EXE (ala Steamworks) or they can just run a wrapper program that does it automatically.

For developers, it has the benefit of vendor neutrality – you don’t have to make users create an account to play their game.  For users, it comes with the benefit of being able to download updates or the full game over again from any participating digital distributor – not just Impulse which eliminates the concern of “what if company X goes out of business?” because it’s not tied to any particular vendor.

Multiplayer match-making

One of our goals for match-making with Impulse Reactor is to let users have a lot more control over who they play with.  So users can exile problem users and not have to worry about them joining their games as well as set other parameters for multiplayer.

Skill Ratings

With Demigod, we will be implementing the Elo skill rating system into Impulse Reactor. This has some important ramifications on multiplayer that are not immediately obvious.

First, we intend to include AI players in the rankings. This will give us a definitive answer as to how good the various AI players are because they’ll have an Elo score (Elo is the same system GPGNet uses in SupCom and Boneyards used it previously).

This gives us a lot of flexibility in setting up good multiplayer match making and having a robust, on-going way of ranking players. Plus, because it’s all on the server, we can keep tweaking this forever without forcing users to download new versions of Demigod.

We plan to have a ton of stats for players to look at and play with. Wait till the graphs and awards and such start showing up.

Multiplayer Connectivity

Impulse Reactor uses RAKNet to handle NAT negotiation. The challenge we’ve been having with Demigod connectivity has largely fallen on how to handle the “poison pill” situation (where someone behind a super nasty firewall who wouldn’t normally be able to play can keep an entire group from getting a game going).

We’ve debated a lot on how to handle poison pills (do we make the host eject them? should there be a time out? If so, how long? what do we do about malicious poison pills? etc.). 

Given that we’ve had mixed network 5 on 5 games, we know the system works pretty well in Beta 3.  But we have our work cut out to deal with initialization bugs, expanding the # of players who can connect at all, other various bugs that have to be identified, etc.

Now, you might ask, why use Impulse Reactor for this instead of something else?  The problem is, there really isn’t an alternative. The dirty little secret of PC gaming is that strategy games on-line have been quite a nightmare to get going with port forwarding and messing with routers.  Demigod, while being a very strong single player game, needs to a good multiplayer experience from day 1.

Sins of a Solar Empire, for instance, shipped with pretty good multiplayer – if you knew how to configure your router like every other strategy game. And like every other strategy game, the multiplayer community was relatively small.

By contrast, first person shooters with their dedicated servers thrive.  But if strategy games are going to become more mainstream, we need a simple, bullet proof way for non-techies to play multiplayer, hence Impulse Reactor.

..and…

There’s a ton of other cool stuff coming out for Impulse Reactor but we can’t yet talk about it.  But for those of you who have been waiting for a PC strategy game to finally take this stuff very seriously in terms of tournaments and rankings and ladders and such from day 1, Demigod is your game.