Yes. Indeed something can be randomly generated once and forever statically part of a game.
This is something I've never considered for addition to a game, but it strikes me as a good idea for any game wishing to package their base / zones as a "stock" distribution. We already know that many people download their favorite base, fire it up, change the wizlist, and start posting what a great new customized game they have that needs players.
Would it help to alleviate some of this, even a little, by randomizing some of the pathing between cities or other major hubs? Most MUDs either use a static concept of rooms in linear fashion or a wilderness overlay to travel between zones or points of interest. I think this would be particularly useful for games that utilize rooms so instead of knowing the next city is 5 rooms west, 3 rooms north…It may be different on each MUD using that stock source by randomly re-generating the exits on the initial game boot. That way each MUD is slightly different, but will not have the world constantly shifting with each reboot since we only randomize the exits on the first ever boot.
I have nothing against stock zones, as some of them I've played are still some of the finest examples of building I've seen, but I think this would be one more thing to help add a little extra flavor to most MUDs, and maybe break (for better or worse) the advantage a more experienced player from a similar game would have over a newcomer in terms of speedwalk paths, etc.
Particularly I think it could help if some of the "grind" zones as they were could be randomized. It'd be interesting enough if the algorithm was good. Well, good enough that new muds wouldn't all be clones and incentive for expanding from the stock codebase.
It would be pretty interesting to generate a world or zone in a similar style to Dwarf Fortress. But if you've got a tool like that, is it really worth making it part of the mud? You might as well release it as a separate zone-generation tool - or even put it on your website as a web application, so that people have to visit your site to generate the zones.
The main challenge with such areas is generating decent and varied descriptions. I guess you could leave that up to the people who download them, and perhaps just use some basic filler text to get them started - but IMO it's the descriptions that usually take the most work anyway.
11 Mar, 2010, Hades_Kane wrote in the 4th comment:
KaVir's concerns about descriptions was a sentiment I have to echo, as that's the first thing I thought of.
In order for this to work, the descriptions would have to be either very generic, or use some sort of system that partly generates the descriptions based on the layout of the rooms in relation to one another in order to accurately describe the path the player is on.
One way you could approach this is to try and come up with some algorithms for determining how far away something is visible. You can't really use LOS, because the map you're generating is essentially 2D. IE: while you might use a 3D fractal to build a height map, most muds will map the height values to sector types, which don't really have their own elevations.
But, you can try to simulate it. One assumes that a tall mountain range is probably also pretty wide at its base (the foothills). So, a small clump of hills with only a few mountains might be visible (in the descriptions) from 10 sectors away, whereas a large clump of mountains might be visible from 50 sectors away.
The opposite is also true. If you're in a small woods, you can catch glimpses of the mountains every so often. If you're in the middle of Mirkwood, you probably can't see anything but trees. So, being in a dense environment would cause you to reduce the "visible radius" of anything not local to the environment.
You could do pretty decent approximations of how much you can see around you based on the sector you're in. If you're in a forest, chances are that you can't see much. If you're in the middle of a mountain range, you probably can't see much other than the mountains. If you're on the edge of a mountain range, you should be able to see for a while in whatever direction the mountains stop. If you're on hills, a similar story.
In other words, you can assign a height of 0, 0.5 or 1 if you're in anything-but-hills-and-mountains, hills, and then mountains. Then assign sector density, e.g. plains are not dense whereas forests are. Density of a forest wouldn't matter if you're on a hill, because your line of sight vector doesn't go through the forest but above it (as a diagonal w.r.t. the flat plane).
I wasn't really proposing this for the bulk of things, but more like all the generic filler a lot of games end up having just to take up physical space between zones. Stuff like simple forest paths where the descs end up not being much more than "You are deep within the forest; the path continues further." It wouldn't be too hard to scramble the NSEW exits in a situation like that unless parts of your cities actually note "Town XYZ can be seen over the horizion to the northwest, through the forest." then the forest ends up taking you SE or something.
Depending on the level of detail you want in a game, sure. Look at things like all the GodWars MUDs floating about, though. Most people turn off all room descriptions for 90% of the gameplay to save on screen scrolling (using them for the 10% of the time you are trying to figure out where somebody is hiding) and most games use the same identical base world of zones, with maybe one or two extra added.