Space Engineers

Space Engineers

评价数不足
[APck][TP] MergeMagForce Drive Assembly
   
奖励
收藏
已收藏
取消收藏
文件大小
发表于
415.956 KB
2022 年 12 月 11 日 下午 3:11
1 项改动说明 ( 查看 )

订阅以下载
[APck][TP] MergeMagForce Drive Assembly

描述
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 条留言
cheerkin  [作者] 5 月 4 日 上午 3:11 
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 5 月 4 日 上午 3:06 
is this still compatible with apck core?
BigStar 1 月 25 日 上午 3:06 
Oh, thank you, this information is useful, I'm going to play with it now.
cheerkin  [作者] 1 月 24 日 下午 2:54 
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 1 月 23 日 下午 11:52 
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  [作者] 1 月 22 日 上午 10:31 
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 1 月 22 日 上午 4:44 
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  [作者] 1 月 21 日 上午 3:29 
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 1 月 20 日 下午 5:36 
I found where to change it, but. It would be cool that he compensated for gravity rather than the set flight altitude.
BigStar 1 月 20 日 下午 5:05 
How to compensate for gravity on other planets