![]() |
Modernisering av svenskt signalpaket
1 bifogad(e) fil(er)
Hej! Jobbar på att organisera namnen och filstrukturen av alla signalskyltar. De kommer vara nya skyltar/dubletter som ska organiseras i egna mappar och med bättre översikt.
Jag får också in nya funktioner i skyltarna. En moderniserad script för svenska övergångar är i pipeline, men just nu jobbar jag på länkade ljudsignalstavlor, en ny funktion som introducerades för inte så länge sedan... Problemet är att tavlorna är bak-o-fram. Om jag hittar en lösning så de visas åt rätt håll så släpper jag en beta. |
Hittar ingen lösning. Släpper kodsnutten här, så får nån kika och se om ni hittar en lösning på hur man roterar...
HTML-kod:
<?xml version="1.0" encoding="utf-8"?> |
SIgnal på stolpe
1 bifogad(e) fil(er)
Försöker även få en H3:a att sitta på en stolpe, men får bara fram stolpen, se bild.
Källkod: HTML-kod:
<?xml version="1.0" encoding="utf-8"?> |
1 bifogad(e) fil(er)
JJust nu försöker jag få om de svenska bommarna kan fungera som ett gruppobjekt. DTGs rutter har det så, men det var inte lätt som att "klippa o klistra".
Objekterna står där, men de är statiska. Bommarna är ännu värre då de är i 2 delar i sin tur... |
2 bifogad(e) fil(er)
Jag har nu lyckats ta fram en signal som sitter färdigt på sin stolpe och bara fungerar!
Underbart! Räkna med ett första paket med färdiga signaler på stolpar och brackets inom kort! Blir nog H2-H5 och end signal som första paket |
Smidigt! :tumme_upp:
|
Smidigt tycker jag också!:tumupp: Det skulle ha varit så för länge sen.;)
|
2 bifogad(e) fil(er)
Delmål 2 avklarat: att rotera child objects!
Säg till här i tråden vilka skyltkombinationer ni vill ha så fixar jag det. Men: Jag kan endast ha 1 länkad objekt och dess orientering kan jag inte rubba på. (T.ex. 1 huvudsignal och 1 dvärgsignal får jag inte ihop just nu). Jag kollar vidare på det i framtiden. Men alla statiska objekt kan jag få med. Visa gärna exempel när ni beställer, och berätta gärna vilken bana eller projekt det ska gå till (Det är för Provider/Product, t.ex. SummerADDE/Trollhättan) |
1 bifogad(e) fil(er)
Ser det här korekt ut?
(Notera att swf 15 är ett separat objekt, och ett exempel) |
Tror du att du kan få DV4-signalen att sitta ihop med stolpe och märkskylt (SE sign xxxx-small)?
|
Citat:
Signaler och mileposts får jag inte att fungera som child objects. Kollar jag på hur DTG har gjort så autofylls de med sth 1 och sth 2 av nån anledning... |
Jag håller tummarna! Just växlingsdvärg färdig med stolpe och skylt vore väldigt användbart. De har ju bara siffror på skylten så samma skylt kan användas till i princip alla signaler, om det nu går att få ihop det.
|
Jo, det är min nästa utmaning.
Hade scruptet kunnat funka så signalerna fungerar som child objects (likt ukledsignals/ukpro) så hade det underlättat enormt. |
Citat:
Tavlan där under skulle du kunna slopa, den används nästan aldrig nu på nyare driftplatser. Den betyder att föraren måste vara uppmärksam att blink skenen kan sluta blinka och då blir det ju ett grönt. Så ett grönt betyder då kör vänta stopp (när fsi tavlan finns där). Nu för tiden har ställverken koll om lamporna är hela och då antingen gör den restriktiv eller stopp i signalen |
1 bifogad(e) fil(er)
Idag funderade jag på om jag skulle modda godsvagnar eller bygga lite på Nynäsbanan... Inget av det blev av för jag sov knappt inatt och blev inte produktiv i någon front...
Men klämde till inte i slutet och kollade på texturer... Testade att lägga till SADs ballasttextur på newS spår med lyckat resultat! En bra början iaf! :godnatt: |
1 bifogad(e) fil(er)
Progress...
En fråga: Vill ni ha SEV2 Concrete som news breda ballast eller SADs smala? (newS breda heter då "wide" i slutet...) |
4 bifogad(e) fil(er)
Äntligen färdig! Tog mig hela dagen.
Version 2.0 av SwedenV2 Tracks kommer inom kort! - skickar länk i min downloadtråd när den är ute. |
3 bifogad(e) fil(er)
Har börjat jobba med signalerna igen. Jag försöker få så mycket likheter med UKProSignals men det går sådär.
(Moderna signalscript finns fullt läsbara i GARL-rutten) Jag tog en UK-signal och gjorde om utformningen. Jag lät det läsa in mot en av newS stationssignaturer som grundfil och det går att skriva in siffror på nedre raden genom att skriva det på första rutan i "Identify". Men problemet är att newS tavlor är bak-o-fram. Det finns även efterfrågan att få en full uppsättning av alfabetet så man kan skriva en komplett stationssignatur, istället för att som nu göra repaints av allting, men det är bortom min kompetens just nu. Vidare försökte jag göra om signalscriptet för SE H2 så det skulle fungera med att ha signalen som en child object, men icke... Det verkar inte fungera. HGV, tror du om du kan kolla i signalscriptet och se så att signalerna kan fungera även som childobjekt? |
Citat:
GARL tror jag inte att jag har heller. I vilken assetmapp hittar du scripten? Ska detta vara användbart måste man kunna skriva in även bokstäver (både gemener och versaler). Annars måste man ju ha ett separat objekt för varje individuell signal för att kunna få rätt signatur, och då är det väl lika bra att ha märktavlorna som separata objekt. EDIT: Kom på att ett undantag är växlings- och medgivandedvärgsignaler. De har ju vit märktavla med bara siffror så för dem skulle det funka bra att ha signal + skylt + stolpe som children. |
Child objects behandlas som scenery objects eller animated scenery objects och man läser in en annan .xml-fil för ändamålet.
Dock så har man med UKLedPro (Som GARL använder) lyckats scripta så child object fungerar. Jag testade att lägga in relevant kod i scriptet för min testsignal men det var ingen skillnad. GARL eller Glasgow Airport Rail Link är Assets/Totalizemedia/GARL och de har lua-filer som inte är kompilerade så de kan läsas rakt av i klartext. Min filosofi är att jag skapar speciella signaler som jag behöver i Mälardalsprojektet och lägger dem i SummerADDE/Malaren, så att de inte bidrar i den stora röran som heter newS/Sweden :) - Dessa signaler laddas då in separat från newS och bara för mälardalens rutt. Jag ämnar att göra samma sak för Nordlandsbanan sen. Tycker det är roligare att sätta ihop signalobjekt genom dess blueprint-filer än att detaljstyra i rutteditorn. EDIT: Ang milepost så verkar det finnas ett lösningsförslag från UKTrainSim: Citat:
|
|
3 bifogad(e) fil(er)
Jag gjorde följande förändringar i SE H2 Signal.lua.
Jag kommer göra en egen release av signaler så några förändringar på befintliga signalscript kommer inte ske, för att skydda äldre rutter mot risken av trasiga signaler. Däremot kommer SEV2-signalerna jag har släpps innan uppdateras mot denna script. |
Dagens achivement!
1 bifogad(e) fil(er)
Genom att byta ut
Kod:
elseif gConnectedLink > 1 then Kod:
elseif Call ( "GetLinkLimitedToYellow", gConnectedLink ) ~= 0 then |
Intressant! Den funktionen hade passat bra på en del ställen runt Stockholm, där det finns flera spår från samma växel med STH 80 eller mer.
Har du provat att det funkar som avsett? (Har själv upptäckt att signalscripten kan överraska ibland med hur det funkar!) |
Yess, Jag skapade en H5:a med 10 länkar, bockade i "Limited aspect" på var annan länk, ställde ett extra lok på ett av spåren, och signalen gav 1 grön + 1 vitblink vid de som inte var bockade och 2 gröna till de spår som jag har bockat i. (och röd för spåret där lok 2 stod.) så det fungerar som avsett.
|
Jag gjorde det igen!
Bangårdssignalerna är porgrammerade att tågväg ovanför länk 6 (som KMW beskrev användes för bangårdslänk) ignorerade om det fanns tåg på spårsträckan dessa länkar ledde till.
Well, nu kan man styra detta också genom att bocka i "Approach control". Är detta ibockat så visar signalen KÖR40 oavsett om det står ett tåg på nästkommande blocksträcka eller ej. Observera att du kan inte bocka i både "Limited aspect" eller "Approach control" i TS, utan endast välja emellan dem. Då signalen visade Kör40 även i det gamla scriptet så var det detta jag tog efter mig i det nuvarande. Följande förändringar gjorde jag i SE H5 Signal.lua för att få till effekten: Vid BASE Initialise (ungefär rad 209) så bytte jag ut Kod:
-- Initialise global variables Kod:
-- Initialise global variables Nere vid SET SIGNAL STATE (rad 404), ungefär här: Kod:
-------------------------------------------------------------------------------------- Kod:
elseif Call ( "GetLinkApproachControl", gConnectedLink ) ~= 0 then Att placera den där har nog att göra med ordningen om hur koden läses in, lägg inte det sist för då kommer de andra villkoren läsas in före och signalen slås om till rött istället. (OM villkor 1 uppfylls, gör detta ANNARS OM villkor 2 uppfylls gör detta, ANNARS gör detta SLUT.) Jag är inte klar, jag ska se om man kan göra signaler flexiblare genom att skriva in ett tecken i "Character"-fältet (ser ut som ett A). På så vis kan man konfigurera olika signalbilder för varje tågväg (t.ex. Kör40, kort tågväg t.ex.) Och inte bara det. sen kommer dvärgsignalerna, hehe... |
Lite pseudokod för hur jag ska approacha det här:
OM Tecken är S och Nästa h-signal visar STOPP GÖR: -Visa STOPP (H2-H5) OM Tecken är K eller 4 och Nästa h-signal visar STOPP GÖR: -Visa KÖR 40, Kort tågväg (STATE_SLOW) (H5) OM Tecken är N eller 5 och Nästa h-signal visar STOPP GÖR: -Visa KÖR 40 (STATE_SLOW) (H3-H5) OM Tecken är R, 4 eller 5 och Nästa h-signal visar KÖR 40 eller KÖR 40, Kort tågväg GÖR: -Visa KÖR, Vänta Stopp (H3-H5) Kolla om signalen tillåter att man kan köra mot rött efter att ha kontaktat tågklareraren. |
Kul att du tar tag i de svenska signalerna! :tumme_upp:
Är inte tanken med "approach control" att det är en signal som saktar ner ankommande tåg mot en sidotågväg? T.ex. i UK att signalerna visar 2 gula -> 1 gul -> stopp, men att sista signalen slår om till körsignal med avvikande tågväg när ankommande tåg har fått ner farten genom de restriktiva beskeden 2 gula / 1 gul. Eller har jag missuppfattat något? Kanske går det att använda approach control i skripten för andra syften? Jag tänker att mot en bangård (dvs där du vill kunna köra in på spår även om det står fordon där) så tror jag egentligen att huvudsignal alltid ska visa stopp. Dvärgsignal, antingen som en separat medgivandedvärg, eller som del av en huvuddvärgsignal, visar om rörelse är tillåten för växlingsrörelser. Detta har jag försökt simulera på några ställen på Jönköpingsbanan, kolla t.ex. infarterna till Tomteboda, Hagalund eller Jönköpings gbg, där det står huvuddvärgsignaler som alltid visar "stopp" i huvudsignaldelen, men där dvärgsignalen kan visa olika besked. (Till Tomteboda visa den alltid "snett höger" som kan anas här, eftersom bangården inte är signalreglerad.) Rent scriptmässigt är dessa signaler programmerade så att de är i "state slow" för jag kunde inte lista ut något bättre sätt. Men det borde ju gå att programmera dem så att man kan få tillstånd att passera från tågklareraren. Det verkar ju som att du börjar bli varm i kläderna med scripten, så titta gärna på hur man kan få DV4-signalerna att fungera bättre. De "fastnar" ju i "snett vänster" när tåg har passerat, även när nästa signalsträcka har blivit fri. Det enda sättet jag har fått det att funka är att programmera DV4 som en huvudsignal, men då blir det fel mot alla andra huvudsignaler så det går inte att ha det så. Men det borde gå på nåt sätt tycker jag! Det handlar "bara" om att få signalen att ta hänsyn till när signalsträckan har blivit fri igen. |
Citat:
Citat:
Citat:
Citat:
Citat:
Däremot har jag förstått att man gör skillnad mellan huvudljussignaler och huvuddvärgsignaler i vissa fall (de är dock båda huvudsignaler). Om nästa huvudljussignal visar stopp ska föregående försignal (i huvudljussignal, huvuddvärgsignal eller fristående försignal) visa "vänta stopp". Alltså: Hsi (kör, vänta stopp) -> Hdvsi (kör, vänta stopp) -> Hsi (stopp) ELLER Hsi (kör, vänta kör) -> Hsi (kör, vänta stopp) -> Hsi (stopp) MEN INTE Hsi (kör, vänta kör) -> Hdvsi (kör, vänta stopp) -> Hsi (stopp) Kanske det går att simulera? Kruxet är väl att då måste Hsi veta vad "nästnästa" signal visar om det står en Hdvsi mellan två Hsi. |
Citat:
Citat:
|
Citat:
Har du flera hsi i följd så borde de alltså visa "kör 40" om det är mindre än 800 m till stoppsignal. Citat:
Kanske någon av forumets signalexperter som kan reda ut detta närmare? :) |
Citat:
En hel del av det som har skrivits stämmer så därför kommer det att bli en del upprepningar i nedanstående text! Fristående Försignal: Signalen försignalerar närmast efterföljande huvudljussignal. Växlar, huvuddvärgsignaler eller stopplyktor får inte förekomma mellan en fristående försignal och den huvudljussignal som den försignalerar. Avståndet mellan försignalen och den signal som den försignalerar ska vara minst 800 meter om signalbeskedet "stopp" ska försignaleras. Repeterförsignaler får stå på kortare avstånd (beskedet har då redan lämnats i en tidigare signal). Kortare avstånd kan också tillåtas om sth är mindre än 80 km/h. Huvudljussignal: Försignalbesked gäller till närmast efterföljande huvudljussignal. Eventuella huvuddvärgsignaler mellan de bägge huvudljussignalerna, ska visa ett kör 80 besked och avstånden mellan samtliga signaler ska vara korrekt för respektive signalbesked. Om en huvuddvärgsignal visar stopp, oberoende av ifall det finns ytterligare signaler efter, ska det i huvudljussignalen signaleras med beskeden kör 40, kort väg (3 gröna) om avståndet är minst 250 meter, eller med kör 40, varsamhet (2 gröna) om avståndet är minst 450 meter. Gäller också mot stopplykta i stopp, en släckt stopplykta har ingen signalteknisk betydelse. Huvuddvärgsignal: Signaleringen mot huvudljussignal i stopp är endast tillåtet med beskeden kör 80, varsamhet, eller med kör 40 varsamhet och avståndet är då minst 200 meter (100 meter om siktsträckan är minst 300 meter). Signalering mot huvuddvärgsignal eller stopplykta i stopp är med beskedet kör 40, varsamhet och avståndet är då minst 200 meter (100 meter om siktsträckan är minst 300 meter). Observera att det alltid finns ett minimiavstånd när ett signalbesked är tillåtet att visa, det går alltså inte att ha avståndet noll meter mellan två medriktade signaler. Texten ovan hanterar situationer när man signalerar mot stopp, andra avstånd gäller förstås vid andra signalbesked. Sedan finns det också ytterligare regler som bestämmer under vilka villkor som respektive signaltyp med en viss signalfunktion ska få visa vilket signalbesked. Huvudsignal mot signalsträcka som är belagd: Jag tolkade texten tidigare (kan ha missförstått) som att man försökte få en huvudsignal att visa ett körbesked mot en signalsträcka med ett fordon på? Bara för att vara övertydlig, det går aldrig att ställa en tågväg mot en belagd signaleringssträcka! mvh Håkan |
Hmm, om jag lägger in det i programmeringsperspektiv:
-Försignal - ska endast kolla upp status på nästkommande huvudsignal. I andra fall så kommer den visa vänta stopp (Då den inte fungerar, ruttbyggaren har alltså placerat signalen fel). -Huvudljussignal - Om kör, visa status på nästkommande huvudljussignal. --Ifall det finns mellanliggande huvuddvärgsignaler gör följande: ---OM huvuddvärgsignalen visar stopp, visa Vänta kör 40 (2 gröna) eller Kör 40, kort sträcka (3 gröna) Om nästa signal är en stopplykta så gäller följande: -Huvudljussignal: visa Vänta kör 40 (2 gröna) eller Kör 40, kort sträcka (3 gröna) -Huvuddvärgsignal: Visa kör 40 eller kör 80, ruttbyggaren måste konfigurera rätt signalbild. Observera att i Train simulator har jag inte hittat stöd för att signallänkar ska kunna mäta avståndet till nästa signal, så här får ruttbyggaren konfigurera signalen manuellt. Det verkar ligga rätt mycket undantag kring huvuddvärgsignalerna, så de dvärgar vi har till TS behöver nog programmeras om i grunden för att signalförhållanderna ska vara korrekt i TS. Citat:
|
Om man ställer tågväg mot en beläggning.
Så det som går in är växlingväg med snett vänster optiskt. Men det är inte alla signalställverk som fixar det. (Men stlv 65 och dataställverk ex) Sen i kravet på tågväg så finns inte spårledningar med. Så tågvägen kan gå in men blir ju naturligtvis stopp i signalen. Vi har gjort så på Inlandsbanan bl.a. Det är för bla växlar ändå ska bli låsta vid spårledningsfel. Nyare ställverk har nu förenklad tågväg som också låser vid spl fel (men stopp i signaler) Men de flesta ställverk är gjorda att tågvägen inte går in vid beläggning. |
Citat:
Citat:
Citat:
Man kan fråga sig också hur många olika signalvarianter man är bekväm med. De gamla svenska signalerna är ju väldigt mycket "one size fits all" men så funkar de heller inte korrekt i många situationer. Jag har ju skapat ganska många nya varianter p.g.a. detta. Antalet varianter kan man nog kapa ner lite om man kan få till det så att man kan välja i konfigureringen vilket signalbesked som ska visas för varje länk. Citat:
Citat:
Kolla gärna hur jag har gjort i Hagalund. Jag tycker jag har lyckats OK med att efterlikna hur det ser ut IRL: https://youtu.be/U4H6sJx5t20?t=481 https://youtu.be/tuJOBaEi4Rc?t=2298 https://youtu.be/T0PwbMNjwcM?t=2621 Vissa signaler (som bara går in mot bangården) visar alltid rött + olika dvärgsignalbesked. Andra kan visa olika besked beroende på om det är tågväg ställt från signalen (t.ex. So 1146 - den signal som passeras i sista videon - där växlarna kan läggas antingen in mot uppställningsspåren eller mot spår D1). |
Citat:
Citat:
Citat:
Citat:
Jag försöker väl ändå få fram "one size fits all" med möjligheter att skapa rätt signalbilder för rätt tågväg. Och då tror jag att konfigurera signalerna genom att bocka i rätt rutor eller skriva in commands hade varit en passande metod. Om de itne är justerade så beter de sig som vanligt... Citat:
Kod:
Är jag inte helt ute och cyklar så gäller alla körsignaler i huvudsignal (dvs alla former av grönt i huvudljus- eller huvuddvärg-) bara för tågväg. För att ledas in på en bangård, på spår där det kan stå andra fordon, handlar det om en växlingsväg. Då är det stopp i huvudsignalen medan en växlingsdvärgsignal kan visa att rörelse är tillåten (lodrätt, eller snett vänster om det finns hinder). Mycket att hålla reda på och se över. Det här är väl min arbetsplan över signalerna: -Få in alla egenskaper jag vill ha med i H5, lägg in de som blir applicerbart i H2-H4 också. -Få in alla egenskaper jag vill ha med i DV6, DV7, DV5 och stopplyktan i tågväg. -Få in alla egenskaper för växling och se vilka signalbilder som är applicerbart i olika situationer i simulatorn. (t.ex. när ska "Kör varsamt, kontrollera växlar" gälla? om dvärgens länkar passerar minst en klotväxel?) samt få med "Kontakta tågklarerare att köra mot stop"-funktionen i våra svenska signaler. -Få in scriptet för dvärgsignalerna i huvudsignalerna, främst så både en objekt innehållandes en huvudsignal och en DV4 kan fungera ihop. --Det blir mycket jobb, har jag nämnt att få stationssignaturerna att fugnera? |
Jag ser förstås på detta utifrån perspektivet att jag har en rutt med hundratals signaler utplacerade, så om jag ska ha någon nytta av ditt projekt så måste
1) signalerna som redan finns i rutten fortfarande fungera och 2) nya signaler kunna användas tillsammans med signalerna som finns i rutten. Ett sätt att lösa det är att de nya signalerna har script som är helt kompatibla med de gamla. En nackdel med detta skulle kunna vara att det visar sig att man inte kan få den funktionalitet man vill om man är begränsad i hur de nya signalerna ska programmeras. Men än så länge verkar det ju som att signalerna du jobbar på i grunden har samma script som de gamla, så de borde fungera tillsammans. Ett annat sätt är att byta ut scripten för de gamla signalerna. Då kan man få ny funktionalitet för de signaler som redan finns placerade i rutten utan att behöva gå in och placera ut varje signal på nytt. Vissa signaler kommer man antagligen behöva gå in och ändra egenskaper för. Jag körde fast ordentligt när jag försökte få DV4 att fungera utan att "fastna" när tåg har passerat. Möjligen måste man ändra i scripten för andra signaler så att rätt signalmeddelanden tillåts passera och inte "äts upp" av "fel" signal. Håller tummarna för att du kan fixa det! Att få en användbar stopplykta skulle också vara trevligt. Som den funkar nu är det ganska begränsat var man kan ha den utan att det blir problem med andra signaler. Sen finns det en massa andra signaler som vore kul att ha, men de kräver nog en del 3D-jobb och inte "bara" scriptning. Jag tänker på repetersignal, riktningssignaler, A-signaler, signaler med avvikande utformning (som söderut från Cst där det röda skenet är näst längst ner i en 5-skenare). Som sagt, håller tummarna! :) :tumme_upp: |
Jo, jag förstår hur du tänker. De gamla signalerna som redan är utplacerade tänker jag inte röra. varför laga något som fungerar? Scriptet jag ändrar på kommer däremot ändra på signalerna som finns i SwedenV2 till att ha de nya egenskaperna.
Så som jag förstår det så är det att så länge newSignalState = STATE_GO, STATE_SLOW, STATE_STOP eller STATE_BLOCKED så kommer föregående signal att förstå nästa signal då gSignalState hämtar newSignalState från framförvarande signal. Där funderar jag på att lägga in något hos huvuddvärgarna som säger något i stil med OM STATE_GO, så gExpectState = newSignalState och så skickas det bakåt så att säga... något i den stilen. Iaf. tillbaka till H5:an. Jag tog bort scriptet som berörde bangårdssignalerna och istället så gav jag det en ny egenskap: Kod:
elseif Call ( "GetLinkApproachControl", gConnectedLink ) ~= 0 then Funktionen är applicerbar i H3-H5 och gör bra nytta med checkboxen. Återstår då Röd=Röd samt Kör40, kort avstånd kvar... |
Note to self: https://forums.dovetailgames.com/thr...er-docs.16740/
Citat:
|
1 bifogad(e) fil(er)
Jag har nu bemästrat funktionen "GetLinkFeatherChar" och till en början fått till 3 gröna (Kör 40, kort tågväg)
I function BaseInitialise() så lade jag till följande rader. Kod:
-- Get link character and store it as "gIndicator". Sen längst ner i SetSignalState() lade jag till följande rader: Kod:
if (gIndicator == "K") or (gIndicator == "k") then Kod:
elseif (gSignalState == STATE_SLOW) then Det var ett h-vete, men man lär sig varje dag! :grin: EDIT: Det innehåller lite buggar, det uppdateras inte i realtid, fel signalbild kan visas. :/ |
Alla tider är GMT +2. Klockan är nu 21:40. |
Powered by vBulletin® Version 3.7.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
© Svenska 3D-Tåg 2001-2009