A couple of sprite animation suggestions on the playback modes.
Looping and non-looping are great! There are a couple of others that would really save a lot of image space.
Ping-Pong mode
Plays the animation forward, then plays it in reverse, then it loops. Top down walk cycles would be very simple, they would only have to animate a single foot step and , the reverse animation would take care alternate step. Trees swaying in the breeze would take half as many frames to do.
Scripted mode
Scripted mode would let us enter a playback sequence. So if I wanted to do the above ping-pong I would do something like "12345432" for a 5 frame single stride.
Lets say we have a wizard.... He pulls out A hat for 1 spell, and for another he pulls out a magic wand, and for self defense he pulls out a .44 caliber handgun. For each of those animations the first series of frames would be the same, but the last 3 or so would be the different object he produces. After he uses the objects he reverses the animation so it looks like he is returning the item to his robe. The reverse animation would use only duplicate frames.
For those 3 animations it would take a bunch duplicate frames.
There are workarounds to do almost what I am looking for, except the reverse animation. The workarounds would take a lot of extra programming, and probably cause some UN-needed CPU overhead.
Have a nice day.