First of all, there is a minor problem when working with external script files (via dofile() or require in unsafe mode):
Changes in the external script file is adopted immediately during rendering (or perhaps its because of thread copies of the script as discussed earlier). This can cause crashes or inconsistent results (made up of a script in different states).
I guess this is fundamental functionality of the lua "engine", but maybe it can be configured differently, so that the external script is copied before execution and thereby remain consistent during execution.
I don't have a test filter, but it is easy to reproduce, just change and save the external script while the previous state is rendering..
Secondly, I'm facing a strange problem with dofile() and require: At my workstation, these two features work great (when unsafe is enabled of course), but at my home computer, I simply can't get them to work, I constantly get the malformed script error, as if Unsafe is not enabled.. so I'm wondering if there are some special requirements for using these features?