You are currently browsing the monthly archive for October 2007.

Edit: added to the list of mentions below.  If I’ve overlooked anyone else, my apologies… tho, I did warn everyone this gregariousness-thing isn’t my cup o’ tea, right? :-)

Yep, it’s been an entire year since I started this little endeavor.  Time flies…

It has been an interesting year, to say the least.  I have some 11612 hits counted as of this morning, which is about 10000 more than I expected given my rather esoteric subject matter :-).  Thank you to everyone who has ever stopped by, and I hope I can continue to offer items of occasional interest, such that you will continue to consider me worth a little of your time and attention.

-=-

Being a bit of a stats geek like many in our particular corner of the blogosphere, I did up a little graph of the blog activity over the past year.  I was pleasantly surprised to see that the number of hits has vaguely tracked with number of posts over the past 6 months… hopefully that indicates that I am posting topics of interest (it’s not all web searches hitting year-old content…)

Year One Hits and Posts

Even more gratifying has been the number of people who have taken the time to leave comments, however.   I know how difficult it can be to find the time and impetus to do so, even in brief.  My thanks to each and every one of you for taking the time: gaining insight through reading your perspectives on the topics is what really makes blogging worth the effort, in my opinion.  (And with that in mind, I resolve to do a better job of reciprocating in the future.)

The blog has also been indirectly responsible for many opportunities to meet and chat (at least briefly) with a bunch of great people that I might never have met (or even known about) otherwise, both local and remote.  Locally, there’s been Brent (Virgin Worlds), Michael Zenke (MMOG Nation and a virtual host of other places :-) ), Cameron (Random Battle), Tami Baribeau (CuppycakeMetaplace), Jonathon Stevens (Last Straw Productions, IMGDC), Erik Hyrkas (Granite Games), and Ken aka Kendricke (Clockwork Gamer) (edit: and let me add mention of Ethic of Kill Ten Rats, who is a Minnesota native as well… I do apologize, it was a memorable meeting, there were just so many…)  Further afield, there’s been Aaron (Anyway Games), Brian Green (Psychochild), Ophelea (GamersInfo.net), and Serafina (Atriarch)… and that’s just off the top of my head.  (For an introvert like me, that’s an amazing list.)

Add to that the guest stint on Darren’s (Common Sense Gamer) SUWT podcast, and it’s been quite a year.

-=-

That’s enough about the past, tho.  I do actually have blog-related plans for the future, as well.  I would like to resume adding to the RPG Archive series of posts, for example, tho it won’t be weekly… to do even the rudimentary summaries I have been is about a 2 hour process, which is more time than I can regularly spend.  However, biweekly or monthly should be quite possible…

There will be more dream design stuff coming down the pike eventually, including requests for ideas and feedback.  I always get some great stuff from you guys in those posts… again, thank you.

I want to do a better job of highlighting other similar blogs, somehow.  The tools to do so in vanilla hosted wordpress are rather limited, however, so I have started to take the steps necessary to move to my own server and domain.  No guarantees on when I will actually take the plunge, tho.

To prevent old posts from going completely down the memory hole, I’m going to start a semi-regular (and very brief) recap of what I was rambling on about the previous year at that time.  Recycling is good, right?

AGDC and IMGDC are both on the schedule for the coming year as far as conferences go, and if I can swing the time away from the office, maybe one or two others.  I do have to figure out a way to do a better job of actually reporting on the experience, tho.

Overall, however, not much is likely to change… the same old ruminating and ranting as the mood grabs me.  Some seem to have found it entertaining (a definite plus)… why fix it if it ain’t broke?

Again, my thanks to all who visit, whether briefly or in depth.  I do appreciate it… and I do hope to meet more of you in person over the next year.

So, I was out trying to catch up on my RSS feed list (2 weeks of content on 50 blogs represents a lot of missed opportunities, I’ve found…) and ran across Psychochild’s latest weekend design challenge re: quest rewards.  Woot, a topic for a post, and it’s been less than a week since the original post! (sigh)

First, off the top of my head, a list of potential options…

  • Equipment (specific item, select from list)
  • Cash (or equivalent)
  • Experience points (skill points, talent points, etc)
  • Special ability/technique, short term or permanent
  • Blessing/buff/attribute increase, temporary or permanent
  • Relationship with NPC (special pricing, “cell phone” access from CoH/CoV)
  • General Reputation (“karma”, faction, “honor”, etc)
  • Badge or Title (overt indicator of status)
  • Access to new area or opportunity (“quest chains”, keys)
  • Time/delay (assassinating the current trog king delays the invasion for a month)
  • Future favors/IOUs

My own preference is for quest rewards to be combinations of the above, emphasizing the bottom end of the list as opposed to the top.  I also prefer options over specifics where it makes sense.  For example, a blacksmith wouldn’t have to give you a suit of armor, how about an ironbound chest, or a shield, or an IOU for a future item of your choice?

Balancing such diverse rewards is the issue.  Are 25 “faction points” and 50 gold pieces equivalent to a healing potion and 150 xp?  Do you want them to be equal?  That probably gets more into the specific design goals than anything, but I’m not sure you want all rewards to be equivalent, even within a specific quest.

For example, a “defeat 10 foozles” quest might be relatively easy for a melee class, but difficult for spell casters, if foozles are highly magic resistant in that setting.  It would make some sense to have the reward that is tailored to the magic users (assuming a selection was offered) be a bit more powerful overall than the one aimed at the melee classes, since the level of challenge was uneven.

(I had more, but I’ve got to get moving, 3 calls from work so far and it’s not even 8am, it’s apparently going to be another one of those weeks…)

…and no, not just for blog post topics.  (Not that I’d turn them down…)

Still putzing away on my little game, and I’m trying to figure out some way to allow the player to build up to a large number of options for actions (i.e. 50 or more after a while), yet not take up half the screen space or require the use of multi-key combinations reminiscent of Twister.  Anyone seen or remember anything that might fit the bill? 

I can just go with the typical array of icons, of course.  I just have this feeling that there should be a better way to do it… which probably means I’ve seen it in the past, but can’t consciously recall it.  (The old subconscious is going “knock, knock, anyone home up there?”)

Like a significant number of people, there is a non-trivial distance (14 miles, in my case) that I travel each work day to get from my home to my office.  I generally take the same route every day, in large part because it is by far the most direct one, and thus the quickest by a significant amount of time. 

As is typical in such situations, I suspect, I have found that I have become, um, “less than attentive” during such drives on most normal days after 12 straight years of daily commuting.  In short, I get in my car and start moving, my mind moves to planning for the day ahead or other concerns, and “suddenly” I realize I’m at the turn into the parking lot for the office.  If I make the effort, I can recall stopping for stop lights, the progress made on the major landscaping effort in one spot, the state of fence repairs after some straight line winds did some damage last month… but at the time of the actual drive, my mind was obviously largely elsewhere.  I was effectively on “auto-pilot”… and I doubt I am alone in having that experience.

What has that got to do with MMO design?  Well, I’ve been contemplating for some time the viability of a “memorized route” concept, which would effectively mimic the above experience in a couple of possible ways.

In play, the idea would be that the player at or near any “end-point” or “subsection” of a route could “activate” that route, and the character would then auto-navigate the distance between the two points… interruptible by the player at any time, of course.  Such a concept would allow the player to do such things as chat, manipulate inventory, review quest logs, and so on, while still moving… even going AFK might be possible (tho potentially not advisable).

It’s already somewhat possible to do these things using “auto-follow” and “auto-run”… this simply adds a level of AI to the equation behind the scenes.

Out of play, this could be a mechanism to allow the player to enter play at variety of different locations while still enforcing some reasonable limitations.  Known routes could determine where the character could travel while “out of play”; finding and creating new routes are yet another activity a player might desire to undertake during play as a result.

The devil is in the details, of course, but I think there might be some interesting side effects to adding such a concept to an MMO.  What worries me is, how could it be exploited, and are there ways to mitigate the impact of such activities?

Edit: I see this going beyond such concepts as the gryphon routes in WoW, or the original mounted routes in DAoC, in that you as the player could effectively create your own routes between any two points.  I realized that wasn’t clear from the text after re-reading it, sorry about that.

Here’s a question for the day: in MMOs, how large and “active” would you like the cities to be?

In most of them, cities are actually pretty static and deserted places, more like an abandoned movie set than an active community.  However, that does make it easier to 1) maneuver through the streets and not become distracted/lost, 2) find what or who you are looking for, and 3) highlight “important” NPCs and other PCs, as opposed to those that have nothing to directly offer to the ongoing activity of the character.

For my part, I’d like more background activity in cities.  Perhaps CoH has spoiled me a little bit there, because it really stands out for me now when a more traditional MMO implementation of towns and cities is presented… they seem even more lifeless than they used to, to the point of being a little creepy. 

DDO is another example of a city that largely feels okay, in that case, because the town is small enough and so central to play that there are always PCs moving around bringing the scene to life.

I guess the basic question is, are most people happy with cities in MMOs as they are?  If not, what changes would you like to see?

I says to myself, I says…

“Craig.  Whatever you have to do… involving flaming hoops, moving heaven and earth, mountains to Mohammed, liens on your soul, whatever… allow the player-character to jump.”

I’ve actually written about this before (here), but a few recent events have me furiously wanting to get up on this particular soapbox again, so…

A couple years back, I took some classes in a game development program with the intent of trying to get a better feel for the graphics and animation side of the equation: 20 years of programming for banks, newspaper publishers, and retailers doesn’t offer much insight into modeling or animating a 3D image, I’ve discovered.

Anyway, this particular curriculum had a seemingly incongruous course stuck into the 3rd or 4th quarter of the program: Instructional Design.  Oh, heavens, the level of complaining from my fellow students… you would have had to heard it to believe it.  I’m not entirely certain, but I believe 3 people left the program entirely simply due to this class (“this is the last straw” type of reasoning in mind, I imagine).  “What does this have to do with making games?”

Now, I enjoyed the class, and have found it highly relevant going forward.  Here’s why.

Impetus

I’ve had occasion to just briefly dip my toes into 3 betas (1 open, 2 closed) over the past few weeks… either a friend wanted me to take a look, or I received an invite by email, so I’ve felt a little obligated to make time despite a bunch of other distractions.  And all-in-all, it’s been kind of like the old joke… I’ve got good news, and bad news.

The good news?  All three of these games appear to be taking at least baby steps in new directions.  There’s been some creative thinking!  Woot!

The bad news?  Good luck figuring out how the h-e-double-hockey-sticks these creative new systems actually work, cause they sure ain’t telling you.  Instead, they are still trying to get by on the old tried-and-true “just dump them in the world and throw them into combat… they’ll figure it out eventually”.

Here’s a hint, guys… throwing your kid into the pool to teach him how to swim  in short order works (sorta) because if he doesn’t figure it out, he drowns.  If your players don’t figure out how to play your game in short order, on the other hand… you starve as they go and play (and pay for) something else. 

See the difference?

Details

I wish I could go into some solid details, but the best examples are all under NDA.  In one case in particular, I can vaguely see where they are trying to go… and I think it has some potential (of course, it’s reminiscent of systems in my dream design, so take that with a grain of salt). 

It’s potential that many people, I fear, will never really see because they are not currently training new players in how to play their game.  People will get frustrated, will feel confused and powerless right off the bat, and will leave the game and never look back as a result.  My hope is that this has already been recognized as an area needing massive improvement (it is in beta, after all), and that someone is assigned to fixing this right this moment…

The really irritating part?  All of these games have had the usual core pop ups… you know, telling you to use W to move forward, A to turn left, D to turn right… interface training, essentially, a level of instruction that I recognize as necessary, but frankly feels condescending after a while.  Then we get to interactions with game mechanics involving underlying systems that _haven’t_ been seen a thousand times before… and cue the crickets.

Now, on a personal level, I have no problem with this.  I actually kind of enjoy puzzling out the rules and systems, as long as I have the time to give it.

Unfortunately, most people don’t enjoy it.

Conclusion

Not the most satisfying rant since I couldn’t get into specific cases and remedies, but it will serve for the moment.  Yes, it’s important to get people into the game quickly… but you also need to teach them how to play.  Imagine having someone plop all the pieces of Axis and Allies, or a Magic: The Gathering deck down in front of you, minus any instructions or foreknowledge, and telling you “Have Fun!”  These games do that regularly, and under far less workable circumstances to boot.

It’s not that I don’t understand root causes for skipping this particular item… my own little model GMUD is about one good weekend of coding away from releasing a tiny dungeon to run around in, if I ignore the need to teach potential guinea pigs  players how all these newfangled little bits and pieces I’ve thrown in interact.  I’m not going to post it without doing that additional work… I have to at least try to come up with some basic guidance on some of this stuff…

… but I really want to.

Edit: links fixed

Just very very distracted.  I will return this weekend.

In the meantime, if you’re really lacking for reading material, and to post something besides a denial of the rumors of my recent demise, how about some links!

Some reflections from a part of the blogosphere we MMO bloggers don’t interact as much with (but probably should), the indie RPG scene: a roundup of musings on the topic of “What Makes a Great RPG” at Tales of the Rampant Coyote.

An interesting little link I picked up at the latest MMMOGIG… a browser-based RPG,  Triglav, written completely in Javascript (and not too bad looking, I must say).

If anyone is aware of a good source for original sprites (preferably isometric, but beggars can’t be choosers, right?), I’m in the market.  Not a lot of money to throw at it, but better than pocket change… I’ll even cut back on the Diet Dew consumption if I have to (which would actually be more money than I care to really think about…)

Another blog to add to the blogroll someday… Troll On Fire.  Discovered in a roundabout way via my contact with Erik Hyrkas of Dusktreaders at MMMOGIG (which also still needs a sidebar link as well, argh….)

Again, not dead, just busy, more this weekend, ttfn…

I know I’ve been rather sparse in posting of late… lots going on, not much energy to spare.  As things calm down on various fronts with the approach of winter here in Minnesota, it should pick up again.  Having my annual tussle with seasonal affective disorder hasn’t helped much, either… that should disappear here shortly as the length of day starts to stabilize again.

Sandwiched between other tasks and distractions, I’ve been continuing to plug away at that XNA project I’ve mentioned a few times in the past.  It’s something I can work on for as little as a half-hour or so and achieve something, and yet drop at a moment’s notice without even a tinge of guilt.

A brief list of my latest and current tasks/goals, since there might be someone out there vaguely interested…

  • As I mentioned briefly a couple weeks ago, I added “seamless zoning” to the application.  Currently, it works as follows…
  • The application can track up to 16 “zones”, which are simply square regions of a uniform size (currently trying it with grids of 50 tilesx50 tiles).  Nine of those zones will always be active, the other seven are for managing transitioning and data loading more smoothly.
    When the character first enters the world, the basic layout of the 9 zones immediately surrounding the character is loaded from the server, rudiments like walls, doors, etc.  State information (whether a door is open or closed) and transitory objects (other players, NPCs, items laying on the ground) are sent later, based on more specific location and line of sight information.

    As the character moves from one zone to another, new zones are loaded into “open” slots to keep an active 1 zone “buffer” around the character’s location in play.  Zones which were loaded but moved outside the buffer area are just marked as “stale”, so that if the character moves back in that direction in a short time frame, a request to “refresh” the zone based on actions which took place in the interim can be sent instead of having to reload the entire zone.  Once all 16 slots are in use, the oldest “stale” slots start to be re-used.

    For example, if a character is in zone (10,10), the following zones would be in memory:

    (9,9) (9,10) (9,11) (10,9) [10,10] (10,11) (11,9) (11,10) (11,11)

    If he then moves to a tile that is located in zone (11,10), three new zones are loaded, and three old zones are marked as potentially “stale”, denoted by {}:

    {9,9} {9,10} {9,11} (10,9) (10,10) (10,11) (11,9) [11,10] (11,11) (12,9) (12,10) (12,11)

    If for some reason he turned around and moved back into zone (10,10), the basic data for the (9,x) zones is still fairly readily available… the only potential issue should be any events in those zones that changed the core structure of the zone (explosions?)

    Pretty rudimentary, like I said earlier, but it seems to work okay so far, within the other limitations of the app at least.  I doubt it scales all that well, but for a hobby/test application it should be adequate.

  • Switched over to more of a web-based network paradigm.  While the socket class was working, it was becoming somewhat of a pain to be going back and forth writing code in two separate apps.  What I’m currently trying is simple calls to web pages (php pages, actually), sending and returning whatever data I happen to be working with at that moment.
  • Now, why I’m finding it easier to write standalone php pages to perform discrete tasks, than I did to write discrete C classes/functions as part of a server app to perform those very same tasks, I really don’t know… I just know that it has proven more workable for me, and therefore, that’s the route I’m going to pursue for the moment.  It won’t be all that hard to go back to the other code, when it proves necessary.

    The code to implement this on a rudimentary basis is so dirt simple, it’s almost criminal… I don’t even bother doing anything in the constructor at present, and it’s working fine…

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    using System.Net;
    using System.Web;
    namespace TestEngine
    {
      class WebAccess
      {
      public WebAccess()
      {
      }

    public string PageLoad(string reqURL)
      {
      string strURL;
      string strResult;
      string strResultTemp;
      HttpWebRequest wbrq;
      HttpWebResponse wbrs;
      StreamReader sr;
      int xx;

    wbrq = (HttpWebRequest) WebRequest.Create(reqURL);
      wbrq.Method = “GET”;

    wbrs = (HttpWebResponse) wbrq.GetResponse();
      sr = new StreamReader(wbrs.GetResponseStream());
      strResult = sr.ReadToEnd().Trim();
      sr.Close();

    // strip off excess http/html in response
      xx = strResult.IndexOf(“[START]“);
      if (xx > 0)
      {
      strResultTemp = strResult.Substring(xx+7);
      xx = strResultTemp.IndexOf(“[END]“);
      strResult = strResultTemp.Substring(0, xx-1);
      }

    return (strResult);
      }
      }
    }

    Again, not exceptionally robust, but adequate for the present and fairly easy to expand…

  • Modifying my tiling code to more fully incorporate wall/edge data.  I’ve decided I want to allow “thin” walls… I already have a tile structure that tracks which edges face onto a “filled” tile as opposed to which do not, which was added to make the lighting code a little easier.  However, as things stand, while I can draw a thin edge wall, it’s utterly transparent to the other processes… neither light nor movement gets blocked at present, as you can tell from the “shell” of wall segments near the NPC in the upper part of this screenshot.
  • Voyages client 2007-10-13 view A

    In particular, I want to be able to have different textures on each side of a wall segment, which should be simple, and I want to keep wall segments from being lit that face away from the light source, but are attached to floor segments that should have some lighting… two examples near the “doorways” in the screenshot below.  (I should try adding a slight yellow tinge to the outdoor light… that white is supposed to be “sunlight”, but it looks more like fluorescent cafeteria lighting to me right now…)

    Voyages display 2007-10-13 part B

    Shouldn’t be hugely difficult, but since I haven’t looked at that code for a while now… ah well, worst case, I just go back a rev…

  • I want to add some “paper-doll” capability to the code.  Probably just start with my poor overused “generic fighter” sprite,Fighter sprite and make it so the weapon, cloak, and some off-hand items like a torch and/or shield can be added and removed.  Start simple, within the (very) limited boundaries of my artistic ability to create new pieces/parts, and accrete from there.

I know, simple stuff, but it’s fun to be able to just putz away when the mood takes me.  (And it fills the occasional blog post, tho I try to avoid doing that too often, since I imagine it’s rather boring to read.)  But, if you want to kibbitz, feel free…

I never fail to be fascinated by the apparent economics of computer game production, particularly MMO production.  UO2, Mythica, MEO (the original), the recent example of Gods and Heroes…. years of development and asset production, millions of dollars invested… nah, let’s shelf it all.

There is an implicit acknowledgement that it is seen as unlikely that any recovery of the investment is impossible… that the benefit of moving forward to release doesn’t outweigh the costs by enough to justify continuing the process.  In Perpetual’s case, I suppose it could also have been a problem of 3 projects to pursue (ST:O, G+H, engine development and licensing), but funding for only 2… 

I may be the only person on the planet that is interested in this kind of thing, but I’d love to hear more about the decision-making process behind this type of event… another “post-mortem” I’d love to read about someday…

Blog Stats

  • 70,626 hits

Promos and Events

Live in or near Mpls/St. Paul? Interested in talking MMOs with other like-minded people? Join us on either June 30th or July 14th at MMMOGIGs #1.9 or #2.1 (or both!), details coming soon. You can also join us in Google Groups or meetup.com to discuss the when/where of the next meeting, provide feedback, etc.
October 2007
S M T W T F S
« Sep   Nov »
 123456
78910111213
14151617181920
21222324252627
28293031  

Recent Readers

Follow

Get every new post delivered to your Inbox.