However, when I had the client log the commands before sending the XML and terminator were intact. Even more strange, around 90% of the time the same command would report the issue ("Book"). This seems to indicate there is a sizing issue but after spending the morning on Google, I couldn't locate any solid leads.
At least I know, generally, what the issue is. I will resume debugging sometime this weekend.
In other news, I am starting to work on a sequence document, which will list all the different commands and paths through the game. Up until now, this has only existed in my head but it's time to put some of this on paper. I really don't like documentation...