Posted February 07, 2025 by TheNevel
#2D #bullet-heaven #Bullet Hell #Loot #Pixel Art #Roguelike #Roguelite #Singleplayer #Survivor-like #vampire-survivors
With this game, I'm really trying to take it slow and get it right. It seems to me that a killer demo is key to a good game launch so I've been working on perfecting it to a shine before its out the door. Lord knows I'm ready for it to be finished, but this week I've taken it slow and done everything I could to make sure it comes out nice.
On the art side, Ref has been continuing to refine the main menu. We're created the core components of it and I'm very pleased with the progress! The main character is looking fantastic and we've added a lot of character to his design.
We might make another pass to give the mask a little bit more detailing but over all, I think these additions make his whole character a bit more cohesive. What was once just a man wearing purple clothing, I think now has transformed into something more of a moon jester. It makes sense looking at him as to why he is dressed the way he is, and the mask in my opinion is the final touch that solidifies that he is all about the moon.
Speaking of moons, we finally settled on it's color palette as well. Although it is supposed to be a blood moon we are keeping it a more neutral dull orange and will introduce the redness as glow and lighting effects
My only problem with the moon right now is you can see the pixel art edges to it. I will be trying out either rounding them with a non-pixel art sprite and antialiasing or by just adding clouds around it to make the pixel art edges
And finally we've been working on the tutorial character Voynich, a sort of evil advisor. I think he adds a lot of lore to the game simply by being at the character's side.
There haven't been any real changes to music and sfx this week. Juan has completed all of the music for the demo so now it's just a matter of getting the sound right and that's on me. More on this next time I polish the clips we have!
From a programming side, I've been working on the final prerequisite to a successful steam launch - Achievements! It's been an interesting week as I've wrestled with getting the achievements to link to a steam account, and making special icons for all of them.
From the programming side, the biggest hurdle has been figuring out how to Port achievements over from the demo to the full game. Steam recommends that you DO NOT have achievements in the demo, but achievements are linked to the progression system in Bloodmoon Survivors. What I needed is to design a system that allows you to unlock achievements locally so players can unlock weapons and levels by completing objectives, but only have it appear on your steam account if your playing the full game. The answer to this problem was to make a new event that happens when the game boots up that checks if you're playing the full game or the demo, and if you're on the full game then it attempts to unlock all of your local completed achievements in steam. I think this system works nicely as it lets players who played a lot of the demo carry over their save to the full game, and also retroactively unlock all of the achievements they earned in the demo!
The other half of my week has been spent actually filling out of the achievements on steam! This was trickier than expected for a couple of reasons. The first was that I planned on having a steam achievement for every single achievement in the game, but apparently this exceeded a built-in limit that games have. Steam only allows new games to have a 100 achievements because many games take advantage of the achievement farming to inflate accounts with more accomplishments. I didn't know about this limit so I had to work around it. If bloodmoon survivors is successful, I will definitely ask to increase the number so the in-game and steam external achievement count is one to one!
The other thing I had to do was make the achievements on steam fill out their specific size requirements. All of the achievement icons in game are 32x32 sized canvases and steam recommends between 64x64 and 256x256. This worried me because I really didn't want to ask ref to Upscale every single achievement. In the end I went with a very simple solution that I took from other games on steam.
What I did was ask ref for a 64x64 border that "held" the achievement inside it, then I made new achievement images for each icon in the game by placing it inside this border so it was steam size compliant. For example:
original achievement
Steam achievements
I think this solution circumvents the requirement rather well, while still making the achievement feel unique and hand crafted. This took WAYYYYY longer than I was hoping to do for all the achievements in the game but I hope the result shows polish and makes the process of unlocking more of the games challenges exciting!
Now I really am done with all of the big coding overhead for the game. For next week I hope to continue tackling the smaller problem still plaguing the game (tiny bugs and such) and start TUNING the levels and bosses to get the difficulty pitch perfect. Other than that... I'm taking it slow with the main menu and once it's complete it will be time for marketing prep (redoing capsule art, trailer, playtests) all the exciting stuff. The demo will be out soon. I can feel it. And I'm very excited to see what the future holds. :3