Looks like TF2 (possibly others) don't fire CForwardManager::OnSpectatorExecuteStringCommand
anymore when built against the public SDK.
I want to say it's not hooking against the correct offset but I'm not certain on how to confirm that other than the forward not triggering.
It's not hooking correctly on IClient but works fine with CBaseClient.
I'm still working out the issue on an unpushed branch (which uses gamedata for offsets), but there's a few issues that I'd still need to sort out with the message parsing and I wouldn't be able to test full game compatibility since I only do TF2.
Another thing that doesn't really fit as an issue, but I have a couple of branches that add some basic translation support
(one branch only exposes a SourceTV client equivalent to GetClientInfo
as a native, the other only uses it within the chat natives and doesn't expose getters / setters for them). Would you be interested if I submitted a PR on one of those?
Minor update: Pushed out a branch implementing the fixes for TF2.
I'm not sure if it's incompatible with other games.