I found the lag compensation doesnt work on parented entities in gmod, so the reason that gmod uses Set/GetLocalOrigin instead of Set/GetAbsOrigin. I made new c++ module that replace them and seem works.
See this the result between GetLocalOrigin vs GetAbsOrigin on post lag compensation position.
csgo source code thats seem uses Set/GetAbs (Origin and Angles).
I found the lag compensation doesnt work on parented entities in gmod, so the reason that gmod uses Set/GetLocalOrigin instead of Set/GetAbsOrigin. I made new c++ module that replace them and seem works.
See this the result between GetLocalOrigin vs GetAbsOrigin on post lag compensation position.
csgo source code thats seem uses Set/GetAbs (Origin and Angles).
Also, don't forget remove the parents check in Entity:SetLagCompensated function after change to use Get/SetAbs*.