![]() |
Citat:
463 signalobjekt (masters, signal markers, klarerare) 474 växlar varav 16 ingår i 4 dubbla korsningsväxlar (a,b,c,d) och 134 ingår i kopplade växelpar (a,b). /Magnus |
En uppdatering från felsökningen:
Som ett experiment ersatte jag alla länkade växlar med vanlig växlar. Inga a,b,c,d i slutet på växelnamnen alltså. Resultatet blev oförändrat. Felen finns kvar vid starten av sessionen. Det verkar inte som om länkningen av växlar påverkar detta. /Magnus |
Citat:
Sökningen skulle som du säger mycket väl kunna vara någon begränsning de lagt till i TANE av någon anledning. Citat:
Har kikat på koden och hittat en märklig sak. Svenolov har (som alla vettiga programmerare borde) lagt till en begränsning som gör att sökningen aldrig överstiger ett vist maxavstånd. Detta avstånd är valt till 10km. Detta gör det hela väldigt skumt, för alla spårloopar borde bara resultera i att sökningen terminerar, men av någon anledning pågår sökningen så länge att TANE får nog. Det skumma är att anropet till sökningen verkar göras för varje signal en gång per sekund, vilket borde innebära att felet uppstår på nytt varje sekund, eller att felet skulle krascha hela signalbiblioteket, så att ingen signal fungerar. Inget av detta inträffar vilket är märkligt. Citat:
Citat:
Citat:
Citat:
Ett annan teori: Har du några speciella rules som lägger om växlar i början av sessionen som skulle kunna vara inblandade? |
3 bifogad(e) fil(er)
Citat:
Lite bakgrund: Banan började byggas i TS2010 med det moderna signalsystemet. Problemet med message overflow i början av sessionen uppstod även där. Tendensen var att felet blev värre ju fler signaler jag satte upp. Först en enstaka rad i felrutan, sedan flera med växande antal signaler. Vad värre var, problemet tycks nästan växa exponentiellt så att det vid en viss punkt "exploderar" och fyller felrutan med liknande message overflow- meddelanden. Då hänger hela systemet upp till 10 sek i början av sessionen innan man kan titta på felmeddelandena. Sedan kan man köra tåg och då tycks signalerna i de flesta fall fungera, även om jag ibland har sett skumma beteenden hos några enskilda signaler. Några bilder som visar felutskrifterna: Översikt Bifogad fil 72524 Början på detaljerna för första raden Bifogad fil 72525 Slutet på detaljerna för första raden Bifogad fil 72526 Och så fortsätter det... Edit: Jag har också 76 MB JetLog.txt om det skulle vara av intresse. Samma signal tycks ge upphov till en massa message overflows. Det var ungefär i detta läge som jag gick över till TANE... /Magnus |
Citat:
Citat:
/Magnus |
Citat:
Det här felet är ju inte samma som det andra, utan ett helt annat. För i det här fallet så overflowas alla signaler på banans message queues. Det verkar som att alla signaler i början av sessionen ungefär samtidigt skickar ett broadcast-meddelande (alltså ett meddelande som alla som lyssnar på signalen kan fånga upp) och talar om att deras signal state har ändrats. (Antagligen för att de alla initialiseras på samma gång och då sätter sitt signal state) Eftersom alla signaler också verkar lyssna på alla andra signaler på banan så kommer alla signalers message queues att innehålla samma meddelanden. En specifik signal (Hoc 52) råkar vara den som får samtliga signalers meddelandeköer att overflowas, därav att det namnet förekommer på alla rader i felmeddelandeöversikten som du visar i första bilden. Orsaken till det här är att det är fler signaler på banan än vad Trainz klarar av att hantera. Särskilt gamla TS2010 som inte är flertrådad har en tråd där alla signaler initialiseras och får meddelandeköerna att overflowas för att varje signal inte har tid att ta hand om meddelandena. Potentiellt så skulle TANE kunna klara av detta för att den är bättre multitrådad och kan låta signalerna ta hand om meddelandena samtidigt som nya signaler initialiseras. Det borde gå att få reda på hur många signaler som är maxgränsen. Om du tar valfri signals detaljerade lista och räknar hur många rader med meddelanden som redan är i kön (alltså antal rader som börjar med "router"), så kommer du att få det maximal antalet signaler som går att ha i TS2010. Min gissning är att det är 256. Själva meddelandet "Signal, StateChanged" är ett standardmeddelande inbyggt i Trainz som det verkar, så jag tror inte att vi kan påverka det på något sätt. En potentiell lösning skulle vara att leta reda på den loop som initialiserar alla signaler på banan och se till att den bara initialiserar ett 10- eller 100-tal signaler åt gången, och efter varje grupp med signaler tar en kort paus för att lämna över CPU:n till alla signaltrådar så de kan få tid att uppdatera sig och gå igenom meddelandeköerna. Men det förutsätter att detta görs i Svenolovs script och inte är Trainz egna, underliggande signalscript. Citat:
|
Citat:
Hur som helst, tack för informationen. Det finns en hel del att begrunda och undersöka men jag hinner nog inte med det de närmaste dagarna. /Magnus |
Hej!
Kan informera om att samma problem uppstår i TANE! Vad jag kan se så är det ungefär samma typ av felmeddelanden. Dock så sker det inte alltid, inte med samma visnings problem med signalerna, vilket gör det lite lurt att åtgärda. Det sker bara vid uppstart av rutten, när signalerna skapas , så är inte på korvtigers resonemang oxå. Fast efter detta problem har hänt så funkar det att lägga in nya objekt och de skapas som vanligt och all den gamla informationen verkar finnas kvar på de tidigare signalerna. Om du vill ha mer info om detta och TANE så kan jag forska lite mer och lägga upp några skärmdumpar? mvh Håkan |
Citat:
Du får gärna forska mera om detta om du har tid. Jag vet inte om det är något som går att åtgärda, men ju mer information man har ju lättare är det att uttala sig om vad som är fel och vad som kanske kan göras åt det. Har ett litet experiment som någon av er skulle kunna få göra: Ta en av era banor som felet uppstår på och gör en kopia av den. Använd batch replace för att ersätta alla mastrar, SMs och klarerarsignaler på banan med en signal utan massa extra funktionalitet, till exempel: <kuid:-25:828> Signal BR 3 Använd batch replace till att ta bort alla scenerysignaler också och byt dem mot ett träd eller något som inte är scriptat. Spara och stäng ned banan. Kontrollera gärna i CM att banan inte har några STL-signaler eller mastrar som dependencies. Kör sedan och se vad som händer. Om samma fel inträffar så är det hela svårt att lösa då begränsningen ligger i Trainz. Om det inte inträffar innebär det antingen att vi kanske kan göra något åt det i scriptet, eller så beror det bara på att signalerna är mer lättviktiga och går snabbare att initialisera, så att Trainz orkar med fler av dem. Testa gärna detta även i TS2010 om ni har ork/möjlighet. |
5 bifogad(e) fil(er)
Hej!
Har nu ägnat mig en timme eller två åt att testa signalerna, bl.a som korvtiger föreslog (hade en ide att göra ngt liknande). Följande gjorde jag: -Startade om TANE så att det inte låg ngt gammalt i minnet -Öppnade rutten via "edit route". Ändrade ingenting i rutten. -Stängde den via "exit surveyor" utan att spara eventuella ändringar Detta förfarande gjordes minst tio gånger. Inte en endaste gång blev scenery signalerna korrekt initialiserade, men innehållet i property rutan finns intakt. De två första bilderna påminner väldigt mycket (är "samma") som Magnus har visat tidigare och det är exakt samma på "invisibleMaster" också. Bifogad fil 72549 Bifogad fil 72550 Denna bug kommer ibland, upptäckte efter ett tag att om jag klickade på bug symbolen, så att den försvann, så stannade spelet upp i fem/tio sekunder och sedan kom det första problemet även denna gång. Bifogad fil 72546 Detta timeout meddelande kommer ibland, och då tror jag att signalerna visades korrekt efteråt. Bifogad fil 72548 -Jag kopierade rutten. Bytte ut all "Osynliga objekten" till "Signal BR 3" dock INTE scenery signalerna. Sparade rutten, gick ur surveyor och gjorde samma manöver som på original rutten. Vad hände? Gissa, inte en endaste gång kom "overflow message" eller "timeout felen" tillbaka. -Nästa steg blev att byta tillbaka signalerna till STL och se vad som hände, alla fel kom tillbaka direkt och då är ju inte de ny-inlagda signalerna initierade än. Verkar väl ganska klart att det är script relaterat eller mycket jobb att läsa in. När jag labbade idag upptäckte jag ett annat innehåll i "Timeout" meddelandet, antingen är det nytt eller också har det förekommit tidigare och jag har missat det. Är ju dock en annan funktion än det tidigare "Timeout" meddelandet. Bifogad fil 72547 Hade tänkt labba imorgon men kunde inte hålla mig och var tvungen att testa vad jag hade gjort, hade en ide. -Gjorde en kopia på original rutten. -Öppnade rutten via "edit route". Tids-buggen kom direkt. Klickade bort den, och första chocken kom, signalerna fungerade, inga julgranar, även fast "owerflow" också kom upp. Kliade på den begynnande flinten! Stängde och öppnade igen, funkade varje gång. Öppnade original rutten, samma fel som tidigare. Ibland blir man inte klok på nått... Återgick till "::PathHasObstructions()" problematiken. Tog bort stationer (kind industry) som är scenery object och ersatte med spår. Då försvann "::Path..." och ersattes med den klassiska "::SearchBlockSignal()". Kan också meddela att min rutt har (hittills) ca 330 signaler exclusive scenery signalerna och är ungefär 200km lång dock väldigt lite landskap ännu (bl.a beroende på en bug i Mac-versionen av TANE). Bara med den moderna signalerings-principen. Ursäkta den långa utläggningen, men ville få med så mycket som möjligt direkt. Jag har dock en fråga som dyker upp emellanåt, och jag undrar om det är någon som aktivt håller på och utvecklar det moderna signalsystemet eller om det ligger i träda? mvh Håkan ps. Uj va tiden går när man har roligt... Får bli så här hoppas det inte är alltför otydligt! |
Blomsson: Jag har lagt in moderna ljussignaler i tio stationer men har tröttnat på att tvingas skifta propertyrutans begynnelsebokstäver i ett. Skriver jag in ett "S" ändrar Tane om det till ett "s". Jag har lämnat det moderna signalsystemet och återgått till det äldre.
Nisse |
Hej Nisse.
Jag såg att korvtiger hade svarat på ditt problem med stor/liten bokstav i TANE tråden. Jag kan bara säga samma sak, jag har aldrig upplevt det problemet! Jag testade att skriva in bägge varianterna och båda behöll sina bokstavs-stilar. Det verkar nästan som om du "glömmer" att spara emellan ändringarna, fast det tror jag inte du gör, men beteendet på signalen verkar så. Har du testat att spara banan med ett nytt namn och sedan se vad som händer? mvh Håkan |
Citat:
När jag ursprungligen lade in samtliga signaler i banan skrev jag in beteckningarna med små bokstäver. Av en händelse upptäckte jag senare att mastern begynnelsebokstav ändrats till stor bokstav. Ytterligare senare upptäckte jag att ljussignals benämning drabbats av samma sjukdom. I masterns propertyruta skall man ställa signalerna. Funktionen är helsvart. Min gissning är att ingen av signalerna korrekt kopplade. Självklart sparar jag alltid även den minsta ändring. Nisse |
Jag kör fortfarande 2010 och i det spelet verkar det som signalnamnet är känsligt för stor eller liten bokstav. Är det inte exakt lika på signalen och mastern kommer de aldrig att kopplas ihop. Själv har jag som regel att alltid börja med stor bokstav för både master och signal.
|
Nu tycker jag visserligen att denna diskussion hör hemma där du startade den, men eftersom du frågar här så svarar jag här, och så får ngn som kan eventuellt flytta på dessa inlägg om de stör!
Så som du beskriver det så funderade jag på om du har missat en detalj i uppraderingen av signalsystemet till TANE. I propertyrutan så finns det en rad med Tpl-signatur. I den föregående versionen så ändrades den automatiskt när man döpte om mastern, nu gör den inte det. Om namnet på mastern inte stämmer överens med scenery-signalen så blir tpl-signaturens text vit, klicka på den och skriv in en ny text. Om du skriver samma som mastern har blir texten blå. Den enda vita texten jag får upp i övrigt, är när jag för muspekaren över master, då visas det inskrivna namnet på master signalen, INTE tpl-signaturen. Exempel: -Ny master, får ett löpnummer, t.ex 666 -Öppnar property-rutan skriver in Vr 21, trycker på "ok" -Muspekar-överkörning visar Vr21 -Lägger in en ny Scenery-signal, varför inte en 5-skenare, mycket roligare... -Scenery är julgran -Öppnar property-rutan skriver in (Vr 21), trycker på "ok" -Tpl-skylten på signalen visar 666 -Öppnar property-rutan på mastern, klickar på den vita texten och skriver in Vr 21, trycker på "ok" och texten blir blå och tpl-skylten ändrar till Vr 21. -Om jag skulle ändra texten på mastern till vr 21, då blir scenery-signalen svart, och måste då ändras till (vr 21), men tpl-signaturen är fortfarande Vr 21, och måste då ändras till vr 21 i masterns property-ruta om man så vill. Jag använder mig bara av Aaa konventionen, eftersom det står så på skyltarna och är oxå snyggare... Om detta inte löser problemet, vad händer om du skapar en ny signal enl ovanstående, var som helst på banan, och sedan ändrar text från på samma vis som förut, blir det samma problem? Detta är det enda jag kan komma på enl. din beskrivning. mvh Håkan |
Alla tider är GMT +2. Klockan är nu 20:02. |
Powered by vBulletin® Version 3.7.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
© Svenska 3D-Tåg 2001-2009