Component Connection Restructuring [My Idea]

    Joined
    Feb 11, 2013
    Messages
    86
    Reaction score
    0
    I think that the way components on ships connect now is a little unfinished (when looking at things like how Cockpits are connected and the way Weapon Computers Work)




    How I would like it:
    Different Component Classes:
    + Core
    Can be connected to:
    -- Cockpits
    -- Anything a Cockpit can be connected to

    + Cockpit (new Block)
    Can be connected to:
    -- Power
    -- other Cockpits
    -- Viewport (current SD Cockpit)
    -- Shield Disperser
    -- Cloaker/Jammer
    -- Computers

    Behaviour:
    - Core (Use left and right (or even a GUI) to switch between Cockpits. The Core itself serves as a cockpit too)
    - Cockpit (Use left and right to switch between Viewports. The Cockpit itself serves as a Viewport too)
    If a Cockpit is connected to a Cockpit, show the current Viewport of said Cockpit when switching to it.
    Cockpits each have their own Computers and Weapon Bars (when switching to one in the Core bar changes)
    Some Components can transmit Power [marked by +](they can give components connected to them power that they receive from connected Power units)
    Every Component that receives Power can be directly connected to Power in the form of Component -> Power (Power is connected to Component, not the other way round)

    An Example
    Core:
    - Power
    - Shield Disperser
    -- Power
    - Cloaker
    - Cockpit:
    -- Power
    -- Viewport
    -- Viewport
    -- Missile Computer
    --- Missile Array
    --- Power

    Example of Power Transmission:

    Core
    - Power A
    - Shield Disperser
    -- Power B
    - Cockpit
    -- Power C
    -- ViewPort
    -- Weapons Computer
    --- Power D
    --- Antimatter Cannon
    -- Salvage Computer
    --- Salvage Cannon

    Shield Disperser receives Power A and B
    Weapons Computer receives Power A, C and D
    Salvage Computer receives Power A and C

    What also would be cool is if a Turret Docking Unit would serve as a cockpit (e.g. use the other ships components as a cockpit)
    Like when you have a Ship attatched as a Turret the Tree looks like this:
    Core (Core thinks Other Ship's Core is Cockpit)
    - Other Main Ship Stuff
    - Cockpit (Other Ship's Core)
    -- e.t.c....

    This will add a better Co-op able ship design possibility (and make space for more complex Motherships with whole crews, which members will all be important).
     

    schema

    Cat God
    Joined
    Feb 17, 2012
    Messages
    1,552
    Reaction score
    2,604
    • Schine
    I like the overall plan, but I think it might get hard to manage very fast. It would be very easy to lose track of what is connected to what, and in the case of damage, you would have to have the exact ship layout in your head to know what belong to what.
    Another problem is, that splitting up the power for one ship would make that component of the ship useless when it is not in use. You can already kind of simulate the behavior you are describing with docking, since those are independent units themselves. The effect for crewed ships with turret docking would be very similar, since the only thing they are able to do in both versions, is to use the weapons of their component.
    I understand the need for more coop possibilities on bigger ships and stations. To give the whole crew purpose, I was going into the direction of making parts of a ship, that can\'t be used efficiently by one member. Like, e.g. a tactical map block which a crew member can use to mark targets and routes, or another one to manage friendly AI, even one control to manage power distribution (shields, weapons, etc) is thinkable. And of course they still can hop in a turret to help in battle. This would give each member a distinct but important role on bigger ships or stations.
     

    MrFURB

    Madman of the Girders
    Joined
    Jan 31, 2013
    Messages
    1,116
    Reaction score
    413
    Excellent, this is a discussion I think we need, as it becomes more and more apparent that huge, nearly god-like capital vessels will be here to stay, there just won\'t be nearly as many of them. Having so many subsystems, turrets, computers, and any other not-yet-added subsystems would make larger vessels nearly uncontrollable for a single person with only 10 hotkeys.
    In a year it might take 3-5 people to fully man an enormous thundering war machine of 100,000 mass while a single person might be able to make it float off somewhere and maybe shoot a bit. Then again, I\'m sure that all the \'min-max\'ers will find a way to become absurdly personnel-efficient no matter what...
    Having a more intuitive component/computer linking system would be a needed upgrade in the future once there are more components and computers to deal with, so I might as well throw in my 2 cents now.
    Let\'s make the system easy to understand but flexible enough for people to do clever things with so they feel an emotional reward for setting up ship\'s systems. I propose we have 3 types of system blocks: Control, Computer, and Component. (All ship-wide statistics like power, shielding, and thrust aren\'t controlled by any specific computer/control block.

    Control blocks are your ship core and your cockpits. Each one can be linked to up to ten computer blocks and allows the user to control them.
    In fleet carriers you might have one or two cockpits that do nothing but control docking/undocking and bay doors. You might have separate cockpits for turrets or broadside weapon arrays.

    Computers can be linked to components of the same type and any number of control blocks. Individual computers can\'t be used by themselves but can be customized to change the way it\'s components work. (One of my favorite things about Starmade right now! Weapon optimizations, yay!)

    Lastly are components which are the actual blocks you are trying to control, linkable to only one computer.
    Edit: All of this will be pretty hard to balance. One of the most expensive resources is manpower; Do you have enough players to do what you want to do? More importantly, why put 5 people in a huge metal target instead of having 5 separate medium-sized ships that cal all hold their own and get more done?
     
    Joined
    Feb 11, 2013
    Messages
    86
    Reaction score
    0
    So your Idea is....
    Control Blocks can be entered (e.g. Ship Core, Cockpit...)
    Functionality of all Connected computers can be used
    Computers control how the connected Components work
    If I understand that right, that means that I can make a computer that is Connected to Salvage Cannons and when I enter the Control Block it\'s connected to I can mine.
    This Idea of computers just gave me an awesome (but hard to implement) idea:
    A whole new aspect of the game: Computers with Programming.
    This is my current vision of the system that wouldn\'t really make casual use of stuff harder, but make it possible to make complex stuff
    Casual use:
    So you have a Computer and you want to connect Salvage Cannons, so you buy a Salvage Software Unit and put it into the computer.
    Then you tell the computer to run it. From now on, the computer works just like our salvage computer works now.
    Programmer\'s use:
    You put the Software Unit we bought earlier in and then you make a new Program: Programs have six actions:
    Left-Click
    Left-Hold
    Left-Release
    Right-Click
    Right-Hold
    Right-Release
    (when selecting that computer in the bar)
    You can then choose what the action is. Actions are program calls (e.g. your program tells salvage software to start/stop beam)

    This can make really interesting stuff. Combined with a software that can control doors and docking you can easily make programs like, detatch Turret and open Gate or fire multiple different shots at once. Or even make an auto-fire program! This would add to the possibility of complex ships and you could make very differen ships that even behave different.
    Or even, one could buy empty Software Units and burn your program on it!

    But this is just a thought of mine (as it is really hard to implement because you would have to implement a whole new scripting language and the code managing and stuff)