[MUD-Dev] Apple WWDC?

Brian Hook brianhook at pyrogon.com
Wed May 15 11:26:11 New Zealand Standard Time 2002

Amanda Walker said:

> Any game development is highly speculative.  Targetting more
> platforms expands your possible market: like anything else, you
> look at the costs and benefits and make a SWAG.  Speaking
> personally, as someone with a lot of multiplatform experience and
> a fondness for niche markets, I think that the Mac & advanced
> console markets have a lot of untapped potential for MMO games and
> environments.

Amanda makes great points, and I'd also like to emphasize another
reason to go for cross-platform -- it reduces your dependence on a
specific processor, operating system or compiler.  If you write code
portably and handle abstractions well, then you can change your
server deployment strategy without hurting yourself too badly.

For example, you develop your server on the assumption that you're
going to be using Linux/x86 as your deployment platform, but now it
looks like Linux on Dec Alpha (or whatever) makes more sense.  If
you've coded "correctly", the transition won't be nearly as bad as
if you've hardcoded everything assuming little-endian layout and
32-bit addressing.

By writing portably, you've isolated yourself (as much as reasonably
possible) from the vagaries of your deployment platform.  If you
opted for Sun early on and were looking at a US III + Sparc
deployment and now suddenly the cost differences are so great that
FreeBSD/x86 makes more sense, instead of a potential rewrite of
large chunks of code it should take a day or two to resolve most of
the differences.  And once that's done, it should just work any time
you migrate from platform to platform.

In addition, you can isolate yourself from tool vendors.  Instead of
locking yourself into a niche tool vendor that can suddenly lose
relevance in the marketplace (cf. Borland C++ or Watcom C++), you
configure things so that converting from one compiler to another is
trivial.  My code base cleanly compiles between GCC 2.95, GCC 3.x,
MSVC 6, and CodeWarrior.

Finally, if there are other opportunities that arise that you didn't
think of that deal with a specific platform, you can take advantage
of them quickly.  If a company were to approach me about a custom
version of our game for an OS I know nothing about, the port would
still probably take less than a week.

Case in point: I got my codebase running on PocketPC (WinCE 3.0,
StrongARM 206MHz processor, no floating point or integer divider, no
VM) in less than 6 hours.  I hadn't really thought about the
PocketPC/PDA market at all that much until I actually did the port.

Anyway, point being that writing portably costs very little in
development time and has a lot of advantages.  The primary
disadvantages relate to deployment, not to development.


MUD-Dev mailing list
MUD-Dev at kanga.nu

More information about the MUD-Dev mailing list