Describe the bug
After replacing a vehicle model (even with the default/base vehicle model without any modifications), it becomes impossible to install certain tuning parts (verified with spoilers). The issue most likely appeared due to commit 3db6667.
If the vehicle already has a tuning part installed, that part disappears after the model is replaced. Additionally, getVehicleCompatibleUpgrades returns an incomplete list of compatible upgrades.
Steps to reproduce
- Check the list compatible upgrades
- Optional: Install a spoiler, e.g. 1003 (for the Sultan).
- Replace model
- Check the list again.
- Observe that the spoiler is gone and the list is incomplete :(
Or...
- Start resource 4l_test_tuning.zip
- /cv sultan (& enter)
- /add -> /check -> /replace -> /check
Version
Client: >= 1.6 23729
Additional context
r23728
(Before and after replacement)

r23729
(Before)

(After)

Relevant log output
getVehicleCompatibleUpgrades(veh, 2) -- result { 1000, 1001, 1002, 1003, 1014, 1015, 1016, 1023, 1049, 1050, 1058, 1060, 1138, 1139, 1146, 1147, 1158, 1162, 1163, 1164 }
getVehicleUpgradeOnSlot(veh, 2) -- result 1003
engineReplaceModel(dff, 560)
getVehicleCompatibleUpgrades(veh, 2) -- result: { 1138, 1139 }
getVehicleUpgradeOnSlot(veh, 2) -- result: 0
Security Policy
Describe the bug
After replacing a vehicle model (even with the default/base vehicle model without any modifications), it becomes impossible to install certain tuning parts (verified with spoilers). The issue most likely appeared due to commit 3db6667.
If the vehicle already has a tuning part installed, that part disappears after the model is replaced. Additionally, getVehicleCompatibleUpgrades returns an incomplete list of compatible upgrades.
Steps to reproduce
Or...
Version
Client: >= 1.6 23729
Additional context
r23728

(Before and after replacement)
r23729

(Before)
(After)

Relevant log output
getVehicleCompatibleUpgrades(veh, 2) -- result { 1000, 1001, 1002, 1003, 1014, 1015, 1016, 1023, 1049, 1050, 1058, 1060, 1138, 1139, 1146, 1147, 1158, 1162, 1163, 1164 } getVehicleUpgradeOnSlot(veh, 2) -- result 1003 engineReplaceModel(dff, 560) getVehicleCompatibleUpgrades(veh, 2) -- result: { 1138, 1139 } getVehicleUpgradeOnSlot(veh, 2) -- result: 0Security Policy