After moving from 2017 LTS to 2018.3 my project become totally unusable for 2/3 of players. Nevertheless I could not reproduce any of the errors on my laptop, everything was perfect. I made a research and find the problem:
in .NET 4 / 4.6 Unity editor use OS locale settings (i.e. commas instead of dots). It could brings errors when you use ArrayMaker
(and other PM solutions that utilize proxy objects) or convert float/string/int. In
this topic you can find an example of weird stuff you can get.
Here is the
issue tracker and
forum discussion around.
Bug was found in 2017, fixed in 2019.1... great job, unity team.
For those who can't just switch to 2019.1 the solution is roll back to .NET 2