Yes. I think Ripper got rid of those lookup tables completely in Wolf4SDL too for similar reasons.
* The player's health is stored in the "gamestate" structure. There's no need for that -- it would save memory, and make more sense, to use "player->hitpoints".
I agree. From what I remember, I think this idea (moving stuff from gamestate to player->) was used in memboost too.
* "attackinfo" is defined as "attackinfo", even though it's supposed to be "attackinfo". This apparantly results in a significant amount of near memory being wasted.
Cool. Thanks for pointing this out!