Blunt Force - A melee-only bullet-reflecting rogue-lite

Hello! I’m Bitzoid, a novice programmer and game developer. I have puttered around with Python, Javascript, web design, and C#, and have fiddled with Gamemaker and Unity. And now I am making stuff with Defold! I have been around for a few months now, and have been working with the engine off and on. I am loving Defold, its community, and I hope to keep on working with it! But, that’s enough about me, lets get to the game!

Blunt Force

Note - This is my vision for the game as of now. Blunt Force is still in early development, and all of the features are subject to change. The post is a tentative forecast of the direction I want to take, and will probably shift at least a little(probably a lot) as development progresses.

Summary

Blunt Force is a game being developed by me, Bitzoid. The premise is, abstractly, that you are the chump who brought a knife hammer to a gunfight. If you get hit by enough bullets, it's game-over. Your only chance at survival is to indiscriminately smack everything in sight. If you hit an enemy, they take damage, and eventually crumple under the unrelenting force of your wrists! If you hit a bullet, it will whiz in the direction of your swing, as though it were you who shot it! Exhilarating! Use your newfound mania for reflection and deflection to maneuver the rooms and hallways, escape your decrepit prison, and achieve your freedom. Or descend further still, to discover the truth behind these blighted walls.

I am mostly making this game for fun and to learn some stuff, but depending on how far I can take it and how much polish I can wring out of it, I might publish it. Who knows! For now, though, this is just for kicks, and I will be uploading free demos and html builds as often as I can throughout development.

Gameplay Overview

The player will move from room to room within a floor, reflecting projectiles at enemies and passing out heaping helpings of smack-downs. They will be able to open chests or visit a shop (maybe) to acquire consumables, permanent upgrades, and new weapons. After a certain threshold of enemies have been defeated, the floor boss will appear with their minions, and proceed to manically spew forth bullets. Upon defeat, they will dissolve into a ladder or trapdoor or something, depending on the players choices. Eventually, the player will reach the final boss, and, doop-dee-doo, the game is over.
Or is it?
To be clear, the game is rogue-lite, with permadeath and stuff. I am shooting to make it a punishingly hard but rewardingly fair experience, where a player relies on skill to survive, and develops that skill over many runs. I have a few ideas for replay-ability and player retention, but those will wait until later in production.

These are the basic gameplay elements I aim to have in the finished product.

Player
  •       Smooth and responsive player animations and movement
    
  •       Character selection, each inmate with different traits and abilities
    
  •       Weapon swap, with unique animations and behavior for each weapon
    
  •       Health and scoring system, with leaderboards eventually
    
  •       Projectile reflection
    
  •       Consumables/basic inventory
    
Enemies

Enemy AI that is capable of delivering randomness and difficulty

  •            Many different enemy types, each with unique behavior and attributes
    
  •            Intermittent bosses
    
  •            Different types of projectiles and attacks, which behave differently on reflection
    
Map and Level Progression
  •            Procedurally generated maps, with some being natural cave shapes, and others rooms and hallways
    
  •            Intelligent enemy grouping/spawning patterns
    
  •            Interact-ables like destructible props or loot boxes
    
General Features
  •            Main menu, pause menu, loading screens, and other generic GUI features
    
  •            Unlockables, which can affect the cosmetics or gameplay
    
  •            Soundtrack, perhaps produced by me
    
  •            Sound effects
    

Just some odds and ends:

:pushpin:Animations and sprites at this point are all placeholder, but I am trying to put a bit of effort into them to get some experience with Aseperite.

:pushpin:I might try uploading animations/sprites on Fridays, so as to have some form of update on this thread in between the major ones.

Programs I use

I am sure that this list will grow as development continues, but it’s a little barren right now.

  • Defold
  • Asperite

Thanks for reading! Feel free to post down below with comments, compliments, criticisms, questions, complaints, or whatever else you have on your mind, or you can just drop me a PM and I will try to get back to you as soon as possible. Tips and suggestions are always accepted!

5 Likes

Current version: 0.01

Update notes list
Update 1 - Version 0.01

Here are the placeholder animations for the player, and the aiming/attack system. It is kinda rough around the edges, and the shovel behavior is somewhat inconsistent, but it will work for now. The attack concept is heavily needing some refinement, but that can wait, too.

Here is the current condition of collisions. They are a little jittery in some cases, but I have an improved collision resolution system in the works.

Look at this handsome fellow! Onion Creep is just a fun placeholder animation for whatever this enemy will end up being. He is my current focus.
In case you were wondering about how I am doing sprites and such, I have two animations for each character - idle and run. I reflect them depending on which direction the object should be facing, and switch between the two depending on the velocity of the object. Pretty simple!
The map is currently a simple tilemap with two different tiles. One is for walls, the other is for floors. The generation is just a simple cellular automata script, which will be replaced by a more procedural system in the future.

3 Likes

Cool stuff! I’m looking forward to following this!

1 Like

I will try to upload big updates at least once a month, maybe more depending on how much time I can spare for this project, but between updates I will try to keep this thread alive by posting new animations and stuff. I will upload a html build as soon as I have a playable build, but until then, enjoy this run cycle of Onion Creep!

3 Likes

Love it! Will keep an eye on the progress.

Super creepy eyebrow wiggle – love it!

/Axel

1 Like

Hey! Today(yesterday, technically, because I uploaded this at 12:07 AM :sleeping:) is Friday, so I will upload an animation I have been working on!

I spent a couple hours working on this today, and I think it turned out pretty good, considering its my first crack at explosion animation. I’m not sure what aesthetic I want for Blunt Force, so this animation might not end up in the final version, but it was a lot of fun to make! I’m thinking about maybe uploading these animations to the defoldmine once I get enough done.

In other news, I have been working on enemy behavior and pathing. It’s very rudimentary at the moment, but it’s heading in the direction I want it to, and I will hopefully be able to get an update out pretty soon!

9 Likes

Nice! Explosions are really hard to get right, but I think you’re onto something there!

2 Likes

Thanks, britzl! Also, I might be biased, but I would like to say that your profile picture is top notch :+1:

3 Likes

Ditto! :slight_smile:

3 Likes

Sorry for the sparse updates, I haven’t been able to put as much time into this as I want, but development is still progressing. Here is a peek at the current state of enemy AI.
As you can see, they respond to collisions consistently and flip between states of movement and idle. I used animation callbacks from dummy properties to set the duration of the behaviors in seconds, as outlined in this thread. These guys took a few iterations to get right, but the code I used is heavily reusable and modifiable, so future enemies should be a piece of cake (hopefully). Now on to making these chums into the killing machines they were made to be! (AKA pathing and attacking).

5 Likes