Foreman 0.1.9 - A factory optimisation tool.

Calculate optimal ratios for feeding recipes, search through the research-tree, specialized tools to view game-information.
cholland89
Manual Inserter
Manual Inserter
Posts: 3
Joined: Thu Mar 24, 2016 2:34 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by cholland89 »

Joostswg wrote:Does forman work with the newest version of the game?
Because I cant get it to work.
Mayby it's because I dont know what to chose in the 'factorio directory'
Yes, initially Foreman was loading my Factorio demo folder and not the Steam folder. If you're using Steam, set the directory to...

C:\Program Files (x86)\Steam\steamapps\common\Factorio

Obviously you'll need to account for any differences in your OS or drive letter.
triggerman602
Inserter
Inserter
Posts: 22
Joined: Sat Nov 07, 2015 9:18 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by triggerman602 »

When trying to load up Foreman with the Satallite Uplink terminal viewtopic.php?f=97&t=19883 mod installed, I get an exception stating "Version string portion was too short or long." Shortening the dependencies of the mod to just the base game solved the issue but I don't know how that affects the related dependencies. I've posted the issue in the other thread too. I don't know whose problem it is but I hope it gets sorted.
Scaven666
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sun Apr 17, 2016 2:22 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by Scaven666 »

Been trying out this awesome mod but now it sometimes comes up with the "blueprint failed to load __Foreman__/control.lua:656: bad argument #1 to 'pairs' (table expected, got nil)
crazysob83
Manual Inserter
Manual Inserter
Posts: 3
Joined: Sun Apr 17, 2016 8:36 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by crazysob83 »

This is a really nice tool that has helped me massively, thank you
BoomerBoxer
Burner Inserter
Burner Inserter
Posts: 13
Joined: Thu Apr 21, 2016 2:05 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by BoomerBoxer »

Sorry if this is a stupid question or I just don't know how to use your software but how do you set infinite supplys to be mined by a specific drill? Because I don't want to go look up and find the exact rate an electric drill mines an iron ore per minute
Factorio FOR LIFE
Koub
Global Moderator
Global Moderator
Posts: 7784
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by Koub »

infinite supply is basically what it says : an infinite supply, with infinite throughput. There is no such concept as mining speed when you add an infinite supply.
If you want to know how many drills you need, let Foreman calculate the input needed, and how many mining drills you need to achieve it.
You can check what type of mining drill the tool uses with enable/disable objects.
Koub - Please consider English is not my native language.
BoomerBoxer
Burner Inserter
Burner Inserter
Posts: 13
Joined: Thu Apr 21, 2016 2:05 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by BoomerBoxer »

Koub wrote:infinite supply is basically what it says : an infinite supply, with infinite throughput. There is no such concept as mining speed when you add an infinite supply.
If you want to know how many drills you need, let Foreman calculate the input needed, and how many mining drills you need to achieve it.
You can check what type of mining drill the tool uses with enable/disable objects.
actually I have noticed the calculation is a bit off (no offense but a bit off is very off)
I looked up how much iron ore a normal electric mining drill produces every second. When I input the number in it instead says I need 2 electric mining drill with 2x tier one speed modules and 1x tier 3 for each. Which is really correct? Foreman or 0.525/s? And on my previous post what I really meant is if you can input a number of mining drill, it would calculate how much, lets say, iron it produces every minute or every second
Example: I want to find out how much iron 3 burner drills produce every minute? You input 3 burner drills and it will automatically say how much iron it would produce every minute
Factorio FOR LIFE
BoomerBoxer
Burner Inserter
Burner Inserter
Posts: 13
Joined: Thu Apr 21, 2016 2:05 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by BoomerBoxer »

Nevermind. I found out you can use the output as the beginning of the flowchart
Very useful :D
Factorio FOR LIFE
User avatar
oLaudix
Filter Inserter
Filter Inserter
Posts: 285
Joined: Sun Jun 14, 2015 3:24 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by oLaudix »

BoomerBoxer wrote:
Koub wrote:infinite supply is basically what it says : an infinite supply, with infinite throughput. There is no such concept as mining speed when you add an infinite supply.
If you want to know how many drills you need, let Foreman calculate the input needed, and how many mining drills you need to achieve it.
You can check what type of mining drill the tool uses with enable/disable objects.
actually I have noticed the calculation is a bit off (no offense but a bit off is very off)
I looked up how much iron ore a normal electric mining drill produces every second. When I input the number in it instead says I need 2 electric mining drill with 2x tier one speed modules and 1x tier 3 for each. Which is really correct? Foreman or 0.525/s? And on my previous post what I really meant is if you can input a number of mining drill, it would calculate how much, lets say, iron it produces every minute or every second
Example: I want to find out how much iron 3 burner drills produce every minute? You input 3 burner drills and it will automatically say how much iron it would produce every minute
How factorio works is there are 60 ticks each second. In each tick part of the production process happens. Even if production finishes in the middle of the tick it still needs to wait for another tick to start producing next item. In this case even though the mining drill should deliver 1 ore each 0.525 seconds it is in the middle of 32nd tick (0.525s is 31.49 ticks) and it waits for 33rd tick to start mining new piece. That means in reality you get 1 ore each 5.(3) seconds. Doesnt look like much but you get 112,5 ores per minute instead of technical 114,28 The faster the production speed is the bigger the differences are.
Image
JasonC
Filter Inserter
Filter Inserter
Posts: 449
Joined: Tue Mar 22, 2016 3:05 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by JasonC »

I just nabbed this. Hot damn.

I have a question about "auto" rate on nodes. This is the first time I've used the software. I am trying to figure out how many batteries I can get from a given petrol gas rate, assuming infinite water, iron plates, and copper plates. In this case I'm checking 3.2/s petrol gas. So I set up the following:

Image

Every connection in this graph is set to auto, except petrol gas infinite supply, which is fixed at 3.2/s. But I'm a little confused about the usage of "auto" here. What I had expected to happen was that all the rates would propagate through, with the water and plate node rates being automatically set based on the demand of the nodes they were attached to, but what I actually seem to have to do is fool around entering manual rates and propagating them through until I ultimately get a battery output rate (I'll spare all the details):
  1. Set all infinite supply nodes manually to really high values, and
  2. Propagate the remaining unset rates through the graph manually, the above will take care of many but not all.
So my confusion about "auto" is, what does it do, and how do I use it correctly? I would have expected it to automatically set infinite supply node rates. I also would have expected it to automatically set recipe input rates to the output rate of the node they're connected to, but most are stuck at 0. I'm almost positive this is user error but I'm not sure what I'm missing.

How can I use it most effectively? What's the simplest strategy for figuring out "how much of an output can I produce for a given input"?
Took a break from 0.12.29 to 0.17.79, and then to ... oh god now it's 1.something. I never know what's happening.
User avatar
oLaudix
Filter Inserter
Filter Inserter
Posts: 285
Joined: Sun Jun 14, 2015 3:24 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by oLaudix »

Infinite supply node only means that program wont try to calculate the production and ingredients for this note (ie. node with petrol gas). You still need to manually set how much of that infinite ingredient you produce. In your example you have 3.2 petrol / s but still 0 water / s which gives 0 sulfur / s. For auto to work you have to set all ingredients or final product manually. In your example those are water, petrol, iron and copper.
Image
JasonC
Filter Inserter
Filter Inserter
Posts: 449
Joined: Tue Mar 22, 2016 3:05 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by JasonC »

oLaudix wrote:Infinite supply node only means that program wont try to calculate the production and ingredients for this note (ie. node with petrol gas). You still need to manually set how much of that infinite ingredient you produce. In your example you have 3.2 petrol / s but still 0 water / s which gives 0 sulfur / s. For auto to work you have to set all ingredients or final product manually. In your example those are water, petrol, iron and copper.
Thanks. I figured it out just now too, I was missing the final product like you say.

All I needed was to create a battery output node and hook it up to the output of the battery recipe, then set its rate to some really high number (like 1000/s). Then the actual battery output rate was displayed in parentheses on the output node. I didn't set any intermediate rates manually, only the petrol gas infinite output node rate and the arbitrarily high battery production rate, the rest were auto calculated no problem once I made the output node:
flowchart.png
flowchart.png (71.32 KiB) Viewed 8621 times
There, everything is auto except the petrol gas infinite supply rate and 1000/s battery rate, and from this it shows that I can produce 1.07 batteries/s from 3.2 petrol/s.

Only problem is it doesn't show the water/plate production rates needed to produce 1.07/s batteries, for some reason it shows those for the 1000/s battery values (I daresay it may be a bug? e.g. the final battery recipe does not need 4000 plants in this case, and it's not taking in 1000 iron plates per second, but I dunno). The only way to get that is to first set the battery rate high to figure out how many you can actually produce, then set the battery rate to the calculated value (1.07 in this case) to get the rest of the values right.
Last edited by JasonC on Thu Apr 28, 2016 10:30 pm, edited 3 times in total.
Took a break from 0.12.29 to 0.17.79, and then to ... oh god now it's 1.something. I never know what's happening.
JasonC
Filter Inserter
Filter Inserter
Posts: 449
Joined: Tue Mar 22, 2016 3:05 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by JasonC »

Feature request: Export image to clipboard. This would allow for a more seamless workflow when e.g. uploading images to imgur (you can paste images there), annotating things in image editors, etc.
Took a break from 0.12.29 to 0.17.79, and then to ... oh god now it's 1.something. I never know what's happening.
IhanaMies
Inserter
Inserter
Posts: 36
Joined: Thu Mar 17, 2016 10:01 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by IhanaMies »

Another feature request: Disable certain recipes and set fixed amount of buildings on a recipe
JasonC
Filter Inserter
Filter Inserter
Posts: 449
Joined: Tue Mar 22, 2016 3:05 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by JasonC »

Bug: The tool can't really deal with combining multiple recipe outputs. For example, here is a reasonable refinery setup with cracking and a goal of 120 petrol gas/s:
Foreman Production Flowchart.png
Foreman Production Flowchart.png (67.02 KiB) Viewed 8586 times
It set the light oil cracking output to 120, then solved backwards for that, ignoring the advanced oil processing output, and yielding incorrect numbers all around.

Or another example, attempting to produce 40 solid fuel/s using all three recipes that produce it:
Foreman Production Flowchart2.png
Foreman Production Flowchart2.png (53.4 KiB) Viewed 8586 times
Here it set every attached recipe output to 40/s, leading to numbers that were too high.
Took a break from 0.12.29 to 0.17.79, and then to ... oh god now it's 1.something. I never know what's happening.
JasonC
Filter Inserter
Filter Inserter
Posts: 449
Joined: Tue Mar 22, 2016 3:05 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by JasonC »

Another issue: If recipe B takes input from recipe A and an infinite supply node, and the recipe A rate is manually set, recipe B doesn't propagate the value to its infinite supply input, and it stays locked at 0. Example:
Foreman Production Flowchart3.png
Foreman Production Flowchart3.png (43.9 KiB) Viewed 8584 times
Here, everything is set to auto except the copper plate -> copper cable recipe was manually set to output 40/s cable. The expected result of this is an update to the advanced circuit recipe's iron plate infinite input to match. The actual result is nothing happens.

As a workaround, if the iron plate infinite supply rate is set to some arbitrarily high value (arbitrary because you don't know what it is, or you wouldn't need to use Foreman), then you can at least see the calculated values:
Foreman Production Flowchart4.png
Foreman Production Flowchart4.png (50.19 KiB) Viewed 8584 times
As a simpler case, this happens with any inputs, not just outputs from recipes. Here, everything is set to auto, including iron plates, but copper plate supply node output is set. Even though it is set to auto, the iron plate supply node does not update automatically. Same workaround as above is needed:
Foreman Production Flowchart5.png
Foreman Production Flowchart5.png (22.21 KiB) Viewed 8584 times
The workaround is only partial, it still isn't possible to calculate e.g. how many iron plates you'd need for a given copper plate input rate without just entering manual guesses on iron plates until the icon turns red.
Took a break from 0.12.29 to 0.17.79, and then to ... oh god now it's 1.something. I never know what's happening.
xBlizzDevious
Fast Inserter
Fast Inserter
Posts: 108
Joined: Mon Feb 02, 2015 10:15 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by xBlizzDevious »

Hello!

I'm wondering if a feature would able to be added?
- Power calculations.

Ie. Would you be able to implement a function that would look at power draw of all of the selected items and total it up, giving a total required power input. Obviously including any changes from modules and so on.

More importantly (in my eyes), would you be able to then calculate EXACTLY how many steam engines and steam boilers are required to create that much power?
The reason I ask is that I'm trying to calculate the exact ratios for 5dim's modded boilers and steam engines but it's not very clear in the game. As far as I can tell, you would need the same number of Mk3 boilers as you would of the base game boilers to produce the same amount of power, the modded Mk3 ones are just more efficient. Is that true?

Either way, it would be an awesome feature.
AutoMcD
Fast Inserter
Fast Inserter
Posts: 214
Joined: Wed Apr 27, 2016 5:53 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by AutoMcD »

JasonC wrote:Bug: The tool can't really deal with combining multiple recipe outputs. For example, here is a reasonable refinery setup with cracking and a goal of 120 petrol gas/s:
Foreman Production Flowchart.png
It set the light oil cracking output to 120, then solved backwards for that, ignoring the advanced oil processing output, and yielding incorrect numbers all around.

Or another example, attempting to produce 40 solid fuel/s using all three recipes that produce it:
Foreman Production Flowchart2.png
Here it set every attached recipe output to 40/s, leading to numbers that were too high.

Was about to post the same thing.. wonderful program but the oil usage is off the charts! Also concluded there is an error in how cracking is factored in.

edit: found that if i delete the heavy->light oil cracking, things look alright.
OvermindDL1
Fast Inserter
Fast Inserter
Posts: 194
Joined: Sun Oct 05, 2014 6:12 am
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by OvermindDL1 »

Error on run:

Code: Select all

System.ArgumentNullException: Value cannot be null.
Parameter name: path1
  at System.IO.Path.Combine (System.String path1, System.String path2) <0x7f49f1562610 + 0x00231> in <filename unknown>:0 
  at Foreman.MainForm.Form1_Load (System.Object sender, System.EventArgs e) <0x403c9000 + 0x0017d> in <filename unknown>:0 
  at System.Windows.Forms.Form.OnLoad (System.EventArgs e) <0x403b8480 + 0x00071> in <filename unknown>:0 
  at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) <0x403b8260 + 0x0007f> in <filename unknown>:0 
Chreutz
Burner Inserter
Burner Inserter
Posts: 15
Joined: Thu May 21, 2015 10:04 pm
Contact:

Re: Foreman 0.1.9 - A factory optimisation tool.

Post by Chreutz »

OvermindDL1 wrote:Error on run:

Code: Select all

System.ArgumentNullException: Value cannot be null.
Parameter name: path1
  at System.IO.Path.Combine (System.String path1, System.String path2) <0x7f49f1562610 + 0x00231> in <filename unknown>:0 
  at Foreman.MainForm.Form1_Load (System.Object sender, System.EventArgs e) <0x403c9000 + 0x0017d> in <filename unknown>:0 
  at System.Windows.Forms.Form.OnLoad (System.EventArgs e) <0x403b8480 + 0x00071> in <filename unknown>:0 
  at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) <0x403b8260 + 0x0007f> in <filename unknown>:0 
I am getting the same error. I am trying to run it on Linux with mono. Anyone got a hint or a solution for this?
Post Reply

Return to “Cheatsheets / Calculators / Viewers”