The ability to sell/trade complete systems .... eg a race develops the A-1 Railgun and sells / trades it to another race instead of sell/tradeing each individual componant
This would be fairly straightforward in terms of programming but without the background knowledge, would the second race be able to build it? For example, if the US gave Albania the plans for the latest Patriot missile, could Albania actually manufacture the missiles?
To take this suggestion one step further how about selling complete weapon systems? Sell 10x A-1 Railguns without giving the tech. I see backstab's suggestion as giving the information to 'licence produce' a system. Whereas, what I'm suggesting is just like selling Typhoon to Saudi Arabia. Of course you could retro-engineer the system maybe destroy the system to give you a random number of RP on the tech?
This is harder from a programming and gameplay perspective but probably more realistic. The problem is how you model the 10x A-1 railguns. Does Race A have to bulid them before giving them to Race B and if so, how do I account for that in the game. If instead you just say Race B can bulid 10 railguns and the program keeps track, that is no different than giving them the plans and if they are building it, how do you stop them building more?
These were the suggestions that started me down the whole ship components route, which from my own playtesting works very well and seems completely natural now. With components working, I decided to revisit the above. Despite my initial pessimism regarding whether passing on manufactured components to another race was workable, I have found a way to make it work. The ability to manufacture components is now in the game, so that's no problem. Transferring to another race is easy enough as well. I can just bring up a list of races on the new stockpile section and allow you to transfer components to another pop on the same planet, although that is really only workable in a multi-Earth start or in a game with mutiple player-controlled races. The ability to use components built by another race does open up a couple more significant possibilities though which I'll get back to later. However, the real problem is the one that John pointed out.
I'm worried about the micromanagement. How often do we think that we're going to be trading components between races? I can see it for a multi-civ earth game, but not of a game involving a single player race with lots of alien NPR. It also seems like it would vastly complicate class design - how do you specify a class that contains "alien" components? It seems that this might be more trouble to implement than it's worth.
This was what had me stumped - how do you design a class that contains components that you haven't researched yet? At the moment the tech you have researched is contained in the RaceTech table. This database table is the whole basis of your technical knowledge. The class design window will list all class components that are contained within (or in reality linked to) this table. At first I started playing around with extra columns to differentiate actual knowledge and temporary knowledge but it was too complex because as you can imagine the RaceTech table is referenced in a lot of places and I was also concerned it would screw up research and pre-requisite techs, etc.. Then I had a light-bulb moment

I have added a new table to the database called RaceDesignTech. This contains a list of the systems you can use in ship designs but that you don't have the knowledge to build yourself. RaceTech remains as it is and none of the areas of the program that reference this table are affected. However, when you open the class design window it now contains all the tech systems from both RaceTech and RaceDesignTech, allowing you to design classes containing systems you can't build. The name of any design-only system on the Design View is preceded by (D) and there is a checkbox that allows you to hide all design-only systems. When you research a system that is in RaceDesignTech, it is deleted from that table and added to RaceTech
When you attempt to create a shipbuilding task for either construction of a class that contains design-only system or a refit to a class with design-only systems, the program checks the component stockpile for that population to see if the necessary components exist. For construction it is very simple. If the required amount of design-only components are in the stockpile then they are consumed and the ship construction goes ahead. As normal (for v4.3) the cost of the ship is reduced by any stockpiled components, including the design-only ones. If insufficient components are available, a popup message informs you of that and you are unable to build the ship. For refits, it is slightly more complicated from a programming POV (but not from a user POV) because I have to check which components are actually needed for the refit. Some design-only components may already be in the ship that is being refitted so they wouldn't need to be in the stockpile.
This method makes designing ships with alien components very easy and the check on shipyard tasks means you can't build ships that use alien components you don't have stockpiled. As John pointed out though, the situation where an alien race gives you components may not happen very often. However, as I mentioned earlier, this ability to use alien components in your ships opens up a couple of new possibilities. The first one is that you can find ship components in ruins. You may find a cache of Improved Gravitational Sensors, perhaps some 20cm Ultraviolet Lasers or just some old Cyogenic Tranport Modules. Or perhaps one or two very advanced systems. These can then be transported to a planet with shipyards and incorporated in a special class of ship. When you find components in ruins, the program will automatically add those components to the new RaceDesignTech table so you can use them in ship designs. The second is related to the new scrapping method for v4.3. When you scrap one of your own ships in v4.3, you now have the components of that ship moved into the stockpile for the planet rather than receiving minerals. You can them scrap the individual components if you wish or use them in new designs. In the case of a captured alien ship, which you may capture using the new boarding combat, the same method will now apply. The alien components will be added to your component stockpile for use in your own ships and any components that you can't already build will be added to the RaceDesignTech table.
Once you have alien components in your stockpile, whether they be from a friendly alien race, a ruin or an scrapped alien vessel, an alternative to using them within your own ships will be to try and learn tech data by taking them apart. I haven't decided on the exact mechanics of this yet but I'll post the details to this thread when I do. Obviously you will lose the component in this case and the chance of gaining data will be limited so you will have to make a choice between using the component to gain a tactical advantage or expending it in an effort to gain some tech data.
I hope all of the above will add a new dimension to ship design.
Steve