Page MenuHomeFeedback Tracker

Cannot remove car parts from vicinity menu
New, NormalPublic

Description

For the past few weeks, I haven’t been able to remove car parts from the vicinity menu. They all seem to have the crossed out symbol (similar to no smoking sign). I have to go up to the parts individually and take them to my hands (hold F).

Also, sometimes when you remove the wheels, the cars make a rolling sound. I am usually able to fix this by removing a headlight, but neither the vicinity or ‘take to hands’ option are available.

I played around with the car, taking wheels off and on, and getting in and out. This finally gave me access to the ‘take to hands option’

There are 3 problems here:

1- vicinity menu doesn’t let you remove car parts
2- car makes a rolling sound when certain parts are removed (usually wheels)
3- sometimes you are not even able to take parts directly to your hands (holding F)
BONUS PROBLEM
4- there is a clicking sound when you get close to a car. I’d say 40\50 meter range. It’s just a single click, but it’s very obvious, and just metas the fact that there is a car nearby, even if you can’t see one.

Details

Severity
Minor
Resolution
Open
Reproducibility
Sometimes
Operating System
Windows 10 x64
Category
General
Steps To Reproduce

Just play around with the cars.

Additional Information

I only noticed the clicking sound on the ADA and the GUNTHER. Haven’t tested it with the Sedan.

Event Timeline

scripts\4_World\Systems\Inventory\AttachmentsOutOfReach.c line 18 and line 20 need to be changed from:

if( att_slot_name != "" )
	pos_att = e.GetPosition() + GetAttachmentPosition(e, InventorySlots.GetSlotIdFromString( att_slot_name ) );
else if( slot_id != -1 )
	pos_att = e.GetPosition() + GetAttachmentPosition(e, slot_id);

to the following

if( att_slot_name != "" )
	pos_att = e.ModelToWorld( GetAttachmentPosition(e, InventorySlots.GetSlotIdFromString( att_slot_name ) ) );
else if( slot_id != -1 )
	pos_att = e.ModelToWorld( GetAttachmentPosition(e, slot_id) );

The current code in vanilla does not account for the entities' total transformation, only the position. This change fixes it by converting the model position retrieved from GetAttachmentPosition into a world position.

@Geez the code snippet above wasn't tested but logically the change makes sense so would be worth looking into

Geez added a comment.Jun 29 2020, 1:46 PM

scripts\4_World\Systems\Inventory\AttachmentsOutOfReach.c line 18 and line 20 need to be changed from:

if( att_slot_name != "" )
	pos_att = e.GetPosition() + GetAttachmentPosition(e, InventorySlots.GetSlotIdFromString( att_slot_name ) );
else if( slot_id != -1 )
	pos_att = e.GetPosition() + GetAttachmentPosition(e, slot_id);

to the following

if( att_slot_name != "" )
	pos_att = e.ModelToWorld( GetAttachmentPosition(e, InventorySlots.GetSlotIdFromString( att_slot_name ) ) );
else if( slot_id != -1 )
	pos_att = e.ModelToWorld( GetAttachmentPosition(e, slot_id) );

The current code in vanilla does not account for the entities' total transformation, only the position. This change fixes it by converting the model position retrieved from GetAttachmentPosition into a world position.

@Geez the code snippet above wasn't tested but logically the change makes sense so would be worth looking into

Thank you.
We had a different solution in mind but will consider this one :).
Regards,
Geez