Super Hematoma is a beat-em-up inspired retro multiplayer fighting game which will have you pitted against your friends (or random jerks from the "internet") in brutal street fights. Whether you decide to go it solo or with a group of friends, your Bruiser will be able to bash, bludgeon, and break your opponents using a variety of weapons or even your bare fists. With a variety of arenas and game play modes to choose from, you'll be knocking knuckles with the best of them for hours on end. This project, which is in early development, hopes to bring classic retro pixels and music into a modern multiplayer brawler setting. We're a small team of two independent developers that are working hard to bring something fresh to the table.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

Hey paisanos, Matt's back out of the depths of his nerd cave to give a long overdue update on some game dev stuffs!


So, jumping right in:

A rather modest goal that I had early on was building a default package file format for Super Hematoma to externally contain sprites, level information, game data and the like. I’d build a simple toolset to pre-construct these package files, as well as deserialize resource data back out of them in real time for the game to use. Implementing this “rather modest” goal stretched out across what seemed like an eternity of development time, which can be pinned on a number of reasons (the common “real life happened” cover, caffeine deficiency, the ever-present temptation of having hundreds of little plastic cartridges stuffed full of nostalgia surrounding me at my workstation at all times, the like). Mostly though, it was just bad planning and time underestimation.

Honestly, if making a game (maybe any software? maybe anything?) is something you really want to do, make sure you’ve got your priorities and goals straight from the start; if you’re a tinkerer / crazy nerd, building everything from scratch can be a great temptation, but expect things to proceed slowly. Only do it if you really like doing it (which I do) and have time (oh, uh, about that…). It’s always fun when the todo list grows faster than the completed list. Even when you’re as cool as I am, you can’t defeat common sense.

Anyway, this undertaking coincided with a rather large change in the animation engine to build character sprites out of separate parts, as has been previously explained, and as Steve has so graciously filled pages and pages of our blog with people pieces for. I’d also mentioned the real-time outlining of the characters previously, which has been integrated into the new engine. Data format for descriptions of stages, items, game parameters, etc. will be described in XML files which are currently built into the package files as well.

So, where are we?

Well…

What’s done?

  • Package file toolset that builds package files (“.dat” files), and handles in game asset building
  • All resource management and sprite loading code
  • Separate serialization and deserialization code for all the game assets
  • New sprite animation graphics engine entirely redone with character outlining and scaling working properly
  • All XML/data parsing code
  • XML files themselves
  • New collision geometry added
  • Lots of other small fixes and reorganization
  • Background sprites are now built out of generic static animations and stored with the other object types instead of pointlessly particular data types.

What’s coming up next?

  • Palette swaps are a breathe away and are being implemented in a straightforward DirectX pixel shader
  • Lots more moves! Finally something actually fun!
  • Add items and work out the gameplay mechanics for how they’ll work
  • Important game backbone stuff, like how fighting mechanics, life bars, character knockout and wakeup timers, all that fun stuff
  • New controls for the camera/render system including manual and automatic zooming and better culling for out-of-view sprites

Why did all this take so long?

  • See notes above about “real life” (yeah right)
  • A lot of stuff had to actually be “redone”. I’d basically designed the whole game one way to get things up and running faster, but transitioning it into the current component-sprite-with-outline system required a redesign of a surprisingly large amount of the game (again, see notes above about “bad planning”).
  • There were a lot of breaking changes to the animation engine interface, and I also broke all the transitions between different animation states since those are now handled differently.
  • Had to get a handle on some DirectX quirks that one needs to keep in mind when working with low-res 2D sprite art (eat me, power-of-two size requirements)
  • A lot of offset reading and character piece placement also needed a lot of tweaking and reworking. Essentially, this:
    Broken_character

    needed to become this:

    Working_character

  • Don’t bother making your own 2D graphics engine. It bogs down your timeline :)

Back to Gradius 2! Stay tuned!

Musical Revision

Musical Revision

News

Having opened up the sound of Super Hematoma last week by incorporating the MMC5 sound module for the Rain City theme, I decided to revisit the other...

Chiptune Love

Chiptune Love

News

We began developing our second arena, Rain City a while ago. Basically, it’s our version of beloved Vancouver: complete with rain, neon lights, and...

 Super Hematoma’s First Year Retrospective

Super Hematoma’s First Year Retrospective

News 3 comments

Did you know that over here at Sprixelsoft, we’ve been working on Super Hematoma for just over a year now? That’s right, the anniversary was September...

3D Pixel Effects

3D Pixel Effects

News 6 comments

Getting my head wrapped around doing effects for Super Hematoma has been a real challenge. I actually took some classical animation in college, but that...

Post comment Comments  (0 - 10 of 25)
isbeorn
isbeorn

Hi, did you run out of spare time and motivation?
I really like the style of this game and your updates too. I think a lot of the people developing games here are in the situation where they use their spare time for the development, and it can become very hard to maintain the motivation to keep it up. That's why I'm also interested in reading about how people keep their projects going. I've had several long breaks in my current project. So anyway please keep writing articles with the developers in mind. And I hope you get back to it and keep going! Best of luck.

Reply Good karma Bad karma+1 vote
Guest
Guest

Hi!

Yeah, we had a few problems that caused us to stop working on the game.

First of all, both of the guys working on the game ended up moving out of Canada. And unfortunately laws don't allow for non-citizens to do work while living in the USA... so from a legal stand point we couldn't proceed.

We were also overly ambitious with making a game engine from scratch. The game was running fine on Matt's machine, but not on Steve's. Matt's will to keep working eventually disappeared from a combination of working all day, and then being unable to troubleshoot it in the spare time that he had at night.

Thirdly, realized that the multiplayer component of what we're going for was just too epic of a challenge for what we were capable of doing. Realtime multiplayer online is just not something anyone should be tackling for their first project.

In the meantime, we've both had kids... Matt's still in USA... and for me to continue the game would mean starting code over in Unreal or Unity... something I just don't have the time to do.

Thanks for writing. I'd like to get back into an indie project some time, but having a young kid at home, a full time job, and other personal projects on the go means that indie dev is on hold. Unfortunately the likeliness of Super Hematoma being resurrected is pretty low.

Reply Good karma Bad karma+1 vote
supragamer
supragamer

That last article i found it useless, why ? Caus all of us making games know it's not easy task and how much work and time it asks. You should show videos, and cool stuff instead of telling your life problems caus anyone has life problems and some of us are not interested in that on a game forum.
About project, yes it asks time organisation, and goals organisation, like putting down a roadmap like features for the two next weeks, or that graphics for next week, same for coding part.
I would say you should make the complete core gameplay first, even using sprites made on some minutes. Than refine and make new graphics once that's done.
It's an indie game, but if it was pro, ypu should avoid to post a picture of yourself in that position on the chair, it looks like someone in a lazy position.

Good Luck.

Reply Good karma Bad karma+1 vote
Sprixelsoft Creator
Sprixelsoft

Thanks for the feedback. I was actually a little unsure about posting that article here for the reasons you mentioned. I was thinking it was relevant as it was an update explaining to any followers why there hasn't been a regular update in a while, but you're right that it doesn't -really- belong here as game news.

I've moved it to the blog section on indiedb instead which is a bit more appropriate: Indiedb.com

Reply Good karma+2 votes
kassu27
kassu27

This looks awesome, I like the artstyle and I just want to beat my friends up on this game :D

Reply Good karma Bad karma+4 votes
Sprixelsoft Creator
Sprixelsoft

Thanks!

Reply Good karma+1 vote
brokenknight
brokenknight

A Retro, Multiplayer, Beat-em-up! Sign me up! This game sounds like it's going to be really fun. The dev video was really interesting too. Always nice to see what goes on behind the scenes.

Just curious, what drove you write your own engine?

Reply Good karma Bad karma+1 vote
Sprixelsoft Creator
Sprixelsoft

Thanks for the kind words! To answer your question, curiosity and interest really. That's how I'd always done it in the past and I wanted a set of reusable tools to bring forward to other projects as well.

Reply Good karma+2 votes
TacticalDan
TacticalDan

That's sweet. Looks like a fun game for the apartment.

Reply Good karma Bad karma+3 votes
Sprixelsoft Creator
Sprixelsoft

We certainly hope it will be :)

Reply Good karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X

Only 2h19 min into #FINALFANTASYIV trying to play en français avec mon fils. Mon dieu... T.co

Jul 10 2023 by allegrodigital

Holy moly #FINALFANTASYIV in French is going to take me a loooooong time to get through... T.co

Jul 9 2023 by allegrodigital

I've decided to start working through an old favourite of mine with my kid. Final Fantasy IV! We're doing it in fr… T.co

Jul 8 2023 by allegrodigital

Alright everyone! It's time for a change T.co

Jul 8 2023 by allegrodigital

Montrealgazette.com

Jul 8 2023 by allegrodigital

RT @Bbbn192: Aethereal Wisps #b3d #geometrynodes T.co

Jul 8 2023 by allegrodigital

RT @marcan42: A message about Near from a mutual friend. Docs.google.com

Jun 27 2021 by 8bitcartridge

RT @crt_bot2: T.co

May 27 2021 by 8bitcartridge

Thepoorstudenthobbyist.com I smell a project

May 12 2021 by 8bitcartridge

Y-n10.com Beautiful

Apr 14 2021 by 8bitcartridge