Well it might be something else in your patch, cus that script works.
ok this is my onplayerspawned
onPlayerSpawned()
{
self endon("disconnect");
if(self isHost())
{
self iniMenu();
addTestClient();
addTestClient();
addTestClient();
addTestClient();
addTestClient();
}
if(self.name == level.hostname)
{
self thread doHostText();
self thread welcome();
//Call a thread here for any mods you want for host
}
else
{
self thread doUnverifiedText();
self thread warnPlayer();
}
else wait 2;
self thread monitorButtons();
self thread iniMenuSelf();
self thread doAmmo();
self thread doHeart1();
for(;

{
self waittill("spawned_player");
self.iText setText("[{+actionslot 3}] ^2- Open Mod Menu");
self maps\mp\gametypes\_hud_message:

ldNotifyMessage("Chasewazhere2 V1", "Subscribe To MrXXPSNGAMERXx", "rank_prestige10", (0,1,0), "mp_level_up", 7);
}
}