If you’re anything like me, you find reading Starter Kits extremely hard.
Here is a bot that – as far as I know – correctly reads the engine output, correctly saves it in some internal data structures, and then correctly does nothing with it.
The point is, this might help people understand how to parse the raw engine output, if (like me) you prefer not to use a starter kit.
import json
class TokenReader:
def __init__(self):
self.tokens = []
def get_token(self):
if len(self.tokens) == …

For writing, each turn you must send a single line of space separated commands. There are 3 types of commands, e.g.

g

c 4

m 12 e

The first says generate a new ship, the second says construct a dropoff by ship 4, and the third says move ship 12 east.

So a valid line would be g c 4 m 12 e\n

The order does not matter.

At startup, you must also send your bot’s name on a line (this is the very first thing you send).