-
Notifications
You must be signed in to change notification settings - Fork 1
/
Instructions.readme
136 lines (122 loc) · 8.25 KB
/
Instructions.readme
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
Heli Assist
-----------
Credits:
This script uses modified components from existing open source projects. You
can find the source code of these projects along with license information below.
Project: Flight Assist (https://github.com/Naosyth/FlightAssist)
Copyright: Copyright (c) 2017 Brandon Worl
Licence: MIT Licence (https://github.com/Naosyth/FlightAssist/blob/master/LICENSE)
Licence:
MIT License
Copyright (c) 2019 Sean Campbell
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Installation:
1. Create a group labeled 'heli assist' (or whatever you have configured the
Heli-Assist group to be called) containing the gyroscopes, thrusters and
cockpits you wish to use with Heli-Assist.
2. Load the Heli-Assist script into a programmable block.
3. (optionally) configure the Heli-Assist config as described in the configuration
section.
Usage:
Once installed, Heli-Assist will align the craft with natural gravity. Using the
WASD keys will result in the craft pitching and rolling in the appropriate direction
as to result in forwarding or lateral motion. Additionally, it will regulate thrust
accordingly to maintain altitude.
Using the mouse or up down left and right keys will orientate the craft accordingly
in addition to any pitch or roll already applied to move. Activation of the inertial
dampeners will result in the craft pitching and rolling in the appropriate direction
to slow the craft.
Flight Modes:
For ease of use, Heli-Assist provides different flight modes for multiple situations.
* Flight mode will make the craft behave as described above and is activated by
running the program with the argument 'flight'. The 'toggle_flight' argument
will toggle between flight mode and manual mode.
* Landing mode behaves almost identically to flight mode, except that the maximum
pitch and roll (and thereby rate of acceleration) will be reduced to allow for more
precise movement. Additionally, the inertial dampeners will automatically activate.
Landing mode is activated by running the program with the argument 'landing'. The
'toggle_landing' argument will toggle between landing mode and flight mode.
* Manual mode will disable the WASD keys and inertial dampening affecting pitch and roll
but will still regulate thrust in order to maintain altitude. Manual mode is useful for
aiming at targets or ignoring the limits of Heli-Assist's other flight modes, without the
Heli-Assist automatically correcting. Manual mode is activated by running the program with
the argument 'manual'. The 'toggle_manual' argument will toggle between manual mode and
flight mode.
* Standby mode will cause Heli-Assist to relinquish control of all gyroscopes and thrusters,
allowing the pilot or another script to control them. It is helpful for switching between
different craft configurations (such as shifting from hovering configuration to a high-speed
configuration like a modern VTOL aircraft such as a harrier) or allowing for another script
such as Vector Thrust to take control. Standby mode is activated by running the program with
the argument 'standby'. The 'toggle_standby' argument will toggle between standby mode and
flight mode.
* Shutdown mode will power off all thrusters and gyroscopes associated with Heli-Assist.
Shutdown mode is activated by running the program with the argument 'shutdown'. The
'toggle_shutdown' argument will toggle between shutdown mode and flight mode.
Parameters:
Heli-Assist provides multiple flight parameters in addition to its modes for customizability.
* The Precision Aim parameter can be used in flight, landing and manual mode, reducing the
sensitivity of the mouse/joystick to make aiming easier. It is toggled on/off by running
the program with the 'toggle_precision' argument.
* The Lateral Override parameter can be used in flight and landing mode and overrides inertial
dampening on the lateral axis, meaning that disabling the inertial dampeners will only
disable forward and backwards dampening, to make cruising easier. It is toggled on/off
by running the program with the 'toggle_lateral_override' argument ('toggle_lateral_dampening'
does the same and is retained for compatibility reasons).
Configuration:
Heli Assist is configured by editing the Custom Data of the programmable block and is automatically
generated on first use.
* block_group_name - This allows for the setting of a custom group name for blocks associated
with Heli Assist. By default, it is 'Heli Assist' (without quotes).
* start_mode - This sets the mode that Heli Assist will be in when it is first started, as
described above. By default is 'flight'.
* remember_mode - This setting determines whether Heli Assist should attempt to remember the
mode it was last in when the script is restarted. By default, it is 'true'.
* max_pitch - This sets the maximum allowed pitch in degrees for both the WASD keys and the
motion dampeners. By default, it is 45.
* max_roll - This sets the maximum allowed roll in degrees for both the WASD keys and the motion
dampeners. By default, it is 45.
* max_landing_pitch - This sets the maximum allowed pitch in degrees for both the WASD keys and
the motion dampeners while in landing mode. By default, it is 10.
* max_landing_roll - This sets the maximum allowed roll in degrees for both the WASD keys and
the motion dampeners while in landing mode. By default, it is 10.
* precision - This sets the reduction in movement from gyroscopes when in precision aim mode.
By default, it is 16.
* mouse_speed - This sets the mouse sensitivity in all modes. By default, it is 10.
Change Log:
v1.15:
* Fixed a bug where craft would gradually drift up due to incorrect craft mass being used.
v1.14:
* Fixed a bug where high pitch and roll config settings would cause craft to pitch and roll indefinitely.
* Fixed a bug where script config is not auto-generated when left blank.
* Added mouse sensitivity setting to config.
v1.13:
* Fixed a bug that prevented lateral dampening override from working.
* Added proportional dampening to inertial dampening.
* Changed lateral dampening to lateral override for less ambiguity
* Updated readme.
v1.12:
* Fixed a bug where control seats facing specific directions would make craft uncontrollable.
v1.11:
* Added automatic detection of new gyroscopes, thrusters and cockpits, updating every 10 seconds.
* Fixed a bug where specific gyroscope configurations would make craft uncontrollable.
v1.10:
* Added precision aim.
* Added lateral only dampening.
* Added standby mode.
* Changed landing mode so it will no longer force the use of dampeners.
v1.01:
* Fixed a bug where gyroscopes would fail to respond when placed in specific directions.