The reason is very simple, but might not be very intuitive. When a script is loaded, the entire body of that script is treated as a function and executed, which means that the variable tile is evaluated at script load time. If you take a look at the TFS log, you'll see that script systems are...