mwscript variable index binding is inconsistent
Suppose we take this snippet and apply it to Fargoth who has a script that defines a single variable called state.
world.mwscript.getLocalScript(actor).variables[index]If index is state a number will be returned. If it's State, nil is returned. However if we try to assign it variables.State = 1 will set state to 1. This is a minor regression from !3811 (merged), but we've never had a release that didn't have both that MR and these bindings.
I'm inclined to say we should just make sol::meta_function::new_index case sensitive and remove the two instances of Misc::StringUtils::lowerCase in the file. But we could also adjust sol::meta_function::index to lowercase its key before passing it to hasVar.