4 ms·
Show HN: terraform-provider-factorio
- linkdd 5y agoIs this the future of Factorio blueprints? Is this the birth of FactoriOps?
- efokschaner 5y agoIt's probably a worse solution than in-game blueprints. However it could be educational for teaching Terraform without needing to create real cloud infra.
- TechBro8615 5y agoI hope there is more exploration around a “Factorio Cloud” that connects multiple Factorio servers so you can visit and exchange resources with other factories. I think there have been a few projects similar to this but nothing substantial yet. In general I like this idea of connecting local sandbox games in a sort of multiverse. It would be cool if there were an open-world, multiplayer game where you could create portals to your game server(s) hosted elsewhere. So you could go to one portal to play a game of Civ, and another to play Factorio. And somehow each game could include a mod that implements a common interface so that your performance in that game can have some effect on your character in the “root” multiverse game. I get the sense this is maybe roughly what Tim Sweeney wants to do with Epic. And maybe Roblox has similar ideas.
- Sayrus 5y agoWell well well do I have something a for you. > Clusterio [1] is a clustered Factorio server manager that provides the tooling for implementing cross server interactions in Factorio. It was previously best known for implementing cross server transfer and cloud storage of items via teleporter chests. But this functionality has been pulled out of Clusterio into its own plugin for Clusterio named Subspace Storage. [1] https://github.com/clusterio/factorioClusterio https://github.com/clusterio/factorioClusterio
- lloydatkinson 5y agoA long time ago when Lego used to produce actual video games (or at least, had game companies do it) one of the games was Lego Loco - a game that I probably spent possibly thousands of hours playing as a child along with all their other games. It had the concept of being able to send postcards and trains that you made in game to either people on your LAN or to a random player on the internet. Their trains could then move around on your railways - and you could send it to back to them or anyone. The trains would go in and out of train tunnels. Your comment reminded me of it.
- dragontamer 5y agoUnlikely. For people who do want to "play the game" so to speak (aka: make a 1kspm factory or rocket-per-minute factory), the methodologies for achieving that are pretty well known at this point in the community. The "blueprints" you need are mostly rail-blueprints (quickly building rail-lines and miners that connect into your greater design). The "logic" of Factorio factories are... unfortunately too simple. All resources eventually turn into science (even the "Rocket launch" is just a space-science generator), and then those science packs enter the labs, and you're done. As such: all resources form a mostly simple tree beginning (miners) to furnaces, to assembly machines, to science packs. The exceptions: * If you use barrels / unbarrelings, your barrels need to loop back to the source of fluids. You can remove this loop by simply using pumps and/or fluid trains instead. * Heavy Oil / Light Oil / Petroleum gas looks like it forms a loop at first. But it turns out its just a tree, and entirely solvable by simply "drawing enough Petroleum gas". If you ever feel like you aren't making enough Heavy Oil / Light Oil, you can make more science (and infinite science means you have a literal infinite sink), which causes any Petrol-gas backup to self-resolve eventually. ------------- The "difficulty" of Factorio quickly becomes one of traffic engineering. Train intersections are one of the hardest sources of bottlenecks and take an extreme amount of effort to resolve (usually using 3-8 trains or bigger, as well as advanced intersection designs possibly using combinators to form "Traffic lights" if you need to go there). Attempts at 4-line rails usually fail in my experience, because a 4-line intersection is harder to design than a 2-line intersection. Furthermore, 2-line with 3-8 trains is sufficient for 1-rocket-per-minute bases. So a "proper" 4-line intersection doesn't seem necessary unless... you really want to go there and solve that problem unnecessarily. (Its a fun problem :-) So do it if you have fun). ------ From there, you have Train -> belt and Belt-> train designs, to ensure you optimally unload / load the trains. Those belts that feed these stations need to operate at near 100% efficiency if you hope to achieve rocket-per-minute status. Well... maybe not "necessarily" operate at 100%. But a RPM base needs something like 50+ blue-belts of raw materials. So if you're only operating at 50% capacity, you suddenly need 100+ blue belts (at 50%). So staying at 90% to 100% of what a blue-belt can handle (45 items/second) really cuts down on the size of your factory designs. ------------ I argue that the core assembly machines are probably the easiest part of the design. You calculate the ideal ratio (though this ratio changes based off of the number of productivity / speed modules you use), and then build that many machines... careful to not run into bottlenecks (blue-belts are 45-items/second maximum. Stack inserters are 13-items/second belt->machine, or 27-items/second for machine->machine or machine->chest). If you're hyperoptimizing designs, its difficult to beat what some people in the community have made. But if you're just aiming to make something "decent", its not very hard to slap together some 8x speed beacon + PM3 based designs, even without any blueprints.
- h2odragon 5y agoFinally got around to hacking up my own mod for factorio a month or so ago (bigger cargo wagons). As with the rest of their work, the "how to make a mod" process and documentation is exemplary. There's accurate documentation for everything, pretty much, provided by the developers, and kept up to date. Contrasted with other games where "the community" and developers request docs and examples be taken down if someone tries to publish such; it's all the more wonderful.
- lights0123 5y agoIt especially helps that the game itself is written as a mod, so they need good documentation internally anyways.
- efokschaner 5y agoAnyone have other "novelty" terraform providers which are interesting to share?
- moondev 5y agohttps://github.com/ndmckinley/terraform-provider-dominos https://github.com/ndmckinley/terraform-provider-dominos
- efokschaner 5y agoI have dabbled with the pizzapi in the past, classic!
- conradludgate 5y agoSelf promo: https://github.com/conradludgate/terraform-provider-spotify https://github.com/conradludgate/terraform-provider-spotify
- conradludgate 5y agoThe terraform education team actually contacted me about this provider last week, I think they're going to turn it into a tutorial
- efokschaner 5y agoHow fun!
- erik_seaberg 5y agoIt's good to see that Terraform switched to gRPC for invoking plugins. The old Go serialization dissuaded me from trying to write any.