Page 2 of 18

Re: A tool to help you optimise your production lines.

Posted: Tue Sep 09, 2014 2:53 pm
by Nicksaurus
Valkor wrote:I grabbed the source and compiled it with exactly zero problems in Visual Studio 2012. Fantastic application. What license is it under?
Thanks! It's under the MIT licence.

Re: A tool to help you optimise your production lines.

Posted: Tue Sep 09, 2014 8:30 pm
by MagicSaurus
This is nothing short of amazing! :o

Re: A tool to help you optimise your production lines.

Posted: Wed Sep 10, 2014 4:38 pm
by Nicksaurus
MagicSaurus wrote:This is nothing short of amazing! :o
Thanks! So is your username.

Re: A tool to help you optimise your production lines.

Posted: Fri Sep 12, 2014 11:54 am
by Blackence
I felt like improving my Debian packaging skills, and while I'm pretty sure the package is not up to Debian standards, it works, and I think it's not really bad. There's a bundled lua library and I'm not sure if my versioning and install paths for the .NET libraries are really correct, but yeah.

So if you're using Ubuntu you can now install Foreman from my PPA (just add that PPA, apt-get update and apt-get install the foreman package, then you can launch foreman from the command line or through your favourite desktop environment menu). If it doesn't work, don't blame Nicksaurus, blame me.
https://launchpad.net/~florian-will/+ar ... /factorio/

I guess the source package also works for Debian if you build it manually, but I haven't tried it. The git repo I used for git-buildpackage packaging is here: https://github.com/w-flo/foreman-pkg (Also, feel free to fork/improve/whatever of course.)

Re: A tool to help you optimise your production lines.

Posted: Fri Sep 12, 2014 4:15 pm
by Mur
omg I spent so much time trying to find that. I like to plan my factories which takes me forever without info like this.

Re: A tool to help you optimise your production lines.

Posted: Fri Sep 12, 2014 4:15 pm
by Mur
omg I spent so much time trying to find that. I like to plan my factories which takes me forever without info like this.

Re: A tool to help you optimise your production lines.

Posted: Fri Sep 12, 2014 8:31 pm
by Nicksaurus
Blackence wrote:I felt like improving my Debian packaging skills, and while I'm pretty sure the package is not up to Debian standards, it works, and I think it's not really bad. There's a bundled lua library and I'm not sure if my versioning and install paths for the .NET libraries are really correct, but yeah.

So if you're using Ubuntu you can now install Foreman from my PPA (just add that PPA, apt-get update and apt-get install the foreman package, then you can launch foreman from the command line or through your favourite desktop environment menu). If it doesn't work, don't blame Nicksaurus, blame me.
https://launchpad.net/~florian-will/+ar ... /factorio/

I guess the source package also works for Debian if you build it manually, but I haven't tried it. The git repo I used for git-buildpackage packaging is here: https://github.com/w-flo/foreman-pkg (Also, feel free to fork/improve/whatever of course.)
http://i.imgur.com/yRZt9lW.png

It works!

Re: A tool to help you optimise your production lines.

Posted: Fri Sep 12, 2014 11:24 pm
by n9103
Still having this problem:
Image

Re: A tool to help you optimise your production lines.

Posted: Sat Sep 13, 2014 7:08 pm
by Blackence
Looking at the repo… I can feel your pain. :? :(

Too bad I can't really help, as I've stopped using hg a long time ago. In fact, it was confusing to create these branch heads ("Why is my commit showing up in hg log of the default branch? I commited this to the other branch! Damn you hg!"), so I can only wish you good luck with getting rid of them! I think it looks pretty nice and clean already.

n9103, it might be interesting to know if you're using any mods. And whether or not the tool works after temporarily removing the mods. Since the Foreman tool attempts to parse lua files of mods as well as the base game, this might cause different behaviour depending on the mods you have installed. As far as I can tell, most places where bad things might happen have error checking though. So maybe it's unrelated to mods.

Re: A tool to help you optimise your production lines.

Posted: Sun Sep 14, 2014 2:47 am
by ludsoe
Image

I get this error, with and without mods installed.

Re: A tool to help you optimise your production lines.

Posted: Sun Sep 14, 2014 4:52 am
by n9103
moved the whole mod folder out of factorio's directory and ran this again, same error.

Re: A tool to help you optimise your production lines.

Posted: Sun Sep 14, 2014 7:06 pm
by Nicksaurus
n9103 wrote:moved the whole mod folder out of factorio's directory and ran this again, same error.
There are some changes in the next version that affect that section of the code. I'll also add some better error handling so it's easier to diagnose this sort of thing.
ludsoe wrote:Image

I get this error, with and without mods installed.
OK. I have no idea what might be causing that. The best answer I can give you is to wait for the next version, for the improved error handling I've mentioned above.

Re: A tool to help you optimise your production lines.

Posted: Wed Oct 01, 2014 10:18 am
by Inarion
Hey Nicksaurus,

are you still working on this nifty little tool?
I do hope so, as your program was the very thing that helped me understand how best set up my blue science factory. ;)

One (rather annoying) thing I recognized, however: When starting up, it always asks me for the Factorio directory. Is that intended behaviour? (I already tried starting it with Admin rights and it's located in E:\...\Factorio\Foreman which is not a Windows-protected directory.)
So if it's not already happening, could you have Foreman remember the Factorio path, once known?

Re: A tool to help you optimise your production lines.

Posted: Sun Oct 05, 2014 11:50 am
by Nicksaurus
Inarion wrote:Hey Nicksaurus,

are you still working on this nifty little tool?
I do hope so, as your program was the very thing that helped me understand how best set up my blue science factory. ;)

One (rather annoying) thing I recognized, however: When starting up, it always asks me for the Factorio directory. Is that intended behaviour? (I already tried starting it with Admin rights and it's located in E:\...\Factorio\Foreman which is not a Windows-protected directory.)
So if it's not already happening, could you have Foreman remember the Factorio path, once known?
I'm still working on it! It's just slow at the moment because I'm back at university. I'm glad you like it though.

The path it searches for by default is "[The drive letter that Foreman is running from]:\Program Files\Factorio", and it shows the 'Enter the Factorio Directory' dialog if it can't find that directory. I've added this as an issue though so it should be fixed soonish.

Re: A tool to help you optimise your production lines.

Posted: Tue Oct 07, 2014 11:14 am
by Inarion
Ah, I see. Thanks for the reply!

I stopped using my C: drive for game installations at some point during Win98's reign... so I'd never have expected Foreman to search for Factorio there. (Though I guess it's the default installation path?) ;)

And good to hear you're still on it. I'd rather have a slow and steady progress than none at all! :mrgreen:

Re: A tool to help you optimise your production lines.

Posted: Wed Oct 08, 2014 1:08 am
by ares0027
awesome tool BUT i am using it with dytech, no matter if I disable it or not it always shows me recipes with disabled assemblers/smelters.

as in case;

Image


what can i do to disable it?


edit: I also have something in errorlog

Code: Select all

The following files could not be loaded due to errors:
C:\Users\baran_000\AppData\Roaming\Factorio\mods\DyTech-Tools\prototypes\item\modulartools.lua(...ng\Factorio\mods\DyTech-Tools\scripts/tools-database.lua:1: attempt to call global 'module' (a nil value))
D:\Program Files\Factorio\data\base\prototypes\entity\demo-turrets.lua(D:\Program Files\Factorio\data\core\lualib\util.lua:2: attempt to call global 'module' (a nil value))
D:\Program Files\Factorio\data\base\prototypes\entity\turrets.lua(D:\Program Files\Factorio\data\core\lualib\util.lua:2: attempt to call global 'module' (a nil value))
C:\Users\baran_000\AppData\Roaming\Factorio\mods\DyTech-Energy\prototypes\entity\steam-engines-large.lua(...\DyTech-Energy\prototypes\entity\steam-engines-large.lua:1204: unexpected symbol near '}')


Re: A tool to help you optimise your production lines.

Posted: Wed Oct 08, 2014 5:50 am
by Eagle0600
I'm thinking that the best UI solution for that sort of thing in general would be clicking or right-clicking on the recipe in the flowchart to disable certain recipes, with some other element on each recipe to show when some recipes have been disabled and re-enable them.

The next step after that would be remembering that setting on future launches of the application.

Re: A tool to help you optimise your production lines.

Posted: Wed Oct 08, 2014 11:59 am
by Nicksaurus
ares0027 wrote:awesome tool BUT i am using it with dytech, no matter if I disable it or not it always shows me recipes with disabled assemblers/smelters.

as in case;

Image


what can i do to disable it?


edit: I also have something in errorlog

Code: Select all

The following files could not be loaded due to errors:
C:\Users\baran_000\AppData\Roaming\Factorio\mods\DyTech-Tools\prototypes\item\modulartools.lua(...ng\Factorio\mods\DyTech-Tools\scripts/tools-database.lua:1: attempt to call global 'module' (a nil value))
D:\Program Files\Factorio\data\base\prototypes\entity\demo-turrets.lua(D:\Program Files\Factorio\data\core\lualib\util.lua:2: attempt to call global 'module' (a nil value))
D:\Program Files\Factorio\data\base\prototypes\entity\turrets.lua(D:\Program Files\Factorio\data\core\lualib\util.lua:2: attempt to call global 'module' (a nil value))
C:\Users\baran_000\AppData\Roaming\Factorio\mods\DyTech-Energy\prototypes\entity\steam-engines-large.lua(...\DyTech-Energy\prototypes\entity\steam-engines-large.lua:1204: unexpected symbol near '}')

Yeah... that part's a bit unintuitive. The way it works is that all recipes are displayed whether they have an enabled assembler or not (because some e.g. Rocket Defense don't have assemblers at all). I only intended the enabled assemblers to limit what's displayed on the recipes as the optimal assembler setup, not which recipes are allowed.

The lua errors in the errorlog really confuse me. They happen all the time and I have no idea why. I've been treating them as low priority for the meantime because they don't affect vanilla games but it looks like they might be disabling certain items for DyTech... I'll check in a bit.
Eagle0600 wrote:I'm thinking that the best UI solution for that sort of thing in general would be clicking or right-clicking on the recipe in the flowchart to disable certain recipes, with some other element on each recipe to show when some recipes have been disabled and re-enable them.

The next step after that would be remembering that setting on future launches of the application.
I agree. That seems like the right solution here.

Re: A tool to help you optimise your production lines.

Posted: Fri Oct 10, 2014 12:29 am
by ares0027
Eagle0600 wrote:I'm thinking that the best UI solution for that sort of thing in general would be clicking or right-clicking on the recipe in the flowchart to disable certain recipes, with some other element on each recipe to show when some recipes have been disabled and re-enable them.

The next step after that would be remembering that setting on future launches of the application.

as a real end user, who has no idea about programming, that would be easier for me.
Nicksaurus wrote:
Yeah... that part's a bit unintuitive. The way it works is that all recipes are displayed whether they have an enabled assembler or not (because some e.g. Rocket Defense don't have assemblers at all). I only intended the enabled assemblers to limit what's displayed on the recipes as the optimal assembler setup, not which recipes are allowed.

The lua errors in the errorlog really confuse me. They happen all the time and I have no idea why. I've been treating them as low priority for the meantime because they don't affect vanilla games but it looks like they might be disabling certain items for DyTech... I'll check in a bit.
Eagle0600 wrote:I'm thinking that the best UI solution for that sort of thing in general would be clicking or right-clicking on the recipe in the flowchart to disable certain recipes, with some other element on each recipe to show when some recipes have been disabled and re-enable them.

The next step after that would be remembering that setting on future launches of the application.
I agree. That seems like the right solution here.
by the way there is also a problem that you cannot resize nor scroll down on the "Create a node" window. therefore it renders it useless, especially for some items that are included in a lot of recipes (like iron plate)

in picture;

Image

Re: A tool to help you optimise your production lines.

Posted: Mon Nov 03, 2014 4:56 pm
by The Lone Wolfling
Is this still in development?

If so: I am getting the following error on startup with 0.11:

Code: Select all

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Foreman.DataCache.InterpretFurnace(String name, LuaTable values)
   at Foreman.DataCache.LoadRecipes()
   at Foreman.MainForm.Form1_Load(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)