But if %client doesn't exist, will checking %client.player cause it's own error? If it doesn't, then it is because Blockland suppresses the error because otherwise it would reveal the code in the .DSO files. Besides, checking everything that could possibly go wrong helps to reduce bugs in your code, especially if you go on to use low level programming languages outside of Blockland, where an unchecked null pointer will crash a program rather than silently return false for it's member variables...