I was trying to modify name parameter in incoming connection packet to server of quake 3 protocol 43 with proxocket in myrecvfrom method. Here is my code of myrecvfrom:
First you must be 100% sure that proxocket is loaded, if I remember correctly you have to set a registry key on Windows 7 and above.
Then the find_replace_string function reallocate the buffer if the new string is bigger than the original one, so "buf" will not be updated and there are probably also other downsides because the original buffer is freed as far as I remember.
I double checked and it seems proxocket works good. I think I understand what's the problem. According to server log it received modified packet, however after connection it seems received once more info from client and changed it back. Server log:
Ah right the game commands. The name of the player is "updated" with the cl->userinfo string sent via SV_UpdateUserinfo_f, SV_DirectConnect and SV_UserinfoChanged. Things that you can't change by using a raw socket solution.