Howdy folks
My intention is to address only one of the many new features in 2.1: the RNG (random number generator, for non-programmers) behind engineer-driven module upgrades. So here I go...
Firstly it feels very lazy (to me) that exceptionally specialized engineers in the game cannot define, with any modicum of precision, what the effects of a module upgrade will be. If the goal was to aim for realism, I dare say this is a miserable failure. These are supposed to be 30 ultra-specialized engineers in a galaxy with trillions of people, and quite possible billions of them engineers themselves. The exceptionally high quality of the work of these 30 masters of their craft should put them on-par with the likes the people at NASA or CERN here on 2016 Earth, but in this game they seem more like the kind of mechanics you'd find in a run-of-the-mill-backwater-planet's bicycle repair shop.
In the real world when you find yourself in need of a specialized engineer, and said professional asks that you provide the materials to complete the job, he/she will usually mention characteristics like the purity needed, clarity, strength, flexibility, tension, and so on. And if for some reason they're not easy to find, said engineer (the good ones anyway) will either ask you for more resources so he/she can get the source materials up to spec or will point you in the direction of someone who can. Regardless of how it's done, the finished job will rarely have such wildly varying results as the ones produced by the so-called "engineers" in this game. Do you think the Space Shuttle would fly straight if one of its rocket engines produced 10% less thrust than the other?
In the virtual world mechanics like RNG crafting are usually a source of much grief, particularly for those of us with real world lives (families, friends, jobs and careers), since the system can only be defeated by spending spectacularly long amounts of time grinding away in search of good rolls and supplies (the last roll was awful? well too bad, your materials are gone, off to the grind again). What makes the case of Elite Dangerous 2.1 worse, is the amount of upgrades available for such a large amount of modules and ships.
Image, for the sake of argument, that the RNG takes 1 of a maximum of 5 possible numbers every time the dice roll, and that the RNG cannot roll any of the previously selected numbers. This means it would take at most 5! (or 120) rolls of the dice to get the top score. For the sake of simplicity, I'll refer only to the average amount of rolls/materials needed, which is half that: 60.
If faster thrusters were the goal, you're in luck: farm ~60X times the materials needed and you will, after ~60 rolls, get what you want. If you're after two module upgrades... well, your job just became twice the hassle: you'll need ~120X as many materials and just as many rolls to get both modules with top or close to top-notch stats. There are a total of 8 Core Modules of which, I think, only 4 are worth the trouble of upgrading: FSD, Thrusters, Power Plant and Power Distributor (if any of you dear readers has a soft spot for Sensors, Life Support, or Fuel Tanks, please forgive me I meant no offense - and yes, I'm completely ignoring bulk heads, again, sorry).
Speaking of time... after grinding away what little free time you have looking for materials (granted, not all are hard to find), you have to factor in the seconds it takes for the engineer to roll the dice. It's an animation that takes about 3-5 seconds per roll. So for the simple example above, just rolling the dice 60 times would take 3-to-5 minutes of clicking and lightning fast reflexes to not pass up a good roll. There are also upgrades for non-core modules like Shield Generators, Shield Cells, FSD Interdictors and so on, so you can see how this whole process can get very tedious extremely fast.
Now the reality is that the RNG doesn't have a pool of only 5 numbers to pick from, it has a lot more: if you're in luck it's a 1-byte data type (C++ unsigned char) with 255 values in the pool. If FDev was particularly mischievous (which I can't confirm or deny, I haven't seen the code) they could be using a 2-byte data type (C++ short int) with 65,535 possible values in the pool, or worse, a regular sized 4-byte data type (C++ int) which would have 4,294,967,295 values in the pool. As if that wasn't bad enough, and if this works like any other RNG algorithm out there, it can and will roll any of the previously selected numbers. Which means we're talking to N-to-the-power-of-N combinations... now you get to multiply that for number of positive and negative effects listed in the recipe and out to farm we go! Yay! Fun! Not...
In conclusion, this is a horrible system, and while I do not wish to offend anyone at Frontier Developments, I would like to point out that whoever thought this would be a good gameplay mechanic deserves the equivalent of a Razzie award for Game Design.
PS: I do sincerely apologize if anything I wrote here offends you, dear reader. If you would like me to rephrase some of it (hopefully not all of it), please don't hesitate to ask me via private message or through a public reply. I will get to it as soon as I possibly can.