For knife you can get better results, as knife doesn't have client prediction. However, it will glitch a bit on deploy, so all you have to do to fix this(and without causing any side effect) is to set CD_ID to 0(only when the active item is knife) in UpdateClientData.