$result=@user sets a string variable within kixtart, but it won't set an environment variable within the OS.. I basically ended up doing a registry key add, and write to get it to stick, was there an easier way?

If $OSVAL = "0"
COLOR g+/n
? "Please wait, Login Script is setting your environment."
? ""

$Result=WRITEVALUE("HKEY_CURRENT_USER\Environment","USER", "%USERNAME%", "REG_EXPAND_SZ")
IF $Result=0
COLOR g+/n
? "User Variable Has Been Set."
SLEEP 1
ELSE
COLOR r+/n
? "User Variable Not Set, Contact an Administrator!"
SLEEP 3
ENDIF

$Result=WRITEVALUE("HKEY_CURRENT_USER\Environment", "PATH", "C:\;C:\WINNT\;C:\WINNT\SYSTEM32;C:\WORK;F:\P\BAT;F:\P\UTIL;F:\CHART\APPL;C:\WP51", "REG_EXPAND_SZ")
IF $Result=0
COLOR g+/n
? "Path Has Been Set."
ELSE
COLOR r+/n
? "Path Has Not Been Set, Contact an Administrator!"
ENDIF
EndIf

If $OSVAL = "1"
COLOR g+/n
? "Please wait, Login Script is setting your environment."
SHELL "Winset.exe USER=@USERID"
SHELL "Winset.exe COMPUTER=@WKSTA"
SHELL "Winset.exe DOMAIN=@DOMAIN"
SHELL "Winset.exe HOMEDIR=@HOMEDIR"
SHELL "Winset.exe LSERVER=@LSERVER"
SHELL "Winset.exe PATH=%PATH%;C:\;C:\WINDOWS\;C:\WP51;C:\WORK;F:\P\BAT;F:\P\UTIL;F:\CHART\APPL"
EndIf