Dont mind the duplicated wheel-parameter part - was a no-go try. ... as for the wheel-anims. There are two base movement script - one for rotations and one for movement along axes. The wheel animation on my BTR (somewhere in the second third Just a set of 5-7 lines for each wheel) is simple actually, but needs a little math into it - specially if bigger math goes into.
The actual wheel is just an empty mesh. In the wiki, you can see a way to gain the actual wheel rpm and slip from its original position (as it goes up and down thanks to damping and suspension scripting internal in OT) in a certain way : for classic up-down going wheel its just rpm and the offset from the original position // and for the swing wheel witch gives you aether sin or cos of the angle its at. So actually, you make the suspension parts in a way, so that they move whyte this data and use of Pythagoras triangle math. You have to make the simple maths separate and feed their value into the rotation and axis movements.
http://xtrac.outerraworld.com/trac.fcgi/wiki/wheel_data Of course, just one such rotation or movement is possible for one mesh - thats where the magic of the empty mesh (like the wheels) comes by. You make a duplicate of the mesh, where one will be whiteout verts and the second (parented to the empty) in its original form, where both can have their origins at the same place (or not - is just on the thing you need from it). The empty then gets a rotation according to the actual wheel height (trough Pythagoras) and the second gets rotation on another axis according to actual wheel rpm. -- So you see, when stuff is parented, the "children" parts move according to their parent. So, you can make some nice suspensions going on, like this bandicams buggy :
... you can use also the "turret script" actual rotation angle too for other purposes and whyte careful thought, enough properly parented empty meshes (whyte their origins well placed), you can combine rotations and axis movements into a lot of things. ... maybe even combine whyte the "IF" function - movement after a certain thing happens (or angle reached), or construct your own movement in a cycle of "IFs".
Off course many things will be more easy to do as bone-based animation (when the first person update comes - thats mostly for live-form movements), but these simple maths can prove unchallenged in mechanical things like simpler suspensions or the MIGs gear retraction. ... also, much more functions and real-time data capabilities will be when the "black box" will be done. I cant really wait for that one to make some rocket ballistics.
Yes, it gets a little speculating till the wiki is understood for new folks at it, doe, you always can just ask.
I thought to make a little vid for scripts in a little more detail at Christmas, doe, many things stalled my and was glad to finish at least the blender-vid. But i will get to it, when i get time (now in school, so no OT for me yet). So i play whyte blender modeling, started some UVs training and script thoughts till i can try them out whyle i have some free time.