Space Engineers

Space Engineers

Not enough ratings
[APck][TP] MergeMagForce Drive Assembly
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
415.956 KB
11 Dec, 2022 @ 3:11pm
1 Change Note ( view )

Subscribe to download
[APck][TP] MergeMagForce Drive Assembly

Description
Clang Drive optionally used by AutoPillock control script.

It is controlled by ThrustProvider script.

How to
Spawn MMF assembly.
Paste on the APck-managed grid.
Remove remote and gyro from MMF assembly.
Add grids' forward-gyro, remote, and optionally control seat/cockpit (for WASD controls) to ThrustProvider group.
Run command:clear-defs on APck. You should see TP:True in APck PB terminal printout. This indicates that ThrustProvider is detected.
Run command:thrust-delegation:Clang on APck to let the ThrustProvider handle movement. You can add it to APck PB CustomData to be enabled by default.

Alternatively, you can use this build as a stand-alone system, without APck. In this case, don't remove the gyro and remote, make sure you have control seat or cockpit added to TP group, then run the following arg:
command:set-mode:Clang
It can be placed in CustomData, as usual.
In stand-alone mode it would compensate for gravity, but you won't be able to change dampening.
21 Comments
cheerkin  [author] 4 May @ 3:11am 
Yeah, but you probably need to update both scripts, the blueprint may contain outdated. The important thing is the contraption itself, and it is still the same.
Mac and Cheese 4 May @ 3:06am 
is this still compatible with apck core?
BigStar 25 Jan @ 3:06am 
Oh, thank you, this information is useful, I'm going to play with it now.
cheerkin  [author] 24 Jan @ 2:54pm 
Haha, this is such a random change, but funny enough it would do the trick to some extent. If you want to trick the perceived gravity just multiply the whole vector, not just Y component, like this
localGVector *= 1.1 // or 0.9
after that block.

But better, if you want to tinker, look into the UpdateThrottling method. There you can adjust some values to control how much "force" it generates for a given input.
BigStar 23 Jan @ 11:52pm 
I used it offline, copied this structure

Vector3D localGVector = Vector3D.Zero;
if (NG != null)
{
localGVector = Vector3D.TransformNormal(NG.Value, invMatrix);
localGVector.Y *= -0.9; //1 - def
}
cheerkin  [author] 22 Jan @ 10:31am 
Are we talking about ThrustProvider script? I can't figure out what exactly did you change. Do you use it through APck or stand-alone?
BigStar 22 Jan @ 4:44am 
Strangely, when I take off at gravity 1.2, my ship starts to rise up by itself until gravity becomes 1.0, I changed the parameter [ng] to 0.81 and my ship began to fly normally.
cheerkin  [author] 21 Jan @ 3:29am 
What do you mean? ThrustProvider takes current gravity vector and compensates it, nothing to change there. It is not perfect as merge drive is unpredictable in the amount of "force" it produces, thus it would drift a bit. Does not matter on current planetary G
BigStar 20 Jan @ 5:36pm 
I found where to change it, but. It would be cool that he compensated for gravity rather than the set flight altitude.
BigStar 20 Jan @ 5:05pm 
How to compensate for gravity on other planets