• Breaking News

    Friday, December 6, 2019

    Factorio Friday Facts #324 - Sound design, Animated trees, Optimizations

    Factorio Friday Facts #324 - Sound design, Animated trees, Optimizations


    Friday Facts #324 - Sound design, Animated trees, Optimizations

    Posted: 06 Dec 2019 04:11 AM PST

    I present to you: Big Bertha, an artillery Train with 532 Artillery wagons

    Posted: 06 Dec 2019 12:08 AM PST

    My "Disgusting" Smeltery. (Zoom In)

    Posted: 05 Dec 2019 09:08 AM PST

    My power problems are sorted, for now. 952 turbines for 5,5 GW power!

    Posted: 06 Dec 2019 01:56 AM PST

    Trains are Turing complete... I think?

    Posted: 05 Dec 2019 08:30 AM PST

    Trains are Turing complete... I think?

    So over the last week, I've done a little testing, and I think it's possible to build a Turing complete system in Factorio, using only the vanilla Train system. what does that actually mean? well, with a lot of hand-waving, it essentially means that you can perform and calculations and write any programs just like you could with a traditional programming language (albeit with a lot more effort)

    To clarify, I believe it's been shown that Factorio's circuit network is Turing complete. I have also seen examples of just about everything I'm doing here done with belts and splitters. But, I have used none of this. No belts, no splitters, no combinators, not even red/green circuit wire. Only locomotives, rails, signals and train stops (and fuel for the trains). Many of the issues and challenges below become trivial if you allow yourself to connect signals or stops with circuit wires, so That's cheating as far as I'm concerned.

    So, I present to you this spare-time-killing creation:

    8-Bit Adder using only trains

    Admittedly, its a simple program, that just adds two 8-bit numbers (<256) together and outputs the number as a 9-bit number. What follows is an explanation of what I did.

    The first problem I came across while building the system is that while it's easy to tell a train "Go, unless there's a train here" (all you need is a signal), it's a surprisingly non-trivial problem to say "Wait, until there's a train here". Would be an easy thing to solve if allowed to use circuit wires, but there you are. So after many hours of designs, and redesigns, I came up with this:

    Basic loop module

    The three lined-up trains are blocked by the double-headed train crossing their path, which is in turn blocked by the train going around the loop. When the last train approaches from the north, it slows down the looping train, giving the double header enough time to move forward and allow the first three to move to their destination.

    Basic loop module settings

    With this module, we can now proceed to make some logic gates, the basic component of any circuit at the hardware level.

    The simplest is the OR gate:

    OR gate

    With this setup, the parked train will proceed if a train approaches down either, or both, of the branches to the north. If A or B has an input, we have an output.

    Next, with a little more thought, we can construct an AND gate

    AND gate

    This has three inputs, unlike the traditional AND gate, which has two. From left-to-right, there is the A input, the B input, and what I'm choosing to call a 'timing' input. Due to trains being discrete, rather than continuous signals, there's no way to tell the difference between an off (0) signal, and an on (1) signal that just hasn't arrived yet. So with the addition of a third, timing signal, we can give the A and B inputs a chance to arrive before the actual comparison is made. In the image above, the output is the station at the bottom left. If just the A (leftmost) input arrives, then there's nothing that can reach the output at all when the timing signal arrives. If just the B input signal arrives, then the parked train will travel along the shorter rail path in the middle, and reach the station at the very bottom, and block the B signal from reaching the output. Only if both A and B arrive, does the A signal train block the parked train, allowing a signal to reach the output.

    The next important gate to look at is the NOT gate).

    NOT gate

    This is similar to the AND gate, but has just one input (and a timing signal). A NOT gate works like an inverter, and by the same logic as the AND gate, if the input arrives, we will not get an output, and if it does not arrive, we will get an output.

    Using just the AND and NOT gates (or the AND and OR gates), its possible to combine them in ways to make any other logic gate, but we can also build simpler versions for convenience's sake. Here is an Exclusive-OR gate, also known as XOR:

    XOR gate

    This one is relatively simple. The loop is there just to make sure that both the A and B inputs (if present) enter the gate at the same time. If exclusively A or exclusively B inputs arrive, it can make it to the output. But if both inputs arrive, they will block each other and there will be no output.

    Using a mix of AND, XOR and OR gates, we can construct Binary Adders), the basic modular unit of the monstrosity of that 8-bit adder at the top.

    Binary Half Adder

    Binary full Adder

    All well and good so far, But my initial assertion was that the train system is Turing Complete. The other factor we need to consider is that a Turing machine should have access to an infinite amount of memory.

    Technically, this means that nothing in the real world is truly Turing complete, but as Factorio has a (theoretically) infinite world, we could just keep building more and more. As for memory, the basic loop module can act as a reasonable memory bit, where you can store a train in one of the input channels, and then retrieve it later by sending a train into the loop. However, the system as described here has a big problem. My design is not resettable. Each of the logic gates leave trash trains behind, so one a logic gate is used, you can't use it again. Once you retrieve a bit of memory from somewhere, you'll have to assign it to a completely new and unused memory address in order to be able to use it again. This is where my knowledge falls down. I don't know if a Turing complete system actually needs to be reusable in this way, or if you can just put in heaps and heaps of gates and memory bits to compensate for the lack of re-usability.

    If anyone knows one way or the other, please let me know, but regardless, With the amount of testing I've done, I feel as though there should be a way to tweak the gates in such a way they are reusable, perhaps by looping outputs back around to inputs somehow. I spent a few hours trying but didn't get much closer than 'nearly'.

    Whether or not this is a Turing complete system, you could certainly make some impressive calculations and programs with what I've done, as long as you can sustain the patience required to put down the hundreds of logic gates you'll need without making a mistake that domino-effects everything you've built so far into uselessness.

    Lastly, there's one more massive issue with my build, and I don't know how to even begin going about fixing it. All of my gates are build around that basic loop unit, with the train going around and around indefinitely. Or rather, until it runs out of fuel. You can't stop the train to refuel it, or the blocking train will move into the loop and trigger just as if the timing signal had arrived. I've experimented with having two or more looping trains but couldn't get anything to work even close to reliably.

    I'd love to see if anyone else can come up with a different system that gives you a way to keep your trains refuelled. I've made a video on my YouTube channel which goes through the gates shown here and you get to see the 8-bit adder in action. In the video description, I've put links to blueprints of each of the gates and adders so you can try them out yourself.

    So, are Factorio's trains Turing complete? I think so, but can't be sure. Even if they're not, its still one of the best things about the game.

    UPDATE:

    With some help from suggestions in the comments, I have done a little more work, and have made a version of the loop train that is refuellable, as we as come up with a way of supplying extra trains to splitters, not gates, etc, dont run out if you re-use them. I'm currently working on a way of making the logic gates themselves repeatable. I won't be able to use the same trick I did for the XOR gate, but if i can get the NOT and either the AND or the OR working, I think we're in business!

    UPDATE 2:

    I now have stable, reusable versions of AND, OR, and NOT gates! caveat is that you need a (functionally infinite) train source and sink. While routing the trains may be a pain, I'm not fussed about it as most computers need to be plugged in to the power to get their own electron source/sink =D. Working on a demonstration now.

    submitted by /u/minibetrayal
    [link] [comments]

    3.7k/min compact Blue Circuits (moduled & beaconed)

    Posted: 06 Dec 2019 12:08 AM PST

    My Vanilla Train Network – featuring a dispatcher, duplicate station names, and easy to read global network with supply and demand

    Posted: 06 Dec 2019 05:12 AM PST

    After seeing this post, I decided it was time to upgrade how my train network operated. So here I am nearly 2 weeks and 50 hours of prototyping later (mostly trying to get an even better system working but failed) and I can say it works perfectly so far. (Well I haven't seen anything go wrong… yet)

    Currently I have blueprints for just Iron Ore and Crude Oil in my Train blueprint book, you can see it in action here (x2 speed). If you want, you can also copy the blueprint (290 x 634 tiles )and try it yourself. It does require the infinity mode mod for power and item creation though. The trains will also need to be set to automatic and given fuel.

    If you want to add more trains to each depo, you must change the constant combinator to match the number of trains and the random signal you've set to also match. If you want to setup another outpost for say, copper ore, you will need to change some of the combinator settings at the depo, load, and unload stations. For the Iron Ore blueprints, you can see anywhere there is an 'i' signal, you will need to change it to something else, like signal 'C' of anything else other than i (or any of the items on the network). If you want to add copper plates to the network, you will need to change the combinators and the load and unload to divide by 16 000 instead of 8 000 because there are only 50 ore in a stack but 100 plates in a plate stack that will fit in 1-4 trains. This goes for items with other stack sizes as well, like rocket components that stack to just 10.

    Disadvantages:

    1) Requires 2 signals per item (item + random signal)

    2) Each item on the network requires its own depo station (which could be throughput limiting for very, VERY large networks)

    Advantages:

    1) Inside each depo station is a dispatcher that will send out the exact number of trains to keep the demand full.

    2) Works with duplicate station names, making the process of creating mining outposts in the mid to end game simple by just stamping blueprints.

    3) Easily read the supply (green wire) and demand (red wire) on the network by hovering over a large power pole.

    4) Stations automatically enable and disable. Load stations enable with a least 1 load available, and unload stations enable if they can fit at least 1 full load.

    Inspiration:

    The design features multiple ideas from Haphollas' HTN, KnightElite's VTN, and some concepts from Wolscott's post a couple years ago.

    Is it better than any of these? Maybe, and maybe not. It depends on the advantages and disadvantages of every system and which one you prefer the best. HTN can have dispatching issues, but it is also much easier to tailor to your preferred use of trains. I use 1-4 trains LHD, but this system can work for any train, it would just take some tinkering with a couple of the combinators at the load and unload stations to fit your preferences.

    I don't know what call it, so if you have an idea, post a comment. Also, if the explanation isn't good enough, i'll edit the post (or maybe make a follow up post) to more easily explain how to change it for other items.

    It's possible that there are other solutions out there that i didn't find that are better in every way. For all i know, there could be a post out there thats 10x better and fixes all the problems i have. The network could be much better, for example, i'd hope to get it to just 1 signal per item (the item itself), or maybe a true wizard with the circuit network will figure it out and make a post.

    submitted by /u/PlasticAlbatross
    [link] [comments]

    Someone else showed a "Disguisting" Smeltery. Let me present to you: the Multismelter!

    Posted: 05 Dec 2019 01:21 PM PST

    2x2 chunk challenge, 59 spm

    Posted: 05 Dec 2019 12:14 PM PST

    Alien artifacts returns

    Posted: 06 Dec 2019 05:48 AM PST

    Hi guys, I was just thinking this morning that the long lost mechanic of getting "cotton candy" from biter bases to create purple science was a interesting mechanic.

    But it was probably removed so people could make bases in peaceful mode or to make all science more a logistic problem idk.

    Then some time ago KoS said that the developers had told her that the biters are also a logistic problem. That kept me thinking.

    And like rule 34 for the internet, in factorio "there's a mod for that".

    Is there a mod that:

    1 - brings back the alien artifacts.

    2 - has a automatic solution for getting cotton candy

    I was thinking that if there's a big spider bot that has radars on top, loads of guns and artillery cannons that would get out if the base, walk towards the closer biter base and kill everything on its path to harvest alien artifacts?

    It would have some aggro sliders to config so we could figure out the optimal range and risk of getting destroyed.

    And when it gets low on fuel, or ammunition it would return to the nearest supply factory to replenish, deliver all cotton candy harvested and get back to the slaughter.

    Maybe it's because I was playing Frostpunk lately and became evil but I think it would be fun to automatize biter cleansing.

    What do you think?

    submitted by /u/ricaerredois
    [link] [comments]

    Mac Catalina

    Posted: 06 Dec 2019 03:04 AM PST

    Disclaimer: i dont own a mac or any apple device, i am just courious.

    Will factorio stop supporting Mac Catalina because of the fact that they will need to pay apple just for the fact that they support their os ?

    submitted by /u/Qik00
    [link] [comments]

    New Car. Fresh Air. Open Plains.

    Posted: 05 Dec 2019 03:19 PM PST

    I got my first 1k/hour consumption rate.

    Posted: 05 Dec 2019 10:26 PM PST

    Just under 1000 hours playing the game. Have done a couple starts/stops and decided to go full ham on getting to 1k/hour consumption. Three silos running currently. This happened to be a military queue, but purple is sitting at 48k in reserve and running another for mining productivity it was able to keep up.

    Surprisingly there's more capacity - running low on iron and plates and still have a couple of patches to go out towards. Going to redirect the third silo to bring all the products down to the main production in the bottom right. Even after 1000 hours, I'm still finding new ways to accomplish goals.

    This setup has no expansion option for the biters. This seemed a good balance between peaceful mode and just constantly dinking with biters.

    https://imgur.com/a/N2ywdgO

    submitted by /u/whatshisnuts
    [link] [comments]

    Can I change game settings after I've already started (eg research queueing)

    Posted: 05 Dec 2019 10:11 PM PST

    I started a game that I didn't allow research queueing and I didn't realize until I put a good amount of effort in. Is there any way I can change this somehow without starting over

    submitted by /u/Sylkanis
    [link] [comments]

    Some thoughts on Biters from a game design perspective.

    Posted: 06 Dec 2019 12:01 AM PST

    One thing I've always loved about factorio is the amount of categories of challenges you are faced with on a constant basis. Factorio as a game, however, is built on 90% of the game that is related to production, logistics, and research. It can stand as an incredible game without biters, more broadly meaning the aggressive aliens on the map trying to kill you., which I will broadly call biters for this post. The inclusion of them provides real stakes, and not just from the threat of your hard thought design being destroyed. The biters in this game, are beautifully done, which is ironic to say considering how absolutely revolting they are. To be honest i feel uncomfortable looking at a map full of pulsing hives. Again ironically, i enjoy being disgusted in this way, as it provides motivation to destroy them. There is something poetic in the relationship the biters and the engineer have, but i digress.

    The biters, spitters, wurms, and spawners all have clean, humble, and relatively realistic designs. I don't mean that these things actually exist, but the biter looks like a mix between a cockroach and a hornet, the spitter looks like a caterpiller, and the wurm looks like a snake with an insect looking mouth structure. Those are my opinions, but i think its fair to say that they don't attempt to be some kind of science fiction alien. This gives a grounded vibe to them , which is actually rare in a lot of modern games so maybe that added to my experience. In other words, the aesthetic design of the biters is revolting, realistic,humble.

    From an actual gameplay perspective, they provide a less heady distraction, one that doesn't require nearly as much thought as the rest of your experience, some logistic challenges have to be made ( placing turrets, ammo or power necessary, walls, bot infrastructure to keep them healthy. I actually think this is a respectable concession from a design standpoint. Although I as a player enjoy them, I respect that having a high chance of your base being destroyed may be too great of an imposing on the core 90% of the gameplay. More broadly I respect the fact that the devs could have made the game as complicated as B&A sea block or anything like it but didn't, they clearly could have and likely thought about it, but chose not to. I suspect this was not only a business decision, meaning appealing to the widest base possible(while also not sacrificing the principle of the game) but also a design decision, Although i am not totally sold on this idea (personally) I think there is something to be said about keeping things as simple as possible, in order to focus on core gameplay concepts. Think about how complex chess is, while also being incredibly simple. If you think about chess in terms of "content' its incredibly minimal, although I mean that in-game dev terms not in internet "content" terms meaning "good content".

    To bring this back to biters, although I respect the design decision, I personally prefer more of a challenge from them, From my experience, I appreciate the challenge from them " sufficiently" up to the mid-game(blue science up), after which, they become more of an annoyance, then anything else. I think about killing them more as grinding than some kind of challenge. There are two problems with this, firstly, the stats, they don't have enough of them. Bememoth biters are pretty chunky but don't move fast enough or hit hard enough. Spitters do solid damage to turrets but they tend to get destroyed if there are no biters in front, and that brings me to ai. There are some tactics in the base game, but nothing beyond the basic, group up and walkup somewhere then sprint when you are close. There are a myriad of things they could do, (biters kiting flame turrets for main force) although i do not have the technical understanding to claim i know how to implement it . I am aware of rampant and Bobs enemies, although i am currently focussed on hitting 1k spm on vanilla default map and settings. Afterward, i am possibly naively considering doing a rampant, bobs enemies, krasotrio & industrial revolution run. I have got a sense of IR & krastorio from reading item recipes in creative mode, but its hard for me to get a feel on rampant and bobs enemies without actually playing a game. There are two kinds of challenges i think could be done though and i am hoping for them in these mods. Firstly, making intelligent defenses mandatory by having different types of biters that interact with your defenses in different ways.,possibly even changing strategies or compositions in a moderate time frame. I think this part is especially necessary for the defenses available in krastorio, those nuclear rocket towers are so cool but they would seem hilariously over kill for vanila biters. This would also probably include simply higher damage and health with respect to biters. Which brings me to the second challenge, that is the logistic challenge of keeping your defenses stocked with ammo. Im hoping someone in the community could give me a short writeup of there experience with bobs enemies and rampant, cheers.

    submitted by /u/euphoric_Sagan
    [link] [comments]

    Best Mods?

    Posted: 06 Dec 2019 05:06 AM PST

    Hey r/factorio,

    I love Factorio, but sometimes I feel like it's just too easy.

    I'm wondering if anyone knows any good mod combinations that have increased the overall survival elements and difficulty of it without making it insanely hard?

    submitted by /u/PancakePuncher
    [link] [comments]

    A question

    Posted: 06 Dec 2019 03:24 AM PST

    In terms of size, in order to Make products in bulk, would it be more efficient to place beacons or not?

    submitted by /u/DylanV255
    [link] [comments]

    Haven't played much, only around 20 hours or so. Came up with this structure for steady researching, but no idea what should be the next thing to do. Any recommendations, how to expand and what should I do next? Only doing research and wandering around now... Thanks!!!

    Posted: 05 Dec 2019 01:29 PM PST

    Son-Goku base decoration

    Posted: 05 Dec 2019 01:36 PM PST

    Combinator Improvement Idea

    Posted: 05 Dec 2019 06:51 PM PST

    Taking a page out of the factorissimo mod's book and make an item that can hold combinators inside to prevent large circuits from being massive given the 2x1 size of each combinator. I feel like this would allow for much better usage of the combinators by making it so that I don't need a large footprint just to control the logic of my factory. Clearly our fantastic engineer can handle making tiny computers since we have autonomous robots capable of making their own decisions on where and when to bring items around.

    submitted by /u/Geauxlsu1860
    [link] [comments]

    2-8-2 unloading/loading train station?

    Posted: 06 Dec 2019 02:16 AM PST

    If possible, 11 tiles wide?

    submitted by /u/byalkou
    [link] [comments]

    No comments:

    Post a Comment