Please describe what is happening when it doesn't work. My guess is the tower is being placed inside the castle. Try this in the tower init:
this SetPos [this GetPos Select 0, this GetPos Select 1, height]
Set height to the height above ground level in metres and then preview to see if the tower is set correctly.
Please make sure you post to the appropriate forum. This question should be posted under beginners scripting, not multiplayer, because your question is not specifically a multiplayer issue.