1620: Rewrite of prediction code, with additional prediction (updated) r=def- a=trml
This is a reworked attempt at a rewrite of the prediction code (#464), to allow for more client side prediction. It doesn't fix the duplication of server code, but the client code should otherwise be cleaner. This includes separating prediction code out of gamecore/gameclient, and a refactor of the rendering of predicted characters.
There is also prediction for some new things, and some other changes:
- prediction of laser, shotgun, ninja, fng hammer, pickups and ddrace tiles (freeze/unfreeze tiles with cl_predict_freeze)
- laser and bullets are rendered when you fire them and bullets don't go through walls (when both cl_antiping_grenade and cl_antiping_weapons are enabled)
- antiping for flags
- prediction of dummy input
- an additional smoothing option that attempts to make antiping less jumpy (cl_antiping_smooth)
Co-authored-by: trml <trml@users.noreply.github.com>
Co-authored-by: trml <trml@noreply.github.com>
1628: Make client know about other solo players, fixes#258 r=heinrich5991 a=Ryozuki
When another player is in solo and you are not, you could notice a weird collision and also the hook moving a little towards the solo player. This as been fixed.
It also applies m_ClShowOthersAlpha to other players whenever you are on solo or others are.
It uses the protocol extension thingy.
fixes#258
Co-authored-by: Ryozuki <ryo@ryozuki.xyz>
Co-authored-by: Learath <learath2@gmail.com>
1598: Fix home/end keys in console r=heinrich5991 a=def-
1601: 2 more tries to force DB to respond in UTF8 (fixes#1599) r=heinrich5991 a=def-
1605: Fix memory leak in draggers r=heinrich5991 a=def-
1606: Always initialize m_InfosLoaded r=heinrich5991 a=def-
otherwise it's uninitialized and then read, found by valgrind --tool=memcheck
1607: Enable a few more GCC warnings r=heinrich5991 a=def-
1609: Fix C90 compatibility on Windows r=heinrich5991 a=def-
Co-authored-by: def <dennis@felsin9.de>