Just to explain the variable thing, if a variable is set to 0000, then it is always going to activate (all variables are initially set to 0 when the game starts). If a script activates when you step on it, and you don't change the variable to a different value in the script, the game will freeze because it becomes an endless loop, trying to repeat the script over and over again. You would need to deactivate the script by setting its value to something other than 0.
As for the town's name disappearing, it probably has to do with the fact that the script is active and running when you step on it. If you don't want the script to activate until a certain time, set the script's var value to 0001 instead. Then when you want that script to activate, use another script (dialogue, variable script, etc.) and use setvar to change the variable's value to 0x1.