One chip I'm throwing in for discussion - could cEngine and sEngine allow you to include an arbitrary number of hitboxes relative on a single entity? One of the things I've found difficult to work with is that sprites are limited to a single hitbox square for native implementation. As an example, trying to implement something like a semi-circle sword swing could do with a bit of accuracy by changing one large hitbox into two or three smaller ones, without needing to split it up into that many sprites and make sure they are all coordinated.
Originally I was only considering hitboxes and not hit-polys for speed, since that's how I'm used to things working with other engines. Having hit-polys would fix that, but the later conversation about having individual polygons for individual frames is even better. Having the hitpoly id(s?) returned on collide would save the trouble of having two individual entities, since one entity can, at that point, do all the important things I can think of that a composite entity would, since you can have one script manipulate them both.
SEngine.entity_Id["Jeff"].queue.push({direction:"west",ticks:10});
SEngine.prototype.Idle = function(){ return (this.waiting == this.entities.length);}
If your test ran at ~60 FPS with 1000 entities on screen, then that's quite a bit better than what we currently have already. Sir Boingers started slowing down on my previous second-gen i7 when I added more than ~50 cupcake sprites in a single map.Speaking of collision detection and performance; would such an element be toggleable so that entities that don't need that feature won't waste their time on it? (And the same for some other components, perhaps?)
Everything should only happen if needed but you still have to loop through the whole list of sprites and st least check if it's needed or not or do you.... I may have just thought of another optimisation.
Well, to be fair, every single entity was sending out COMMAND_ANINATE commands every single frame, but yeah, the frame rate got diminished quite quicky. It would be kinda nice if auto-animation could be part of the map engine itself, I suppose.