joint

A physics joint to another object while the game plays: hinge (a door, a lid, a wheel, a see-saw), ball (a lamp on a chain, a wrecking ball), rope (only pulls: a swinging sign, a rope bridge's planks, a hanging crate), rod (holds a fixed distance), slider (a drawer, a piston, a lift) or weld (glued until it breaks). This object needs a collider and a dynamic rigid_body; the other any collider, or none (`to` empty: fixed to the world). A motor turns a hinge or drives a slider; break_force makes it snap (scripts get onMessage(self, "joint_break")). Many links at once (a chain, a rope bridge): the physics_rope tool.

In scene text

joint { kind "…"  to "…"  anchor (0, 1, 0) }

Add it in the Inspector (Add Component), in scene text as above, or ask your AI. Fields you leave out keep their defaults.

Fields 20

FieldTypeUnit / rangeWhat it does
kindtext—hinge, ball, rope, rod, slider, spring or weld.
totext—The other object's name. Empty: fixed to the world at the joint's point.
anchor(x, y, z)—Where it joins, in this object's own frame (a door's hinge edge, a lamp's hook).
other_anchor(x, y, z)—Rope or rod: where it ties on the other object (its frame), or a world point when `to` is empty.
axis(x, y, z)—The hinge's turning line or the slider's line, in this object's frame (a door: 0,1,0).
minnumber-360 … 360Hinge: the furthest it turns one way from where it was placed, degrees (≤ 0). Slider: metres. Both 0: free.
maxnumber-360 … 360Hinge: the furthest it turns the other way, degrees (≥ 0). Slider: metres.
conenumberdeg, 0 … 180Ball: the widest it tilts from where it was placed (0: free).
lengthnumberm, -1000 … 1000Rope or rod length (0: as far apart as they were placed). Spring: where it pulls to along its axis, metres from where it was placed (0: back there); set it from a script to punch.
motor_speednumber—Motor: a hinge turns this many degrees a second, a slider moves this many metres a second.
motor_forcenumber0 … 10The motor's strength: N·m for a hinge, N for a slider (0: no motor).
frictionnumber0 … 100Resistance in the joint, N·m (a stiff old door).
break_forcenumberN, 0 … 100It snaps above this pull (0: never). About 10 N holds 1 kg.
pintrue / false—Also hold it at a second point (pin_anchor), free to turn there: a rope bridge's last plank tied to the far post, a sign on two chains.
pin_totext—The second point's object (empty: fixed to the world where it was placed).
pin_anchor(x, y, z)—The second point, in this object's own frame.
ontext—
stiffnessnumberN/m, 0 … 10Spring: how hard it pulls toward `length`, newtons a metre (a glove on a coil spring: 2000-6000 for a few kg).
dampingnumberN·s/m, 0 … 1Spring: how much it is slowed (0: it bounces on; about 2·√(stiffness·mass) settles it with no bounce).
cablenumberm, -1 … 1Rope or rod: how thick it's drawn while the game plays (-1: a rope 2.5 cm, a rod 4 cm; 0: not drawn, the scene has its own).
Arcwright Beta 2 (0.4.0) · generated from the engine source (25e375c86)Something wrong or missing? Tell us
Download Arcwright free