Lanessar (Jason) has been a PW Admin for close to 4 years, and is currently working as the Vice President for QA at a CAD software company.
PWs: Nature of the NWN2 Beast Part One
After having been a part in (and been working on) setting up a persistent-world type server for NWN2, there have been several truths that have come to light, building- and scripting-wise which anyone in their right mind has to consider immediately after deciding to do a PW project for NWN2.
Now, a lot of information being discovered is still covered by NDA, so I’ll have to deal specifically with the aspects which can be covered with the pre-release toolset, and common sense. Hopefully, after release, I’ll be able to cover more.
There are three basic ingredients to a persistent world that must be present (regardless of the type) in order to make it happen. One is an “unknown” factor at this point, and the other two are “common sense” aspects based on the increase in module sizes and quality.
First, allow me to say that the major concern that has been voiced over the forums, the walkmesh download, has not been fully addressed yet. Due to the fact that this spans both multiplayer and toolset, I cannot address that concern here in any detail.
I know that a lot of people consider the possible download to be akin to having bamboo shoved under one’s fingernails, and then said appendages dipped in lemon juice and rolled in salt, but from my standpoint (working with several hak-dependant worlds), I do not find the possible download of walkmesh files all that worrisome.
Again, you may be of a totally different mindset, and I do respect that. Whether they will spell the “dooom!” for PWs or not, I’d have to say mostly not. Your player base may consist solely of people in their mom’s basement, reeking of cigarettes and Doritos, with the empty carcasses of consumed Red Bull or Mountain Dew cans littering the darkened landscape, but they will exist.
If you find this to be a major concern, then I’d suggest staying out of the water until the matter has been decided and announced by the developers. The fact of the matter is, in the worst-case scenario (where over 100MB of walkmesh files have to be downloaded), someone will likely come up with some sort of program to download walkmeshes directly from the NWN Vault or some other site, better compression tools, or whatever else the brainy-types (who are not me) develop to overcome these issues. And 100MB compressed is about 1/10th the size of two recent PW’s haks I had to download just to try the places, which were loaded with players some five years after the release of the game.
As well, addressing a concern where the developers have not offered a final solution is like pissing in the wind. Useless, messy and after arguing about it on the forums, you are still pissy. So I’m not even going there at this time.
We do, however, have several points that need to be thought about BEFORE starting on your PW project. Without foresight on these points, you will have an unplayable world. Let me say that again, without foresight on these points, you will have an unplayable world. There are a lot of refinements from NWN1 that, if applied intelligently, will resolve many of the issues that PWs face in the coming days.
Without any further ado, and without any more gilding of the proverbial lily, here are the three points:
1. Areas. We’re not in Kansas anymore, Toto.
2. Basic scripted features. Whether they are dying, frying hordes of kobolds, or swinging around the Sword of DM-Slaying +5, these are always there and can kill your server.
3. Database. Without it, in some way shape or form, you do not have a “persistent” world.
The above key three make up most of a persistent world’s points. There is also hak content, but for a game this new, we’re not looking at professional-grade content for a little bit. If a world changes up their deity list or renames classes, that’s one thing. Adding functionality and support to the PRC will be something quite different, and (I’m sure as Stratovarius will discover) a tricky matter which will involve… workarounds.
Areas. Or, “We’re not in Kansas any more, Toto”.
Areas require a bit more forethought in the new game. Planning a server will be a careful process before even starting to build, for several reasons.
Single-player or even multi-player mods do not have the limitations that PWs face as far as area design go. Players are all in one spot, so this gives you basically limitless resources. A mod that’s 200GB will only have 300MB or so at any one time loaded into memory or in use with linked modules.
Persistent Worlds, however, do not have this luxury, as players tend to run all over at one shot. While someone with a server farm can overcome the numeric lack of areas pretty easily, there are still some basic rules that even they need to follow individually on areas or suffer a world which is lag-filled and problematic.
For our purposes, we’ll assume daddy is not a millionaire with an OC-3 connection to his house, and that rackmount servers are well beyond your price range. We’re considering your average PW host, with a computer sitting someplace.
First off is the “footprint”. For those thinking this has something to do with “Bigfoot” or the possible rarity of PWs being likened to the appearance of sasquatch, I’ll define the term here. Footprint is the basic amount of memory and system resources which a program will use given certain operating parameters.
There’ve been a lot of “theoretical” figure-figure posts that put a lot of “pie-in-the-sky” numbers for a footprint, which tend to leave out vital stuff like scripts running, the death of possibly up to 100 creatures with a spell at a shot, and say, five parties of adventurers running around killing creatures in ruthlessly efficient short order over a given period of time to get XP and get their grubby little hands on gold and loot. But from those numbers you can get a maximum number of areas, and whittle that down to a manageable number.
Now, before I begin, you’ll want to take a seat. Realize, there will be some light at the end of the tunnel here. It’s not that bad. As with any new project, you have to get the grim news first, so that you can then work with it and make it really happen.
So, here we go:
The maximum you can run on a Windows system (without any players considered) at this time is approximately 25 exterior areas (16×16) and close to 300 interior areas (16×16). The number goes up exponentially for interiors with the fewer exteriors you use. A single 16×16 is about 25MB, say, 35-45MB fully loaded. A fully loaded interior (same size) is about 5MB.
Factually, you can get more “space” in by using 32×32 areas (you get a maximum of 10 of those, or about 40 16×16’s), but there is a very real limitation to how many players you want in an area that size in a PW. Even 16×16 is pushing it very heavily. You probably want to use 8×8 or 10×10 area, where at all possible.
Here’s the problem. If you have a 32×32 area, and all the players are in that area slaying this and that, you get lag. It happened heavily in NWN1 and it is likely (read: certain) to be the same within NWN2. Again, I cannot get too deeply into this area as some of the actual testing (which has been done, by the way) is still under NDA. But let’s just leave it as “not a very good idea” to attempt to max out areas on a server with 32×32 exteriors. The top is a 16×16 if it’s a mountainous area with walkmesh cut out. Otherwise, stick with the 8×8 areas.
I’ve heard arguments about border tiles and how much space they use as opposed to any other area size, but we’re talking practicality here.
When practicality sinks in, we have the very real operation of dealing with a number of player characters, parties, and monsters all within a single area, scripts firing, and so forth. And that throws the math people’s numbers right in their faces. They do not consider the greatest strain on the server is not an area, sitting and lying dormant, but the player, who enjoys breaking or killing anything they encounter with startling ferocity. Some enjoy with great glee when they can cut down some thirty trolls with a lightning bolt and then watch the server do a backflip. Others just sit and talk and do nothing more stressful than having 563 custom outfits in their inventory. So it’s not really a predictable factor besides “this is the general number of players I am building for”, which is a controllable factor.
In NWN1, players accounted for 30% of a server’s footprint when you had 20 players on, over time. Obviously, if you want less players than that, or more, there’s probably a bit of a change. But needless to say, that’s the average. It’s probably higher with NWN2, but again, those are sort of undisclosable figures at this time.
Without any players, generally speaking, you’ll have about three 16×16 areas, and about thirty 8×8 areas (exteriors) to work with. A whopping total of 33 exterior areas. With close to three hundred 16×16 areas for caves, dungeons, shops and whatnot.
Truly, this game is Dungeons and Dragons.
By the by, I am avoiding such theoretical solutions as someone producing an exterior tileset hak as frankly, it’s not made yet. The exteriors for NWN2 are simply breathtaking, and smoke anything short of Oblivion for accurateness. All it requires is skill and artistry to make the area.
Besides, by the time someone finishes a working tileset which is anywhere close to the exteriors in NWN2, I’m fairly certain many of the initial problems will have been overcome, and the tileset will have about two years of time invested for a download few would use. Wait with baited breath on that if you wish, but realistically (for a release of your PW within a year’s time) it is not something we admins will take into account.
So, you now know your limitations. You’ve got your maximum number of areas… wait. Back it up a minute. He said “without any players” in those area calculations.
Yeah, I’m pretty cruel. I figured since the numbers people liked to consider that the Gospel, I’d throw those numbers in first. Then watch them as they wide-eyed gaze upon their perfect calculations being trashed by the only thing that makes any mathematician or programmer cringe: The end-users.
So, now, the real figures:
You’ve got the following as viable for a PW with 20 or so players:
Two 16×16 areas, 10 8×8 areas, exteriors.
Two hundred interiors.
One Admin.
Your exterior areas, no matter how you want to play it, will make up about 15% of your areas, total. Gone is the “nut, twig and berry” syndrome. You’re not remaking every road from Amn to Waterdeep in your server in glorious detail. PCs will no longer walk for three hours to get to the Dungeon of Dastardly Demise.
You could say, “OMGLOLz! We’re doomed!”
Aha, but you’d be wrong. With the advent of such an abundance of areas (sarcasm, if you missed that), you’ve got a new tool that Obsidian graciously gave you:
The world map.
With a simple targa file and some scripting (most of it done for you already with the OC shipped in NWN2), you have a new tool to span the continent. No, it will not take five weeks for players to travel from Arabel to Zhentil Keep (real time), but, you can use it to represent distances which would otherwise be about 10 minutes of walking through areas. Artists come in handy, as well as people skilled with Adobe Elements, or any number of other picture programs. Heck, even MS Paint.
Do not want to use the world map? Still planning contiguous areas like most MMOs?
In this case, you have two options:
1. Go back to NWN and continue there until hardware gets up to specs to run this stuff in that fashion. It’ll take about a year or two. Two years after this, we can go through this all again with NWN3.
2. Renew your World of Warcrack membership.
PWs are going to be far, far more like D&D Online than Everquest. If you cannot have that, then you’re not making a viable NWN2 server. Scream all you want, until major changes are made that either break the 2GB process limit for Windows, it gets ported over to Linux (and you can buy a 6 GB monster server), or file sizes get drastically reduced, it’s not happening. And I’m a practical fellow; I take what I have and make it work.
Even with a world map, that’s pretty small. That’s a grand total of about 212 areas, give or take some leeway. If this all comes as a revelation or shock to you, I’m sorry. Again, no one has made any world or module optimized to this size, so I’ll be the first to admit that I’m probably wrong, and this is all theorycraft.
However, considering that you have to take a worst-case scenario, I’d start low and build up as the software permits, rather than building high, and wasting a lot of work time in areas which have to be cut.
So, your world cannot be filled with dollhouse-style player housing, or “player contributed areas”. It’s not possible to manage all the refinements you’ll need for each area. I’m sure many admins have winced at a carefully scripted system for scratching a player’s cat throughout the module being wrecked by some yahoo builder overwriting stuff or not using standard naming conventions, weird resources getting imported, and so forth.
Admins have become QA for NWN2. Let’s get that straight. Your job is not building, not scripting, but mainly Quality Assurance over the areas. Even if you put someone else on that (rather tedious) job, you’ll need to double check it unless you have some C programmer-lately-accountant type sitting in your back pocket. It’s not to say you cannot do it; it’s just that 75% or more of your time will end up getting consumed in QA unless you are working on everything yourself.
Having played in areas for NWN2 with less-than-skillful building practices, and seeing those areas in all their eye-bleeding “glory”, I can assure you that quality of areas will be the number one concern for a PW admin.
Bland areas will keep players busy, as will spawns and traps and quests. Breathtaking areas beautifully made will keep them unless you’ve decided to cater to monkeys for your general player base.
In which case, put a lot of banana trees in the module. You’re good to go.
What does this mean, in layman’s terms?
Each area in your PW can no longer be “just pretty to look at”, or filler, or anything else we are used to in NWN1. It has to be a “go-to” location for some reason or another. And they have to be pretty.
My general rule based on the above limits is, each 8×8 area has to have at least five interiors linked to it (whether it be one dungeon of five levels, or five separate interiors) to be of real value in the module, and worthy of existence in your project. Seriously, if it’s not that useful, do not keep it. Exteriors are now a valuable commodity, worth more than their weight in gold for a PW Admin. Use them wisely, and have all this planned out before starting.
Towns are simple for this equation. Lots of doors, hey! Fill in the doors!
Exteriors in the middle of a forest or swamp (the most frequent violation of the above rule that I’ve seen in testing) have to be handled with care. Deserts get really scary. They’re supposed to be deserts, right? Remember now, you’re not making empty areas to create the illusion of a desert. Your area has to cover ALL of that in one 8×8 area, as well as be useful.
Hence comes the planning part. Say you’re making an area in Cormyr, which is not a town. You might have pretty waterfalls, rock pillars, even a desert. But you’d better have interiors in there worth a damn. Or you’ll find out the hard way that planning should have been done far in advance on your project, as players look at floating trees above a cave and wonder what the builder was smoking when he made the area.
Keep in mind (and I’m sure skilled builders will agree with me), each exterior you are making will take about 20 hours to create. Interiors take less, but still hover in the 5-10 hour range. That’s quality areas, mind you. On areas alone, you have some 2000 hours of work ahead of you for the area cap.
Making a whole module up to cap is usually not a good idea. Your players, fickle as they are, may want something different than what you wish in the way of adventuring spots. You’ve got to be flexible. And then there’s the three months for a team of ten to build those areas (and, let’s face it, you’re probably not supported by ten quality area builders). Three months with no product makes anyone but the people involved in software development lose interest really quickly.
So, first advice: Start small. Do your starting town or city in all its glory. Spend a LOT of time making it and making sure it’ll be something fun and different. That’s one of your 16×16 areas, and a wise investment. As far as the old “login” starting spots, DM rooms, and all the other miscellaneous areas which used to be at the top of the mod resources, I’d scratch them. Space is vital. At the worst, you have one of these areas to play with now.
After this, make about five adventuring sites. These can be ruins, swamps, mountains, whatever. And then make the five dungeons, deep ones. Link them up, let her roll. With luck, and quality areas, you’ll start gaining builders. It might be 40 or 50 areas to start, but it will be a start.
Next Week, we’ll cover part two, which covers the scripted content point on my list above.
Questions? Comments? Go here.
As always, thank you to Lanessar for his clear, level-headed thinking and fascinating viewpoint.
Published: Oct 17, 2006 11:45 pm