Ok, so to build ships in game the makeprototype is broken (last I looked or had major issues). To make an new ship you need to make a *.proto file and drop it in the ships folder. Also, then add the file name to prototype.lst file. My advice is best to look at the A-wing as a stat and then an SSD for an example how progs and what not work, specially for the turbolift progs. Once your new ship is in, you do a quick hotboot and your good to go.
There is no real easy way to OLC ships in fote. You can build an area and then use the setship command to set start room, ending room, weapons and all that good stuff (used that myself for an RPSHIP) but as far as I know, you cannot copy that ship as a template. I have a sneaking feeling that it was going to be that way at one point (write out the ship file as a prototype file).
Also, ships can have flags set on them too, but I do not think the flags can be set in the .proto file. It has to be set once the ship is bought/created in the game. A lot of the flags are used for telling if the ships weapons or what not are disabled. But also for simulator, and my fav nodestroy :D
SWR vs SWFOTE ship system is pretty different when it comes to the physical ships. You'll want to take a look at tech.c ships.c and space.c. That's where all the fun stuff is. As too the rooms how they get assigned from a proto file to the vnum - there is a value called Numrooms so, you have a ship with 4 rooms and you set it to three, one room get's knocked off. Bad joojoo.
I'm pretty tired atm but if you want, tomorrow when i get some time I'll try to break it down piece by piece as best as I could when I went digging though the code.
Functions of intrest ships.c
void do_salvage (is used instead of do_sellship)
Hope this helps in some point,