Jul 13

Make a sandwich and grab a soda

Tag: Full Games,MMORPG Tycoontrevor @ 7:29 pm

One continual problem that games have to cope with on modern game consoles is the speed with which data can be loaded from modern high-capacity storage devices (generally some form of optical disc).  As games have become larger and larger, it takes longer and longer to load the data from the disc.  CDs, DVDs, UMDs, and BluRay discs are fantastic for storing lots of data, but they’re typically painfully slow at accessing that data.

On XBox 360 and PS3, the solution which they’re taking to the problem is to optionally install the game data to the console’s built-in hard disk.  This means that they can still use the standard DVD-based authentication (like it or not), but enjoy the faster data access times of loading data from the system’s fixed hard disk.  One of the first games to actually do this was Capcom’s Devil May Cry 4, which is notable by Capcom’s blog immortalising the phrase “Make a sandwich and grab a soda”, to refer to almost any lengthy automated process which must be endured before the player can actually begin playing.

In MMORPG Tycoon 2, the world map is about 400 square kilometers of terrain, within which the player can craft his MMORPG world.  The initial state of this terrain is all procedurally generated (although it can be modified by the player at any time).  The procedural generation process is slightly slow;  if I generate all 400 square kilometers of terrain at the time when the MMORPG is first created, it takes almost a minute to calculate on my laptop, and creates about 120 megabytes of “cache” files (and both of these numbers are likely to rise, as development continues and the procedural generation becomes more sophisticated).  An alternate approach would be to let the player begin playing immediately, and instead generate and cache areas the first time the player actually looks at them.  This would lead to some stuttering the first time the player visited any particular part of his world, instead of the single monolithic “install” of his MMORPG world when he starts a new game.

What do people think?  If given the choice between occasionally stuttering gameplay, and a potentially lengthy startup process when starting a new game, do you have a preference?

10 Comments on “Make a sandwich and grab a soda”

  • langel says:

    I would go with the occasional stutter and a progress bar. But, perhaps, you could also put an option in the settings to flesh out the entire map if the user wants to.

  • Caligari says:

    I’d go the other way – I don’t mind waiting for an unreasonable period of time when I start (I DO install most every 360 game to the hard drive, now), especially if the payoff is less breaking into the experience while I’m playing. I figure that if I’m going to dedicate any period of time to a game I’d rather maintain my involvement AFTER waiting to start.

    Sounds like giving the option is a real possibility to consider…

  • Jordan says:

    I absolutely vote pre-generation. Imagine you’re watching a 60-second video on YouTube. Would you rather wait 10 seconds before playing it, or have it stop for 1 second every 6 seconds? No thank you.
    Dwarf Fortress’ world generation takes at least as long as yours will ever take, and it’s well worth the wait. I prefer being able to make a sandwich and grab a soda rather than have a huge number of pauses long enough to be annoying but short enough that I can’t fiddle with a rubik’s cube.

  • Meerkat says:

    I say add an option to choose the first or second option. Then the player can choose for themself.

  • JD says:

    Having to wait 60+ seconds to begin a game can be annoying. If it were coupled with an intro movie, then the first time through might not be noticeable. But, if you had decent replay value, the desire for skipping the intro movie would become a problem (since you’d be gen’ing the terrain behind the scenes).

    What if you did a mix of both … pre-generate the current chunk and the one more in every direction. Using the keypad as a visual … player is at 5 and you’ve gen’d 1,2,3,4,6,7,8,9. Then, as the player moves to the edge (let’s say chunk 4), that would become the center point and you’d gen the needed squares to maintain a “genned” box around the player (you’d have 7, 8, 5, 1, 2 already from the previous gen).

    Make sense? It’s tough to explain in a 1″ box. It’s a method I’ve used in random world-type projects. It’s more complicated than on-demand or pre-gen’d, but it gives you the immediate start-up and buffers the player from hitches when entering new areas of the world.

  • Wickedgenius says:

    I would rather wait at start up. Mainly because stuttering irritates the hell out of me but also because my computer being of a reasonable spec wouldn’t take too long to generate the world.

  • trevor says:

    Actually, JD, what you describe is exactly how the “on demand” approach works right now, except that instead of having nine chunks, there are 64 of them (each chunk is currently a 256×256 meter block, so 64 chunks gives you four square kilometers of terrain). I’ll have to make that ’64′ figure a tunable option as well, so people who want to improve their frame rate can turn it down, and people who want a longer draw distance can turn it up.

    Sounds like opinion is split enough that I need to make it optional which way to have the world generation work. Thanks for the input, guys!

  • Paul says:

    but then take a look at a modern game like sims 3, a game that already has a massive following, and its got a huge load time when someone wants to start a new game. yet they keep doing it, b/c its awesome. I think that if MMORGPT has quality and huge replay value, no one is going to get fed up with a starting load screen to the point where they shout out “I Proclaim This Load Screen Ludicrous In The Utmost; I Will Forevermore Endeavor To Instead Bake Toast Upon The Merest Thought of MMORPGT!” especially if the load is for the beginning only. Sweat not my friend, for we have moste severe faithe in thine abilities.

  • Dan Haraj says:

    Word up from Sydney (on vacation) :)

    Dwarf Fortress used to take upwards of 10 minutes to create its world in earlier versions! On slow machines it could take over 30 minutes! The later releases tend to keep the time consistent to about 5 minutes. I wouldn’t worry about the monolithic initial install.

  • CogDissident says:

    Dwarf fortress manages to avoid flak for the lengthy creation time of the world, through giving player feedback. I say, show a zoomed out view of the world, with it all black and flat, and let the user “see” the world’s rolling hills being created. It may double the amount of time needed, but the player will not mind it nearly as much.

  • Reply