8,836 Commits over 1,735 Days - 0.21cph!
Tweak intertia tensor values
RetroSnowmobile set up, now driveable.
WIP other snowmobile setup. Colliders etc
Modify retro snowmobile collider mesh:
- Split into two parts and fill in the gaps so it can be convex.
- Limited dissolve to remove unnecessary verts + triangulate.
Move wheel friction from general car setting to per-wheel. Also spelling tyre the commonwealth way 🇬🇧
Added icons and items for the two snowmobiles
WIP all sorts of work on wheel ground FX and general wheel/FX/suspension/steering kind of code. Various refactoring to share code between modular cars and snowmobile. Won't run right now, but at least compiles.
Fixed IsOnThisModule method benig broken after the SleeperMounting merge
Snowmobile WIP terrain data and FX. Update modular car terrain system to allow sharing code etc. New ScriptableObject VehiclePhysicMatList holds the physic (sic) material data.
Rename needsVehicleTick back to isMobile, and make it always true for BaseVehicle and its subclasses (this makes it true on CardTable and Sofa unnecessarily, but better that than have it unticked by mistake elsewhere)
Fixed modular cars not using fuel after recent changes
Don't auto-load a save on BillBTestMap
▊▊▅ ▇▌▍ ▊▍▅▄█ ▆▄▉ ▅▅▆▇▍▆▉▉ ▌▌▉█, ▇▉▄ ▌█▌█▄▄▌█▋▉ ▄▌▍ ▇▇█▌▇▇ ▄█▄█
Fix snowmobile seat prefab ID, adjust wheelcollider suspension, other WIP
I investigated why snowmobiles constantly jitter but modular cars don't. Swapped parts around until I eventually determined that tall vehicles don't jitter, but short ones do. For instance, a modular car with only a flatbed would jitter, but a car with only a cockpit wouldn't, even if it used the flatbed entity script. Swapping the world colliders around made the difference. There are no bounds-based checks for vehicle physics in our code, so I looked at what Unity might set internally based on the collider setup. Rigidbody centre of mass was being set correctly, but we didn't set inertiaTensor. I've set an inertiaTensor here manually based on the one Unity calculated from a taller snowmobile, and it successfully removes the jitter. Ideally, we should do a similar solution for modular cars in case we ever add something like a low open cockpit, but I'll need to come up with a way of getting good inertia tensor values manually.
Fix wheel calc on snowmobile too
Fixed modular car wheel method issues
Secret front wheels. Realmed remove setup.
Working on snowmobile physics
Change MLRS username overflow mode from Ellipsis to Truncate, since the font we use now has no ellipsis.
More snowmobile setup, MountMenuVisible code in BaseMountable, other bits and pieces
Move all BradleyAPC.Targeting code inside #server, move AlwaysAllowBradleyTargeting check to server-side only
Set up snowmobile fuel and storage. Added a basic CanBeLooted check to BaseVehicle for vehicles to share. Other snowmobile setup. Set all seats to needsVehicleTick = false.
Merge for sleeper_mounting_2 -> Main, but GetMounted() needs fixing for Modular Cars. It's returning the chassis instead of the seat.
Split BaseVehicle back up, with the modified code from the merge
Merge in sleeper_mounting_2
Temporarily reintegrate all parts of BaseVehicle in order to facilitate the upcoming merge
Fixed vehicle sub-entities doubling up on the client side
Fuel and storage sub-ents
Move InitShared out of #SERVER area, and take additional #SERVER flags away from around childVehicles.Clear() - needed on the client as well.
More snowmobile WIP. Compiling now
WIP converting CarPhysics to be more generic, so snowmobiles can use it too. + some snowmobile code.
- Changed some more GetWorldVelocity calls into GetLoalVelocity, so they'll work if parented.
- Moved GetLocalVelocityServer and GetAngularVelocityServer rigidbody-based overrides into BaseVehicle, so we don't have to override with the same method for every new vehicle.