Display Module and [docked] variable

    Joined
    Feb 22, 2018
    Messages
    4
    Reaction score
    3
    I was doing some work with these display modules, building a cockpit, when I stumbled on the [docked] variable. The thing is that this variable shows if the ship is docked or undocked. It is nice tough, but it would be better if the variable was called "isdocked" instead.

    Also, it would be nice to have a "docks" variables to show how many ships/turrets/drones can dock at the same time (counted by rails endpoints, load and unload rails or just the count of pickup points) on the entire entity or the number of linked rails. With that in mind the "docked" variable should inform how many of those rails are in use (with a entity/ship/turret on it).

    This all would allow to display something like this:
    Drones: [docked]/[docks]/8

    Witch means the ship have [docked] amount of drones in their rails, with room for a total of [docks] drones docked at the same time from a total of 8 rails built with the entity.

    Note that I put the number 8 there because the variable [docks] can change if the ship take enough damage to lose some of its rails.
     

    Energywelder

    Director-General, EDY
    Joined
    Oct 5, 2013
    Messages
    83
    Reaction score
    23
    • Legacy Citizen 6
    • Legacy Citizen 5
    • Legacy Citizen 4
    Ever since coding took off in the percentage of my life it hoovers up I have also been sad about the limited functionality of the display block. Currently I just have a rotating message board around my base with epic quotes from poems, movies, and songs, and in my ships I have display modules that explain the name of the ship "This is the Gar Stazi, who was a cool dude"
     
    Joined
    Mar 30, 2015
    Messages
    66
    Reaction score
    242
    • Railman
    • Legacy Citizen 2
    • Community Content - Bronze 2
    We can already do this. If you put an activation module next to a rail it will be turned on if something is docked to that rail. Display modules can be changed via logic. You can do everything you described already you just need to put a little bit of work into designing and building it.
     
    • Like
    Reactions: Nosajimiki
    Joined
    Feb 22, 2018
    Messages
    4
    Reaction score
    3
    We can already do this. If you put an activation module next to a rail it will be turned on if something is docked to that rail. Display modules can be changed via logic. You can do everything you described already you just need to put a little bit of work into designing and building it.
    Nice! Thank You. This works for sure, but takes a lot of space and some knowledge of logic..

    But even so, my proposal turn things easier and a lot more consise..

    When I see the word "docked" I think of the number of docked things rather than if it's docked or not.. after all you know if your ship is docked or not even without the help of display modules.. You must manualy dock, fly into a pickup point or command your fleet to return into the carrier. Any way it's a conscious doing.

    I'm not saying that this functionality is worthless.. It sure is a good thing to show passengers this status of the ship, but in the majority of the cases it's somewhat useless. So I prefer to have an [isDocked] variable rather than [docked] to show if the entity is docked or not. And I keep my opinion on [docked] variable showing the number of docked entities in the whole structure (or in the linked docks) and a [docks] variable showing the number of docks in the whole structure (and again, or in the linked docks).

    Note: if you link docks in the display it helps making groups of docks easier, like a group of docks that have scavenger drones, or a group that have defense drones, or like so.
     
    Joined
    Mar 31, 2015
    Messages
    281
    Reaction score
    95
    • Purchased!
    • Legacy Citizen 5
    I personally like my idea of being able to transfer messages between docked entities using rails and displays:
    Displays connected to Rail/Rail docker to send commands to/from docked entities & beamed logic block

    Expanding on the docking idea, there was this idea of "hard docks" which basically would require two clicks to undock, one to send a signal that you wished to undock to begin a station's undocking sequence, and a long hold to force undocking in case the station doesn't have a working undocking sequence: Read by Schine - Rail docking bounding box, and "hard docking" (nice to see shine read this one;D)
     
    • Like
    Reactions: Macharius
    Joined
    Jul 30, 2013
    Messages
    398
    Reaction score
    282
    • Wired for Logic Gold
    • Legacy Citizen 8
    • Purchased!
    You can do this using REGEX commands, 1 display block will contain all the information of the anchor points, for example: Dock_1, Dock_2, Dock_3 ... each "dock point" has two possible states (or all you want), dock with ship docked, or dock free ...

    ...
    Dock_1: [USED]
    Dock_2: [UNUSED]
    Dock_3: [UNUSED]
    ...

    At each anchor point, you must have 2 display blocks, each of these display blocks is responsible for changing "only" the state of a named anchor point, for example Dock_1. ( you can do this just placing one activation block near to the dock block, and link that activation block with a NOT gate block, then just link each blocks to the display control block ... activation block and NOT gate block).

    Now, you just need to create the REGEX command to replace the keyword "USED" or "UNUSED" when a ship dock-undock.

    it's simple, it's clean and it's good for many things, I hope it works for you :)

    Regex101 - online regex editor and debugger
     
    Last edited:

    lupoCani

    First Citizen
    Joined
    Jun 23, 2013
    Messages
    504
    Reaction score
    127
    • Purchased!
    • Legacy Citizen 10
    Nice! Thank You. This works for sure, but takes a lot of space and some knowledge of logic..

    But even so, my proposal turn things easier and a lot more consise..
    The problem is there are hundreds of potential features along that line - "You can do this with logic already, but lets put in a feature to make it easier." If the game is supposed to function as a sandbox in the long run, there can't be special cases for every thing a player might conceive to do - the general cases have to be caught.
     
    Joined
    Sep 14, 2017
    Messages
    666
    Reaction score
    928
    this feature request in inherently flawed because it would count all rails as possible places to dock. That means a single logic door would muck it all up. Using activation blocks lets you define what rails are docks and which ones are not.
     
    Joined
    Feb 22, 2018
    Messages
    4
    Reaction score
    3
    this feature request in inherently flawed because it would count all rails as possible places to dock. That means a single logic door would muck it all up. Using activation blocks lets you define what rails are docks and which ones are not.
    Note that I said "counted by rails ENDPOINTS" witch means that the game calculates only the endpoints in a series of attached rails of any type.

    Entrypoints is meaningless because many ships can enter a serie of rails in the same entrypoint. Pickup points is also meaningless because the same motive.

    Also, doors keeps stationed on endpoint, so it'll count as docked structure. And more, by linking groups of rails to the display module you can avoid countind doors, turrets and alike. Man, read first.
     
    Joined
    Sep 14, 2017
    Messages
    666
    Reaction score
    928
    End-points are not necessarily going to be accurate either since: doors, elevators, and turrets should likely not be included in a meaningful output of occupied ship spots. It would also cause extra endpoints anywhere a rail line turns such as you often see for hangers that are designed to launch multiple drones from a single hanger door.

    I highly suspect that the end result on most builds would be having to sift through all your rail endpoints using trial and error to figure out which IDs are docking points, and which are not, which would waste more time than hooking up activation blocks anyway. Worse would be if your docking point IDs got recalculated with an update to the ship's design. For example: rail #12 was a dock and rail #13 was a hanger door. You delete rail #12 to move it over a few blocks, now the door is rail #12 and the dock is #13. So your display is now bugged.
     

    Maramonster

    Moderator
    Joined
    Jan 18, 2015
    Messages
    70
    Reaction score
    81
    • Purchased!
    • Legacy Citizen 3
    Ever since coding took off in the percentage of my life it hoovers up I have also been sad about the limited functionality of the display block. Currently I just have a rotating message board around my base with epic quotes from poems, movies, and songs, and in my ships I have display modules that explain the name of the ship "This is the Gar Stazi, who was a cool dude"
    I agree with you there. I'd love to see more done with it.
     
    Joined
    Feb 22, 2018
    Messages
    4
    Reaction score
    3
    It would also cause extra endpoints anywhere a rail line turns...
    Man... Attached rails means nothing to you? If you have a turn (90 degrees) the pieces are still attached. The piece right at the end of the line should not be counted as endpoint because it continues to the left or the right.. All depends on how you program this stuff.. And as programmer I can say that it's not that dificult..

    About numbering stuff like you did is meaningless... As I said before, it will count linked rails only or the overall... If you use docked overrall then you'll get all endpoints counted.. you still can use activators to count specific endpoints..
     
    Joined
    Sep 14, 2017
    Messages
    666
    Reaction score
    928
    Man... Attached rails means nothing to you? If you have a turn (90 degrees) the pieces are still attached. The piece right at the end of the line should not be counted as endpoint because it continues to the left or the right.. All depends on how you program this stuff.. And as programmer I can say that it's not that dificult..

    About numbering stuff like you did is meaningless... As I said before, it will count linked rails only or the overall... If you use docked overrall then you'll get all endpoints counted.. you still can use activators to count specific endpoints..
    No, I understand what you mean by attached rail, I'm just saying you aren't considering your exception handling. A single rail group could represent 1 dock or 20 docks, or no docks at all because rails are not always used as places to dock ships and logic systems in various manifestations can use a single rail group to support multiple drones. Activation blocks let you tally the places that docks, rail counting does not, and it would encourage all sorts of false reports.
     
    Joined
    Apr 14, 2018
    Messages
    49
    Reaction score
    57
    No, I understand what you mean by attached rail, I'm just saying you aren't considering your exception handling. A single rail group could represent 1 dock or 20 docks, or no docks at all because rails are not always used as places to dock ships and logic systems in various manifestations can use a single rail group to support multiple drones. Activation blocks let you tally the places that docks, rail counting does not, and it would encourage all sorts of false reports.
    Even If i understand the wish and it is very interesting, I have an exemple for this : to stop multi drone on a straight line, you switch at each docking point a rail at 90° to make them stoping :
    You have 10 drone, for a drone 5 large, if you want 2 blocks beetween each, you have a line of 70 rail basics, you make a switch each 7 rails, then they stop in row at equal distance. In this case this suggestion become useless, because your unique docking 70 rail line become 10x7 lines when they are docked/idle.