Is it possible to tell certain ranks what to attack/harass/colonise/protect when modding? ie. cap attack planets, flt cap attack ships etc. Anyone know what protect actually makes the ai protect?
Look at the ranks file lately?

You can edit the ranks and what they do, so you could change all ranks to lets say, 'colonize only' via the sf_data_ranks or whatever ranks file your server has. Best to make your own though.
I know you can tell ships to spawn at particular coordinates, do they only do so once, or every time they spawn? (I could check that one myself and will this weekend if I don't get an answer).
Is it possible to make an ai spawn once, and once only per game? Or, use x ship until it's first death then use y until the server resets?
Right now the coord spawns a ship only once at the moment, you specify where, the name, etc. And it will spawn at the location, you can do coords or planet location. This spawn only happens once. As for multi spawning every time, not yet.
What are the possible types of win conditions right now? hold # of planets for xmins, capture x, y and z for x mins. Anything else?
Hold # of planets for min/sec/hour.
Hold these planets for min/sec/hour.
Theres something called 'conquer' instead of 'hold', so I'm wondering if you only have to capture the planet once, not sure, havent tested it. "conquer * planet*" same way as hold is use, just 'conquer'
Can I lock modules for ai only use?
No, not really. In the future there will be locked ships/modeules, but not anytime soon, better things to work on

.
Can I have multiple races but only let humans use one of them?
Yeah, the new addition I added, you can set the AIPOP to 0, thus making it a human only race really.
Is there any way to make an ai or even ship type/colony invincible like the SB was?
Use super shields and make it high module room so you cannot use it unless on a colony. Making a ship 'SB' type is using more then one tractor and having a factory, it will turn it into a 'SB' type ship. Otherwise theres no easy way to do it. It would use the values that SB have in the scn/dat or the sf_data_game file.