Eggs-D-Studios / wos-issues

Waste of Space bugs, suggestions, and other feedback
10 stars 0 forks source link

Motor Joints of Servos and Motors Spawning Incorrectly when Loaded by Model Loader #362

Open CL-2812 opened 2 months ago

CL-2812 commented 2 months ago

Guidelines

Version

Main (Production)

What happened? What did you expect to happen?

When you spawn Servos and Motors by Model Loader, the motor joint always spawns [(default length)/2] studs away from its center. This behavior is invariant to its size.

For Motors with default length 3, this means the joint always spawns 1.5 studs away from its center. For Servos with default length 2, this means the joint always spawns 1 stud away from its center.

This is an issue because when the motor/servo is resized, the motor joint may spawn in clipped inside/floating away from the motor/servo. This glitch is not purely visual, which means the parts attached to the motor joint gets clipped/floated too.

Stagnant Duplicate Reports:

https://github.com/Eggs-D-Studios/wos-issues/issues/140

This stagnant report was created when the bug was discovered in staging. Unfortunately, it was never reviewed. The bug eventually got pushed to production.

Note that the motors/servo not spinning issue mentioned in the stagnant report was fixed.

How can we reproduce this bug?

See below model {"m":null,"t":"buffer","zbase64":"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"} with image of it in studio: image

  1. Spawn model with model loader
  2. Compare model in game with model in studio

Expected buggy behaviour: image

Frequency

Always

Joe-Derp commented 2 months ago

true i remember this being a thing i wrote the hinge code and it sux idk, theres probably a weird specific order of function calls that need to be made that arent with the model loader any more

CL-2812 commented 2 months ago

New discovery: issue exists with driveboxes too See Issue https://github.com/Eggs-D-Studios/wos-issues/issues/363

Funnily enough with other parts such as iron or airsupply this doesn't happen. Probably some bug specific to motors and servos. (and other parts that comes default with a motor joint)