Thursday, April 15, 2004

SWG: Crafting -- A Blueprint for the Future

I've been a crafter since SWG was released. In addition to mastering the Artisan and Merchant professions, I've picked up and used Novice-or-better skills from all the advanced crafting professions branching from the Engineering discipline. I've enjoyed crafting, but for a while now something has been bothering me about crafting in SWG. I think I've been able to put my finger on what it is: there's no surprise.


The design of the crafting system in SWG is highly result-oriented, rather than being process-oriented. In other words, the point is what you get at the end of crafting, rather than the act of crafting itself. That's good for making sure that other players have the things they need, but it can leave crafters feeling a bit like mere cogs in a product distribution machine.

Other than being a bit boring, there's nothing really wrong with crafting's result-oriented design. There are actually a number of good ideas well implemented. The idea of schematics is good. The concept of needing different kinds of resources and subcomponents in schematics is good. The concept of resources having different attributes that condition the effectiveness of the final product is good. And the concept of experimentation is good.

But something is missing. The design focus on results over process has left the act of crafting an exercise in grinding, rather than allowing crafting to be something that's fun in its own right because the process itself is interesting. If I may suggest the source of this problem: the assembly and experimentation steps are too simple to allow for surprise.

What makes engineering (more specifically, "invention") fun in the real world is that you don't always know exactly what you're going to get. The behavior of complex objects isn't normally a pass/fail, perfect/junk kind of thing (as in SWG) -- complex real-world objects often live in a gray area of functionality. When you put many odd-shaped things together in different ways, when you try new kinds of parts as subcomponents, it's hard to know precisely how the final object will look or act. Real-world objects demonstrate unpredictable and even surprising behaviors precisely because they are complex. This element of surprise is what makes real-world "crafting" an interesting and fun process.

But there's no chance of anything interesting happening when assembling or experimenting on an item in SWG because you always know exactly what you're going to get. With a few exceptions (certain armor and weapon schematics can take an optional component), you always assemble the same components in the same amounts, and they always go together in exactly the same way. As for experimentation, the only question is whether you'll have to craft your prototype for practice XP because one of your experiments yielded a result less than "great success." This player focus on only accepting "perfect" products is the natural result of a crafting design that's focused on results for other players instead of being a fun process for the crafters themselves.

But what if not getting exactly what you wanted didn't always mean that the result was unusable? What if not all surprises were bad (as they are now with critical fails)? In short, what if you could have "interesting failures?"


There are four changes I'd like to see made to crafting in order to allow for surprise, and thus for a crafting experience that's a lot more fun:

  1. Complex objects should have multiple appearance and performance characteristics beyond simple numeric attributes.
  2. The attributes of the resources used to craft an object should be reflected in the appearance and/or performance of the final product.
  3. The configuration of subcomponents should be reflected in the appearance and/or performance of the final product.
  4. Critical failures in experimentation should be balanced by critical successes.
Let's look at each of these suggestions in more detail to see how it would help contribute to a more interesting and satisfying crafting experience.



If every instance of a particular crafted object looks and acts the same way, surprise is impossible. This isn't always a bad thing -- you wouldn't want significant variation in products manufactured by a factory, for example.

But constructed objects need to have a wide variety of appearance and performance characteristics if variation in materials and processes are to allow for surprising results. If an object always looks the same and always has the same operational characteristics, then what's the point of making such an object except to have one? Where's the joy in the process of creating the item?

The three most common appearance characteristics are color, shape, and size. Clothing is allowed color customization options (and Tailors are given more color customization options than Artisans) because it's understood that making clothing (which doesn't allow experimentation) would be incredibly boring otherwise. Another example of appearance customization is a pistol whose scope and stock have been selected from a list of optional types, and which displays those selected scope and stock types when the crafted pistol is examined. And of course we now have basic (frame and trim) customization kits for droids and vehicles.

These options should be extended to many more items. Objects should be capable of having different colors; they should be craftable in a range of sizes; their shapes should be allowed to vary in well-defined ways.

For example, consider a simple object: a staff. Why must all staves be the same length? And why brown? Sure, trees on Earth have brown wood... but we're not on Earth! Similarly, why should even more complex objects all look the same? Must the engines always be in the same place on a landspeeder? Why are there only about ten types of house plans in the entire galaxy?

As for performance characteristics, these include the obvious ones -- min and max damage, range-based to-hit modifiers, and attack speed for weapons, for example, as well as other purely numeric attributes -- but objects have other features that should be variable.

Consider ranged weapons: when you fire them, they have a visual effect (such as a blaster bolt) and they make a sound. What if these effects could vary? Maybe blaster bolts can come in different colors (like lightsabers). Maybe the sound effect can be pitched differently, or perhaps it has a different duration. You wouldn't want to allow too much variety in these attributes since they're considered defining features for those objects. But some reasonable variation should be possible.

Other performance characteristics that should vary between objects include: bonuses or weaknesses versus certain mobs or classes of mobs; special behaviors in certain environments (desert, forest, water, nighttime); alternate-fire modes (for some weapons); vehicle top speeds, turn rates, and acceleration rates; droid intelligence and loyalty; and so on.


Once you've established that objects can have many different kinds of varying features, you need a way to relate those features to the materials used to construct objects.

The good news is that we're already partway to achieving this because the resource system already allows a great deal of variation. For example, there are several types of Mineral (Metal, Ore, Radioactives); two types of Metal (Ferrous and Non-Ferrous); two types of Non-Ferrous Metal (Aluminum and Copper); several types of Copper (Mythra, Platinite, etc.); and several places (Lok, Naboo, etc.) where you can get that kind of Copper. All these attributes could contribute to the qualities of the final product creating using them.

Let's use the staff again as our example. It's made out of wood (like witches), but that wood can be of three types, and can come from any planet. That's thirty different types of wood right there! Why shouldn't the type of wood used contribute to the performance of the staff, and to its appearance? Let's assume that the basic numeric attributes don't vary (since otherwise we'd have people complaining "I can't make staffs!" because the "best" wood currently has lousy stats).

Maybe wood from Lok causes staves to be tinted green. Maybe deciduous wood does extra kinetic damage because it's harder than evergreen or coniferous wood, but this also makes staves made from deciduous wood decay much faster than those made from evergreen or coniferous wood. Maybe Endorian Evergreen Wood has minerals in it that make it particularly effective against any kind of spider. Maybe objects crafted from coniferous wood from Yavin IV glow in the dark.

See how this works? Crafting currently doesn't make nearly enough use of resource attributes in determining properties of the final product... but it could.


For more complex objects which include subcomponents, appearance and performance characteristics should be related to how the crafter chooses to connect these component parts to each other.

In the current system you make a bunch of similar subcomponents, then another set of other similar subcomponents, then a few more subcomponents, then you take them all and, with some raw resources, lay them out flat on a table, hit the "assemble" button, and hey presto!, you've built an item. (Assuming you don't get a critical fail on assembly.) While this does at least recognize that complex items tend to be built from subcomponents, it doesn't recognize the importance of allowing crafters to vary the organization of those subcomponents.

As a variation on the above scenario, suppose instead that you craft four similar subcomponents. When you lay them out to construct the larger item that is composed of these pieces, you get to choose how you want those pieces to be connected to each other. (I imagine the crafting tool GUI letting you click to draw lines between subcomponents to indicate configuration connections.) One configuration might improve the final item's durability at the cost of some of its power; another might give you the same type of item but one that's brittle but very effective; a third configuration might give you mediocre performance attributes but some kind of additional special power.

For very complex products that require many different subcomponents, you should have numerous options for how to interconnect the pieces -- so many, in fact, that it's effectively impossible to predict the exact final qualities of the finished assembled object.

There should still be some predictability in this process. Making two complex objects with the same configuration of subcomponents should yield two items with similar appearance and performance characteristics. But where the artisan has choices for how the subcomponents of a complex object can fit together, those choices should affect the features of the finished component.


As a final suggestion, if critical failures -- either in assembly or experimentation -- can ruin a crafted object, shouldn't critical successes also be possible?

Just as a critical failure is an "I don't know what I did wrong!" situation, a critical success would represent the rare "I don't know how I did it but WOW!" situation. To allow only horrible results is both unrealistic and not "fair" in a game context.

There are two obvious ways to reflect critical success situations. I propose that each of these two possibilities be implemented, one for the assembly phase, and one for experimentation.

(In the discussion that follows, please note that a critical success is not the same thing as an "amazing success" result any more than a critical failure is the same thing as a "moderate failure" result. "Critical success" should either be a new result type, or the "amazing success" result type should be enhanced in the ways described here.)

In the assembly phase, just as a critical failure results in the complete loss of all resources and subcomponents, a critical success should result in the crafting of the desired item without using up any resources or components. The risk of losing all materials (in a critical failure) should be balanced by the potential reward of getting to keep all your materials (in a critical success). (Note that this would not apply to Architect-only schematics since these are no longer subject to the threat of loss in a critical failure. Just as Architect objects aren't subject to the risk of loss, they should always be used up no matter what the result of assembly.)

The obvious result of a critical success in the experimentation phase should be object performance that is better than would normally be possible. The features improved should only be those on which experimentation points were spent, and performance should only be improved proportional to the number of experimentation points spent.

One potential problem with this enhancement would be that some individuals with excessive free time and plenty of patience might be inclined to try to make all their objects "perfect" with critical successes on all experimentation attempts. This is unlikely to be effective for several reasons.

First, the percentage rate of critical successes should be about 1% for everyone. (This would still favor Master crafters, since they have more experimentation points to spend than other crafters.) A 1% critical success rate would make these events sufficiently rare that someone who wants to craft only perfect items would only be able to create perhaps two or three such items per day. Given how good these items would be, how in demand they would be, and how much money high-end players have, a crafter would not be able to keep such items stocked (nor any other items if he spends all his time trying to craft perfect items!), not even if he could craft 24/7 with macros that somehow knew how to keep only perfect items.

Second, the maximum possible improvement would only be possible by either using up all your experimentation points in one burst and getting a critical success on that attempt, or by getting a critical success result for each and every experiment attempt. In the former case, a 1% success rate would mean harvesting resources and crafting subcomponents only to destroy all of them 99 times for every one "perfect" item created. The cost of doing this (particularly for very high-end items) would likely not be recoverable through the sale of the one perfect item. As for trying to use experimentation points separately, a 1% critical success rate and 10 or more experimentation points to spend makes getting 10 critical successes in a row not very likely.

Overall, implementing critical successes would be one more way to allow the rare and pleasant surprises that make crafting fun.

[2005/03/30: It's come to my attention that critical success results, while rare, are now possible. It's probably not implemented in the way I've described it above, but any progress here is appreciated!]


By offering variability in crafted object features, by allowing crafters to have lots of choices in resource usage and subcomponent configurations, and by making those choices have different results in finished products, you take the focus off of repeatedly grinding out the same thing over and over again, and move the focus to letting crafters make creative decisions that help to differentiate their products from those of other crafters. That would be tons more fun for crafters, plus product differentiation would help them market the products they create, plus it would allow the people who buy these items to better define their characters by having distinctive possessions.

When crafters are able to express their creativity as an integral part of the crafting process, everybody wins.

No comments:

Post a Comment