Ok, one possibility (assuming the scripts are fairly similar), this is my understanding of what's going on -- correct me if I'm horribly wrong!
in Script_AI_DesignCreation.txt -> Can_Create_Design_Type_Of_Type()
it does a Pick_Vehicle_Size(), which gets the size from a global lst_AI_Design_Type_Vehicle_Size list. That list is populated in Script_AI_Global_Settings.txt -> AI_Set_Race_Design_Types().
So the entry for "Space Yard Ship" in AI_Set_Race_Design_Types function could have:
set veh_size_class := AI_VEHICLE_SIZE_CLASS_FREIGHTER
As to minimum space needed for a viable design (part + requirements) I'm not sure if the function exists, but could be created if it's not:
is_minimum_space_available() could be called during Can_Create_Design_Of_Type(), and bail if there isn't room.
Bleh, I'm cross-eyed now
