UO’s resource system, part 2

 Posted by (Visited 38355 times)  Game talk
Jun 042006
 

The UO Resource System series:

[text-blocks id=”postmortems” plain=”1″]

Last time I wrote about the basic structure of how the resource data worked in the original design for Ultima Online. Now I’ll talk a bit more about applications of that data.

A world with properties
The UO world was a tile-based environment broken up into “chunks” that were 8×8 tiles. The map was static data — there was no way to modify it, and it was built by assembling the tiles, which were fairly small, one at a time in a worldbuilding editor. We had an assortment of tools to ease this process, that allowed us to “paint” grass or trees or even outline buildings quickly and easily, roofs included. We ended up writing an assortment of additional tools in the game’s scripting language as well, to speed up the process.

Static items had some big advantages — they did not need to be streamed down because they were replicated on the client, and they didn’t incur significant server-side storage. However, since the world was static, that meant that each tile and each tree was merely a lookup into an art table. They couldn’t have properties, including any resource data, and they couldn’t run scripts. This meant that we had gone to all that effort to make trees be made out of wood, but then the trees we built the world with couldn’t store that fact.

The solution the programmers came up with was “chunk eggs.” Basically an invisible dynamic object sat in each chunk. When the world came up, this egg analyzed the static art that resided in that chunk, and set itself to produce the resources that this art would have produced were it made of “real” objects and not just set dressing. If there were nothing but grass tiles there, then the chunk egg produced grass to the tune of 64 grass tiles’ worth. If there were trees, then it also produced wood, and so on.

We used this to make every bit of exposed rock in the world produce ORE, which was the first step in refining metal in the crafting system, and to make every bit of water produce WATER, and so on.

The downside to this, of course, was that there weren’t actually five trees in a chunk — there was one invisible one. Trying to harvest wood from any of the trees actually harvested it from the chunk egg. This was why you could harvest a lot of wood from one tree, and find that you had exhausted all the adjacent ones. This later led to “8×8 macroing” and various other clever adaptations to the environment.

Dynamic objects didn’t have all these troubles, and in fact, there were parts of the world which were dynamic objects. Fruit trees, for example, were “real,” and were hand-placed trees with scripts on them. As I recall, this script was bugged pretty much my entire tenure at Origin, and for years after, which is bad because I wrote it. It simply checked when the tree was clicked on; if the tree had sufficient FRUIT resource on it, it would create a fruit of the appropriate type for what tree it was, and move the resources off the tree and onto the new fruit. Thus you could harvest apples from the apple trees in Lord British’s garden. The FRUIT resource on the tree had a regrowth rate, so you could pick all the apples from it, but eventually they would grow back.

This sort of process, of moving resources from one thing to another, is the core strength of the resource system. You could look at an object and treat it abstractly. Not too long after, a very similar system was used in Thief, permitting water arrows or buckets of water or indeed anything that had the WATER property to douse fires.

This sort of thing would have permitted many cool effects that we refrained from putting in. For example, a fireball could easily have caught every wooden or cloth possession on fire. A rust monster could have destroyed all of your metal objects with every hit.

Some of the examples of moving resources from thing to thing were truly nuts. The craziest script was perhaps the “bladed” script. This was attached to everything with a sharp edge on it: axes, knives, swords, whatever. If it was used on wood, it would chop wood away. If it was used on cloth, it would cut it up into strips and then bandages. If it was used on a carcass, you would dress the carcass and get fur and meat. Cut up the meat further and you could get filets.

The most extravagant use of this was when Dan Rubenfield extended the bladed script to work on cutting up corpses into a rather disturbing array of bits, including allowing the harvesting of skulls. This ended up being removed when the game launched in Europe, but not before some of the battle-hardened playerkillers had engaged in cannibalism (MEAT was MEAT after all) and the collecting of their victims’ ears.

Applications for AI
I already described the basics of how this system interacted with AI. It began at the first first level, with spawning. UO’s spawning system originally worked based on there being a surplus of resources in the world. If there was a lot of GRASS laying about, then it would select from the list of templates that ate GRASS. If there was then an abundance of MEAT, it would spawn MEAT-eaters. In other words, it worked by the scientifically discredited mechanism of abiogenesis, or “spontaneous generation,” as opposed to being defined by static spawn locations.

To help shape the world, invisible boxes were drawn on it that could each have their own list of what sort of things spawned in it. The list of GRASS-eaters in the jungle could therefore be different from the list of GRASS-eaters in a pine forest. Alas, there was no concept of temperature, humidity, or other such natural variables in the original system, or else climate alone could well have taken care of this.

This “spawn region” system eventually took over all the spawning in the game, ignoring the resource system altogether for reasons I will talk about later. Spawn regions have an advantage of their predecessor system of spawn points, of course, because they can span larger areas and make spawning a little less predictable — yet can be made as small as is neede for replicating the purpose of a spawn point.

Originally, the new objects (for things like resources, wheat and other crops, and the like, were also spawned this way) were actually withdrawn from a “resource bank.” This meant that when the bank was overdrawn of MEAT, nothing that used MEAT could spawn until some of the MEAT in the world was destroyed and therefore returned to the bank. This “closed economy” was famously written about by Zach Simpson, where he rightfully identified it as a core problem with UO’s economic system. In retrospect, should more have kept spawning, it would not have mattered, because the resultant plants and animals would have starved to death without sufficient food anyway.

The famous dragon example that got so much press when UO was in development went something like this:

Nearly everything in the world, from grass to goblins, has a purpose, and not just as cannon fodder either. The “virtual ecology,” as Starr Long, the game’s associate producer calls it, affects nearly every aspect of the game world, from the very small to the very large. If the rabbit population suddenly drops (because some gung-ho adventurer was trying out his new mace) then wolves may have to find different food sources – say, deer. When the deer population drops as a result, the local dragon, unable to find the food he’s accustomed to, may head into a local village and attack. Since all of this happens automatically, it generates numerous adventure possibilities.

Rabbits were GRASS eaters. They spawned, thereby bringing a small amount of MEAT into the world. They ate grass, and meanwhile, also resulted in spawning wolves, which are there to eat their MEAT.

However, players are also after the rabbits, so the wolves end up hungry. Some would die off. But all animals in the original UO design levelled up just like players; a wolf who had been in a lot of scrapes could get tougher. (This led to some truly amusing early alpha experiences whereby players who let bunnies escape would effectively train up Pythonesque killer rabbits; I watched these lay waste to entire packs of wolves — and newbies! — who mistook them for easy prey.)

Normally, a single wolf would not attack a deer, because the deer was too big a hunk of meat for its “bite.” However, put more wolves together and they summed together their “bite,” making them willing to attack fairly large things. So if players harvested the bunnies, the wolves were going to move on to attacking other, larger bits of meat. Players included.

Originally, there was no concept of “aggro” in the game. Hunger or greed was the only reason why creatures attacked. This was overruled by some of the other folks on the team, who felt that from a game experience point of view, certain creatures should always be dangerous.

Should the wolves clear out the deer, then whatever ate the deer would then need to find other prey as well. “Bite size” imposed a lower threshold on what something would go after as well. A dragon, with a large stomach size, eating MEAT in big gulps, would not be willing to hunt down rabbits. But it might well find a human a tasty snack if it came across one.

Dragons would not normally be right next to player cities, of course. But if the deer that normally existed in between the players and the dragon’s lair were gone, the dragon’s search radius away from its home might well carry it to the village…

Most of this is actually fairly straightforward, in terms of AI implementation. The basic AI behavior of a creature was

  • If I’m hungry, search for items that produce stuff on my FOOD list, and attack or eat them. Wander as far as needed to accomplish this.
  • If I am not hungry, then start looking for a home base. If I already have one, then go there. If I get hungry while doing this, go back to hunting for food.
  • If I am sheltered and not hungry, then look around for stuff that I just like. If I can pick it up, bring it to my shelter. If not, just hang around there — until I get hungry.

At one point, we had effects like beggars who had desires for GOLD, and thus followed rich players in the street. We had bears who would hang out in their cave, but would wander over to hang around near beehives. All that stuff worked. The problem was that the constant radial searches were incredibly expensive, and so was all the pathfinding.

One of the first things to go was the search frequency. Next, the step was taken to put every creature to “sleep” when players were not nearby. This change alone really ruins the large-scale ecological applications completely. On top of that, the issues with spawning “overdrawing” the bank were not foreseen; in practice, it wasn’t MEAT that resulted in creatures not spawning. It was all the FUR and whatnot that ended up hoarded by players that prevented the deer and rabbits from returning.

The last big element, however, was that there were a fair amount of team members who saw the whole system as a boondoggle, and not worth pursuing. Alas, one of them also ended up in charge of implementing it in beta. By beta time, systems that used to work in alpha no longer did.

This meant that we never got to the second stage of implementation on it, which would have been hooking it into quests. But I will talk about that next time.

  101 Responses to “UO’s resource system, part 2”

  1. thing then became the world itself. Raph Koster has recently begun a series of blog posts about some of the orginal design concepts behind the design of UO’s virtual world. In part one, he talks about the original ideas for the resource system. Inpart two, he describes the actual application of the resource system and some of what went wrong with it. Both posts are great reads if you are even slightly curious about game design. My gears are certainly cranking after reading them and I

  2. that describe the process they used to create the resources system used in Ultima Online. Some interesting stuff in there from a virtual world design standpoint. Here are the three articles: Part One is about the underlying data structures.Part Two is about the application of those data structures to the virtual world. Part Three is about the future directions they didn’t get to pursue with UO, and an ample source of ideas for your own creations.

  3. post two, post three) about the resource system in Ultima Online, how it was suppose to work, and why it didn’t. What is really interesting, at least to me, is how the resource system was suppose to tie very heavily to the behavior of creatures.

  4. I loves me some Raph Koster. He has a discussion of Ultima Online’s resource system that spansthree articles, and is completley worth a read. He references the ‘Playing to Bake Bread‘ article he wrote a while back in the article, and I should point out that’s well worth a look too. We ended up saying that a given object (which was still

  5. More Interesting AI Raph Koster has posted a GOLD MINE of information on the ecological / economic systems of Ultima Online (see part 1,part 2, and part 3), and a discussion on the “dumbing down” of NPCS in MMORPGs. Raph’s comments go on how these sophisticated plans for Ultima Online and Star Wars Galaxies were eventually deep-sixed in favor of maintainability and simplicity (not to mention

  6. part 2, part 3). I recommend these articles not only for the obvious reasons of examining what was attempted before and why it failed, but because these links will be of particular interest to anyone who has taken the time to read my thesis and found the

  7. Original post:UO’s resource system, part 2 by at Google Blog Search: water

  8. I’ve now written two posts that were far lengthier than I anticipated, about the way that UO’s resource system was originally intended to work. The first dealt with underlying data structures, and the second withapplications of those data structures to the actual world. I want to talk a bit about future directions that we didn’t get to pursue. Cool ways to use what we already had The mining system in UO was an example of “transmutation” in action. We placed ORE in the chunk eggs based on the presence of

  9. was kind enough to repost his UO resource system write-up, long lost (and missed by me as reference material)–of course he did this in June 2006 when I was concerned with things like interviewing for a new job. UO’s Resource System (part 1) UO’s Resource System (part 2) UO’s Resource System (part 3)

  10. […] Dynamic objects didn�t have all these troubles, and in fact, there were parts of the world which were dynamic objects. Fruit trees, for example, were �real,� and were hand-placed trees with scripts on them. As I recall, this script was bugged pretty much my entire tenure at Origin, and for years after, which is bad because I wrote it. It simply checked when the tree was clicked on; if the tree had sufficient FRUIT resource on it, it would create a fruit of the appropriate type for what tree it was, and move the resources off the tree and onto the new fruit. Thus you could harvest apples from the apple trees in Lord British�s garden. The FRUIT resource on the tree had a regrowth rate, so you could pick all the apples from it, but eventually they would grow back. This sort of process, of moving resources from one thing to another, is the core strength of the resource system. You could look at an object and treat it abstractly. Not too long after, a very similar system was used in Thief, permitting water arrows or buckets of water or indeed anything that had the WATER property to douse fires. This sort of thing would have permitted many cool effects that we refrained from putting in. For example, a fireball could easily have caught every wooden or cloth possession on fire. A rust monster could have destroyed all of your metal objects with every hit. Some of the examples of moving resources from thing to thing were truly nuts. The craziest script was perhaps the �bladed� script. This was attached to everything with a sharp edge on it: axes, knives, swords, whatever. If it was used on wood, it would chop wood away. If it was used on cloth, it would cut it up into strips and then bandages. If it was used on a carcass, you would dress the carcass and get fur and meat. Cut up the meat further and you could get filets. The most extravagant use of this was when Dan Rubenfield extended the bladed script to work on cutting up corpses into a rather disturbing array of bits, including allowing the harvesting of skulls. This ended up being removed when the game launched in Europe, but not before some of the battle-hardened playerkillers had engaged in cannibalism (MEAT was MEAT after all) and the collecting of their victims� ears. Link: UOUltima Online von Electronic Arts.�s resource system, part 2 150)?150:this.scrollHeight)”> __________________ The tools suck! — Raph Koster […]

  11. The last big element, however, was that there were a fair amount of team members who saw the whole system as a boondoggle, and not worth pursuing. Alas, one of them also ended up in charge of implementing it in beta. By beta time, systems that used to work in alpha no longer did.

    Funny how stuff mysteriously finds its way (or not) into the final code…

    The question I want to know the answer to is this: Why hasn’t anyone implimented your AI/ecology since? Some possibilities:

    1) It really was a boondoggle.

    or

    2) The broken implimentation scared everyone off from the idea, much as Tron scared movies away from heavily using computer graphics for 10+ years.

    or

    3) Most players just want to kill wolves and dragons that always respawn in the same spot and mindlessly wander about in the same 10′ x 10′ area.

    Note: As a partial answer to my question, I’ll point out that Obilivion has somewhat similar mechanics for their NPCs… sleep, eat, work. The extra complexity makes quests a bit more interesting, particularly when thieving.

  12. “The problem was that the constant radial searches were incredibly expensive, and so was all the pathfinding.”

    That was in 1997 (or earlier), since that time, according to Moore’s law, computing speed has increased to, at least, 10 times the speed you were working with. Would such a system be feasible today?

  13. The Sims ended up addressing the radial searches by simply reversing the model: instead of the entities constantly doing searches, the entities instead broadcast their production values to things nearby.

    Pathfinding, alas, still costs a ton, because of the increased complexity of the environments.

    One approach that may be fruitful is again demonstrated by the Sims — having a fine grid with fall-off from broadcast sources. Then the pathfinding can fall back from A* to simple hillclimbing.

    Mike, I think the answers are inertia, complexity, lack of seeing the benefits, and desire by players for predictability.

  14. Probably one of the most interesting reads I’ve had this week. I never actually played UO beyond about the first 10 minutes of it in 2000, but having read this I wish I had explored it more. It’s nice to know that the ideas are out there and hopefully something like this global ecology can exist in the not-too-far future.

  15. A lot of what you outlined is what I missed (and was expecting) when UO launched, and I dearly hoped we were going to see in SWG when it began. Some of those activities seemed to be there in the random spawns and the way wild creatures interacted in the environment, but it never hit that “alive” feeling that I wanted.

    You have one subscriber right here if you can convince another team to give it a go, and to stick with the design through all the bumps in the road!

  16. Raph mentioned predictability as being one of the barriers to such a system becoming accepted. It seems to me also that there’s a very narrow range in which a system like this can properly be tuned. Obviously you don’t want dragon attacks happening all the time when players go out to kill bunnies, so you need to come up with just the right amount of bunnies. And since player populations vary considerably over time, you either have to have that scale just right along with the number of players, or set a very high threshold. And then if it’s so high it never gets encountered, the cool gameplay benefit of the system — random dragon attacks — never materializes. It’s probably easier to just script random dragon attacks.

    I can also see it leading to some really unfortunate gameplay choices once the players catch on. You might wind up with high level players killing all the bunnies and wolves and so on in an area just to get a dragon to show up. You probably don’t want that, since those lower-level resources are important to lower-level characters for other reasons. You want to elder players going after the dragon and the newbies going after the rabbits.

  17. You might wind up with high level players killing all the bunnies and wolves and so on in an area just to get a dragon to show up. You probably don’t want that, since those lower-level resources are important to lower-level characters for other reasons.

    To this, I would argue that this is an excellent reason to not have levels. Maybe you want the dragon to show up, so you kill all the rabbits and wolves, so you solve the puzzle of how to starve the dragon out of his lair in order to take it on. Perhaps, since this (might) naturally deprives a certain population of the game, then maybe there’s a way to compensate them for their loss. Perhaps a share of the items gained from the dragon’s corpse, or early dibs on resultant creations.

    That’s a completely different dynamic and environment from today’s MMORPG.

  18. SirBruce wrote: I can also see it leading to some really unfortunate gameplay choices once the players catch on.

    Right. In some form or another, what you described happened in Diablo 2/Diablo 2: Lord of Destruction with the Moo Moo Farm and the Diablo Clone.

    Michael Chui wrote: … then maybe there’s a way to compensate them for their loss.

    There might be a way to "compensate" naturally deprived players for their "losses", but why would you want to do that? Instead of providing compensation to these players, these players should be provided the capability to gain and/or regain what they supposedly "lost".

  19. Marvelous system idea. It just goes to show that the now old saying among MMORPG players that we’re being given less and less goes even deeper than thought by many.

    It seems to me that the first thing you need to allow a system like this to work is a truelly huge game world. UO’s world was overrun with players at almost all points. All of them eager to slay anything that moved. It’s little wonder that this system really didn’t have a chance once large numbers of players were introduced, beyond the technical problems Raph’s telling about. I wonder if this is part of the experiance you all had, Raph?

    Some other points/questions I want to pose:

    Timing of regeneration/growth compared to the stomach factor. If all the rabbits are killed and the wolves kill off all the deer, how long would it take for the plentiful grass to cause the rabbits to return in numbers, causing the wolves to return, compared to the dragons stomach rumbles? This seems to be a way to balance factors in a way that dragons might not be hunting human villagers too often. Not to mention they might search in the other direction.

    AI. In real life, it’s rare to see deer standing in fields during hunting season. They seem to know that they are in season, and lay low. Shouldn’t something like this be included in a system like this? When animal numbers are low, shouldn’t they be more skittish? More prone to hiding? Shouldn’t they have hiding skills?

    On the demand for predictability. Can we really take what posters say as what the majority want? I believe, but can’t prove, that posters are the more aggressive types, who also have the time required to do all the reading and posting. The time element is also in part a choice. I think most players whould rather spend their time playing than talking about it. But who’s to say for sure?

  20. Mike, I think the answers are inertia, complexity, lack of seeing the benefits, and desire by players for predictability.

    I see benefits, Immersion.

    I do not desire Predictability!

    And im a player.

    With the right world, and a good implemtation. I see this type of a system as Really REALLY fun!

  21. […] Raph Koster has a series of articles on aspects of the AI that was intended (but not fully realized) for Ultima Online (my first graphical MMO and a game for which I still have fond memories). […]

  22. There might be a way to “compensate” naturally deprived players for their “losses”, but why would you want to do that?

    I’m guessing you misunderstood. I’m saying that the players who want to go dragon-slaying should do the compensation. “I want to kill the dragon, and to get it out of its lair, I need to starve it out. So we’re going to butcher the rabbit population. I’ll give you 100 gold as an initial payoff and you get dibs on one item of your choice off the dragon. We have a deal?”

    Granted, this is only going to happen if (1) the dragonslayers are very fair-minded or (2) upsetting the rabbitslayers is a really bad move…

    But neither of these things are inherently the domain of the developer, in this kind of environment. If the rabbitslayers don’t want the dragonslayers messing around with their stuff, or to at least get something out of it, then they should band together and make it so that the dragonslayers will find it problematic to upset them.

    I suppose this isn’t generally known, but I’m all about releasing admin control over worlds and doing minimal work to make sure everything doesn’t simply explode and letting things go. I know I’m weird, but that’s why I’m here. =P (Well, that and Terra Nova has been more like a listing of press releases than a discussion forum in the past couple months. Thanks for the post today, Richard. *grins*)

    But getting back to the point of the thread, I was just responding to SirBruce’s thought experiment and pushing forward a different perspective on the same scenario. You could this is WHY I think it’s a cool idea.

    I do not desire Predictability!

    For the record, the desire for predictability is a fundamental trait inherent to humanity. See… you’re predicting that the system will be fun. =P

    Yay for rambling.

  23. I remember seeing some remnants of this during the UO Beta. Wolves attacking deer and rabbits. From my understanding, it was removed due to the heavy processing requirements. I have lots of design notes for a component-based crafting system similar to what you mention as being the initial design for UO (including spell-crafting) and have always been fascinated with monster AI and spawning systems that actually made sense (why would these harpies continue to live 10 feet outside the town when they’re constantly being slaughtered by the dozens on a daily basis!?) But, I think the processing requirements are still a major hurdle and as far as I know, all MMOs use the same sort of ‘sleep’ feature that makes mobs inactive when players arent around.

    The Darkfall devs have talked in the past about having dynamic AI in their game, but no details have been forthcoming and I wouldnt be surprised if it doesnt make it into release (or is severely restricted).

  24. I do not desire Predictability!

    For the record, the desire for predictability is a fundamental trait inherent to humanity. See… you’re predicting that the system will be fun. =P

    I just realized how wide open I left that, so let me elaborate really quick to diffuse any possible bad reactions. My interpretation of what Raph means by “predictability” is that players like to know that if they go away for a year and come back, things will be relatively the same, but better. This means that players want spawns to occur in the same place, for cities to remain the same shape, for spells and abilities to be the same. In other words, so that if you wrote a walkthrough, it would be valid for a reasonably long amount of time.

    This system throws that kind of predictability out the door. Screw with the wrong thing and you can change the entire game completely. Think about how magic works in D&D: you frequently need material components for spells. What if one of those components was no longer available? Or moves into an unreachable location? You just lost access to that spell, despite the work you put into getting it.

    (And I see these side effects as good things, but I prefer to build worlds, not games.)

  25. I love the idea of a virtual ecology, and I know there were some players who were upset when UO didn’t have the system. I also know some players who would be driven insane by a system they couldn’t easily predict.

    However, there would be some players who would understand the system.

    No matter what you do, players will decode every formula, statictic, and algorithm in your world via experimentation.

    We’ve all seen some of the more extreme examples of this experimentation. An artificial ecology’s implementation would be picked apart as quickly.

    It would have been interesting to see such a system in UO, but I think it would have had the following effects:

    1. The system would have been exploited for grief play as is everything else. However, the complexity of the system would be very hard to “fix” to prevent grief play. I think the scale of grief would have been higher than the person-to-person grief we currently see. An example that comes to mind is the Trinsic Borrowers and their army of slimes that crashed the shard and forced an update that made slimes no longer divide.

    2. Casual players would have been discouraged. In movies, books, single-player games, the warrior goes to the dungeon to fight the dragon, the graveyard to fight the zombie, hell to fight the demon, and so on. Most players never consider “if dragons did exist, what would their niche be?” Most people don’t think in those terms about their real environment where the dangers and problems are real, and I think it would be nearly impossible to get that in a game.

    3. Information skills such as Animal Lore, Forensic Evaluation, and Item Identification would have been more useful. They would have been tools to learn from the ecology and thus make use of the ecology. Learning that 10 deer corpses were killed by wolves with Forensics would certainly give insight into what to expect next. Learning that some jungle bird has similar stats to rabbits might help a player learn the bird’s role in the jungle environment and predict the results of its extinction. The information skills in UO never have had much of a following unless they also provide a more tangible bonus (Animal Lore gives Tamers more stable space for example).

  26. Raph, thanks so much for taking the time to go into this! Really interesting read, from us armchair designers…

    Seeing the talkback here further reinforces my opinion that the MMO genre will continue to reinforce it’s move to sub-genres. I fall into the category of folks who would gleefully drop into a MMOSIM game. My wife, however, who plays WoW with me regularly is completely happy with the standard MMOTreadmill game.

    I do still ask myself regularly, though, if I really DO want that SIM game. As fun as it sounds, and as clever as we would all feel admiring such a system up and running, we’ve already all nodded grudgingly here at what a nightmare of complexity it would be to balance that system over changing playerbase. When it comes down to dev dollars, then, would it every be worth implementing any broad complexity? Especially when I contrast that with the fact that I’m enjoying WoW a year into playing it…something I SWORE would never happen with a hack’n’slash level-based game.

    For me, then, the MMOSIM will have to do more to allow me to “create” within the framework of the world, to feel a sense of accomplishment. The game, I think, becomes the collecting and creative use of in-game player tools; not the treadmill of skill advancement or checklist completion. Anyway…now I’m drifting. 🙂 Next!

  27. […] Raph Koster weighs in with a fascinating discussion of what went into UO’s gloriously failed ecology design. (Part 1, Part 2, Part 3 to come). […]

  28. […] https://www.raphkoster.com/2006/06/04/uos-resource-system-part-2/Last time I wrote about the basic structure of how the resource data worked in the original design for Ultima Online. Now I’ll talk a bit more about applications of that data. A world with properties […]

  29. No matter what you do, players will decode every formula, statistic, and algorithm in your world via experimentation.

    For the general population, that’s true… But tell that to the players who still can’t find Marla’s Grave. There are exceptions to every rule. Exceptional exceptions. 😉

  30. […] Virtual ecology I could write about virtual ecology, but I think Raph Koster is much better at explaining it. I usually don’t agree with him but this is the first time he shows something I actually like. The following shows how UO was originally designed (it was never fully implemented). It would be nice to see this implemented in WAR or other games. I am not sure why games almost always use the old aggro system, spawn system, etc. Anyway, just read the following links. https://www.raphkoster.com/2006/06/03…source-system/ https://www.raphkoster.com/2006/06/04…system-part-2/ […]

  31. Great info on the background and design of the system Raph. I wish more of it would have gotten through.

    UO was great in that the game world quite often WAS the game, the mechanics of the actual game seemed like rule sets. Thus many players who like this system seemed to enjoy the limited predictability vs a system of camping static spawns…

    I enjoyed it as a player and as in game support later on

    How many times while mining was I jumped by an Orc Warlord, or a group of them!, or how about being chased into my house by a demon? good stuff there..

    The important thing was that unique communities of players grew up around some areas, just as in SWG with housing, and eventually cities, often starting out as small settlements near resources and growing sometimes to large communities, both peacful and violent.

    Also good stuff

    There are players that enjoy discovery, and adventure. Roaming vast landscapes, and random spawns. of resources and creatures. These players are often pioneers seeding settlements. Are they playing the game? Or playing the gameworld? Is the games rule set just an ends to a means? (discovery). Seemed so when I used to visit islands in my small boat in UO looking for a nice spot for a house (what flora/fauna and resources spawned? was often a concern). And it seemed so while running across Yavin 4 early in SWG (prior to vehicles), there was a game a few of us played: Find interesting points on the map (later POI’s) or tops of mountains, drop a personal harvester and name it after yourself…..the joy of finding a new spot was immense, the frustration of seeing your rivals harvestor called “I beat you again-Name” also made you laugh.

    Again is this playing the game world? or the game? skill and level aquisition was certainly a part of it, but equally so were the interactions with the ecology, with the geography, and with the resources.

    So how many grass tiles were in green acres? How for did it go? I never did find that out 🙂

  32. Sir Bruce wrote:

    It’s probably easier to just script random dragon attacks.

    Although I’m not a simulationist, I’d (personally) find a random dragon attack less compelling than a dragon attack caused by lack of food.

    “Why” something happens is often as important as “what” happens. Thus, having fields of WoW-style spawning orcs is boring, but having fields where orcs wander around in gangs and gather “resources” (by killing PCs and taking their gold) is more interesting. Unfortunately, as you pointed out, this creates severe balance problems. Griefing (also pointed out) is a huge issue too.

    On a slightly random note, contemporary MMORPG wilderness designs clearly show that most (if not all) MMORPG designers have never actually been out in the wilderness, nor have they hunted. Although I’m not a hunter, I’ve spent a fair amount of time bushwalking. A bit of real-life experience could give MMORPG designers some ideas for fun gameplay elements.

  33. On a slightly random note, contemporary MMORPG wilderness designs clearly show that most (if not all) MMORPG designers have never actually been out in the wilderness, nor have they hunted.

    I’m reasonably certain that MMORPG designers have never actually slain dragons either. A little real-world experience with slaying dragons could provide these designers some ideas for fun gameplay elements too. 🙂

  34. So can I ask…

    Do you believe that today’s MMORPGs have “more complex” AI than what was attempting to be achieved back in the early days of UO alpha? It seems to point towards the statement that simple AI creates a much more dynamic ecology.

    I also think the dragon debate is jumping a few steps up into the food chain and bypassing some steps along the way. It would seem to make sense the dragons would leave towns alone, but if a human was to wander by… thats another story. It would seem that killing rabbits would actually push the meat eaters farther away from the player dense areas because there is nothing there to eat anymore. So essentially you could have players clear out an area and start building houses. As the houses/cities come up the wildlife gets pushed out until a point where you have a modern day LA in game where you share your backyard with mountain lions.

    Then you have the chance of seeing a dragon come out of its lair to attack a town… because the players encroached.

    It all seems that it would work if the technical side of things can be taken care of. It also seems like a simple solution once its in place. The designers can sit back and watch the world develop itself. All they need to do is tweak things as it chugs along.

    This sort of system combined with the tried and true “setup dungeon” could work. The world at large is interactive, but there is still dungeons and adventure areas that are pre-determined, designer implemented, and fairly linear affairs.

  35. […] Shop « UO’s resource system, part 2 | […]

  36. Would players accept less predictability? I think only if the entire motivation of the game was different. UO has always felt ahead of its time to me. Perhaps we needed a few years of this continued descent into contrived linearity to get more people less interested in it.

    SirBruce wrote: Obviously you don’t want dragon attacks happening all the time when players go out to kill bunnies.

    Why shouldn’t players be part of the ecology too? If they want bunnies, and bunnies move around because of migration and (something tried in Ryzom as well iirc), then the players need to follow them around.

    This wouldn’t work in a Raid/return-home/Auction game, but then, this whole series isn’t for someone seeking a predictable WoW experience anyway 🙂

  37. I think most of the problem with the simulated dragon is it’s tough to keep Achievers (like me) happy within it.

    Say I log in thinking, “Today I want to kill a dragon”. In a standard spawn game, you go to where you know the dragon is (with several dozen of your closest friends 😉 ) and you go kill it. Not the most elegant system, but it gives people what they want when they want it.

    In a world that simulates dragon attacks based on ecology, the dragon raids occur on the dragon’s schedule, not yours. So, if you log in thinking “I want to kill a dragon today”, chances are you won’t. If you log in thinking, “I’m going to protect the town today”, chances are you won’t have to protect it from a dragon. If you log in thinking “I’m going to [do something other than protect the town / kill a dragon]”, and the dragon does happen to raid the town, you’ll either have to drop what you’re doing and go (difficult, in some games) or miss it… either way, not an attractive option.

  38. Would players accept less predictability?

    From what we have seen, if the players find the world doesn’t conform to their predictions, they discuss it in groups. If it doesn’t conform to the group’s predictions, they assume it’s a bug

    Mike, I think the answers are inertia, complexity, lack of seeing the benefits, and desire by players for predictability.

    I’d have to say, the real problem is the backers want predictability. An open system like this leaves a lot to chance and to player manipulation. The idea that some servers might end up with lots of bunnies and others lots of dragons would keep some developers up at night.

  39. Although I’m not a simulationist, I’d (personally) find a random dragon attack less compelling than a dragon attack caused by lack of food.

    “Why” something happens is often as important as “what” happens. Thus, having fields of WoW-style spawning orcs is boring, but having fields where orcs wander around in gangs and gather “resources” (by killing PCs and taking their gold) is more interesting. Unfortunately, as you pointed out, this creates severe balance problems. Griefing (also pointed out) is a huge issue too.

    I’m not convinced it would be less compelling to the average player. After all, how would they KNOW the dragon’s attack was random vs. motivated by hunger? Maybe the dragon has poor eyesight and just couldn’t see the smaller food nearby. The point I was getting at was to get balance such that players aren’t going to simply be able to get the dragon to come by killing lots of bunnies, then the dragon is going to come out so infrequently and under such non-obvious conditions (not just not enough bunnies, but all the other parts of the ecosystem that have to be balanced just right, so the usual player hunting doesn’t trigger it), that it pretty much LOOKS random to the player, whether or not there’s actual “reasoning” going on under the hood.

    Why shouldn’t players be part of the ecology too?

    As I said before, player populations vary wildly over time. You don’t want to guy who logs in at 2AM with only 200 people on the server to have a vastly different experience than the one who logs in at 9PM with 2,000 people on the server. Sure, you can compromise your ecological logic to try to account for this, but that’s just admitting that players CAN’T simply be treated as part of the ecology. Why? Because players pay you money to have a good time, and game designers have found ways of delivering that good time without risking a full-blown ecology that is far less predictable in providing a good time.

  40. This is a good series!

    Based on the comment so far, Jim clearly identify the consumer wants in a game. So the middle ground may be a virtual ecology for the basic “common” stuff (animals, food, primary resources, etc.) and then add a layer for more complex organisms like dragons, a colony of killer termites, etc.

    Thus, you add a heroic game on top of an Sim Earth game. The heoric game can be implement in the various ways mentioned above. However, the original design can work for the “common” ecology stuff.

    Frank

  41. Let us not forget that the Dragon is intelligent!!! Attacking a town full of humans results in lots of pointy things and magic being thrown at said dragon. That hurts and should encourage the dragon to find easier prey through the system.

    Further, if you introduce a taming system into the game — smart players could lead a sacrifical lamb to the dragons lair to sate it’s need for food and create a ‘tribute for protection’ racket that keeps the dragon safe, happy, and fed.

  42. My dragon example can also be defined as ‘read part 3 eh!’

    Doh!

  43. […] Just FYI, Raph Koster, author of "A Theory of Fun," just finished blogging a series of articles that describe the process they used to create the resources system used in Ultima Online. Some interesting stuff in there if you’re looking to build a more environment-based RPG (as opposed to scripted, console-style). Here are the three articles: Part One is about the underlying data structures. Part Two is about the application of those data structures to the virtual world. Part Three is about the future directions they didn’t get to pursue with UO, and an ample source of ideas for your own creations. Those articles reminded me of the permeating magic discussion we had a while back, and makes me want to go back and revisit it. Heh._________________Visit the Sacraments web site to play the game and read articles about its development. […]

  44. Very cool. I love this stuff. In high school I wrote cute little simulations with ants communicating desires to each other and ever since then I’ve loved the notion of complex systems with emergent behavior.

    That said, I don’t think it’s practical. I think that players want tailored experiences. I think that there is a market for cool open-ended, modelled worlds but it is a small one. Sure there is a lot of interest in things like this on blogs that cater to a very limited audience. Is that surprising? Not really. We’re a bunch of people with obsessions for discussing the complexities of online worlds. Of course we want to play online worlds which embed lots of complex models to obsess about and play with.

    The average player is interested in the “be a hero” experience which is hard enough to do when the game designers assert complete control over the moment-to-moment states of the game ecology. It’s not what I’m interested in and probably not what most of this blog’s readers are interested in but it is, IMO, by far the dominant demographic for the market.

    Look at Spore. Looks great. Could sell well. But even it is a very tailored experience. The rails are loose but they are there. First play in a 2d sandbox, then a 3d sandbox, then a larger 3d sandbox with a few new rules, etc. And its a multi-million dollar project by a famous designer. It’s not emerging and it’s still probably the sort of box ‘o fun that players will play for 10’s of hours, not 10’s of weeks.

    But maybe I just sound like a broken record at this point . . .

  45. Nothing really precludes handcrafted content from being layered on top of a system like this, though, or tailoring as much of the experience as you care to above a system like this. The point is more that the underlying structures permit the developers more choices and — I think — even better handcrafting, if they choose to make use of the data.

  46. Raph wrote:

    Nothing really precludes handcrafted content from being layered on top of a system like this, though, or tailoring as much of the experience as you care to above a system like this.

    Oblivion did a good job of putting handcrafted content on top of a simulation. Random thoughts on http://www.mxac.com.au/drt/OblivionProcedural.htm.

  47. Personally I don’t think that Oblivion got a lot out of the procedural content generation. Almost 100% of the procedural aspects are mere randomization and do not model anything.

    Nothing really precludes handcrafted content from being layered on top of a system like this, though, or tailoring as much of the experience as you care to above a system like this.

    I think that if you do that, then in practice you will see players falling into these camps:

    1) Most of the players will only be confused by the dynamic content or unaware of its existence and resent anyone that can make heads or tails of it.
    2) Some players will get the dynamic content, play with it for a few hours and then forget it exists.
    3) A rather small minority will really love the dynamic content but will never be satisified because it will almost always have to be marginalized so that the directed experiences can take place.

    Dev resources are limited. You have 1-5 years and X programmers to make the core of your world. Furthermore, you have a lot of technological limitations to deal with, and procedural/modular/emergent world features
    will tax these significantly. These problems are why games like SWG are too fragmented and fail. Players are showing that they prefer games that stick to a single, narrow vision and implement that in a very polished manner.

  48. Jim wrote: So, if you log in thinking “I want to kill a dragon today”, chances are you won’t.

    Actually, once a player learned how to prod the dragon into action, they’d game the system until they got it to work. From a lore standpoint it would be a group drawing the dragon out to get at the horde of goodies in the cave. In a game system it would be when players figured out how many deer to kill over how long a period of time to draw out the dragon. We saw something akin to this in the EQ Luclin-era zone of Shadeweaver’s Thicket, where three groups of mobs were in rotation (I believe it was Wolves, Owlbears and Bats). Players would deplete the amount of one and it would get replaced by another, and they’d be motivated to do this through quests and drops.

    SirBruce wrote: As I said before, player populations vary wildly over time.
    Of course. But that’s where one would need to employ NPCs. In an grossly simplistic form, if an ecology operated best with 3,000 or more avatars in it, then when only 200 people are online, there are 2,800 NPCs with them in the world. Well, not really, but the calculations would attempt to work on these NPCs having analogous motivations to players in that area. Sorta like DAoC Keep Guards except with actual intelligence.

  49. In a game system it would be when players figured out how many deer to kill over how long a period of time to draw out the dragon.

    But that would depend on how many rabbits and wolves there are, wouldn’t it? It would also depend on how large the dragons hunting range is.

  50. Now how did I do that? Whatever mannnn, fear me dudes.

  51. […] rnum=Math.round(Math.random() * 100000); document.write(”); Ultima Online Chatzone MAIN    UP    REPLY UO’s resource system Zappa 12.195.89.1306/6/2006 12:45:54 PM This explains alot about how things worked in the game that us players were only able to delve into on the bare surface. It is a very nice read on something that few people notice.https://www.raphkoster.com/2006/06/03/uos-resource-system/https://www.raphkoster.com/2006/06/04/uos-resource-system-part-2/https://www.raphkoster.com/2006/06/05/uos-resource-system-part-3/ […]

  52. Players are showing that they prefer games that stick to a single, narrow vision and implement that in a very polished manner.

    I see this claim a lot, especially from programmers… but I never see this claim substantiated with facts and figures and critical analysis.

    The reality seems to be a matter of misinterpretation. Players prefer games that are polished and ready-to-play while developers believe they can only produce games that are polished and ready-to-play when the games are simple and narrow. For the player, the simplicity and narrowness of a game doesn’t matter as long as the game is polished and ready-to-play, but — assuming that our customers aren’t simple-minded and totally attracted to mind-numbing robotic behavior that results in little fun — they would ultimately prefer a brilliantly fun game that is also polished and ready-to-play. Merely because polished and ready-to-play games are usually simple and narrow does not indicate that players will only ever be attracted to simple and narrow games. That’s just what’s available.

  53. Amaranthar wrote: But that would depend on how many rabbits and wolves there are, wouldn’t it? It would also depend on how large the dragons hunting range is.

    Oh absolutely. The deer element is just one part of the whole figuring-out thing. However, the ability to figure it out is dependent upon there being some predictability in the behavior. Based on what I’ve read, it sounds like there would be in UO if everything was implemented.

    This is why I think the players would need to be considered in the total ecological balance, so much so that their absence would need to be replaced by NPCs. This is an extremely complex system to balance, but the attempt to do so is a requirement lest the players break it for their own benefit (like laying waste to all lesser species and then pitching artist canvases to block the pathing of the Dragon they kill on schedule every day 🙂 ).

    Morgan wrote: Players prefer games that are polished and ready-to-play while developers believe they can only produce games that are polished and ready-to-play when the games are simple and narrow.

    I agree with this. Players prefer experiences they can play at all. Their patience with busted stuff is inversely proportional to the popularity of the genre. Given that lo these many years later we’re almost able to count on games that launch playable and content complete for a few months, players already expect a WoW or GW polish from anything they play.

    That, of course, impacts schedules and therefore budgets so much it requires devs to perform all sorts of concept triage. But at the same time, the barrier for entry for new devs continues to be set by huge companies with very deep pockets. Newer smaller companies have almost no choice but to consider truly innovative stuff unique in the genre and particularly unique against the sameness of the top picks.

    I don’t think we’ll see a day when all devs are self-publishing or publishers have a collective epiphany and decide to give the devs carte blanche of course 🙂

  54. …they would ultimately prefer a brilliantly fun game that is also polished and ready-to-playMerely because polished and ready-to-play games are usually simple and narrow does not indicate that players will only ever be attracted to simple and narrow games. That’s just what’s available.

    You seem to be inferring here that games with focused development are not fun. Or that games with focused development have to be simple. I don’t see how this follows. I would consider Spore and God of War both to be highly focused projects. Spore looks anything but simple and I think rather a lot of people found God of War to be quite fun.

    You could make a very complex game with a deeply modelled world through focused development. That would mean giving up on attempts cater to players that require directed experiences. I think that if you want an effective implementation you are pretty much going to have to do this. If you try to cater to those who want directed experiences and those who want dynamic, emergent experiences I think you’ll just fail with both audiences (with your audience splintering as I indicated above). I think it is technically possible to achieve this lofty goal just completely impractical in reality. I think a lot of design efforts fail because they are going after lofty ideals instead of seeking problems that can actually be solved. Something that is only possible in theory is mistaken as being probable.

    I am a programmer, yes, but I know plenty of artists, designers and producers working in the industry as well. I think it’s just the nature of the business that focused project management is very important to the success or failure of any game. Even more so for games that are ambitiously seeking to do what has not been done before. You shouldn’t try to steal WoW players with WoW-style directed play AND create innovatively modelled ecologies of massive scale at the same time. Either of those goals is rather heroic. And if you pick the latter then I think you have be prepared to market to a niche even should you succeed.

  55. I agree with everything you’re saying here about focus, StGabe, but titles ike God of War also have trouble earning out. A heavily narrative title like that can be seen as tightly focused from one side (focused on that narrative experience) or as a huge time sink in terms of dozens of disparate little game scenarios, with little reuse between them. Scope is a problem from many angles, and content is just as big a scope issue as anything else.

    Having worked both content-driven and systems-driven projects, I can tell you that the challenges are much the same in terms of focus — I am sure your experience is similar. If you double down on a system like the one I described, you can quickly get sidetracked into stuff that isn’t relevant, or you can quickly make progress against the task. It all depends on how you manage the project. Think of the puzzle game with algorithmic levels versus handcrafted ones.

    FWIW, I’ve found that when you have aspects of such a system working, a wide array of people find it immediately compelling and fun. But I’ve never gotten the chance to actually finish a game with a similar system working.

  56. StGabe wrote:
    You seem to be inferring here that games with focused development are not fun. Or that games with focused development have to be simple. I don’t see how this follows. I don’t see how this follows.

    I think we’re probably talking past each other, but I’ll act like I’m not confused.

    By "single, narrow vision", I thought you were referring to simple narrative, simple artificial intelligence, narrow player focus, narrow player impact, etc., and that players are actually attracted to this "single, narrow vision" because of the simplicity and narrowness. I responded to what I understood you were claiming with the opposing idea that players are actually attracted to the "single, narrow vision" because the resulting product is extremely polished and ready-to-play (e.g., World of Warcraft.)

    Considering that you seem to be talking about development and production methodologies, I’ll admit that your message isn’t clear to me.

    StGabe wrote:
    If you try to cater to those who want directed experiences and those who want dynamic, emergent experiences I think you’ll just fail with both audiences (with your audience splintering as I indicated above.)

    Right. That follows from the point I made in Part III (and several times in other discussions) regarding avoiding the temptation to please everyone. I think you misunderstood what Raph wrote though.

    Raph wrote:
    Nothing really precludes handcrafted content from being layered on top of a system like this, though, or tailoring as much of the experience as you care to above a system like this. The point is more that the underlying structures permit the developers more choices and — I think — even better handcrafting, if they choose to make use of the data.

    Raph is referring to the flexibility of the system, not the complete integration of the directed experience and the emergent experience. Raph wrote that this system does not preclude developing content (not exclusively) for the directed experience. The system allows for a combination of directed experiences and emergent experiences, but that doesn’t necessarily imply that the doses of direction and the doses of emergence should be equivalent. The two design methods need to be balanced to achieve a complementary effect, but the project as a whole should be focused on either the directed experience or the emergent experience.

    StGabe wrote:
    Something that is only possible in theory is mistaken as being probable.

    On the other hand from a scientific perspective, something that is possible in theory means that something is falsifiable and therefore worth further investigation. Moreover, we don’t know if something is only possible in theory until the theory is proven false.

    StGabe wrote:
    And if you pick the latter then I think you have be prepared to market to a niche even should you succeed.

    The concept of the "niche" is widely misunderstood. There are many misconceptions and many myths associated with the "niche" concept to the extent of some people believing that niche products are unsuccessful and immemorable, that niche markets are small and expendable, and that focusing on niche ventures is somehow "bad" and wasteful. These beliefs are all patently untrue.

    Look up "niche" at Inc.com, Entrepreneur.com, and Harvard Business Review. Many people before me have more eloquently discussed the niche "niche" topic.

  57. That was a very interesting read. I’ve worked for quite some time in the UO freeshard scene as scripter and dev for so called UO server emulators and its fascinating to read now how you planned to do it and compare how we did it for our server systems and scripted around it. Seems quite some concepts are again and again in every emulator system reinvented but others have been done differently. And actually the virtual world system with respawn of npc based on ressources and number limited by predator ratios has been established at least at one german project called Siebenwind. Except that the wolfes were for example not decreasing to zero when the rabbits were killed totally. The number was low but they existed.
    I remember the time very well from the player perspective when the beta ended, this system was activated and the woods and meadows were cluttered with countless rabbit corpses and they were close to extinction. The players begged for higher spawns but the staff stayed at its point and said it would all regulate it, we only had to be patient till the first were high enough to hunt real prey. Took I think 3 month. And much devotion from player. But yeah it worked.

  58. Players as part of the ecology… Looks like there are basically two problems here, that the ecology has to be robust enough to handle-

    – Hourly fluctuations in player population. Are these numbers predictable enough that having the ecology change “seasonally” — based on real time of day — could help even out some of the swings?

    – Changes in the player profile over time. At first they’re all newbies hunting rabbits, later on they’re mainly established, etc. Also includes smaller local waves, like leather being in higher demand because leather-wearing characters are re-equipping for some reason.

    Any more people can think of? The engineering discipline of Control Systems includes a nice toolset of equations that might help solve whatever problems we can sufficiently define.

  59. Morgan:

    Ok, I think we understand each other. I don’t think I misunderstood Raph but I could have. I understand that he thinks the result of such an endeavor will be flexible I just think this is impractical in reality.

    Here’s where we disagree:

    On the other hand from a scientific perspective, something that is possible in theory means that something is falsifiable and therefore worth further investigation.

    Absolutely not. We don’t investigate everything that is possible. There are millions of hypotheses such as “God exists” and “the world is full of invisible pink unicorns” which are possible (“not falsifiable” which I suspect is what you meant) but not probable and not worth scientific investigation (philosophical/theological consideration is a different matter).

    In Richard Dawson’s writings he talks about how common it is to underestimate really big numbers. He is referring to how easy it is to underestimate the vast machinery of evolution undertaken over millions of years. In this case I think it is easy to underestimate the extreme difficulty of creating stable, very complex, dynamic systems that also lead to fun games. If one in a million possible systems will work then that might be worth persuing but what if it’s one in 10^100^100. It’s easy, and a mistake IMO, not to consider the differences between these too cases. It’s easy to explode into exponential possibilities and in such cases the possible quickly becomes infeasible.

    I can design a dynamic system like this resource system very quickly. That is probably the easy part. But it will almost certainly dead-end. It could lack stability (all the rabbits die off every time). It could lack interest (it’s too hard for players to notice how they can affects on the system). It could be too chaotic (it appears random to players). Etc. The existence of a formally interesting system does not speak to its actual utility as a piece of a game. Getting all this worked out is a monumental task. Having this work out in a way that dovetails well with the highly-structured narratives that I think most players want? Having it work with populations of players that are really only interested in gaming the system? Creating appeal for those players interested in dynamic content without alienating those interested in directed content? Not allowing directed content to marginalize dynamic content? I think we don’t have games that do a very good job of this exactly because it is a near impossible thing to do at present and because most players aren’t that interested in it anyway (and I do count myself as one of those who is).

    It’s like “climbing a tree to the moon”. You can see the tree and the moon. And at the bottom you can see plenty of branches to start heading up. But just because you’re making progress early on doesn’t mean you’re going to reach the moon. Rather than climbing until you reach the top it’s likely smarter to try and figure out in advance whether this is truly a path that can lead to the goal or not.

  60. In short, however, StGabe, you’re only saying that it’s really hard to do it right; not that it’s impossible. That’s an important difference.

  61. I can tell you that getting the basics in place for just stuff like temperature, rendering, tiles, and the world is fairly easy and hard to unbalance. And it alone allows for a bunch of effects.

    Once you get into the AI side, I agree that it’s a very non-trivial endeavor. Whether it’s worth it is very much a question of how the overall equation for development shapes up.

  62. In short, however, StGabe, you’re only saying that it’s really hard to do it right; not that it’s impossible.

    I am saying that between impossible and possible there lies another crucial threshold: feasible. That’s the difference between a 1 in a million shot and a 1 in 10^100^100.

    As I understand physics, it is theoretically *possible* that all the particles in the wall next to you will decide to move towards you at the same time causing the wall to engulf you. It is improbable to such a degree that it never happens. It is so improbable that is worth ignoring completely as a possibility.

    It is far too easy to argue for something just because it is “possible”. Anything is possible. Maybe gravity isn’t 9.6 m/s^2 on earth. It just happens that every time this was tested there was some strange local phenomena which distorted the value. That’s possible. Should we give this thought much consideration though? Is my argument effective just because I’ve demonstrated “possibility”?

  63. Holy hyperbole. Surely you don’t propose that the system Raph describes ‘working’ is as improbable as a wall engulfing a person (or the more traditional example of a shattered cup re-assembling).

    Certainly, I understand and appreciate that there will be difficulties, but they are reasonably achievable. After all, people have been making stable simulations of climate, nuclear explosions, and economic systems for years … probabably on lower budgets than are spent on most AAA MMO’s these days.

    I once read a stat that the variance in productivity between coders can be as much as 15:1. I’m sure its the same in many fields. What might seem hard to one person might literally be a trivial undertaking for another.

  64. Yes, but that’s confusing an event you react to versus an event you are trying to bring to pass. The comparison is just invalid. Generally speaking, we don’t know to cause a wall to engulf you like that (or so I assume); we do have a testable model which we can attempt to implement. We even had a broad understanding of where to look it it doesn’t work.

    It’s not a matter of “It could happen;” it’s a matter of “We could make it happen.” To be fair, that’s what the term “feasibility” is supposed to speak to in the first place. Echoing tuebit, then, you have to ask, “Feasible for who?”

    Your argument appears to be, “It takes too much effort, thus you shouldn’t even think about it.” I can’t understand that. It takes a lot of effort to do anything. How is effort even a viable metric? Am I just misinterpreting?

  65. Holy hyperbole.

    It is merely a good example that explains the differences between “possible” and “probable” or “feasible”. Proving that something is “possible” really doesn’t mean anything if you are interested in practical applications.

    Certainly, I understand and appreciate that there will be difficulties, but they are reasonably achievable. After all, people have been making stable simulations of climate, nuclear explosions, and economic systems for years …

    I used to do some research in climate modelling. I’m pretty aware of how studying these systems works. Climate models, even with a lot of simplifications, are very complex beasts and have been studied for 10’s of years by hundreds of people at a time. And still climate predictions have unfortunately large degrees of error.

    Climate models are much simpler than what is being asked for here. You run a climate model with a set of variables on a supercomputer. You don’t care if it is “laggy” or takes a while to compute. Then you get an answer and you are done. The only interaction from outside comes from how values for the various variables are determined. Having this system interact with thousands of unknown variables at a time is a very tall order. It is hard enough to stabilize even the simplest MMO dynamic content like global markets. And Raph is asking for this system to remain flexible enough to allow a lot of directed content as well.

    I think that there’s lots of room for movement here. We can should continue to investigate interesting ways to integrate dynamicism into our online worlds. But to think that we can just cook up a full working ecology for a game, stabilize it, get players to enjoy it, and maintain directed experiences all at the same time seems like a very impractical goal at this point in time. And I strongly disagree that we are about to see a revolution towards online worlds that offer this sort of content. I think that what most players really want is the “be a hero” experience and that this will continue to be offered through very “paternal” MMO’s that control as much of the world as possible. If MMO’s become more distributed and player content is viable then it will still take the form of directed narratives for the most part. IMO, these are the sorts of problems that takes lots of research done over decades, probably only to lead to partial solutions. It is far easier to fake an immersive, complicated world than it is to make one and will continue to be so for a long time. As long as the computer has been around we have thought that artificial intelligence of a quality comparable to human thought would be right around the corner and yet the studies are artificial intelligence and cognitive science cannot be described as anything but in their infancy 60 years later. That’s how hard a lot of these problems really are.

  66. Your argument appears to be, “It takes too much effort, thus you shouldn’t even think about it.” I can’t understand that.

    That’s not my argument. In fact what I am trying to explicate is that the issue is not as black and white as you paint (or as I would be painting it if your quote was what I was arguing). I am saying there is a large spectrum between “possible” and “impossible” and that it is worth trying to understand where on that spectrum a given problem resides. And worth admitting that the things you want may not be solveable at this time or may require much smaller steps towards a larger goal down the road.

  67. StGabe wrote:
    Absolutely not. We don’t investigate everything that is possible.

    Right; however, we should investigate everything that is possible in theory. Big difference.

    There are millions of hypotheses such as "God exists" and "the world is full of invisible pink unicorns" which are possible (”not falsifiable” which I suspect is what you meant) but not probable and not worth scientific investigation (philosophical/theological > and therefore capable of being tested. In science, a "theory" is not an unsubstantiated guess or hunch, as Wikipedia described.consideration is a different matter).

    Those are neither hypotheses nor theories. You’re conflating belief with science. A scientific "truth" must be falsifiable and therefore capable of being tested.

    I think that what most players really want is the "be a hero" experience and that this will continue to be offered through very "paternal" MMO’s that control as much of the world as possible.

    Again, I see this claim a lot, especially from programmers (who seem to always opt for and advocate the easiest route regardless of the gains to be incurred from innovation…) but I never see this claim substantiated with facts and figures and critical analysis. To repeat what I wrote earlier, with which you claimed you agreed, the "be a hero" experience is just what’s available as a polished and ready-to-play product. Limiting availability does not limit the possibility and/or practicality of other options.

  68. I see where you are going with theory and falsifiable now but I think it is just semantics and you are using “theory” different than I am. There are still many scientific things that are “possible” but not “feasible” (look at my example of particles in walls).

    I’m not sure what the point of the comments about programmers is. Personally I have no bias towards the easiest route (easy is boring). I am often the one person in the room arguing against the “easy” route because I think that it is a shortcut which will lead to a shoddy/unfinished product. What I do have is a respect for really hard problems and experience. I also have experience with scrapping months of work just because we didn’t do enough thought as to whether a certain plain was feasible or not early on.

    I don’t want the easy route. I just want enough understanding of the goal to be realistic about whether it can be reached or not, either through “easy” or “difficult” efforts.

  69. StGabe wrote:
    I don’t want the easy route. I just want enough understanding of the goal to be realistic about whether it can be reached or not, either through "easy" or "difficult" efforts.

    In that case, the objective of design is to solve problems, not devise excuses for not solving complex problems, so let’s return to the discussion about the memetic resource system and how this system can be implemented in a practical manner.

  70. In that case, the objective of design is to solve problems, not devise excuses for not solving complex problems

    It has nothing to do with an excuse for not solving problems. I’m not saying that people shouldn’t think about or discuss this stuff but merely that, in my opinion, it is not going to be a solved problem for a very long time.

    You’re probably just reading me as just flaming but I’m not saying this just to be contrarion — it is my honest opinion of the matter. As I’ve bounced around subjects like climate modelling, cognitive science and game development, I’ve come to terms with the fact that there are problems with no good solutions and problems that will require decades of work to even dent. I’ve also come to respect that real world game development is a matter of making the best out of limited time and limited money. To believe this doesn’t mean that we should only look for easy answers. It just means that we should be realistic about what we can and cannot accomplish in a given time frame.

    Anyway, I’ll shut up. It was never my intention to try and shut you guys down. Rather I wanted to give a different perspective and an opinion as to what results we’ll see on this subject in the next couple decades. In 20 years you can dig this up and see where we’re at. Remember I *like* complex, dynamic games. I love thinking about them, making them and playing them. I’m just trying to be honest about what I think the future holds.

  71. I’ve also come to respect that real world game development is a matter of making the best out of limited time and limited money.

    Duke Nukem Forever. 🙂

    It just means that we should be realistic about what we can and cannot accomplish in a given time frame.

    It also means we should look to solving the problems that create the barriers to developing complex, dynamic games. That’s one reason why I’m a member of the International Game Developers Association. I believe that we can effect change, improve business practices, increase growth and thus effect maturation, and reorient industry talent to innovate. While I also advocate being realistic, I also advocate looking forward because too much focus on what’s realistic can sterilize creativity and encourage complacency.

    I’ve come to terms with the fact that there are problems with no good solutions and problems that will require decades of work to even dent.

    I think everyone here would agree that there are hurdles that must be overcome. What are the hurdles we face and what can we do to overcome those challenges? Those are the billion-dollar ultra-important questions that are most relevant to the understanding that the road upward is not paved with gold.

  72. Hey,

    The way I see it is that everything being done to set up a dynamic and adaptive environmental layer is all sophisticated smokes and mirrors for the pursuit of creating better MMORPGs.

    We can all start modeling genetics like Jurassic Park and get the boom/bust effect, but I don’t think that what people want. The specs that Raph described (minus the intelligent AI part) are not too complex to implement.

    Raph

    I can tell you that getting the basics in place for just stuff like temperature, rendering, tiles, and the world is fairly easy and hard to unbalance. And it alone allows for a bunch of effects.

    Once you get into the AI side, I agree that it’s a very non-trivial endeavor. Whether it’s worth it is very much a question of how the overall equation for development shapes up.

    The real hard part is building the intelligence layer that doesn’t break the primary environment layer, because as we all know if Earth was running at a MMORPG speed, we would have depleted our oil resources and lots of creatures would have gone extinct 🙂

    So my agreement with Raph is to build a robust, broadly defined environmental layer as a better MMORPG platform and “smokes and mirrors” toolset.

    There are some groups making headway in the middleware area. Maybe something like what is being discussed will be ready in 3-5 years.

    Frank

  73. magicback wrote:

    The real hard part is building the intelligence layer that doesn’t break the primary environment layer, because as we all know if Earth was running at a MMORPG speed, we would have depleted our oil resources and lots of creatures would have gone extinct

    Despite Earth not running at a MMORPG speed, lots of creatures have in fact gone extinct 🙂

    StGabe wrote:

    And I strongly disagree that we are about to see a revolution towards online worlds that offer this sort of content. I think that what most players really want is the “be a hero” experience and that this will continue to be offered through very “paternal” MMO’s that control as much of the world as possible.

    What do you base “most players really want to be a hero” on, exactly? From what I’ve gathered, players are equally (or more) interested in being part of something bigger than themselves – ingame player communities like guilds/clans and player towns, for instance.

  74. Zuri– What’s to say that being a hero has to be an individual experience? Players recognize that once 1000+ players have soloed that dragon, defeating it isn’t really a heroic act.

    Maybe this brings to mind a solution, though; games that make killing the dragon important not simply because it’s difficult, but because of the consequences that would arise from not killing the dragon, would keep the act heroic. And you could do it in a simulationist-style game. Although this would make doing things ingame more work than play, so again, you’ve got a problem.

    I believe MMOs will continue to be paternalistic and will attempt to control parts of the world until they understand how to make a game economy / ecology robust enough that players are able to be a part of that economy / ecology without breaking it. Because honestly, players are a huge part of the game ecology, and looking at them as being somehow separate from that ecology is missing the point entirely.

  75. Raph, you’ve had far more experience with players and how they interact with a gameworld than just about anyone here. Would you care / have the time to post something looking at players and player types from a specifically ecological point of view? The Life Cycle of the Common Achiever, etc?

  76. Hmm, maybe, Jim. I’ll give it a shot, but sometimes I start posts and they don’t catch fire. 😉

  77. Raph, lots of us are playing whatever right now (WOW, EQ2, L2, etc.) but we’re really waiting for something special, different, and new. Brad McQuaid’s not going to give us that. He’s going to give us another EQ clone. Blizzard doesn’t innovate, they perfect whatever currently sells, even if it sucks.

    Lots of us are waiting on you, Raph. Just let us know if/when we can look forward to something.

  78. Understandable. Maybe you could talk Richard Bartle into doing it if it didn’t gel for you, as a way of fleshing out some of the very high-level ideas on playstyles and playstyle progressions he’s written up before.

    It would be most useful to see this sort of ecology from a very detailed (low-level) point of view, if things could be generalized usefully at that level– which I think they could.

    – At first newbies consume such things as low-level equipment and monsters, and tutorials, and produce such things as naive customer service calls and groups in the Newbie zones.

    – In midlife they may do things like consume mid-to-high content as rapidly as they can, consumables that raise their skills (including Crafting ingredients and such), web-based walkthroughs of quests and websites, and they produce guilds and maybe pickup groups to help them achieve their ends.

    – As an elder they produce MUDflation — only a few more high-end itms to get, nothing to spend it on except that and twinks.

    —–

    Ok, I pulled a lot of that out of my thin air, I’m very curious to know how much of it is backed up by actual experience, or what the real story is.

  79. Would you care / have the time to post something looking at players and player types from a specifically ecological point of view? The Life Cycle of the Common Achiever, etc?

    In Bartle’s book, he DOES talk about progression of a player through four different possible tracks. I can dig it up and post if you haven’t read it yourself.

  80. Michael- That was the “high level” progression I was referring to. I’d be curious about the ecological role and evolution of different player types from a more nuts-and-bolts point of view. The more we know about how they behave, the less of an impossibility to design an ecology in which they wouldn’t imbalance everything.

    An ecology that doesn’t involve static spawns anyway. 😉

  81. Well speaking of static spawns:
    http://www.msnbc.msn.com/id/13068383/

    An ecosystem sealed off for a few eons. Interesting find surely. What about a system wherein the game is premised on the discovery of a closed
    ecology where the players are interoduced as those whove “discovered” or rather rediscovered it and therby impact its balance. (ala Land of the Lost).

    Now this happened recently in New Guinea: http://news.bbc.co.uk/1/hi/sci/tech/4688000.stm

    On a much larger scale than the cave over a much larger area. And of course one would have to build in challeneges but explaining the system as a previously closed ecology would limit the rule sets, (and build time?) required to generate this type of world?

    Just kind of blabbing off the cuff, new creatures are always interesting 🙂

  82. – At first newbies consume such things as low-level equipment and monsters, and tutorials, and produce such things as naive customer service calls and groups in the Newbie zones.

    – In midlife they may do things like consume mid-to-high content as rapidly as they can, consumables that raise their skills (including Crafting ingredients and such), web-based walkthroughs of quests and websites, and they produce guilds and maybe pickup groups to help them achieve their ends.

    – As an elder they produce MUDflation — only a few more high-end itms to get, nothing to spend it on except that and twinks.

    All that seems a good reason to get away from the strict level-based ideaology that dominates our MMOs today. A sword’s potential shouldnt be based on it’s assigned item-level. Does the owner of the sword know how to use it? Was it sharpened recently? Is it starting to rust from sitting on the bottom of that pool for years? Has it been imbued with magical power?

    I really detest the concept of my sword is better than yours because mine is level 10 and your sword is level 1 and you cant even use my sword because you’re only level 5. And having your crafting skill determined simply by the amount of resources you’ve wasted is equally painful (who remembers the dozens of bookcases you would find scattered throughout the woods in UO?)

    A lot of these basic, thats-how-its-been-done-before concepts need to be thrown out completely if you really want to attempt to create a dynamic, interesting, simulation-based world.

  83. I’d be curious about the ecological role and evolution of different player types from a more nuts-and-bolts point of view. The more we know about how they behave, the less of an impossibility to design an ecology in which they wouldn’t imbalance everything.

    Well, the problem with asking for this is that psychologists have yet to come up with a reliable way of even beginning to talk about it. Every system or model that I’ve heard of has come under non-trivial attack for very valid reasons. In truth, if we actually could solve this kinda thing, we should also hand it over to the UN. Immediately. Human beings ARE throwing our real world ecology out of whack, after all, and the UN is TRYING to do something.

    Still, it’s worth thinking about, but I’d say it’s far wiser to simply implement something, monitor it closely, and plan out contingencies for when things break, yet remaining as lighthanded as possible. In other words, play God, contradict yourself, and hope. =P

  84. “In other words, play God, contradict yourself, and hope. =P ”

    ROFL…

    Great comment, you just made my Saturday.

  85. […] selected Teeside as my Uni next year for a computer games programming masters. Today I worked on a C# DirectX Form that’s a basic tile engine. With only a DirectX enabled form (clearing a panel to apackaged bundle of analogies. Pick up? (Y/N) target=”_top”>Furl | Newsgator | Rojo | MyYahoo # posted by Dan @ 12:06 PM    Comments: Post a Comment Links to this post: Seelinks to this post   posted by @ if (typeof BL_addOnLoadEvent == ‘function’) { BL_addOnLoadEvent(function() { BL_writeBacklinks(); }); } […]

  86. […] The ORIGINAL UO This is a series of articles written by one of the original designers of Ultima Online, Raph Koster. He used to work at Sony Interactive or whoever produced Star Wars Galaxies, which was supposedly UO’s successor. I never played it, I don’t know. These articles describe the way the world of Brittannia was supposed to have worked. They’re a little geeky, and you need to understand at least a little bit about how computers work and games are programmed to really wrap your head around how amazing this idea was. It never made it to UO’s release because of technical difficulties (slow computers back in 1997). However, I think it’s worth a read, and might be worth some consideration the next time the team goes to revamp monster spawns or wants to add quests or anything like that. The article is broken up into 3 parts, and they don’t link to each other, so I’ll link them seperately here. UO’s Resource System: Part 1 UO’s Resource System: Part 2 UO’s Resource System: Part 3 […]

  87. […] Hurray! I would love to see some naval combat! The Duchy needs a coast guard 😛 I like the formation ideas although in combat, it would be quite a sight to see. The Borrowers used to just hide a group and send in a quick theif to start some trouble then run away with an angry mob chasing him right into the ambush. This worked very well when UO introduced the houses (before they complicated them). Although it may not seem like a very honorable form of combat it is very effective >.< People loose their heads when they think they’ve got some easy bait https://www.raphkoster.com/2006/06/04…system-part-2/ "An example that comes to mind is the Trinsic Borrowers and their army of slimes that crashed the shard and forced an update that made slimes no longer divide." I miss the good old days… […]

  88. […] Ultima Online’s Resource System II […]

  89. […] The core of what Kristen and I had talked about on that road trip was putting abstracted properties onto objects. Rather than building a recipe out of the item ID numbers for every object that worldbuilders had made that was �raw wood,� we would instead track that the object was made of wood. And then the crafting code could just query, �is this wood?� and if so, do things with it. … We ended up saying that a given object (which was still defined in a template) could have as part of it, a set of resources. A resource was just a label � nothing more and nothing less. (Much later, in SWG, that team would introduce the concept of resources with stats, but that�s a post for another day.) The server had a list of the resources that existed in the world, and designers could create new ones fairly readily. Resources were things like METAL, WOOD, and CLOTH. But they were also things like MAGIC and PLAYER and other such abstract qualities. UO�s resource system, part 2 on Raph Koster Permalink | 1 Comment | Post a Comment Ultima Online Bring a Friend to Britannia Program May 28, 2006 – 11:25 AM Ultima Online Bring a Friend to Britannia Program […]

  90. […] was originally planned/attempted in the early UO and the reasons that it didn’t work (Part 1, 2, 3).Which is very interesting to me, since I have been reading up what I can. In a strangely […]

  91. […] regularly blogs at his website. I don’t care! What about the original resource system? Articles: 1 2 3 There’s also a lot more information on game design to be found on the website and plenty of […]

  92. […] of articles by Raph Koster on UO’s (planned and never fully implemented) Resource System: Part 1 Part 2 Part 3 This is pretty much the reason I got into MMOs in the first place – I was thoroughly […]

  93. […] you have no idea what he’s talking about,https://www.raphkoster.com/2006/06/03/uo … ce-system/https://www.raphkoster.com/2006/06/04/uo … em-part-2/https://www.raphkoster.com/2006/06/05/uo … […]

  94. […] muss noch darüber nachdenken :-)Bis dahin kann ich das hier empfehlen:UO's ressource systemUO's ressource system 2UO's ressource system 3by Raph CosterUngefähr so möchten wir es handhaben. Wenn du es […]

  95. […] have the environment generate quests as illustrated through this article series by Raph Koster: 1 2 3 4. But with a system like that it would be very complicated to have actual quest lines with good […]

  96. […] He wrote some pretty interesting stuff about the UO resource system that can be found Here Part 1 Here Part 2 and Here Part 3. This has been posted before, but most of the people around these days are new so […]

  97. […] and getting PK’d all the time as I mined ore (which was always gone due to the now-defunct resource bank system). I took some time off for a few years but eventually found my way back. A lot had changed […]

  98. […] Koster wrote an interesting three part post (post one, post two, post three) about the resource system in Ultima Online, how it was suppose to work, and why it […]

  99. […] mobs that kill you and use your equipment would be cool though. I once read an article Here. Written by one of the creators of Ultima Online. He described how animals would become stronger the […]

Sorry, the comment form is closed at this time.