April 12, 2001 - The Story Thus Far: Achievement-type games face a dilemma. Players use up the resources that the StoryBuilders create by killing monsters, looting dungeons, and removing all the drinks from the bar. StoryBuilders need to figure out how to replenish these resources without going insane. Part One of this series discussed these overall issues.
One traditional solution to this problem of dynamism has been to constantly recreate the same or similar objects. This has typically involved the dreaded "reset", but also could be implemented by increasingly sophisticated systems... ultimately resulting in complete simulations. Part Two of this series discussed the strengths and weaknesses of object recreation.
There's another route: you can create new and different objects as players use up the old ones. Having StoryBuilders do so by hand is crazy, but there are other possibilities. Part Three of this series, which is what you're reading right now, offers some suggestions on this method.
As you'll see both of the methods I suggest here take out the necessity for StoryBuilder interactivity. They instead depend on characters to take active roles in the creation of new things. Because of this limitation this isn't a complete solution... but it's a great start and a wonderful adjunct for a system primarily based on object recreation.
Letting Players Pull the Trigger
So if you don't want a StoryBuilder to build a new room every time those darned players clear out the old one, what do you do? My first suggestion is to create an automated system for new object creation that's ultimately triggered by players. This whole system has some similarities with the quasi-random resets I mentioned last week (reset by event) and some similarities with simulations. However I think it has some unique features as well.
The basic idea is this: you give players the ability to create things in the game. What gets created, thus, is totally within the hands of players; the activities that they take in the game directly produce results that they see as new objects.
At the simplest level this could be a crafting system. Players can create swords, armor, food, whatever. Suddenly you have an inflow of objects into the system and so you don't have to worry about resetting old objects that get destroyed.
I can imagine a similar system for repopulating monsters. If there are players who are villains they could have direct ways to create monsters. They might whip them up in their vats or release them from underground lairs or engage in negotiations with monster leaders which ultimately result in more critters being created.
We're considering developing a semi-automated player-triggered system like this for creating new rooms in The Bane. (Let me carefully underline the word considering. Our design for The Bane isn't sufficiently developed yet for me to make any promises... or rather it's not sufficiently developed for me to make any promises and not suffer the wrath of The Bane's lead game developer.)
Anyway, I don't want to spoil any of The Bane's background, but let me say that due to part of the backstory there will be ways that players can cause new "rooms" (really, outdoor areas) to be created. When a new room gets created it will be mutable at first. The room will be relatively barren land, the exact type of which is influenced by nearby land types and by the patron deities of the players who helped to create the room.
In order for the new room to actually become a viable part of the local ecosystem certain rituals must be done over the land. Seeds must be planted, songs sung, that type of thing. As a result of this the previously barren land is filled with trees, plants, and wildlife. Certain critters might be set to appear in the room; certain events might regularly occur.
And this is where my idea of a semi-automated player-triggered object creation really differs from the good 'ole object reset. By allowing objects to contain a number of different properties, and by allowing those properties to get set based on player action, you suddenly are creating objects that are arguably new, not just copies of the same things.
In my room creation example there might be a total of 7 different land types, each of which can have three different descriptions based on the patron deities of the players involved in the land creation. There might be 20 different wildlife types and 20 different plant types, leading to a total of over 8000 distinct combinations; we tie some of those possibilities to different object and critter creations and those numbers multiply even more. With 10,000+ total different rooms that can be created it suddenly does appear that we're creating new and unique objects.
Players in Marrach will realize that this is very similar to the new alteration system we've introduced into Marrach, where players can take garments and set colors, fits, etc. Again it's a case of allowing players to create mostly new objects by taking actions.
So, really "new object creation"? Kind of. And probably the best you can do without really having StoryBuilders make totally new objects. And, there are ways to expand it...
Expanding the Player Possibilities
One way to expand a semi-automated system of new object creation is to allow more player input into it. Basically, you let players contribute totally unique information to an object that's being created.
The safest way to do this is to grab information from the environment and use that information when creating the object. The player chooses the environment, and thus helps to contribute to unique information. Some examples:
A large amount of information is probably available in the game environment, but it's still a finite amount. If you really want to introduce an infinite amount of information you must allow players to enter arbitrary text.
For example, a player creates a new shop in town, using the semi-automated system to determine the type of shop (he chooses restaurant), the quality of the shop (mediocre because he doesn't have much money), and the furnishings (he chooses large, central tables). The shop is already pretty unique because he's produced 1 of the 10,000 shops possible (or whatever). But, the player also has another option: he gets to choose the name of the shop, which he writes on the hanging sign out front (after careful thought, he chisels "The Spare Rib"). His shop is now utterly unique... or at least as unique as a shop named "The Spare Rib" would be in real life.
Technically you could expand this out to the extreme and just let a player totally describe an environment that he creates his house, his castle, his shop, whatever. This is a pretty dangerous route, however, because you chance totally destroying the integrity and coherence of your game world.
My suggestion is to limit player entry of new text to a sign, a label, or something similar. You'll even want to limit how much people can write. There's some opportunity for the same problems, but you've minimized them, and you get a big win in new object uniqueness.
As a side note, let me say that you don't even have to restrict these techniques, which I call "player tagging", to newly created objects. You might give players the opportunity to tag existing objects. Thus objects which were once totally standard become unique. Citizens of a town might be able to rename the town hall or choose what to plant in an empty field.
With StoryBuilding on Top
Thus far I've described a system where new objects are created in a semi-automated way, with player input making those object fairly unique. Player tagging of textual phrases can make those objects entirely unique. There's one more level: you can have StoryBuilders hand modify objects that have been automatically created.
A StoryBuilder can look at which newly created objects (be they rooms, monsters, items, whatever) are the most popular. He can then hand modify them based upon how they're actually being used.
The big wins are: the StoryBuilder doesn't have to initially create the object and he only works on the objects that are very popular. Thus automatically created objects become true parts of the ongoing storylines.
A Solution to the Problem?
I think the system I've described here has a lot of potential for introducing new objects into Achievement-type games. In addition it ensures that they're quite unique. We've already used it to good effect in the Alteration system for Marrach and I expect it'll allow for the new creation of interesting new rooms for The Bane, provided we're able to introduce that system there.
The question is, however, does it totally fix the dynamism problem?
I'm not convinced it does, but I think it can expand a lot of systems in an online game. By combining it with object recreation mechanics, you can insure a lot of creativity.
Here's a quick rundown of my thoughts on how new object creation works for different item types:
So, not a slam dunk, but I think the ideas I've described here for new object creation are an excellent adjunct to the concepts I described next week, for making object recreation more interesting.
What Does This Mean for You?
So, you're a Skotos StoryBuilder and you're now trying to figure out what the whole issue of object dynamism really means to you. Our engineers at Skotos are going to be the ones creating the fundamental reset or simulation systems, and so you won't have a lot of ability to make changes at the system level. But, you should think about the entire issue.
Here's a few lessons to be learned from last week's article on object recreation.
And here's some stuff to be aware of from this week's article on new object creation:
That's it for this week. I hope you've enjoyed this investigation into one of the many big issues affecting online game designers. My goal next week is to write something self-contained. In the meantime, I'd love to see more comments on this topic.