Thursday, February 24, 2011

What Keeps a Player Playing

I’m back this week to give my take what keeps a player playing a game. This is an important question when you’re trying to make a game yourself. Now, I have yet to really delve into making a game, but I do play a lot of games. I’d like to think that I have an idea why someone would want to keep pushing their way right to the end of a title.

It’s rarely the case today (especially with large AAA titles) that there is a single factor that keeps a player enthralled in a gaming experience.  However, I can think of several things that have kept me, personally, playing a game. The biggest of these things are challenge, storyline, and engagement.

I’ll speak on challenge first. Before I get into my opinions on it, I’d like to direct your attention to another Extra Credits video. These guys spoke on “easy” games, and they make a lot of really great points. If you don’t feel like watching it, the long and the short of it is challenge is best achieved by depth. As I’ve heard time and time again from fellow children of the Nintendo Entertainment System era, people feel that games have gotten way to easy.

I collect NES games, and I've gotten quite a few under my belt. I’ve gone back and replayed some games that I remember being crazy challenging, such as Karate Kid and Silver Surfer. Turns out they are not actually what I would call a challenge....they’re what I would just call crazy and stupidly hard. What’s the difference you ask? A game which provides a good challenge supplies resources in it’s mechanics to overcome the obstacle. Those old school NES games I mentioned however, give their challenge though poor design and the need to memorize everything that comes in the areas to follow. Karate Kid had nasty control and enemies that popped out faster then you can react, thus being maddeningly hard. Silver Surfer, while having it’s share of design flaws just had so much projectiles firing at you the player needed to know exactly what was coming to have any chance of survival. In other words...these old games are great examples of a challenge based around being just plain hard versus providing a challenge though depth.

Grand Theft Auto IV has some examples of good challenges (at least the way I experienced it). For instance, I can think of a few shootouts that occur in warehouse settings that are really, really hard if you just run around with your guns blazing. However, if you use what you’ve learned in previous missions the challenge becomes manageable. A well thrown grenade, a few good shots of a sniper riffle, hi-jacking a car and running everyone on the first floor over; these are all examples of how the player can use the game mechanics to beat the challenge and feel like they’ve accomplished something.

Moving on from challenge, I’ll now touch on storytelling. Mystery is a key storytelling component that helps to draw a player into a game, and keeps them playing. Bioshock, for me, was a great example of not only a wonderful story, but had a constant air of mystery about it that keep me wanting more. After I had played Bioshock for a hour, I couldn't stop. All other games I was playing at the time were shoved to the wayside, because I could not and would not rest until I had unraveled the entire plot. Keep a player guessing, and they’ll keep playing.

That being said, you can’t just have things the player doesn’t know, call that “mystery” and expect the player to be drawn in. You need to make sure the player actually cares enough about the character their controlling, the environment that they are traversing, and the question that they seek an answer to. The way you deliver the mystery is important as well. Give the player too much and they’ll become overwhelmed or just not care, and give them too little and they’ll get bored.

In playing Final Fantasy XII, I found that there was a great deal of mystery in the game, especially near the beginning. However, the story writers began to revel that mystery by allowing the player access to giant blobs of explanatory text describing characters, areas, etc. Frankly, after reading a few of these glossary entries, I stopped caring because breaking up the action (not that there is much action in FFXII) to read a novel’s worth of explanation is just not fun...not when you’re trying to play a game at least. This is a very good example of very bad storytelling.

Finally, I’ll talk about player engagement. Granted, this is quite a broad term when you’re talking about designing games, and both challenge and storytelling can play a huge part in keeping a player engaged. What I’m going to touch on in this post are game mechanics that keep the player playing. For example, what is it about World of Warcraft that have so many people hooked? I’ve plugged some time in the lands of WoW, so I have a pretty good idea. If you think about the concept of WoW, it just seems like a giant grind-fest up to max level, and few people would disagree with that statement. Despite the fact that the player has just accepted their fortieth “kill x of this monster” quest, they continue to pay 15 bucks a month to play it. Why? The goal of hitting the next level, unlocking that next ability, getting those new stat points keeps the player glued to their keyboard. The player feels rewarded by hitting that next milestone, and has a record of their accomplishments via their character and the gear that the character possesses.

Is this sort of engagement actually good? Blizzard Entertainment’s bank account would certainly think so, but is this true engagement? As I’ve said, I’ve played Wow...I’ve also quit WoW, wondering why in the world I spent so many hours of my life playing it. At the time, reaching that next level was the most important accomplishment in the world, but now looking back on it, it feels like I didn’t achieve anything at all. I feel that a game which is truly engaging feels satisfying after you’re done with it.

Whew...well, I’ve typed quite a bit for this post and haven’t really said that much at all. Perhaps talking about something so large requires more detailed posts. I’ll have to look at breaking down how to make good challenges, intriguing storytelling, and engaging game mechanics in future posts...just as soon as I learn how to do that myself...

gl hf!

Thursday, February 10, 2011

Baby Steps to Becoming a Game Designer

So, the plan this week was to provide scripting examples to help people along in making their Amnesia: The Dark Decent custom stories. However, as Frictional Games had warned, the editor is still in beta...and it shows. Put down a table and try and rotate it, the editor would crash. Try and select a subset of entities, the editor would crash. Try and load up one of the professional levels to see how they did a specific trick or puzzle, the editor would crash. I really and truly wish I was over-exaggerating, especially since I don’t feel “done” with this little journey. Sadly, though, I’ll have to wait until either an update is released for the tools or I figure out why my system hates it so. After all, it’s clearly working for some people.

With that downer out of the way, I have exciting news! I, along with some good friends/skilled colleagues of mine, have decided to create a game. A game that will go above and beyond my “Mathtris” learning experiment. There are still a lot of questions we need to answer and a lot of wrinkles to iron out before we even really get started. What platform do we plan to make it on? Do we use an existing engine or make everything from scratch? What genre of game are we going to tackle? Are we going to just do this for the fun of it or actually try and make money? Big questions that, as of yet, do not have answers. We’re going to have a sit down sometime in the near future to iron some of that out.

In preparation for game creation, I’ve been taking slow baby steps towards being a good designer. There is a show hosed on The Escapist Magazine called Extra Credits, and their videos have been very insightful as to what skills a designer of interactive experiences should have to be successful. The videos are entertaining to watch, so if you haven’t checked out their stuff, I highly recommend giving them a look. These videos along with my own effort have started to shift the way I think about decisions made when designing games. I actually have a recent example of this that I’d like to take you though.

I was having a conversation about RPG’s and design choices with one Ms. Bursey over at Bursey15's Blog (one of the people who will be working on our super-secret game of awesome). She has been re-playing Chrono Trigger recently (a very popular JRPG from the golden Super Nintendo era) and she came to a design choice that annoyed her as much today as it did back when the game was first realised. There comes a point in the game where you have a large series of battles across a bridge, ending in a final epic boss fight. After beating the bridge, you can skip from one end of the bridge to the other by use of the over-world map without having to enter the bridge stage again. As she pointed out, this is the only place that you can do that. Every other stage in the game forces you to enter it at one end, play though the stage, and exit though the other. She asked some very good questions; “Why did they do that! Why can’t I skip every other area I’m done with? The forest in front of the castle for instance...Why can’t I skip that?”

I should note that I was thinking like a gamer at the time. My response to her frustrated query was “yea, I agree. That was pretty silly of them.” However, after the conversation was over and I went about my business, that question kept gnawing at me. Why did they do that?

Those of you who have played Chrono Trigger know why it’s a favorite among JRPG lovers. It was a very well designed game. So, was this a screw-up? The designers were human after all, so maybe they just put this function in without actually thinking? Was it a tactic to artificially extend the amount of hours you needed to spend finishing the game? Maybe, and maybe not...I put my “game designer hat” on and really gave it some thought.

Every other level in the game has something, and a great many of them, including the aforementioned forest, has special chests that you need to return to get later in the game. The bridge however does not have anything else in it. There are no battles, no treasure, no storyline tidbits, no nothing.

Ok, so, skipping the bridge makes perfect sense. After all, if there is nothing interesting for the player, why make them play though that part again? The question still remains as to why the player can’t skip to the opposite end of other levels after they’ve completed it. This question made me start to think like a programmer. For this to work, another very important question will need to be answered; “How would we know when a player is done with an area and would not want to return?” Would you need to keep track of all the possible items and paths the player has seen or not seen? How would you know if the player wanted to re-enter to level up their characters? How would you know if the player wanted to double check if they missed anything? Trying to program that would be a nightmare.

The only real solution to knowing exactly what a player would want to do would be to give them a dialog option each time they came to an area. “Would you like to skip to the end of this level? Yes or No?” The mere thought of that makes me shudder. NOTHING breaks game immersion more than out-of-place dialogs popping up. So, what it comes down to, at least the way I see it, would be a trade off between keeping the player immersed and giving the player convenience.

Convenience of travel is at the heart of this design choice. The big travel convenience that you get later on in the game is (spoiler alert) the Epoch. This wonderful flying machine not only allows you to jump around to different time periods as needed, but you can fly to any point on the map. I specifically remember my first experience with the game and the moment I achieved that freedom. It was monumental.

At one point later on in the game I needed to return to the castle that is normally blocked by a forest. However, this time instead of having to run though the forest and try to dodge the enemies therein, I could fly right to the castle’s front gate. I remember that moment specifically, because I was so happy that I no longer had to run though the forest, and was so glad to have this flying machine.

So, now the question is would the achievement of obtaining the flying machine and the freedom it offers have as great an impact if you could previously just teleport between the levels? I think it’s safe to say that it would not. Sure, it would still be wonderful to fly around and jump time periods with greater ease, but it would not mean as much if there wasn’t so much previous effort to get around. Plus, would the world feel as free-flowing, large, and complete if you didn’t have to travel around in the way that you did before gaining access to the skies? I’d also have to say no to that question as well.

That was quite the large analysis for one little part in the game, I’ll admit. Were the above reasons the actual reasons the designers of Chrono Trigger made those decisions? I frankly have no idea. Am I over-thinking things to much? Well, maybe...but I don’t think so. A well designed game like Chrono Trigger is popular for a reason. Every button press, every level, every battle, every bit of interaction shapes the player’s experience. The difference between a good game and a bad game is the thought and effort put into making the mechanics work.

I hope this post proves some useful insight as to what thinking like a game designer is like. Now, I’ll follow up that statement by saying I’m new to this line of thinking, and I’m far from perfect. It’s a skill that’s going to take time to develop, without a doubt. For those of you who have played Chrono Trigger and have different ideas/theories as to why they made the decisions they did, then my mind (and comment section) is always open.


Thursday, February 3, 2011

Amnesia Level Editor: Free Fall Adventures

So, continuing on from last week, I’m going to talk further about the Amnesia: The Dark Decent level editor and my experiences therein. After learning the basics of the level editor and setting up my dev environment, as explained here, I dove right in and tried to make a very simple level. A map with a floor, four walls, a ceiling, and a light source. I always like to do the most basic thing I can when trying something new just to prove to myself that it works. My experience in the past has been if you do a lot of work up front and then try and test it, you’ll have more headaches then you can deal with. Start small, work your way up...the standard programmer’s motto. Also, should you try to set up your own development environment, I highly recommend backing up the “main_settings.cfg” file before you get started. On my first attempt at configuring the file, I messed up something and I could not figure out what it was. I simply reverted to my backed up copy of the cfg file and I was good to go.

When I first loaded up my trial map, I spawned in complete darkness, I could not seem to move, and then I heard the “crumple up and die” sound effect with the death screen shortly to follow. After re-examining my level I realized that my light source didn’t have enough of a radius (in fact it had no radius), so there was no way to see how my completely non-threatening room was killing me. After giving the area some well needed illumination, I tried to load up my map again. Turns out I was falling past my floor because the protagonist spawned outside the room, and then just plummeted into darkness until he hit the bottom of the map and died.

Oh, the humanity!
Fun times.

Clearly, my player spawn entity was not working the way I had hoped (i.e. not dropping me into the abyss of the map). According to the tutorial I was following, you can make any “entity” object a start point as long as the name starts with “_start”. I double checked my entity, and everything seemed to be fine. While trying to debug my falling though the floor problem, I noticed that in the user_setting.cfg file had a “StartPos” property in the <Map> element that was left blank. 

Hoping this may be the solution, I took the name of the player start object and placed it into the configuration file. Sadly, when I loaded up the map again, I was still falling to my doom. Reading further, the “StartPos” property is used to set a different player start position if you don’t want to use the first one you have defined. So, if my understanding is correct, leaving it blank should force the map to spawn me at my current start position, since it was the first one I created and there are no others on the map.

Finally, after some experimentation, I found that the “Area” tool can create a “PlayerStart” cube. After creating an actual starting position and placing it in my room, I stopped falling to my death and appeared in my room as I had intended.

So, after some playing around and a few mistakes, I’ve gotten my very basic level up and running. Now all I have to do is make it interesting. Design the level, put in difficult but engaging puzzles, make lighting effects to keep with Amnesia’s wonderful and creepy know, the easy stuff.

While making a full custom story interests me, what I plan to do with my little sandbox level is try out the scripting language. Frictional Games has a full api listed here of all the functions that you can use in the levels. Most of the functions seem self-explanatory just by their names. I think I’ll make my next post less of a rant and more of a demonstration of the functions as I try them out. Perhaps I’ll create a level with a series of bland rooms, each one demonstrating some function or combinations of functions.