Merge branch 'Wheels' into develop
commit
3077b9b47b
@ -1 +1 @@
|
|||||||
Subproject commit f357fa8e99937d7ef61aa8c63e8f198ea2c7a269
|
Subproject commit e0d84f6229971bab4b1557380a1f3b9c39e2ac46
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,257 @@
|
|||||||
|
// Patches applying art changes to wheels
|
||||||
|
// Contents:
|
||||||
|
// - Rovemax Model S2 (roverWheel2)
|
||||||
|
// - Rovemax Model M1 (roverWHeel1)
|
||||||
|
// - TR-2L Ruggedized Wheel (wheelMed)
|
||||||
|
|
||||||
|
// RoveMax Model S2
|
||||||
|
@PART[roverWheel2]:HAS[~RestockIgnore[*]]:FOR[ReStock]
|
||||||
|
{
|
||||||
|
@author = Andrew Cassidy
|
||||||
|
|
||||||
|
!MODEL {}
|
||||||
|
MODEL
|
||||||
|
{
|
||||||
|
model = ReStock/Assets/Ground/restock-wheel-1
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSuspension] {
|
||||||
|
@suspensionTransformName = SuspensionPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSteering] {
|
||||||
|
@steeringTransformName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelDamage] {
|
||||||
|
@damagedTransformName = WheelBusted
|
||||||
|
@undamagedTransformName = Wheel
|
||||||
|
}
|
||||||
|
|
||||||
|
!MODULE[FXModuleLookAtConstraint] {}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleRestockConstraints
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Suspension1
|
||||||
|
targetName = Suspension2
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Suspension2
|
||||||
|
targetName = Suspension1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModulePartVariants
|
||||||
|
useMultipleDragCubes = false
|
||||||
|
baseVariant = Bare
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Bare
|
||||||
|
displayName = #LOC_Restock_variant-probe-bare
|
||||||
|
primaryColor = #999999
|
||||||
|
secondaryColor = #999999
|
||||||
|
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
body_gold = false
|
||||||
|
SteeringPivot_gold = false
|
||||||
|
body_silver = false
|
||||||
|
SteeringPivot_silver = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Gold
|
||||||
|
displayName = #LOC_Restock_variant-probe-gold
|
||||||
|
themeName = Gold
|
||||||
|
primaryColor = #fccb0a
|
||||||
|
secondaryColor = #999999
|
||||||
|
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
body_gold = true
|
||||||
|
SteeringPivot_gold = true
|
||||||
|
body_silver = false
|
||||||
|
SteeringPivot_silver = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Silver
|
||||||
|
displayName = #LOC_Restock_variant-probe-silver
|
||||||
|
themeName = Silver
|
||||||
|
primaryColor = #cecece
|
||||||
|
secondaryColor = #999999
|
||||||
|
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
body_gold = false
|
||||||
|
SteeringPivot_gold = false
|
||||||
|
body_silver = true
|
||||||
|
SteeringPivot_silver = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// RoveMax Model M1
|
||||||
|
@PART[roverWheel1]:HAS[~RestockIgnore[*]]:FOR[ReStock]
|
||||||
|
{
|
||||||
|
@author = Andrew Cassidy
|
||||||
|
|
||||||
|
!mesh = DELETE
|
||||||
|
MODEL
|
||||||
|
{
|
||||||
|
model = ReStock/Assets/Ground/restock-wheel-2
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSuspension] {
|
||||||
|
@suspensionTransformName = SuspensionPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSteering] {
|
||||||
|
@steeringTransformName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelDamage] {
|
||||||
|
@damagedTransformName = WheelBusted
|
||||||
|
@undamagedTransformName = Wheel
|
||||||
|
}
|
||||||
|
|
||||||
|
!MODULE[FXModuleLookAtConstraint]
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleRestockConstraints
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Link1
|
||||||
|
targetName = Link1Target
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Link2
|
||||||
|
targetName = Link2Target
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = LowerBracket
|
||||||
|
targetName = Base
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringPivotFollower
|
||||||
|
targetName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = WheelPivotFollower
|
||||||
|
targetName = WheelPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = ShockCylinder
|
||||||
|
targetName = ShockPiston
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = ShockPiston
|
||||||
|
targetName = ShockCylinder
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringPiston1
|
||||||
|
targetName = SteeringCylinder1
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringCylinder1
|
||||||
|
targetName = SteeringPiston1
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringPiston2
|
||||||
|
targetName = SteeringCylinder2
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringCylinder2
|
||||||
|
targetName = SteeringPiston2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// TR-2L Ruggedized Vehicular Wheel
|
||||||
|
@PART[wheelMed]:HAS[~RestockIgnore[*]]:FOR[ReStock]
|
||||||
|
{
|
||||||
|
@author = Andrew Cassidy
|
||||||
|
|
||||||
|
!MODEL {}
|
||||||
|
MODEL
|
||||||
|
{
|
||||||
|
model = ReStock/Assets/Ground/restock-wheel-3
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSuspension] {
|
||||||
|
@suspensionTransformName = SuspensionPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSteering] {
|
||||||
|
@steeringTransformName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelDamage] {
|
||||||
|
@damagedTransformName = WheelBusted
|
||||||
|
@undamagedTransformName = Wheel
|
||||||
|
}
|
||||||
|
|
||||||
|
!MODULE[FXModuleLookAtConstraint] {}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleRestockConstraints
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = DamperCylinder
|
||||||
|
targetName = DamperPiston
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = DamperPiston
|
||||||
|
targetName = DamperCylinder
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringCylinder1
|
||||||
|
targetName = SteeringPiston1
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringPiston1
|
||||||
|
targetName = SteeringCylinder1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,156 @@
|
|||||||
|
// Patches applying art changes to the Making History rover wheel
|
||||||
|
// Contents:
|
||||||
|
// - RoveMax M1-F Rover Wheel (roverWheelM1-F)
|
||||||
|
|
||||||
|
// RoveMax M1-F Rover Wheel
|
||||||
|
@PART[roverWheelM1-F]:HAS[~RestockIgnore[*]]:FOR[ReStock]
|
||||||
|
{
|
||||||
|
@author = Andrew Cassidy
|
||||||
|
|
||||||
|
!MODEL {}
|
||||||
|
MODEL
|
||||||
|
{
|
||||||
|
model = ReStock/Assets/Ground/restock-wheel-4
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSuspension] {
|
||||||
|
@suspensionTransformName = SuspensionPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelSteering] {
|
||||||
|
@steeringTransformName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelDamage] {
|
||||||
|
@damagedTransformName = WheelBusted
|
||||||
|
@undamagedTransformName = Wheel
|
||||||
|
}
|
||||||
|
|
||||||
|
@MODULE[ModuleWheelDeployment] {
|
||||||
|
@animationTrfName = restock-wheel-4
|
||||||
|
@animationStateName = restock-wheel-4-deploy
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
!MODULE[ModulePartVariants] {}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModulePartVariants
|
||||||
|
baseVariant = Orange
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Orange
|
||||||
|
displayName = #autoLOC_8007100 // Orange
|
||||||
|
themeName = Orange
|
||||||
|
primaryColor = #74402B
|
||||||
|
secondaryColor = #707070
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = true
|
||||||
|
Fender_grey = false
|
||||||
|
Fender_cernan = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Grey
|
||||||
|
displayName = #autoLOC_8007119 // White
|
||||||
|
themeName = White
|
||||||
|
primaryColor = #ffffff
|
||||||
|
secondaryColor = #707070
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = false
|
||||||
|
Fender_grey = true
|
||||||
|
Fender_cernan = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Cernan
|
||||||
|
displayName = #LOC_Restock_variant-wheel_broken // Broken
|
||||||
|
themeName = Orange
|
||||||
|
primaryColor = #74402B
|
||||||
|
secondaryColor = #A0A0A0
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = false
|
||||||
|
Fender_grey = false
|
||||||
|
Fender_cernan = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Bare
|
||||||
|
displayName = #LOC_Restock_variant-wheel_bare //Bare
|
||||||
|
themeName = White
|
||||||
|
primaryColor = #707070
|
||||||
|
secondaryColor = #707070
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = false
|
||||||
|
Fender_grey = false
|
||||||
|
Fender_cernan = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
!MODULE[FXModuleLookAtConstraint] {}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleRestockConstraints
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Link1
|
||||||
|
targetName = Link1Target
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Link2
|
||||||
|
targetName = Link2Target
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SuspensionPiston
|
||||||
|
targetName = SuspensionPistonTarget
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SuspensionCylinder
|
||||||
|
targetName = SuspensionCylinderTarget
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = LowerBracket
|
||||||
|
targetName = UpperBracket
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringPivotFollower
|
||||||
|
targetName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYPOSITIONCONSTRAINT
|
||||||
|
{
|
||||||
|
moversName = WheelMesh
|
||||||
|
targetName = WheelPivotFollower
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYPOSITIONCONSTRAINT
|
||||||
|
{
|
||||||
|
moversName = WheelMeshBusted
|
||||||
|
targetName = WheelPivotFollower
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,209 @@
|
|||||||
|
// ReStock+ 1.1.0
|
||||||
|
// 90° rotated rover wheel
|
||||||
|
PART
|
||||||
|
{
|
||||||
|
name = restock-wheel-1-T
|
||||||
|
module = Part
|
||||||
|
author = Andrew Cassidy
|
||||||
|
|
||||||
|
MODEL
|
||||||
|
{
|
||||||
|
model = ReStock/Assets/Ground/restock-wheel-1-T
|
||||||
|
scale = 1.0, 1.0, 1.0
|
||||||
|
}
|
||||||
|
rescaleFactor = 1.0
|
||||||
|
|
||||||
|
// attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
|
||||||
|
attachRules = 1,1,0,0,0
|
||||||
|
node_attach = 0.0, 0.5248517, 0.3083052, 0.0, 0.0, -1.0, 1
|
||||||
|
node_stack_bottom = 0.0, 0.5248517, 0.321335, 0.0, 0.0, 1.0, 1
|
||||||
|
|
||||||
|
TechRequired = spaceExploration
|
||||||
|
entryCost = 3100
|
||||||
|
cost = 300
|
||||||
|
category = Ground
|
||||||
|
subcategory = 0
|
||||||
|
mass = 0.06
|
||||||
|
|
||||||
|
title = #LOC_RestockPlus_restock-wheel-1-T_title // Rovemax Model S2-T
|
||||||
|
manufacturer = #autoLOC_501649 //#autoLOC_501649 = Kerbal Motion LLC
|
||||||
|
description = #LOC_RestockPlus_restock-wheel-1-T_description
|
||||||
|
// A modified rover wheel that is rotated 90°, ideal for tricycles or other unusually shaped vehicles
|
||||||
|
|
||||||
|
dragModelType = default
|
||||||
|
maximum_drag = 0.3
|
||||||
|
minimum_drag = 0.2
|
||||||
|
angularDrag = 1
|
||||||
|
crashTolerance = 20
|
||||||
|
maxTemp = 1200
|
||||||
|
bulkheadProfiles = srf
|
||||||
|
tags = #LOC_RestockPlus_restock-wheel-1-T_tags // drive ground roll rover wheel tricycle restock
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelBase
|
||||||
|
|
||||||
|
wheelColliderTransformName = WheelCollider
|
||||||
|
wheelTransformName = WheelPivot
|
||||||
|
|
||||||
|
wheelType = MOTORIZED
|
||||||
|
|
||||||
|
// setting this to true will override the radius and center parameters
|
||||||
|
FitWheelColliderToMesh = False
|
||||||
|
radius = 0.157
|
||||||
|
center = 0,0,0
|
||||||
|
mass = 0.040
|
||||||
|
groundHeightOffset = 0
|
||||||
|
|
||||||
|
TooltipTitle = #autoLOC_502081 //#autoLOC_502081 = Rover Wheel
|
||||||
|
TooltipPrimaryField = #autoLOC_6004045 //#autoLOC_6004045 = Motorized
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelSuspension
|
||||||
|
baseModuleIndex = 0
|
||||||
|
suspensionTransformName = SuspensionPivot
|
||||||
|
maximumLoad = 8.0
|
||||||
|
suspensionDistance = 0.195
|
||||||
|
suspensionOffset = -0.05
|
||||||
|
targetPosition = 0.2
|
||||||
|
springRatio = 5
|
||||||
|
damperRatio = 1.0
|
||||||
|
useAutoBoost = true
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelSteering
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
caliperTransformName = SteeringPivot
|
||||||
|
|
||||||
|
steeringResponse = 1.5
|
||||||
|
steeringCurve
|
||||||
|
{
|
||||||
|
key = 0 40
|
||||||
|
key = 5 27//15
|
||||||
|
key = 10 9//6
|
||||||
|
key = 30 3.0//1.5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelMotor
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
wheelSpeedMax = 11
|
||||||
|
driveResponse = 2
|
||||||
|
|
||||||
|
torqueCurve
|
||||||
|
{
|
||||||
|
key = 0 0.17 0 0
|
||||||
|
key = 2.5 0.1 0 0
|
||||||
|
key = 12 0 0 0
|
||||||
|
}
|
||||||
|
RESOURCE
|
||||||
|
{
|
||||||
|
name = ElectricCharge
|
||||||
|
rate = 1//5
|
||||||
|
}
|
||||||
|
idleDrain = 0.0//0.1//
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelBrakes
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
maxBrakeTorque = 0.34
|
||||||
|
brakeResponse = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelDamage
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
damagedTransformName = WheelBusted
|
||||||
|
undamagedTransformName = Wheel
|
||||||
|
|
||||||
|
stressTolerance = 315
|
||||||
|
impactTolerance = 65
|
||||||
|
deflectionMagnitude = 1.0
|
||||||
|
deflectionSharpness = 2.0
|
||||||
|
slipMagnitude = 15
|
||||||
|
slipSharpness = 2.0
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleRestockConstraints
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Suspension1
|
||||||
|
targetName = Suspension2
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Suspension2
|
||||||
|
targetName = Suspension1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModulePartVariants
|
||||||
|
useMultipleDragCubes = false
|
||||||
|
baseVariant = Bare
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Bare
|
||||||
|
displayName = #LOC_Restock_variant-probe-bare
|
||||||
|
primaryColor = #999999
|
||||||
|
secondaryColor = #999999
|
||||||
|
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
body_gold = false
|
||||||
|
SteeringPivot_gold = false
|
||||||
|
body_silver = false
|
||||||
|
SteeringPivot_silver = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Gold
|
||||||
|
displayName = #LOC_Restock_variant-probe-gold
|
||||||
|
themeName = Gold
|
||||||
|
primaryColor = #fccb0a
|
||||||
|
secondaryColor = #999999
|
||||||
|
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
body_gold = true
|
||||||
|
SteeringPivot_gold = true
|
||||||
|
body_silver = false
|
||||||
|
SteeringPivot_silver = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Silver
|
||||||
|
displayName = #LOC_Restock_variant-probe-silver
|
||||||
|
themeName = Silver
|
||||||
|
primaryColor = #cecece
|
||||||
|
secondaryColor = #999999
|
||||||
|
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
body_gold = false
|
||||||
|
SteeringPivot_gold = false
|
||||||
|
body_silver = true
|
||||||
|
SteeringPivot_silver = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,288 @@
|
|||||||
|
// ReStock+ 1.1.0
|
||||||
|
// Folding LRV wheel
|
||||||
|
PART
|
||||||
|
{
|
||||||
|
name = restock-wheel-4
|
||||||
|
module = Part
|
||||||
|
author = Andrew Cassidy
|
||||||
|
|
||||||
|
MODEL
|
||||||
|
{
|
||||||
|
model = ReStock/Assets/Ground/restock-wheel-4
|
||||||
|
scale = 1.0, 1.0, 1.0
|
||||||
|
}
|
||||||
|
rescaleFactor = 1.25 //sigh
|
||||||
|
|
||||||
|
// attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
|
||||||
|
attachRules = 1,1,0,0,0
|
||||||
|
node_attach = 0.36, 0.1207, 0.0, 1.0, 0.0, 0.0, 1
|
||||||
|
node_stack_bottom = 0.3815, 0.1207, 0.0, 1.0, 0.0, 0.0, 1
|
||||||
|
|
||||||
|
TechRequired = fieldScience
|
||||||
|
entryCost = 5000
|
||||||
|
cost = 500
|
||||||
|
category = Ground
|
||||||
|
subcategory = 0
|
||||||
|
mass = 0.04
|
||||||
|
|
||||||
|
title = #LOC_RestockPlus_restock-wheel-4_title // Rovemax Model M0
|
||||||
|
manufacturer = #autoLOC_501649 //#autoLOC_501649 = Kerbal Motion LLC
|
||||||
|
description = #LOC_RestockPlus_restock-wheel-4_description
|
||||||
|
// A smaller version of the popular Rovemax wheel with an integrated folding function, allowing it to be stowed for transportation.
|
||||||
|
|
||||||
|
dragModelType = default
|
||||||
|
maximum_drag = 0.3
|
||||||
|
minimum_drag = 0.2
|
||||||
|
angularDrag = 1
|
||||||
|
crashTolerance = 30
|
||||||
|
maxTemp = 1200
|
||||||
|
bulkheadProfiles = srf
|
||||||
|
tags = #LOC_RestockPlus_restock-wheel-4_tags // )car drive ground roll rover wheel fold LRV restock
|
||||||
|
|
||||||
|
/// Flag to disable this part if MH is installed
|
||||||
|
MHReplacement = True
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelBase
|
||||||
|
|
||||||
|
wheelColliderTransformName = WheelCollider
|
||||||
|
wheelTransformName = WheelPivot
|
||||||
|
|
||||||
|
wheelType = MOTORIZED
|
||||||
|
|
||||||
|
// setting this to true will override the radius and center parameters
|
||||||
|
FitWheelColliderToMesh = False
|
||||||
|
radius = 0.23
|
||||||
|
center = 0,0,0
|
||||||
|
mass = 0.040
|
||||||
|
groundHeightOffset = 0
|
||||||
|
|
||||||
|
TooltipTitle = #autoLOC_502081 //#autoLOC_502081 = Rover Wheel
|
||||||
|
TooltipPrimaryField = #autoLOC_6004045 //#autoLOC_6004045 = Motorized
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelSuspension
|
||||||
|
baseModuleIndex = 0
|
||||||
|
suspensionTransformName = SuspensionPivot
|
||||||
|
suspensionDistance = 0.1
|
||||||
|
targetPosition = 0.0
|
||||||
|
springRatio = 12
|
||||||
|
damperRatio = 1.0
|
||||||
|
maximumLoad = 5.0
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelSteering
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
caliperTransformName = SteeringPivot
|
||||||
|
|
||||||
|
steeringResponse = 2
|
||||||
|
steeringCurve
|
||||||
|
{
|
||||||
|
key = 0 20
|
||||||
|
key = 10 9
|
||||||
|
key = 30 3.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelMotor
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
maxRpm = 42
|
||||||
|
driveResponse = 2
|
||||||
|
|
||||||
|
torqueCurve
|
||||||
|
{
|
||||||
|
key = 0 0.5 0 0
|
||||||
|
key = 2 0.3 0
|
||||||
|
key = 10 0.1 0 0
|
||||||
|
key = 25 0 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
RESOURCE
|
||||||
|
{
|
||||||
|
name = ElectricCharge
|
||||||
|
rate = 1.0
|
||||||
|
}
|
||||||
|
idleDrain = 0.0
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelBrakes
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
maxBrakeTorque = 0.5
|
||||||
|
brakeResponse = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelDamage
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
damagedTransformName = WheelBusted
|
||||||
|
undamagedTransformName = Wheel
|
||||||
|
|
||||||
|
stressTolerance = 250
|
||||||
|
impactTolerance = 100
|
||||||
|
deflectionMagnitude = 1.0
|
||||||
|
deflectionSharpness = 2.0
|
||||||
|
slipMagnitude = 15
|
||||||
|
slipSharpness = 2.0
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleWheelDeployment
|
||||||
|
baseModuleIndex = 0
|
||||||
|
|
||||||
|
animationTrfName = restock-wheel-4
|
||||||
|
animationStateName = restock-wheel-4-deploy
|
||||||
|
deployedPosition = 0
|
||||||
|
deployTargetTransformName = deployTgt
|
||||||
|
|
||||||
|
TsubSys = 1.0
|
||||||
|
useStandInCollider = False
|
||||||
|
slaveModules = 8
|
||||||
|
|
||||||
|
fxDeploy = deploy
|
||||||
|
fxRetract = retract
|
||||||
|
fxDeployed = deployed
|
||||||
|
fxRetracted = retracted
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModulePartVariants
|
||||||
|
baseVariant = Orange
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Orange
|
||||||
|
displayName = #autoLOC_8007100 // Orange
|
||||||
|
themeName = Orange
|
||||||
|
primaryColor = #74402B
|
||||||
|
secondaryColor = #707070
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = true
|
||||||
|
Fender_grey = false
|
||||||
|
Fender_cernan = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Grey
|
||||||
|
displayName = #autoLOC_8007119 // White
|
||||||
|
themeName = White
|
||||||
|
primaryColor = #ffffff
|
||||||
|
secondaryColor = #707070
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = false
|
||||||
|
Fender_grey = true
|
||||||
|
Fender_cernan = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Cernan
|
||||||
|
displayName = #LOC_Restock_variant-wheel_broken // Broken
|
||||||
|
themeName = Orange
|
||||||
|
primaryColor = #74402B
|
||||||
|
secondaryColor = #A0A0A0
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = false
|
||||||
|
Fender_grey = false
|
||||||
|
Fender_cernan = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VARIANT
|
||||||
|
{
|
||||||
|
name = Bare
|
||||||
|
displayName = #LOC_Restock_variant-wheel_bare //Bare
|
||||||
|
themeName = White
|
||||||
|
primaryColor = #707070
|
||||||
|
secondaryColor = #707070
|
||||||
|
GAMEOBJECTS
|
||||||
|
{
|
||||||
|
Fender_orange = false
|
||||||
|
Fender_grey = false
|
||||||
|
Fender_cernan = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleTestSubject
|
||||||
|
environments = 15
|
||||||
|
useStaging = False
|
||||||
|
useEvent = True
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
MODULE
|
||||||
|
{
|
||||||
|
name = ModuleRestockConstraints
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Link1
|
||||||
|
targetName = Link1Target
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = Link2
|
||||||
|
targetName = Link2Target
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SuspensionPiston
|
||||||
|
targetName = SuspensionPistonTarget
|
||||||
|
}
|
||||||
|
|
||||||
|
LOOKATCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SuspensionCylinder
|
||||||
|
targetName = SuspensionCylinderTarget
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = LowerBracket
|
||||||
|
targetName = UpperBracket
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYROTATIONCONSTRAINT
|
||||||
|
{
|
||||||
|
rotatorsName = SteeringPivotFollower
|
||||||
|
targetName = SteeringPivot
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYPOSITIONCONSTRAINT
|
||||||
|
{
|
||||||
|
moversName = WheelMesh
|
||||||
|
targetName = WheelPivotFollower
|
||||||
|
}
|
||||||
|
|
||||||
|
COPYPOSITIONCONSTRAINT
|
||||||
|
{
|
||||||
|
moversName = WheelMeshBusted
|
||||||
|
targetName = WheelPivotFollower
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Restock.Constraints
|
||||||
|
{
|
||||||
|
[System.Serializable]
|
||||||
|
public class CopyPositionConstraint : IConstraint
|
||||||
|
{
|
||||||
|
private readonly string moversName;
|
||||||
|
private readonly string targetName;
|
||||||
|
|
||||||
|
private readonly bool local = false;
|
||||||
|
|
||||||
|
// Cached components
|
||||||
|
private readonly Transform mover;
|
||||||
|
private readonly Transform target;
|
||||||
|
|
||||||
|
public CopyPositionConstraint(ConfigNode node, Part p)
|
||||||
|
{
|
||||||
|
node.TryGetValue("rotatorsName", ref moversName);
|
||||||
|
node.TryGetValue("targetName", ref targetName);
|
||||||
|
|
||||||
|
mover = p.FindModelTransform(moversName);
|
||||||
|
target = p.FindModelTransform(targetName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Update()
|
||||||
|
{
|
||||||
|
if (mover == null || target == null) return;
|
||||||
|
|
||||||
|
if (local)
|
||||||
|
{
|
||||||
|
mover.localPosition = target.localPosition;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mover.position = target.position;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Restock.Constraints
|
||||||
|
{
|
||||||
|
[System.Serializable]
|
||||||
|
public class CopyRotationConstraint : IConstraint
|
||||||
|
{
|
||||||
|
private readonly string rotatorsName;
|
||||||
|
private readonly string targetName;
|
||||||
|
|
||||||
|
private readonly bool local = false;
|
||||||
|
|
||||||
|
// Cached components
|
||||||
|
private readonly Transform target;
|
||||||
|
private readonly Transform rotator;
|
||||||
|
|
||||||
|
public CopyRotationConstraint(ConfigNode node, Part p)
|
||||||
|
{
|
||||||
|
node.TryGetValue("rotatorsName", ref rotatorsName);
|
||||||
|
node.TryGetValue("targetName", ref targetName);
|
||||||
|
|
||||||
|
rotator = p.FindModelTransform(rotatorsName);
|
||||||
|
target = p.FindModelTransform(targetName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Update()
|
||||||
|
{
|
||||||
|
if (rotator == null || target == null) return;
|
||||||
|
|
||||||
|
if (local)
|
||||||
|
{
|
||||||
|
rotator.localRotation = target.localRotation;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rotator.rotation = target.rotation;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
using System;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Restock.Constraints
|
||||||
|
{
|
||||||
|
public interface IConstraint
|
||||||
|
{
|
||||||
|
void Update();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,33 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Restock.Constraints
|
||||||
|
{
|
||||||
|
[System.Serializable]
|
||||||
|
public class LookAtConstraint : IConstraint
|
||||||
|
{
|
||||||
|
private readonly string rotatorsName;
|
||||||
|
private readonly string targetName;
|
||||||
|
|
||||||
|
// Cached components
|
||||||
|
private readonly Transform target;
|
||||||
|
private readonly Transform rotator;
|
||||||
|
|
||||||
|
public LookAtConstraint(ConfigNode node, Part p)
|
||||||
|
{
|
||||||
|
node.TryGetValue("rotatorsName", ref rotatorsName);
|
||||||
|
node.TryGetValue("targetName", ref targetName);
|
||||||
|
|
||||||
|
rotator = p.FindModelTransform(rotatorsName);
|
||||||
|
target = p.FindModelTransform(targetName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Update()
|
||||||
|
{
|
||||||
|
if (rotator == null || target == null) return;
|
||||||
|
|
||||||
|
var lookPos = target.position - rotator.position;
|
||||||
|
var rotation = Quaternion.LookRotation(lookPos, target.up);
|
||||||
|
rotator.rotation = rotation;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue