emoticons rely on the current game tick, which is sent with each snapshot: https://github.com/ddnet/ddnet/blob/master/src/game/client/components/players.cpp#L605-L619
Snapshots are only sent every second tick with sv_high_bandwith 0 (default), which causes the emoticons to not look good
on nobys server you can see how smooth emoticons should look like
i tried to "fake" that snap inbetween with an empty snap only containing the current gametick, so that emoticons would look smoother, but that didnt work out and only gave me weird stuff like flickering scoreboard and others xD
I have no idea if its even possible to do so, but it sounded like a good idea to use a snap empty between each normal snapshot
because i can definitely not go with high bandwith mode for my 128 player server, tried that that would be too much cpu usage, i already optimized many parts of my code to fit 128 players
17:41
smooth emoticons is a touch itself i really love, and I would really want to hack it in somehow without sending a snapshot each tick
17:41
I had this in mind because I thought the server is sending an empty snap whenever nothing has changed, maybe i implemented it wrong but i dont know
@fokkonaut said that sending more gameticks made the emoticon smoother, so I tried to look at the clientside render code. Does this fix it? @fokkonaut.
Checklist
Tested the change ingame
Provide...
I rememner playing fng and yeah, I also felt that those emoticons there were so smooth and their cooldown/delay was perfect when you spam your emote key.
Its not, sv_high_bandwitdth just sends snaps every tick instead of every second tick. With each snapshot the clients gets to know the current m_Tick, which means with sv_high_bandwidth 0, the client only gets every second tick, or knows about every second tick, which slows down the animation or makes it glitchy/jumpy