It's been a while. Mostly the delay of updates had to do with the fact that I moved from Berlin to Toronto.
Now that I'm settled I pushed Backtrace for the past weeks.
GIF or it did not happen:
CODEFirst of all ultimately I chose C++ with SDL2. Sorry FNA/MONOGAME and Unity
After over-designing it went back and created a thin library called pixboy that I can shuffle general purpose stuff into.
I use
Nathael's cool light libraries: ValTree and EntityFu.
On top of the ECS I have a small FSM for scene management and easier input/animation states.
Oh, I also have a behavior tree implementation that is not in use yet but I anticipate it to be fun for enemy and NPC AI.
Currently I am on SDL's simple 2D Accelerated Rendering on a 160x144 RenderTarget. In case I need shaders I might switch to
sdl-gpu, which should not be a big deal as pixboy wraps all graphics calls. But considering the minimal output requirement of this game it might never happen.
Maps come from Tiled. I use tmxparser from github for this.
Btw: at work I learned about Rez
https://github.com/nerdvegas/rezCheck it out, it is an amazing system to manage your builds and libraries without messing up the system. I'm on Fedora here and it works like charms. If anyone is interested I can pitch it here in future.
PIPELINEaseprite for pixel and TexturePacker for atlases. I wrote python script that takes care of automatically exporting asesprite animations and wrapping them up with TexturePacker. As mentioned I use ValTree so I wrote an exporter.
As for collision boxes and the gun positions: I created two extra layers: _COLLISION and _GUN.
Part of my pipeline extracts the bounding box from the images and appends to the ValTree data from TexturePacker.
Similarly it creates a vector from green to blue from the _GUN layer. For this I used Python's PIL.
That is pretty neat as it makes the process of defining different guns for all 5 directions easy. I theory I might add additional vector or rectangle layers if I need more metadata in future.
On the left is my configuration called "sogmakefile", on the right is part of the output Valtree data:
The dojo -1 means that it uses the latest source version, e.g. dojo_v025.ase. I could define an explicit version in case I do not want to break stuff.
GRAPHICSBiggest change from the mockups: I redid the character. He is smaller now and simpler.
The size was needed to allow for more action on the tiny 160x144 screen. The colors make him easier to read I hope. I needed to add an outline shadow on one side so he can work on all possible backgrounds:
Everything you see is still WIP graphics and animation. Hope you like it anyway.