Didn't bother to read the code throughly, but I noticed some things:
- Don't use fm_util stocks - they're generally slower to execute.
- Why are you de-tagging weak tags; such as bool, float?
- Cache get_user_msgid() ang get_maxplayers() values.
- Your if and switch statements are redundant.
- You coding-style is very inconsistent, keep to one style.
__________________