This might be worth thinking about. I propose that when constructing a ship using a shipyard a player should have the option of using a
combination of already existing blocks and raw resources to complete a ship.
Basically, let's take the resource calculator
MSCC - Megacrafter127's Ship-Resource-Calculator made by
Megacrafter127 a step further and put an option in the ini that allows players to put raw resources directly into a shipyard. If you're worried about this being OP, put in options that would make this
slightly less efficient than crafting them.
Solve the issue of huge ships being made absurdly quickly by implementing a time penalty. Maybe even allow factory enhancers to be attached to a shipyard to alleviate a bit of that penalty. Allow resources to be deposited in smaller batches, cutting down on overall construction time.
This is just a quick solution I thought up for the problem of crafting being a brutally tedious and imprecise art form. At present, a massive ship requires having a slew of factories working with different amounts of enhancers to churn out hundreds of different block types in wildly different amounts.
At present, crafting even a medium sized ship with a lot of detail can take hours, hours that you are forced to spend slaving over a complex network of factories instead of actually playing the game. Obviously nobody should be able to gobble up a planet and spit out a cruiser in 5 minutes, but restricting players' access to complex ships by imposing unnecessarily menial labor on them is just bad game design. There are other options.
Edit:
Mariux hit it right on the head with this I think.
TLDR version:
I am all for this idea, BUT I think people need to work for the solution to get it set up. How about we have a machine that creates recipes, and then another that uses those recipes to automatically create the items a shipyard (or factory) requests? Also, let's implement a good permission structure on storages since this might make it too easy for faction members to use up all the resources.
Concerns:
1. It is not realistic to have automation come at the cost of taking up more materials. It would discourage automation of large ships as well. I don't think this is the direction we want to go.
2. If a shipyard can simply attach to factories, and items are automagically created, it would be too easy. People could simply go mine, and then build a ship in their shipyard. This does not reward thinking. Hard work though it may be, there is no challenge.
Suggested Implementation:
1. Add new block types to supplement the existing factory and shipyard system.
A. "Configuration Copier" - This machine can be connected to ONE factory. You set the factory to create an item, connect the copier, and have the copier create a recipe for that item.
B. "The Controller" - This machine uses recipes from a copier to produce items, using the factory it is connected it. It can also pull items upon demand from other storages and other controllers and can control a shipyard (more on that later).
2. Allow manual operation of these machines, in addition to automation.
3. Allow shipyards and factories to connect to a controller. If a recipe exists in a controller, the shipyard or factory will attempt to pull the items out (or have them created).
4. Allow controllers to give priority to storages, factories, and other controllers.
Example: A shipyard is set to pull from a controller. That controller is connected to a factory AND a storage, set to pull from storage FIRST, before using the factory.
Example 2: A faction may set up personal controllers for each member. Those controllers would first pull from a person's personal storage, then from a personal factory.
5. Allow a controller to connect TO a shipyard (as opposed to a shipyard connecting to the controller). It would then behave just like a shipyard. You could load designs, test them, edit them, ect. But, here's where things get interesting. Instead of the shipyard pulling from it's sources, the controller PUSHES items TO the shipyard. The shipyard would use the controller's resources only. The shipyard would need to have a generic "Unload current design" button added to unload designs loaded from other controllers.
Example: Every member in a faction has a controller that is connected to the same shipyard. Everyone can use the shipyard, but can only use their own personal resources when building ships.
6. Allow controllers, storages, and shipyards to have owners and faction permissions. This would be similar to how a shop works. Founders of a faction would always be able to change the settings.
Example: A controller is set to only it's owner to access it. It pulls items from a personal factory and personal storages.
7. Allow permissions to be set based on WHO is using a machine or controller.
Example: A controller allows rank 3 or higher members to use it. This controller is connected to 2 storages. One storage is set to allow rank 3+, while the other, rank 1+. The controller is set to pull from the rank 3 storage and then rank 1 storage. If a rank 3 member attempts to pull a certain item out, and that item is NOT in the rank 3 storage, but IS in the rank 1 storage, the operation will fail. However, if a rank 1 member attempts to pull that item out, then the controller will pull from the rank 1 storage. As a player progresses in a faction, their access to shared resources can increase automatically with their rank changes.
8. Allow controllers to be turned ON or OFF, manually or through logic, like item pulling works on a storage.
A few notes:
I realize that some of the functionality may are redundant. There can be two ways to do the same thing. This is intentional to allow variability and complexity in configuration. These are part of what is fun about setting up production systems. It allow communication and coordination. This is what sets StarMade apart from MineCraft, and my idea apart from the ME Machine of Applied Energistics.
Thank you for your time, thoughts are welcome, as always.