News for hackers. Stuff that matters.
Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by ladberg on Friday October 02, 2020 @10:18PM (#24668956)
As someone who doesn't play Factorio, what basic building blocks is this made from? Are there programmable objects or is it built from logic gates?

To make a Minecraft analogy that more people might understand, is it closer to redstone or command blocks?

Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by galuvian on Friday October 02, 2020 @10:41PM (#24669048)
Factorio only has very basic gates. slightly more advanced than plain redstone, but not anything close to command blocks.

There are three types of combinators: arithmetic, decider, and constant.

Signals have a channel name (one for each item type and a few dozen other options) and an integer value.

Arithmetic combinators can perform arithmetic operations on one or all signals with one signal and a constant integer, or two signals.

Decider combinators perform comparison operations.

Constant combinators emit constant signals on a given channel.

There are also abilities to detect state on some other items and cause behavior to change, the equivalent of observers, dispensers, pistons, etc.

https://wiki.factorio.com/Circuit_network#Logic_signals

Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by ehsankia on Saturday October 03, 2020 @01:43AM (#24669840)
What about higher level manipulation. Are these made by hand? What does the tooling look like? Can you modify the "maps" using editors, or code? I remember even early on there were Python libraries for manipulating Minecraft chunks.
Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by input_sh on Saturday October 03, 2020 @02:59AM (#24670171)
You usually have items in an inventory. If you have what's needed, you can craft plenty of things by hand (but not complicated things like engines or anything to do with oil or uranium). Otherwise, you build belts to assembly machines, they take things from the belt, and make whatever you tell them.

Mid to late game you also get construction and logistics bots. The former allows you to copy/paste groups of machines (bots will make them), and the latter of which just makes sure you have things that you need in your inventory. Bots speed the game up quite a bit.

Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by tlarkworthy on Saturday October 03, 2020 @02:38AM (#24670103)
You can create blueprints and have robots do the placement. It's aggressively anti micro, and scalable
Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by narrationbox on Saturday October 03, 2020 @02:09AM (#24669955)
There are sophisticated keybinding-friendly editors built-in. It is very different from vanilla Minecraft.
Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by kmill on Friday October 02, 2020 @10:31PM (#24669015)
It's closer to redstone, but it's a more complicated system. It's like ladder logic in industrial control but with a couple hundred integer-valued registers per circuit network that the "combinators" update every game tick. The combinators include arithmetic and boolean operations, and you can set them to be performed on two or all of the registers.

It was fun figuring out how to make an automated system that feeds nuclear reactors with fuel to supply my base with just the right amount of steam for the generators, signaling an alarm in case of over utilization.

Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by wolfram74 on Friday October 02, 2020 @10:33PM (#24669023)
I've not played around with command blocks, but it's a bit more than redstone components.

When Factorio items are wired together with signal cable they have a few different operating modes. You can specify what objects are requested from a delivery network and what items are taken from a chest, or if any are to be taken at all. So this solution involved chests being filled with various items that have a specific color on belts, and then staggering pulls from the chests to place on belts in such a manner as to make pixels.

Those commands were issued by combinations of the constant signal block, the comparison/decider block, and the arithmetic block. I would say those entities are between NAND gates and pre fabricated if/else or for loop constructs.

Re:Raycasting engine in Factorio 1.0 (unmodded) [video] by mastax on Friday October 02, 2020 @10:32PM (#24669021)
They're like individual logic/arithmetic gates: https://wiki.factorio.com/Arithmetic_combinator

So something in-between.