80place
Multiversal Mechatronics - KSP All the ideas and discussions
1 vote Vote

Operation Sequencer

Create a system for users to configure a sequence of trigger based operations for automating a rocket build, potentially allowing save / reuse of sequences on other rockets.


The goal of such a system would be to allow a rocket to be configured to perform certain tasks automatically that are beyond the scope of the autopilot and too specific or simplistic for autom8. Additionally, such a system could provide a UI allowing visual creation of sequences while in-game, without requiring knowledge of lua or other scripting languages.


Possible operations are stage activation, autopilot commands, and other third party plugin defined features.

The real power of operations would come from other plugins, allowing rockets to automatically deploy solar panels or control servos.


Possible triggers are altitude, elapsed time, positioning of mun in its orbit, landing, key presses, on-screen buttons, fuel levels, stage activation, orbital / atmospheric data, and other third party plugin defined features.


Triggers can contain other triggers, in which case the containing triggers will not become active until the parent trigger fires.


In order to allow for both non-linear / asynchronous and branching events, some operations would be needed that cancel pending triggers. This could either be sentinel triggers and setters, or an operation to cancel all other triggers on the operation's trigger's parent trigger.


The UI could be implemented as a drag/drop on to a vertical tree. I drew up a walkthrough on how I envision the design here:

http://tinyurl.com/cus98ku

(Note: SkyDrive OneNote Preview seems to have issues with positioning, causing many elements to be shifted or overlap. I will grab some images later on.)


The first segment shows a rough sketch of the UI as it would appear on a fresh sequence. The automatic "Launch" trigger is in the operation list, and a list of operations and triggers are provided for dragging to any of the "operation lanes" of the sequence. At the start, only one such lane exists.


The second and third segments show the "Set throttle" operation being dragged into the launch trigger. Not shown in the third segment is the user setting the throttle value to "full" when the operation is created.

This would probably be done by the operation triggering a dialog window on creation, or later on through double clicking it in the sequence window.


The fourth segment, "Click drag trigger to create post-

Shard, 26.09.2012, 11:48
Idea status: under consideration

Comments

Leave a comment