Visa ett inlägg
Gammal 2019-03-21, 16:57   #28
blomsson
Medlem
 
Reg.datum: Jul 2011
Ort: Vingåker
Inlägg: 343
Standard

Nej, inte riktigt så!

Anledningen till att felet uppstår är att de objekt som hänvisas till i configen inte finns i <kuid:67375:1021> utan i en senare version t.ex. <kuid2:67375:1021:3>. Om objektet finns i version <kuid2:67375:1021:3> så spelar det ingen roll vilken föregående version som väljs eftersom objektet ändå inte finns.

Jag gjorde ett litet experiment och klonade mitt meshbibliotek för tavlorna, och plockade bort tavlan som visas nedan från den första versionen.
Exempel från en av Ljudsignaltavlans tilläggstavlor
Kod:
 
  position1_info700_lod0
  {
    mesh-asset                          <kuid:609407:105117>
    mesh                                "410x700.trainzmesh"
    auto-create                         0
    lod-level                           0
  }
Då visas följande felmeddelande:
1 Not found 3st.jpg
Att det visas tre stycken fel beror på att hänvisningen finns på tre ställen i configen.

Nu skapade jag en ny version och lade till tilläggstavlan ovan, men behöll koden som visas ovan.

Samma felmeddelande visas igen, vilket beror på att tavlan endast finns i den nya versionen. För att bevisa det ändrade jag till följande kod på ett ställe i configen.
Kod:
 
  position1_info700_lod0
  {
    mesh-asset                          <kuid2:609407:105117:1>
    mesh                                "410x700.trainzmesh"
    auto-create                         0
    lod-level                           0
  }
Då blev det följande felmeddelande:
2 Not found 2st.jpg

Nu är det endast fel på två ställen eftersom ett ställe hänvisas till den nyare versionen!

Så vad händer om jag raderar (delete) den obsoleta versionen, varför inte testa!

Och så löste vi problemet!
Samtliga felmeddelanden från Ljudsignaltavlan försvann! Tydligen så ersätts koden internt eller så "går den äldre version upp i den nya". Som vanligt med N3V så måste man testa själv för att få veta saker, hade ingen aning om detta.
Och förklarar ju varför Bengan inte hade problem medan andra hade det!

Detta innebär att det går att skriva utan <kuid2> eller vilket lägre versionsnummer som helst om de objekt som hänvisas till och är obsoleta är raderade, annars så kommer det att bli felmeddelanden. Skriver man ett felaktigt versionsnummer blir det "Missing Dependencies".

Det bästa för att undvika bekymmer är ju att skriva det senaste versionsnummret som finns när man hänvisar till objekt i configen,bl.a. eftersom man inte vet vilka objekt som användarna har installerade.

Även om det är enkelt att radera ett objekt så är det säkert inte många som vet att det fungerar så här och problem med tillhörande frågor lär väl återkomma! Dessutom kanske man vill ha en extra säkerhet att kunna återgå till en tidigare version om uppdateringen orsakar problem.

mvh
Håkan
__________________
Fd. signalreparatör på Banverket. Sjukpensionär bla pga Aspergers syndrom.
Använder numera T:ANE på en iMac (Retina, 27", -15), 24GB, OSX Sierra 10.12.6 (25/9-17)
Hemsida för nedladdning av mina objekt: https://blomsson4073.se/index.html
blomsson besöker forumet just nu   Svara med citat