Мда, забавно.
Про использование lock у меня все правильно написано. Ни ошибок, ни дезинформации нет. Вопрос только где и как блокировку использовать.
Чем поможет лок в проблеме когда у человека одно поле разделяется несколькими скриптами? Лок может помочь только избежать ошибок совместного доступа и все. Но никак не избавит от самого факта этого доступа.
А вот про то, что статическое поле одно на все скрипты, это вы ошибаетесь. Лаба каждый скрипт, и даже копии одного и того же скрипта, загружает и выполняет как отдельную самостоятельную сборку. Т.е. создает в памяти копии кода скрипта в виде .....
.....
перезапустить скрипт, как использоваться будет уже другая сборка и другое поле и ранее сохраненные в него значения будут недоступны.
да так и есть, если копать в детали. Но этим вы только больше запутали проблему

. Совет был просто отказаться от статических полей и все.
ПС: просто не нужно использовать стат полей и все. Ищите другие подходы, более стандартные для тслаба.