17:46
So after reading through the forums a bit, here are a few useful pointers I've found:
1) Drop naive_navigate early. It's a basic pathfinding function that is a part of the game's API, give it 2 positions, and it gives you the next valid move to get from A to B, however as the name suggests, it's naive. Replace it with something better (perhaps an A* implementation?)
2) Turtle swapping is a thing. Collisions are only calculated at the end of the turn, so if 2 adjacent turtles (ships) both move into the other's spot, they will merely swap positions
3) Shipyard blocking is also a thing. I don't think you can place your turtle on the enemy shipyard, but you can certainly surround it with your own turtles, then their only recourse is to sacrifice their own turtles to kill yours.
4) Near the end of the game, rather than having your turtles carefully drop off their remaining halite one by one, simply collide them all on the shipyard. When 2 turtles collide, they drop all their halite. If they collide at a dropoff or shipyard, that halite is automatically collected, so colliding all of your turtles at the end is faster than having them one by one drop off
Update: A* is overkill, but naive_navigate should still be replaced ASAP
Also important to note: Your bot has only 2 seconds to process each turn