Structure.xml Parameters

From Carmageddon Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Structure.xml Parameters

In Carmageddon: Reincarnation, the Strcuture.xml file controls the physics set up, animation and visible damage of a vehicle. It can have numerous properties and parameters set in it. This is a rudimentary list of parameters and properties which can be used in the file. It is currently an incomplete list pulled out of the game's EXE and needs expanding to include the arguments of the various properties and how they are used.

Physics Properties

These are options which are supplied with the CDamageParameters:Add_PhysicsProperty function.

NONE
FRONT_LEFT_WHEEL
REAR_LEFT_WHEEL
FRONT_RIGHT_WHEEL
REAR_RIGHT_WHEEL
FRONT_LEFT_POINT_OF_ROTATION
REAR_LEFT_POINT_OF_ROTATION
FRONT_RIGHT_POINT_OF_ROTATION
REAR_RIGHT_POINT_OF_ROTATION
REAR_LEFT_POINT_OF_SUSPENSION
FRONT_RIGHT_POINT_OF_SUSPENSION
FRONT_LEFT_POINT_OF_SUSPENSION
REAR_RIGHT_POINT_OF_SUSPENSION
FRONT_LEFT_POINT_OF_STEERING
REAR_LEFT_POINT_OF_STEERING
FRONT_RIGHT_POINT_OF_STEERING
REAR_RIGHT_POINT_OF_STEERING
STEERING_WHEEL
LEFT_STEERING
RIGHT_STEERING


Animation Controllers

These are options which go along with the various animation functions to determine what powers the motion of the object.

NONE
STEERING_OVER_TIME
STEERING
ENGINE_RPM
ENGINE_CRANK_ANGLE
WHEEL_ROTATION_FR
WHEEL_ROTATION_FL
WHEEL_ROTATION_RR
WHEEL_ROTATION_RL
GEARBOX_OUTPUT_ANGLE
ENGINE_NORMALISED_RPM_OVER_TIME
ENGINE_NORMALISED_RPM
ENGINE_RPM_OVER_TIME
CONSTANT_OVER_TIME
CONSTANT
WHEEL_SPEED_OVER_TIME
WHEEL_SPEED
SPEED_DEPENDENT_AEROFOIL
AIR_BRAKE
SPEED_OVER_TIME
SPEED
SPEED_DEPENDENT_AEROFOIL_2


Weld Parameters

These are methods of the CWeldParameters class which are used in WELD blocks, which tell the game how objects attach to other objects.


Get_Bounds
Set_Bounds
Arguments: ?????
Description: ???? possibly: Sets the bounding box of a part or weld?

Get_CarSpaceVertex
Add_CarSpaceVertex
Arguments: float x_pos[anyvalue] (position in car space)
float y_pos[anyvalue] (position in car space)
float z_pos[anyvalue] (position in car space)
Description: Adds a vertex to the part in car space

Get_PartSpaceVertex
Add_PartSpaceVertex
Arguments: float x_pos[anyvalue] (position in part space)
float y_pos[anyvalue] (position in part space)
float z_pos[anyvalue] (position in part space)
Description: adds a vertex to the part in part space

Get_VertexColour
Set_VertexColour
Arguments: byte r[0 to 255]
byte g[0 to 255]
byte b[0 to 255]
byte a[0 to 255]
Description: Sets the vertex colour used for the weld

Get_Weakness
Set_Weakness
Arguments: float weakness[0.0 to 1.0 or -2, -3, -4, -5, -6, -7] (0.0 means no weakness, 1.0 means full weakness. Negative numbers are pre-set values of some sort, no idea what they mean.)
Description: Sets how easily the weld breaks.

Get_AbsoluteLimit
Set_AbsoluteLimit
Arguments: float limit[0.0 to 1.0] (No Idea)
Description: ????? possibly: sets the limit on how far the weld can bend?

Get_ChanceOfFailure
Set_ChanceOfFailure
Arguments: int(or float?) chanceOfFailure[0 to nolimit] (0 means no chance of failure, high number means high chance?)
Description: Sets the chance of the weld failing?

Get_Break
Set_Break
Arguments: int(or float?) break[0 to nolimit] (No idea?)
Description: ???? sets something to do with the weld breaking?

Get_GangedBreak
Add_GangedBreak
Arguments: string weldName (Name of the other weld which breaks with this one)
Description: causes other welds to break when this one does. Or is it that this weld breaks when the named weld breaks?

Get_WeldFailurePartEmitter
Add_WeldFailurePartEmitter
Arguments: ???????
Description: Adds a particle emitter to spawn on this part when the weld fails

Get_WeldFailurePartnerEmitter
Add_WeldFailurePartnerEmitter
Arguments: ???????
Description: Adds a particle emitter to spawn on partner part when the weld fails

Damage Parameters

These are methods of the CDamageParameters class which are set in the PART blocks, they control physics, animation, materials, weapons, sounds and particle emitters tied to the object.


Get_Crushability
Set_Crushability
Arguments: float crushability[0.0 to 1.0] (0 = not crushable, 1 = fully crushable
Description: Determines how easily a part is crushed

Get_Resiliance
Set_Resiliance
Arguments: float resiliance[0 to nolimit] (??????)
Description: What does this do?

Get_Stiffness
Set_Stiffness
Arguments: float stiffness[0.0 to 1.0] (0 = not stiff? 1 = fully stiff?)
Description: Determines how easily a part gets bent?

Get_Mass
Set_Mass
Arguments: int(or float?) mass[0 to nolimit] (Mass in tons? or kg?)
Description Sets the mass of a part when it's detached

Get_CentreOfMass
Set_CentreOfMass
Arguments: ???????
Possibly Arguments: float x_pos, float y_pos, float z_pos?
Description: Sets the centre of mass when part is detached

Add_PhysicsProperty
Arguments: string property (This can be one of the following: NONE, FRONT_LEFT_WHEEL, REAR_LEFT_WHEEL, FRONT_RIGHT_WHEEL, FRONT_LEFT_POINT_OF_ROTATION, REAR_RIGHT_WHEEL, REAR_LEFT_POINT_OF_ROTATION, FRONT_RIGHT_POINT_OF_ROTATION, FRONT_LEFT_POINT_OF_SUSPENSION, REAR_RIGHT_POINT_OF_ROTATION, REAR_LEFT_POINT_OF_SUSPENSION, FRONT_RIGHT_POINT_OF_SUSPENSION, FRONT_LEFT_POINT_OF_STEERING, REAR_RIGHT_POINT_OF_SUSPENSION, REAR_LEFT_POINT_OF_STEERING, FRONT_RIGHT_POINT_OF_STEERING, LEFT_STEERING, REAR_RIGHT_POINT_OF_STEERING, STEERING_WHEEL, RIGHT_STEERING)
Description: sets a physics property to the part, usually wheel or steering related

Get_ShapeType
Set_ShapeType
Arguments: string shapeType (This can be one of the following: TIC_TAC_X, TIC_TAC_Y, TIC_TAC_Z. Any others?)
Description: adds a collision shape to the part? seems to only be used on wheels?

Get_Restitution
Set_Restitution
Arguments: float restitution[0 to nolimit] (no idea?)
Description: Seems to only be used on wheels, no idea what it's for.

Get_AlwaysJointed
Set_AlwaysJointed
Arguments: bool jointed (True: joint is always swinging, False: joint is fixed in place until activated)
Description: sets whether a joint always moves or needs to be activated (either by being hit or by flaps)

Set_PreIK_RotateInX
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
Description: rotates part in local X axis before IK is performed

Set_PreIK_RotateInY
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
Description: rotates part in local Z axis before IK is performed

Set_PreIK_RotateInZ
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
Description: rotates part in local Z axis before IK is performed

Set_PreIK_SnapPointToPointOnOtherPart
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
Description: Before doing IK, this part is moved so the thisPart point is positioned at the thatPart point.

Set_PreIK_RotatePointToLineOnOtherPart
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
float lineDirection_x[anyvalue] (Vector direction of the line in other Part's space)
float lineDirection_y[anyvalue] (Vector direction of the line in other Part's space)
float lineDirection_z[anyvalue] (Vector direction of the line in other Part's space)
Description: Before doing IK, a point on this part is rotated towards to the nearest point on a line in thatPart's pace?

Set_PreIK_RotatePointToPointOnOtherPart
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
Description: Before doing IK, this part is rotated so the point is rotated to face a point in another part's space

Set_PostIK_RotateInX
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
Description: rotates part in local X axis after IK is performed

Set_PostIK_RotateInY
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
Description: rotates part in local Y axis after IK is performed

Set_PostIK_RotateInZ
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
Description: rotates part in local Z axis after IK is performed

Set_PostIK_OscillateInX
Arguments: string controlledBy (Which parameter controls the animation)
float ???? (Possibly the minimum degrees?)
float ???? (Possibly the maximum degrees?)
Description: After doing IK, the part oscillates in the local X axis

Set_PostIK_OscillateInY
Arguments: string controlledBy (Which parameter controls the animation)
float ???? (Possibly the minimum degrees?)
float ???? (Possibly the maximum degrees?)
Description: After doing IK, the part oscillates in the local Y axis

Set_PostIK_OscillateInZ
Arguments: string controlledBy (Which parameter controls the animation)
float ???? (Possibly the minimum degrees?)
float ???? (Possibly the maximum degrees?)
Description: After doing IK, the part oscillates in the local Z axis

Set_PostIK_SlideInX
Arguments: string controlledBy (Which parameter controls the animation)
float distance[anyvalue] (The distance the part will move)
Description: After doing IK, slides part in local X axis

Set_PostIK_SlideInY
Arguments: string controlledBy (Which parameter controls the animation)
float distance[anyvalue] (The distance the part will move)
Description: After doing IK, slides part in local Y axis

Set_PostIK_SlideInZ
Arguments: string controlledBy (Which parameter controls the animation)
float distance[anyvalue] (The distance the part will move)
Description: After doing IK, slides part in local Z axis

Set_PostIK_RockInX
Arguments: string controlledBy (Which parameter controls the animation)
float speed[anyvalue] (speed of movement)
float amplitudeInDegress[0 to nolimit] (amplitude of rocking in degrees)
float centreOfRocking_x[anyvalue] (position in local space which the part will rock around)
float centreOfRocking_y[anyvalue] (position in local space which the part will rock around)
float centreOfRocking_z[anyvalue] (position in local space which the part will rock around)
Description: After doing IK, part rocks around the defined point in X axis

Set_PostIK_RockInY
Arguments: string controlledBy (Which parameter controls the animation)
float speed[anyvalue] (speed of movement)
float amplitudeInDegress[0 to nolimit] (amplitude of rocking in degrees)
float centreOfRocking_x[anyvalue] (position in local space which the part will rock around)
float centreOfRocking_y[anyvalue] (position in local space which the part will rock around)
float centreOfRocking_z[anyvalue] (position in local space which the part will rock around)
Description: After doing IK, part rocks around the defined point in Y axis

Set_PostIK_RockInZ
Arguments: string controlledBy (Which parameter controls the animation)
float speed[anyvalue] (speed of movement)
float amplitudeInDegress[0 to nolimit] (amplitude of rocking in degrees)
float centreOfRocking_x[anyvalue] (position in local space which the part will rock around)
float centreOfRocking_y[anyvalue] (position in local space which the part will rock around)
float centreOfRocking_z[anyvalue] (position in local space which the part will rock around)
Description: After doing IK, part rocks around the defined point in Z axis

Get_PostIK_NamedRotateInX
Add_PostIK_NamedRotateInX
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
string childPartName (Name of child part which will rotate)
Description: After doing IK, the child part named in this method rotates in it's local X axis

Get_PostIK_NamedRotateInY
Add_PostIK_NamedRotateInY
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
string childPartName (Name of child part which will rotate)
Description: After doing IK, the child part named in this method rotates in it's local Y axis

Get_PostIK_NamedRotateInZ
Add_PostIK_NamedRotateInZ
Arguments: string controlledBy (Which parameter controls the animation)
float amount[anyvalue] (Degrees to rotate)
string childPartName (Name of child part which will rotate)
Description: After doing IK, the child part named in this method rotates in it's local Z axis

Get_PostIK_NamedOscillateInX
Add_PostIK_NamedOscillateInX
Arguments: ?????
Possible Arguments: string controlledBy, float ????, float ????, string childPartName?
Description: After doing IK, the child part named in this method oscillates in it's local X axis

Get_PostIK_NamedOscillateInY
Add_PostIK_NamedOscillateInY
Arguments: ?????
Possible Arguments: string controlledBy, float ????, float ????, string childPartName?
Description: After doing IK, the child part named in this method oscillates in it's local Y axis

Get_PostIK_NamedOscillateInZ
Add_PostIK_NamedOscillateInZ
Arguments: ?????
Possible Arguments: string controlledBy, float ????, float ????, string childPartName?
Description: After doing IK, the child part named in this method oscillates in it's local Z axis

Get_PostIK_NamedSlideInX
Add_PostIK_NamedSlideInX
Arguments: string controlledBy (Which parameter controls the animation)
float distance[anyvalue] (The distance the part will move)
string childPartName (Name of child part which will rotate)
Description: After doing IK, child part named in this method slides in local X axis

Get_PostIK_NamedSlideInY
Add_PostIK_NamedSlideInY
Arguments: string controlledBy (Which parameter controls the animation)
float distance[anyvalue] (The distance the part will move)
string childPartName (Name of child part which will rotate)
Description: After doing IK, child part named in this method slides in local Y axis

Get_PostIK_NamedSlideInZ
Add_PostIK_NamedSlideInZ
Arguments: string controlledBy (Which parameter controls the animation)
float distance[anyvalue] (The distance the part will move)
string childPartName (Name of child part which will rotate)
Description: After doing IK, child part named in this method slides in local Z axis

Get_PostIK_NamedRockInX
Add_PostIK_NamedRockInX
Arguments: ?????
Possible Arguments: string controlledBy, float speed[anyvalue], int amplitudeInDegress[0-360], float centreOfRocking_x[anyvalue], float centreOfRocking_x[anyvalue], float centreOfRocking_x[anyvalue], string childPartName
Description: After doing IK, child part named in this method rocks in it's local X axis

Get_PostIK_NamedRockInY
Add_PostIK_NamedRockInY
Arguments: ?????
Possible Arguments: string controlledBy, float speed[anyvalue], int amplitudeInDegress[0-360], float centreOfRocking_x[anyvalue], float centreOfRocking_x[anyvalue], float centreOfRocking_x[anyvalue], string childPartName
Description: After doing IK, child part named in this method rocks in it's local Y axis

Get_PostIK_NamedRockInZ
Add_PostIK_NamedRockInZ
Arguments: ?????
Possible Arguments: string controlledBy, float speed[anyvalue], int amplitudeInDegress[0-360], float centreOfRocking_x[anyvalue], float centreOfRocking_x[anyvalue], float centreOfRocking_x[anyvalue], string childPartName
Description: After doing IK, child part named in this method rocks in it's local Z axis

Set_PostIK_SnapPointToPointOnOtherPart
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
Description: After doing IK, this part is moved so the thisPart point is positioned at the thatPart point.

Set_PostIK_RotatePointToLineOnOtherPart
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
float lineDirection_x[anyvalue] (Vector direction of the line in other Part's space)
float lineDirection_y[anyvalue] (Vector direction of the line in other Part's space)
float lineDirection_z[anyvalue] (Vector direction of the line in other Part's space)
Description: After doing IK, a point on this part is rotated towards the nearest point on a line in thatPart's pace?

Set_PostIK_RotatePointToPointOnOtherPart
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
Description: After doing IK, this part is rotated so the point is rotated to face a point in another part's space

Set_PostIK_RotatePointToPointOnOtherPartWithScaling
Arguments: float thisPart_x[anyvalue] (Point on this part to move to other part)
float thisPart_y[anyvalue] (Point on this part to move to other part)
float thisPart_z[anyvalue] (Point on this part to move to other part)
string otherPartName (The name of the other part)
float thatPart_x[anyvalue] (Point on the other part to move this part to)
float thatPart_y[anyvalue] (Point on the other part to move this part to)
float thatPart_z[anyvalue] (Point on the other part to move this part to)
Description: After doing IK, this part is rotated so the point is rotated to face a point in another part's space and scaled so the point is touching the point on the other part

Set_PostIK_RotateVibrateX
Arguments: string controlledBy (Which moralised parameter controls the animation)
float minFreqinHZ[0.0 to nolimit] (The minimum frequency the part vibrates at)
float maxFreqInHZ[0.0 to nolimit] (The maximum frequency the part vibrates at)
float randomFreqPerturbation[0.0 to 1.0] (The fraction of the frequency by which it can randomly vary)
float minAmplitudeDegrees[0.0 to nolimit] (The minimum degrees which the part will rotate)
float maxAmplitudeDegrees[0.0 to nolimit] (The maximum degrees which the part will rotate)
float randomAmplitudePerturbation[0.0 to 1.0] (The fraction of the amplitude by which it can randomly vary)
float vibrateCentre_x[anyvalue] (The point which the part will vibrate around in local space)
float vibrateCentre_y[anyvalue] (The point which the part will vibrate around in local space)
float vibrateCentre_z[anyvalue] (The point which the part will vibrate around in local space)
Description: After doing IK, the part vibrates around the defined centre point in the local X axis

Set_PostIK_RotateVibrateY
Arguments: string controlledBy (Which moralised parameter controls the animation)
float minFreqinHZ[0.0 to nolimit] (The minimum frequency the part vibrates at)
float maxFreqInHZ[0.0 to nolimit] (The maximum frequency the part vibrates at)
float randomFreqPerturbation[0.0 to 1.0] (The fraction of the frequency by which it can randomly vary)
float minAmplitudeDegrees[0.0 to nolimit] (The minimum degrees which the part will rotate)
float maxAmplitudeDegrees[0.0 to nolimit] (The maximum degrees which the part will rotate)
float randomAmplitudePerturbation[0.0 to 1.0] (The fraction of the amplitude by which it can randomly vary)
float vibrateCentre_x[anyvalue] (The point which the part will vibrate around in local space)
float vibrateCentre_y[anyvalue] (The point which the part will vibrate around in local space)
float vibrateCentre_z[anyvalue] (The point which the part will vibrate around in local space)
Description: After doing IK, the part vibrates around the defined centre point in the local Y axis

Set_PostIK_RotateVibrateZ
Arguments: string controlledBy (Which moralised parameter controls the animation)
float minFreqinHZ[0.0 to nolimit] (The minimum frequency the part vibrates at)
float maxFreqInHZ[0.0 to nolimit] (The maximum frequency the part vibrates at)
float randomFreqPerturbation[0.0 to 1.0] (The fraction of the frequency by which it can randomly vary)
float minAmplitudeDegrees[0.0 to nolimit] (The minimum degrees which the part will rotate)
float maxAmplitudeDegrees[0.0 to nolimit] (The maximum degrees which the part will rotate)
float randomAmplitudePerturbation[0.0 to 1.0] (The fraction of the amplitude by which it can randomly vary)
float vibrateCentre_x[anyvalue] (The point which the part will vibrate around in local space)
float vibrateCentre_y[anyvalue] (The point which the part will vibrate around in local space)
float vibrateCentre_z[anyvalue] (The point which the part will vibrate around in local space)
Description: After doing IK, the part vibrates around the defined centre point in the local Z axis

Get_PostIK_NamedRotateVibrateX
Add_PostIK_NamedRotateVibrateX
Arguments: ?????
Possible Arguments: string controlledBy, float minFreqinHZ[0.0-nolimit], float maxFreqInHZ[0.0-nolimit], float randomFreqPerturbation[0.0-1.0], float minAmplitudeDegrees[0.0-nolimit], float maxAmplitudeDegrees[0.0-nolimit], float randomAmplitudePerturbation[0.0-1.0], float vibrateCentre_x[anyvalue], float vibrateCentre_y[anyvalue], float vibrateCentre_z[anyvalue], string childPartName
Description: After doing IK, the named child part vibrates around the defined centre point in it's local X axis

Get_PostIK_NamedRotateVibrateY
Add_PostIK_NamedRotateVibrateY
Arguments: ?????
Possible Arguments: string controlledBy, float minFreqinHZ[0.0-nolimit], float maxFreqInHZ[0.0-nolimit], float randomFreqPerturbation[0.0-1.0], float minAmplitudeDegrees[0.0-nolimit], float maxAmplitudeDegrees[0.0-nolimit], float randomAmplitudePerturbation[0.0-1.0], float vibrateCentre_x[anyvalue], float vibrateCentre_y[anyvalue], float vibrateCentre_z[anyvalue], string childPartName
Description: After doing IK, the named child part vibrates around the defined centre point in it's local Y axis

Get_PostIK_NamedRotateVibrateZ
Add_PostIK_NamedRotateVibrateZ
Arguments: ?????
Possible Arguments: string controlledBy, float minFreqinHZ[0.0-nolimit], float maxFreqInHZ[0.0-nolimit], float randomFreqPerturbation[0.0-1.0], float minAmplitudeDegrees[0.0-nolimit], float maxAmplitudeDegrees[0.0-nolimit], float randomAmplitudePerturbation[0.0-1.0], float vibrateCentre_x[anyvalue], float vibrateCentre_y[anyvalue], float vibrateCentre_z[anyvalue], string childPartName
Description: After doing IK, the named child part vibrates around the defined centre point in it's local Z axis

Set_PreIK_WishboneUpper
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float inboardPivotPoint_x[anyvalue] (Pivot point of the inside hinge in part space)
float inboardPivotPoint_y[anyvalue] (Pivot point of the inside hinge in part space)
float inboardPivotPoint_z[anyvalue] (Pivot point of the inside hinge in part space)
float outboardPivotPoint_x[anyvalue] (Pivot point of the outside hinge in part space)
float outboardPivotPoint_y[anyvalue] (Pivot point of the outside hinge in part space)
float outboardPivotPoint_z[anyvalue] (Pivot point of the outside hinge in part space)
Description: Configures the upper part of the wishbone suspension

Set_PreIK_WishboneLower
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float inboardPivotPoint_x[anyvalue] (Pivot point of the inside hinge in part space)
float inboardPivotPoint_y[anyvalue] (Pivot point of the inside hinge in part space)
float inboardPivotPoint_z[anyvalue] (Pivot point of the inside hinge in part space)
float outboardPivotPoint_x[anyvalue] (Pivot point of the outside hinge in part space)
float outboardPivotPoint_y[anyvalue] (Pivot point of the outside hinge in part space)
float outboardPivotPoint_z[anyvalue] (Pivot point of the outside hinge in part space)
Description: Configures the lower part of the wishbone suspension

Set_PreIK_WishboneMountUpperFL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the upper part of the front left wishbone suspension

Set_PreIK_WishboneMountLowerFL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the lower part of the front left wishbone suspension

Set_PreIK_WishboneMountUpperFR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the upper part of the front right wishbone suspension

Set_PreIK_WishboneMountLowerFR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the lower part of the front right wishbone suspension

Set_PreIK_WishboneMountUpperRL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the upper part of the rear left wishbone suspension

Set_PreIK_WishboneMountLowerRL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the lower part of the rear left wishbone suspension

Set_PreIK_WishboneMountUpperRR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the upper part of the rear right wishbone suspension

Set_PreIK_WishboneMountLowerRR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the mount point for the lower part of the rear right wishbone suspension

Set_PreIK_WishboneHub
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float upperPivotPoint_x[anyvalue] (Upper Pivot point of the hinge in part space)
float upperPivotPoint_y[anyvalue] (Upper Pivot point of the hinge in part space)
float upperPivotPoint_z[anyvalue] (Upper Pivot point of the hinge in part space)
float lowerPivotPoint_x[anyvalue] (Lower Pivot point of the hinge in part space)
float lowerPivotPoint_y[anyvalue] (Lower Pivot point of the hinge in part space)
float lowerPivotPoint_z[anyvalue] (Lower Pivot point of the hinge in part space)
float wheelPos_x[anyvalue] (Position of wheel in part space)
float wheelPos_y[anyvalue] (Position of wheel in part space)
float wheelPos_z[anyvalue] (Position of wheel in part space)
Description: Configures the wheel hub of the wishbone suspension

Set_PreIK_StrutWishbone
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float inboardPivotPoint_x[anyvalue] (Pivot point of the inside hinge in part space)
float inboardPivotPoint_y[anyvalue] (Pivot point of the inside hinge in part space)
float inboardPivotPoint_z[anyvalue] (Pivot point of the inside hinge in part space)
float outboardPivotPoint_x[anyvalue] (Pivot point of the outside hinge in part space)
float outboardPivotPoint_y[anyvalue] (Pivot point of the outside hinge in part space)
float outboardPivotPoint_z[anyvalue] (Pivot point of the outside hinge in part space)
Description: Configures the upper part of the strut-based wishbone suspension

Set_PreIK_StrutWishboneMountFL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the front left mount point for the strut-based wishbone suspension. Are these used or are just the Upper ones used?

Set_PreIK_StrutWishboneMountFR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the front right mount point for the strut-based wishbone suspension. Are these used or are just the Upper ones used?

Set_PreIK_StrutWishboneMountRL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the rear left mount point for the strut-based wishbone suspension. Are these used or are just the Upper ones used?

Set_PreIK_StrutWishboneMountRR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the rear right mount point for the strut-based wishbone suspension

Set_PreIK_StrutUpperMountFL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the front left mount point for the upper part of the strut-based wishbone suspension

Set_PreIK_StrutUpperMountFR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the front right mount point for the upper part of the strut-based wishbone suspension

Set_PreIK_StrutUpperMountRL
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the rear left mount point for the upper part of the strut-based wishbone suspension

Set_PreIK_StrutUpperMountRR
Arguments: int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float PivotPoint_x[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_y[anyvalue] (Pivot point of the hinge in part space)
float PivotPoint_z[anyvalue] (Pivot point of the hinge in part space)
Description: Configures the rear right mount point for the upper part of the strut-based wishbone suspension

Set_PreIK_StrutHub
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
int pivotAxis[0-2] (0 = local X/sideways, 1 = local Y/up, 2 = local Z/forward)
float upperPivotPoint_x[anyvalue] (Upper Pivot point of the hinge in part space. Do these matter? All the cars which use it have it set to 0,1,0)
float upperPivotPoint_y[anyvalue] (Upper Pivot point of the hinge in part space. Do these matter? All the cars which use it have it set to 0,1,0)
float upperPivotPoint_z[anyvalue] (Upper Pivot point of the hinge in part space. Do these matter? All the cars which use it have it set to 0,1,0)
float lowerPivotPoint_x[anyvalue] (Lower Pivot point of the hinge in part space)
float lowerPivotPoint_y[anyvalue] (Lower Pivot point of the hinge in part space)
float lowerPivotPoint_z[anyvalue] (Lower Pivot point of the hinge in part space)
float wheelPos_x[anyvalue] (Position of wheel in part space)
float wheelPos_y[anyvalue] (Position of wheel in part space)
float wheelPos_z[anyvalue] (Position of wheel in part space)
Description: Configures the wheel hub of the wishbone suspension

Set_PreIK_LiveAxle
Arguments: int leftHandWheelIndex[0 or 2] (0 = front axel, 2 = rear axel)
float rightTrailingArmMountPoint_x[anyvalue] (The position at which the right trailing arm is mounted, the position of the left trailing arm is calculated by flipping the X coordinate)
float rightTrailingArmMountPoint_y[anyvalue] (The position at which the right trailing arm is mounted, the position of the left trailing arm is calculated by flipping the X coordinate)
float rightTrailingArmMountPoint_z[anyvalue] (The position at which the right trailing arm is mounted, the position of the left trailing arm is calculated by flipping the X coordinate)
Description: Configures live-axle based suspension

Set_PreIK_LiveAxle_Hub
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
float wheelPos_x[anyvalue] (Position of wheel in part space)
float wheelPos_y[anyvalue] (Position of wheel in part space)
float wheelPos_z[anyvalue] (Position of wheel in part space)
Description: Configures the wheel hub for the live-axle based suspension

Set_PreIK_LiveAxle_TrailingArm
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
float mountPivot_x[anyvalue] (Position of mount point in part space)
float mountPivot_y[anyvalue] (Position of mount point in part space)
float mountPivot_z[anyvalue] (Position of mount point in part space)
float axlePivot_x[anyvalue] (Position arm attaches to axle in part space)
float axlePivot_y[anyvalue] (Position arm attaches to axle in part space)
float axlePivot_z[anyvalue] (Position arm attaches to axle in part space)
Description: Configures the trailing arm for the live-axle based suspension

Set_PreIK_LiveAxle_TrailingArmMount
Arguments: int wheelIndex[0-3] (0 = front left, 1 = front right, 2 = rear left, 3 = rear right)
float mountPivot_x[anyvalue] (Position of mount point in part space)
float mountPivot_y[anyvalue] (Position of mount point in part space)
float mountPivot_z[anyvalue] (Position of mount point in part space)
Description: Configures the trailing arm mount

Get_PostIK_NamedScrollMaterialInU
Add_PostIK_NamedScrollMaterialInU
Arguments: ?????????????
Description: Makes the texture coordinates of a material in the child part named in the method scroll in the U direction?

Get_PostIK_NamedScrollMaterialInV
Add_PostIK_NamedScrollMaterialInV
Arguments: ?????????????
Description: Makes the texture coordinates of a material in the child part named in the method scroll in the V direction?

Get_CrushDamageSoundSubCat
Set_CrushDamageSoundSubCat
Arguments: string soundSubCat (Name of the sound sub category?)
Description: sets the sound sub category for crush damage? I guess this is for making glass or plastic sounds instead of metal?

Test_CrushDamageMaterial
Add_CrushDamageMaterial
Arguments: int damageLevel[-1 to -5] (Damage level, always negative, does it go lower than -5?)
string originalMaterial (The name of the material applied to the object which will be swapped when damaged)
string damageMaterial (The name of the material which will be applied to the material when damaged)
Description: Swaps a material on the part for another material when the part is damaged. Useful for things like glass, light covers, etc.

Test_CrushDamageEmitter
Add_CrushDamageEmitter
Arguments: int damageLevel[-1 to -5] (Damage level, always negative, does it go lower than -5?)
string emitterName (Name of the emitter to spawn when the part is damaged)
float emitterPosition_x[anyvalue] (Position in part space where the emitter will spawn)
float emitterPosition_y[anyvalue] (Position in part space where the emitter will spawn)
float emitterPosition_z[anyvalue] (Position in part space where the emitter will spawn)
Description: Spawns a particle emitter when the part is damaged. Useful for sparks, glass shards, etc.

Get_DetachPartEmitter
Add_DetachPartEmitter
Arguments: string emitterName (Name of the emitter to spawn when the part is damaged)
float emitterPosition_x[anyvalue] (Position in part space where the emitter will spawn)
float emitterPosition_y[anyvalue] (Position in part space where the emitter will spawn)
float emitterPosition_z[anyvalue] (Position in part space where the emitter will spawn)
float snapForceFactor[0.0-1.0] (The force of the snap needed to spawn the emitter?)
Description: Spawns an emitter when the part is detached from it's parent.

Get_DetachParentEmitter
Add_DetachParentEmitter
Arguments: string emitterName (Name of the emitter to spawn when the part is damaged)
float emitterPosition_x[anyvalue] (Position in parent's space where the emitter will spawn)
float emitterPosition_y[anyvalue] (Position in parent's space where the emitter will spawn)
float emitterPosition_z[anyvalue] (Position in parent's space where the emitter will spawn)
float snapForceFactor[0.0-1.0] (The force of the snap needed to spawn the emitter?)
Description: Spawns an emitter on part's parent when the part is detached.

Get_FunctionalLight
Add_FunctionalLight
Arguments: string lightType (The type of light, can be one of the following: HEAD_LIGHT, SIDE_LIGHT, REVERSE_LIGHT, BRAKE_LIGHT, TAIL_LIGHT, SIREN_LIGHT, STROBE1_LIGHT, STROBE2_LIGHT. Have I missed any?)
string nameOfLightLump (The name of the light's part, has to be a descendant of this part. This can be a NULL lump for the actual light to spawn or a MODL lump for the flare?)
Description: Adds a light to the part

Get_DriverBoxVertex
Add_DriverBoxVertex
Arguments: ?????
Possible Arguments: float x[anyvalue], float y[anyvalue], float z[anyvalue]
Description: Adds a vertex for the driver box?

Get_DriverBoxVertexColour
Set_DriverBoxVertexColour
Arguments: byte r[0-255]
byte g[0-255]
byte b[0-255]
byte a[0-255]
Description: The colour of the vertices which define the driver box.

Get_DriverEjectionSmash
Set_DriverEjectionSmash
Arguments: bool driverSmash (True or False)
Description: If set to true, this part will smash when driver ejects, making the crush damage materials and emitters trigger

Get_PedWeapon
Add_PedWeapon
Arguments: string weaponName (Name of the weapon, they are defined in the Weapons folder)
string typeOfDamage??? (CONSTANT is the only one used on official cars, are there any other values?)
int??? noIdea1???? (I have no idea what this is)
int??? noIdea2???? (I have no idea what this is)
int??? noIdea3???? (I have no idea what this is)
Description: Adds a weapon which effects peds

Get_VehicleSimpleWeapon
Add_VehicleSimpleWeapon
Arguments: float amountOfDamage???? (Does this define the amount of damage it does? Or is it a multiplier for the impact damage?)
Description: Adds a simple weapon which damages vehicles

Get_VehicleWeapon
Add_VehicleWeapon
Arguments: string weaponName (Name of the weapon, they are defined in the Weapons folder)
string typeOfDamage??? (CONSTANT is the only one used on official cars, are there any other values?)
int??? noIdea1???? (I have no idea what this is)
int??? noIdea2???? (I have no idea what this is)
int??? noIdea3???? (I have no idea what this is)
Description: Adds a weapon which effects vehicles

Get_AccessoryWeapon
Add_AccessoryWeapon
Arguments: string weaponName (Name of the weapon, they are defined in the Weapons folder)
string typeOfDamage??? (CONSTANT is the only one used on official cars, are there any other values?)
int??? noIdea1???? (I have no idea what this is)
int??? noIdea2???? (I have no idea what this is)
int??? noIdea3???? (I have no idea what this is)
Description: Adds a weapon which effects accessories

Get_SoundConfigFile
Set_SoundConfigFile
Arguments: string fileName (The filename of the sound config file)
Description: sets the sound config file used for this part

Vehicle Characteristic Parameters

These are methods of the CVehicleCharacteristics class which are used in the Characteristics block, they define global characteristics for the vehicle.


Get_DefenceAgainstCars
Set_DefenceAgainstCars
Arguments: float defenceAmount[0 to nolimit] (Higher value = higher defence)
Description: Sets the amount of defense this car has against other cars

Get_DefenceGeneral
Set_DefenceGeneral
Arguments: float defenceAmount[0 to nolimit] (Higher value = higher defence)
Description: Sets the amount of defense this car has in general (against hitting walls and things falling on it etc.?)

Get_Offence
Set_Offence
Arguments: float offenceAmount[0 to nolimit] (Higher value = higher offence)
Description: Sets the amount of offence this car has

Get_ValueFactor
Set_ValueFactor
Arguments: float valueAmount[0 to nolimit] (Higher value = higher value)
Description: Sets the value of the car. I assume this is to do with how much it costs to buy in game? Or how rare it is?

Get_WholeBodyDeformationFactor
Set_WholeBodyDeformationFactor
Arguments: float deformFactor[0 to nolimit] (Higher value = deforms more?)
Description: Sets the overall factor of deformation for the car
Get_PermanentPowerup
Add_PermanentPowerup
Arguments: string powerupName (Name of powerup, powerups are defined in the powerups folder)
Definition: Adds a constant use powerup to the car

Get_AirBrakeMinSpeed
Set_AirBrakeMinSpeed
Arguments: ????
Possible Arguments: float speed[0 to nolimit]
Description: Sets the minimum speed at which the airbrake is deployed when braking?

Get_AirBrakeMaxSpeed
Set_AirBrakeMaxSpeed
Arguments: ????
Possible Arguments: float speed[0 to nolimit]
Description: Sets the maximum speed at which the airbrake is deployed when braking?

Get_AirBrakeMinParametric
Set_AirBrakeMinParametric
Arguments: ??????
Description: No fucking clue

Get_AirBrakeMovementUpTime
Set_AirBrakeMovementUpTime
Arguments: ??????
Possible Arguments: float timeToRaise[0 to nolimit]
Description: Sets the amount of time it takes the air brake to move up into deployed position?

Get_AirBrakeMovementDownTime
Set_AirBrakeMovementDownTime
Arguments: ??????
Possible Arguments: float timeToLower[0 to nolimit]
Description: Sets the amount of time it takes the air brake to move back down into it's original position?

Get_AirBrakeDropTime
Set_AirBrakeDropTime
Arguments: ??????
Description: No fucking clue

Get_AerofoilUpSpeed
Set_AerofoilUpSpeed
Arguments: ??????
Possible Arguments: float speed[0 to nolimit]
Description: Sets the speed at which the first stage of the aerofoil spoiler gets deployed

Get_AerofoilDownSpeed
Set_AerofoilDownSpeed
Arguments: ??????
Possible Arguments: float speed[0 to nolimit]
Description: Sets the speed at which the first stage of the aerofoil spoiler gets lowered

Get_AerofoilMovementUpTime
Set_AerofoilMovementUpTime
Arguments: ??????
Possible Arguments: float timeToRaise[0 to nolimit]
Description: Sets the amount of time it takes the first stage of the aerofoil spoiler to move up into deployed position?

Get_AerofoilMovementDownTime
Set_AerofoilMovementDownTime
Arguments: ??????
Possible Arguments: float timeToLower[0 to nolimit]
Description: Sets the amount of time it takes the first stage of the aerofoil spoiler to move up into deployed position?

Get_Aerofoil2UpSpeed
Set_Aerofoil2UpSpeed
Arguments: ??????
Possible Arguments: float speed[0 to nolimit]
Description: Sets the speed at which the second stage of the aerofoil spoiler gets raised

Get_Aerofoil2DownSpeed
Set_Aerofoil2DownSpeed
Arguments: ??????
Possible Arguments: float speed[0 to nolimit]
Description: Sets the speed at which the second stage of the aerofoil spoiler gets lowered

Get_Aerofoil2MovementUpTime
Set_Aerofoil2MovementUpTime
Arguments: ??????
Possible Arguments: float timeToRaise[0 to nolimit]
Description: Sets the amount of time it takes the second stage of the aerofoil spoiler to move up into deployed position?

Get_Aerofoil2MovementDownTime
Set_Aerofoil2MovementDownTime
Arguments: ??????
Possible Arguments: float timeToLower[0 to nolimit]
Description: Sets the amount of time it takes the second stage of the aerofoil spoiler to move up into deployed position?

Joint Properties

These are methods of the CWeldJointParameters class which are set in the JOINT blocks, they control moving hinges for element like doors, trunks, etc. in vehicles

Get_Hinge
Set_Hinge
Arguments: bool isHinged (True = joint is hinged)
Description: Sets joint to be hinged

Get_BallJoint
Set_BallJoint
Arguments: bool isBallJoint (True = joint is balljoint)
Description: Sets joint to be a ball joint

Get_UJ
Set_UJ
Arguments: ?????
Possible Arguments: bool isUJ
Description: WTF is a UJ?

Get_MinTwistLimit
Set_MinTwistLimit
Arguments: int(or float???) limit[anyvalue] (Degrees)
Description: The minimum amount of twist on a ball joint

Get_MaxTwistLimit
Set_MaxTwistLimit
Arguments: int(or float???) limit[anyvalue] (Degrees)
Description: The maximum amount of twist on a ball joint

Get_MinLimit
Set_MinLimit
Arguments: int(or float???) limit[anyvalue] (Degrees)
Description: The minimum amount of degrees the joint can move. Is this different when using a sliding joint?

Get_MaxLimit
Set_MaxLimit
Arguments: int(or float???) limit[anyvalue] (Degrees)
Description: The maximum amount of degrees the joint can move. Is this different when using a sliding joint?

Get_MinLimit2
Set_MinLimit2
Arguments: int(or float???) limit[anyvalue] (Degrees)
Description: The minimum amount of degrees the joint can move when it's broken? Is this different when using a sliding joint?

Get_MaxLimit2
Set_MaxLimit2
Arguments: int(or float???) limit[anyvalue]
Description: The maximum amount of degrees the joint can move when it's broken? Is this different when using a sliding joint?

Get_Slide
Set_Slide
Arguments: ????
Possible Arguments: bool isSlide
Description: Sets the joint to a sliding joint?

Get_FlapSpring
Add_FlapSpring
Arguments: int(or float???) noIdea1 (No fucking clue)
int(or float???) noIdea1 (No fucking clue)
Description: Sets the force of the springs for flabbale parts like doors. I get what they do but have no idea how they work.

Get_JointAxis
Set_JointAxis
Arguments: float axis_x[-1 to 1] (X component of the axis)
float axis_y[-1 to 1] (Y component of the axis)
float axis_y[-1 to 1] (Z component of the axis)
Description: Sets the axis of the joint in world space?

Get_JointNormal
Set_JointNormal
Arguments: float normal_x[-1 to 1] (X component of the axis)
float normal_y[-1 to 1] (Y component of the axis)
float normal_y[-1 to 1] (Z component of the axis)
Description: Sets the normal of the ball joint?

Get_JointLocation
Set_JointLocation
Arguments: float position_x[anyvalue] (X component of the position in world space)
float position_y[anyvalue] (Y component of the position in world space)
float position_y[anyvalue] (Z component of the position in world space)
Description: Sets the location of the joint in world space.

Unknown Properties

These properties are currently unknown methods of an unknown class.

Get_Bounds_Min
Set_Bounds_Min
Get_Bounds_Max
Set_Bounds_Max
Get_UnidirectionalWeakness
Add_UnidirectionalWeakness
Get_BidirectionalWeakness
Add_BidirectionalWeakness