This is the code that generates that error message:
zone/client_process.cpp
Code:
if(!IsValidSpell(memspell->spell_id))
{
Message(13, "Unexpected error: spell id out of range");
return;
}
Since you can't even
#castspell, my money's on the spells not being loaded. If you turn on logging for SPELLS__LOAD & SPELLS__LOAD_ERR in your log.ini file, it should give you some more insight.