Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Electronic Dance Mercenaries

A topic by Broxxar created Jan 09, 2016 Views: 2,264 Replies: 15
Viewing posts 1 to 14
(7 edits) (+1)

A top-down shooter Rogue-lite where listening to electronic music is the only thing keeping the protagonist alive.


Hi all. There are many forums I could post a dev log to, but itch.io has had a place in my heart since I first discovered it around the time of Ludum 27 (damn that was like 2 and half years ago now...)

I've been making this game, or at least some form of it for a long time. Every other side project I've created over the past few years has usually been testing a shader, a technique, or a back-end system I could use for this game. Well I'm finally doing it. I'm making this god damn game.

Featured GIF

See all development progress GIFs in the imgur album!

I'm a big fan of progress GIFs so expect the featured one to change often, showing off cool new stuff. The imgur album linked above will just a be a dump (hehe) of every GIF I've captured to date.

For now, I'll just say the game is kind-of-sort-of a mix of Binding of Isaac and Hotline Miami. I don't like to throw around those big name indie titles as if my game is going to be anywhere near their ingenuity or scale, but if you've played them it at gives you an idea of what I'm going for.

My first update should be soon and featuring the real core of any rogue-like game: Level Generation!

(2 edits)

Color Banding and Noise


Color banding is that effect you get with gradients when there just aren't enough bits to represent all the colors in the gradient. Check out the Google Image Search for color banding to see some examples. In the low light areas of EDM, there are only so many shades of grey and so what is supposed to look like a smooth transition from light to dark ends up looking like several quantized steps down in brightness:

Without Noise Image

Today I tried a little tweak in my shader that simply introduces some noise to the lighting texture before it's rendered over top of the scene and it appears to really do the trick!

With Noise Image

There is a trade-off however, because just washing out the light with graininess does add a sort of grit to the screen that might not be desirable. Right now I'm liking the new aesthetic so I'm leaving it as is for now (after a tweak I just made so that the noise does not reduce the average pixel brightness as it does in the above screen captures). I'm constantly having to revisit lighting so this won't be the last change, but I'm really happy with the way it's looking right now!

If you're looking at the above images and saying "dude you're crazy they are not visibly different" then that may be due to your screen's brightness or gamma, or may be I'm just really trained to see it because of how exaggerated it looks when the game is in motion (seriously it looked mega bad when two coloured lights "merge").

Splatting some Worms

The lighting looks a bit flickery in this one, but that's just gif colour limitations at work. The splatter effect here came out really well. I ended up doing it all with shader after a long time spent trying to hand draw "splat" sprites. I used turbulent noise instead of the regular cloud-like noise for the distortion to make it look really... "blobby".

Any way, everything is coming a long great. Soon I'll have something I could possibly release an alpha version of to any kind folk that would like to test it out and give me some feed back!


Looking good so far. Are you going to replace the mouse-cursor with a crosshair/laser-sight soon? That would immediately make a huge improvement to the game.

Thanks Cranktrain! Yes the cursor won't be visible in the finished game! I've already implemented a software cursor and have a little debug option to hide the standard cursor. The cross hairs "bloom" to show how much accuracy you're losing by spraying and praying.

I've also put up a new intro animation that came together really well I think. I reused my blood splatter shader for some slick paint splash effect.

(2 edits)

Pathfinding

Woo, getting the path finding for enemies done finally. This is just a greedy heuristic so paths aren't optimal yet, but it's blazing fast and has a relatively small memory foot print.

Going to try to get the A* heuristic in and then rig up a very simple patrolling enemy now.

This was a lot of fun to figure out. Given the fact that rooms are procedurally generated and don't quite conform to a grid, I had to do a bit of hackery to get this working but it's getting there.

Edit: okay, A* implemented properly. I also added diagonal edges to the graph, with a greater cost (√2 instead of 1).


Ammo, Reloading, and UI

Systems are starting to come together! This morning I finally got around to implementing ammo. Up until now I've just had inifinite ammo. Also, part of the UI is now functional, specifically the rounded bar on the cross-hairs (which represents what percent of your ammo is left) and the bottom right text display of loaded ammo / reserve ammo.

I decided to go the "Magic Clips" route in terms of ammo. That means if you reload with a couple bullets left, those bullets magically end up back in your reserve. I find this less confusing. Also I think it would be bogus if you didn't reload just to save a couple of bullets, and then the next room you enter is a swarm where you'd want a full clip.

The other thing going on here is the reload animation... because I use IK for the arms, I had to change up how the IK targets work. While you're reloading, the IK targets are driven by animated invisible transforms that are relative to the weapon. It used to be the Humanoid class just said "if you're holding a weapon, put your hands at these spots relative to the weapon transform".

This new way is going to be a lot more flexible, and will make other things like pump-action shotgun's way easier.


COMING SOON: The Stats and Perks System aka. the cool part of this game

(2 edits) (+1)

No weapon? No problem!


Your fists are deadly weapons! Guns, ammo and melee weapons are all going to be abundant in EDM. But if you're ever in a jam and have no other option, you can always resort to fisticuffs. Note that in this gif, I have a bunch of hidden +Damage perks. I may include some crazy perks that would allow a One Punch Man build though...

Are you planning on doing a beta of your game to get feedback anytime soon?

(+1)

Perhaps! My goal right now is to have enough of the game built that I can produce a compelling Green Light trailer. A beta is certainly possible and if I do, this will be where I tell people!

(18 edits)

Road to Greenlight

I'm not dead and neither is this project. I was knocked out by illness for the past couple of weeks which really sucked. Staring at a computer screen for more than an hour caused serious head aches and physical pain in my eyes. Really not a fun experience. But I'm back on my feet, trying to eat healthy and exercise every day so I can stay healthy.

I originally wanted February to be the month I got all the assets and video I needed together to put up a Greenlight project but it's now looking like that will be the goal for early March. To stay focused and make sure I get there, I've now put together a rough road map of features I'll need to implement to have a really solid vertical prototype. Now I know you don't need a working vertical prototype to get on Steam or fund a Kickstarter or anything like that. At the end of the day you can fake all the features that haven't actually been implemented with a little bit of movie magic. Personally, I think this strategy is dishonest and I'm against show casing a bunch of shit that isn't/never will be in the game. Instead, I'm going to capture actual in game footage for the majority of the trailer, use actual music produced for the game, and feature all the things you'll actually find in the game as it runs today.

So without further ado, the master list of:

      • Weapon Popups for interaction
      • Revamp room placement and add more door connections
      • Implement Health
      • Implement Stamina
      • Implement Death
      • Add the Powerup Machine (and name it)
      • Implement several of the planned Perks (not listed here because there are far too many)
      • At least 2 More Enemies
        • Humanoid-like that use weapons
        • Another bug/parasite thing
      • Item Drops (uncrossed ones are easy to add but dependent on other systems getting done)
        • Med Kits (health)
        • Ammo Crates (ammo)
        • Grenade refills?
      • Damage Text
      • Grenades/Bombs
      • Several Weapons
        • Shotgun
        • SMG
        • 6 Shot Revolver
        • Energy Sword
        • Grenade Launcher
      • Make Thrown weapons deal damage
      • At least 1 Boss Battle
      • Overhaul rendering so I can do distortion effects
      • Implement HUD Map

strikethrough = finished Task

bold = current task

I will try to ONLY tackle items on this list and not distract myself with other features or todo's which are not important or completely irrelevant. Like the intro screen: cool looking thought it was, it was a waste of time. I probably won't even use that graphic in the GL trailer, but we'll see. Some of these tasks obviously vary in size, implementing health and stamina are nearly the same task seeing as it's mostly UI binding, but an entire Boss fight is massive. If a task is being broken into small parts, i'll update this list or make a dedicated post talking about that task.

(6 edits)

Other Tasks

I like the idea of having a road map and trying to stay focused. I've always sort of had a system, but rarely anything concrete (txt docs, scribbles on sheets of paper, post it notes, etc). However I think it's important that just because a task doesn't fall in the realm of things I need to get done before I can move the project forward, doesn't mean that task should go unaddressed. Bugs are a special case that should be cataloged or possibly addressed as soon as they crop up depending on their severity. But what about the other stuff? Small features and fixes I'd like to put in...

Well without futher ado, here is my list of:


      • Melee attacks with both hands alternating
      • Bigger melee boxes and juicier effects
      • Make swarm critters telegraph their attacks
      • Controller Support
      • Factor Luck stat in to drop rates
      • the ability to cache a weapon and carry two, one in hand and one on back
      • Fix the light flickering issue where colliders overlap
      • Alien Metal (currency) - demoted from main list on 2/29, shops and currency aren't essential for the vertical prototype

This list can shrink and grow, tasks could be promoted to the other main list, and tasks can be demoted from the main list to this one. For example: enemies telegraphing their attacks was on the original list, but is obviously much less important than many other issues and will make almost no difference to the Greenlight trailer.

I'm also gonna use this post to address what I think is a very reasonable question: Why put these important lists in a forum dev log instead of a Google Doc, Trello, etc?

Well the best answer I can give is: accountability. Maybe only a dozen or fewer other devs will ever read this... but somehow by putting all these goals in a public space and documenting success/failures, I feel like the world is watching. I get the feeling this process is going to be a real game changer for me. If you're reading this and you see a bunch of stuff crossed off the less important list while, or the list is growing out of control while the main issues are going unsolved, please: call me out on that shit.

Okay that does it for now, back to the grindstone.

Map Update


The latest bullet to be checked off my todo list was a HUGE SUCCESS. Oh my god I must have been drunk when I wrote the first pass of the map generation. The new version is ~300 lines of code shorter, supports arbitrary room shapes (notice the L shaped corridors that are tightly packed in), and runs faster (mainly by eliminating this bat shit crazy thing it used to do that actually checked for physics colliders where it was attempting to place a room).

All in all this is just SO much better and I'm really excited to work with level generation now. I had been dreading it because I knew I left the code in rough shape after my first pass at it. Now I'm excited to add more rules and logic that will create more interesting dungeons. Bonuses from the new hotness: extra door connections (including redundant ones), having corridors always lead to rooms containing something of interest, preventing corridor-corridor connections (see top left of image), secret rooms, easier HUD map creation, and so much more.

Radical.

Fire


The gif quality isn't great but here is what fire will look like in the game. I used a rehashed version of the blood splatter shader for the flames, my particle based distortion camera set up, and a fancy trick with my lighting system to make the flames emissive.

The next time you think "I wish I knew how to write shaders", I recommend you take the time to learn them. This crazy looking beast is just the combination of several simple shaders (and a little bit of knowledge of what makes a particle system look nice).


Shaders 101

Took a little "break" from the main development this week to start a little YouTube channel where I'll post some tutorial-like videos from time to time. The response was mixed for my first video about particle systems, but it got some attention. I took the time to plan out and produce a higher quality, more focused tutorial teaching the basics of shaders (specifically CG shaders in Unity). I think it came together quite well and I the response to my style and format was really positive!

So I'll continue make these videos once in awhile. I have about 10 other planned episodes at the moment and I'll break my daily grind working on EDM once a week or so to produce a new video.

Anyway, back to EDM for now, the goal for Green Light in March is still real!

New Title Text

The old logo felt really cheap. I've recently seen like a hundred indie games using that style of 80's retro-sci/Outrun style logo. The rise Synthwave popularity and Far Cry Blood Dragon have certainly made it a common look.

All this lead me to take another stab at the logo. I decided not to use any references or an existing font, and instead tried to make a set of consistent stylized letters that would stand out against the heard. The new lettering came out really crisp and really beats any font I could find and dress up.

This wasn't a main list task, but I decided I didn't want the Green Light trailer to feature the old Title screen. This new title also emphasizes the full name of the game, instead of just the acronym. All in all I'm happy with the new look and looking forward to seeing it animated in the games new title/menu.