The DLC-system lets me fall into despair

-Basti-

Active member
Hey guys,

the way the DLCs work frustrates me more and more.

I have a route where i only used DLS-content some years ago around TS 12-times.

Now when i want to use the route in newer versions, i have to install lots of DLCs (which most I do not want to install) just to have the required items.

The reason? DLC-assets from DLS get a new KUID-version when packaged into DLCs. So when I use for example T:ANE with some DLCs installed (or some DLS-content I used becomes built-in) and I work on the route, the required KUID-version is set to the DLC one.

Congratulations, in the future i will always have to install those DLCs/builtin to use my route and when I distribute it, all users have to install the DLCs even if the content is on DLS. In most cases I had a look at the content is the same besides the KUID-version.

The way DLCs and builtin works in the past makes me sick. I lose all my motivation to work on routes.
I told this since the DLC-system was started, wrote bug reports about it, nothing changed.

I had ideas how to fix it (easiest way would be to make the DLC-versions also available via DLS and make Trainz/CM use the DLC one if there are conflicts) - no response.

Will this continue forever?

Do I really have to remove all content that was packaged into DLCs?

I always was pro-DLS, but meanwhile its a real integrity problem uploading content to DLS (as they could be packaged into DLCs).

In my opinion its really time to change it.

Or do I miss a point that avoids that situation?

Thanks

Sebastian

edit:
If required, i can write down my other ideas to fix that situation again. Just let me know.
 
Last edited:
My understanding of the system - and I will admit there is a lot of confusion (including by me) - is as follows.

All DLS assets that are referenced in a DLC package are now included in the one DLC download. The user no longer has to use CM to download all the referenced assets from the DLS. This, according to N3V, is to resolve the constant complaints they have always received from DLC customers about missing assets and problems accessing the DLS, especially if they do not have an FCT, to get those assets. This new policy means that a DLC package now contains everything, including 3rd party assets, and it will be downloaded at the maximum possible speed that depends only on your internet connection and not on whether or not you have an FCT.

This means that a dependent asset can now be found in two different places - in a DLC package and on the DLS. The status label "Packaged" was introduced to cover this possibility.

From my direct observations using TRS19 installed on different computers.

  • if you have an installed asset (for example a small bush) that is on the DLS and is also in a DLC package that you have installed then it will be labeled as Packaged in your CM
  • if you have the same bush asset installed from the DLS but have not installed a DLC package that also contains the asset it will be labeled as Installed from DLS in your CM. In you later install a DLC package with the asset its status will be changed to Packaged.
  • if you use the Packaged asset in a route you upload to the DLS then anyone who downloads and installs the route and who does not already have the asset installed (either Packaged or Installed from DLS) then their CM will automatically download and install it from the DLS, as it always has.

Problems seem to arise when the DLC copy of an asset has a higher version number than the DLS copy. So if you use the higher version DLC copy in an uploaded route then anyone who downloads your route and does not already have the asset will have their CM report that the asset is "unknown". Doing a List Asset Versions command on the unknown asset should reveal the earlier version on the DLS but I do not know if installing the earlier DLS version will fix the problem (probably not).

What (I believe) should happen is that the DLS copy should be updated so that its version number should always be equal to the DLC copy. If the DLS copy has a higher version number than the DLC copy then anyone who has the Packaged DLC version can also get their copy updated by CM, so no problem there.

My thoughts.
 
Last edited:
Right, I can confirm the behaviour you describe. That behaviour is not (at least not that much) a problem, the problem is that KUID versions are increased compared to DLS.

Problems seem to arise when the DLC copy of an asset has a higher version number than the DLS copy. So if you use the higher version DLC copy in an uploaded route then anyone who downloads your route will have their CM report that the asset is "unknown". Doing a List Asset Versions command on the unknown asset should reveal the earlier version on the DLS but I do not know if installing the earlier DLS version will fix the problem (probably not).

Thats exactly the problem. I many cases, the DLC asset has received a higher KUID version which is NOT available on DLS.
Installing the DLS-kuid will not help as the higher version is referenced by the route if the route creator has (or had once) the DLC installed while working on the route.
And that's exactly the problem.

What (I believe) should happen is that the DLS copy should be updated so that its version number should always be equal to DLC copy. If the DLS copy has a higher version number than the DLC copy then anyone who has the Packaged DLC version can also get their copy updated by CM, so no problem there.
Yep, that's one possible solution to have updated versions also on DLS. Did not happen so far.
Its not that it affects for example few houses I can replace. No - it affects on my route at least 130 (!) KUIDs including catenary and signals.
To me it looks like the KUID-version has been increased for packaging as in many cases there are no other changes between the versions besides the higher kuid version.
So either stop increasing the KUID-version when packaging to a DLC or update the DLS accordingly.

And thank you for the hint with "List Asset versions" - i did not think about it and googled every missing KUID ;-)
 
Basti, you are right. The version number is incremented on some assets included in DLC without any changes to the asset. Why? Because as Peter said N3V requires all DLC packages to include everything used by the DLC that isn't part of a base install. But some users already have some of these assets installed and at some point a change was made how CM handles an attempt to install a duplicate version of an asset. Once CM asked you how you wanted to handle an attempt at installing a duplicate asset, overwrite or skip? But now the process is to place the duplicate asset in the Open for Edit status supposedly to allow the user to decide if they want to install the duplicate or not but the problem is that many users are unaware that this is happening and don't know how to handle these assets correctly. The quick fix for DLC creators was to increment the version numbers of any duplicate assets so their DLC package installs without any asset being placed in the Open for Edit status. But as you point out this leads to creators using assets that are only obtainable by installing the DLC version of the assets. What is needed is a more efficient way of handling attempts to install duplicate assets.

William
 
Trainz just could prioritize DLC-assets when duplicate and disable the installed one. This quick fix lasts quite long and its take to change it as it breaks route building for many people.

There has to be a change and i'd prefer a way to do it without modifying the software itself but do it on a DLS-based way like uploading the same (or a higher version to avoid conflits) again.

The current state feels somehow like kicking up the backside of the CCs that made those contents - and i can meanwhile understand why some do not upload DLS content anymore - even if I ever been pro-DLS.
 
Last edited:
But some users already have some of these assets installed and at some point a change was made how CM handles an attempt to install a duplicate version of an asset.

In my limited tests with TRS19 installs I did not notice that occurring. If you had an asset installed from the DLS when you installed a DLC package containing the identical asset then the installed asset was relabelled (even if it came from the DLC and overwrote the DLS copy) as "Packaged". I did not see any duplicates with the same kuid, at least not in the sample assets and packages I used.

Once CM asked you how you wanted to handle an attempt at installing a duplicate asset, overwrite or skip? But now the process is to place the duplicate asset in the Open for Edit status supposedly to allow the user to decide if they want to install the duplicate or not but the problem is that many users are unaware that this is happening and don't know how to handle these assets correctly.

In my experience that only happens when a package is installed using the Import Content Files or Import Content Folder in CM, not when a package is installed using Content Store. In any case, giving users the option to install the downloaded duplicate (or duplicates) or not would be a bad interface option - what happens when there are multiple (30, 40, or more) assets that would fall into the "duplicate" classification? How many times would you be pestered by this popup? Many users would not know what to do in that situation for even a single occurrence or would become annoyed by multiple instances - in my opinion.

A simpler fix (again in my opinion) is to ensure that any "up-versioned" asset placed in a DLC package is also placed on the DLS. If a creator does not want to do that, for what-ever reason (e.g. copyright), then the new version in the DLC package should be labelled as "Payware".

My thoughts.
 
So from your testing it seems N3V chose to make overwrite and relabel as packaged the default behavior for content installed via the in game store. Interesting, I must confess I do very little with TRS19 SP5 or above other than running my own routes that I have imported. That does seem like an acceptable choice in most cases although I do wonder what happens when DLC is uninstalled and an item from the DLS that was overwritten is removed. Does it get restored to the version that was installed from the DLS?

I agree, it is very annoying to be asked. I mostly used the install method of drag and drop to install content. It is tiresome to have to deal with open for edit files.

As far as the DLS is concern, I can see how adding the "up-version" items would be simple. If the item came from the DLS in the first place, then permission has already been granted to N3V to distribute the asset if it chooses so other than being polite in notifying the creator, I don't think a user could legally block it. The process isn't fundamentally different than the work of the CRG in updating old items. Now having an superficially "up-version" item on the DLS would cause installed from DLS versions to show an update to be available in CM and could trigger a lot of downloads wasting bandwidth on the DLS server connections. How big of a problem would depend on the size of the items, of course.
 
In older versions of Trainz some assets from DLC became built-in and got used in routes which when uploaded became missing. Newer versions now show all DLC as packaged or packaged payware.
If you do have a route that has packaged payware (not active) you will need the DLC pack to get it. If you have a route with packaged (not active) then there is a version on the DLS. List asset versions and download the DLS version using the download this version. Open your route/session for editing and delete missing assets, this should remove the DLC (not active) asset kuids from the config and use the DLS version ones instead.
 
I do not know if a duplicate asset in a DLC package will overwrite an original DLS copy if it is installed or will simply skips over it (which would be the more bandwidth friendly option) but even if it did overwrite then that would still avoid duplicates. I am also uncertain whether or not duplicates in CM do exist as I only tested a very small number of cases and it is always possible that CM simply did not display any duplicates.

Interesting question - if you remove, using Content Store, a DLC package what happens to those assets labelled "Packaged"? How would CM know if an asset had been previously installed from the DLS or came only from the now deleted package? My best answer here would be to leave the packaged assets installed and still labelled as "Packaged" (which would reflect the real situation). After all, the packaged assets exist on the DLS anyway. Keeping them installed would/should reduce the install time if you decide to reinstall the DLC package again at a later time. Plus if a DLS updated version is released then you will get that update.
 
N3V are still in the process of ensuring that DLS assets up-versioned and bundled in packages are also updated to the same version on the DLS, it mostly works, occasionally something gets missed, in which case help desk or bug report should fix it or if still around the original creator can update it to match. I've done about 5 of my assets that got missed and caused missing assets and one got sorted by Zec who picked it from a thread on here.

Temporary local only fix would be to locally up-version the DLS version.

Note old routes will continue to use list the original kuids in the kuid table irrespective of if they are obsoleted until you save the route or session in a new version, when it appears the kuid table gets updated to reflect the newer packaged version.

If a missing DLS kuid is only showing as a higher version Packaged not active, right click view asset versions find the one that is on the DLS, right click, download this version and that should sort the problem, mostly!
 
Last edited:
Interesting question - if you remove, using Content Store, a DLC package what happens to those assets labelled "Packaged"? How would CM know if an asset had been previously installed from the DLS or came only from the now deleted package? My best answer here would be to leave the packaged assets installed and still labelled as "Packaged" (which would reflect the real situation). After all, the packaged assets exist on the DLS anyway. Keeping them installed would/should reduce the install time if you decide to reinstall the DLC package again at a later time. Plus if a DLS updated version is released then you will get that update.

The asset would read packaged (not active) compared to the asset being packaged as part of the installed installation. This would revert CM to the last installed version. If you use a DLC asset from a route that is packaged, then your routes config will adapt the new kuid when saved. It will look for that asset and report packaged (not active) and show as missing. The config needs to see the older version that did not come with the DLC pack and this is only done by deleteing missing assets.
 
The asset would read packaged (not active) .... config needs to see the older version that did not come with the DLC pack and this is only done by deleteing missing assets.

Most of that seems way too complex (and confusing) to me. Why not simply leave the "packaged" assets from the now deleted package installed? After all they are all available on the DLS anyway.
 
Most of that seems way too complex (and confusing) to me. Why not simply leave the "packaged" assets from the now deleted package installed? After all they are all available on the DLS anyway.

Would make more sense to me if the Payware downloader pulled in the DLS versions where they exist rather than bundling them in the package, wouldn't be a problem then.

I'd also like a way of clearing all the hundreds of obsolete packaged items that seem to be gathering dust on my drives.
 
Most of that seems way too complex (and confusing) to me. Why not simply leave the "packaged" assets from the now deleted package installed? After all they are all available on the DLS anyway.
If you delete the package you also delete the packaged assets and would need to have a version of that asset installed from the DLS. As most packaged assets have an increased version number any route that you create and uses that DLC asset would see them as missing because the higher version number would be saved in the route/session config file. The config file will not revert to the lower version unless that version is deleted in the route/session.
 
Would make more sense to me if the Payware downloader pulled in the DLS versions where they exist rather than bundling them in the package, wouldn't be a problem then.

Which was how things were originally done. I tried to find the relevant post by Zec??? on that matter but failed. He (if it was Zec) very firmly stated that N3V will not be going back to that method because of the huge number of very angry posts and helpdesk complaints they were constantly receiving from DLC downloaders who, for technical reasons and lack of an FCT, were not getting all the DLS assets in their purchased downloads.
 
clam1952
I'd also like a way of clearing all the hundreds of obsolete packaged items that seem to be gathering dust on my drives.
Amen to that! Mine currently number 994 on just one build - about to pass the 'thousand' mark. What a waste of space/ efficiency.
 
Open your route/session for editing and delete missing assets, this should remove the DLC (not active) asset kuids from the config and use the DLS version ones instead.

Are you sure this works?
In earlier tries, using "Delete missing assets" removed the asset which is missing the DLC-version completely from the route, there has been no fallback or downgrade.
 
Are you sure this works?
In earlier tries, using "Delete missing assets" removed the asset which is missing the DLC-version completely from the route, there has been no fallback or downgrade.

Find replacement assets for the DLC assets you have installed and then save. After the save, run the D-M-A.

One of the issues I have found is there is sometimes things still listed in the route-data that doesn't get cleared even though an asset has been replaced. By running the D-M-A afterwards, this clears up that information.
 
You must have the DLS asset installed first. Check for versions and download the highest DLS one. Assets will only vanish if you don't have a DLS one installed. I do the same with an updated asset that I later find doesn't work and need to go back to an earlier version. It has worked in the past and earlier this year when I needed to revert some assets.
 
Last edited:
Find replacement assets for the DLC assets you have installed and then save. After the save, run the D-M-A.

One of the issues I have found is there is sometimes things still listed in the route-data that doesn't get cleared even though an asset has been replaced. By running the D-M-A afterwards, this clears up that information.

Sure, replacing the assets may work, but seriously. This is all unnecessary work and does not only affect me. Lots of route creators have those assets and N3V adds assets to DLCs without noticing the authors so its a permanent issue.

You must have the DLS asset installed first. Check for versions and download the highest DLS one. Assets will only vanish if you don't have a DLS one installed. I do the same with an updated asset that I later find doesn't work and need to go back to an earlier version. It has worked in the past and earlier this year when I needed to revert some assets.
I just tried it with a catenary pole that has been added to Niddertalbahn-DLC with a higher kuid version. older DLS-asset was installed. Removed DLC, went to surveyor and deleted missing items. Catenary poles are gone and are also not referenced in the DLS-kuid - version.

Honestly - even if there are workarounds, it is not a solution. N3V creates a whole new editor, mps and stuff but lets route creatos struggle on the other hand with such problems.

The way DLC-contents from DLS are currently handled - sorry - sucks.

People make assets available via DLS for others to use them and grant a license to use them also in DLCs - and N3V on the other hand makes them cause problems when added to DLCs without a need.
 
Last edited:
Back
Top