Social Networking Analysis (SNA) Update

March 9th, 2008

Well, I surprised myself today with some cool breakthroughs in mapping social networks in Knight Online. I found a great program called Pajek released by some very intelligent folks in Slovenia. I really like these academically-inclined projects, especially when I’m quite interested in the subject for which they are created. Hopefully I can do justice to the rather impressive set of features they have created.

Anyways, here is a picture of a partial social network on one of our server clusters:

ares_partial_net.JPG

Each dot is a character. Each line indicates that the two dots had completed a trade of some sort in the last week. Incidentally, all the loosely-related dots between the tight clusters of dots are gold farmers who have used hack tools to abuse the game.

I’ll be mentioning more over the coming days for sure. This is some pretty exciting stuff. I have some server log technicalities to refine, so the data will become ever more accurate.

Social Networks in MMOs

March 8th, 2008

Just recently we have begun revisiting our server log file analysis systems for Knight Online. Our players generate a lot of data every day just doing their thing in the game, and until recently it’s been pretty tough to effectively make sense of it all. The game engine is now around 7 years old and it was never intended to handle the number of concurrent players thrown at it, so analysis of log files has presented quite a challenge… until now ;)

Having access to these files has been most exciting, and the latest bit of excitement came today when I took a stab at trying to map out the social network of one of our servers. Lo and behold, it will be quite possible! I set the script up to run in Excel so I could get visual in-process clues as to what was being found. You know, as clunky as VbScript may be, it’s great having it hook in to Excel (and everyone with Excel can use those scripts). Anyways, seeing these patterns emerge in real-time was thrilling. And it presents a whole range of additional tools in the ongoing battle with cheating, hacking, and exploit abuse.

So, in the coming days and weeks I want to figure out how to map out the social network of our game. Youtube has that nifty little feature that lets you see which videos are related to each other (view a video, make it go fullscreen, then look in the bottom left for a little button that looks like 3 circles with lines connecting them). I’m downloading Prefuse at the moment to see what I can do with it as far as visualization goes. I’m planning on doing some crude Excel-based ideas tomorrow too. I’ll be sure to mention progress.

btw, the dynamic creature management system is not dead. It’s still rattling around in my head.

Bugs or No Bugs

October 25th, 2007

We have a choice between adding new content and features or consolidating what we have and adding new features later. I’ve written about this before, but I worry it’s a decision that too often is decided in favor of new features.

I’ve taken a stab at this topic before in “Frustration of Reasonable Desires“, bince since the topic has had some time to stew, I wanted to revisit it.

A lack of features is only frustrating when the features that are missing are pretty essential to the game experience. A feature that does not work cannot be truly considered a feature. If the core features of a game do not work well, and since to some degree every other feature depends upon those core features, one could conclude the game does not in fact consist of features, and to opine that more features need to be added at the expense of bug-fixing is to ignore the fact that it is not “features” that will be added, but rather ever more elaoborate bugs.

I’m trying to make the point that there comes a point where one must cosolidate that which one has created. Create, Consolidate, then create again, and then consolidate once more.

I read recently that it is merely a matter of opinion and preference whether or not one fixes bugs in existing features. If the existing bugs are not utter game-breakers then they can (even should) be left as-is in favor of new features and content. I’m reacting to that. I believe bug-free systems, elegant code, efficient production tools, happy customers, and a happy bottom line all go together.

Some good food for thought on the matter has been posted recently at Zen of Design: “Triage and Extrapolation“.

Tools

October 12th, 2007

What exactly is it that results in our tendancy to leave outdated tools as they are? What is the barrier that keeps us from immediately updating or fixing a tool that has become even a litttle bit outdated or broken? I betcha it’s linked right in with the preference to add new features over fixing existing systems/bugs/imperfections.

I think we’d all agree that letting some game operations tool remain “sort of broke” is not a good thing. The argument, however, then becomes “how much will it really gain us to fix it”.

Apple, iTunes, and the iPhone may help resolve this one. Every Apple product amounts to a subset of what, well, non-Apple products are. Apple products arguably don’t do as much and they restrict you to exactly what they designed the product to do and be. However, those things they have chosen to let you do are quite often a joy to use and as a result “it just works” resoundes from countless mouths. Apple has built a rabid fanboie nation on the habit of neglecting new features in favor of making a smaller set of features exceptionall well-done.

Faced with the question of whether to add new features or go back and make what we have exceptional, I choose the latter. I really think it’s the best route.

Game Master Tools

October 10th, 2007

In my ongoing experience as a Game Master for Knight Online I have found an ever-present challenge: that of a distinct lack of in-the-moment relevent tools.
By no means am I griping. It’s just this need for effective, relevent tools to facilitate the Game Masters’ roles of maintaining and enhancing the in-game play experience strikes me as an [other] opportunity to distinguish one’s game from the rest of the pack.
By “in-the-moment relevent tools” I am talking about tools to help GMs do things like identify patterns of player behavior so as to respond most effectively. I’m thinking of activities like tweaking tool interfaces so as to allow for the most efficient possible GM activities, creating new tools to help mine through various metrics to find useful tidbits, and working with the technical producer to identify what metrics would be most important to track.
The Game Master crew can be the best direct feedback mechanism for ongoing product development/fixes, so exceptional tools will likely enable [more] exceptional work. I think this may even be important enough that sacrificing GM staffing levels in favor of a full-time [web] developer devoted strictly to the development and maintenance of GM tools would yield a net profit of surprising levels.

Over its shelf life a game changes. The community changes, and the challenge is to keep the game relevent to the customers. It’s an ongoing challenge, and the Game Master crew is in the position to play a significant role.

That’s a thought that’s been simmering for a while now. For the time being I am flexing Excel and VBScript as much as I possibly can to make the tools I find I really ned on a day-to-day basis, but I am hitting the limit of what’s possible outside of more serious development work. I’m seeing opportunities for some really useful metrics creation that can be done without the need to hassle the game development staff. Sara Jensen would be proud ;)

User Generated Content… Game Industry Job too

June 11th, 2007

Gamasutra had an interview with John Smedley posted here. I thought the following quote indicates SOE’s Free Realms will be a very good project to watch:

I rather give people some lines, and say “color inside these any way you want.” Then you can’t just generate whatever you want, but you have users creating content themed towards our goals.”

On a tangential front, I just got a job with K2 Network in Irvine. So, this means I’m moving from London to Irvine- I’m there now, in fact. I’m very excited, and I start work tomorrow!

Since it’s a Korean-developed game imported and translated to Western markets, I will be most interested to get some first-hand knowledge on the issues surrounding the Play for Free business models, cultural translations, and the art of operating an MMO (rather than producing it in the traditional sense).

User Generated Content

May 25th, 2007
i want a new expansion with content!!!!!! … just (trying to) chatting with friends ingame who never logon anymore and to decorate my houses is simply no long term solution… (from here)

And then later on in the same comments thread on the SWG release of Chapter 6: Masters of the Wild at MMORPG.com….

The only thing this does for SWG [Chapter 6 expansion] is it helps those who promote fictitious fun by providing a means to generate their own content through the Story Actor Event Perks. PEX’s team is being downsized and these changes are to assist his department through redirecting a workload onto the customers; not a terrible thing honesstly. (from here)

From the comments on Raph Koster’s post “Quit being snobby about user-created content”:

User-generated content, like all human creative endeavor, is subject to Sturgeon’s Law…. The free market tends to act as a sort of crud-filter….. User-generated content also needs crud-filters. We used to have ways of doing this on MUDs….. The threat to the scalability of our approaches was that they were largely top-down… Modern… techniques tend to be more democratic. However, there are inherent problems in these systems….. Have you ever noticed that the vast majority of clips on YouTube have 4 stars? I’ve seen the same phenomenon on NetFlix. To me, it would seem as though mass voting on a star rating isn’t very expressive or useful for many kinds of content…. I think that the case for user-generated content is not helped by the kind of wild, anarchic approach we see in Second Life… (from here)

I see two widely-attempted approaches to take care of the “crud problems” of User Generated Content: the MUD-style top-down Wizard, and the user-rating system. Both obviously will not work (and have not worked) in MMOs. In many respects, I think we would all agree with the statement that the free market tends to act as a crud-filter.

The top-down approach doesn’t scale enough, it relies upon the good nature and time availability of the people in the Wizard roles, and it is an “unnatural” solution, in that it relies upon a contrived demi-god role to be filled by members of the population.

The user-rating systems depend upon the general population caring enough about the content to be willing to rate the crud as “crap”. I think that to rate something as “crap” often feels judgmental, complete with all the connotations of that word. At least that’s something I feel whenever I rate some User Generated Content as “crap”, even if it is indeed crud. I think it takes more dislike to rate something as “crap” than it takes liking something to rate it “good”, and this for the same reasons that it takes a whole lot more provocation to get somebody to fight than it does compliments to get someone to smile (who here liked Fight Club). So, seeing as the fundamental “crud-filter” mechanism in the free market is to keep on walking past whatever it is you don’t like, that is, inaction rather than action, the user-rating system will always and forever be skewed toward higher ratings, and fewer votes, than what people actually feel. I suppose, then, this would imply a simple increase in the “this is crap, toss it” threshold would go a long ways. That or keeping track of the number of player impressions some object gets and compare that with how many people voted for or against it, assuming some percentage of non-votes is in effect a “no” vote. However, the “game” of campaigning for “yes” votes would jump into full swing, and when confronted with having to say “no, I’m not going to vote for your crud” or just voting “good” for something you don’t care that much about, most people will tend to just vote “good”… again, for similar reasons as the fight mention from above. So, I guess my opinion is that the user-rating system can be improved to a degree, but it will always be flawed.

The free market acts as an effective crud-filter because the “voting” is only done by those who like the content enough to give something tangible to its creator. The actions are what matter- as we’d all expect from “actions speak louder than words”. If someone voted “good” that means they gave resources to the user who created the content. In short, money does the talking. This is different, however, than a voter saying, “I like your stuff. Here’s some money;” that would be no different than a user-rating system. The only way for it to be different, I think, is there must be a transaction. The user content must be something the voter wants to take home and put to some sort of use. The user content in general must be capable of being tangibly useful for others.

In economics terms, the User Generated Content must add value, and that value-added product must then be something someone else can use to create value.

Currently, User Generated Content is restricted to the aesthetic and imaginary world. The comment “The only thing this does… is it helps those who promote fictitious fun…” is really very accurate. In my MMO experience, serious role-playing seems to amount to make-believe. There is no value-added, economic product involved. It does not use up scarce resources, so there is no tangible risk or investment required, other than emotional- it requires extra effort in the suspension of disbelief. Not to say it’s bad. I’m just saying what is required of serious role-players is currently being required of all players in regards to User Generated Content.

Make User Generated Content matter financially, and you’ve made it work. It will then be in the same vein as crafting in a player-driven economy. How? You have to build upon the schematic/blueprint aspect of existing crafting systems. Players need to be able to create new blueprints that produce new objects that look different, are shaped different, and behave differently than any dev-created object. In SWG, you could produce items with widely-differing stats that influenced how a player used that item. We need to go further and let crafters change what an item actually does. The game Spore is doing something similar, though with creatures. In the extreme, we will need to allow for a crafting system to allow for players to go from bows and arrows all the way up to starships and jet packs, all without a single hair of dev influence. And if there are multiple server shards, that crafting system needs to allow for one shard to have a completely different set of in-game items than all the others.

That paragraph describes what I believe has to happen in order for the User Generated Content problem to be solved. Holy complex, Batman. But how freakin’ cool would that be?!

I Need Context to Do My Job (or answer a question, or…)

May 23rd, 2007

When I was at GDC07 in San Francisco earlier this year, I landed an interview for a Design position that was opening up.  I spent hours writing out thoughts on as many issues as I could think of in an attempt to more precisely answer possible questions.

But, after all my preparation, the one thing the interviewer really focused on was the question “What would you do to balance our game?”  I briefly outlined a few general strategies, such as cash flow analysis using statistics and design goals, but for whatever reason I did not have an “ahah! moment” answer, which all the best answers are.  And, ever since, I’ve been pondering why a perfect answer didn’t click into place.

I know my lack of experience played a role.  But I think it was something more fundamental that I now know I needed: context.

In order to answer that question of how to balance the game, I think I really needed to spend a good several days in the staff, on site, talking with the lead designer, talking with programmers and scripters, looking at how the game systems operate, looking at how magic, buffs, defenses, damage, and speed work, and talking with the project lead and publisher.  At that point, I have absolutely now worries that I would know exactly how to balance the game.  Without that, my best answer can only be, “I’m not sure how I would balance your game.  I’d have to see it.  What have you already done in terms of balance?  What problems have you encountered?  How is your combat system set up?  Do you already have “reference point” items/loots/xp gains?”

I realize now that my answer should have been exactly what I felt it should have been: questions for him on the game, what they’ve done, where they’re stuck.  But instead, in my desire to impress, I succumbed to the worry there was already a canon of game balance techniques- and not knowing them by heart was a “wrong answer”-  so I tried to give a “right answer”.  And it went poorly.  Heh heh, they didn’t even give me a “thanks, but no thanks.”

I do not intend this to be a sob story.  I know I’ll be in game development some day, most likely the Producer side, but for now I just have loads to learn.  And one of them is that in order solve problems I need to know as much about everything as possible.  So if I ask lots of questions, please don’t hate me.

Frustration of Reasonable Desires

May 22nd, 2007

I’m linking to a Raph Koster post, as I’m sure any self-respecting games blogger is obligated to do on occasion :)  He wrote a little ditty entitled “A brief SF tale“.  Take a quick read-through before going on…

There is an important principle here that goes to the very root of game design.  If a population wants something, and that something is reasonable and not overtly “wrong” (like stealing cars or killing someone) then there is very little that can prevent that desire from ultimately getting fulfillment.  Someone is going to figure out how to get it, and shortly thereafter word will spread.  I’m using Raph’s post, and the military-bandwidth-internet-security issue he was responding to at some level, as a jumping-off point; I’m not directly commenting on either any longer.

At the moment, I can think of two primary ways a desire can be frustrated

The first is that of cost.  If a random person has the choice between obtaining a thing legally and reasonably-priced (to them) vs. obtaining it illegally and for little to no cost, I think more often than not they will choose the legal way.  The key is whether or not the price is reasonable to them. So, if someone wants to discourage such an illegal activity [that can be replaced by a legal one], then it’s “simply” an issue of pricing or compensation systems.  When the price for a desire is inappropriately high, the individual is thrust into an unnecessary moral dilemma, complete with the commensurate stress.

Another scenario in the frustration of a desire is that of prohibition.  If a person wants some thing, but is prohibited from obtaining that thing by some sort of rule or edict, but that desire is actually quite reasonable, then I believe the frustration experienced by that person will more often than other types of frusration lead to a destructive response.  In the extreme, imagine a very aggressive police state that cracks down on the wearing of, say, shorts when there is really nothing, culturally or otherwise, that prohibits the wearing of shorts- in fact, since it’s hot out shorts make a lot of sense and people really want to wear them.  This is unnecessary frustration.  And you can bet there will be no small amounts of protest (there had better be).

An interesting facet I think is that the first “cost-type” frustration will not have as much protest as the second, the “edict-type” frustration.  In the first, there are workarounds.  In the second, it’s just plain not possible to fulfill the desire[largely].

In game design, it’s a bit of a unique situation, since the “edict-style” frustration of a desire is a distinct possibility.  The most obvious example is if a game mechanic prohibits a player from equipping a high-level sword purely because he’s not obtained a certain level. That’s an “edict-style” frustration of a very reasonable desire.  The other side of restricted player activity is when a mechanism for a desire does not even exist.  I don’t think the lack of the ability to fly starships pre-”Jump to Lightspeed” Star Wars Galaxies was a point of player protest.  Protest seemed to be focused on broken specials, balance issues with certain professions, and a number of bugs- it was centered on certain “edicts”, whether active or passive, that prevented players from doing what they had a natural desire for.  It wasn’t the lack of a feature that made players protest, it was the frustration involved with an existing feature.  Granted, the cost of fixing certain bugs is sometimes seemingly too high, but I guess my opinion is that as much preference as is humanly possible needs to be given to them over adding new features. 

I guess what I’m trying to point at is that the most successful game designs are molded around what people naturally have a desire to do.  It observes human motivators and provides tools that seemlessly allow for those desires to be fulfilled.  It’s the repeated, diverse fulfillment of natural, reasonable desires- that’s what the best game designs do.  Existing games can be “fixed” or refined by noting points of consistent player protest and reevaluating whatever design edict has been imposed.  And I think fixing those kinds of frustrations, the ones in existing systems, are of greater importance than even adding new features.

The Simple

May 19th, 2007

I was reading Joe Ludwig’s Blog and his post Pizza Testing brought a smile to my face.  In short, to get great testing results, bring in a load of gamers, order pizza, and throw that whole mess at your game.  Then stand back, write down pertinent observations, and ask your “test subjects” to tell you what they are doing (or are trying to do).

 I guess I liked how very “human” that methodology is.  It’s a quick, dirty, yet very very effective solution.  Personally, I think it sounds like a blast.

Of note, Joe mentions the cost-benefit is such that he wishes they had been doing it long before.  That’s the part I like- the cost is so low that it is extremely doable.  In some ways I can imagine some amount of QA being offloaded to such sessions.  Or is such a suggestion anathema?