Taking a Breather

Hi internet!  It’s been a while – let’s catch up again.

Let’s see.  A while ago I launched my first commercial game on Steam.  The game was in development for far longer than originally intended, and its release was much overdue.

Unfortunately, though I say I “launched” it, I don’t know if that’s really the fitting word, as most of the traffic the game received (maybe 90%?) is purely due to its place on the Steam storefront, meaning I did not succeed at publicizing the game or getting it the exposure I think it deserves.  And overall, it has garnered a small fraction of the views that its much smaller and cruder prequel had (not talking about sales here, just hits), which is pretty discouraging.  After all, the main reason I decided to work on this sequel was because of the apparent interest that was shown in the original.

But now the game is out there, and I can say that I finished and shipped a product with a pretty substantial play-length, considering the game consists 100% of scripted content.  There has been a lot of positive response from the people who have played it, and some really glowing user reviews that have just been a joy to read through.

I haven’t been as productive after release as I thought I would be.  I had all sorts of ideas for projects that were crowding my head, which I thought I would just speed through after being caught up on such a large undertaking.  Nope, turns out I was completely burned out from development and all of the stress leading up to release.  I have been working on several projects and have participated in local game jams, but so far haven’t been as possessed to publish something else with my name on it as I had been with At Sea.

get it?  possessed?

Partially I feel like I’ve proven to myself that I can see a project through to its end, so I don’t feel the pressure or need to finish every little idea that I come up with if it turns out that it isn’t really as interesting as it seemed at first.  Which is usually the case.  The fickle developer who can’t complete anything is a cliche, but in truth I think it’s important to also know when to leave a project.  Yes, you can learn a lot by completing a project, and it is an important skill to be able to “finish” something.

“Art is never finished, only abandoned” – some dude

There are definitely diminishing returns however.  The skill of “finishing” is only one of many, many skills that are required in game development, and it may not even be the most important one in this era of early access and open betas and development live-streaming and twitter GIFs and oh man, things change really fast don’t they?

But one thing I have definitely noticed is that my productivity and general ability to make stuff is so much greater than before I had originally set out to ship a premium game.

When working on other things, it kinda feels like the training weights have come off.  I’ve just spent some time catching my breath.

Western Peace

Since graduating, it’s been my desire to travel abroad and teach English.  This has been something in the works for a while, as I’ve approached it with a large, perhaps excessive amount, of caution.

Which is why I’m very excited to say that just over the past month I accepted a job teaching English as a second language in the beautiful city of Xi’an, China.  Obviously, the work needed for this came before my work on my game project, which was a large part of why I had trouble holding to my development schedule for last month.  If that means I don’t feel comfortable submitting to Indiecade, I will consider it a small blip on the screen compared to this news!  I’ll be leaving the states at the end of this summer, and it can’t come fast enough.

xian-chinaI’ve known since before graduating that I wanted to travel outside the US in some capacity; I had studied abroad in China for a semester, and found the experience eye-opening and fulfilling.  And although I would love the idea of going to other foreign countries besides China, I’m just too tempted to continue studying the Chinese language (老实说,我也想吃中国饭,哈哈)!   The decision to teach ESL in conjunction was a practical one as much as a personal one.  Most ESL jobs allow the kind of flexibility that would allow me to actually see China, and there are many more openings across all of China, allowing me more freedom in the location I work.

That the job is located in Xi’an is no accident — it is in the dead center of China, and loaded with ancient history for which I am an unapologetic romantic.

xi_an_china_photo

Teaching ESL also dovetails with my interests in education.  Although I don’t often mention it in this blog, I’m extremely interested in what games can do for education, and I believe that the art of game design and the art of teaching are very similar at their core.  Both require one to design a system with the intent of conveying information to an audience by guiding them through it.  The game designer uses code to convey emotions and information to the player, while the teacher designs lesson plans and exercises to convey information and patterns of thought to the student.  In both games and education, interactivity is vital — the game designer must use mechanics other than walls of text or cutscenes, and the teacher must have exercises other than mindless drills.  There are still other, more specific similarities, but I’d rather not ramble on about this too long!  Suffice it to say that I feel there is a connection between gaining experience as a teacher and improving as a game designer.

And I would also love to continue my independent development while in Xi’an.  I obviously will be more restricted with development time than I am now, but I will still have more than enough time and resources to do work on the side!

More WAID2 art and news to come shortly!

Oh by the way I’m in another country now

So at the end of my last post I mentioned that I had to put my li’l prototype on hold to “handle some real-life stuff”.  Well, by that I meant travel to Shanghai to attend GDC China.

Some “real-life stuff”

Since I haven’t talked even a little about the things going on in my life, aside from the results of me slamming on the keyboard over and over, this may seem a bit unusual.

In reality, it’s been my hope for some time to get a job in China, outside of the obvious path of teaching English; I’ve received very, very mixed feedback on how feasible this goal is (ranging from “it should be extremely easy”, to “are you out of your mind”), so I’ve decided to just, well, dive in, and see for myself what happens.

Over the next several days, things are gonna be real hectic and crazy.  Suffice it to say I won’t be blogging then.  Even past GDC, though, I won’t really have time to work on my side-stuff for a while, as I’ll be in 100% networking/travel mode.  So, I thought, instead of being just another boring ol’ dev-blog, I’d fill up the time by actually having opinions on things.  And then writing about them.

I know, I know.  It’s a big step.  But I think I’m ready.

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.

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.

Brief Update

Jeez, I’ve been meaning to update the blog for a while but I’ve been distracted recently.  These distractions mainly fall into three categories:

1 – Driving to see family / Seeing family

2 – Job searching / applications

3 – Diablo 3

So unfortunately I haven’t been able to work much on my poor pet project.  But I’d say at least two of those three diversions are more important than the pet project itself, so hopefully my pet project will forgive me.  I would like to say that I’m now about to really buckle down, put the cliche to the cliche, and finish this thing soon, but I’m actually going to be spending the next 3-4 days attending the 9th annual Games for Changes Festival in New York!

Which I am REALLY excited about.  I had my eye on the last one but wasn’t able to attend due to time/place considerations.  A lot of the speakers that are scheduled have really influenced my outlook on game development.  I’m one of those people that think games will, in the future, pervade society in a much more fundamental way than it does now…and most importantly that this is a good thing.  Anyway, it’s a star-studded festival and I can’t believe that the timing works out so that I can attend!

Getting the Ball Rolling

Things have been pretty hectic for a while but now that they’ve finally started to settle down, I’ll be able to really get stuff going here.  Some disparate things that I’ve been up to which will almost definitely pop up in the future:

– I’ve nailed down the concept/outline of my first Flash project, which is meant to be a small and unambitious game just to get my feet wet in Flex production.  As a result my timeline is pretty short as well; I hope to get all the programming and writing finished by June 1.

– I’d really like to start getting into the world of open-source programming, and so my first step in that is schooling myself in version control.  Basically, I’m reading Pro Git.

– I’ve been polishing and fine tuning a previous project of mine, called ‘Mandate’, to the point where I feel comfortable putting it online for all to see and try out.  No particular timeline for this outside of ‘very soon’.

Hello World

Why hello there, person currently reading my blog!  This, if you had not yet noticed, is the first post out of hopefully many others to come.

Let’s talk about what these hypothetical future posts will contain for a second.  My main interests include programming, game design, the study of history, and to a much much more limited extent, art.  So, you can expect a lot of posts to be about what I’m currently learning and trying out in programming.  You can also expect some to be about what game pet project I’m working on, at which times this will mirror an indie dev blog.  Some posts may just be me remarking on history that I’m reading, or wondering aloud about the study of history in a meta sense.  And some may be me posting illustrations and trying to make progress in that area; eventually I’d like to migrate to digital art, but at the moment I’m content with sketching basic anatomy.  Baby steps, and all that.  And most importantly, somewhere in all of this I might actually do or say interesting things.

So, if any of that sounds up your alley, stick around!

I’m not yet sure what the schedule will be as far as updates go; for now I’m just going to post everything whenever I want and we’ll see what sticks.  Alright, let’s do this thing.