UI mods in MMOs
From AJS.COM
I just read a blog entry from Keen's Korner about UI mods in Warhammer Online, and I was shocked to hear someone say that they opposed the idea of UI mods! In order to respond, I need to discuss some terms, first.
Contents |
Terminology of mods
- Mod
- Any plugin, program or other modification to a game that was not part of the base UI, and modifies the UI in some way.
- UI
- The display part of the game. All of the controls and information presented to the user.
- Skin
- A skin is a very basic kind of UI mod that consist only of aesthetic changes. For example, a skin might make all of your buttons smaller and add some textures or it might hide some UI elements that the person who wrote the skin didn't think were needed.
The important thing to grasp, here, is the difference between a mod in general and a skin. Skinning is aesthetic only. Modding can encompass fundamental changes to the functionality of the UI.
Why allow mods?
The argument raised in the blog post is that mods that allow functionality changes allow for terrible, game-breaking tools such as decursive (decursive is now much more reasonable, but there was a time...) in World of Warcraft. This is true in a limited sense, of course.
So why allow these tools of chaos in your game? Because you need them. More to the point, exactly what the blog post complains about not only happens, but is essential to a good MMO: developers find things that make the game more responsive to user needs. In the case of decursive, there were two problems: one certainly was that the UI allowed user-developed mods a bit too much control, and that was fixed. However, the other problem really was that there was a role in raids that required someone to remove harmful effects from other raid members, and that wasn't actually a lot of fun. Anything in a raid that can be easily scripted is probably not a fun activity, and indeed the first expansion to World of Warcraft removed this role from raids, relying on the traditional roles of healer, tank and dpser. While clensing debuffs is still done, it's no longer a primary function.
So you should allow mods because they'll break your game?
No, not really. You should be able to write your game solidly enough that mods are restricted from anything too problematic (e.g. moving characters during combat).
What you really need mods for is to allow the community to fill in the gaps and make your UI a truly usable way to interact with your game world.
Doesn't that mean that your game was lacking in the first place?
Yes it does, and frankly, I can't imagine how you could create a UI out of the gate that wasn't lacking. It's just too hard to design a game, world, mechanics, encounters, progression, gear, etc. and have every one of those areas be perfect from day one. Add in the complexity of creating a user interface that has to support all of those areas plus dozens of social functions... it's Herculean. Allowing modding is another way of saying, "there's no way that we can produce everything you'll want, and probably not even everything you'll need... show us what you would do."
So if mods can help so much on the UI side, why stop there?
Well, that's a good point? Why indeed! I do think that some game will come along that will allow server-side modding. There are a number of reasons to want this, and a number of challenges in providing it.
There are types of data that really should be accessed from the server side. Auctioneer for World of Warcraft is a great example. Every single user needs to regularly walk up to an auctioneer in-game and download a full set of data for statistics crunching. This could easily be replaced by a server-side mod that processed all auction-house activity and provided user-side mods a simple API for gaining access to the results. It would also reduce server load by a substantial amount.
On the other hand, security and resource constraints are critical if a game developer is going to allow users to run code on their servers. With interpreted languages like JavaScript, there are now excellent tools available for performing security checks on untrusted code (this is why application services like those provided by Google and Amazon are even possible). Resource constraints are a stickier issue. Here, you have to provide very carefully crafted APIs for tools to use in accessing the core databases. You don't want a user-authored mod to bring your database to its knees, after all.
Well, OK, I think I've gone on long enough... point is, no software is perfect and if users can modify how it behaves in reasonable ways, it will suit far more need than if the original authors must make time for every change.
BlogMarks
del.icio.us
digg
Fark
Furl
Newsvine
reddit
Segnalo
Simpy
Slashdot
smarking
Spurl
StumbleUpon
Wists