Tag Archives: new programming language

12/14/14 December Big Update

I’ve decided to skip the commentary in favor of a longer write up for this update. My hope is that without me yammering over the video viewers might pick up more detail about the game, my voice is rather jarring after all. Also it’s pretty hard for me to avoid rambling on while I’m playing and keeping focused is an issue! So check out the quick play through and read up on the detail when you’re done!

Major updates since last blog:

Completed running animations in the 5 key directions – East, North East, North, South and South East. These are the key directions since they are the only unique sprites you need for an 8 direction object because you flip the NE, E and SE art to do NW, W and SW.

I learned a strong lesson about doing 14 frame animations of 2 legs in 5 directions: going cross eyed is a thing. I basically stared at silly looking leg like blobs of huge pixels for 2 weeks straight to complete them. But you know what? They are some pretty good looking legs. This heroic effort also leveled up my pixel art skill dramatically which was a side effect I had planned on.

Needing a break from art I broke the game in order to completely redo the way you control weapons. Planning on this for some time I had a lot to do. This control update also included the first inklings of an item system by storing all the variables for all the weapons and the different types of ammo in a 2D array that is essentially the global item list.

As for the control changes – the old layout included all of these buttons as combat buttons:

Q, E, R, Z,  Ctrl, Shift, Space, Left Mouse, Right Mouse, Mouse Wheel Up, Mouse Wheel Down, Middle Mouse.

To be fair, these 12 buttons gave you access to a formidable armada but it was tough to jump into and start peeling away at the thing for your average gamer. This is bad game design. I knew it, but for where I was at in development, that layout served it’s purpose.

For reference you had at your fingertips the following weapons and abilities: Tech 9, Energy Sword, Rail Gun, Shotgun, Missile Launcher, Grenade Launcher, Ion Cannon, Blink, Ammo Rush, Toggle Buff, Bullet Time and Turbo Speed.

7 weapons and 5 abilities not including the Dive move which you activate by double tapping a direction key (WASD). The new scheme greatly simplifies the weapons system and removes Ctrl and Z from the buttons list entirely. The abilities are left intact however core gameplay revolves around Turbo Speed (Space) and Bullet Time (Shift) and I am unsure on exactly how but you will probably have only Q and E for active abilities with a toggle on R or something.


Now, let’s picture the mouse and think about how we can cram as much versatility into the thing as possible without being unwieldy. This is a moving target of course depending on the player, but there are gameplay changes in place to help with this problem.

What I came up with I believe to be somewhat elegant: left mouse button controls your characters left hand and right mouse button controls their right hand.

You can have one alternate weapon in each hand, which you access by flipping mouse wheel up to cycle your left weapon or mouse wheel down for right. That is probably the most difficult part to get used to, but it provides loads of versatility. Finally you can click middle mouse to equip a “big” or two handed weapon. This weapon has a primary attack (left mouse button) and a secondary (right mouse button). Click middle mouse again to cycle back to your dual wield set.

This provides 6 total weapons all accessed through the mouse and activated through left or right clicks. With a number of visual and audio cues it is quite apparent what weapons you are wielding at any given time.

In the video you will notice in the upper right corner the new stat block which details your characters current stats. Below the icons are your weapons, those sprites are all weapon specific and the small colored bars adjacent to them represent their rate of fire and are color coded. The sight lines drawn from your characters weapons to the crosshair are color coded to the weapons as well. You may also notice the new muzzle flashes when firing and those have unique sprites, colors and animation speeds.

The hardest part of course was actually producing the individual weapon sprites. Each weapon needs a sprite for each of the 5 key directions, lucky for me anything is easier to draw than those damn legs so this was actually quite a pleasure! Coding the logic for where each sprite is located based on player position was no walk in the park though.

With the color coded muzzle flash, sight line, fire rate bar and unique menu sprite and weapon sprite, visually we’re getting there. Combine all of these and you have a fairly unique visual feedback signature based on what weapon is in your hand each time you fire.

What about the sound though?? No shooter is complete without the pewpew after all. With that in mind I’ve acquired some decent sound assets that are working great with the new 3d sound system. Sounds all vary based a ‘listener’ reference position which I attach to the player. The environment emits ambient sounds now and even individual projectiles make noise as they fly past you (Doppler effect and all!). Listen for the trickle of water from the streams, sound of the windmill and pulse from the power converters!

That covers most of the big stuff and I need to eat this pizza, but thanks for checking Kite out. Catch you next time!


First game play teaser


Welcome to my current world, where I fight for supremacy over a new programming language and chase a paycheck. These are the earliest screen captures of my current project – Kite – a twin stick shooter created in GameMaker: Studio.

For now, my code is shit, my walls have like a Charlie Brown yellow thing going on and your legs don’t move, but by god if you can’t fire off bullets, missiles and lasers while dodging the same in slow motion with your turbo speed on and your shield up.

For now that’s I’ll I’ve got, more about  why and how this adventure in game design began will come but at the moment I need to get back to programming… GG