I agree with JustSid,
If you use the same object(s) throughout the game you won't need to free them.
If you are creating a lot of pointers that need to be allocated and then all or many of those objects are discarded during the game then you probably should make a habit of freeing them when they are no longer used.
Obviously larger objects such as entities take more memory and thus more important to free when disposed of.
In my example the object is a struct attached to my character. Even when the character dies and has to restart, I will still be using the same "info" pointer so I won't free it during the game. Even if I were "switching" characters, I could probably still use the same struct and just load in the new character's data from a file.
However, if I make this a multiplayer game and then if players join and leave the game before it is over, their info should probably be freed when they exit.
In the help file, it says about level_load:
Quote:
All current entities in the old level are removed, thus all entity pointers referring to them can't be used anymore.
so I'm not sure how that will effect my situation.