-
-
Notifications
You must be signed in to change notification settings - Fork 451
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vehicle damage sync is incomplete #3997
Comments
It's disabled for purpose. onClientVehicleDamage causes massive event spam on the client side. Try to collide with a wall in a vehicle, and you will get an event every frame. |
Regardless, these packets should definitely be validated, because this way a player with malicious intents can damage all vehicles on a server, which may not seem like a big deal in some game modes, but in a roleplay game mode it can ruin the entire experience, in fact we are talking about a fundamental bug |
Fixing this bug would significantly improve RP/RPG servers. Unfortunately, there are still other security issues related to vehicles. A malicious client can, for example, instantly repair a vehicle or launch another vehicle — and even players — far away, completely ruining the experience for others. |
Currently the two event I was thinking that the two event are look-alike so they should share the same params as well, so we wouldn't have to rely on client code. Maybe another solution could be to divide vehicle damages into more events, so not one event will be spam-triggered for everything. Like creating two new events: The Only downside is that there could be problems with projectiles, explosions, player created fires - these might not trigger the pedDamagesVehicle event. |
No. The game triggers "onClientVehicleDamage" for every damage source, and the server triggers "onVehicleDamage" after health changes in vehicle sync packages. Cheaters don't send any "damage" packets. There are no "ondamage" packets for vehicles at all. Only a victim syncs vehicle health. If the game sends "onClientVehicleDamage" to the server for every damage, it might cause network troubles and disconnects to victims. It gives cheaters a more advanced tool to cheat. If you need information about damage sources, you need to aggregate it on the client, filter it, and send it to the server. |
Describe the bug
Vehicle damage synchronization is incomplete. The
onVehicleDamage
event should include all the parameters thatonClientVehicleDamage
provides, but this is not the primary issue. The main concern is that several validations are missing due to this incompleteness, allowing a player to damage or destroy a vehicle by sending packets. Related to #3943.Steps to reproduce
giveweapon 31
and press Enter (this simulates a cheater obtaining a weapon).cv admiral
and press Enter.Version
No response
Additional context
Client: v1.6.0-release-22934 (Windows 11, 64-bit)
Server: v1.6.0-release-22934 (Windows 11, 64-bit)
Relevant log output
Security Policy
The text was updated successfully, but these errors were encountered: