August 2001
- [DGN] RP awards (was: Something in the water) Ananda Dawnsinger
- [DGN] RP awards (was: Something in the water) Matt Mihaly
- Anarchy Online (was Community Feeling) Matt Mihaly
- Anarchy Online (was Community Feeling) Hanz, Rob
- Anarchy Online (was Community Feeling) Travis Casey
- Anarchy Online (was Community Feeling) Dave Rickey
- Anarchy Online (was Community Feeling) Richard A. Bartle
- Anarchy Online (was Community Feeling) Steve {Bloo} Daniels
- Anarchy Online (was Community Feeling) Koster, Raph
- Anarchy Online (was Community Feeling) Daniel.Harman@barclayscapital.com
- Anarchy Online (was Community Feeling) Daniel James
- CGMud testing Chris Gray
- TECH: STL / Heaps, Eli Stevens
- TECH: STL / Heaps, David Bennett
- TECH: STL / Heaps, Travis Nixon
- TECH: STL / Heaps, Vincent Archer
- TECH: STL / Heaps, Sean K
- TECH: STL / Heaps, Daniel.Harman@barclayscapital.com
- TECH: STL / Heaps, Sean K
- TECH: STL / Heaps, Caliban Tiresias Darklock
- TECH: STL / Heaps, Adam Martin
- TECH: STL / Heaps, Ola Fosheim Grøstad
- TECH: STL / Heaps, Ling Lo
- TECH: STL / Heaps, Paul Schwanz
- TECH: STL / Heaps, Chris Jones
- TECH: STL / Heaps, Kwon Ekstrom
- TECH: STL / Heaps, Caliban Tiresias Darklock
- TECH: STL / Heaps, shren
- TECH: STL / Heaps, Jon Lambert
- Dictionary of Body Language ling.lo@coment.dk
- Dictionary of Body Language Koster, Raph
- Where to go with the maddog page Frank Crowell
- Academic journal on computer games Jussi 'Sulka' Haro
- "The gaming situation" by Markku Eskelinen Jussi 'Sulka' Haro
- "The gaming situation" by Markku Eskelinen Ola Fosheim Grøstad
- "The gaming situation" by Markku Eskelinen Madman Across the Water
- "The gaming situation" by Markku Eskelinen Matt Mihaly
- "The gaming situation" by Markku Eskelinen Travis Casey
- Non-Linear Item Combination Systems... Justin Rogers
One of the big discussions on the list of late is how to appease the
largest group of people possible by implementing as many of the
basic Multi-Player RPG scenarios as possible. So far these have
come down in several groups including social scenarios, combat
scenarios, role-playing scenarios, pk scenarios (separate from
combat scenarios because we've kind of proven a true pk RPG doesn't
have much hope), and trade skill scenarios. So at this point I'd
like to move another conversation just into the realm of trade skill
scenarios, since I view trade skills as an extremely attractive part
of any game.
Let's start with a small definition of the trade skill scenario.
Trade skills allow players to generate their own items that normally
would have to be bought from an NPC vendor elsewhere in the game.
They may also allow the creation of unique items, flawed items, or
superior items. Trade skills require that two things to be
successful. First they require quality ingredients for any portions
of the trade skill that require combinations. Second they require a
good skill within that trade skill to produce a quality item in the
end. Trade skills in turn give a player who doesn't wish to
participate in the active content (monsters, battle systems,
quests), the opportunity to provide aid to the active content
players in the form of items. They produce lines of trade wherein
the trade skill player needs items that only an active player may be
able to achieve and vice versa. In the end, Trade skills act as an
integral part of the game itself becoming a sub-game (see the
scenarios I've provided above, each scenario is enough to be a
sub-game, with all other scenarios being escapes for players from
their preferred sub-game).
But how do you go about implementing a solid trade skill system? My
vote is that you install as many variables as possible in the
creation of the trade items so that it takes some human interception
of intermediate portions in order to complete the item in question.
I'll begin by enumerating these variables and then I'll describe
them later. The variables include a large amount of base components
and intermediate components, varying levels of difficulty in
achieving the components, varying levels of component availability,
applying grades to materials, utilizing a players skill, allowing
different skills to work on the same components but produce
different items, randomly allowing a rare combination of items to
produce something (possibly extremely good, or even extremely bad),
a final grade based on the components and skill of the trade skill
player being applied to the final item.
Let's start now with base components. You'll need a large amount of
components. Some of which have no ideal combination paths, others
which do, and then there is always the idea that a non-combinable
component will magically combine at this instant in space and time
and make some yet undetermined intermediate component. Base
components should be available for sale by NPCs, some should
naturally appear on the landscape (flowers, grasses, herbs), other
should be found on different types of terrain, some should be parts
of monsters, some should be quest items, and I'd also argue that you
should be able to tear down existing items and retrieve some of the
base components used.
Intermediate components are components that are made up of 2 or more
base components and other intermediate components. These items
store the properties of the base components or some combination
there-of and will be responsible in some way for the final
properties of the top level item being created. Some items should
probably have 30 or more intermediate components required to build
up to a final item, others should be trivial and straight forward
possibly requiring only that you combine several base components.
Each level of intermediate components gets a new grade based on your
skill and the grades of the components used, this is the important
part of requiring that great items require a large depth in
intermediate components, while simple items contain only a few. The
fewer locations to affect grade the better the item can possibly be.
Varying levels of difficulty in achieving the components means they
are part of a quest, part of an easy or difficult monster, or
possibly strewn throughout a dangerous location in the world.
Limiting the availability of a base component will in turn limit the
availability of any item that requires it. This will mean that more
often than not existing items will be torn down to get base
components rather than trying to retrieve base components in the
wild.
Varying levels of availability means make the loot mechanism as
customizable as possible when dealing with these base components.
Some games pre-spawn items on monsters, others randomly generate the
items at depth, and place the items on the corpse. Whatever you do,
make sure you can apply percentages to the possibility of each of
the components such that killing the ultimate dragon does not mean
you'll get his ultimate wings to be used later for an ultimate item.
Adding the idea of grades to items is extremely important to my
system. A grade could be something as simple as a floating point
number between 0 (no grade) to 1 (high grade). The intermediate
component or item being created will get a new grade based on the
grades of the components being used and the skill of the trade
person. In this way the ultimate weapon can be created by anyone,
but the stats of the end-all ultimate weapon might really suck if
you used low grade items or had very little trade skill. It's also
possible to have grade deteriorate over time for various components
so you couldn't stockpile them, you'd have to go after them on a
regular basis. For various items, the grade could be equivalent to
durability. When tearing down an object into intermediate or base
components you'll get lower grade items back, but at times this
might be smart, assuming you have a all the high grade items needed
for a weapon, but your weapon is wearing down badly. You can get
the last component you need (though its low grade it will still make
a better item than what you have with the other high grade items) by
tearing the item down into lower grade components.
Utilizing a player's skill is trivial. You simply establish some
exponential function that gives a fairly high mid-point where
abilities are at 50%, as you gain in skill the function slows the
down the % at which you become better. This is equivalent to
Asheron Call's system of skill advancement, but certainly other
systems can be substituted as long as the equations which link the
combination of components can be easily linked with a player's skill
level. This is, however, the location where people continuously
talk about how easy it is to macro items and thus gain skill.
Several items can help purge this. First of all you wouldn't want
to macro a nice item since you can't monitor the durability as the
combinations occur. Each artisan should have some additional factor
such as endurance which is used as a trade skill is used so that a
time aspect is applied to those wishing to macro items. Another
distinct number could be put here independent of a players critical
stats. You in turn only get skill for a finished item, not the
intermediate components. In addition the final difficulty of
creating an item is used to limit the skill level at which you
continue to gain skill for the creation of that item. Something
like this:
It takes 12 items to make a mana potion.
You combine the components in the correct order gaining 0 skill
level
Finally you combine the two items to make the potion and make a .4
(40%) grade mana potion so you get 40% of the skill points
obtainable by creating this item.
The mana potion in turn has a skill level of 80, this means when
your skills become say 120 you can no longer gain skill by creating
the item in question.
In a properly created system to get an extremely high skill you
would need items that were extremely rare. You might get 10 of
these one day, but there would be no reason for you to macro the
creation of the 10 items to raise your skill. You'd want to watch
the grades to make sure you didn't waste any of your 10 rare items.
The remaining two items are those that make the system more
versatile. It might be that different skills require some of the
same components especially the harder to achieve ones. This would
help limit the amount of these items used by a certain skill group,
since all skill groups would battle for them. It also makes it
interesting that out of a base set of components say 1000 of them,
you can make possibly 100 items with one skill, but another 80 items
with a completely different skill. Possibly requiring intermediate
items from different skills would also be interesting. Make the
trade skills part of a guild system so that a single player can't
obtain all of the trade skills.
The creation of a composite item by combining two items that
normally don't combine is a fairly neat feature. If properly
programmed this can be part of the skills system that is totally
random and doesn't have to be managed by you. When these two items
combine they create another available item, but with different
properties attached, or an extra high grade (1.0+), or a curse.
I left out a bunch of my ideas, primarily because they are variants
on the existing system shown above. Obviously different variations
would work better with different code-bases. The success of this
system hinges on quite a few variables (remember we added a bunch of
variables to make trade skills interesting). First you have to
control the availability of components, second you have to control
the manner in which a player can advance their trade skills, third
you have to control the amount of trade skills a player can have.
Okay, enough of my rambling, enjoy the reading, I'll enjoy any
criticisms of the system, possibly this can be a basis for a decent
trade skill specification, I'll even volunteer to code the reference
implementation.
Justin Rogers
justin@mlstoday.com
a-justr@microsoft.com - Rats in a cage? J C Lawrence
- Rats in a cage? J C Lawrence
- ECTS 2001 & GDC Europe Adam Martin
- ECTS 2001 & GDC Europe J C Lawrence
- Java tidbits (was: TECH: STL / Heaps, etc.) Ling Lo
- Java tidbits (was: TECH: STL / Heaps, etc.) Bobby Martin
- Java tidbits (was: TECH: STL / Heaps, etc.) Alistair Milne
- Player Types (Was Anarchy Online) Ola Fosheim Grøstad
- Korean marketing effort... Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bruce Mitchener
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Federico Di Gregorio
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bruce Mitchener
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Luke Carruthers
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bruce Mitchener
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Robin Lee Powell
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Robin Lee Powell
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bruce Mitchener
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Robin Lee Powell
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bruce Mitchener
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Robin Lee Powell
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Hans-Henrik Staerfeldt
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bobby Martin
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Miroslav Silovic
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Kwon Ekstrom
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Ola Fosheim Grøstad
- Skotos Articles: Why Marrach Isn't the Movies #1, #2, #3, and a Coda [LONG] Christopher Allen
- [BIZ] Job on a MMORPG Dave Kennerly
- Personality Types (was Anarchy Online (was Community Feeling)) Dave Kennerly
- Personality Types (was Anarchy Online (was Community Feeling)) Richard A. Bartle
- Personality Types (was Anarchy Online (was Community Feeling)) Ian Collyer
- Personality Types (was Anarchy Online (was Communit y Feeling)) Koster, Raph
- Personality Types (was Anarchy Online (was Community Feeling)) Ling Lo
- Personality Types (was Anarchy Online (was Community Feeling)) Hans-Henrik Staerfeldt
- Personality Types (was Anarchy Online (was Community Feeling)) Richard A. Bartle
- Personality Types (was Anarchy Online (was Community Feeling)) Marc Fielding
- Personality Types (was Anarchy Online (was Community Feeling)) John Hopson
- Personality Types (was Anarchy Online (wasCommunity Feeling)) Ola Fosheim Grøstad
- Personality Types (was Anarchy Online (was Community Feeling)) Hans-Henrik Staerfeldt
- Personality Types (was Anarchy Online (was Community Feeling)) Adam Martin
- Personality Types (was Anarchy Online (was Community Feeling)) Ola Fosheim Grøstad
- Personality Types (was Anarchy Online (was Community Feeling)) Erwin S. Andreasen
- Personality Types (was Anarchy Online (was CommunityFeeling)) Dave Kennerly
- Personality Types (was Anarchy Online (was CommunityFeeling)) Erwin S. Andreasen
- Personality Types (was Anarchy Online (was Community Feeling)) Ola Fosheim Grøstad
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Brian Hook
- MudDev FAQ - part 1 Marian Griffith
- MudDev FAQ - part 1 Marian Griffith
- MudDev Faq - part 1 Marian Griffith
- Mud Dev FAQ - Part 1 Marian Griffith
- Mounts and Vehicles Greg B
- Mounts and Vehicles Justin Harvey
- Mounts and Vehicles Richard A. Bartle
- Mounts and Vehicles Ammon Lauritzen
- Mounts and Vehicles Koster, Raph
- Mounts and Vehicles susan wu
- Mounts and Vehicles Tamzen Cannoy
- Mounts and Vehicles J C Lawrence
- Mounts and Vehicles Richard A. Bartle
- Mounts and Vehicles lwl@black-knight.org (Lydia Leong)
- Mounts and Vehicles Frederick Nacino
- Personality Types (was Anarchy Online (was Community Feeling)) Trump
- Wilderness (AO) Peter Tyson
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Caliban Tiresias Darklock
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Brian Hook
- TECH: programming languages (was: TECH: STL / H eaps, etc.) Daniel.Harman@barclayscapital.com
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Justin Rogers
- TECH: programming languages (was: TECH: STL / H eaps, etc.) Daniel.Harman@barclayscapital.com
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Bruce Mitchener
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Dave Kennerly
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Jeremy Noetzelman
- TECH: programming languages (was: TECH: STL / Heaps, etc.) Nathan F. Yospe
- small outfit is looking for computer game designers/programmers Frank Crowell
- Personality Types (was Anarchy Online (was Community Feeling)) Marc Fielding
- Personality Types (was Anarchy Online (was Community Feeling)) Kristen L. Koster
- Personality Types (was Anarchy Online (was Community Feeling)) Kwon Ekstrom
- Pocket PC Development Daniel.Harman@barclayscapital.com
- Pocket PC Development Peter Tyson
- Pocket PC Development Frank Crowell
- Pocket PC Development Peter Tyson
- Pocket PC Development Frank Crowell
- Pocket PC Development Peter Tyson
- Pocket PC Development Paul Schwanz
- Pocket PC Development Peter Tyson
- Pocket PC Development Matt Owen
- Pocket PC Development Coyote
- Pocket PC Development Frank Crowell
- Pocket PC Development Daniel.Harman@barclayscapital.com
- Pocket PC Development Peter Tyson
- Pocket PC Development Ling Lo
- Re[4]: d20 Travis Casey
- Re[4]: d20 Travis Casey
- Re[4]: d20 Michael Tresca
- Re[4]: d20 Travis Casey
- Re[4]: d20 Michael Tresca
- [TECH] [ObjC] : programming languages - Obj-C as opposed to Java Adam Martin
- [TECH] [ObjC] : programming languages - Obj-C as opposed to Java Bruce Mitchener
- [TECH] [ObjC] : programming languages - Obj-C as opposed to Java Brian Hook
- Chances of success (was d20 system) Bobby Martin
- Chances of success (was d20 system) Travis Casey
- Chances of success (was d20 system) Daniel.Harman@barclayscapital.com
- Chances of success (was d20 system) Travis Casey
- Chances of success (was d20 system) Daniel.Harman@barclayscapital.com
- Chances of success (was d20 system) Jon Lambert
- Chances of success (was d20 system) Kwon Ekstrom
- CoolMUD lives!, sort of. Robin Lee Powell
- CoolMUD lives!, sort of. Bruce Mitchener
- CoolMUD lives!, sort of. Dan Root
- CoolMUD lives!, sort of. Robin Lee Powell
- CoolMUD lives!, sort of. Miroslav Silovic
- CoolMUD lives!, sort of. Robin Lee Powell
- CoolMUD lives!, sort of. Bruce Mitchener
- CoolMUD lives!, sort of. Miroslav Silovic
- CoolMUD lives!, sort of. Robin Lee Powell
- MBTI vs Bartle Type (was: Personality Types) Ian Collyer
- Personality Types (was Anarchy Online (was Community Feeling)) Matt Mihaly
- Re[4]: Chances of success (was d20 system) Travis Casey
- Re[6]: d20 Travis Casey
- Re[6]: d20 rayzam
- Re[6]: d20 Bobby Martin
- MUD-Dev digest, Vol 1 #404 - 16 msgs Dr. Cat
- Personality Types Corey Crawford
- Chances of success (Bobby's algorithm) Bobby Martin
- SMAUG Code (was Personality Types) Kwon Ekstrom
- SMAUG Code (was Personality Types) Corey Crawford
- SMAUG Code (was Personality Types) Alistair Milne
- SMAUG Code (was Personality Types) Kwon Ekstrom
- SMAUG Code (was Personality Types) Miroslav Silovic
- SMAUG Code (was Personality Types) Kwon Ekstrom
- SMAUG Code (was Personality Types) Bruce Mitchener
- Re[6]: d20 Caliban Tiresias Darklock
- Writing a MUD Server in Visual Basic? Matt Owen
- Writing a MUD Server in Visual Basic? Dan MacDonald
- Writing a MUD Server in Visual Basic? Kevin Littlejohn
- Writing a MUD Server in Visual Basic? Troy Fisher
- Writing a MUD Server in Visual Basic? Chris Gray
- Writing a MUD Server in Visual Basic? Matt Mihaly
- Writing a MUD Server in Visual Basic? Lars Duening
- Writing a MUD Server in Visual Basic? Dan MacDonald
- Writing a MUD Server in Visual Basic? Chris Gray
- Writing a MUD Server in Visual Basic? Dan MacDonald
- Writing a MUD Server in Visual Basic? Kwon Ekstrom
- Writing a MUD Server in Visual Basic? Jon Lambert
- Writing a MUD Server in Visual Basic? Sean K
- Writing a MUD Server in Visual Basic? Caliban Tiresias Darklock
- Writing a MUD Server in Visual Basic? Daniel.Harman@barclayscapital.com
- Writing a MUD Server in Visual Basic? Daniel.Harman@barclayscapital.com
- Writing a MUD Server in Visual Basic? Matt Owen
- Writing a MUD Server in Visual Basic? verb@rpn.port5.com
- Writing a MUD Server in Visual Basic? Travis Casey
- Writing a MUD Server in Visual Basic? Matt Owen
- Writing a MUD Server in Visual Basic? Troy Fisher
- Writing a MUD Server in Visual Basic? Matt Owen
- Writing a MUD Server in Visual Basic? Dan MacDonald
- Writing a MUD Server in Visual Basic? Matt Owen
- Writing a MUD Server in Visual Basic? Bruce Mitchener
- Writing a MUD Server in Visual Basic? Tess Lowe
- Writing a MUD Server in Visual Basic? Nathan F. Yospe
- TECH: .Net (was: programming languages (was: TE CH: STL / Heaps, etc.)) Daniel.Harman@barclayscapital.com
- Pocket PC Development Peter Tyson
- Mental Nudges (was Pocket PC development) Paul Schwanz
- Mental Nudges (was Pocket PC development) Frank Crowell
- Mental Nudges (was Pocket PC development) Ian Collyer
- MojoWorld, or a new product for generated content Bruce Mitchener
- MojoWorld, or a new product for generated content Hans-Henrik Staerfeldt
- MUDs as an educational tool in impoverished regions? Eric Rhea
- ColdC documentation (SMAUG Code) brandon@roguetrader.com
- MUD to include space and more Daniel Bendiksen
- MUD to include space and more Brian Hook
- MUD to include space and more Andrew Norman
- MUD to include space and more David Loeser
- MUD to include space and more Phillip Lenhardt
- MUD to include space and more shren
- [DSN] Why Permadeath is Irrelevant Paul Schwanz
- [DSN] Why Permadeath is Irrelevant Robin Lee Powell
- [DSN] Why Permadeath is Irrelevant John Buehler
- [DSN] Why Permadeath is Irrelevant Paul Schwanz
- [DSN] Why Permadeath is Irrelevant Daniel Bendiksen
- [DSN] Why Permadeath is Irrelevant John Buehler
- AOL lawsuit Matt Mihaly
- AOL lawsuit John Robert Arras
- AOL lawsuit Matt Mihaly
- AOL Lawsuit John Robert Arras
- AOL Lawsuit Matt Mihaly
- AOL lawsuit Marian Griffith
- AOL lawsuit shren
- AOL lawsuit Jon Lambert
- Release and social aspect Ola Fosheim Grøstad
- Release and social aspect Daniel Bendiksen
- Mining the SW:G Forums Eric L. Rhea
- Mining the SW:G Forums Trump
- [TECH] MySQL for mud databases Brian Hook
- [TECH] MySQL for mud databases ryan daum
- [TECH] MySQL for mud databases Jim S
- [TECH] MySQL for mud databases Brian Hook
- [TECH] MySQL for mud databases Jussi 'Sulka' Haro