Tuesday, October 17, 2017

The Dos and Don'ts of Enemy Design

Gabe's Game - Waju

Solo development allows for uncompromised creativity. However, that can result in unchallenged creativity as well. This week I went through a journey of love, loss, and redemption while creating art for an enemy character in my game. Ideally, this will serve as a cautionary tale for developers doodling damage-dealing degenerates!

Very early on in WAJU's genesis, I scribbled this little enemy concept. 

At the time, all I knew was that the player would deflect rockets by jumping off of them, so I made a cute walking cannon. It was the first enemy I came up with and it stuck in my head. when I imagined WAJU I saw this little guy supplying him with rockets to send flying. 

Months later I wrote a blog post about enemy prototyping. One of the enemies in it was a rough design of the above character concept. 

(the blue guy)

While I included that prototype in the post, that character presented a few undesirable problems. I know my game feels best when the player is pulling off crazy air combos. As such, my philosophy for enemy design is to promote upward movement. While this character didn't force the player downward, it pushed them horizontally to the point of frustration. 

I later fixed the design by making it shorter and slower. This provided a more natural and satisfying method of moving the player upward into airborne combat. I was far happier with how this character affected gameplay.

Heres the problem: the original enemy concept art had been sitting in my sketchbook and my head for a long time. It was just an inherent part of the image when I imagined the game. It recently came time for me to do some enemy art, so without question, I knew the first character I needed to make!

Yup, looks just like I imagined him. Next: on to coloring. After a bit of fooling around, I ended up with the character on the left.

Things were moving along as planned, so without even thinking to toss the character in game, I started on some animations!

So now for the repercussions of my irresponsibility. I attached the model to the old prototype character. Lo and behold, it still wasn't fun...

In fact, it was even less fun! The height of the enemy made rockets fly clear over the player's head. This directly contradicted my core enemy design philosophy of keeping the player airborne. I would have to mess with all the character proportions to fix this because just scaling it down made it too skinny with too small a cannon to shoot decently sized rockets.

I knew this design didn't work before I even started on the model. Early on in Dueling Dev Blogs, I dug into William for creating a bunch of art before properly prototyping gameplay. But, here I did the exact same thing, to an arguably more egregious extent. I invested my limited time into art for a character, without properly assuring its value.

At this point, I was feeling pretty bummed; until, that is, I found a fortunately simple solution. There is a whole middle segment of the character that could be easily removed.

Voila! I deleted a segment and suddenly had art for the shorter/slower character I knew worked well. This is not to say I didn't lose work in my fuckery. The animations had a bit of trouble carrying over.

This ended up not being a problem though. In the original animations, I had the character stopping to shoot. While it looked nice, it didn't work well with gameplay. Rockets were only being fired every two seconds. The slow rate all but removed the player's incentive to jump. So, I sped the whole thing up.

While this works best for gameplay it's not ideal. The mask/cannon cover was what made the design fun, but at this pace, it's a little difficult to appreciate. Yet another short coming that could have been avoided with proper planning. That said, I'm really happy to have maintained most of this character's design through this rollercoaster process.

Ultimately I was left with a fun little character. I'm happy with how this guy feels in-game and I think he is a good jumping off point for future enemy stylization. 

William's Comment: 
Cautionary tales about over-planning an idea before checking to see if it works are as old as time.  "The best laid plans of mice and men." "Don't count your chickens before they hatch." "Overplanning kills magic." See what I mean? Proverbs for days. 
You know what else there's a dozen idioms for? "Look before you leap." "Be prepared." "Better safe than sorry."  So, conventional knowledge is that you should prepare before executing on an idea but preparing before executing on an idea is courting disaster.  Heck, some of those could mean both at the same time depending on context. 

I'm more of a creativity-as-a-process type of guy.  Gabe mentioned above a time when he fired shots at me for really over-preparing an enemy for a stealth game.  I could argue that the enemy's complicated AI required that its framework be pseudocoded before being implemented to assure that the whole thing wouldn't be a mess in execution.  But, even as I had this high-level structure preordained, I also kept in mind that somewhere along the lines I would be seasoning the enemy's design to taste through repetitious testing.
I have a lot of confidence (arrogance) that I overthink my plans to the point that I won't need to tweak their design overtime.  The truth of the matter is that my arrogance is misplaced.  I often do diverge from the original plan.  However, instead of having to do lots of damage control due to an oversight, I tend to instead mutate the plan very naturally because I've found a new idea along the way that I like better than the original plan.
Pssh, this beats the hell out of my original table plan
All of this just to say this: I think that it's better to keep plans flexible than to be weary of heavy reliance on planning.  Maybe they're the same thing and I'm looking at subverting heavy planning as more of a cup-half-full type of situation.  I think that what Gabe ultimately did to salvage his character design shows a lot of this ideal, even if the midsection of the model wasn't specifically there to be cut if necessary.  Just remember that I, however, am immune to mistakes.

No comments:

Post a Comment