The way I have it right now is a really bad, experimental cross between snatches of toboggan code (edited) and Covered wagon code (also edited). This is why I will NOT release this, it is just horrible. I have it set up right now with the sled having 4 "nothingtires" and three "dogtires" (similar to the covered wagon).
Here is the tire code. Feel free to rip on me how much it sucks, because it is basically pieces of code modified and spliced in with other pieces of code. Basically, a huge mess.
function dogsledVehicle::onAdd(%this,%obj)
{
parent::onadd(%this,%obj);
%obj.mountImage(DogImage,1);
%obj.mountImage(Dog2Image,2);
%obj.mountImage(Dog3Image,2);
%obj.mountable = true;
//mount the nothing tire, the Dog tire and ski spring
%obj.setWheelTire(0, nothingtire);
%obj.setWheelTire(1, nothingtire);
%obj.setWheelTire(2, nothingtire);
%obj.setWheelTire(3, nothingtire);
%obj.setWheelTire(4, dogtire);
%obj.setWheelTire(5, dogtire);
%obj.setWheelTire(6, dogtire);
%obj.setWheelSpring(0, skiSpring);
%obj.setWheelSpring(1, skiSpring);
%obj.setWheelSpring(2, skiSpring);
%obj.setWheelSpring(3, skiSpring);
%obj.setWheelSpring(4, skiSpring);
%obj.setWheelSpring(5, skiSpring);
%obj.setWheelSpring(6, skiSpring);
%obj.setWheelSteering(0,0);
%obj.setWheelSteering(1,0);
%obj.setWheelSteering(2,0);
%obj.setWheelSteering(3,0);
%obj.setWheelSteering(4,0);
%obj.setWheelSteering(5,0);
%obj.setWheelSteering(6,1);
%obj.setWheelPowered(0,false);
%obj.setWheelPowered(1,false);
%obj.setWheelPowered(2,false);
%obj.setWheelPowered(3,false);
%obj.setWheelPowered(4,true);
%obj.setWheelPowered(5,true);
%obj.setWheelPowered(6,true);
dogspeedCheck(%obj);
%obj.Bundles0 = 1;
%obj.Frame0 = 1;
}
Mount point 6 is the leading dog, 5 is the right dog and 4 is the left dog. The other mount points are on the sled in the normal 4 wheel mounting order.
BTW, Glass, I can give you all the .dts models if you would like to take a shot at this.