Is this value writeable. If not, this will not be allowed to change by CastleScript assignment and such functions. Note that Writeable = False will not prevent you from changing value internally, by AssignValue or changin Value property directly (that would be too uncomfortable).
Set to True on each assign to Value. You can reset it at any time to False.
This allows the caller to know which variables were assigned during script execution, which is useful if changes to CastleScript variables should be propagated to some other things after the script finished execution. This is essential for behavior in VRML Script node.
Descendants note: you have to set this to True in SetValue.