Sunday, April 2, 2017

April Update: Gewgawlicious v1.1, Monsterpunk Devlog #14, Music

In a Nutshell

If I've gone dark from the dev blog for a few months, it's because (surprise) I've been busy. Part of that busyness can be attributed to game development, primarily to two large projects. The first of these has been my application to Artscape, Baltimore's big ol' arts festival. I've been collaborating with another local game developer (Let-Off Studios!) under the moniker "Baltimore Game Collective" to exhibit a collection of eight short games during the festival, and while our acceptance status is pending, I am feeling confident this year! I've made a short demo reel for our showcase that will function as a promotional video if our acceptance is confirmed. 

The games I am contributing to the collection are Gewgawlicious, The Morphine Western Revenge, Bloodjak, and Digital Toilet World. While I am feeling good about Revenge in it's current state, the remaining work demands some additional polish before being publicly exhibited. 

Changes to Digital Toilet World will be minimal (in fact, I'll be reversing some unnecessary changes I made in the last update), while changes to Bloodjak will be a bit more extensive to make it more accessible to casual members of a festival audience. As for Gewgawlicious...

Gewgawlicious v1.1 is out! Now with audible music!

As is the case with most jam games, Gewgawlicious was rushed, and benefited from some minor revisions. Namely, there were three issues: 1) The music was too soft. 2) The bomb beeping was too loud and 3) People were confused by the user interface and basic rules of the sandbox. The first two issues required straightforward solutions, the third required a bit more care. I made a number of subtle changes to the game's user interface that will hopefully provide sufficient guidance to the player and keep them playing up through the game's punchline.

As always, you can play Gewgawlicious at itch.io and Game Jolt.

As for the other project that's been occupying my time...

Monsterpunk Devlog Update #14! Now with character portraits!

After spending nearly a year on The Morphine Western Revenge, I've been able to return my focus to Monsterpunk. For those of you who are newcomers, it's a survival action-RPG inspired in equal parts by virtual pets, punk games, and queer games. I've been working on it on and off since... 2014? Gosh.

I started off by finishing off drawing portrait art for all of the game's characters - a task I had left unfinished about a year ago - and since then have mostly been making fundamental changes to the game's mechanics. I'm always growing as a designer, and that has been especially true over the course of Revenge's development. One of the most frustrating aspects of working on a large, long-term project is that there's a mismatch between the initial quality of the work and your current ability, and taking a lengthy hiatus from a project only makes that difference more obvious. So, I'm making changes to some of the game's most fundamental aspects. I've slowed character movement speed in order to better control the overall pacing of the game, while lowering adversary health in order to make combat faster and snappier, among countless other changes.

For those of you who just got here, this is also a game about flirting and pooping.

At this point, I'm aiming to release the game by this summer. While there is much about it that I find endearing, I've been working on it long enough that it is, admittedly, beginning to feel like a burden! It is already playable from start to finish, and has always been even after the first week of development. The question has never been whether it can be released at a given moment, but whether it should. I don't know if the game will be the best it can be by the summer, but as time goes on, that question becomes less important.

I want this game to be great, but I'm also looking forward to being able to chill out, make jam games, and hack Pokémon roms again.

Here's Some Music, Too.

Finally I threw some tracks up on the Soundcloud - the music from Gewgawlicious and Darcy's Yurt Adventure, as well as two unused tracks - one from a collaboration that fell through, and another that was written for Revenge, but ultimately didn't fit the mood of the game, although I think it is rather good. Enjoy!

Friday, January 6, 2017

Gewgawlicious and the Posterity Archive

I released a new jam game a few days ago! It's called "Gewgawlicious." If you follow me on social media, you already know this. I'm out of town at the moment, and haven't been able to actually blog about it until now.

It's a short comedic sandbox game. An engineer leaves on a milk run and entrusts you with his gewgaw machine. You shouldn't touch it, but you touch it.

You can play it on *gasp* THREE websites:
Glorious Trainwrecks
Gamejolt
itch.io

I created it in 12 days for the Sekret Santa 2016 Game Jam over at Glorious Trainwrecks. All participants submitted a wishlist of things they wanted in a game. We drew lots, and then had to make a game for a person based on their wishlist. Y'know, Secret Santa style.

My prompt for the project was that I had to make a playground full of gewgaws that would interact with eachother. As someone who generally dislikes sandbox games, I definitely appreciated being dragged out of my comfort zone. Especially after making a game that was long, dark, hard, and violent, it was really nice to make something short, lighthearted and accessible.

It is also the first project I've made to feature live recorded music and fully voiced sound effects and dialogue by yours truly. It was a ton of fun to do!


In other news, I've reorganized all of my unfinished and old games under a single page: The Posterity Archive! Most of it is stuff that's already been available on the site, but I've decided to make Blasterman and Apocalypse downloadable again. I'll be sure to dig through my hard drive and see if I can find anything else of value. If you want to play some awful but entertaining trash - it's there, waiting for you.

Monday, December 26, 2016

The Morphine Western Revenge v1.1 (and more)

Week One Patch Hype!

Thank you to everyone who's played The Morphine Western Revenge so far! It has been a pleasure to hear what you have to say about it and watch you play it. Getting feedback of any sort not only helps me improve the game, but it's also one of the most validating things I can experience as a designer. Please continue to let me know what you think!

I've made some small changes and fixed some bugs in response to player feedback. Here's the complete patch notes:

Changes:
-In "accessible mode," ammo acquired from dropped guns is doubled.
-In "accessible mode," enemy accuracy has been reduced.
-The game now indicates when dialogue and intro credits can be skipped.
Bug fixes:
-In level 1, if the player moves using the arrow keys, the tutorial prompt for movement will now disappear.
-Enemies now properly collide with the player character, preventing scenarios where characters clip through each other.
-When you pick up a weapon for the first time, it will always be fully loaded, regardless of the level from which you started the game.
-Enemies at the very bottom of the screen are now affected by bullets!

You can play the new version at Gamejolt and itch.io.

Also, I've been pretty awful at self-promotion so far. While I will put in greater effort in the coming weeks to get the game out there, any help you can provide by sharing, reblogging, or retweeting the game are deeply appreciated. And keep making those gameplay videos! They make my day.

Speaking of gameplay videos...

Footage!

As I've written, one of my greater fears about this game is that it would produce homogeneous experiences. It has been an absolute pleasure to have been proven wrong. As I've watched live playtest sessions, as well as the gameplay vids some of you are throwing online, I've been surprised by how differently each scenario plays out from how I've envisioned it.

Here's some footage of the game's first two levels from "Just Gameplay, No Commentary," in which the player attempts to progress without using morphine, and largely without using guns. This is a far cry from how the game is meant to be played, but it is a mostly successful (and entertaining!) run. (Let it be noted that the bug at the end in which enemies at the bottom of the screen are undamaged by bullets has just recently been fixed.)



And here's some footage from my very good friend Turtles of the second level boss encounter, which goes horribly awry on many levels. (Again, let it be noted that the bug that the player exploits to kill the first big guy has just recently been fixed, very special thanks to Turtles for documenting it for me!)



Other News!

A small joke game I made for my sister for Christmas last year, "Darcy's Yurt Adventure," is now publicly available on the Games page. I had kept it unlisted due to the highly personal and unpolished nature of the game, but it is a game that I am increasingly fond of, and we really don't have enough autobiographical games out there, do we? Play it and be befuddled by inside family jokes at your own risk.

Speaking of unpolished games, I am working on more formally organizing a separate page for my complete collection of old, shitty, and incomplete works, including games that date back from my middle school days. I do want to document and preserve these games for posterity's sake, but I definitely don't want them awkwardly hanging out at the bottom of the page. Look out for that soon.

Finally, I am making a short game for a Secret Santa jam. The game is about stupid things that walk into each other, and it will be out during the first week of January. Here's some footage from the first day of development:




Saturday, December 17, 2016

The Morphine Western Revenge v1.0


The Morphine Western Revenge is done. You can play it on Gamejolt or itch.io. Windows users should download the desktop build of the game for the best experience. For everyone else, you can play the game in your web browser. You will need a mouse to play it.

The game's soundtrack is available here, and the game's source material, The Hyperbolic Needle by Brian Cristi, can be read for free here.

Please report bugs and provide additional feedback! I want to make sure my games are enjoyable to as many people as possible, and to do that, I need your help! As it stands, I may need to make the game's easier difficulty settings a bit more forgiving - how I do that depends on audience response.

Thank you for playing! I hope you enjoy it. Tell your friends about it! Tell your parents about it! Tell your electors about it!

Now that all of those formalities are out of the way, here's how I feel about all of this.


Post-Mortem

Gosh, Feelings

First of all, I am damn proud of this project. It's the most substantial game I've released, ever. Typical playthroughs will last anywhere between thirty minutes and two hours. The game represents my best work in terms of mechanics, design, engineering, style, and musical composition. My adaption of the original story is probably the game's weakest point, but the gunplay is more than good enough to carry the experience.

However, if you've talked to me about games, or have been reading the blog for a while, then you know I have a complicated relationship with shooters. Shooter games are a foundational part of who I am as a player and maker of games. I grew up on the internet driving Scorpion tanks across the icy fields of Sidewinder and blasting away with my scattergun in the Gravel Pit. As a teenager, video games were shooter games. I played the occasional RPG, and as I got older, I started becoming interested in experimental and narratively-driven work, but I've been playing, thinking about, and designing shooters for longer than I've done anything else in games. It's my primary design inclination. More than half of the games I've finished over the past seven years are shooter games.

Making art-games, not-games, alt-games, walking-simulators, narratively-driven games, or whatever you want to call them is not hard to do, but making good ones in a short period of time is.When I originally volunteered to make The Morphine Western Revenge, I was expected to complete the game in a month. So, I chose to work in the genre I was most comfortable with - the shooter. Had I known it would have taken me 10 months to complete the project, I probably would not have made an action game.

I fundamentally believe that video games are capable of exploring the vast breadth of human experience beyond strife and competition, and that the traditional core genres - shooter, strategy, RPG - are not going to be the future of the medium. While Revenge is very much a traditional action games, perhaps even to a fault, it does, at least, tell the story of a marginalized person and how she copes with loss and oppression. The game is also stylish and weird. "Well, uh, that was very indie," one of my playtesters told me when he had finished. The game walks a fine line between being a conventional shooter, and being this weird piece of wonderfully trashy software, but it still leans closer to convention than I would like.

I'm not sure of what interest these thoughts are to the typical reader, but this game has more or less consumed me for most of the past year. It's caused me to constantly reflect on who I want to be as a creative person, what sort of work I want to create. In the current political climate, these questions become of greater relevance.

Overall, my pride about this project overcomes my ambivalence. No matter how complicated my feelings about the project are, this is undoubtedly my greatest achievement as a game designer.

Technical Lessons

While I've ported old games of mine into HTML5, this was the first major project where I've developed desktop and web versions of a game simultaneously (I previously did the same with a short game joke game I made for my sister, but that project was not technically demanding). The Windows version of the game is superior than the web version for countless reasons, so when it can time to test the game, I almost exclusively tested the desktop version. I did this because I was lazy.

Game Maker: Studio, the program I used to develop Revenge, bugs the hell out whenever you try to export a game into HTML5. As in, sometimes I would compile the game and it would look like this:

This is supposed to be a cave. Instead it is A MONSTER.

Squashing the unique bugs that expressed themselves in the game's web build was enough of a challenge. But the web version also experienced performance issues that I didn't discover until late in development. A level that ran smoothly on the desktop (with, say, 70 bad guys in it) just had too much stuff in it to run smoothly online (the level would now slow down if you had more than 40 bad guys in it).

Usually, when I encounter performance issues in games, my inclination is simply to put less stuff in it, rather than engineer things more intelligently. But since I already designed the game around having lots of stuff in it, I needed to actually confront the issue.

I'm not going to bore you with the details, but by the end of development, I managed to optimize the game in ways I thought were impossible. One raycasting script that drew a straight line between the player and the closest object in front of them (which can sometimes be expensive to do every frame with any precision!) became 32 times more efficient. The number of enemies a level could support at a time doubled. Dust and rain effects automatically downgraded in quality as framerate dropped. I was able to deliver my vision on a technical level with little sacrifice, and it feels good.


Design Lessons (why the game works)

What surprised me most as I watched folks playtest the game was the sheer number of valid and creative solutions they found to solve the problems I presented them with. In the canyon level, the player comes across a group of a dozen riflemen. "I can't outgun them," the player character says. "I'll have to be clever."

Most of my playtesters solved the problem as intended. Except for one. "Nah, I'm going to outgun them."

He died a half dozen times, and it took him twenty minutes, but god damn, did he keep his word.

I was worried that the game, overall, was going to be a homogeneous experience. Limited to human opponents, 19th century weaponry, and natural environments, creating a diverse variety of game elements was a challenge. All of the baddies in the game use variations of the exact same AI, all of the weapons are slow firing, and I couldn't use moving platforms, locked doors, or other interactive elements in the level design. In retrospect, these limitations allowed me to hyper-focus on creating very specific and deliberate differences between each enemy and weapon, not only to create chemistry among all of them, but also varied and emergent gameplay.

For example, there are essentially 4 classes of enemies: revolver guys, shotgun guys, rifle guys, and big guys. Revolver guys are the game's fodder - not too dangerous at close range, less dangerous at long range, and easy to kill. Shogun guys are highly dangerous at close range, but nearly harmless at long range. Rifle guys are fairly dangerous at all ranges. Shotgun, rifle guys, and revolver guys are all similarly fragile. Big guys, on the other hand, can absorb inhuman amounts of damage from the player.

With this palette of enemies to choose from, you can create a surprising variety of enemy encounters. Shotgun guys can be safely fought at a distance in the open without cover... unless there's a rifle guy sniping at you from the corner. You can pick off a group of enemies one at a time with your rifle... unless there's a big guy leading the charge, protecting the men behind him with his bulging muscles. So on and so forth.

Furthermore, the overall design of the game itself lends itself to emergent gameplay. If you're stealthy, you can avoid the gaze of enemies and take them out from behind, undetected. If you fail, you can then pop in and out of cover, taking them out one at a time. If you fail again, you can run and hide, heal yourself, and run back into the fray. Or, you can run and hide, have your enemies lose sight of you, and then try to use stealth again.

Essentially, no matter what choices the player makes, no matter what mistakes they make, they always have an alternate method of solving a problem available to them. Not only that, but the player is unable to immediately repeat their previous strategy, forcing them to adopt varied techniques. Here's a visualization of how the game works:

At the beginning of an encounter with bad guys, the player can choose to 1) sneak or stealthily dispatch them, 2) use brute force, or 3) run away from them. If any of these strategies fail, they cycle to the next strategy. Repeat until the encounter is won or avoided. This is why the game works. This, I suspect, is what makes it fun.
From an aesthetic design perspective, I wanted to make the game's world feel as tangible as possible, especially since the game's levels are otherwise as static and dead as they are. To do this, I tried to animate and add sound to every physical interaction in the game I could think of. No matter what the player is doing, the world is responding. Dust clouds form as the players boots rapidly thud against the ground. Shotgun shells fly out of your weapon and litter the ground. So on and so forth. I tried to make it so that something interesting is always happening on screen and in the player's ears, and to a large extent, I think I did well.

If I have any regrets about the design of the game, it's that it expects the player to learn too much too quickly. While I was very conscious of the game's tutorialization (40% of the game is tutorial levels, whether the player is aware of it or not), I guide the player through the tutorial a bit too quickly. I explain a mechanic once, have them execute it, and then move on to the next one. I probably could have spent a little more time having players learn each individual rule of the game.

That said, I think I did some good damn work this year. As excited as I've been to release this piece of software for it's own sake, I'm even more excited to move on and do something radically different - games that are more peaceful, more experimental, and that tell stories I can be proud of. And, on a similar note, Monsterpunk development will resume soon.

Thanks for playing, thanks for reading, happy holidays.
 

Thursday, November 17, 2016

Devlog Update: The Morphine Western Revenge (#5)

I've been adding quite a bit of polish to the game in the past month. As shown here, I've recently darkened the cave quite a bit, and, in response to playtester feedback, made weapons on the ground shine at regular intervals.

In a Nutshell

Recently, I made the mistake of re-reading my old devlogs, both for this project and others. I've noticed a recurring trend in my writing about my work - the very persistent failure to accurately forecast release dates for my projects. From here on out, I aspire to take a "it's-done-when-it's-done" approach to discussing release dates, no matter how self-assured I am of my progress.

When I last wrote on October 10th, I expected that the game would be completed within a month. I then self-imposed a deadline of November 3rd to complete playtesting for the game, and November 10th to release it. November 10th, as you may be aware, was seven days ago. Seven days and counting, depending on when you read this.

My attempt at setting a reasonable release date was not entirely in vain - playtesting was, in fact, completed by the 5th, and at that point, I imposed a moratorium on adding new features to the game. Any changes that haven't already been proposed and listed as a to-do item aren't going to happen.

The closest thing I've had to an official design document - The Morphine Western Revenge To-Do List, as it currently stands.
Were it not for a deadly cocktail of current national events and personal developments, the game would have been completed on time. I only need three or four free evenings to add the finishing touches. The completion of the game depends on when I am able to come across those evenings.

Since this definitely, absolutely, is going to be the game's final devlog, I wanted to take a little time to have some fun and showcase all of the weird bugs I've produced over the past nine months. It is common for players to experience the unexpected when playing games. Rarely do developers get to be genuinely surprised by their own work, but bugs are one of the ways in which it happens.

Who doesn't like a good blooper reel? I don't. But, in any case,

Regarding Bugs

Bug #1: Slow Rain

Problem: Rain isn't supposed to do that. It isn't supposed to do any of those things. Christ.

Explanation: I don't actually remember specifically what happened here. I think one of the variables* that controlled raindrop movement kept resetting itself each frame? In order to render each raindrop as a "blur," the game has to remember it's previous position in space. That way, each raindrop can be drawn as a line between it's current and previous coordinates. Obviously, in this case, the game is forgetting the previous coordinates of the raindrops. So, instead, it is drawing the lines between the current and original coordinates.

Something awful was also going on with rain acceleration - namely, it wasn't happening? Hell if I remember. You can see the rain working correctly in the following GIFs for reference.

*For you non-coders, you can think of a variable as a container that stores a number or text. For example, the height of a raindrop is numerically stored in a variable I named "height."


Bug #2: Gltichfence

Problem: Fences aren't supposed to do that either. God damn it.

Explanation: This is a fairly common and easily solvable bug for Game Maker projects. Most of the game's graphics are stored as sprites, and each sprite contains a series of individual images. To ease development, I usually like to store all images pertaining to a particular object (like the fence) in a single sprite. However, if you forget to program the object to behave otherwise, it will, by default, cycle through all of the images in its sprite as an animation. So, each piece of fence cycles through all possible fence configurations.


Bug #3: Pseudo-pausing

Problem: The top GIF is actually bug-free, as I will explain in a moment. In the bottom GIF, however, the ejected shotgun shells should not be animated when time freezes, nor should the enemies be moving, nor should they be rendering themselves underneath the rocks.

Explanation: Pausing is one of the few features of a game that affects nearly everything else in it. Everything that moves, is time dependent, or, well, does anything needs its own pause script. It is good practice to start implementing pause-capability from day one. Otherwise, you have to dig through and edit just about every piece of code in your game.

I waited until the end of development to add a pause function.

The only benefit of waiting to add a pause function that, as you work on it, you get to dick around with an incomplete time-control feature. At the very end of adding it, I was left with a player character who was able to freeze the entire world around her at will, which is damn pleasant!

At the time of capturing the first GIF, everything was working as it should. However, things were not operating correctly in the second - at that point, the player character should've been the only thing moving during the pausing. Most motion and graphics changes are handled in-code on a frame-by-frame basis. All you normally have to do is turn off that code when the game is paused, and it should freeze all action for its respective object.

However, sprite animations (as described under Bug #2) and AI movement are not updated on a frame-by-frame basis. Essentially, once an enemy starts moving along a set path, he continues moving along that path until explicitly told not to. A similar thing happens when an animation is triggered (in this case, the spinning of the shotgun shells). However, even though the enemy movement is still active, the code that correctly renders enemies in front of rocks is not. Hence, the enemies are rendered underneath the rock piles.


Bug #4: Shadow Depth

Problem: Everything around the edges of the cave - the wall "tops," rocks, and stalagmites - should be cast in shadow. Instead, only the floor and walls of the cave are shaded with darkness.

Explanation: In order to add to the cave's ambience, I attempted to apply a simple lighting effect to the level. Essentially, an image of a semi-transparent gradient - transitioning from total transparency to opaque darkness - is supposed to be applied right on top of everything else. The end result is that the edges of the screen appear to fade into darkness. This isn't physically realistic, but it does get the idea across: this is a dark cave. Cave is dark.

All graphics in the game are sorted by depth. The floor and walls of the cave are on the lowest level (underneath everything else), the healthbar and crosshair are on the highest level (above everything else), and everything else is sorted in-between.

I forgot to put the shadow gradient above the aforementioned "everything else." This was easily fixed. You can see the correct application of the lighting effect in the first GIF of this post.

It is probably one of the prettiest bugs I've ever produced. I miss it.

Bug #5: Lazy Enemies

Problem: Surprise - it isn't the player invulnerability. See those two dudes in the top left who 1) are standing on top of eachother, and 2) aren't shooting at the player because someone else is blocking their line of sight? When either of those things happen, they're supposed to move around and find a better place from which they can take shots at the player. That's not happening. Artificial intelligence? More like genuine stupidity.

Explanation: The behavior of a mass of enemies to form a semi-circle around the player (so that everyone could shoot her without hurting their comrades) was one of the first things I had successfully implemented in the game. Naturally, I expected this behavior to continue to work as intended. I didn't notice that it had, at some point, stopped working until it became obvious during playtesting.

Normally, enemies will pursue the player character until 1) they have a clear line of sight to her, and, this is important, 2) she is at (not within!) optimal firing distance. Once these criteria are met, the code that causes them to re-arrange themselves in a semi-circle then triggers. At some point, I thought it was a good idea to only have the code trigger when the bad guys were well within optimal firing range of their target. Since most enemies will stop moving towards the player once they reach that firing distance, the probability of the code triggering was near zero. Even when the code did trigger, it deactivated again the instant they move outside of firing range.

I hope you found these glitches visually interesting, if nothing else! A nearly bug-free version of the game will be released soon.


Monday, October 10, 2016

Devlog Update: The Morphine Western Revenge (#4)

Gameplay footage of a rain skirmish.


In a Nutshell

The Morphine Western Revenge is not done, but as of this week, it is fully playable from start to finish. The past few months, I've finished the game's final two levels, implemented its opening cutscene, and made some final much-needed adjustments to the enemy AI. I also recorded and edited some natural sound effects (actual rain and thunder), which is something I haven't actually done before and had a blast doing. Just so ya know, the wind you hear in the game is fake - that's just me blowing into the microphone.

All that remains is playtesting and some UI work. While I am always hesitant to make predictions regarding release dates, it is hard for me to imagine the game being released any later than a month from now.

As with most pieces of media, the whole work is greater than the sum of its parts. Now that I have a clear sense of what the entire work actually is - a sense of how the story is paced, how the action plays out from start to finish - I'm pretty damn excited about it. Any pessimism I've had about the game in August has been dissolved. This is by far the strongest game I've ever made, as dark and violent as it is.

This will most likely be my final devlog for this project before release, so I'd just like to get a few more thoughts down regarding its development. Specifically, I'd like to talk about the project's central premise and greatest challenge - the adaption of a story from text to game.

The game opens with a campfire conversation.

Regarding Adapting a Novella into Game Format

Revenge, as I've mentioned, is based on Brian Cristi's free online novella The Hyperbolic Needle. Transferring a story with any faithfulness from literature to game is a pretty massive leap. Literature traditionally favors narration and internal monologue; games are traditionally a good medium for demonstrating the causal workings of systems.

While notgames, artgames, and walking simulators aspire to tell more literary stories, such narrative-focused games usually require stronger art direction and overall more production to be compelling (interactive literature being the exception). By contrast, creating compelling action games is mostly dependent upon having solid mechanics. While I can't speak for all game developers, I think that I can make a compelling action game much more quickly and easily than I can a purely story-driven game.

So, with Brian's blessing, the game became a shooter, despite the novella depicting only one violent encounter. The story itself, in both the novella and the game, is the story of a loner traveling through a valley (movement) to enact revenge (shooting). Moving and shooting are the core actions of a shooter game; it was undoubtedly the most fitting traditional game genre for the adaptation.

Once it became apparent that a truly faithful adaption would be impossible, I gave myself permission to take whatever creative liberties with the source material I wanted. Telling the story as I wanted to tell it, under the technical constraints of game development, while still hitting the same narrative, thematic, and emotional beats as the original, was a challenge. It's easy to complain about how the book/game/movie version of a movie/game/book isn't true to the source material. I now have a healthier respect for the unfaithfulness of these adaptions, and am able to forgive most of them. Except for Scott Pilgrim vs the World. The last two-thirds of that movie still disappoint me.

Regarding Horses

Game development, of course, contains many technical hurdles. One of the greatest advantages of literature is that there are virtually no technical restraints on what it can describe - it is as easy to write about a woman standing still as it is to write about a horse in motion. This is not the case in games. Animating horses is hard. Have you seen the way they move? It's fucking unnatural.

Probably one of the biggest changes between The Hyperbolic Needle and The Morphine Western Revenge is the removal of horses. The novella had a lot of horses in it. The game has no horses.

I'm sorry.

Regarding Storytelling

Needle is mostly lacking in dialogue or dictated internal monologue - it's almost entirely told through poetic narration. Because most of the action and scenery in Revenge is presented visually on-screen, most of that narration becomes unnecessary.

If you haven't read it, this is how Needle is written.


The specific storytelling method of Needle works because of it's consistency and poetic style. It is impossible to emulate its style through a visual game, but even attempting to approximate that style would be inadequate - simply narrating the events on screen would be boring.

The best solution was to have my protagonist monologue throughout the game to fill in the remaining plot holes and flesh out her character. This is something that Needle's protagonist (originally named Maya, unnamed in my version) almost doesn't do. We rarely hear her speech or thoughts. Probably my favorite aspect of making the adaptation was to take a silent character from one story, analyze her behavior and emotions, and try to put convey those aspects of her personality through her speech.

However, because the game is less poetic that its source material, I decided to discard much of the original story's spiritual and supernatural elements. This is partially due to my own secular worldview, but also because games as a whole are more usually more literal than the text. To make my adaption more grounded in reality was natural, given the medium I was working with.

That being said, some of the strangeness of the original story remains. Why is the man responsible for killing the protagonists' family and abducting her sister still living in the valley where he did it? Why do his men attack the protagonist on sight? Why is my level design so unnatural? The vagueness, openness, and non-literal elements of the original story gave me some permission for my game to break some of the rules of reality, which was often convenient.

But also, because games take so damn long to make, I had to trim the story to its essential elements. Namely: "Native American woman loses sister to soldiers, takes morphine, returns home, kills a guy, finds sister, [SPOILERS REDACTED]." Any story that fails to hit on these essential elements fails to be an adaption of The Hyperbolic Needle, so I made sure to focus on them. But a lot of the story - namely, the horses - has been omitted or entirely re-imagined.

That being said, I had a lot of fun incorporating as many non-essential story elements from the novella into the game as possible. Both versions of the story begin in a cave and end in a thunderstorm. The protagonist attacks people with her syringe. There are train tracks. There are exactly twelve enemies in the game's final level - a reference to the twelve angry men who attack Maya at the end of Needle. So on and so forth.

Overall, I managed to create a true adaption of a pre-existing story while still being able to tell it on my own terms. This game very much feels like my own work without losing sight of its inspiration, and in that regard, this has been a successful and rewarding undertaking.

Regarding Research

Here's where I admit that I am a bad man.

The extent of my research in making this game amounts to
1) Looking up pictures of the game's setting, Imperial Valley, California,
2) Researching the history of morphine and syringe usage, and
3) Quickly skimming through the history of Native American-US relations in southern California in the mid 19th century.

From my outsider perspective, Brian did research sufficient for his version of the story. But, because I am telling a story with different content and a more grounded style than the original, I had a responsibility to do further research.

I left some essential questions unanswered, such as: What tribe would the protagonist have belonged to? What would her name actually have been? What would she have believed in? Was the Imperial Valley known as such at the time? So on and so forth.

Researching the above questions would have added some authenticity, depth, and value to the game. Mind you, I did the next best thing and wrote around my ignorance - rather than make assumptions about the protagonist's culture, I deliberately left those elements up to interpretation. Part of the reason I felt uninspired to commit more research is because, admittedly, the game's story worked very well without it. The central plot point is that soldiers eradicated the protagonist's culture. Therefore, it's thematically justifiable that any references to that culture are absent.

I can make the above excuse, and I can make excuses about not having time to do proper research in such a short development cycle, but the real reason that I didn't do further research? Mostly, I was lazy. And at this point, the game is just about finished - I'm mostly stuck with it as it is.

This was my first attempt at making any short of historical game - everything else I've made so far has been cemented in fantasy, cyberpunk, and science fiction. So, it's only naturally that I made mistakes in my first attempt. However, I am tackling some sensitive subject matter in the game (actual genocide), and while I treated that subject matter with enough respect that I feel comfortable releasing the game, I feel as though I could have treated it with more respect.

I just hope that there isn't something super problematic about the game's political themes or portrayal of history that I'm overlooking due to my ignorance. I don't want to be another Ken Levine.

I don't think I am. But Ken Levine doesn't know he's Ken Levine either.


All that being said, I'm still mighty pleased about the story I'm telling. It's more than good enough as is, and I can't wait to share it with you. Thank you all for your support this far!

Also, shout out to Isaiah, if you're reading this. Keep programming cool stuff! Sorry for the naughty words.

Friday, August 19, 2016

Devlog Update: The Morphine Western Revenge (#3)

 

This is probably some of the best footage I've captured from the game, IMO

 

In a Nutshell


Development of The Morphine Western Revenge has slowed over the past month and a half, mostly due to personal morale. Early in a game's development, it's easy to be motivated by the possibility of what a game can be. As the game's development reaches its final stages, I now have a much clearer idea of what the final work is actually going to be like.

The game's probably fine, don't get me wrong. The story's paced well enough, and the action's fun, snappy, and a little brainy. It will be the most ambitious and polished complete game project I'll have ever worked on. However, any mystery surrounding the game, from my perspective, has almost been totally lost. I am no longer motivated to create out of a desire to discover my own work, as I have now discovered nearly all of it.

Finishing games is almost always boring, and I tend to somehow forget this.

(As usual, if you're confused about What's Going On Here, the first two devlogs for the game can be found here and here.)

Regarding the Game's General Structure


The Morphine Western Revenge will be split into five levels. Each serves a unique, deliberate purpose, but generally, the first three of them are educational in nature, while the last two test the player's abilities.

The first level is the explicit tutorial level, in which the player is directly taught those rules of the game than can only be explained through text. "Press these buttons to move! Press this button to kill people. Press this button to maintain your morphine addiction." I also take time in this level to provide some basic narrative motivation for the protagonist's behavior.

However, it is otherwise best to allow players to learn how to play the game on their own without being told what to do. The second level is designed to teach the player the remaining core rules of the game without text. Rather than tell the player that "melee attacks only insta-kill unaware enemies" or that "it's possible to hide from enemies and sneak past them when outnumbered," I instead attempt to place the player in highly-controlled scenarios where they discover these rules and strategies through trial and error.

The third level introduces all remaining interactive elements (namely, weapons and enemies) that haven't already been introduced, and, therefore, is the last level designed to teach the player anything. From here on out, the player should be applying their hard-earned knowledge of the game's rules to overcome its final challenges. Being the game's halfway point, I also introduce a minor plot twist - the protagonist's motivations are not all that they initially appeared to be. Scandalous!

I'll be returning to level four in a moment, but it's worth mentioning that level five will be little more than an epilogue. It will be a short level with a purely narrative purpose - not to challenge the player, but to provide closure to the game's story.

The first three levels were completed by the time I wrote the previous devlog, each one taking about two and a half weeks each to create. Level four, despite being no larger than any of the previous levels, has taken me six weeks to create. If the first three levels are educational in nature, and level five is about narrative, then level four is the game's raison d'être. Everything leading up to level four exists only to prepare the player for it.

The game's stealth mechanics could still use a little work, but it's almost perfect.



Actually building the level that the whole game has been leading up to has been emotionally underwhelming for reasons explained earlier. But it was also during this level where I finally met the limits of the sort of play that my game's own rules could support. The somewhat obvious reality is that the player can only fight so many other characters at one time. I needed to make the encounters in this penultimate level more challenging and larger in scale than anything that came before, but I was finding that it was difficult to make the game's encounters more difficult while keeping the game fair. While my morale slowed much of the game's development, level four has also taken so long to develop because it simply been one of the most difficult game levels I've ever had to design.

It's been a tough slog, but I've finally emerged from triumphant. I think the level works.

Regarding the Music


Another level, another track. Here ya go!



As I wrote in previously devlogs, I'm attempting to recycle motifs shared among each of the game's pieces in order to create a sense of cohesion through the music. The music track for level four, "Cowboy Corpses," exemplifies this by almost using and combining every theme and motif from the preceding three tracks without introducing anything new. My intention is that, by doing this, the fourth level's music helps communicate to the player that, yes, shit is getting real, and this is the end of the game.

Regarding What Happens Next


Aside from completing the fifth level, all that's left for me to do is to finish implementing the game's user interface (title screen, pause screen, and credits), debug the HTML5 version, and playtest the final game. The game will be released no later than October, at which point I'll immediately and joyfully return to finishing development of Monsterpunk. My intention is to release both games by the end of this year, and really do some soul searching about the creative direction I want to pursue with my work going forward.