To make scripting easy to pick up, sample scripts come with every ship, (possibly specific to each ship) or on the website/manual.
- Go-to / Plot-course
- Plots a course to a point on the navi-com.
- Automatically tries to avoid collisions using radar.
- Gives players an introduction to radar and navigation scripting
- For use with several drones. (getting your ducks in a row)
- Gives players the tools to make wing men scripts, chase routines, et cetera.
- Search for _____
- Nearby materials
- Nearby installations
- Nearby ships
- Sleep until signal ___ is received
How players actually write their scripts could be done with logic boxes, but that's not as real as actual scripting. (and it's hard to personalize your code)
But then again we can't exactly have C++ scripting, as people will take one look and get discouraged.
So a middle ground must be found, perhaps more like python or even closer to a psuedocode language.
But the more detail and options, the more code can be optimized, and the more personal the scripts will be. (Also, interesting quirks and bugs in scripts will need to be fixed, and tested)
Probably a flowchart-like language will be needed for flow control (loops, 'if', etc). What goes into the boxes can start simple (start engine number N at power level P, find heading and range to nearest object with radar signature X, send this data by radio towards this destination) - make flow charts that implement higher level behavior (fly to this location without hitting anything along the way, search an N kilometer spherical volume for nickel-iron asteroids) - and then build those into yet higher level behaviors (make a map of this spherical region and send it back to me) and from that into even higher levels (make money for me).
Players could build their own behaviors from boxes at any level - and export (or even sell) completed boxed-up scripts. The clever ones will make entirely new high level behaviors - the more casual players can just pick simple high level commands and live with the lack of control and subtlety.
Because boxes and lines systems are slow - we'll take the most common actions and rewrite them in C++ for speed - but the interface to the flowcharting system will be just the same. We might even consider automating this - so that boxes-and-lines flowcharts could be automatically converted into C++ code and compiled so that they'd be included into the next run of the game - but much faster.
Scripting could become quite powerful, as it allows for controlling multiple ships. If desired, a pikmin like armada of drones could be sent into battle, or in an ambush.
An idea which I love. But there must be some balancing, so scripts would have to be quite clever to get autonomous drones that do what you actually want them to do.
For every sensor or weapon, or style of attack, there has to be a countermeasure.
- Flares and chafe can be used to confuse drones or heat-seeking missiles.
- Signal jamming can be used to cut off communication to drones, leaving only COMPLETELY autonomous drones able to function.
- Send a script to hack drones
- Perhaps some drones might be programmed to only run signed scripts