Tuesday, March 22, 2016

Gearend Revived

Yo! It's been awhile, hasn't it? Well, then. Lemme explain:

Airgrift is being paused for the moment, as I've decided to go back and start and finish Gearend.

As you might recall, Gearend was a 2D Metroid-like that I was working on a couple of years ago, and subsequently abandoned because I thought it was too big of a project for me. Since then, I've figured that the game's not gonna get done unless I started on it, and so I started planning out how I'm gonna start and finish the game. I believe I've grown leaps and bounds since then (or maybe I just know a bit more about how to get myself to get stuff done), and now I'm working on it again. Hurrah!

More info after the break!

So what is Gearend? Well, essentially it's a 2D Metroid-like where you control a robot named Epsilon-98, or "Eps", for short. As a helper-purpose robot, its job is to assist humans and aid in household chores. To facilitate this, it has a special body-type that allows it to swap out its parts to deal with the different jobs it might face. It would appear, however, that the Epsilon line was never fully completed. Time passes, and Eps now suddenly awakens, unsure of the year. It now seeks the truth about humanity, facing the traversal of a long-forgotten and out-of-control robotics facility. "Run around, shoot bad-bots, talk to people."

Here's a pic of Eps talking to an NPC, which is just a cutout. The general idea behind this is that the game takes place in an abandoned robotics facility, so the cutouts were meant to be points at which a human touring the facility could interact with the AI and ask about the area, or just get access to an AI for assistance. The AI is linked to each cutout wirelessly, so it's the same character in all of the places, despite the fact that the cutouts themselves never move. There will be, of course, other kinds of NPCs; this is just one of them.

Like in the original Gearend, the hero robot Eps can wield two weapons at any given time; in this case, it's a melee weapon and a ranged weapon. I still have to get the weapon attacking animations in there, as the weapons are at the "debug" level at the moment, but the mechanics are there.

In addition, today I spent time refactoring the code a bit and got the walking animation in there and animated. I'm now using a hashmap of animation frames to positions that indicates where the arm and core parts should be offset when the legs are moving. This means that when the robot walks, for example, the arms and legs can bob up and down (through code). Otherwise, I'd have to make bobbing animations for those parts, which is a bit unnecessary. Also, when you jump or walk, the arms rise and fall slightly out of sync with the body and legs to make the entire robot feel "heavier".

Recently, I got the grass waving through a vertex shader; attacking near the grass disturbs it, making it flutter. It feels a bit "cheap" right now, but it's a cool effect, nonetheless.

I've been doing lots of enemy design, which is pretty key for a Metroid-like; I have around 11 designed so far, which is a pretty good amount for a Metroid-like, I think. Most of them are new, but a couple are pulled from the original Gearend in one way or another. It's been fun just coming up with some random enemies, but I probably should work on specific, themed enemies (i.e. fire-themed, lightning-themed, whatever). The idea is that each unique zone'll use a couple of the "common" enemies I have so far, and a couple of hazards, enemies, or interactables that are unique to each zone. Hopefully I'll be able to get enemies created and implemented in-game rather quickly!

Here's a video series on YouTube showing my progress so far (not counting this post); I'll put up a new video soon. Thanks for reading!

No comments:

Post a Comment