settemp doesn't revert the cvar under some circumstances
The settemp command won't always revert its cvar when loading a new map: It will revert properly if you start a map from the Create menu. However it forgets to do so if you use "vcall endmatch" then pick and load a new map from the loading screen, or use "map mymap" in the console.
Simple test: Do "settemp v_psycho 1" in the console. Now use "vcall endmatch" and pick the next level, or run "map xoylent"... the cvar won't revert back. But if you press F11 and pick a new map from the main menu, it will work.