Game
Rock/Opera
10 years ago

Dev Log: smoke trails & dash flash!


Hi

I’m @arrogantgamer , and I’m going to call myself the “gameplay programmer”. @nomoon does all the important coding, like making controllers, sound, and networked multiplayer work right. I do stuff like make Rock jump… and shoot! Jump n’ shoot.

One of our goals in building Rock/Opera was to have it match Megaman X as closely as possible. Most recently I added a system for adding tiny decorations. I like to program “good”, but also fast, so in this case I made a little constructor that creates sort of generic “decoration” constructors. Yes, a constructor constructor. That’s how I roll. Rock is controlled by a big finite state-machine, and the FSM is in charge of adding these decorations. For example, as long as Rock is in the “dashing” state, the FSM is creating these little smoke trails. So, when Rock slides down a wall, or dashes through the air, she leaves a rad trail of smoke. Similarly, when she dashes, she makes sparks.

The decorations are in charge of their own lifecycles: so smoke, for example, just fades away after a few frames. The spark trail is a little more compllicated: if you dust off your ZSNES and run Megaman X at a low framerate, you’ll see that X’s dash-sparks are a four frame animation that aborts as soon as he stops dashing. So in our case, the decoration is aware of whether Rock is still dashing, and destroys itself if she isn’t. You can barely see this in the video I’ve provided, but it’s there.

The interesting thing for me, with these decorations, is that they are versatile enough to allow for all kinds of other neat play. The particle effect when Rock charges up her shot will probably be a decoration too. I’m currently refactoring the FSM so that we will be able to include multiple weapons (by creating an arsenal of FSMs and swapping them out), and because the decorations are tied to the FSMs we could add all kinds of other neat stuff later on. I’m kind of planning to use the Rock/Opera code base to make a metroidvania later on as a kind of biography of the life of a good friend. This friend, James, is an ageless wizard, so the game will probably need a lot of crazy decorations!

Here’s a video, demonstrating these tertiary animations. No art yet, just flashy dashing!

Thanks,

z.



0 comments

Loading...

Next up

Been working lately on lots of 'behind-the-scenes' boring stuff that no one really cares about, so here’s a guy playing the sax for some reason.

#screenshotsaturday

Fan art for Foolish I'm feeling kinda better so I drew this

Werehog transformation process. #sonicunleashed

The whole squad is here!

Interested? Follow me!

One of the most critical update for Sunblaze demo. Now you are able to pet a cat! Finally!

Shuiro Haname. #Commission

Commission for @ShuHaname

Why walk when you can jump?

Cash Banooca

Who's is this little cutey👸 here? Thanks🙏 for a gorgeous fanart @WheNa! Feel free to share your arts, screenshots, or videos with #playzelter or #zelter hashtags! #pixelart #animating #unity3d #animated #indiegames #unrealengine #animate #conceptart

A 1h30 painting, coffee break.

My twitter: https://twitter.com/loupil100