I finished the third level this week, hurrah! I’m not going to show any more of it for now… of course it’ll be displayed eventually, but keeping some surprise in the game is important to me and there’s a long long way to go.
Instead, I’d like to list three new things I’m toying around with for Bleed 2.
The first one is taunting! I think mugging for the camera fits Wryn’s character rather well, even if I’m not positive what purpose it serves. Right now taunting gives a large boost to the style meter but suffers extremely diminishing returns on consecutive taunts. I had already taunted once or twice before recording the gif, and you can see it does practically nothing at all. If nothing else I think it’s a silly fun move to have in there.
It was one hell of a week for work, but a bad week for pictures.
Most of the week was spent preparing Bleed 2 to be integrated with the Steam API. Pretty optimistic of me, since I don’t know for a fact that Bleed 2 will be released on Steam, but I’d like to think there’s a reasonable chance. Anyways, if you don’t know what “integrated with the Steam API” means, allow me to explain:
The Steam API is like a little program that lets your game talk to Steam. This allows your game to have things like leaderboards and achievements and all those other good Steam features that everyone loves. The issue is that the Steam API is written in one programming language, while Bleed 2 is being written in an other. They can’t communicate easily — you couldn’t even pass the number ’1′ between them without things getting messed up. So, you have to write a third program to translate between the two.
Alright! The new year is underway and I’ll probably be back to shorter, more concise entries for the time being.
This week I worked on the third level of the game, including touching up one of the bosses of said level! I’ve shown this picture of her a few times, but here is Red:
When I design bosses, I typically start with a unique mechanic for the boss to have. In this case, I wanted the boss’s attacks to be easy and straightforward, but for her to be fought among a constant swarm of enemies, so the player has to divide their attention and fend off attacks from all sides.
Yeeaaaah happy new year everyone! Like most people I’ve been pretty busy with the holiday season, so today’s blog post will be a little light.
Early in 2014, I got into the habit of logging of my hours worked, as well as what I accomplished each week. For fun, I stuck it in Excel and out popped a chart of my productivity in 2014!
So anyways, if anyone is reading this and I can give you a little boost for 2015, make some awesome resolutions and stick with them! It’s hard to get into good habits and you might get discouraged, but if you work at it a little bit each day you’ll keep getting better, and you might surprise yourself with what you can accomplish! Motivational speech mode: activated… Continue reading →
This is NOT a feature announcement. There is a high chance of this not being in the final game. I’m just sharing what I’m working on, and asking for input.
Got it? Good. Let’s talk about randomly generated content! Like many people, I’m intrigued by the prospect. Programming-wise, it’s a fun puzzle to try and solve and can yield really neat results!
Every now and then, I take a break from working on Bleed 2′s story mode to fiddle around with this extra little project I call Endless Mode. I don’t have much right now, but here’s the base idea: There are a number of pre-made “chunks” that get stitched together randomly into one big level.
Don’t get too excited — that is literally everything I have on Endless Mode right there. Three “standard” level chunks on the left, and two “hazard” chunks on the right. Levels are mostly made up of the standard chunks, with rarer hazard chunks sprinkled in to mix things up. The level would finish with a “boss” chunk, where you’d fight a random boss before proceeding to another area.
Personal life and the holiday season got slightly in the way of work this week, but I did get stuff done, including finishing level 2! Yaaaay!
Since I don’t have as much to say as I’d like to this week, I thought I’d take the opportunity to touch on a few improvements I’m making to Bleed 2 to make it more accessible. No, I’m not talking about difficulty or whatever. Take a look at this:
Yeah. So what? Well, after Bleed was released, a review by the Indie Gamer Chick brought to my attention that scenes like this could actually cause major issues for gamers with epilepsy or other conditions. The flashing graphics and fast, repetitive patterns have the potential to really mess with people. It’s obviously not my intention to cause anyone pain, and I want as many people as I can get to be able to play Bleed 2, so I’m including a few options that will hopefully make this possible.
Time for something a little different. I’d like to discuss my approach to making Bleed 2, and how I’m attempting to develop it in a way that maximizes both my enthusiasm for work and the quality of the game — two things that can really suffer during long development cycles.
Bleed 2 has existed in some form or another for almost two years now — I actually have a back-up from Jan 1st 2013, when I was first re-designing Wryn’s sprites . Back then, it wasn’t “Bleed 2″ — it wasn’t really anything, just me having fun and working on my art between other projects. But the more I played with it, the more I thought about it and the more it seemed like there could actually be a second Bleed. The problem is, there are some major hurdles that come with a large undertaking like this. I’m not sure if the experience is universal, but I suspect it may be.
It’s the easiest thing in the world to get excited about an idea, but that initial excitement only takes you so far. You ride the high for a while — you lay the foundation, you make a couple of test levels and some enemies — all these fresh, new things are coming together! Your dreams are being made manifest and you’re on top of the world. But the more you accomplish, the less instant the gratification becomes. The initial burst of enthusiasm eventually fades, and the enormity of the task before you stretches out for what seems like eternity — you still have an entire game left to realize. At this point, completing the game becomes a labour of love. It’s worth it in the end, unquestionably, but in the thick of it motivation takes a serious hit, and quality can really suffer as a result.
Oh, I didn’t see you there! Hello! Got a minute? Then I’ll tell you what I worked on this week:
Difficulty Balancing Set-Up
The start of the week was spent finishing up the Kitty Chopper boss. All its visuals and attacks were complete, but that’s only the beginning. Once a boss is done in that sense, I set it up for difficulty balancing. What do I mean by that? Previously the whole boss was hard-coded, so it behaved like “glow purple, wait 700 milliseconds, charge at Wryn with a speed of 20″, etc. So what I did was make it more like fill-in-the-blanks — “glow purple, wait ___ milliseconds, charge with a speed of ___”, where the blanks get filled in with a different value depending on the difficulty of the game.
There’s a little taste of what it looks like in code. Any value that could make the boss easier or harder gets pulled out and given different values for each difficulty level. Right now each difficulty level has the same value, because I haven’t actually tuned it for those various levels — I’ve just set up the ability to do so. Setting it up is rather tedious so I like getting it out of the way. I’ll come back later and tune each difficulty level… and add audio… and particles… there’s a lot of work still to do. Continue reading →
This week I started tackling the second level! Environment art was touched up and put in the game, as were most of the minor enemies for this level. But I don’t want to focus on those so much this week, because I also spent a great deal of time re-doing the Kitty Chopper boss!
This is it! The Kittehs from Bleed have managed to fix up the Chopper Core, and they’re out for revenge. It’s too bad they can barely fly it…! Like the boss I mentioned a few weeks ago, the Kitty Chopper was one of the first bosses I made for Bleed 2, and it really showed… its attack patterns were just kind of meh and it had a distinct lack of polish and personality. So rather than polishing a turd trying to make the existing version better, I scrapped the whole thing and started over, documenting bits of the process!
First I redesigned the visuals a bit. The Kitty Chopper attacks primarily with small and large missiles, neither of which you could see on the original model — they’d just kind of appear from nowhere. Now the minigun is moved back so you can see the missile bay, and the large missile can be lowered from inside the chopper.
Also, by the way, those are final-product images. The chopper is actually composed of a bunch parts, allowing different areas to animate independently. Here’s a selection of the chopper’s sprite sheet showing some of the different pieces. You can see where I’ve marked the boundaries of each sprite, plus their hitboxes in some cases.
(Warning, lots of .gifs upcoming. I optimized them as best I could!)
A moderately productive week this time. Here’s what I got up to!
Most entities in Bleed have a hitbox that tells them where they collide with tiles and other entities. That’s fine 99% of the time, but it was causing problems with the pistols in some cases.
The gist of it is: I want the pistols to have a bigger hitbox than they appear to, so that you don’t need pinpoint accuracy to use them. The problem is that the more generous I make their hitbox, the more likely they are to collide with tiles instead of the enemies the player is shooting at — especially problematic when aiming up or down raises in elevation.
My solution was to make the pistols a special case. They now have two hitboxes — a teeny one to collide with tiles, and a generous one to collide with other entities!