Difference between NWVar and NW2Var

Where is the difference between NWVar-Functions and NW2Var-Functions?
So for example where is the difference between GetGlobal2Bool and GetGlobalBool or Entity:SetNWString() and Entity:SetNW2String()?

The NW2 Functions aren’t documented and the only thing about them is this: http://wiki.garrysmod.com/page/GM/EntityNetworkedVarChanged

But there is nothing really useful about these functions.

Normal NWVars are crappy and unreliable, NW2Vars are made from scratch with the same system that networks all the entity data in source (positions, angles, and so on).

They’re pretty much DTVars under the hood except with a limit to up to 4096 variables on an entity compared to the 64 by normal dtvars.

And they’re not documented at the moment because the way they would’ve replaced normal nwvars would’ve gone unnoticed UNLESS someone is doing some stupid shit such as ent:SetNWFloat( “var” , Entity( 1 ) )

( And from when _Kilburn tried to replace them initially most scripts were actually doing that stupid shit, but they were retired due to crashes that are now fixed, and nw2vars ready to use now )

I’ve been using them since april that i’ve started to develop an entire gamemode, i haven’t seen any issues more than some networking delay in names, but i think i would get the same behavior with nwvars
Also, i don’t like the fact i can’t nullify them :confused:

Then I’m continue using NWVars.
The main reason why I asked this was because of the hook I linked in this thread.
I searched for a way to check if a NWVar is changed. And at the beginning I only found this with NW2Vars.

But now I know that I can use NWVarProxy.
But is nullifing NWVarProxies possible, or not?
So for example Entity:SetNWVarProxy(“fancyvar”, nil) doesn’t throw errors?

They are under the hood in my gamemode for almost everything that is entity related and they are working excellent so far, best part is that prediction works fine with them.