An open letter to N3V engineers

samplaire

Member
I've been waiting over a month. After releasing the new beta which doesn't repair the problem of 'Polish locos stutter' which I reported to you, you closed the Trainz doors for Polish users. The last version which works ok with Polish locos is 105100. You say this is the Polish not efficient script that should be blamed. But it's impossible to repair thousands of Polish locos!!

My statement is - DELETE all my assets from DLS, I don't want to participate in this unfriendly environment anymore, I quit.
 
You leaving and the removal of all your assets will literally break too many of the routes and sessions, whether freeware or payware. This literally can not happen.
 
I understand your anger and frustration. I hope that you might reconsider your request for removal.

I just wanted to thank you for all your content creations. They are wonderful.
 
Hello Samplaire...
I'm sorry to hear of those issues. I personally haven't tried polish rolling stock in the newest build yet with that script so I haven't seen any of those issues directly, but I've heard from some others that many scripted wagons were slready causing performance issues for some all the way back in T:ANE. I'd volunteer to take a look at the script and see if I can do something about it. I'm already taking care of CJ187s content and his scripted things, I believe its all but impossible to update all affected rolling stock. Especially if they all use the same script, its a matter of writing a better version once and only copy and paste beyond that.
You've made a lot of great content which I'm happy to use daily.

Best greetings,
Mika aka Laurinlaki
 
Your content, the way it is, has caused so much happiness in the hearts of so many users.
I implore you, do not remove them. If you decide to drop support for them, then do just that.
Leave them in a corner of the DLS untouched and gathering dust.
Just please let those who can find, and already have found joy from these assets continue to have the pleasure.
I understand your position. I get that you are done with this.
Others aren't.

Best regards,
- Sharadise
 
I hope you reconsider your decision (especially given the strong support shown for your content here).

When you reported the bug our team investigated. This included several hours of QA time and then dev time. The issue with the rolling stock was identified as caused by a script that goes into a total meltdown when attempting to turn the headlights on. I believe you were advised of this problem at the time (if not, then that part of the process has failed).

Given that we didn't write the script and that the only content affected are items that use the script, the obvious solution is to fix the script. While earlier versions did not bring the system to its knees, it is likely that it did harm performance.

Just as we continually optimise systems, 3rd party content creators need to also optimise their systems (such as adding LODs to content, or in this case, updating the script).

I am sure that someone in the community can assist in identifying the problem and fixing it, and the same with repairing assets that are affected.
 
Hi Samplaire, I sympathise with your position greatly. I like others get horribly frustrated at times and let fly, which may or may not be a good thing, but it's better than holding it in. It's rather a common story that as the game develops and new versions come out, there are consequences that are not so good, some times. At least you have an offer to look into it which I hope you accept. Too many people would miss out if you 'pull the plug', and the game would suffer. My suggestion is take a break, accept the help offered and see if something can be done to sort out the problem. Although I don't have your rolling stock as I'm knee deep in many regions but not Europe, let alone Poland, I have sen the quality of your work, which this game sorely needs. Hang in there mate.
 
Like many others in this thread I understand your frustration. But, as Tony pointed out in his post, the problem is with a 3rd party script, not an N3V script.

Your first statement about waiting "over a month" for the problem to be fixed assumes that N3V have plenty of analysts, programmers and developers to throw at every problem that is reported. Some of the issues that I have reported (and were acknowledged as N3V "bugs") have taken a year or more to be fixed and a few I am still waiting on. Frustrating, yes, but I fully understand and accept the reasons why it can take so long.

Patience is the key.
 
N3V are underestimating the problem, it's east to say it's a 3rd party script problem and then dismiss it.
What N3V should be doing is helping these creators of FREE assets which end up in PAYWARE routes to solve the problem.
What help are N3V giving them?
Just imagine the grief that would be caused if Samplaire and Kilanziom, plus the EET team pulled there assets off the system!

For the sake of the members N3V, please help these people out.
 
samplaire, Dear developer, I understand your disappointment, but I still ask you not to make hasty sudden movements. In turn, I am ready to help you with correcting your content, write to me in a private message, list the kuid of objects and I will gladly help you for free.
Sorry google translation
 
Alright, I've taken the look at several polish locos for the issue and was able to find out the problem and successfully fix locos affected by it.

First of all, this only seems to affect locomotive and not wagons, and even with locomotives only newer ones using a new(?) script and usually having build 3.5 or 3.7 as far as I can tell, so this is far from affecting all polish content.

Secondly, the issue is caused by a logic error in the script. Basically the script will handle a bunch of features when ever the state of the lights changes to display appropriate coronas. In the process of doing that, the script will flash the headlights for some unknown reason. By doing that, it modifies the state of the lights twice and it will spawn two more processes to check for the lights and also flash the headlights and so on and so forth. The result of that is an exponential growth in script processes that causes the game to freeze within miliseconds.

Now when it comes to fixing the issue, all I had to do was remove 3 problematic lines in the script that cause the flashing of the lights when setting up coronas. Now the function runs again as it should and everything also works correctly, no more stuttering or lags.

I would in no way blame the game for this issue. Its a basic logic error that the author probably made accidentally when writing the script a few years back. It mostly surprises me that it hasn't already crashed earlier versions of the game with how fundamental this issue is, maybe they were smarter in terms of killing scripts that tried to spawn an extreme amount of processes?

Either way, this problem is easily fixed. It takes 30 seconds to one minute per locomotive and the good news are that only a subset of polish locomotives is even affected by this in the first place. None of your content seems to be affected Samplaire.
The biggest problem will be finding all locomotives with the issue, not fixing them. Once a locomotive is identified to have the problem, it can immediately be fixed. If I can in any way help with this, please tell me. This shouldn't be an issue to quit the game over, especially since its neither yours nor N3Vs fault that this is occuring, but merely an oversight of one of the authors of the script.


Greets, Mika
 
Alright, I've taken the look at several polish locos for the issue and was able to find out the problem and successfully fix locos affected by it.

First of all, this only seems to affect locomotive and not wagons, and even with locomotives only newer ones using a new(?) script and usually having build 3.5 or 3.7 as far as I can tell, so this is far from affecting all polish content.

Secondly, the issue is caused by a logic error in the script. Basically the script will handle a bunch of features when ever the state of the lights changes to display appropriate coronas. In the process of doing that, the script will flash the headlights for some unknown reason. By doing that, it modifies the state of the lights twice and it will spawn two more processes to check for the lights and also flash the headlights and so on and so forth. The result of that is an exponential growth in script processes that causes the game to freeze within miliseconds.

Now when it comes to fixing the issue, all I had to do was remove 3 problematic lines in the script that cause the flashing of the lights when setting up coronas. Now the function runs again as it should and everything also works correctly, no more stuttering or lags.

I would in no way blame the game for this issue. Its a basic logic error that the author probably made accidentally when writing the script a few years back. It mostly surprises me that it hasn't already crashed earlier versions of the game with how fundamental this issue is, maybe they were smarter in terms of killing scripts that tried to spawn an extreme amount of processes?

Either way, this problem is easily fixed. It takes 30 seconds to one minute per locomotive and the good news are that only a subset of polish locomotives is even affected by this in the first place. None of your content seems to be affected Samplaire.
The biggest problem will be finding all locomotives with the issue, not fixing them. Once a locomotive is identified to have the problem, it can immediately be fixed. If I can in any way help with this, please tell me. This shouldn't be an issue to quit the game over, especially since its neither yours nor N3Vs fault that this is occuring, but merely an oversight of one of the authors of the script.


Greets, Mika

It is mighty nice of you to find and fix the issue so quick, however it's hard to agree with the "wrong script" explanation though. Why? Because for several years this issue did not exist at all - in all previous versions. Of course theoretically there may have been a mistake within the script but for a regular user there were no consequences. And suddenly in the newest version it raises a bug that brings some heavy issues in terms of logistics. Now I don't know if you ever created any assets and had the chance to bump into problems like "a different person makes the script, a different one makes the models" or "some authors are long inactive and are not willing to fix anything". It also seems to me, you're not exactly familiar with the number of these models. This is not just "some polish locomotives" like Samplaire called it my friend, it's a huge number of Central European models from many countries - used on hundreds of maps. It's a very big issue in terms of logistics -> locate all of them, find several different versions of the script -> fix them all -> open all of these models -> attach the script -> re-publish them. Many of them are reskins made under the kuid number of long-inactive authors. Others are published both on the DLS and on third party pages... I think you completly missed that "little" issue - the logistics of repairing this problem. Who is going to fix that and re-publish them? I do that all the time - I update my models for standards of the new versions... it's a full time job. How do you imagine doing the process I just wrote about for 150-200 locomotives? It's impossible... and there was no issue one version of the game before - at all (practically - not theoretically).

My friend, this game was supposed to be about pleasure and fun for everyone - that's what our work is all about. But when "suddenly out of knowhere" something brakes and kills 200 of your models... giving you a beautifull opportunity to spend all of your free time in the next half year finding/fixing/republishing them (again and again)... this is no longer any fun. And I perfectly understand Samplaire's point of view in this case.
 
Last edited:
It is mighty nice of you to find and fix the issue so quick, however it's hard to agree with the "wrong script" explanation though. Why? Because for several years this issue did not exist at all - in all previous versions. Of course theoretically there may have been a mistake within the script but for a regular user there were no consequences. And suddenly in the newest version it raises a bug that brings some heavy issues in terms of logistics. Now I don't know if you ever created any assets and had the chance to bump into problems like "a different person makes the script, a different one makes the models" or "some authors are long inactive and are not willing to fix anything". It also seems to me, you're not exactly familiar with the number of these models. This is not just "some polish locomotives" like Samplaire called it my friend, it's a huge number of Central European models from many countries - used on hundreds of maps. It's a very big issue in terms of logistics -> locate all of them, find several different versions of the script -> fix them all -> open all of these models -> attach the script -> re-publish them. Many of them are reskins made under the kuid number of long-inactive authors. Others are published both on the DLS and on third party pages... I think you completly missed that "little" issue - the logistics of repairing this problem. Who is going to fix that and re-publish them? I do that all the time - I update my models for standards of the new versions... it's a full time job. How do you imagine doing the process I just wrote about for 150-200 locomotives? It's impossible... and there was no issue one version of the game before - at all (practically - not theoretically).

My friend, this game was supposed to be about pleasure and fun for everyone - that's what our work is all about. But when "suddenly out of knowhere" something brakes and kills 200 of your models... giving you a beautifull opportunity to spend all of your free time in the next half year finding/fixing/republishing them (again and again)... this is no longer any fun. And I perfectly understand Samplaire's point of view in this case.

I fully understand your frustration and point of view here.
I do have a good bit of experience when it comes to developing content together with others. I've spent a lot of time maintaining and updating content for others and I know about the trouble of authors who left without clearly naming someone to take care of keeping their content updated. I know what I'm talking about here.

Excuse my wording, you are right, it doesn't only affect polish locomotives. What I meant to stress its far from affecting all. I checked some of your locomotives as well, none of which I tested had this issue. Its hard for me to really estimate the actual number of rolling stock affected by it, I assume it to be no more than 400 locomotives though, and thats with giving it a lot of room. It is only a percentage of content that seems to have the problem.
I know about the logistical troubles of updating such a large number of assets and as I already said, the actual updating process is really quick. Biggest issue will be finding everything affected by it, but using certain identifiers (for example, everything below build 3.5 looks like it can immediately be excluded as it doesn't have this script from my tests). You can also exclude every locomotive that has the lights on in the asset preview window, it uses a different script that doesn't have this problem.

The most popular locomotives with those issues will be identified quickly and fixed quickly. Those that are rarely used... well aren't really a problem, are they? Until they get found, at which point fixing takes around 30 seconds. I'd say the most popular locomotives, in other words all we can immediately find can be fixed even before SP2 fully releases. The rest will see a rolling update process as it comes up to have issues. Thats how I would handle this situation if I was in charge of updating the content.

Things that are on the DLS could theoretically be updated by the Content Repair Group as well.

I totally understand that its weird that it worked without issues before. I have absolutely no idea how it could work, from an objective standpoint as a programmer I can only say, the script has a fundamental error in it that should've always caused a freeze of the game. Why it didn't do this on older versions, I don't know. Theoretically it should have never worked like this. Let me put it like this: You can stick a fork into an electric outlet and nothing might happen for years until some day it causes a massive spark and your electricity goes off. Should the fork have caused a spark the moment you stuck it in there? Absolutely yes, theoretically it should have. For some reason it didn't but only did it later. Now you must remove the fork if you want your electricity back.


And please tell me though, whats worse?
Content from authors who left the community or are unwilling to fix the script issue that takes under a minute to fix yourself if you want to use it or missing content that worked flawlessly but can't be used anymore because the author decided to make it unavailable?
 
Don't get me wrong - of course it's hard to disagree. No need for further explanations of the theory of this issue... it's just heartbraking for content creators like myself... I created over 1200 rolling stock models including reskins by other authors... now recently I spent about 2 years just updating them for the sake of a better look and reliability after the lighting/shadow revolution that T:ANE brought.... and I'm still stuck in between that process with maybe 60% done and about 40% remaining... - and suddenly another huge issue flies in - it really makes me feel bad. I fell like an american 10000 t. coal train just crashed and landed on my had. Logistically it's impossible to fix it single-handed...

I believe the problem touches many of my models, since some users reported this particular issue with some new releases from my stable. By "my models" I do not only mean the ones released under my own kuid:173943, but also several other cooperating authors, e.g. kuid:405057; kuid:449411; kuid:534300; kuid:493736; kuid:547200; kuid:348858; kuid:741143; kuid:553676. The problem was recognized in the SU46-041 diesel locomotive, this one in particular:

kuid2_173943_100087_5.jpg

PKPC SU46-041 ZT.Gdynia [Detailed]
TS12
Created by: kilanziom
File Size: 2.18 MB
KUID2: <KUID2:173943:100087:5>
Date: 25th Oct 2020
Downloaded: 179

The same script was used in all SU46, SP45, SU45, 750, 753, 754, 751, 749, 232, 233, 234, 231, M62, ST44 models and many many more. I am affraid that it's a really big group of models.

I hope that there is a possibility of working together against this issue. It would be most helpfull if the Content Repair Group could help at least with that part of the models that are on the DLS. The only thing I can help with though (at least for now) is trying to locate all the locomotives that I made using that script and sharing their list here... this is a piece of work though, and nees a piece of time.

Anyway, thank you for finding the problem and the solution - at least in it's basis.
 
Last edited:
Ist seems that in earlier versions of Trainz the faulty script was by accident blocked by the game. Would it be possible, that N3V may actively block this script?
That would be a good instrument against the frustration of the content-creators using this script - and a marvellous present for Christmas by N3V 🙂

Regards
Swordfish
 
Hello Samplaire,

After venting and lifting the safety valves I hope that you can bring yourself to reconsider your decision, particularly with OlegKhim offering to help you out with the script.
Mortality is taking enough asset creators from us as it is and your "quitting the field" would be regrettable, leaving quite a breach in the ranks.

Regards
 
Back
Top