WAID2 Design Peek #2: Possession and Narrative Voice

One of the biggest questions I had for WAID’s sequel was how I would handle the game’s possession mechanic.  That mechanic was really the whole point behind the first game, and remains so for the second.  I have to revisit it, address any issues that came up, and try to put a new spin on it as I move forward.  Aside from production value, it’s the one area that has the most potential for improvement, because everything else in the game will pivot around it.

Normally in video-games there is a subtle conflict between the narrative voice of the protagonist and the player.  That is to say, who is actually talking or acting — the protagonist of the story, or the person controlling them?  They are often mutually exclusive; the more dialogue that a protagonist is given, the less voice the player feels they have.  This is why so many video game heros are so infamously silent: any dialogue from the protagonist runs the risk of alienating the player and separating him or her from the game.

Case in point.
An extreme example.

This conflict reaches some degree of synthesis in many western RPGs, where the player actively creates their own protagonist and chooses his or her actions and dialogue throughout the game.  It still remains a concern, however, when the restrictions of the overall plot must curtail the player’s freedom to define their own protagonist.

In Why Am I Dead 1&2, you are not a person controlling a character, however.  You are a person controlling a character who is in turn controlling another character.  Therefore there are actually three voices in potential conflict, and in my case none of them should be pushed to the side completely:

  • The player’s voice —  What is the actual player’s goal?  What do they want to do?
  • The ghost’s voice — The dead person’s ghost (ie the real protagonist) is implied to have some remaining autonomy.
  • The possessee’s voice — That the possessee’s motivations are heard is not necessary in ghost folklore, but it is imperative for design.

In the case of the first game I leaned hard onto the side of the possessee’s voice.  It was simpler, and showed off what I felt made the game unique.  The player could choose what lines of dialogue to pursue, and the ghost could possess and move people around, but the actual words and actions that carried the story through were those of the characters who were ‘possessed’.  As a result, some people expressed disappointment or confusion that although the ghost was such a huge part of the story, it didn’t exert any influence on the course of events.  Likewise, some people were unsatisfied that they had to help the ghost, who turned out to have been an unpleasant person when he was alive.

The only difference being I don't even pretend you have this level of freedom.  From popmatters.com
I don’t even pretend you have this level of freedom.  Edited screen from KotOR from popmatters.com

To be clear, I’m very happy with how the format of the original WAID worked out — the possessed characters being able to speak was really powerful, and allowed for over 70 unique dialogues in the game.  Without their voices, it would have been around 10.  You are given the space to explore the characters in much greater detail than if they were overshadowed by the ghost’s voice, and I don’t have any plans of tearing that apart.  What I will be doing, rather, is adding different elements to the game around that base, which either portray the thoughts of the ghost, or allow the ghost and/or the player to influence the way the story goes.

This all means:

  1. There will be two ‘stages’ to possessing someone.  The first is when the ghost does not fully understand a character’s motivations or feeling, and thus cannot completely take control of their body — this results in the same mechanics as the original game, where the possessed character is really the one talking/doing things, and the ghost is just a silent nudging force.  The second stage allows the ghost to fully take over the person, meaning that the ghost itself will be deciding what to say and do.  It must still act within the limitations of its host, however (if you possess an animal, you cannot speak English!).
  2. A more detailed back-story to the dead person.  Of course, in a longer game everyone will have longer back-stories, but the dead person will have a greater share of the story’s overall focus.
  3. Points in the game where you can influence the relationships of the characters and the story itself.  This means more multiple endings!  I’m not going crazy with this, it isn’t going to be a Choose Your Own Adventure game–it will still play out mostly linear.  However, suffice it to say that you will have more control over how everything plays out.

I believe that about covers it.  The implications of these design calls will be explored as development proceeds.  Otherwise, development is going rather smoothly, and I hope to get some art up soon.  Maybe a quick demo video as well.

WAID2 Design Peek #1: Character AI

Things have been a bit crazy, and I unfortunately haven’t been in a position where I can work on my game full-time.  Without going into detail, my hope is that in a month or just over a month I’ll be settled down and can have a routine.  The problem has been as much a lack of free time as it has been a lack of consistent environment; it’s really hard for me to treat development seriously when I’m not in one place long enough to develop a routine.

But I’ve been chipping away at it as much as I can.  Though I don’t feel comfortable at this point showing the progress I’ve made, I can at least talk about it.  For each new post, I’ll give a compact description of something I’ve done or am doing, and more importantly, what I think it will add to the game.

For this update, it’s character AI.

Why Am I Dead occupies a weird space in design.  It plays out like a mystery-adventure, but uses the mechanics of RPGs for interaction.  Because of the former influence, the game will take place in a very confined area that the player becomes intimately familiar with.  Because of the latter influence, all objects and characters must be visible whenever you’re in their vicinity (unlike in adventure games such as Hotel Dusk, where characters often pop in and out only when the story demands it).

For a longer sequel to Why Am I Dead, this means you’ll be seeing the same rooms and the same people a lot.  You’ll get a feel for the whole space.  Partially in order to avoid the feeling of claustrophobia, and partially to create the impression that you’re in a livable environment, I decided that the characters would have to be very proactive regarding where they are at any given moment.

That is to say, having completely static characters that only move when you control them won’t cut it for a larger cast and a longer game.  The characters will all have to move on their own, and not in the way they do for RPGs (randomly and aimlessly); they will move around the ship in routines, and even when you aren’t present.  During different parts of the story, they’ll be in different areas depending on what’s going on.

On the plus side, this means:

  1. Characters won’t be stuck in weird poses for the whole game.  It would break immersion if several days pass in the story but you find that two characters were apparently staring at each other the whole time, because that was how they were when you left them. 
  2. The setting is more convincing.  Towards the beginning of one story day, maybe people are getting breakfast in the diner.  Towards the end, most are probably back in their rooms.  Maybe someone is taking in the night sky outside.  You don’t just see spaces, you see them being used.
  3. More opportunities for character insight.  Mannerisms can be added to characters’ movements; frenetic pacing when a character is stressed, for instance.  It might also say something if a characters is just inside their room all the time, or if they’re always walking around everywhere.

And on the negative side:

  1. LOGISTICS.  Adding these features is relatively easy, and already works for the most part.  Getting them to work as intended will take time.  I imagine traffic jams in hallways and people dry-humping each other all over the place for a while.
  2. If I overdo it, finding a character that you want to possess could be frustrating.  This is a matter of making characters’ movements intuitive and scaled to how much you’ll probably need to control them at the point you’re in.  Given the relatively small environment though, this shouldn’t be a huge issue.
  3. If I underdo it, I could hit an uncanny valley of AI, a la The Truman Show.

Like I said, this is already mostly implemented, as it was one of the first things I started working on.  Getting it to work smoothly will be a challenge, but I think it will add a tremendous amount of personality to the game.

Announcing Why Am I Dead….2!

Well, so much for expanding the content of my blog and frequency of posts–it’s been nearly a month since my last update!

Oi.  I blame it on holidays.

For anyone sticking around, I figure it’s about time I put in concrete my next major project.  I’ve alluded to it pretty strongly before, and you’ve probably figured it out from the title, but just for clarity’s sake: Why Am I Dead 2!

I wouldn’t normally jump at the opportunity to do a sequel to something; I’ve got enough ideas for new content that I’m itching to make.  So when I say that I’m making a sequel, that comes with the implicit statement that I believe the original left room for either improvement or further exploration, or, in this case, both.  And, of course, that comes with the implicit statement that I’ll be aiming to make a sequel that substantially improves or expands the original, or, in this case, both.

So with Why Am I Dead 2, I’m raising the stakes.  The game will be considerably longer and have higher production value: better graphics, better writing, better audio.  A mostly new cast with lots of characters that I think you’ll love (and/or hate).  Instead of approaching it as a side-project, as I did with my last game, I’ll be approaching the development of this game as its own full-time job.

How I imagine myself about a month from now

As a result of this, the game will not be free.  This is mainly just to support the time I spend developing the game–the original Why Am I Dead, although I enjoyed making the ever-loving crap out of it, earned a laughably small amount of money.  Which is fine, of course.  And that doesn’t mean I’ll be charging a lot–I don’t have a particular price worked out yet, but you can be assured that it will be very very cheap by anyone’s standards.  I’ll definitely be releasing a long-ish free demo as well, so you can try the game out and get a good idea what it’s all about first.

(Note, this doesn’t mean I’m done releasing free flash games forever!  I just think that for this project, that model doesn’t really make sense.)

I know what you’re probably thinking now.  When on Earth is this coming out?  I want to give you all my money!!!  Okay, I may have embellished your thoughts a little bit, sue me.  Still, the basic time-line that I have for development is about 2 months of full-time core development, and another 2 months of full-time buffer, which means taking into account things not going as planned (because they never ever do), beta-testing, and polishing.  So that puts me at 4 months of full-time work.

But regardless of the exact timeline, when I release the game it will be polished and tested to death; I have no plans to repeat the stormy release of the original.

During this time, I’ll be hoping to market my game, which is something totally new to me.  I may even do little teasers and release info about the cast, story, and gameplay in episodes.  Who knows.

So, yeah.  This is a big step for me — going from releasing a free Flash game as a side project, to making a not-free game as my main thing.  But it’s really exciting, and it’s gonna be fun as hell.

Cue painfully blunt symbolism.

Fail Fast…And I Forget The Rest

Just a quick post about my Ludum Dare 25 experience.  The theme this round was “You are the villain”, which pleasantly surprised me, since I was almost positive people would vote in “End of the World”, given the timing.

I really started to fall in love with my interpretation of the theme.
I really started to fall in love with my interpretation of the theme.

I can say, at least, that I came up with a solid game idea and implemented it in the space of 48 hours.  Unfortunately, as with last time, I don’t think that I can say I created a fun game in the space of 48 hours.  In this case, I created a text-based game that was too open-ended and didn’t have a strong enough text-parser to accept nearly enough player input.  The result was a game that basically asked you to guess a small set of key-phrases to proceed, and threw back most everything else with a standard “…I don’t understand.”

You can play the game here, if you at least want to know what I’m talking about below.

This was partially the result of an over-ambitious subversion of typical text-adventure design, as well as a failure to get any play-testing in before the deadline.  The typical text-based game involves issuing commands to the player involving physical objects.  The commands that are acceptable nearly always have to do with those objects that the designer introduces.  For instance, if the text game puts you in a room with a door, the designer may reasonably conclude that the player will try to interact with the door, in which case there are a small set of commands that can be anticipated.

In my game, you do not issue commands; you simply make statements, and with very little context.  The breadth of different inputs that can (and did) come to the players’ minds obviously dwarfed what I could predict by my lonesome, and as a result, the game was unfortunately more frustrating than fun.

Some of the very few commands that my game actually DID react to.
Some of the very few commands that my game actually DID react to.

The one nice thing about all of this, though, and the reason behind this post’s title, is that I got to botch this idea in only 48 hours, when I could easily imagine myself taking weeks to botch it.  I would have spent time creating all sorts of different levels for the game and different endings to the levels, and way more graphics, but would have still completely overestimated my ability to create a text-parser flexible and broad enough to be fun to interact with.

If I continue working on this, I’ll be able to go at it from a totally different and way more productive perspective, and I think the result will be far better.

A Hopefully Intriguing Prototype

First off real quick, after work with a graphic designer I know, I have a new logo which you’ll see emblazoned at the top of this blog.  I’m quite happy with the result!  With this new logo in hand, I redesigned my home website once again.  The results, before and after:

The result is a brighter design with way more space, and a quite sexy logo if I do say so myself!  I also used a bit of JQuery in this version of the site, which was nice to dabble in.

The main thing I’d like to talk about in this post, though, is that I put up a game prototype on my website.  I’ve been working on it for about a month and a half alongside preparing Why Am I Dead for its release into the wild.

You can find it here!

Of course the big issue with it is that there’s no tutorial, so it may take some patience to actually understand what’s going on.  I wrote at length about the rules and how they work in that page, so I’ll not do the same thing here.  Instead, I’ll talk more about the technical side of things, and why this prototype took over a month to make.  Sure, it doesn’t have immediate visual appeal, but that’s not what prototypes are about.  And frankly, I did some stuff that I’m quite satisfied with.

1: Menus in menus in menus in menus

The game is turn-based, and, as with most turn-based games, it centers around picking from a range of different options which are on a menu.  Some actions may have further options related to those options, which require some other menu.  Think about typical RPGs.  You can attack, defend, cast a spell, and use an item.  But if you select Spell, what spell do you pick?  And then, who or what is the target of that spell?

In my case, the details get way, way more complicated.  For instance, the actions you can choose from are often restrained by temporary effects.  Get hit in the legs, and now you can’t pick Move or Dash.  Even more, you can select two actions per turn and sometimes these effects will go away in between those two actions, thus freeing up new actions mid-turn.  So, the result is that there will be menus in menus in menus, appearing and disappearing, switching around and changing all the time.

One of my main priorities was to make this as easy and intuitive to program as possible, so that when game mechanics inevitably get changed as the game is refined, actually implementing those changes is painless and straightforward.  To that end, I think I’ve succeeded; just about any change in the player menu, no matter how big or small, can be accomplished in several lines of code on the client-side.

Good thing none of this is confusing!

2: Customization!

After I got the basic game mechanics in, I decided to implement something I’d only been toying with beforehand; full equipment customization!  That is to say, every piece of equipment or weaponry would be represented on screen in battle, and move alongside your character when he attacks and defends, and so on.

The thing that made this a bit more ambitious for me is that I don’t use Flash Professional, or really any tools that might make this easier; I am working in FlashDevelop 100% of the time.  Still, it was pretty straight-forward for the most part, if more time-consuming.  One of the most vexing issues, to be honest, was making sure that the equipment had the correct rotation and positioning when I flipped the bitmap for the opponent.

And again, I’m pretty satisfied with the results.  The work behind making new equipment, as well as swapping between pieces of equipment, are trivial.  And though the prototype doesn’t have flashy animations, the poses behind each action are convincing enough to make this effect, at least to me, visually impressive.

Yes, it’s kinda choppy. Yes, vectors would rotate better. But bitmaps have more charm!

So that’s about it.  I’d love any feedback on my li’l prototype, since it’s still in an early and flexible stage.  I’ll actually be taking a break on this project in order to handle some real-life stuff and other things I’ve been juggling around, but I definitely like the direction this is going in, and fully plan to return to it in the future.  With a tutorial, an equipment screen and some kind of metagame, I think this could be a really deep and fun game.

My first game launch, as it were

I got off extremely lucky compared to many other North-easterners regarding Hurricane Sandy.  In my area there were power outages and the occasional tree falling on some poor sod’s car, but no floodings or fires or what have you.  I wasn’t even one of the people who lost power, I just lost internet for several days, and I’m pretty grateful of that.

And not long after my internet returned, my first game is now online!

YOU CAN PLAY IT HERE

As my first game’s launch, this is kinda how I feel right now:

yeah

The image is taken from this article written by Derek Yu, which mirrors my thoughts and feelings on finishing a game in a myriad of ways.  I mean, I had kinda already finished Why Am I Dead a long long time ago, but only sort of finished it.  This time, I finished finished it.  And it feels good.  Oh, here’s another image from the same article that seems appropriate:

feels good man

Anyway.  With all this excitement, it’s pretty much impossible for my standards of success not to be met.

“This game is too short!”  == My game left people wanting more.  Success!

“This game confused me.”  == My game got people thinking.  Success!

“This game was impossible to beat.”  == My game was ambitious.  Success!

“I absolutely hate this game and I want to injure you.”  ==  My game, uh…created an emotional response.  SUCCESS!

…On a more serious note, I’m looking forward to getting feedback and growing as a developer/designer from the responses I get.  And of course, other projects are in the works, one of which I’m very overdue on talking about!

My first release approaches, as does Hurricane Sandy

Good news!  My game “Why Am I Dead” looks like it’s going to hit the public internets this Friday, only four days away!  When that happens I’ll be sure to post a link.  I’m both nervous and excited; I’m eager for people to play my game, but to be honest I’m also nervous with how it will be received.  By this point, all of the things in the game that seemed neat and creative when I was planning it out, I’ve now had the time to completely familiarize myself with.  Essentially, I’ve lost all real perspective on the game because I’ve been so close to it from start to finish.  So we’ll just have to see what happens.

Bad news!  I may or may not actually have power for a while, so blog posts in the immediate future are questionable.

Yay

As it turns out I live in the direct path of this thing called Hurricane Sandy, which, if you live anywhere in North America, you’re probably very familiar with.  Fun stuff!

Website work, and a new project

For the past two weeks I’ve been doing a mix of website work and programming.  My site at peltastdesign.com was quite rough looking, so it was about time that I put more effort into it.  This involved more seriously learning HTML/CSS than just the previous dabbling, which turned out to be extremely straight-forward.  The result is a cleaner and snazzier, if still minimalist, layout.  If you check the site out and have some feedback on it, feel free to shoot me a message.

As is though, the website feels a bit bare under the “Projects” section.  That’s because I’ve spent my time working on only a few very time-consuming projects; Mandate was/is a hugely ambitious project, and I spent more time polishing Why Am I Dead than I did programming it.  And I can see the strategy game that I’d mentioned beforehand becoming just such a huge, time-consuming project, so I’m putting it on the back-burner.  I may still work on it here and there for fun, but it won’t be the focus of my attention.

Instead, I’d like to shift tracks and work on smaller projects which take less time, are inevitably less polished, but still demonstrate a game concept successfully.  Not only will this make it easier to keep momentum, but it will be far better practice for me; while there is something to be said for really polishing and smoothing out a game, it doesn’t teach me as much about the artful design of game mechanics.  When an artist is starting out learning the human anatomy, do they spend their time inking and coloring their studies, or do they just sketch it out and then move on?

So, since last Wednesday I’ve been working on a smaller idea.  It’s a bit of a blend between lots of different things, but could be summed up as a turn-based action game, I guess?

Terrible placeholder graphics, ho!

As you can see, it centers around two people duking (or stabbing) it out by selecting different actions during their turn.  It draws influences from games that in my opinion make turn-based combat work, such as the Persona series, a Flash game called Sands of the Coliseum, and Pokemon.  My brainstorming also involved some very non-intuitive sources, such as Dark Souls, the fighting game genre in general, and Poker.  I find that this format (which is usually seen in RPGs) is satisfying because it’s good at abstracting action and making it purely an exercise of decision-making; but usually it ends up hiding behind number-crunching rather than making actually interesting decisions.  So my goal was to make a game somewhat reminiscent of back/forth RPGs, but with underlying mechanics more akin to fighting games, which can stand on their own.

The core mechanic is something of a rock-paper-scissors; attacking beats dashing, parrying beats attacking, and dashing beats parrying.  Unlike a lot of turn-based games, the results happen simultaneously, so there’s no situations where the first person to move wins.  You also submit two actions per ‘turn’, so you have to guess what your opponent’s two actions will be.  For instance if I feel pretty confident that my opponent is going to attack me the very next turn, I would submit a “Parry” action to counter his attack, and then submit an “Attack” action to take advantage of my parry.  But there’s also the possibility that he waits for his first action and attacks on the second!

You’ll notice the graphics of a body at the top left of my prototype screen; there are five different parts of the body that are separate targets: the head, torso, left arm, right arm, and legs.  When you take damage, rather than simply losing “health”, one of these parts of your body is damaged.  And if one part of your body gets damaged too much, you lose.  Likewise with the opponent.  And depending on which part of your body is damaged, certain actions will be restricted.  For instance, take too much damage to the legs and you can’t move.

You also have to keep track of stamina, which automatically regenerates and is used for physically taxing actions.  You can put down as much stamina as you want on an attack, for instance, and in the case that you and the opponent attack similar targets, the attack with the higher stamina investment wins out.

There are more details about the exact rules of the game, but you get the idea.  I expect some of the mechanics to change as I finish the prototype and see which ideas work and which don’t.

All’s well that ends well

Today, “Why Am I Dead”  is locked in at 100% complete.  It isn’t currently online because I’m trying to get a sponsor for the game, and releasing it to the public would totally defeat the point of that; however, it means that I can totally shift my energy onto other projects and endeavors.  I can also say that I’ve completed, from start to finish my first real game!  Mandate was a far more involved project, but at the end I can’t really say with confidence that it’s a game; at least, not in its current state.  So this is an important step for me.

I’ve spent the past month or so polishing the game, fixing things that bugged me or (more often) problems that I heard from player feedback.  Even so, I feel that there’s tremendous room for improvement; in the writing, in the gameplay, in the music, and so on.  And while part of me is tempted to spend more time fixing all the flaws I can see, the lager part of me is just tired of working on the game, to be honest.  Really, some of the issues are simply the result of the fact that on the outset, I wasn’t planning on making a game of this quality; I was doing a quick experimental game, and so I didn’t use a great amount of foresight with the game mechanics and writing.  So, if I want to satisfy my impulse to fix these things, I’d rather simply create a more well thought out sequel than endlessly postpone this game.

So, while I can’t put up a link for the game, here’s a trailer that I made mainly for fun!

Some other stuff I’ve been doing.  I took part in the 24th Ludum Dare competition!  It was my first one, and given that fact I feel that I held up pretty well overall.  If you aren’t familiar with it, well first of all, why not, and second of all, it’s a competition to create a game based on a given theme in 48 hours.

For my submission I made the weird and stubborn decision to just go on a clean slate.  No frameworks.  No old code from WAID.  While it definitely hindered my progress overall, I have to say that I actually enjoyed this decision.  Surely, I ‘wasted’ a lot of time programming simple things like collision detection, but I got to return to doing these basic tasks with a lot more experience in AS3 than when I first did them, and so in some cases did them more cleanly or efficiently.  There’s also something oddly satisfying about knowing that I physically typed out every little thing in the game in only two days.

The end product is admittedly ugly, obtuse, and unforgiving.  I literally did not open a single other program outside of FlashDevelop; it’s all just code.  No bitmaps, no tilemap editor, no sounds, just code.  And no instructions either.

You can play the game HERE, but if you actually want to try and enjoy the experience I would highly recommend looking at my LD page first, which attempts to make what’s going on in the game a bit more clear.

And lastly, about a month ago or so I had mentioned starting up a strategy game.  While a lot of my spare time has gone to finishing up WAID, I’ve chipped in here and there and have progressed a  little ways.

The first main thing that I want to do is create a map-editor for a polygon-based map.  This is something that I’ve seen people suggest for Risk-style web games constantly, but rarely see implemented.  And as a feature it holds a ton of promise.  So, I decided that I’d make it the first thing that I do.

A boon which I hadn’t actually anticipated for the project was this: I have escaped the TYRANNY OF TILES!

I’m done with tiles for now

Now that I think about it, the last three games I’ve worked on have been dominated by tiles.  In WAID’s case it isn’t quite as visually obvious since I go out of my way to break the grid and use some non-tile collision detection, but it’s still dominated by tiles.  With the move to this strategy game, I get to program a whole different set of stuff and challenges.  For instance, last week I spent some time coding a triangulation algorithm so that you could draw any shape you wanted and then have a 100% accurate hit-test for clicking and dragging that shape around.  The result:

Not tiles!

I’m pretty happy with how the editor is coming along.  The fundamental concept of drawing provinces, moving them around, and creating links between them is done.  My next step is to add other functionality like deleting shapes, selecting multiple ones at once by clicking and dragging, and so on.  Then after I’ve gotten the editor to a more satisfactory place, I’ll be working on writing the map into a file stored locally on the player’s computer, and being able to read that map back into the game.