Es ist ein paar Jahre zu spät, doch womöglich schaut hier ja noch jemand rein der etwas dazu sagen kann.
Mich hat immer etwas gewurmt dass die Verluste beim crunchen von Minen größer waren als ein 1er Fabrikmodul. Bei der Suche woher das rührt stieß ich auf die 'Stationsgrößenfindung' für Minen und wie es scheint stimmen einfach die Faktoren dort nicht ganz. Händisch angenähert, oder haben sich die Werte von Reunion über TC bis AP geändert?
Tests und bearbeitung unter X3:AP
Die alte Formel für Silizium in plugin.gz.CmpClean.crunch.xml sieht so aus:
Code: Select all
385 if $Station -> uses ware Silicon Wafers as product
386 |$Factory.size = ( $Dummy1 * 10000 ) / $Dummy2 + $Mine.Fraction.Silicon
387 |$Dummy1 = ( $Factory.size / 173 ) * 173
388 |$Mine.Fraction.Silicon = $Factory.size - $Dummy1
389 |$Factory.size = $Factory.size / 173
Der Multiplikator von 10000 ist vermutlich der Notwendigkeit geschuldet da keine Fließkommazahlen verfügbar sind und der Einfachheit halber gewählt. Woher die 173 kommt ist mir nicht klar, ich tippe mal auf experimentell ermittelt.
Für Erz/Eis ist der Multiplikator gleich, aber der Divisor ist 694.
Damit ergeben sich allerdings auch schon deutliche Verluste wenn man die Produktionswerte eines 1er Fabrikmoduls einträgt. Dabei ergeben sich dort ganzzahlige Faktoren. Ein Fabrikmodul S produziert alle 59 Sekunden eine Siliziumscheibe, für Erz sind es 15 Sekunden für eine Einheit Erz. Will man einen Multiplikator für beides muss dieser entsprechend ein Vielfaches von 885 sein. Um neue Rundungsfehler zu vermeiden und glatte Zahlen zu bekommen habe ich einfach Faktor 20 draufgerechnet.
Damit ergibt sich 17700 als Multiplikator und 300 als Divisor für Silizium, sowie 1180 als Divisor für Erz.
Code: Select all
385 if $Station -> uses ware Siliziumscheiben as product
386 |$Factory.size = ( $Dummy1 * 17700 ) / $Dummy2 + $Mine.Fraction.Silicon
387 |$Dummy1 = ( $Factory.size / 300 ) * 300
388 |$Mine.Fraction.Silicon = $Factory.size - $Dummy1
389 |$Factory.size = $Factory.size / 300
390 |
391 * Ore and Ice use the same formula
392 else if $Station -> uses ware Erz as product
393 |$Factory.size = ( $Dummy1 * 17700 ) / $Dummy2 + $Mine.Fraction.Ore
394 |$Dummy1 = ( $Factory.size / 1180 ) * 1180
395 |$Mine.Fraction.Ore = $Factory.size - $Dummy1
396 |$Factory.size = $Factory.size / 1180
Beispielhaft habe ich einen crunch mit der alten und der neuen Formel für alle Asteroiden in Profitminen gemacht und mittels des HVT die Sektorproduktion verglichen.
Code: Select all
Mineral Einzeln Alt Neu
Erz 547,106 524 544
Silizium 80,457 78,302 80,335
Wenn ich da nicht etwas übersehe könnte man das glatt updaten, oder?