One possible change could be to specify "frames/ticks per second" opposed to the delay between ticks. Perhaps even providing the developer with the option.
tick_per_second = 10 // tick_lag = 1
tick_per_second = 20 // tick_lag = 0.5
tick_per_second = 60 // tick_lag = 0.1667(-ish)
Icon animation time could also use some attention. Right now it appears the animations change each tick as opposed to 1/10th of a second(when using tick_lag less than 1).
This makes it tricky if you wish to change ticks per second at runtime. Requiring you to manually adjust animation times in all of your icons.
Ideally having animation delay being dynamically changed through a variable would be convenient.
Thank you.
Also since we have a world.tick_lag var, having a separate var that is just 1/world.tick_lag wouldn't be all that productive.