Svenska 3D-Tåg - Forum  
 

Om det här är ditt första besök, se till att gå till vår FAQ (finns även länk till FAQ i navigeringsmenyn ovan). Du kan behöva att registrera dig innan du kan posta (finns även en länk till registrering i navigeringsmenyn ovan). För att titta på inlägg, välj det forum som du vill besöka från de som är listade nedan.

Gå tillbaka   Svenska 3D-Tåg - Forum > DTG - Train Simulator > 3D-design - DTG - Train Simulator

Svara
 
Ämnesverktyg Visningsalternativ
Gammal 2025-04-08, 23:48   #1
ADDE
Medlem
 
Reg.datum: Feb 2012
Inlägg: 1 378
Standard Omfg äntligen!!!

Jag har gjort ett genombrott!

Efter flera försök med felsökning rörande TAB/"Passing signal at danger approved/denied" där DV4 medgivandesignal fångar upp och blockerar detta så har jag äntligen hittat felkällan:

I commonscript så har jag följande rader:
PHP-kod:
function GetSignalState()
    return 
gSignalState
end 
Detta gör att TSC genom funktionen GetSignalState alltid frågar signaler om dess status så länge spelet är igång. Det är här som TAB-funktionen hanteras.

Problemet är att eftersom det låg i CommonScript så hämtar alla signaler som kör commonscript denna funktion. Huvudsignaler såsom H2, H5 och DV7 har en gSignalState definierad, något jag upptäckte när jag debuggade kodraderna. Däremot har F2, F3 och DV4 medgivandesignal ingen gSignalState definierad, eftersom deras enda uppgift är att hämta försignalbesked eller matchande växlingssignal från en huvudsignal som hanterar all signalscript.

Men eftersom GetSignalState även körs hos dessa utan att gSignalState är definierad så "fångar" de upp TAB-förfrågan, och gör inget med det. - Ingeting fungerar förrän man har kört förbi signalens länk.

Lösningen:
Flytta bort kodraden ovan från CommonScript och lägg in det vid varje huvudsignal och huvuddvärg. På så sätt är det endast dessa signaler som TSC ska kolla på och hantera TAB. Andra signaler som inte har GetSignalState i sin kod ignoreras helt. TAB landar då vid rätt signal och du får då besked om du får passera eller inte, följt av att DV4 medgivnadedvärg, DV6 eller DV7 visar "Rörelse tillåten" eller "Rörelse tillåten, hinder finns"

Det tog mig 3 år att inse att GetSignalState() var boven bakom dramat. Utan ordentlig dokumentation så blir man bara frustrerad.

Även andra buggar är åtgärdade såsom:
- DV4 medgivandesignal visade alltid "Rörelse ej tillåten" även om TAB är godkänt. - Åtgärdat genom att ge nya värden för följande meddelanden som skickas mellan signalerna:
HTML-kod:
SIGNAL_GO           = 20
SIGNAL_SLOW         = 21
SIGNAL_STOP         = 22
SIGNAL_BLOCKED      = 23
SIGNAL_SHUNT        = 24
SIGNAL_UNPROTECTED  = 25
SIGNAL_CALLON       = 26
Detta, tyvärr, bryter kompatibiliteten med de gamla svenska signalerna, men hellre det än att det krockade med andra definitioner:
HTML-kod:
OCCUPATION_INCREMENT							= 14
OCCUPATION_DECREMENT							= 15
DISTANCE_INCREMENT								= 16
DISTANCE_DECREMENT								= 17
- Ordnade åtgärd där blocksignaler hanterade inte TAB korrekt och var fast i STATE_BLOCKED. upprepade TAB-förfrågan kunde skickas.

Scriptfilerna är uppe på Github.

VIKTIGT: Använd absolut inte dessa signaler ihop med de gamla svenska bommarna. Det kommer uppstå meddelandekonflikter dem emellan som gör att signaler och/eller bommar börjar bete sig felaktigt.

Återstår: FÅ signalerna att visa stopp när inget tåg närmar sig, för att vara mer realistiskt.
- Lära mig blender och skapa nya signalskyltar.

När detta är inlagt så gör jag hårdtester och publicerar en ny beta som alla kan ladda ner och testa.

@Totte - ja. Det kan man. - Vad jag gjorde var att jag kopierade newS signaler och placerade dem i SummerADDE/SESignalsTest och sedan expanderade jag det befintliga scriptet med allt jag ville ha med.

Jag hör er, Hgv och Totte. Ni vill inte byta ut de signaler ni redan har placerat ut. - Jag kan testa om jag kan lägga in mina scripter hos de befintliga signalerna som newS och KMW har skapat, men jag lovar ingeting.
__________________
Mvh SummerADDE

Alla mina projekt till Train Simulator Classic är nedlagda. Jag kommer härmed fokusera på att skapa rutter och innehåll till Train Sim World i fortsättningen.

Alla mina downloads på Google Drive kommer att tas bort permament den 31:a agusuti 2024.
ADDE besöker inte forumet just nu  
Svara med citat
Gammal 2025-04-09, 20:14   #2
ADDE
Medlem
 
Reg.datum: Feb 2012
Inlägg: 1 378
Standard

Jag har idag jobbat vidare med signaler.

En sak jag upptäckte var att jag hade inte med H2C och H4 bland signalobjekt i mitt paket. Dessa har jag nu lagt till i github.

Har även ordnat små problem kopplat till H2C som gjorde att dess lampanimationer inte fungerade.
__________________
Mvh SummerADDE

Alla mina projekt till Train Simulator Classic är nedlagda. Jag kommer härmed fokusera på att skapa rutter och innehåll till Train Sim World i fortsättningen.

Alla mina downloads på Google Drive kommer att tas bort permament den 31:a agusuti 2024.
ADDE besöker inte forumet just nu   Svara med citat
Gammal 2025-04-12, 16:32   #3
ADDE
Medlem
 
Reg.datum: Feb 2012
Inlägg: 1 378
Standard Första betan ute!

Ny version: 2025-04-12 (Beta)

Download

Installera .rwp-filen i vanlig ordning med utilities.

I TSC-editorn hittar du filerna om du bockar i "SummerADDE/SESignalsTest" Då listas de i signallistan som "SE SignalV2..."

Vad är nytt:
- Ny uppsättning signaler färdiga på stolpar i olika höjder.
- Ny och förbättrad script för mer realistisk signalisering så långt det är möjligt.
- Massa nya funktioner och egenskaper:
-- Konfigurerbara signaler som övervakar växlar.
-- tryck på TAB för att få tillstånd att passera mot rött (vid växling t.ex.)
-- Om du kör mot rött i scenarioläge så får du game over.
Konfigurerbara egenskaper:
- Bocka i "Limited Aspect" för att få "Kör 40" istället för "kör" vid en given tågväg.
- Bocka i "Approach control" för att signalen ska visa "kör 40" om nästa signal visar stopp.
- Fyll i någon av följande siffror i "Link ID"-fältet för att få följand egenskaper:
1 - Visa stopp om nästa signal visar stopp.
2 - Visa stopp och använd endast växlingsdvärgssignaler för att visa växlingsvägar.
3 - Visa 3 gröna istället för 2 gröna (gäller H5-signaler) - Detta kan kombineras med att bocka i "Limited Aspect" eller "Approach control".

- DV4 medgivandedvärg:
-- Placera en DV4 medgivandedvärg så dess länk placeras bakom den huvudsignal den ska "lyssna" efter, så den visar rätt växlingsbild. Dessa heter "DV4 A Main" och "DV4 D Main"

Obs! Dem här signalerna fungerar inte ihop med de gamla signalerna då jag var tvungen att ändra i meddelandehanteringen för att få med en massa funktioner i meddelandeväg. De fungerar heller inte ihop med de gamla plankorsningarna.

För er som vill använda det nya scriptet med de gamla signalerna ni redan har placerat ut, kan leta upp efter scriptfilerna i "Assets\SummerADDE\SESignalsTest\RailNetwork\signa ls\scripts" och kopiera innehållet, samt lägga in det i motsvarande scriptfiler på "RailWorks\Assets\newS\sweden\RailNetwork\signals\ scripts" och på "RailWorks\Assets\KMW\Sweden\RailNetwork\Signa ls"

Se till att backa upp filerna innan ni ersätter dem och kontrollera så att alla era svenska rutter ni har installerade fungerar med de nya signalerna och gör de ändringar som behövs, t.ex. byta ut en hel del DV4r. Jag har ändrat för mycket i scriptväg, just därför valde jag att skapa ett eget paket än att ändra i det som redan finns.

------

Rapportera gärna till mig när ni upptäcker fel eller behöver hjälp. Debug_log.txt som skapas i "Assets\SummerADDE\SESignalsTest" är väldigt värdefullt att dela med sig vid felsökning, men se då till att namnge varje signal ni har placerat ut eftersom det loggas i debug-filen.

Det finns säkert mycket buggar och fel kvar. Jag har testat det mesta men det kan vara saker som behöver åtgärdas innan jag anser att det är klart. Det finns även vissa typer av signaler jag försöker få med, men de funkar inte som de ska så de kom inte med i detta paket, men jag hoppas få med dem i nästa version.

Lycka till och tack i förhand för hjälpen!
//ADDE
__________________
Mvh SummerADDE

Alla mina projekt till Train Simulator Classic är nedlagda. Jag kommer härmed fokusera på att skapa rutter och innehåll till Train Sim World i fortsättningen.

Alla mina downloads på Google Drive kommer att tas bort permament den 31:a agusuti 2024.
ADDE besöker inte forumet just nu   Svara med citat
Gammal 2025-05-03, 17:48   #4
Hgv
Medlem
 
Reg.datum: Apr 2007
Inlägg: 817
Standard

Nu har jag tagit en första titt på de nya signalerna:
  • På dvärgsignalerna som har märkskylt så får jag spårets STH på skylten istället för signalens signatur. Och märkskylten sitter på baksidan av signalen.
  • Om jag inte missat nåt så har alla signaler max 5 länkar? Man behöver mer än så för större bangårdar (typ Cst).

Citat:
Ursprungligen postat av ADDE Visa inlägg
För er som vill använda det nya scriptet med de gamla signalerna ni redan har placerat ut, kan leta upp efter scriptfilerna i "Assets\SummerADDE\SESignalsTest\RailNetwork\signa ls\scripts" och kopiera innehållet, samt lägga in det i motsvarande scriptfiler på "RailWorks\Assets\newS\sweden\RailNetwork\signals\ scripts" och på "RailWorks\Assets\KMW\Sweden\RailNetwork\Signa ls"
Jag lyckas tyvärr inte alls få detta att fungera. Det ser ut som att signalerna inte hittar scripten eller att scripten på något sätt inte är kompatibla med de gamla signalerna (dvs alla lampor lyser konstant i alla signaler).

Har du någon aning om vad som kan vara fel?
Hgv besöker inte forumet just nu   Svara med citat
Gammal 2025-05-04, 02:05   #5
ADDE
Medlem
 
Reg.datum: Feb 2012
Inlägg: 1 378
Standard

Citat:
Ursprungligen postat av Hgv Visa inlägg
Nu har jag tagit en första titt på de nya signalerna:
  • På dvärgsignalerna som har märkskylt så får jag spårets STH på skylten istället för signalens signatur. Och märkskylten sitter på baksidan av signalen.
  • Om jag inte missat nåt så har alla signaler max 5 länkar? Man behöver mer än så för större bangårdar (typ Cst).



Jag lyckas tyvärr inte alls få detta att fungera. Det ser ut som att signalerna inte hittar scripten eller att scripten på något sätt inte är kompatibla med de gamla signalerna (dvs alla lampor lyser konstant i alla signaler).

Har du någon aning om vad som kan vara fel?
Dem märkskyltarna ska bort, och jag behöver hjälp av en 3D-modellerare att ta fram nya märkskyltar då newS-skyltar är felvända och egentligen inte alls anpassade så som de används just nu. Men har du skrivit signalens signatur och nummer i Signal-ID:t när du placerade ut den?

Om du behöver fler än 5 länkar, kopiera ens signals.bin eller .xml och öppna den i editorn. Där inne ska det finnas en rad som säger hur många länkar signalen ska ha. Kom ihåg att ändra namnet också.

Ang. scripterna. har en debug_log.txt skapats i mappen /assets/SummerADDE/SESignalsTest? - Där borde det finnas felmeddelanden som genereras. Vad säger LogMate?
__________________
Mvh SummerADDE

Alla mina projekt till Train Simulator Classic är nedlagda. Jag kommer härmed fokusera på att skapa rutter och innehåll till Train Sim World i fortsättningen.

Alla mina downloads på Google Drive kommer att tas bort permament den 31:a agusuti 2024.
ADDE besöker inte forumet just nu   Svara med citat
Gammal 2025-05-04, 11:54   #6
Hgv
Medlem
 
Reg.datum: Apr 2007
Inlägg: 817
Standard

Citat:
Ursprungligen postat av ADDE Visa inlägg
Men har du skrivit signalens signatur och nummer i Signal-ID:t när du placerade ut den?
Det gjorde jag, skylten visar ändå banans STH.

Hittar inget uppenbart i debug_log.txt, är det något speciellt meddelande man ska leta efter? Spontant ser det ut som att signalerna initialiseras och scripten används. Men som sagt "alla lampor lyser".
Hgv besöker inte forumet just nu   Svara med citat
Svara


Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av
Forumhopp



Alla tider är GMT +2. Klockan är nu 01:30.


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