EDCD / coriolis

Coriolis Shipyard for Elite Dangerous
https://coriolis.io
Other
262 stars 83 forks source link

Issue 703 edomh integration #767

Closed alex-williams closed 5 months ago

alex-williams commented 5 months ago

This fixes the broken implementation of integration with EDOMH. Previously, Coriolis would send over bogus json data if Armour was modified, it would send multiple blueprints if the module was engineered more than G1 and less than G5 (If you engineered a module to G3, it would send the blueprint 3 times), it would over count Materials required, as it was counting 'experimental' mats for each 'G' that you engineered (if you engineered to G3 and the experimental needed 5 'iron' it would instead report that you needed 15 'iron') and it also now sends over both the BuildName from Coriolis and the Ship Name (Anaconda, Python Mk II, etc.) This makes Coriolis compatible with EDOMH. The one outstanding issue, is sending accurate blueprint engineered % on its final grade, but that would appear to need a much larger rewrite and is currently hard coded to 1.0 for 100%. This isn't thought to be a particularly big issue, as it is rare that someone would engineer to less than 100% when building their ship in Coriolis. Imported ships will not be accurate when exported to EDOMH, however the point of exporting the ship to EDOMH is to find the materials and engineers you need to achieve the build. There are other methods available to export an actual ship into EDOMH, including Inara. This change also enables the EDOMH button, regardless of whether ED Engineer is running or not, as the two are not related, one is not dependent on the other and in fact, are likely to be mutually exclusive in most cases... if you're running ED Engineer, you're not likely to be running EDOMH and visa versa. I have tested this with Jixxed in my Alpha build, however further testing can only occur in beta with users.

jixxed commented 5 months ago

@felixlinker LGTM! 🚀