String variables are added by NVSE 4. A string is simply some combination of text characters and exists widely in the vanilla game. A string variable allows you to store a string in a similar way to any other variable, and a wide range of functions allow powerful capabilities for them.
String variables are very simple to use, provided you also use Let instead of set .. to .. and 'if eval' instead of simply if. To appreciate the full range of possibilites available, a tutorial is available.
string_var my_string let my_string := "this is my string" let my_string += " and this is Sunny's name: " + $SunnyREF if eval my_string == "this is my string and this is Sunny's name: Sunny Smiles" ; this will evaluate true endif
The ToString (shorthand: '$') function converts anything to a string. Vanilla and some old NVSE functions also require this to use a string_var instead of a string literal:
Print my_string ; * new NVSE function MessageEx $my_string ; * An old NVSE function
string_var my_string int MyInt let MyInt := 5 let my_string := Sv_Construct "the value of MyInt is %g", MyInt