Tuesday, January 7, 2014

Sliding and regressions

Well, as it usually goes, I didn't get much done on the game during the holidays. Although I did a little more than I feared.

Mainly, I finished the first of Robo-Ninja's powerups: the slide ability. He can now slide through narrow passages.  This forced me to flesh out my implementation of ability powerups, but my rough design was pretty close to what it needed to be, so this was pretty straight-forward. I ran into one hiccup where if you switched from "slide" mode to "jump" mode while still sliding, you'd never stop sliding, and could jump around while still sliding.  That was amusing.

The harder part was making the sliding not look stupid. I figured I'd do like mega-man and have a single-frame animation for sliding, and have him slide along the ground. Unfortunately, unlike mega-man, it looked ridiculous. So I'm playing with it to hopefully make it look a little better.
Mega-man makes this look awesome. Robo-Ninja makes it look ridiculous.


The other thing I'm running into is regressions of earlier bugs. My work on code for abilities suddenly threw off my jumping physics that I spent forever tweaking. Turns out I was now properly calling an update function that I had forgotten to ever call before. And that update function had left-over code that borked my jumping. Oops.

And I had originally added a delay that forced you to see the "new item acquired" screen before accidentally tapping and dismissing it as soon as it appeared. But somehow that stopped working as well. (The problem with it was that my delay timer was declared as an int, but I kept adding fractional (float) seconds to it. Which of course, got rounded away every time, so it never really incremented.) I fixed it now, but I'm not really sure how it actually ever worked right.

So now my son will be happy -- he bugs me every day or two to hurry up and add more abilities to the game. Really, he just wants me to add the "jet-pack" item that you won't get until the very end of the game. That way he can fly over spikes and never die. Maybe I'll have to do that one next....

2 comments:

b love said...

Have you given any thought to the all-important backstory? Is the protagonist a ninja who became a robot, or a robot who trained as a ninja? And what does Robo-Ninja hope to achieve?

A game like this which is focused on action doesn't require much story. But I actually think it's worth thinking about, at least a little bit. It might generate some ideas about what upgrades make sense for the character, or what challenges you'd expect to encounter in the game.

This occurred to me when you mentioned the jet-pack item. I can't imagine a ninja or a robot strapping on a jet-pack. Instead, a robot might be upgraded with thrusters on its feet, or a ninja might take advanced training to learn to defy gravity.

Nathan Tolbert said...

Good question. Yeah, I've got a story in mind. I was about to go into more detail, but I guess I'll make it a new blog post. Hopefully I'll get time tonight to post it.

As far as the the jet-pack...yeah, it's more of a jet booster upgrade than an actual jet-pack. I just have my "in-brain" names for things that I use during development until I get the specifics ironed out.

Anyway, I appreciate you asking! I'll try to post the story and setting soon!

Optimization and C

Starting this next game in C, I've known there will be places where C isn't fast enough, and I'd have to drop to assembly to ...