Stringvalues are stored internally as a null-terminated character array, unfortunately the bytecode doesn't support accessing the individual characters as an array.
CNamevalues are stored in-engine as a 64-bit hash key to a interned string pool. Class, function and field names are stored in the CName pool, so any methods that need a dynamic reference a scripted component will use a
ResRefvalues are similar to
CNamevalues, except they specifically refer to archive resource files and presumably use a separate optimized string pool. Unlike
ResRefdoesn't have any defined operators.
TweakDBIDis used as the primary key for all
*_Recordtypes stored in TweakDB, the engine's internal database.
==and not equals
!=operators are implemented in bytecode. The redscript compiler provides a number of operator symbols as shorthand.
TweakDBIDis overridden to return
Int32to repeat the string:
!=symbols for the
CNametype, use the
NotEquals(a,b)intrinsic functions for now.