I don't know what is causing these problems but:
1. Whenever a particular player is on the server, stuff breaks. Such as him not properly dying and being moved to the dead team. If he dies, people can still hear him talk, the round wont end, his name will be visible in spectator, etc. What could be the cause of this?
2. The only thing I've done very recently to this user was add his ID to a group. When he joined, he was in the group I added him to. But his pointshop did the common glitch where his stuff didn't show up. So he rejoined and his pointshop stuff showed up, but his rank was gone. I re-added him to the group by username instead of Steam ID like last time and ever since then it's been a problem.
3. As soon as this player leaves everything is fine. I have a round counter that lists how many Traitors, Detectives, Innocents there are per round. When this player is on the server it glitches out and gives an amount totally larger than possible.
Update: I kicked him from the server so he could rejoin. He rejoined and lost his rank. When I look in data/ulib/users, he's in there listed as "User". This is obviously not normal as users aren't supposed to be listed in here unless they have restrictions/privileges, which he has none.