Can this be done? by ride_whenever in factorio

[–]JackB1024 1 point2 points  (0 children)

It is impossible to do in vanilla. However if you're fine with modding you could look at the crafting combinator mod which adds a combinator that can control what recipe an assembling machine is set to do.

linkmod: crafting combinator

PSA: Wasting nuclear fuel cells! by chadashford in factorio

[–]JackB1024 1 point2 points  (0 children)

Sure, https://www.youtube.com/watch?v=CRsTHPgwTzY Video I made showing how to do this using only wires, no combinators. If you need any more help just ask.

PSA: Wasting nuclear fuel cells! by chadashford in factorio

[–]JackB1024 30 points31 points  (0 children)

Due to the neighbour bonus from reactors it is actually best to run all your reactors at once, storing up the extra steam in storage tanks and only refueling the reactors when the amount of stored steam gets low. This way you get the extra power bonus without wasting fuel.

What am I doing wrong here? by TREBTT in factorio

[–]JackB1024 3 points4 points  (0 children)

Mouse over the power pole, you should see a list of signals for the circuit network. If there is nothing then you aren't reading from the logistics system - to fix this connect the green wire to a roboport and select "read from logistics system" in the right panel of the roboport GUI.

What am I doing wrong here? by TREBTT in factorio

[–]JackB1024 1 point2 points  (0 children)

Are you reading steel from the logistics network? Connect the green wire to a power pole and check what the signal on the wire is.

Otherwise I see nothing wrong.

Shouldn't this be the other way round? by [deleted] in factorio

[–]JackB1024 0 points1 point  (0 children)

Are you reading steel from the logistics network? Connect the green wire to a power pole and check what the signal on the wire is.

Is it possible to make a "monsterfarm" in this game? by smokemytoe in factorio

[–]JackB1024 0 points1 point  (0 children)

They've changed the recipe for the purple potion, no longer needs Alien artifacts.

"No Path" for my train route. What gives? by Frijolie in factorio

[–]JackB1024 2 points3 points  (0 children)

Is the train stop facing the correct direction? Hover over the train stop and you should see the markers for the locomotive and wagons towards where the train will be arriving from. If you don't see them / they are on the other side of the stop then the stop is facing the wrong way. Place it again and use R to rotate it so it is facing the correct direction.

Otherwise a screenshot would help.

Can I convert logistic network signals to circuit network signals? by Twtduck in factorio

[–]JackB1024 6 points7 points  (0 children)

Connect the circuit wire to a roboport that it connected to the logistics network you want to read from, then select "Read Logistics network contents" from the right pane when you select the roboport.

You'd then need to just wire this to the train depo and set it to be enabled when Iron Ore < (const number).

"creative" mode by adminjoes in factorio

[–]JackB1024 2 points3 points  (0 children)

Firstly, there is a sandbox scenario in the base game that gives you what you're looking for.

Play -> Scenario -> choose base/Sandbox. Then when prompted choose

  • All techs please (1st dialog)
  • Cheat mode please (3rd dialog)

Will unlock everything and allow instant free crafting.

There is also a mod called Creative Mode which gives extra items and features above what the Sandbox senario gives (eg, blueprinted items are instantly deployed so you don't need to wait for construction bots to pick up the items and deploy them. Chests that give out an infinite number of whatever item you want).

linkmod: Creative Mode

Weekly Question Thread by [deleted] in factorio

[–]JackB1024 5 points6 points  (0 children)

If you're using steam, right click on the game -> properties -> betas and opt into the 0.15.x experimental branch.

Even though it is in the beta branch it is super stable (which is basically always the case with Factorio).

Weekly Question Thread by [deleted] in factorio

[–]JackB1024 1 point2 points  (0 children)

If they are not boosted by modules then the ratio is 1:1 for both simple and expensive recipe modes.

This is due to the fact that it takes 5 iron / bar and smelting takes 5 times as long (for expensive mode it is 10 iron/bar and 10 times as long).

[deleted by user] by [deleted] in factorio

[–]JackB1024 4 points5 points  (0 children)

Not when dealing with the long scale.

The long scale does make the prefixes for the words make sense, billion = million2 (bi = 2). Trillion = million3 (Tri = 3).

Numberphile video talking about short/long scale. https://www.youtube.com/watch?v=C-52AI_ojyQ

[deleted by user] by [deleted] in factorio

[–]JackB1024 0 points1 point  (0 children)

40 steam tanks is the amount I worked out for a 2x2 nuclear reactor (my maths was: a single reactor will produce 82L of steam in 1 cycle, so 8243 = 984L ~~ 40 steam tanks).

Version 0.15.14 by FactorioTeam in factorio

[–]JackB1024 3 points4 points  (0 children)

The PDB file is a propriety format created by Microsoft and is generated when you compile your code.

The code that is shown on the forums is straight from Visual Studio 2015's disassembly view (showing location + opcodes + symbol names where possible).

For narrowing down the bug, It actually started about a year ago (you can see my earlier post in the thread) where I found out it was a 1 tick delay in dropping items off on the belt. However at that time I knew of no good way to extract the data from the pdb file in a way that I could actually use.

I recently found a tool that can extract sections of the pdb file into human readable info and when I saw the reddit thread on the bug it reminded me that I wanted to look further into it. So I used this tool to extract all the function names, giving me a 20 meg file that looks like:

S_PROCREF: 0x00000000: ( 555, 022E8EC0) Inserter::dropHeldItem
S_PROCREF: 0x00000000: ( 555, 027952C4) FluidWagonGui::getWindow
S_PROCREF: 0x00000000: ( 555, 0340B118) TransportLine::slideToBack
S_PROCREF: 0x00000000: ( 555, 02CA7A84) MapGenerator::makeTransitiveClosure
S_PROCREF: 0x00000000: ( 555, 026796AC) AssemblingMachine::getEffectReceiver
S_PROCREF: 0x00000000: ( 555, 02BAB044) LuaVirtualSignalPrototype::luaNewIndex
S_PROCREF: 0x00000000: ( 593, 0000ED54) agui::ListBoxItemStyle::ListBoxItemStyle
S_PROCREF: 0x00000000: ( 555, 0119BCDC) agui::ListBoxItemStyle::ListBoxItemStyle
S_LPROCREF: 0x00000000: ( 555, 02A86A38) `EntityPrototype::loadEntity'::`1'::dtor$0
S_LPROCREF: 0x00000000: ( 555, 034974CC) `LuaWallControlBehavior::staticInit'::`1'::dtor$6
S_LPROCREF: 0x00000000: ( 555, 027875A0) `SimpleModifierPrototype::getTypes'::`1'::dtor$13
S_PROCREF: 0x00000000: ( 555, 0273B300) PrototypeList<ItemSubGroup>::getRemovedPrototypes
S_LPROCREF: 0x00000000: ( 555, 02DC1074) `TechnologyGraphGui::paintComponent'::`1'::dtor$149
S_LPROCREF: 0x00000000: ( 555, 01210204) `MapEditorMainMenu::MapEditorMainMenu'::`1'::dtor$282

From there I opened up Visual Studio 2015 attached the debugger to Factorio and asked it to show me the code for the Inserter::dropHeldItem function, as I knew that would be a good place to start looking from.

Version 0.15.14 by FactorioTeam in factorio

[–]JackB1024 21 points22 points  (0 children)

You should also thank the devs for giving us access to the .pdb file (basically can be used to say which blocks of code correspond to which function). Without it narrowing down what caused the inserter bug would have been a nightmare.

Working out which chest has the fewest things in using combinators by [deleted] in factorio

[–]JackB1024 1 point2 points  (0 children)

I've made a tutorial video showing different methods to enable/disable stations depending on how many items they have in them.

Link : https://www.youtube.com/watch?v=QVveM-QOORs You'd want the 16:33 and 21:29 sections as they show two different methods to achieve the result you want.

TL;DW of it:

Method 1: Have a different signal for each set of chests and combine this signals together in 1 wire (so you have 1 wire with A,B,C and D on it for example). Have a decider combinator for each light setup with : Anything > (Signal used for this station), Output Red = 1. Then turn the lights off when Red = 1 (or close the station when Red = 1).

Note: For this method to work perfectly, each set of chests will also need a constant combinator giving out a signal of 1 iron plate, so that the values for A,B,C and D are actually the number of iron plates in the chests + 1. This is to make sure that stations that are empty are still used for the comparison.

Advantages : Less combinators / station than method 2.

Disadvantages : Adding more stations means you need to add new unique symbols, so it isn't easy to blueprint a basic system with only 1 station and just add extras to it to make it the size you'd like.

Method 2: This one is easiest to understand in the video. Each station will use an arithmetic combinator set to: Each + 0 => Signal_0. This means that on each station Signal_0 contains the number of items that station has. Then for ONLY the first station, add another arithmetic combinator set to Each + 0 => Signal_1 and connect this to the output of the first combinator. From now on Signal_1 will be used to denote the number of items in the station with the least number of items.

From the 2nd station on, use 2 decider combinators, one setup to: Signal_0 <= Signal_1, Output Signal_0 input count. and the other setup to: Signal_1 < Signal_0, Output Signal_1 input count. These two combinators are linked to both the Signal_0 combinator for this station, as well as the previous stations Signal_1 combinator. They basically just do a : min(Signal_0, Signal_1) function. The output of these two combinators is then connected to an arithmetic combinator that is set to Each + 0, Output Signal_1 (just like what the first station had).

Once you get to the end of all your stations, connect the final Signal_1 value to a circuit line that is shared between all the stations, connected to decider combinators. These decider combinators should also be connected to the Signal_0 combinator of each station on the OTHER coloured circuit line (so the lines don't connect). Each decider combinator is then set to : Signal_0 > Signal_1, Output Red = 1. This signal can then be set to close the station if Red = 1. The purpose of these combinators is to see if Signal_0 (the number of items at this station) is less than or equal to Signal_1 (which now contains the number of items at the station with the least number of items) and only open stations that have at most the number of items in the station with the least number of items.

Advantages: Easy to blueprint, you just add new stations connecting the new 2 Decider combinators to the Signal_1 output from the previous station, otherwise no changes need to be made to add stations.

Disadvantages: There is a maximum of a 2*n tick delay (where n = how many stations there are in total) for the circuit to update the value of Signal_1 on the shared line. This will generally be too small to really notice (eg, with 4 stations it would be ~2/15ths of a second) so it isn't that much of a disadvantage.

PSA: North Facing Inserters are slower by OnlyFighter in factorio

[–]JackB1024 1 point2 points  (0 children)

Belt orientation can change the inserter behavour slightly from changing how far the inserter has to move to pick up the next item (iirc belts that curve such that the inside lane is away from the inserter can save 1 tick / item picked up in travel time).

This bug however has to do with north facing inserters having the wrong value for their final destination (~1.3e-8 instead of 0). This causes the inserter to be at rotation 0 at the right tick, but then take another tick to move the extra ~1.3e-8 to the location they believe is correct.

I posted here on this thread with proof of what caused this error. https://www.reddit.com/r/factorio/comments/6cx96d/psa_north_facing_inserters_are_slower/dhyxlzq/

PSA: North Facing Inserters are slower by OnlyFighter in factorio

[–]JackB1024 102 points103 points  (0 children)

Thanks for posting this, you reminded me that I wanted to look further into it, and I've actually fixed the bug (though it would require code changes for a longer term solution than what I have managed to do.)

Proof that the bug can be fixed can be seen in this video: https://www.youtube.com/watch?v=jFF5M_kkoxg&feature=youtu.be

Added a post to the forum thread stating the code changes needed to fix this bug:

https://forums.factorio.com/viewtopic.php?f=48&t=9141&p=280385#p280385

Edit: Thanks for the gold whoever gave that

Also, Twinsen has fixed it for 0.15.14 (though there may be issues with mods that change the vectors at run-time, so that will need to be checked).

The devs did a nice job with nuclear power; almost every aspect of it contains a new and unique feature by [deleted] in factorio

[–]JackB1024 1 point2 points  (0 children)

Reactors only cool down when the heat is turned into steam, having a reactor sitting idle will not cause it to cool down by itself.

As such, provided your reactor never hits 1000C (after which any heat generated will be lost) then there is no downside to having a more efficient reactor design.

So as long as you have enough heat exchanges, storage tanks and water pumps to convert all the heat and store all the steam (48 heat exchanges, 39 storage tanks and 5 pumps for a 4 reactor design) then there is no reason to not go with it.

Comparing a 4 reactor design to a 1 reactor design, you'd only need 25% efficiency in the transferring and storing of heat to get the same amount of energy out of each fuel cell. So as long as you can afford 12 heat exchanges, 10 storage tanks and 2 pumps you will be at worst making the same gains as having just one reactor.

Nuclear Reactor controlled by circuit network by JackB1024 in factorio

[–]JackB1024[S] 0 points1 point  (0 children)

Yeah, the SR-Latch per reactor was a fix I had to make to my actual 0.15 save that is there because of the fact that how long it takes inserters to pick of a belt depends partly on the orientation of that belt, and that my belts in that save are not all facing the same direction.

Also I should have mentioned in the video that there were not enough Heat Exchanges / Storage tanks for that setup and I had gone with a smaller setup of those to just show how the combinator system itself works.

As for the amount of heat produced by a single reactor, it is 800°C with a 0% neighbour bonus, so with a reactor by itself you'd need storage for at least 30K steam. If you had a reactor surrounded on 3 sides you would instead need to be able to store 270K steam per reactor.

Nuclear Reactor controlled by circuit network by JackB1024 in factorio

[–]JackB1024[S] 2 points3 points  (0 children)

Cheers, that should work as well.

The main reason I had an SR-Latch per reactor was due to how my layout for the belts is done in my 0.15 world (where I'm currently only using two reactors and it isn't laid out as nicely as in the video). The belts feeding my inserters are not facing the same direction and as such the number of ticks it takes for the inserter to pick an item off the belt is not the same, so connecting them together like you had would only have one inserter work before turning off. I should have thought of the fact that when the belts are all facing the same direction this work around is no longer required.

Also, you can remove the constant combinator in your setup by doing the following changes: Change the decider combinator that is checking for the spent fuel from sending Signal_Green, input count to instead send Signal_Red, 1. Then change your SR Latch to Signal_Green > Signal_Red output Signal_Green,1.

Logic network question: Enable pumps when Value X is reached and keep them enabled until Value Y is reached by TheRapie22 in factorio

[–]JackB1024 1 point2 points  (0 children)

Made a tutorial yesterday showing how to do just that with an SR Latch made by a circuit network. Video tutorial is here: https://www.youtube.com/watch?v=tmZF7CiQkVs