We are a couple of guys making a game. Game entities' data are stored in nested arrays. The top level array contains arrays, which correspond to one entity each. By entity I mean the game objects' parameters stored in the array and the starling object referred to in the array.
These sub-arrays have a reference to a starling movieclip or a starling sprite and around 15 other variables for that entity. The variables are therefore not stored in the movieclip/sprite itself for various reasons. The possibility of Blitting is one of them.
The question is then how to organize this the best way and eventually implement recycling of the starling objects to get less problems with garbage collection. I have three suggestions, but I am aware, that something else could be better.
1) have one 'graveyard' container for each class of object: one for asteroids, one for playershots, one for .... Whenever an entity is destroyed, corresponding object will go to the correct graveyard. Whenever an entity of same class should be created, then reuse one from corresponding container if it holds any.
2) One big container for all destroyed movieclips and sprites. Whenever a sprite or movieclip would spawn, reuse the object from this container if it holds any. Correct Animation should also be set. I don't know if that takes a lot of cpu or is possible at all.
3) Let garbage collection take care of destroyed movieclips and sprites. Don't recycle them.