Rails-Redefined and Reloaded

    Joined
    Oct 8, 2014
    Messages
    138
    Reaction score
    207
    • Community Content - Bronze 2
    • Purchased!
    • Legacy Citizen 10
    A fleeting thought-Why should rails differentiate between entities as long as the rail tracks are continuous?

    What I mean is this: If a track of rails ends at a block, but the rail track is continued on another entity (docked with appropriate alignment), currently a raildocker+core will stop at the boundary between the two entities. Why the restriction?

    Imagine this-A large battle cruiser docked (horizontal plane) to a station. Only one face of the Rail docker on the battle cruiser is visible. Currently, it is only possible to move to cruiser in the horizontal plane without undocking.

    With this suggestion implemented, you can easily move the cruiser onto a lift (docked to the station, but you knew that), which will take it up as many levels as you want and back onto the station, on another higher level.



    Though some of it is possible using shootout/pickup rails, is much more of a headache doing that.
     
    Last edited:

    lupoCani

    First Citizen
    Joined
    Jun 23, 2013
    Messages
    504
    Reaction score
    127
    • Purchased!
    • Legacy Citizen 10
    The foremost reason this hasn't been implemented is probably technical. To us, it may seem natural for rails to connecting like that, but the game has no idea that rails from different entities look like they're connected.

    Though, it shouldn't be all too hard. Checking whether two rails are adjacent is a simple coordinate comparison. We could add an end-of-rail block that's required for entities to slide into other entities' rails, and perhaps make it try this only when given a signal, all to boost the performance of the system. Beyond this, it's certainly a very useful idea.
     
    • Like
    Reactions: Ithirahad
    Joined
    Nov 30, 2015
    Messages
    855
    Reaction score
    75
    You can do this just with a rail launcher on one entity and a rail docked point thing on the other. It shoots out, then immediately docks again. It works on stationary ships, I haven't tried them while moving.
     

    Edymnion

    Carebear Extraordinaire!
    Joined
    Mar 18, 2015
    Messages
    2,709
    Reaction score
    1,512
    • Purchased!
    • Thinking Positive Gold
    • Legacy Citizen 5
    You can do this just with a rail launcher on one entity and a rail docked point thing on the other. It shoots out, then immediately docks again. It works on stationary ships, I haven't tried them while moving.
    Does it? I thought they hit the "can dock again in 3 seconds" thing and wouldn't immediately pick back up?

    I too would love to be able to have things like ships on rail elevators that rise up into position and then keep following rails on a launch deck, but it was across entities and figured it was a no go.
     
    Joined
    Nov 30, 2015
    Messages
    855
    Reaction score
    75
    Does it? I thought they hit the "can dock again in 3 seconds" thing and wouldn't immediately pick back up?

    I too would love to be able to have things like ships on rail elevators that rise up into position and then keep following rails on a launch deck, but it was across entities and figured it was a no go.
    That's only if you just docked it I think. It worked when i tried it.
     
    Joined
    Feb 25, 2016
    Messages
    1,362
    Reaction score
    268
    No, you get the 5 second docking timer. Although it might be 3s instead. I don't know.
     
    Joined
    Jun 24, 2015
    Messages
    385
    Reaction score
    59
    I'd been pondering the same problem myself, and it only just now crystallized that we have the technology in the game to do this, we'd just need the extra coding to finish it off.

    The crystallized thought goes as this:
    The way wireless logic blocks and warp-gate linking are done is how cross-entity rails allways should have been done.


    Link the "ends" of two (or more) entity's rails together, and provided they are actually adjacent, everything works as intended. ( + a bit of extra coding to allow multiple "wireless rail" links, for elevators to work properly)

    If they aren't adjacent, the on-rail entity undocks exactly as it would if the rail it was on had been removed, after moving off the end of the rail. (the resulting lag be your own damn fault, and shame upon you for building your shit wrongly.)

    Yes, there would need to be additional coding, but the underlying mechanics to link them together are there, in use in other systems.

    LARGE EDIT: On a second run of the thought, we'd probably need a new astronaut widget to make this work well, one that causes the Green and Red rails to be visible when not in an entity's build mode.
     
    Last edited:
    Joined
    Jun 27, 2013
    Messages
    896
    Reaction score
    166
    No, you get the 5 second docking timer. Although it might be 3s instead. I don't know.
    In fact, I've been using this just minutes ago on my station, and it works without any delay. My cargo ship positions a container over the station's receptacle, and as soon as I undock the container from the ship, it instantly re-docks to the station. The same goes for the reverse direction. You can barely spot the HUD indicator if you have "docked entities" turned off.
     
    • Like
    Reactions: Nickizzy

    lupoCani

    First Citizen
    Joined
    Jun 23, 2013
    Messages
    504
    Reaction score
    127
    • Purchased!
    • Legacy Citizen 10
    Forgive me but, using active linking seems redundant and counter-productive. Either way, we have to run the adjacency check. Meanwhile, we loose a great deal of flexibility and modularity. I would go as far as to argue the linking mechanic has the nature of a stop-gap measure. It gets the job done, but in shoddy fashion that's way too dependent on player intervention, and hurts modularity.
     
    Joined
    Jun 24, 2015
    Messages
    385
    Reaction score
    59
    Actually, that's the beauty of it, there is no "adjacency check", there's only the "is there actually a rail under me" check which the game allready does by default.
    (that's the reason why things un-dock if you remove the rail they're currently on, because that "is rail" check just failed.)
     

    lupoCani

    First Citizen
    Joined
    Jun 23, 2013
    Messages
    504
    Reaction score
    127
    • Purchased!
    • Legacy Citizen 10
    The "is there actually a rail under me" check doesn't work like that. Insofar as I can tell, it operates on the game already knowing which rail the entity is supposed to be docked to or sliding across, and checking if that exists. Generalizing this to work in a cross-entity fashion as you propose seems like it would include a process equivalent to an adjacency check.
     
    Joined
    Jun 24, 2015
    Messages
    385
    Reaction score
    59
    Hmm, at this point we'd need to either dig into the code ourselves, or have a dev state how it works.

    If you're correct, (and I'm thinking you probably are) then my version is indeed a stop-gap measure. (but, it'd still be better than the great flaming nothing we have right now)

    If I'm right, then it becomes a question of "why hasn't it been suggested before?" and even "why didn't we (the devs) think of this, especially since we designed the wireless linking"

    Agree to disagree, untill new information appears?
     
    Joined
    Oct 22, 2014
    Messages
    338
    Reaction score
    148
    • Legacy Citizen 3
    Cross entity docking would be sweet. And by the way, there can be complications of using the shootout/pickup point when moving, thought it works well enough if you have a little distance between them and you are stationary, or moving in a straight line. Any maneuvering will most likely make them miss. I've used that function on a cargo container ship to alternate which rails the pods go on to.
     
    Joined
    Jun 27, 2013
    Messages
    896
    Reaction score
    166
    Cross entity docking would be sweet. And by the way, there can be complications of using the shootout/pickup point when moving, thought it works well enough if you have a little distance between them and you are stationary, or moving in a straight line. Any maneuvering will most likely make them miss. I've used that function on a cargo container ship to alternate which rails the pods go on to.
    Don't use shootout rails, but "pickup" rails (the green ones, the ones that don't pick up anything) -- regular rails should work just as well -- , and undock from them with a logic signal. if there's any rail with an active pickup point right next to your docker at the moment of undocking, it will simply switch over.
    One caveat: I can't guarantee it will work with just one docker. So far I have always been using two on the entity I want to transfer, in my case a container with one docker at the top that connects to the ship, and one at the bottom that connects to the target entity. The switchover happens flawlessly and instantaneously in both directions.
     

    lupoCani

    First Citizen
    Joined
    Jun 23, 2013
    Messages
    504
    Reaction score
    127
    • Purchased!
    • Legacy Citizen 10
    Well, yes. Lots of ideas are widely agreed upon as good, alas, we're not here to vote on the matter. We can make a fuss about it, hope we're seen by higher-ups, but that's about it.
     
    Joined
    Jul 5, 2017
    Messages
    35
    Reaction score
    6
    Came here to make this exact suggestion, so i'm posting in this thread instead of starting a new one. Being able to move docked entities across entity boundaries would let me automate a lot of the steps in my shipyard making drones for a carrier.

    Using the shootout rail/return point thing freezes my ship with the "x seconds" warning, but then the ship is glued to the rail and never moves again. Won't even let me back into the core if i leave. Thankfully i've been testing with a very small (5x3x1) ship so it's no problem to dismantle it block by block and rebuild.