Gorgon Random Treasure

I was replaying Borderlands and realized that I’ve been thinking all wrong about random treasure systems. Yes, they’re damned hard to do well. But even if they’re done poorly they can still be great. Borderlands’ random treasure system is broken in many ways. The color coding isn’t much more than a vague hint at an item’s power — you often find white and green “trash items” that are better than blues and purples of the same level. The monetary value of items is also completely broken. The item names, too. But whatever. It’s still insanely fun.

So the trick to a good random treasure system, I think, is to make sure there really are big payouts. Players really have to occasionally strike gold with an amazing, game-balance-destroying item every now and again. (Or at least temporarily balance-destroying!) When a treasure system fails (and many do), it’s almost always for the same reason: players just aren’t excited to look at the damned loot. That’s the point of any treasure system. Other things, like intuitive color coding, appropriate cash-values, cool item names, etc., are just gravy.

With that in mind, I’ve begun working on the random treasure system for Gorgon. I don’t have infinite time to polish this treasure system, but if I focus on the one thing that’s most important, the other things can come later if they have to.

Treasure Systems for Low-Power-Escalation Games

Gorgon is unlike WoW (or other Diku-esque MMOs, like EverQuest) in that you don’t grow dramatically more powerful each level. In my MMO, maxing out your combat skills might make you 25 times stronger than a newbie. That sounds pretty big, and it is, but it’s nothing like WoW, where a level 85 does thousands of times more damage than a level 1. This MMO has a slower power escalation, and that has ramifications all throughout the game design.

From a design perspective, one of the nice benefits is that crafted items are valuable for longer. Your low-level Poison Resistance potion (which reduces poison attacks by 5) is really useful when you first can make it, and it stays valuable for quite a while because monsters’ poison damage doesn’t escalate through the roof. I want crafted consumables to be useful for a long time so that you can learn them, come to value them, and create a market for them. But, of course, that’s a double-edged sword. I don’t want random loot to remain valuable for too long of a long time, because then you stop looking for more random loot and monster hunting becomes boring.

So how do I get random loot that has really significant power without breaking the game? My best plan right now is having a breadth of powers. Instead of finding swords with ever-higher damage numbers, you find swords with different buffs and powers that change how your abilities work.

For instance, if you’re an Unarmed fighter, you’ll love gauntlets that make your Punch attack heal you. You punch a lot, so that’s a huge power boost and very noticeable. On the other hand, you may prefer gauntlets that cause your Punch to do extra damage, or that cause your Cobra Strike to stun more reliably. But an amazing pair of gauntlets would do all three things.

The Augment System

So how it works is pretty simple: when you get a loot weapon, that weapon has some built-in stats and effects. In addition, it has a certain number of “Augment Points” which are used to randomly “buy” additional powers. (This all happens automatically: the item’s powers are bought before it ever appears in the game.) Higher-level items get more points to spend, and high-rarity items (greens, blues, purples) get more points also.

Augments come in levels. For instance, the first tier of Health-Enchantment costs 10 “Augment Points” and gives you +5 max health. The next tier costs 15 Augment Points and gives you +10 health. And so on. Normally items have one really expensive augment (costing the majority of its Augment Points), and any leftover points are used to buy something weaker. But occasionally it will decide to split its points 50/50, or even 33/33/34, so it’s possible to find items with lots of different powers at once.

Most of the time, when an item has multiple augments, they’ll be complementary: gauntlets might have serveral Unarmed bonuses, or several Fire Magic bonuses, but rarely will it mix the the two. (But it can still happen occasionally, because that’s fun in moderation.)

Stacking Effects

Here’s something slightly unusual for video game RPGs: augments with the same name don’t stack. So you might find a helmet and a shirt that have “Enchanted Punch Damage +5″, but wearing both doesn’t give you a +10 bonus, just a +5 bonus. However, many abilities come in several flavors. For instance, there might be Enchanted Punch Damage (magically enhancing your fists), Comfort-Bonus Damage (you can hurt people more because your armor is so comfortable), and Placebo Effect Bonus (your punches do extra damage because you think they will). These have different names, so they all stack.

This is a little unusual and I’ll need to figure out how to convey this to players well. But it’s a great technique in making sure that power levels don’t get out of hand too fast, while still letting you occasionally hit the jackpot of equipment configuration. It’s an old-school D&D technique, but it works well there. Finding items that stack together is part of the fun.

(Actually, I’m going to try this idea, but I admit I’m a bit afraid of it… I worry that it will just be too mind-blowingly confusing. “Why the hell doesn’t this helmet work?! What do you mean it’s because of my socks?!” I’ll give it a shot. In the worst case, I can fall back to the tried-and-true “slot model”, where you only ever find (effect X) on helmets, and you only ever find (effect Y) on shirts, so there’s never a chance they won’t stack. This doesn’t give you the chance for random lucky finds, but it’s extremely easy to understand… and to balance…)

Augments and Crafting

The crafting system is integrated deeply into random items. Remember that I said augments come in levels. That’s so that crafting and other skills can raise their level. A master jewelcrafter can take a Tiara of Placebo Effect +20 Health and improve it to have +30 Health instead.

This is also where item destruction comes in. (I’m borrowing the model from AC1, with some tweaks.) The more times you augment an item, the higher the chance that it will explode. One augment is always safe, but after that you’re playing roulette with your precious item!

You may wonder why I’d let you play roulette like that. It’s because the house always wins at roulette. Most items will end up being destroyed, keeping the item economy healthier, which is a win for the game. Of course, the down side is that players are never happy when they lose an item. It hurts. It’s not fun. But if it feels sufficiently voluntary, they’re unlikely to rage-quit over it. (If they feel like they need to play roulette with their items in order to have a viable character, though, then it gets a lot dicier… hopefully awareness of that potential issue can help me avoid it.)

Crafters can also craft unique items, too — they won’t be limited to just augmenting items. But most likely, the most powerful items in the game will be ones that were randomly generated as treasure and then augmented by crafters.

(I’m still mulling how crafting should interact with everything, but this is where my thoughts are right now, anyway.)

Excitement Around Each Corner

My main approach to making loot exciting is having lots of items that augment your abilities. At higher level, the powers get crazier and more unusual. This sounds exciting to me. But of course, one person’s “excitement” is another person’s “WTF, how can I tell if this sword is better than my old sword or not?” There’s something to be said for swords that just have bigger and bigger damage numbers on them: you can always tell which one is better.

I’m losing the ability to easily compare items, and that’s not something to scoff at. It’s actually a big price to pay. It can be mentally tiring to examine tons of items each play session, constantly working out which is better. That can make it tedious to find loot, which ruins the effect. I hope to at least get you in the right ballpark (by color coding the items, having price tags that reflect the items’ power, and with naming conventions and so on).

But even if I fail at all that communication — even if it’s extremely tiring and difficult to figure out which set of magic pants is right for you — I still think this design will target a certain audience really well. My main goal is to for my imagined player-base to find the system exciting. If I do that, I can then improve it to be more usable. If it’s not even exciting, though, well, that would be a tragedy. So I’m shooting for lots crazy powers and then we’ll see where to go from there.

Snails Return With a Vengeance

If you’ve been reading the blog a while you’ll know that I had a setback a while ago when it turned out that many of the art assets I’d licensed were stolen from another game. I got my money back on those purchases, but most of the creatures had no alternative versions available. The Giant Snail is a great example: it was a fun distinctive monster, and I was sad to see it go. But it’s back! Well, not the same snail. Actually, it’s a completely new snail!

It was hard to get a good screenshot because he was kicking my ass.

It was created by Anthony Cook, who read on the blog about the lost creatures and made this one as a replacement. It appeared in my inbox one morning, complete with animations and everything, and bam! Mr. Snail is back. It looks really good in game.

This really made my week! It’s not all that common to find 3D artists with skill at making low-poly monsters. And so far, it’s been vanishingly rare for them to send me models out of the blue. :) Thanks, Anthony! (He mentioned that his portfolio site is outdated — but it has contact info, at least.)

I even got him to create an alternative shell design. I’m going to use the other shell with the Animal Husbandry skill. Players who raise snails can occasionally find the other snail pattern among their newborn snail pets. (Hmm, snails are hermaphroditic, aren’t they? Well, I guess that should make finding a mating pair a lot easier…)

Posted in Project Gorgon | 5 Comments

Video Diary #2

Posted in Project Gorgon | 3 Comments

Video Diary, First Attempt

Here’s the first attempt at a video diary. (I actually did like ten takes but this is the least rambling one.) This whole “video” thing will take practice… I have a habit of constantly moving my mouse while I talk or think, and I do that in the video… it’s really distracting in places as I pointlessly change the camera angle.

So I’ll work on that, and the framerate lag (which didn’t happen in-game, just in video), and so on. But ya gotta start somewhere…

This video shows some behind-the-scenes of developing a new dungeon.

Posted in Project Gorgon | 2 Comments

Death Stories in MMOs

Okay, let’s talk about something completely unimportant for a while. This is the tiniest little detail, and it doesn’t make or break the game in any way. But I found it interesting, so maybe you will too. Let’s talk about the death-story.

Explaining death in an MMO is tricky. After all, you don’t really die for long. And because it’s a persistent world, your un-deaths can be extremely noticeable.

In many cases, the game just says “screw it” and goes right past logic and into surreal weirdness. For instance, Dark Age of Camelot directs players to literally go and visit their own graves when they die. But other games try to explain death.

There seem to be three general approaches:

  1. Explain that people don’t really die, it just looks like they do. Instead, they just become “disabled” or “unconscious”. (This is what LoTRO does.)
  2. Ignore death, so that it happens out of story. They don’t “die”, they just “fail” and have to try again. Their death never really happened and there will not be any funerals. (This is pretty much what WoW does, with just a flicker of acknowledgement via the angels in the graveyards. It’s also what DAoC does — those “gravestones” are purely a game mechanic, not a story element.)
  3. Decide that people don’t die because of story reasons. This is what happens in sci-fi games with “clone activation” systems and the like. A fantasy example comes from Asheron’s Call 1: in that game, players don’t die because Asheron created some relics that keep bringing them back. When players die, they’re resurrected with just a smidge of their life force stolen away, to power the artifacts’ magic.

That last option is common, but it’s actually bat-shit insane, from a game design point of view. It’s one thing to completely ignore the logic of death like DAoC does, but it’s another to flaunt it, wave it in your face, and then keep pretending that death has meaning.

If every middle-class person in your dystopian future can afford their own personal clones, doesn’t that affect the story a lot more than we’re letting on? Of course it does. Murder stops being the most heinous crime you can commit, for one thing.

Sci-fi novels have explored this material with lots of interesting results, but I’ve yet to see a sci-fi game that really explored their clone system (or any of the rest of their tech). Instead, it’s just a cutesy metaphor that is otherwise ignored. Really, it’s more like option #1: ”people don’t really die.”

That’s convenient, because it means that NPCs are all still scared of death, and murderers are still a lot worse than evil investment bankers.

But if you aren’t going to follow through with your fiction, I’d rather you didn’t have it at all. DAoC’s “visit your grave” system feels a lot less bizarre than the “resurrect at the clone station for the upteenth time, talk to the NPC nurse, and then go back to pretending that death is scary” system.

To Turbine’s credit, they eventually tackled the story ramifications of AC1′s death system, exploring what the world would be like if a large population could keep coming back over and over. This turned out to be pretty disturbing.

Some of the most memorable AC1 game fiction involved villains that maim and torture their foes until they go insane. After all, killing their foes would accomplish nothing!

Various Turbine writers have told some really interesting stories along these lines, exploring what it means to just keep coming back over and over. But in the big picture, this approach ties your hands. Your stories end up reaching a cosmic power level in order to maintain high tension levels.

I don’t want to go there. At least, not at first.

Death in Gorgon

Which brings me to my game. My first instinct was simply to go with the “you don’t really die in-story, it’s just a game mechanic” explanation. This is the default assumption in any game, I guess. And until recently, I hadn’t given it any further thought. But I’ve been expanding the death mechanics in the game, and ignoring death has started to feel pretty weird.

Death is a great hook. As a designer, it’s pretty safe to assume that players are eventually going to die, every now and then, and you can associate game systems with that occurrence.

Most games go the punitive route, explaining that you have to recover your lost power somehow. But that didn’t seem very fun, so in my game I switched it around. When you die, you earn Death XP, which slowly makes you more powerful and unlocks new abilities.

But how do I explain that, in-game? Suppose you need to reach Death Skill Level 40 before you can become a necromancer. Okay, that’s fine. But if you go visit the Necromancy Trainer (or whatever) before you’ve reached that point, what does she say? “Sorry, you need to go kill yourself some more and come back to me?” Kinda weird if the deaths didn’t really happen in-game.

It’s a nit, I admit. I’m nit-picking. I’ve never seen a death-story that broke an MMO: I’ve always been able to suspend my disbelief, more or less. But if I’m creating the story anyway, can’t I get something as important as death right?

You Don’t Die Because You’re So Special

My current approach is #3, but with a slight twist. Instead of saying “nobody dies because of <technology or magic thing>”, I say “your particular character doesn’t seem to be staying dead, but you aren’t sure why not, or how long it will last.”

There are reasons, but they’re a plot secret that slowly unfolds. Players will first notice this when they meet their personal guardian angel. At least, that’s who he says he is. But why does your guardian angel live in a sewer and look like a lich? Those are valid topics of concern.

So basically, I’m using the same cliche answer as a million single-player games: the reason you don’t die is that you are special. But everybody else is in danger of dying. And you aren’t sure what’s keeping you going, or if it’s a good thing. Could there be sinister forces at work? (Hint: of course there are.)

I think it makes the game a little more coherent to think that most people don’t survive death. It’s just you, and maybe a few other people. Some NPCs get wise to this and some are even jealous, but most NPCs don’t really notice.

It’s a cliche, but it fits better than the others.

Storylines

Speaking of storylines: the game’s story is slowly taking shape, and every so often I allow myself to be briefly excited about it. It’s full of plenty of cliches — you start the game with amnesia, for chrissakes — but it’s also got a lot of twists that will make it feel fresher. And there are some great NPCs to meet.

But I never get to spend much time on the story. It’s not what people are coming for. I certainly want the story to be interesting, and I want it to make sense, but I know I won’t be winning awards for story.

But every once in a while, I can daydream, can’t I?

Next time: I’ll talk about necromancy and what it means to be undead in Project Gorgon.

 

Posted in Design, Project Gorgon | 8 Comments

Cows

Cows? Cows.

I’ve asked the pre-alpha players to turn themselves into cows and test out the cow-form curse for a bit. They’ve found some serious problems, like cows not fitting into doorways, and higher-level cows were accidentally invincible… so, testing is going well! Thanks, guys!

As I mentioned before, being turned into a cow is one of many curses in the game — like being turned into a pig, or even into a werewolf, or being unable to enter water without melting, or having the voices of evil demons locked into your head. They’re bad things — fates worse than death, in some ways.

Cows, though, are the newbie curse. You get this curse just by tasting rancid milk in an insane wizard’s laboratory. The game tries pretty hard to stop you from doing that — mentioning that it’s probably going to cause a fate worse than death, and that it would be really stupid to eat rancid milk — but you can do it anyway.

Why do I let you do that? Expectation management. I need to convey to new players that there are things that might happen to their characters that are not easily repaired. At the very least, they need to know to pay attention to warning screens, and when an NPC says something’s scary, they mean it’s really scary. Death isn’t very scary in most MMOs. (Especially mine!) But we still occasionally want something scary to be afraid of.

Having the cow-curse right here in the newbie experience also teaches players another important thing about the game: there are lots of ways to play. Being a cow is a difficult journey, but if you wanted to, you could eventually become a moderately competent fighter-cow. You won’t be able to wield weapons, but you’ll be able to use abilities like Mentalism and Combat Psychology, along with a barrage of kicks and moos.

Since it’s a newbie curse, it’s not too hard to lift. But not trivial! (Because that would completely screw the expectation management if later curses were hard to remove.) So removing the cow curse takes an hour or so of grinding, during which you unlock the various cow powers and see what it’s like as a cow.

I don’t expect many players to remain a cow indefinitely as it’s quite restrictive with very few up sides. But I do want some up-side to every choice you can make. Being a cow means you look harmless to other animals, so deer and similar animals don’t run away from you. (Thanks to whoever had that idea in the forums, I forget!)

Cows are also able to collect grass and heal themselves with it — which turns out to be a cheap, potent self-healing mechanism.

As for non-combat experiences, cows are kind of screwed — with hooves instead of hands, they can’t use a saw for carpentry, for instance. But with a little imagination we can envision a cow planting vegetables and growing a garden, so they can do that, and a few other things.

I wanted them to have their own crafting niche, so higher-level cows can create milk, which is useful for all sorts of cooking. Low-level milk is plentiful anyway, you can buy it from NPCs, but only player cows can create higher-tier milk. If they chew only top-quality grasses for long enough, they create better milk.

Seems perfectly logical, right? And it fits perfectly into the skill spreadsheet. But when I got it into the game, it … uh, felt a little weird.

First, I’m not sure I want newbie players to be accosted by other players roleplaying talking cows, saying “here, drink my milk, newb”. It’s a little unsettling to think about drinking milk that came out of another player. And the notion of higher-quality milk takes us further down that rabbit hole.

I just about chucked the whole idea, but then I decided, you know what, screw it. This is not the weirdest thing in my game, for better or for worse. Milk-obsessed cows fit right in with sex-obsessed elves and hate-obsessed undead and everything else. At least you won’t mistake it for WoW! Yes, it’s a little freaky in the Douglas-Adams-talking-dinner kind of way, but so what?

And having reassured myself that it was fine, I then logged in as a male character, and realized that male cattle can also create milk. Sigh. On the one hand, we’re already doing a lot of hand-waving with the whole cow experience. Can we hand-wave this one, too? I decided: no. If “drink my milk, I made it fresh for you” is disturbing, then “drink my boy-milk” is completely out of the question. Would people go there? Of course they would.

So I decided all cows are girls. It isn’t particularly obvious (the cow model lacks gender-specific anatomy, of course), but the game mentions it, and NPCs will refer to you as female for the duration of your cow experience. I… guess that fixes that. Sure! Moving on!

For the record, most cow-oriented mechanics ended up on the cutting-room floor. One of the most fascinating things about real-life cows is their digestive system, and I wanted to model that with grass that gets chewed up and regurgitated into cud. But I decided that the cow experience didn’t really need reminders about how cows vomit up grass 24/7. See? I know the limits of tastefulness! Really!

Next Up: Death in MMOs


Posted in Project Gorgon | 12 Comments

When Puppets Lose Their Puppeteers

First up, news for pre-alpha testers:

Pre-Alpha testers: the server is back up for a couple of days! If you have an hour, please log in with a new character and test out the newbie cave. I would love to get your feedback on the game from the start point up to where you leave that first cave. You can email me (ericheimburg@eldergame.com) or post on the forum. Let me know what you liked, what you hated, what should be added to make it more fun or more intuitive. Anything, really.

If you had an old character, it’s been pseudo-wiped: it won’t show up in your list, but if you make a new character with the same name, it will be partially restored. Don’t make a character with an old name to test the newbie experience! You’ll appear in whatever area you used to be in, and you’ll completely miss the new starting cave. Once you’ve done the newbie experience, though, feel free to reclaim your old character names if you want. The pseudo-restoration feature will only be available for a week or so, so reclaim ‘em if you want ‘em! Only a handful of characters had earned significant levels already, so it’s not a big deal for most people.

If you emailed me to get into the pre-alpha and I haven’t replied, I’m sorry. I was waiting to have a server up and running to direct you to. I’ll be emailing you back soon!

Server Instability

One of the things that’s been keeping me from putting the pre-alpha server back up is that it’s no longer as stable as it used to be. There’s a nasty memory leak in Unity 3.5, somewhere in the guts of the engine.

I’ve been trying to find the memory leak, but it’s very hard. It’s not caused by my code — that would be much easier to find. Instead, the game just slowly leaks heap memory, and the Unity profiler doesn’t show any new object allocations actually happening, so it’s happening somewhere deep inside. My best guess is it’s some subtle bug in the new pathfinding system —  something about the way I’m using it is causing it to leak. But I can’t find any solid clues.

So I’ve been doing the old programmer’s voodoo dance: “If I remove this, does it stop leaking? No… how about if I change this? No… how about…” Just randomly flailing to try to find clues about what causes the leak. I’ve wasted a lot of time on this and still no luck.

Players might get this crash it if they stay logged in for enough hours, but it’s not a super fast leak, so I don’t even really care about that right now. It’s a much bigger deal on the server. Since the server is up 24/7, a memory leak will eventually crash it. (It stays up between 2 and 6 hours. What determines how long it stays up? I don’t know!)

“The Server” vs. Sub-Servers

But when I say “the server” crashes, that’s not really right. The server is actually pretty complex (surprise?) and has lots of parts, and only one part is crashing. But it’s an important part.

The main game logic is written in Java and runs in SmartFoxServer 2X. This part is still very stable. But the Java code doesn’t understand the physical 3D world. It knows how many Hit Points everybody has, and all their other stats, and it knows their x,y,z world location, but it doesn’t know what’s really at that location. Is it on the ground? In the water? On the edge of a cliff? In a tiny house? It doesn’t know.

To answer those questions, there are separate sub-servers that interpret the 3D world. These sub-servers are written in Unity, and run in Unity’s “headless” mode (meaning they have no graphics output). They just quietly sit there moving NPCs around at the beck and call of the Java server. The Java server calls them “puppeteers”. It tells them, in effect, “Hey, drive Skeleton #511 around. He wants to kill Bob and his AI routines are a, b, and c. Let me know when he’s close enough to attack Bob.”

A player is talking to some NPCs. How does the server "see" this same scene?

This is what the server "sees". Those three white capsules are actually the elves and the cow from the previous scene. Everybody's a capsule on the server.

There’s a separate puppeteer sub-server for each area of the world, controlling all the monsters in that area. It also spot-checks player behavior to see if they’re cheating. (If a player teleports through a wall, it can tell.)

What Happens When There’s  a Server Crash

Unfortunately, these sub-servers are the ones that are running out of memory and crashing. And when they crash, the Java server is blind.

Players can still move around, but the server can no longer tell if they’re cheating. (They could be using wall hacks or teleport exploits and it won’t know.) But more importantly, all monsters suddenly stop moving. They just stand there, and you can stab them to death and take their stuff. They are puppets without puppeteers.

But the Java server has a pretty good backup plan when this happens. It deputizes players’ computers to act as puppeteers! It looks for a player in that area with a good ping rate, and secretly tells that player’s computer, “okay, now make Skeleton #52 move around. It has these powers and this AI routine. Tell me where it moves to!”

I’m pretty happy with this emergency backup system. When bugs have caused sub-servers to crash, testers mostly haven’t noticed. The monsters just stop moving for a few seconds, then start right back up again.

However, players do perceive this as lag. The monsters seem to get dumber and have more trouble chasing after players. That’s because there’s extra network latency now: instead of the server talking to a sub-server right next door, it has to talk to some computer in who-knows-where.

Plus, the server has to trust that the player’s client isn’t hacked. An evil player could take advantage of this and fling those monsters off a cliff, or into space, or whatever they wanted.

It’s a pretty cool backup system, but it’s not something I want to happen when the game is finished. (But I’ll still use it for some things, like modeling the insides of player housing, where cheating isn’t a concern. I don’t much care if you use wall hacks in your house. There’s nothing to fight!)

Watchdog!

But what I really need to do is get those crashed sub-servers running again. My first thought was to just use one of the many 3rd-party watchdog programs that check to see if your app suddenly dies, and if so, restart it. But I couldn’t use those.

The problem is that the sub-servers don’t just crash and die. Unity wrote special code to avoid that. Instead, they stay alive, but stop working, and they bring up a special message box asking the user to send a crash report to the developer. That’s a pretty nice feature for the game client… but it’s really weird when it happens on a remote computer running with graphics turned off!

So the regular 3rd-party watchdog programs can’t tell when the sub-server crashes because technically it’s still running, showing that special message. I had to write my own custom watchdog app that can detect when the sub-servers are crashed like that and shut them down. Then it starts them up again.

So now when a sub-server crashes, it comes right back up again within a minute.

Damn You, Memory Leak

The watchdog app is something I needed to have done anyway, so it’s not wasted work. But it’s not what I’d planned to be working on. And I sure didn’t plan on spending 30+ hours looking for a leak that isn’t even in my code.

But it is what it is. I’ll keep looking for it, but at least now it’s not a super huge issue. The game will keep running, more or less.

Next time: cows, pets, and the eventual consequences of death.

Posted in Programming, Project Gorgon | 7 Comments

Still Developing!

The tutorial cave is finished and some of the immediate follow-up content is also done. I’m still adding a few more bits of content, but mostly it’s polish at this point.

Since the last pre-alpha version, I’ve changed a lot of the engine: the database, the way items are handled, the way effects are generated, and on and on. So there’s a lot of under-the-hood improvements… and a lot of new bugs as a result, of course. But I’m starting to feel happier about the newbie experience, at least.

I’ve got three or four reusable puzzle components, and have been dumping some extra content into the post-cave newbie area to get the density up to the target level. (The other zones, “Castle” and “Dungeon”, are basically untouched… that’ll be a different update.)

So, yeah… still working at it. It’s taking too damned long, but the new newbie experience will have some cool stuff:

Puzzles!

Surprising Weather Phenomena!

Strangely-colored crystals... and monsters!

New Tragic Curses To Befall Unwary Heroes! (This is a skill icon for the Cow.)

And lots of other stuff, too.

Good News on the Money Front

I don’t think I mentioned it yet, but my colleagues Adam and Chris (fellow co-owners of FlashGameLicense.com) have agreed to help pay for the artwork on the game. It’s not a ton of money, but it’s a big push in the right direction, hopefully enough to get the basic customizations I need: playable races, a couple of custom monsters, and several scenery sets. Woohoo!

But suddenly I’m thinking about what I could do with even more money — a dozen custom monsters! Unique set pieces from the back story! That would be really amazing to see.

I would love to have actual Myconians to go with the paranoid elves’ conspiracy theories about them. I’d love to have the squid-like demons from my novelization. And actually having the crazy Council buildings in the game would be amazing… as opposed to just using whatever buildings I can find.

More custom art would be great… if I had more money.

Kickstarter for More Money?

On the one hand, my plan has always been to make this game on the cheap, and if it starts to attract users who pay, I can put that money back into the game. But on the other hand, it would be really nice to have competent art direction from the start, as opposed to going back after people are already playing and retrofitting the whole world to not look like crap. So the idea of a Kickstarter campaign starts to seem pretty interesting.

Unlike some of the other MMO kickstarters out there, I have an actual engine and the ability to do what I say I’m gonna do. Unfortunately, even if I’m successful, the typical Kickstarter “success story” for games is earning $10,000. Which is great, and I’d put that to good use… but it’s not $100,000. If it’s just $10k, maybe I should wait a while so that I have more concrete stuff. But if there’s a gold rush now, maybe I need to act fast…

So I’m still mulling all of this over. I really want to have this new playable version done soon so that I can polish it and let people try it. I suspect a Kickstarter campaign that included the line “and you can play a very early version RIGHT NOW” would be a neat thing to try… but honestly I’d need yet more content before I could do that. But with just the content in the newbie experience now, I should be able to get some decent gameplay movies, at least… so back to debugging I go!

Posted in Project Gorgon | 4 Comments

Adding Direction

After some nasty post-GDC sick days (weeks, really), I’m back and working pretty hard on the MMO. The pre-alpha server is still down, which is upsetting, but it will be back up soon with a new newbie experience. Hopefully it will help set the tone a little better.

The Newbie Experience, v1

You start out in a cave after your memory has been wiped. There’s a depressed prisoner with you who doesn’t seem to offer you much help. Skeletal guards keep you from leaving. You find a sword and slash your way through the caves, reaching strange room after strange room, piecing together what’s going on.

I already know t’s not the permanent newbie experience — you can’t really finalize the newbie experience until most of the game is done. That’s why my instinct was to skip it until later. But watching people play the game, I realized they weren’t really “getting it.” Part of that is because there isn’t enough content there to “get” — a problem I still have to work on — and part of it is that the game isn’t setting expectations well. As a result, I don’t think most people who’ve playtested so far were very excited to keep going. (Most didn’t make it to the later area where more skills are unlocked.) So before I inflict the game on any more new people, I’m fixing up the newbie experience.

The key feature of the newbie experience is that it’s linear (of course), but with lots of extra stuff to do. You can learn Alchemy by finding ingredients in various nooks and crannies — which lets you create an antidepressant potion that temporarily makes that morose NPC less glum. You can tame giant rats to fight alongside you, learn to cook some simple recipes, discover how to autopsy corpses, learn basic geology, and hopefully a few more things. But you don’t have to do much of any of it. You can stab things all the way to the door and leave. The point is to let you discover things, not force-feed them to you.

So far the newbie experience is coming along nicely, but it does feel a little bit like an adventure game — you do step A to unlock step B, then step C to unlock step D. But I’m not sure that’s such a bad thing, because the full game kind of feels that way anyway. The game will usually involve semi-systemic content: “Give apples to the shy clerk until his friendliness meter is full, so you can buy the clock parts you need for the time machine, so that you can learn chronomancy, so you can…”

From a certain point of view, any game’s an adventure game, granted, but I think this MMO is a little bit more down the adventure path than many.

However, it’s definitely not an actual adventure game. The most important reason? I’m not trying to capture the brain-teaser part of adventure games. You aren’t supposed to beat your head against the wall trying to figure out what to do next.

More Directed GUI Tools

That’s why I really need to have more direction for the game. Traditional quests are part of it, sure, but they’re the baby steps toward bigger goals, and I need to help you understand the bigger picture.

I’ve tried various systems, like shoving goal info into the skill panel: ”Reach the next level to unlock a new research recipe.” That sort of thing. But it still gives too narrow of a view, I think.

So I’m planning out a “guide” GUI that shows you bigger goals that you can accomplish based on your current skills and state. It also gives hints to help you get started.

For instance, it might say that with your current skill level in Lore, you qualify to learn Ice Magic… if you can convince Yabaz in the village of Hammi to teach you. Then it’d be up to you to go learn what the NPC wants, which might be very complex or very easy.

I’m still working on the design, though. I don’t want it to be overwhelming. The mid-game is broad and flat in structure, meaning that you soon have access to tons of different goals at once. If it just listed all of them, there’d be hundreds of entries like “you can ingratiate yourself with Lumak the Hunter to get 10% better deals in his shop.” This is stuff you want to know, maybe… but not in a gigantic list form. I need to find some ways to organize this stuff. (Organizing the GUI is the easier part, really — the tricky part is organizing it internally so that I don’t have to do tons of manual data entry!)

So I’m still brainstorming on that… it’s a ways away. The more immediate goal is this newbie experience. I’m not sure when it’ll be ready, but I’m shooting for the weekend.

Posted in Project Gorgon | 5 Comments

Quote of the Day

Sandra: “Are these mushroom smoothies supposed to require cooking or mycology?”

Eric: “Don’t worry about that right now.” <pause> “It’s a live team problem.”

Posted in Project Gorgon | 4 Comments

Quick Dev Diary: Combos

I realized I never talked about the combo system, so I’ll do that real quick. This system adds some simple strategy (and IMO some much-needed fun) to unarmed combat. (And eventually it’ll work for sword combat also, but with different flavor.)

The thing about combos in most games is that they’re static. You learn the one optimal combo and then it just becomes “1,2,3″ over and over. Well, in an MMO, players end up pressing 1,2,3 anyway, making their own combos based on skill rotation times. If an MMO has a special Combo system, it needs to be dynamic somehow.

So my first thought was to make the combos reactive to what the monster does: “he used his rage attack, start the Rage Reaction Combo now!” But that made the combos feel too specialized. I want you to use lots of combos — several each fight. Otherwise unarmed combat is too boring.

So to get some variation in, what I’ve got now is “daily combos”. Each day, you have three different combo patterns available to you (such as Punch+Punch+Kick, or Barrage+Punch+Punch+Cobra Strike). One of these three is randomly chosen each day. You get to pick the other two.

Now you could just pick your two favorite combos every day, but combos work best if you chain them into each other. If one combo is Punch+Punch+Barrage, and another is Barrage+Punch+Kick, that’s good: you only need to do one Barrage to finish the first combo and start the second. So if you want to min-max unarmed combat, you’ll need to choose optimal combos each day to synergize with the randomly-chosen one.

I think that’s fun, as far as it goes. It will need a bit more complexity down the road, so I’m going to add some special abilities to liven it up. The Jab ability is like Punch, except it doesn’t cancel a combo if the next step isn’t Punch. That way you can Jab repeatedly without breaking your combo — very handy if you need to fill a few seconds while the next ability’s timer isn’t up yet. And Knee Kick can advance a combo for either Kick or Cobra Strike, so it’s a wild-card, making it easier to fit into combos.

One part I’m still a little up in the air about is how you “pick” your two combos. Right now, you pick one of them from a list,  and the other one is based on where you meditate. There are Meditation Pillars throughout the world, and each one has a specific combo attached to it. So in order to get the perfect combo for the day, you may need to run somewhere to meditate at a distant pillar.

I kind of like that — assuming it’s not too painful to travel, and assuming there are lots of “not quite perfect” combo choices you can make instead. Yeah, if you really care, you can travel all the way to a distant mountain to meditate and get the perfect combo, or you can go down the road and get a pretty good one.

But I’ll see how it goes when there’s more content. It’s hard to tell right now if it’ll hold up this way.

Right now the combo GUI floats right in the middle of the screen. Probably too distracting there, but easy to read! The grayed-out icons are the combo steps I haven't done yet.

In the above screenshot, you can see I’ve got Punchmaster (Punch+Punch+Punch) and Stripdown (Barrage+Punch+Hip Throw+Punch) combos underway. But the next step of each combo is different, so no matter which I execute, the other combo will be “broken” and fade away.

I’ll probably execute Hip Throw next, then Punch, which will complete Stripdown and start Punchmaster up again, chaining the combos together. (I think this is a lot more intuitive while you’re playing, so if this is gibberish, don’t worry about it!)

One little tweak I made during playtesting is that not all the steps have to be done to the same enemy. If you have a Punch+Punch+Punch combo, you can punch one guy twice and then switch targets and punch another guy to finish the combo. This is very useful for some crowd control combos (such as Kick+Kick+Kick, since kick knocks the opponent away from you — that’d be tedious to do to one opponent). It’s also nice for when an enemy dies in the middle of a combo, so you don’t waste the effort.

Sword Combos will use the same basic system, but you’ll get your combos a different way. More on that later!

Posted in Project Gorgon | 12 Comments