WalkingEvents and WebWalkEvents block the rest of your script from running as long as they are being executed and as far as I know onMessage is run after (or before, don't remember) your onLoop is run so if you do have a walkingEvent that takes a while it could be stopping your onMessage from running. However I can't say I've ever experienced these issues as I've never needed an onMessage to run while walking.