I am a sucker for side scrolling beat-em-ups; my formative years consisted of shoveling quarters into machines like TMNT, The Simpsons, XMen, and finally in the twilight of the genre's limelight, games like Dungeons and Dragons and Battle Circuit took it to a whole grand new level with infinite promise. Shortly thereafter the genre mysteriously tanked. I blame the advent of full 3D rendering, but whatever.
Long story short, I do appreciate throwbacks to this genre that play smoothly like this game. Animations are well done in that they use both the retro pixel crunchiness and the more modern 2D standard transform-based movements without making either of the approaches feel hacked together or forced. Everything moves at the right pace, the character and enemy speed, reach, and hit reactions just feel right. With one exception. The "boomstick" move almost never hits for any character. It looks like it should have some reach or spread, especially with the knights whose "boomstick" is a big flashy wave, but it almost always passes harmlessly through enemies.
This brings me to my next mixed feeling: you've gone to the trouble of putting together a nice big variety of playable characters, and I tend to like that for a beat-em-up. But since all of them share one move set and similar (if not identical) quantitative abilities, the great selection is reduced to superficial fluff. Check out some of the all time greats of the genre like Knights of Valor and D&D: Shadow Over Mystara and you will see that every character is a very different experience to play, has a different set of combos and specials... that's the ideal model for how to implement a large cast of playable characters in a beat-em-up. Just having the cast like this game is disappointing if you make that comparison, and it leaves this game feeling very much incomplete.
The incompleteness is yet more obvious in the progression of enemies and environments. There simply is none. There are two enemy types and only one room. I do have to give you credit for giving the skeletons a little bit of sense in trying to spread out and get behind me sometimes, but the big red boss relies entirely on his disregard for my attacks. It seems like all I can do there is hit and run, try to stay out of his ludicrous reach. The skeletons, despite their best efforts and numeric advantage, are almost always defeated by spamming XXZZ once they're all on the same side.
By this point, the monotony weighs very heavily on my motivation to climb the leaderboard or to get the next character; the game is not delivering anything of substance once the player masters these two very simple tactics.
I want to encourage you to develop this further, even though I'm sure it sounds like I've made a lot of complaints. The engine is great and plays very efficiently, there are no bugs that I could find, the art is retro-cool, and I had a good time playing it for a while. It's just unfinished. The mechanics for giving a character a decent sized move set are obviously there, as are the beginnings of a viable AI. There's no reason to throw away any of your code or assets, just extend what you've got to make more substantive variety in characters, add more enemies, add more environments. If you do that, you will have a great game that I will enjoy a lot, and you have my word that it will get my glowing review as soon as it's worthy.