Tutorial Creating Your Own Signalling System In Tsw Editor

Discussion in 'PC Editor Discussion' started by fceschmidt, Jan 27, 2024.

  1. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    Hi,

    I took the time to create a tutorial about how to create your own signals/signalling system. It shows you everything you need to create own signals (at least the stop signals - I didn't manage to cover the creation of distant signals at the end due to time reasons, but they are not more complicated than the stop signals in theory.)

    It's quite long and unfortunately I realized after recording that the sound quality is really bad at times, but I hope it's at least watchable for those who want to understand the process.

    I also make a few mistakes in between and correct them later, it wasn't all 100% well planned :D

    You can find it here:



    HD should be available in an hour or so.

    (Tagging ffabio89 because I think they wanted to work on an Italian system.)

    Enjoy!
     
    Last edited: Jan 27, 2024
    • Like Like x 8
    • Helpful Helpful x 5
  2. emil#3734

    emil#3734 Well-Known Member

    Joined:
    Sep 25, 2023
    Messages:
    354
    Likes Received:
    265
    Thanks for the great tutorial
     
    • Like Like x 1
  3. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    You're welcome!
    I just realized something, at around 1:30:10 there is a cut where I tried to fix the timetable, but I accidentally cut away a part where I had to replace all "LED" lamp materials by "FIL" materials because the LED materials were too dark for some reason. FIL are filament lamps. Basically wherever I set the material of a lamp I now eventually used the corresponding FIL material from europeancontentpack, instead of an LED material.
     
  4. emil#3734

    emil#3734 Well-Known Member

    Joined:
    Sep 25, 2023
    Messages:
    354
    Likes Received:
    265
    upload_2024-1-27_19-22-47.png
    [​IMG]
    This is where I am at right now, still modelling :]
     
    Last edited: Jan 27, 2024
  5. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    Nice, I see you're making your own lamps which makes a lot of sense because you don't really have a backboard like the type of signal which I showed. With this approach you'll probably have to create your own "glowing" and "off" materials, which isn't super hard either, after you have done that in theory it should work in the same way that I showed.
    If you have any trouble getting them to glow, let me know.
     
  6. emil#3734

    emil#3734 Well-Known Member

    Joined:
    Sep 25, 2023
    Messages:
    354
    Likes Received:
    265
    This is actually my backboard, the lights are not inserted, these are tram signals, and I am gonna create backboards for all needed sizes. And then I can put my lights in, cause they always in there in different order.
     
    • Like Like x 1
  7. emil#3734

    emil#3734 Well-Known Member

    Joined:
    Sep 25, 2023
    Messages:
    354
    Likes Received:
    265
    A quick question, can multiple indicators be assigned to one signal?
     
  8. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    Yes, you can have any number of indications set at the same time, e.g.:
    - Speed Restriction to 60 km/h
    - Route Letter B
    - Even in addition something like Zs 6 (Gegengleisanzeiger)

    TSW really doesn't care how many indications you have set :)
    There may be many ways to do it, but the only way which I know that works (because I have tested with the Danish signalling system), is to make a new base blueprint for each "kind" of indication, and then subclasses for each of the different concrete indications like the 40 and 60 speed restriction in the video. So here you would additionally have a "BP_xx_IndRouteLetterBase" class which derives from SignalIndicationBase (or what it was called), and a Child Blueprint class "BP_xx_IndRouteLetterA", B, C etc.

    Another thing to keep in mind is that you can have multiple signal heads in your SignalView blueprint later (DTG have a system where it's configurable with templates, I can make a video on how to implement that yourself actually), so you can make your indicator signal heads as separate SignalHeads, it doesn't need to be signal + all indicators in a single SignalHead blueprint.
     
    Last edited: Jan 27, 2024
  9. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    Hi!
    Is there anything in the blueprint that's I can use to set at which distance the next signal is? And then set different aspects for the first one that depends from the distance and not only from the classic sequence?
     
  10. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    Yes, you can use the Route Length attribute which is part of the route table, similar to this:
    upload_2024-2-2_21-26-19.png
    The unit of this value is centimeters and it is the distance to the end of the route. Normally this is the next signal, but may also be a dead end of the track.
    So whatever you want to do if the route is less than 10 000 cm (=100 meters) you can do in the True branch, if the route is longer than 10 000 cm you use the False branch.
     
  11. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    Thanks!

    But.... If I had to set a flashing yellow that depend from the distance (for example if the next signal is less then 600m) and next, I've to had the aproach aspect with a fixed yellow light (or a red light), where the Branch need to be connected?
    And why isen't use the "next signal reference" option?

    I'll try to understood how it works this system...
     
  12. esbeleleu#8827

    esbeleleu#8827 New Member

    Joined:
    Oct 13, 2023
    Messages:
    1
    Likes Received:
    0
    Hello :)! First of all, great tutorial!
    I have a question. In BP Network Signal Actor, why does "On Aspect Changed (SignalComponent)" have an Aspect variable but "On Indication Change (SignalComponent)" does not have an indication variable?
    Signal_Event_Graph.png

    I'm trying to create a "screen" indication using the indication variable.

    Signal_ex.png

    Does anyone have any ideas on how I can do it?
     
  13. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    Looks nice already!
    You can get up-to-date indications from your signal component by using the Get Indications of Class (or something like that... I'll look it up later in the editor) node.
    You give it the base class of your indication and it will return you the subtype that is currently active, if there is one.
    Additionally you can always check my Danish signalling system which is free to download from here, that already uses indications. The blueprints are not very clean but you can open them it works to some extent already. It also supports a similar screen like that, it's called Hastighedsviser :D
     
  14. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    Hi, seeing the Esbeleleu post and it's indicator, how it is build? It's something esternal and attached at the signal? and in this case, how this is possible?
    Later, Ihave to do the same.....
     
  15. fceschmidt

    fceschmidt Well-Known Member

    Joined:
    Oct 22, 2020
    Messages:
    306
    Likes Received:
    391
    The indicator is just another kind of Signal Head. You already made a signal head, this is another one.
    Then you have to put the signal head for the indicator into the Signal View.
    I think making the signal view easily configurable with different signal heads, signs and other meshes like DTG have done it merits its own tutorial. It's relatively straightforward once you know how it's done, it just takes a while to implement it. But I won't be able to record another tutorial before next week :)
     
  16. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    Nice! I'll do more test until your tutorial came out, because i've just create that "monitor" as a head signal but i haven't understand hot to insert it in another signal. My goal is create something configurable as DTG do in it's signal, where you can add it or remove from it's options ...
    My signal is a lot complicated, due to very infinite combination, so i'll try to semplificate the amount of signal that you have
     
  17. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    Another questtion: On your blueprint, your "Get signal aspect" is referenced with a specific signal and the same I'll get when I have to set a new node and can see in the research menù a full list of "DK signal....."
    How to do that?
    Ther's a lot of thing I can't undertood in this system, for now
     
  18. The7Train

    The7Train Active Member

    Joined:
    Nov 6, 2018
    Messages:
    186
    Likes Received:
    87
    Is the video link broken for anyone?
     
  19. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    It have some audio issue but the image work fine for me...
     
  20. The7Train

    The7Train Active Member

    Joined:
    Nov 6, 2018
    Messages:
    186
    Likes Received:
    87
    I can’t see the video? Who has the direct link?
     
  21. The7Train

    The7Train Active Member

    Joined:
    Nov 6, 2018
    Messages:
    186
    Likes Received:
    87
    Ok that's super weird, I can't see the video link on mobile but I can see it on desktop. Odd.
     
  22. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    Hi at all.... It's been a while since my last message but I've got another question:

    First of all, the "ESwitchOnFunctionEnum" it's a pure switch between what it have inside? For example the list of the signal that I had create, or it need some "GhetSignatType" function added to itself?

    And, it's possible to get the exactly distance between two signals? I'm creating the shunting signals and I need tho knowing if the path is from one signal to another or over it; but speaking about the dispatcher and how it's create the paths
     
  23. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    It's me another time: how to get the distance and aspect of the signals next the distant signal in front of me?
    I've trying some options (with find next signal or get distant signal aspect) but it doesn't work...
     
  24. melissapeterssp

    melissapeterssp New Member

    Joined:
    May 17, 2024
    Messages:
    2
    Likes Received:
    0
    that's super weird .
     
  25. ffabio89

    ffabio89 Active Member

    Joined:
    Aug 15, 2020
    Messages:
    212
    Likes Received:
    162
    My post with the problem I've encountered? Yes a bit... I'm investigating
     

Share This Page