Page 1 of 2

[0.13.x] Make Chain Signal connectable to circuit network

Posted: Sun Jul 03, 2016 2:41 am
by Shiandow
It would be nice if the Rail Chain Signal could be connected to the circuit network in the same way as the Rail Signal.

As an example of when this could be useful: when you try to design a nice crossing (to keep your trains from killing you) the circuit network functionality of the Rail Signal is crucial, it allows you to stop trains if you're going through a gate, or close a gate if a train is about to arrive (i.e. the signal turns red or yellow). However currently this forces you to use Rail Signals which makes it impossible to place these crossings in certain situations (e.g. in intersections, or across stations if you don't want trains to attempt to enter an occupied station).

Also, allowing the Rail Signal to be connected but not the Rail Chain Signal seems weirdly inconsistent

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Sun Jul 03, 2016 8:41 am
by ssilk
I would say the state of the chain signals depends on the outgoing signals. So if you change the state of the outgoing signal the former chain signals must also change. (But I cannot know it yet, no possibility to test it without breaking my current installation.)

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Sun Jul 03, 2016 2:27 pm
by Shiandow
I suppose that would work (apparently chain signals also turn yellow at the same time as the next signal), but it'd be more elegant to connect to the chain signal directly.

Also, if you want to make a template for a rail crossing then it's often better to use a chain signal, since those are less likely to cause problem (and prevent trains from blocking the crossing). Which makes sense since rail crossings are a kind of intersection, except not between rails but between a road and a rail.

And since almost everything that could logically be connected to the circuit network can be connected to the circuit network, the chain signals seems a weird omission, especially since it's pretty clear how to generalize the rail signal behaviour to the chain signal.


Edit: just tested it, changing the exit rail signals does indeed affect the chain signal, but also prevents trains from using that exit, even if they're already past the crossing. And the rail signal will stay yellow even if the train has already passed the crossing. I don't really see an easy way to solve those problems without adding a rail signal (which causes other problems).

Edit2: changing the exit rail signals does work but the colour of the rail signal isn't always updated (trains still stop though). And for some reason the rail signal doesn't send it's output if you connect it directly to a gate, except if you do so indirectly (e.g. first connecting to a pole, then to the gate). Those might be a bugs.

[0.13] chain signal

Posted: Mon Jul 04, 2016 2:09 pm
by DutchJer
I have made a train gate, but the only think from making it fool proof is the ability to read from a chain signal with the circuit network. I would like to have this implemented so you can keep trains always out of parts, but also wait.

Image
we now use a very tiny block to fix it, but you still have moments where the train is not in the coming block and you can still enter, we are using the yellow signal as well. its almost foolproof, only when a train is waiting and you run back and forth.

TL;DR;

circuit network connection for chain signals.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Mon Jul 04, 2016 3:31 pm
by ssilk
I merged this topic into the former.

I like that pic. :)

See also previous comments: Isn't it so, that the state is equal to the first non-chain-signal?

And very difficult question: what should a chain-signal output, if it is "blue"? (That state, when the chain signal has one closed and one open output signal on it's way)

-> In my opinion not possible without doing dubious things.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Mon Jul 04, 2016 4:13 pm
by Shiandow
ssilk wrote:Isn't it so, that the state is equal to the first non-chain-signal?
Not necessarily, if there's a train in between a chain signal and a rail signal then the chain signal will be red, but the rail signal could be green (or yellow).
ssilk wrote: And very difficult question: what should a chain-signal output, if it is "blue"? (That state, when the chain signal has one closed and one open output signal on it's way)

-> In my opinion not possible without doing dubious things.
Just outputting "blue" would be enough for me. I think it's reasonable if you have to connect other (chain) rail signals to get more specific information on which exit is free.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Mon Jul 04, 2016 9:43 pm
by DutchJer
i looked around, but couldnt find this one, sorry but thanks for moving it. in my eyes you wont be able to set the signal to blue, just like you can set the signal of a normal rail signal to yellow.
The thing is that i would like to stop the train when someone is standing in there, now we block the tiny block in front of the chain, but when we can block the chain, then we dont need the tiny block.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Tue Jul 05, 2016 12:10 pm
by Shiandow
DutchJer wrote:i looked around, but couldnt find this one, sorry but thanks for moving it. in my eyes you wont be able to set the signal to blue, just like you can set the signal of a normal rail signal to yellow.
The question was what the chain signal should sent to the circuit network if it was blue, not if it should be possible to set the signal to blue.
DutchJer wrote: The thing is that i would like to stop the train when someone is standing in there, now we block the tiny block in front of the chain, but when we can block the chain, then we dont need the tiny block.
Couldn't you just block the rail signal just after the crossing? Although I agree that blocking the chain signal would be more elegant.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Tue Jul 05, 2016 12:51 pm
by malecord
Shiandow wrote:It would be nice if the Rail Chain Signal could be connected to the circuit network in the same way as the Rail Signal.
You know, now that Rail signals are connectable to circuit network, in theory we don't need rail chain signal at all. We could just use plain rail signal and implement the lock logic with the combinators. :mrgreen:

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Tue Jul 05, 2016 2:40 pm
by Shiandow
malecord wrote:
Shiandow wrote:It would be nice if the Rail Chain Signal could be connected to the circuit network in the same way as the Rail Signal.
You know, now that Rail signals are connectable to circuit network, in theory we don't need rail chain signal at all. We could just use plain rail signal and implement the lock logic with the combinators. :mrgreen:
I don't think there's any way to replicate the blue signal though. Which would mess up train routing.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Thu Jul 07, 2016 8:48 am
by Shaymes
i prefer to connect chain signals to network too, maybe read only, for each state green yellow red and blue

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Mon Jul 11, 2016 5:35 pm
by Epicnoob
I agree that chain signals should be connectable (to read them out and to force them on red). While I could make a pedestrian crossing mimicking chain signal behiavior, other things are not really possible. For example, I would like to make a priority crossing where one direction receives priority over the other.
priority crossing
In this image the purple train is supposed to get priority over the blue train. This can be done by reading out when the purple train enters the block prior to the crossing. Upon entering this block, the blue train is to be blocked from entering the crossing and allow the purple train passage.

The problem however is that it is not possible to connect chain signals, which I really want to use since this is a crossing. Therefore I cant control the signals on this crossing (or any train crossings in general) without ridiculous workarounds.

One of such workarounds would be to do the chain signalling logic by hand, which is doable for pedestrian crossings or simple crossings. However, this becomes downright impossible when junctions get bigger and there are multiple exit routes for a train.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Wed Jul 13, 2016 3:40 pm
by DutchJer
from all this what i read is that you think that you should be able to set the signal to blue, while i think you should only be able to block the road like you can with the rail signal, and read the current signal state.

as far as i know you can put a rail signal on yellow.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Thu Dec 08, 2016 4:21 am
by budgej
I'll throw my hat into the ring for this suggestion. In the example I've attached, the tracks to the lower right are a waiting area for trains headed to the upper right unloading stations. Because I cannot read from or change the state of chain signals via circuitry, my rail crossing lacks an input and an output. If I were to install regular signals for input and output, trains would ignore the waiting area and block the single path to the unloading area.

It would benefit other situations too, but this one really sticks out to me. I wonder if it could be added by a mod...
Chain Signal Example
Chain Signal Example
20161207231633_1.jpg (1.19 MiB) Viewed 8187 times

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Sat Dec 17, 2016 2:59 pm
by Cthulhoo
As a workaround, I'm adding dead-ends with normal signals to the tracks to read out if there's a train in the block of the crossing. But this looks plain stupid.
ChainSignalCrossing.jpg
ChainSignalCrossing.jpg (107.17 KiB) Viewed 8114 times
Ofcourse, this does not help on other occasions where one would like to set the state of a chain signal.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Mon Dec 19, 2016 8:05 pm
by Yoyobuae
Cthulhoo wrote:As a workaround, I'm adding dead-ends with normal signals to the tracks to read out if there's a train in the block of the crossing. But this looks plain stupid.
Track doesn't even need to connect properly if you only want to monitor state of block. Could put just a couple of tiles of track perpendicular or diagonally across the block you want to monitor.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Sun Apr 30, 2017 6:47 am
by OhiraKyou
Yeah, I just hit this problem as well. I wanted to add a gated crossing between a stacker and its connected stations. I assumed I could simply add a chain signal at the crossing and either override its value or, at the very least, read its value. But, it doesn't connect.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Sun Apr 30, 2017 11:52 am
by aober93
You can read the signal after the gate, when its yellow or red it cannot brake at the chain signal, which sorta gives what u need. I made my train crossing like that.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Sun Apr 30, 2017 1:44 pm
by OhiraKyou
That's the workaround, but this inconsistency should be patched.

Re: [0.13.x] Make Chain Signal connectable to circuit network

Posted: Thu May 25, 2017 6:36 pm
by PhasmaNL
aober93 wrote:You can read the signal after the gate, when its yellow or red it cannot brake at the chain signal, which sorta gives what u need. I made my train crossing like that.
That only works if after the gate there is only one track direction. But if after the gates there is a junction with multiple exits then this isn't a viable option. Would be a nice improvement if we could connect the chain signals directly!