We already know we can use LTSL to mod the game as a modder, but what about as a player? I'm sure the AI in Limit Theory are super smart and all, but I'm not sure I trust them. Probably going to all rebel and kill me one of these days, you know how it is with alien robots. The solution? Allow the player to write LTSL code to govern their autopilot and the autopilots of other ships.
Maybe the AI is really bad at tracking with turrets: I can open up my menu, get a console inside my ship, and write some code to make my turrets use a PID feedback loop instead of whatever lame stuff the AI gunner I hired does. OUT THE AIRLOCK, STEVE! WE DON'T NEED YOU EATING THE FOOD! WE HAVE BETTER TURRETS! Now, obviously if a player never wants to touch the coding interface, they shouldn't have to, but being able to set macros and keybinds would add so much to the game.
Josh mentioned liking the idea of having AI competitions where programmers would write code to control their fleets and dogfight, and the code to control ships is already there, so it seems like a good next step.
Let's get into the specifics.
Onboard computers:
Your "computer" is really just a window with a LTSL terminal and shell. You can write whatever programs you want to data drives, which would be physical inventory items in your cargo hold. One program (ie one LTSL file) is one data drive. (Perhaps standard data drives can be bought from the markets - you could buy an upgraded HUD that somebody wrote and that got patched into the game.) To install a program, you would take a datadrive and equip it to your computer. As long as the drive is equipped, you can use the program.
Programs
Programs can be run by typing in their name in the shell, by activating their data drive from the inventory, or can be set to autorun. Once running, programs will run in the background while you fly. Programs will have access to:
- Thrust and steering outputs
- GUI and HUD outputs
- Market/quest outputs and inputs
- Sensor inputs (scanner, position of other ships, etc.)
- Keypad/Mouse inputs (So they can respond to pressing buttons on your keyboard.)
Create remote control fighter swarms! Design a HUD that makes perfect sense to absolutely nobody! Play Snake while on the long warp rails! The possibilities are endless!