Hello all, new suspensions setup with steering that is viable in play mode

the whole setup is just shy of 100 parts, so it should work rather smoothly in play mode. it was designed with reliability and stability in mind, all of the parts such as the suspension arms and hubs are large parts to make the roblox physics be more stable. as far as the setup goes it’s just your basic double wishbone with some simple double hinged springs. it needs to be scripted. the two rear wheels (or all of them) and the one motor that actuates my “steering arm” need to be controlled via a motor controlled by a vehicle seat. if anyone did that i would really appreciate it!

also here’s my super complicated “trophy truck” style suspended single wishbone struts in case you’re into that!

1 Like

This is awesome. You always make incredible stuff. I’m going to give scripting it a shot.

yes!!! thank you!!!

Why did you add an anti-lag script?

o thats just a virus that perpetuates through my places that i never remove sorry

Yeah, I removed those for you. I was also wondering about them.

Here’s what I came up with! It’s pretty fun.

thanks so much ur the best

for some reason the model isn’t inserting, could you post the rbxm file?

Yeah, for some reason the thumbnail wouldn’t load, too. I updated the model and it seems to be working now, try it again.

thanks!! this is a really, REALLY fun little thing to blast around on. there’s a few minor things that make it a little funny, for example there’s a delay from when you power off and power on (throttle 1 and 0). also it seems to brake on throttle off, which is ok but in combination with the throttle response thing it makes for awkward letting off of the power. other than that the script is really cool. i love how you can make it rear or all wheel drive, also how you can even make a biased all wheel drive right from the script! so cool i cant even put it into words! needs a swaybar though! lol

haha, no problem. Yeah, it’s definitely not the best as far as responsiveness. It’s pretty nontrivial to tune it right for everything to accelerate and decelerate at rates that feel good. I’m not the best at vehicles, but I’m working on it. Someone like NWSpacek would be the the one t go to if you wanted something super nice.

also funny how swapping from RWD to FWD has the opposite effect it would in real life. funny how the FWD cars all have acceleration problems though lol. also really clever how you sort of scripted a differential with the =- on one of each set of wheels.

Also, I have a challenge for you, and anyone else who’s interested. But you seem like the person.

It’s a rocker-bogie suspension system with a differential bar. I gave it a shot using glue instances as ball joints for the linkages, but it was way to stretchy, and would often bug out.

http://www.alicesastroinfo.com/2012/07/mars-rover-rocker-bogie-differential/

I may have also had trouble because the rover I was trying to make it work on had details on it that I’m sure were slowing down the physics. So I’m sure I won’t be using a differential system on my actual rover, but it seems like a cool challenge.

in my experience, the way to fix roblox physics (specifically hinge physics) is to make larger pieces where the hinge* connects to a part. the bigger they are the more stable the joints get. that’s a pretty neat suspension system, where exactly does it require the ball joints? ball joints can usually be substituted in my experience with a U joint or a multiple hinge linkage. sort of like on the tie rods for my steering arms in that chassis.

Either end of the linkages that connect the differential bar to the rockers appear to require a ball and socket joint or U joint.

If you look at it, as the parts move, there will just slightly be more than one dimension of movement. It’s very slight, unless the rocker moves dramatically. I’m sure that the joint could be substituted, especially with the flexibility of Roblox’s hinges.

i could mock up a system of that if you could resolve the throttle and off power brake problems

or do some other engineering if you wanted

The slow acceleration can be fixed pretty easily. Look at line 63.

	for i=0,1,0.01 do	
		powerWheels(i*throttle)
	
		runS.Stepped:wait()
		
		if not(thisThrottleChange==lastThrottleChange) then
			break
		end
	end

That for loop is there to add an acceleration time, as opposed to just immediately putting on full power when you throttle on. Here, it starts i at zero, which probably isn’t the best idea. You can bring that up to something like 0.5 to start it at half power instead of zero. Also, the last value, 0.01, is how much the value changes per frame. A higher value there will be a faster acceleration. You can play with those numbers to get what you want.

For the brake on throttle off issue, I’m not exactly sure what your desired behavior is. Would it just coast for a while like it’s in neutral? It already does coast a little bit as it is, decelerating pretty nicely. I don’t know if coasting indefinitely would be desirable, because it would make the vehicle very difficult to bring to a complete stop.

And I don’t need the rocker-bogie system. I’m not asking you to make it for me. I just thought it may be a challenge you would be interested in, and it would be cool to see.

when you throttle off it feels like it’s braking, not sure if its some sort of torque on zero throttle thing, but it’s just a little bothering. and yes that rocker bogie is very interesting, would be cool to see in an offroad vehicle.

also thanks for the tips on getting the throttle response better! adding a couple swaybars also improved the handling dramatically. FWD is funny, AWD seems like the best so far. RWD offers great turn in response but after that it likes to push.

unfortunately editing those numbers did not fix the “delay” in the response, did make them nice and quick though. the issue is theres a little delay from hitting W and the wheels starting to turn. it’s most noticeable after accelerating.

Oh, well I don’t know. There’s nothing that would do that in the script. It doesn’t sound like it would be the fault of the code, maybe it’s a surface motor issue. It seems pretty snappy to me, though. I’m not sure if I’m seeing that over here.