\1. Aircraft metadata
Define some values in the designer.
- Basic information: builder, platform, SP version. It may be automatically written on save.
- Aircraft control type: affects AI flight model. For example, classic, prop fighter, heavy aircraft.
- Alternative HUD display name
- Other statistics: stealth%
- Custom paragraph that allows the builder to write information
\2: Funky Trees
Functions and variables. Vector3 access should have both relative and world values where possible.
- Variable storage: read and write aircraft-wide values. It may optimize builds that use multiple similar codes.
- Local angular velocity
- Targeting (position from selected target): direction, distance, etc.
- Part-specific information could be accessed, using the ID, data requested, and its modifiers.
--> Possible accessible part information:
- [Any part] health (int); connection usage (bool);X/Y/Z rotation relative to aircraft axis (float); distance from cockpit (float); X/Y/Z angle from cockpit (float);
- [Any part with input controllers] value (float);
- [Prop engines, heli engines] actual RPM (int/float);
- [Jet engines] actual throttle (float) (note: simple, can be replicated);
- [Landing gear, resizable wheel, shock] extension/compression (float);
- [Piston] actual extension (float);
- [Joint/Hinge rotators] actual rotation (float) (note: specialized uses only, can be substituted with other suggested functions in most cases);
- [Parachute] used state (int 0/1/2) (note: simple, can be replicated);
- [Winch] actual extension (float); X/Z rotation (float);
- Catapult connector engaged bool isn't as useful as a game state variable, as not all planes use the part
- Weapon data is already accessible with current means
\3: Game controllers
Provide parts with methods for interacting with the game, and other complex parts.
- Status message block, text block that displays text in world space. Fixed, simple numeric, and formatted string modes.
- Image block that displays a sprite in world space (Unity Canvas component), and an image projector that projects an image onto aircraft parts. (Unity Projector component)
- Sound block: while this has been suggested, I'm personally interested in basic tone generators.
- Slew mode lmao
\4: Custom Target object
Modding component. Define a hitpoints value, detection range, and controller (may be separate components). It will take the collider on the same GameObject and detect weapon collisions like normal targets. When hitpoints are exhausted, sets a flag.
\5: Misc. smaller features
- VTOL engine networks. VTOL and RCN nozzles are only powered by engines in their network.
@vcharng i added a list of part data that might be useful
prop Engine "actual" RPM and parts hitpoint values, also boolean of connection between two given parts, please.
Kinematics time
@ForeverPie can normal speaker even make noise beyond human hearing?
@SnoWFLakE0s sets it to max everything and uploads as dog whistle
Definitely. For sound blocks, simple tone (possibly with customizable timbre) with a preset pitch (in Hz) that produces sound based on input would be great for custom SFX and whatnot.