branchrust_reboot/main/launcher reload bugcancel
17 Commits over 30 Days - 0.02cph!
Fixed not being able to reload again for a small window if the reload was cancelled via holstering/redeploying
Fixed double reload still possible on flamethrower
Fixed fractional reloading not working
Moved reload timing handling into unscaled time, fixes reloads being rejected by the server when a client is running at extremely low frame rate (< 15fps)
Apply the same fix when going from loaded-> unloaded (should never really happen in reality, but there's no reason for it to take 0.25s)
Adjusted duration between unloaded <-> loaded in crossbow viewmodel to possibly fix the 0.25s delay before firing when a reload on the server takes longer than the client
Affects crossbow and speargun vms
Fixed the double reload bug for all weapons in BaseProjectile
Store a new reload cooldown that is 50% longer than the normal cooldown, cancel it when the client receives the reload (the local ammo changes)
Only need to store this new cooldown in case we don't receive a response from the server because the reload was rejected, in that case the regular reload functionality will start working after a few seconds
Print reload time option now recommends a reload time based on a 0.34ms buffer
Updated both rocket launchers again
Applied fixed timing to dragon rocket launcher
Adjusted rocket launcher reload time to 5.8s, was 6s
This isn't an actual buff as you cannot reload faster than the animation, the animation was 5.8s so there was a 0.2s window where you could trigger a reload again while the reload was still taking place on the server
This resulted in the reload finishing and the ammunition on the client getting refreshed, but at that point the player was stuck in another 5.8s animation before they could fire again
Added a right click context option (Print Reload time) to BaseProjectile that looks at the viewmodel animator and calculates how long the reload anim is (taking into account speed modifiers which were being used in this case)
launcher reload bug fix attempt 1 + dryfire additions/improvements