(PGS) Apparent bug regarding sleeping parts

I know there are a handful of similar threads, but it has been recommended that a new topic be opened for each individual case.

Introduction
I’ve been working on a catapult that consists of a few different constraints, and I noticed that it didn’t fire on occasion. I had never really heard of sleeping parts up until just recently, but it seems as if it is a frequent issue.

Constraint Details

In the case of my catapult, the arm is pulled back by a RopeConstraint, which creates tension between two SpringConstraints. A single HingeConstraint sets the pivot point of the arm.

Everything else is connected with WeldConstraints; however, this shouldn’t make a difference as the problem consists even when the frame is anchored. The RopeConstraint is simply disabled upon launch.

Description
The arm typically requires a physical interference/interaction (like walking into it) before moving despite no longer being held back by the rope. I have tried varying the projectile (toggling Massless and changing the shape) and have verified that the geometry of the bucket resembles its appearance.

Video

Geometry

Reproduction
The behavior described isn’t guaranteed to occur 100% of the time, but I think it’s worth observing when it does.

Catapult.rbxm (32.2 KB)

Steps

  • Insert the attached model
  • Go into a test session as a client
  • Stand near the catapult as it reloads (don’t move)
  • The first shot is almost always a dud (the projectile phases through the catapult arm for some reason)
  • Wait for the next shot
  • If you didn’t move, it should have remained in the same place despite not being restrained
  • If you did move, it should have launched the projectile as expected

I’ve learned that contact is only necessary in certain cases, while most incidents simply involve some sort of movement within close proximity.

4 Likes

These issues are extremely prevalent in even the most basic cases. As such problems persist, constraints are becoming increasingly more difficult to implement into practical game mechanics.

TurningPlatforms.rbxm (4.3 KB)

3 Likes