diff options
19 files changed, 202 insertions, 74 deletions
diff --git a/content/pyblock/introduction.md b/content/pyblock/introduction.md index c020c28..e2f4d89 100644 --- a/content/pyblock/introduction.md +++ b/content/pyblock/introduction.md @@ -1,50 +1,50 @@ --- title: Introduction -date: 2026-01-01T13:57:41-05:00 +date: 2026-01-02T16:10:41-05:00 +summary: | + Welcome to PyBlock Hard Mode. --- -Welcome to PyBlock Hard Mode. +Factorio is a game of industrial colonialism. -<!--more--> +The player arrives in a pristine wilderness, rich with natural resources, carrying a minimum of equipment. They bring with them no way to go home again. The game tasks the player with conquering that frontier and using its bounty to build an industrial system that can build the spacecraft they need to go home again. The game's _Space Age_ expansion extends this process, and tasks the player with colonizing and industrializing a whole sequence of planets in order to build a starship that can take them home. -## Background +In the course of this endeavour, the player is expected to kill and displace the native life on each planet, forcing it aside so that they can exploit the planet's resources. The game treats native life as mere animals, but the parallels to colonial displacement are so stark that [even the developers have commented on it][fff-268]. -Factorio is a game of industrial colonialism. The player arrives in a pristine wilderness near profuse natural resources, with a minimum of equipment and no way to return, and is tasked with building their way up from stone furnaces and hand-gathered fuel to a spacecraft capable of returning them to their home. In the Space Age expansion, gameplay continues, with the player then tasked with colonizing and industrializing a series of other planets in the same solar system, before fleeing the solar system in a starship of their own construction. In the course of this endeavour, the player must also deal with the native flora and fauna, displacing or exterminating anything that gets in their way. +[fff-268]: https://factorio.com/blog/post/fff-268 -The game has a goal (build a spaceship and go home), but it's an open secret that the game is "meant" to be played endlessly. The game provides a number of infinite goals to pursue, and pursuing those goals rather than completing the game leads to continuing work to expand the factory (or factories) and to solve new problems. That's fun in its own right. +These goals would see the player eventually giving up their invasion and going home, leaving their factory behind to falter, fail, and eventually decay. However, it's an open secret in the community that the game is meant to be played endlessly, with the player staying in and expanding their factory forever. Nauvis, and the rest of the game's solar system, is the player's new home, and the game provides a number of infinite goals to pursue to improve and expand that home for as long as the player's interest holds out. The factory need never fail, and the natives may never reclaim their homes; instead, the factory must grow. -The game presents a highly-polished but also very simplified manufacturing process, whose key steps are +The game gives the player tools that represent a simplified version of a modern industrial manufacturing system. The key steps are -* Resource extraction, using mines, water pumps, and pumpjacks to produce raw ores, water, and crude oil; -* Smelting, using furnaces to convert raw ores into basic materials like iron and copper; -* Manufacturing, using generic assembler buildings, plus a small collection of specialized buildings, to convert basic materials into more complex products; -* Research, using labs to convert the final products of manufacturing into further upgrades, new recipies, and other ways to expand the factory; -* Logistics, ranging from mechanical arms to conveyor belts to cars and trains to move goods from where they're made to where they're needed, -* Rocketry, using rocket silos and landing pads to send goods to orbit and retrieve the results; and, finally, -* Military, using finished goods to force native creatures ("biters") out of their territory so that the player can extract and exploit the resources they were obstructing. +* **Extraction**, using mines, water pumps, and pumpjacks to produce raw ores, water, and crude oil; +* **Smelting**, using furnaces to convert raw ores into basic materials like iron and copper; +* **Manufacturing**, using generic assembler buildings, plus a small collection of specialized buildings, to convert basic materials into more complex products; +* **Logistics**, ranging from mechanical arms to conveyor belts to cars and trains to move goods from where they're made to where they're needed, +* **Research**, using labs to convert the final products of manufacturing into further upgrades, new recipies, and other ways to expand the factory; +* **Rocketry**, using rocket silos and landing pads to send goods to orbit and retrieve the results; and, finally, +* **Violence**, using the weapons of an advanced industrial system as a lever with which to suppress or exterminate all resistance to the factory's growth. -Even in a simplified form, a normal Factorio playthrough is expected to take tens of hours. Speedruns for the base game clock in at a bit over an hour, and for the expansion, at six to eight hours. It's not uncommon for players to take hundreds of hours if they play more slowly, or if they're working on a particularly large base. +A normal Factorio playthrough is expected to take tens of hours. On the low side, speed runs for the base game clock in at a bit over an hour, and for the expansion, at six to eight hours using heavily-optimized strategies to complete the game as fast as possible. At the other extreme, players regularly play on the same saves for hundreds of hours, incrementally expanding and optimizing an ever-growing factory before achieving the game's final goal of escape. -Progress through the game is marked both by research, mentioned above, and by qualitatively distinct gameplay phases where the player's capability to manipulate the world around them grows substantially. Initially, the player must make and place every item by hand, mining the raw resources themselves if necessary. Most players progress to automating _manufacturing_ of basic items like belts and assemblers, but then must walk to collect them and place them. The player's inventory and walking speed are then augmented with powered armour and with vehicles, before being rendered almost entirely irrelevant once the player sets up construction and logistics robots that can place things in the world _en masse_ from player-designed blueprints or by copying existing designs. By the end of the game it's very common for players to spend nearly all of their time in the map view, ignoring their character entirely in favour of directing automatic systems. +Progress through the game is marked both by research, mentioned above, and by qualitatively distinct gameplay phases where the player's capability to manipulate the world around them grows. Initially, the player must make and place every item by hand, mining the raw resources themselves if necessary. Most players progress to automating manufacturing of basic items like belts and assemblers, but still must walk to collect them and place them. The player's inventory and walking speed are then augmented with vehicles and with powered armour, before being rendered almost entirely irrelevant once the player sets up construction and logistics robots that can place things in the world _en masse_ from player-designed blueprints or by copying existing designs. By the end of the game, it's very common for players to spend nearly all of their time in the map view, ignoring their character entirely in favour of directing automatic systems. ## Pyanodons -Pyanodons is a [collection of mods][pymods] to the game, intended to add complexity and _drastically_ slow the growth of the player's capabilities. Each mod replaces some set of manufacturing steps with a much larger process, often using more specialized buildings and generating byproducts that must be handled for production to continue. They also add entirely new production chains, dealing with things like alien life, that are structurally unlike anything in base Factorio. The mods can be used individually, but they're at their most interesting when used together. +Pyanodons is a [collection of mods][pymods] to the game, intended to add complexity and to restrain the player's growing capabilities. Each mod, taken individually, replaces a category of the game's manufacturing steps with a much larger and more complex process, using more specialized buildings and generating new byproducts that must be handled. They also add entirely new production chains parallel to the base game's formulary, dealing with things like alien life. The mods can be used individually, but they're at their most interesting when used together. [pymods]: https://mods.factorio.com/user/pyanodon -As an illustration, consider the basic transport belt, used in the thousands to move items around the player's factory. Assuming that the player has access to iron and copper ores, the process for producing conveyor belts in vanilla Factorio is: +As an illustration of the mods' approach to complexity, consider the basic transport belt. This is an item that, in vanilla Factorio, players build in the thousands starting very early in the game, in order to automatically move between process stages. The process for producing conveyor belts takes three steps and a pittance of resources: 1. Smelt 3 iron ore to make 3 iron plates. This process happens in furnaces, and will either consume a small amount of fuel (usually coal, which is a raw resource to be mined), or, later in the game, electrical power. 2. Convert 2 iron plates into 1 iron gear wheel. This process happens in assemblers, or in the player's inventory; when done in an assembler, it takes a small amount of electricity. 3. Convert the remaining 1 iron plate and the 1 iron gear wheel into 2 tiles of transport belt. -This process consumes very few resources and is easy to both memorize and implement. Automating belts is often one of the player's first automation projects once they've set up iron smelting. - By comparison, the same process in Pyanodons is: 1. Smelt 40 iron ore to make 5 iron plates. This process happens in a furnace, which will burn fuel and may produce fuel byproducts, such as ash. Electric smelting is an option, and is available much earlier than in vanilla, but it consumes dramatically more power and specialized buildings. -2. Convert 2 iron plates into 4 iron sticks. This process happens, initially, in a _burner_ assembler, which also consumes fuel and produces fuel byproducts. +2. Convert 2 iron plates into 4 iron sticks. This process happens, initially, in a burner assembler, which also consumes fuel and produces fuel byproducts. 3. Convert 4 iron sticks into 4 iron bolts. This is, again, done in a burner assembler, so that also requires fuel and byproduct removal. 4. Convert 2 iron plates into 2 iron gear wheels. This requires another burner assembler, with the associated infrastructure. 6. Smelt 16 copper ore to make 2 copper plates. As above, this either consumes fuel and produces fuel byproducts, or happens in expensive and specialized electric furnaces. @@ -52,42 +52,39 @@ By comparison, the same process in Pyanodons is: 8. Convert 3 iron bolts, 3 copper cables, and 1 iron gear wheel into 1 small parts in a burner assembler. This leaves 1 copper cable and 1 iron bolt unused, which can be either output as byproducts or buffered and reused. 9. Convert 1 small parts and 1 iron plate to 2 tiles of transport belt. -Most obviously, this is a longer process with more steps. Many of those steps also require additional inputs (fuel, in this case) or generate additional outputs (frequently ash). These amounts are _low_ - assemblers can be reasonably hand-fed fuel early on, and ash removal doesn't need to be automated right away either - but they do need to be accounted for or the process will stop. It can also be done in the player's inventory, as with vanilla, in which case it requires no fuel and produces no byproducts, but the player themselves must deal with the excess bolts and cables somehow. Finally, the process consumes drastically more raw resources - 36 iron ore and 12 copper ore on average, to vanilla Factorio's 3 iron ore per belt. +Not only is this a longer process with more steps, but it also requires a wider variety of resources, and produces unwanted byproducts, such as ash. It's also available to the player somewhat later: automated assemblers aren't unlocked until several steps into the technology research system, and the player will either have to hand-craft belts themselves, or go without, until that technology is available. -This is characteristic of Pyanodons approach to difficulty and is one of the simplest examples. The result is a _very_ slow gameplay pace. Where vanilla Factorio or Space Age is expected to take tens of hours on average, Pyanodons runs are expected to take around a thousand hours. Amenities that players rely on very early in Factorio, like conveyor belt splitters, are locked behind research and production chains with tens of steps. More capable logistics technologies, like trains, are similarly delayed. The mods use this to force the player to come up with alternatives to Factorio's most common design solutions. +This is characteristic of Pyanodons approach to difficulty and is one of the simplest examples. The result is a very slow gameplay pace, where the player must stop, consider, and plan each step. Where vanilla Factorio or Space Age is expected to take tens of hours on average, Pyanodons runs are expected to take around a thousand hours. It is a meme in the Factorio community that unlocking splitters in under 40 hours means that you're speedrunning the mod, when the vanilla game can be completed entirely within that time. -Unlike baseline Factorio, Pyanodons acknowledges that the real goal is to grow the factory: its victory condition is not escape, but rather the completion of the "Pyrrhic Victory" research target, at the far end of its sprawling research system. The player's character never notionally escapes; the factory is where they'll live forever. +Unlike baseline Factorio, Pyanodons bluntly acknowledges that the real goal is to grow the factory. Tts victory condition is not escape, but rather the completion of the "Pyrrhic Victory" research target, at the far end of its sprawling research system. The player's character never notionally escapes; the factory is where they'll live forever. As with vanilla Factorio, the mod also includes several infinite research options, to give the player something to do if they've built everything they're interested in building but don't want to end the game just yet. -While Pyanodons ultimately amplifies the game's industrial excesses, it often tones down the colonial excesses. The mod pack was not designed with biters in mind, and early ammunition production is a major tax on iron-related industry. The documentation recommends turning biters off (and pollution, since it primarily serves to drive biter-related game loops and is fairly CPU-intensive for large bases). PyBlock, described below, doesn't generate biter nests by default either. +While Pyanodons ultimately amplifies the game's industrial excesses, it often tones down the colonial excesses. The mod pack was not designed with biters in mind, and early ammunition production is a major tax on iron-related industry. The documentation recommends turning biters off (and pollution, since it primarily serves to drive biter-related game loops and is fairly CPU-intensive for large bases). PyBlock, described below, doesn't generate biter nests by default either. Without biters, the player is experiencing a pristine and morally-empty frontier, rather than one populated by native life, and while that is arguably a worse kind of colonial fantasy, it is at least a simpler one. ## PyBlock -Pyanodons is not the only increased-difficulty mod collection. An earlier set of mods, collectively known as [Angels] and [Bobs], implemented a similar set of ideas, though at a less-extreme difficulty and complexity. Players rapidly observed that Angels and Bobs allowed players to produce infinite resources (very slowly) using only water and air as inputs, which lead to the creation of the [Sea Block] mod, formalizing this idea by starting the player in an infinite ocean without any normal resources to find and challenging them to complete the game from there. (The name comes from a Minecraft mod with [a similar premise][skyblock]). +Pyanodons is not the only increased-difficulty mod collection. An earlier set of mods, collectively known as [Angels] and [Bobs], implemented a similar set of ideas, though at a less-extreme difficulty and complexity. Players rapidly observed that the Angels and Bobs mods included recipe chains that allowed players to produce infinite resources (very slowly) using only water and air as inputs. That observation lead to the creation of the [Sea Block] mod, formalizing the idea by starting the player in an infinite ocean without any normal resources to find and challenging them to complete the game from there. (The name comes from a Minecraft mod with [a similar premise][skyblock]). [Angels]: https://mods.factorio.com/user/arch666angel [Bobs]: https://mods.factorio.com/user/bobingabout [Sea Block]: https://mods.factorio.com/mod/SeaBlock [skyblock]: https://skyblock.net -PyBlock takes the same observation and applies it to Pyanodons, instead of Angels and Bobs. The player is dropped into an open ocean or on a lonely and resource-minimal island with a small collection of starting resources, and challenged to complete the same Pyrrhic Victory research. PyBlock is considered extremely hard even within Pyanodons' own community. To the best of the game's Discord community's knowledge, a single-digit number of people have ever fully completed it as of this writing. -PyBlock patches over some things that a normal Pyanodons run would require that are impossible to bootstrap without ores. For example, PyBlock adds early-game burner versions of several key buildings, including soil extractors and destructive distillation columns, that run slowly and inefficiently off of fuel or steam power rather than requiring electrical power, so that the player can make the resources to _set up_ their initial electrical network without having to have one already established. However, those affordances are invariably small and awkward to work with, and make difficult tradeoffs in return for being available early on. +PyBlock takes the same observation, and applies it to Pyanodons, instead of Angels and Bobs. The player is dropped into an open ocean, or on a lonely and resource-minimal island, with a small collection of starting resources, and challenged to complete the Pyrrhic Victory using only the air and seawater. PyBlock is considered extremely hard even within Pyanodons' own community. To the best of the game's Discord community's knowledge, a single-digit number of people have ever fully completed it as of this writing. ## Hard Mode -[Pyanodons Hard Mode][hard mode] is an optional additional mod to Pyanodons, usable in PyBlock, which makes it much harder for the player to automatically destroy unwanted fluids and gasses. _Many_ processes in Pyanodons produce these as byproducts: for example, washing soil to produce sand or stone also produces muddy water as a byproduct. In normal Pyanodons, you can route unused muddy water into a sinkhole to get rid of it. In Hard Mode, you can't - it has to be processed somehow. - -[hard mode]: https://mods.factorio.com/mod/pyhardmode +[Pyanodons Hard Mode][pyhardmode] is an optional additional mod to Pyanodons, usable in PyBlock, which modifies things about Pyanodons that the author thinks are too forgiving or too easy. The mod makes it much harder for the player to automatically destroy unwanted fluids and gasses, which are a common byproduct in many of Pyanodons' industrial processes. It also shrinks container inventories, modifies the energy value of fuels, and makes many other changes intended to make Pyanodons even harder. -To compensate for this, the mod adds a number of additional processes that take common fluid byproducts as inputs and _do something_ to them. The Hard Mode process for dealing with muddy water, for example, recovers some water and soil from it, though not in the ideal ratio for further washing. The excess water can then either be reused or thrown into a sinkhole freely, while the soil can be routed back into the soil-washing process' input to be processed again. +[pyhardmode]: https://mods.factorio.com/mod/pyhardmode -Hard mode also makes several changes to container sizes, logistics, power generation, and resource processing, all with the aim of making the already-quite-difficult Pyanodons mods even more challenging. +However, rather than merely restricting the player more and calling it a day, Py Hard Mode adds its own twist to those restrictions. Rather than preventing the player from disposing of muddy water, for example, it asks the player to find and set up additional processes to consume muddy water, which then have their own outputs, and so on. ## Goals -I'm not personally aware of anyone completing a Pyblock Hard Mode run. I'm not at all convinced _I'm_ going to complete the game this way - and that's not my goal. Instead, I want a project I can tinker with when I'm bored, and which will motivate me to write more. I also want to climb this particular virtual mountain more or less "because it's there." +I will be journalling a PyBlock Hard Mode run more or less whenever the whim takes me. I'm going to do my best to document the most important steps and observations along the way. This won't be a guide or a spoiler, but the lessons I learn about the game will be documented as clearly as I can, in the hopes of helping others through the mod, and I won't be marking spoilers. -I will be journalling a Pyblock Hard Mode run more or less whenever the whim takes me. I'm going to do my best to document the most important steps and observations along the way. This won't be a guide or a spoiler, but the lessons I learn about the game will be documented as clearly as I can in the hopes of helping others through the mod, and I won't be marking spoilers. +I'm not personally aware of anyone completing a Pyblock Hard Mode run. I'm not at all convinced I'm going to complete the game this way, either - and that's not my goal. Instead, I want a project I can tinker with when I'm bored, and which will motivate me to write more. I also want to climb this particular virtual mountain more or less "because it's there." I'll be playing with a few optional "quality of life" mods to take the edge off the parts of Py Hard Mode that I find the least interesting. The key ones are: @@ -103,7 +100,7 @@ I'll be playing with a few optional "quality of life" mods to take the edge off I may add or remove mods as I go. -I'll be using the Pyblock Classic start, which places the player on a single tile of foundation. There's no starting island, and there are no ore patches to harvest. Any resources I will need will either need to come from the seawater, be gathered out of the air, or collected from the litter floating on the ocean's surface. +I'll be using the _PyBlock Classic_ start, which places the player on a single tile of foundation. There's no starting island, and there are no ore patches to harvest. Any resources I will need will either need to come from the seawater, be gathered out of the air, or collected from the litter floating on the ocean's surface. I'll be preserving the crashed ship from the game start. Even the most grotesque industrial excesses needs a human touch somewhere. diff --git a/content/pyblock/stranded/ash-separation.png b/content/pyblock/stranded/ash-separation.png Binary files differnew file mode 100644 index 0000000..30cceda --- /dev/null +++ b/content/pyblock/stranded/ash-separation.png diff --git a/content/pyblock/stranded/early-molecular-decohesion.png b/content/pyblock/stranded/early-molecular-decohesion.png Binary files differnew file mode 100644 index 0000000..5daed91 --- /dev/null +++ b/content/pyblock/stranded/early-molecular-decohesion.png diff --git a/content/pyblock/stranded/index.md b/content/pyblock/stranded/index.md index 8f8cbb0..f51df80 100644 --- a/content/pyblock/stranded/index.md +++ b/content/pyblock/stranded/index.md @@ -1,7 +1,6 @@ --- title: Stranded -date: 2026-01-01T16:30:39-05:00 -draft: true +date: 2026-01-02T16:39:39-05:00 --- "You have crashed on a planet almost completely covered in water." @@ -10,9 +9,9 @@ draft: true  -That's where the game begins. With the settings I've chosen, and the mods I have installed, we're stuck on a single tile, floating in the endless ocean. There's some driftwood, seaweed, and fish, and we're near the wreck of a crashed spaceship - which has some starting supplies in it, but is otherwise an inert lump. +That's where the game begins. With the settings I've chosen, and the mods I have installed, I'm stuck on a single tile, floating in the endless ocean. There's some driftwood, seaweed, and fish, and I'm near the wreck of a crashed spaceship, which has some starting supplies in it. -It's pretty entertaining to me to see the graphics of thrown-up dirt from its crash, since it crashed in water. I don't expect Pyanodons' maintainers to change that graphic, though, and we'll put some landfill under it eventually to make it look a bit better. +It's pretty entertaining to me to see all the thrown-up dirt attached to the crashed ship graphic, since the ship has crash-landed in water this time and not on land. I don't expect Pyanodons' maintainers to change that graphic, though, and we'll put some landfill under it eventually to make it look a bit better. ## Taking stock @@ -31,13 +30,13 @@ Taking the items in the crashed ship into account, my starting inventory consist * 250 stone. * 1 wood. * 200 logs. -* On1 wind turbine, which can output around half a megawatt but fluctuates wildly. +* 1 wind turbine, which can output around half a megawatt but fluctuates wildly. * 500 copper plates. * 1,000 iron plates. -Some of those items are only accessible by placing landfill in order to walk closer to parts of the ship, but landfill is recoverable so that's the first thing I do. +Some of those items are only accessible by placing landfill in order to walk closer to parts of the ship, but landfill is recoverable in Factorio 2.0, so the first thing I do is walk over and empty out the ship, ripping up the landfill as I return. -The floating debris includes logs, seaweed, and fish - none of which spoil, so they're all worth gathering. In principle items can float on the ocean's surface indefinitely, but they move around randomly, and since distant chunks are unloaded to keep CPU time under control, nearby debris will slowly disappear from the game as it moves into chunks that are too far away for me to reach. It all reappears if I move close, but that requires landfill. +The floating debris includes logs, seaweed, and fish. Unlike vanilla, fish don't spoil, and I know from past experience that all three resources will be important soon, so I grab anything within reach. In principle, items can float on the ocean's surface indefinitely, but they move around randomly, and since distant chunks are unloaded to keep CPU time under control, the quasi-Brownian motion of the nearby debris will slowly cause it to all end up in inactive chunks, inaccessible until I build near enough to release it. The mod's goal, eventually, is completing the Pyrrhic Victory research: @@ -52,8 +51,8 @@ I have the ability to make a few basic supplies, if I have the resources to do s * Mechanical inserters, which are very slow but require no fuel or power to operate. * Small power poles. * Pipes and underground pipes. -* Construction drones. -* Stone bricks. I'll need a furnace, though - I can't make them by hand. +* Construction drones, which require intermediate products I can't make yet. +* Stone bricks. I can only make them in a furnace. * Landfill. * Boilers and steam engines. * Burner mining drills. @@ -64,18 +63,18 @@ I have the ability to make a few basic supplies, if I have the resources to do s * Soil, either from water or from muddy water. That needs a Washer. * Raw coal, from something called a Fawogae mushroom. That needs a destructive distillation column. * Rocks and sand, from soil, in a washer. This produces muddy water as a byproduct. -* Coal, coal gas, tar, and iron oxide, from wood in a disillation column. -* Spore collectors and fawogae plantations. +* Coal, coal gas, tar, and iron oxide, from wood in a distillation column. +* Spore collectors and Fawogae plantations. * Planter boxes. * Wood, from logs. -I have access to a trigger technology, "Early Molecular Decohesion," which will be unlocked automatically if I make 50 raw coal. +I have access to a trigger technology, Early Molecular Decohesion, which will be unlocked automatically if I make 50 raw coal. ## Immediate problems -If I use up my starting resources without building a way to make more of them, then that's it - the game is effectively over. Fuel is particularly worrying right now, as nearly everything I could be building is either powered by an internal burner, or is steam-powered. The major exception is Fawogae plantations, which are electric, but that just means burning things somewhere else. However, running out of wood, iron, copper, or stone would all be problems, and running out of landfill would force me to timeshare whatever foundation I already have. +If I use up my starting resources without building a way to make more of them, then that's it - the game is effectively over. Fuel is particularly worrying right now, as nearly everything I could be building is either powered by an internal burner, or is steam-powered and requires a fuel-powered boiler to supply it with that steam. The major exception is Fawogae plantations, which are electric, and which can be powered with the single wind turbine in my inventory. Running out of wood, iron, copper, or stone would all be problems, and running out of landfill would force me to timeshare whatever foundation I already have. -The trigger technology suggests that the fuel I should be using is raw coal, made from Fawoge. However, I can't make Fawogae mushrooms without two things: +The trigger technology suggests that the fuel I should be using is raw coal, made from Fawogae. However, I can't make Fawogae mushrooms without two things: * Soil, to make a Fawogae plantation, and * Spores, from a spore collector. @@ -84,7 +83,7 @@ A spore collector requires a whopping 50 bricks, which will require roasting nea We have no other fuel, so we'll be running the furnace with wood. To make the best possible use of my resources, I'm going to avoid moving the furnace once it's placed, at least until I have Fawogae-based coal synthesis going, to avoid losing the buffered heat energy. -Making more foundation will require stone, and sand. The initial 1,000 foundation will go quickly - that's only about a 30x30 square. +Making more foundation will require stone, and sand. The initial 1,000 foundation will go quickly. That's enough for about a 30x30 square, which is tiny by the standards of vanilla Factorio and even more cramped with Pyanodons' larger buildings. ## Wood as fuel @@ -95,65 +94,75 @@ Wood comes in two forms right now: Logs can be broken down into wood by hand, at a 1:5 ratio (four logs creates twenty wood). That means that a log is worth 10 MJ when cut up, as opposed to the 4 MJ it's worth as-is. We'll be using wood, not logs, for our initial fuel. -Converting wood into coal would raise the energy of the fuel back to 4 MJ per coal, using ten wood to make ten coal - effectively doubling the energy of the fuel, minus the energy needed to perform the converstion. However, the process generates coal gas and tar, and I have no way of dealing with those byproducts yet. Using the burner distillation columns I have would also mean that the process would consume more than 10% of the additional energy generated. +Converting wood into coal would raise the energy of the fuel back to 4 MJ per coal, using ten wood to make ten coal. This would effectively double the energy of the fuel, minus the energy needed to perform the converstion. However, the process generates coal gas and tar, and I have no way of dealing with those byproducts yet. Using the burner distillation columns I have would also mean that the process would consume around 10% of the additional energy generated. ## Getting to work First, I expand the starting platform to give me some room to work. In the resulting space, I set up the furnace and feed it 100 stone, along with some wood to fuel it. While that bakes I collect sea litter for future use. Once it's done, I assemble them into a spore collector. -Since I'll need soil for Fawogae plantations, for stone washing, _and_ for sand washing, the next item on the list is a starter soil extraction plant. They're large, and require input steam (for power) as well as water, but they can directly output into a chest. That's a good use for my starting chests, at least until I figure out how I want stone and sand production laid out. The soil extractor gets its own tiny, hand-fed steam boiler for now as well: consolidated and centralized power production requires more space and makes navigating around the place harder - pipes are completely impassible. +Since I'll need soil for Fawogae plantations, for stone washing, and for sand washing, the next item on the list is a starter soil extraction plant. They're large, and require input steam (for power) as well as water, but they can directly output into a chest. That's a good use for my starting chests, at least until I figure out how I want stone and sand production laid out. The soil extractor gets its own tiny, hand-fed steam boiler for now as well: centralized steam power production requires pipes for distribution. Stone and sand are next - but they produce muddy water as a byproduct. It's clear enough how to deal with that, as there's a washer recipe immediately available that separates muddy water into soil and water. Somewhat arbitrarily, I decide to use a single plant to capture the output of both soil and sand processing. For now, the water output of muddy water separation goes back into the ocean: I lack any good way to balance it with water pulled up by pumps. -Washers, like most Factorio buildings and distinctly unlike soil extractors, require inserters to output their solid products. Fortunately, sand and stone production only have the one product, but the limited throughput of mechanical inserters motivates me to use two, bent inserters, dumping the products into dedicated chests. Their inputs will be hand-fed for now. +Washers, like most Factorio buildings and distinctly unlike soil extractors, require inserters to output their solid products. Fortunately, sand and stone production only have the one product, but the limited throughput of mechanical inserters motivates me to use bent inserters, dumping the products into dedicated chests. Their inputs will be hand-fed for now. -Somewhat unexpectedly, outfall vents - which is what dumps excess water - require power. This is a Py Hard Mode thing; the equivalent Sinkhole in Pyanodons is free to operate. I have a free wind turbine, so I'll use that for now - but we'll need an actual generator soon. +Somewhat unexpectedly, outfall vents - which is what dumps excess water - require power. This is a Py Hard Mode change: the equivalent in Pyanodons is sinkholes, which are free to operate. I have a free wind turbine, so I initially set it up near the outfall, but we'll need an actual generator soon.  -This design is not on-ratio. The two soil-washing plants produce more muddy water than the muddy water separation plant can process. However, it works well enough: backlogs of muddy water cause stone and sand production to slow down until the muddy water is process, and then business goes on. +This design is not on-ratio. The two soil-washing plants produce more muddy water if they're both running than the muddy water separation plant can process. However, it works well enough: backlogs of muddy water cause stone and sand production to slow down until the muddy water is processed, rather than clogging entirely. -The resulting setup means I have a supply of bricks and landfill available, as well as soil for a Fawogae plantation. However, it requires steady feeding with fuel. I've been running log-positive because of the profusion of driftwood, but that supply is very finite and will not last me forever. I need renewable fuel, and soon. +This setup gives me a supply of everything I need to make bricks, landfill, and a Fawogae plantation. However, it requires steady feeding with fuel, and the only fuel I have right now is my starting supply of logs. I've collected more logs from the water than I've used so far, but the supply of driftwood is very finite, and will not last me forever. I need renewable fuel, quickly. ## Storage limitations -I almost immediately encountered another Py Hard Mode change. Pyanodons uses vanilla Factorio's container sizes for chests and boxes. Py Hard Mode reduces the stack count dramatically. Wooden chests have four inventory slots. My very finite supply of iron chests each have eight slots. Digging around in recipe book shows that steel chests have been reduced to 20 slots. +I almost immediately encountered another Py Hard Mode change. Pyanodons uses vanilla Factorio's container sizes for chests and boxes. Py Hard Mode reduces the stack count dramatically: wooden chests have four inventory slots. My very finite supply of iron chests each have eight slots. Digging around in Recipe Book shows that steel chests have been reduced to 20 slots. ## Fawogae -Fawogae mushrooms can be made into raw coal by destructive distillation, and I started the game with all of that unlocked. The basic cycle is raw coal into steam to power a spore collector, spores from the spore collector into plantations to make Fawogae, and Fawogae into a distillation column to make raw coal. When this whole process is also running on its own output, it additionally makes ash, since - unlike wood - raw coal produces ash when burned. +Fawogae mushrooms can be made into raw coal by destructive distillation, and I started the game with all of the required industrial processes unlocked. The basic cycle is: -Fawogae plantations initially run _very_ slowly - and won't run at all until you already have a Fawogae mushroom to install in its module slots. This is a recurring motif with agricultural recipes in Pyanodons: the final product also acts like a module, and is necessary for further production. Fawogae's bootstrap mushroom can be made by hand, though: it only requires spores, soil, and an empty planter box. With that one mushroom, it takes around seven minutes for a plantation to make a batch, but each batch is seven more mushrooms, so the plantation quickly converges to the 100 second base time of the recipe. Future plantations can use the harvest from another plantation to skip the bootstrap step. +* Convert any fuel (eventually, raw coal) into steam to power a spore collector; +* Use the spores from the spore collector to seed plantations making Fawogae mushrooms; and +* Feed the resulting Fawogae mushrooms into a distillation column to make raw coal. -Fawogae plantations require power, and I don't really feel ready to set up even a simple power grid, so I relocated the wind turbine to run the plantation. I'll have to relocate it back if I want to make more sand or stone. Making a more capable power grid will require at least some logs and copper, and I'm trying not to burn through my starting supplies of either one too quickly. +When this whole process is also running on its own output, it additionally makes ash, since - unlike wood - raw coal produces ash when burned. + +However, Fawogae plantations won't run until their module slots are populated with Fawogae mushrooms - meaning that you need at least one existing mushroom to make more mushrooms. This is a recurring design motif for agriculture in the Pyanodons mod, and Fawogae is my introduction to it. In this case, the solution is to craft a single Fawogae mushroom using a bootstrap hand-crafting recipe, and to use that to start the process of growing more mushrooms. The first batch of plantation mushrooms takes around seven minutes, but subsequent batches take 100 seconds and can be used to seed further plantations. + +Fawogae plantations also require power, and I don't really feel ready to set up even a simple power grid with the resources I have. Instead, I relocate the wind turbine to run the plantation. I'll have to relocate it back to the soil processing area when I want to make more sand or stone, since without power the outflow can't dispose of the excess water. Making a more capable power grid will require at least some logs and copper, and I'm trying not to burn through my starting supplies of either one too quickly. This process becomes self-sustaining, but for the electricity, very quickly. Fawogae mushrooms make raw coal at a 2:5 ratio, and (with Py Hard Mode) each piece of raw coal is a 1.5 MJ fuel source, which can be fed back into power the spore collector and raw coal distillation processes with enough excess to run other things.  -At this point, we have an unlimited supply of two things: raw coal for fuel, and landfill (via sand and stone). Making raw coal also gets us through the Early Molecular Decohesion technology quickly. However, we also have a new problem: _ash_. +At this point, I have a functionally unlimited, if slow, supply raw coal for fuel, and stone, sand, and landfill. Making raw coal also unlocks the Early Molecular Decohesion technology quickly. -Most fuels in Pyanodons produce some kind of byproduct when they're burned. For early-game fuels, that byproduct is ash. Wood and logs burn "clean," but they're the exception and not the rule. Ash stacks to 1,000 items, so it doesn't need to be removed immediately, but anything that burns ashy fuel will eventually stop running if its ash storage fills up. Py Hard Mode amplifies this problem by reducing the fuel value of most early-game raw fuels, meaning that generating power produces more ash than it would in Pyanodons. +However, burning raw coal gives me a new problem to solve: ash management. Most fuels in Pyanodons produce some kind of byproduct when they're burned. For early-game fuels, that byproduct is ash. Wood and logs produce no ash when burned, but they're the exception and not the rule, and in any case I don't want to burn too much of my starting wood supply. Ash stacks to 1,000 items, so it doesn't need to be removed from burners immediately, but anything that burns ashy fuel will eventually stop running if its ash storage fills up. Py Hard Mode amplifies this problem: raw coal's fuel value is cut so that processes burn nearly three times as much of it, and each raw coal burned produces a unit of ash. ## Unlocks -The Early Molecular Decohesion technology lets me make a second product out of Fawogae mushrooms: iron ore, in the Mk 00 Atomizer building also unlocked by the technology. + + +The Early Molecular Decohesion technology lets me make a second product out of Fawogae mushrooms: iron ore, in the Mk 00 atomizer building also unlocked by the technology. + +It also unlocks shunt inserters, which are cheaper to build than mechanical inserters and which operate slightly faster, but which also require a steam connection to power them. This constraint means I won't be using them much - I rely on Inserter Configuration's support for 90° bent inserters, while shunt inserters' steam passthrough runs perpendicular to their normal operating direction. I can use one or the other, but not both, and it's not quite worth using different inserters for different roles given the infrastructure cost of more steam pipes. -It also unlocks shunt inserters, which are cheaper to build than mechanical inserters but require a steam power connection. This constraint means I won't be using them much - I rely on Inserter Configuration's support for 90° bent inserters, while shunt inserters' steam passthrough runs perpendicular to their normal operating direction. I can use one or the other, but not both, and it's not quite worth using different inserters for different roles given the infrastructure cost of more steam pipes. +Unlocking Early Molecular Decohesion gives me access to a second trigger technology: Ash Separation. That technology will unlock automatically when I've made 200 units of ash - a process that takes next to no time given the rate at which I burn fuel right now. In point of fact, I unlocked it in the background, while writing up the Early Molecular Decohesion technology. -Finally, it unlocks a second trigger technology: Ash Separation. That technology will unlock itself when we've made 200 units of ash - a process that takes next to no time, as feeding raw coal into the steam boilers powering things on this platform consumes it very quickly, making ash at a 1:1 ratio. + -Ash Separation unlocks the Mk 00 solid separator, which can separate ash into soot, coal dust, and iron oxide. Iron oxide smelts into iron plates at a 2:1 ratio, but each run of ten ash only produces one iron oxide 5% of the time, so it's not a reliable source of iron in the long run - just a byproduct that needs to be handled. Coal dust is an alternate fuel, with the same 1.5 MJ fuel value as raw coal. Soot is the valuable output. +Ash Separation, in turn, unlocks the Mk 00 solid separator, which can separate ash into soot, coal dust, and iron oxide. Iron oxide smelts into iron plates at a 2:1 ratio, but each run of ten ash only produces one iron oxide 5% of the time, so it's not a reliable source of iron in the long run - just a byproduct that needs to be handled. Coal dust is an alternate fuel, with the same 1.5 MJ fuel value as raw coal. -Ash Separation also unlocks two soot processing recipes. One produces a spread of resources - ores for iron, copper, zinc, lead, aluminum, and nickel, at a random distribution weighted towards iron and copper. The other, however, produces eight copper ore per ten soot, plus a distribution of the other metals. This recipe is, for now, the only way we have of obtaining copper ore. +Soot is the valuable output. Ash Separation unlocks two soot processing recipes. One produces a spread of resources - ores for iron, copper, zinc, lead, aluminum, and nickel, at a random distribution weighted towards iron and copper. The other, however, produces eight copper ore per ten soot, plus a distribution of the other metals. This recipe is, for now, the only way we have of obtaining copper ore. -Ash Separation unlocks the circuit network, which we haven't yet been using, and a new intermediate: air core inductors, which are made from an iron stick and eight copper cables. They aren't used for anything, yet. +Ash Separation also unlocks the circuit network, which we haven't yet been using, and a new intermediate: air core inductors, which are made from an iron stick and eight copper cables. They aren't used for anything, yet. -Finally, Ash Separation unlocks access to the Automation science pack trigger technology, which requires making ten copper plates. +Unlocking Ash Separation gives me access to the final introductory trigger technology: Automation science packs, which will unlock once I've crafted ten copper plates. ## Final situation -Out of our starting resources, I have 512 iron plates, 426 copper plates, and 254 logs remaining. The surplus of logs is from harvesting driftwood, which is starting to become scarce near our platform. +Out of my starting resources, I have 512 iron plates, 426 copper plates, and 254 logs remaining. The surplus of logs is from harvesting driftwood, which is starting to become scarce near our platform. In addition to the logs, I've collected a small supply of fish and seaweed. @@ -161,6 +170,6 @@ I now have an unlimited supply of raw coal, which is a versatile, if inefficient I now have an unlimited supply of sand and stone. However, disposing of the muddy water byproduct requires moving our wind turbine around to power the outflow temporarily. This also means I have an unlimited supply of landfill with which to expand the platform. -I now have an unlimited, if slow, supply of Fawogae mushrooms. I'm going to need a _lot more_ Fowagae production to meet my immediate needs, however: a single plantation is only sufficient to provide a trickle of fuel. +I now have an unlimited, if slow, supply of Fawogae mushrooms. I'm going to need a lot more Fowagae production to meet my immediate needs, however: a single plantation is only sufficient to provide a trickle of fuel. Walkability on the platform is an issue already, but it won't be solved until I can make a lot more foundation. diff --git a/static/fonts/eb-garamond/EBGaramond-Bold.ttf b/static/fonts/eb-garamond/EBGaramond-Bold.ttf Binary files differnew file mode 100644 index 0000000..c7f629e --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-Bold.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-BoldItalic.ttf b/static/fonts/eb-garamond/EBGaramond-BoldItalic.ttf Binary files differnew file mode 100644 index 0000000..6df3637 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-BoldItalic.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-ExtraBold.ttf b/static/fonts/eb-garamond/EBGaramond-ExtraBold.ttf Binary files differnew file mode 100644 index 0000000..74b8274 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-ExtraBold.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-ExtraBoldItalic.ttf b/static/fonts/eb-garamond/EBGaramond-ExtraBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..a2e13f9 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-ExtraBoldItalic.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-Italic-VariableFont_wght.ttf b/static/fonts/eb-garamond/EBGaramond-Italic-VariableFont_wght.ttf Binary files differnew file mode 100644 index 0000000..9cb1376 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-Italic-VariableFont_wght.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-Italic.ttf b/static/fonts/eb-garamond/EBGaramond-Italic.ttf Binary files differnew file mode 100644 index 0000000..231d7e9 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-Italic.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-Medium.ttf b/static/fonts/eb-garamond/EBGaramond-Medium.ttf Binary files differnew file mode 100644 index 0000000..e9e3b1e --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-Medium.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-MediumItalic.ttf b/static/fonts/eb-garamond/EBGaramond-MediumItalic.ttf Binary files differnew file mode 100644 index 0000000..7027943 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-MediumItalic.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-Regular.ttf b/static/fonts/eb-garamond/EBGaramond-Regular.ttf Binary files differnew file mode 100644 index 0000000..fd54ab4 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-Regular.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-SemiBold.ttf b/static/fonts/eb-garamond/EBGaramond-SemiBold.ttf Binary files differnew file mode 100644 index 0000000..3202ac5 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-SemiBold.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-SemiBoldItalic.ttf b/static/fonts/eb-garamond/EBGaramond-SemiBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..e297855 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-SemiBoldItalic.ttf diff --git a/static/fonts/eb-garamond/EBGaramond-VariableFont_wght.ttf b/static/fonts/eb-garamond/EBGaramond-VariableFont_wght.ttf Binary files differnew file mode 100644 index 0000000..baf64b2 --- /dev/null +++ b/static/fonts/eb-garamond/EBGaramond-VariableFont_wght.ttf diff --git a/static/fonts/eb-garamond/OFL.txt b/static/fonts/eb-garamond/OFL.txt new file mode 100644 index 0000000..132cf64 --- /dev/null +++ b/static/fonts/eb-garamond/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2017 The EB Garamond Project Authors (https://github.com/octaviopardo/EBGaramond12)
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+https://openfontlicense.org
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/static/fonts/eb-garamond/font.css b/static/fonts/eb-garamond/font.css new file mode 100644 index 0000000..db7773b --- /dev/null +++ b/static/fonts/eb-garamond/font.css @@ -0,0 +1,27 @@ +@font-face { + font-family: 'EB Garamond'; + font-style: normal; + font-weight: normal; + src: url('./EBGaramond-Regular.ttf'); +} + +@font-face { + font-family: 'EB Garamond'; + font-style: normal; + font-weight: bold; + src: url('./EBGaramond-Bold.ttf'); +} + +@font-face { + font-family: 'EB Garamond'; + font-style: italic; + font-weight: normal; + src: url('./EBGaramond-Italic.ttf'); +} + +@font-face { + font-family: 'EB Garamond'; + font-style: italic; + font-weight: bold; + src: url('./EBGaramond-BoldItalic.ttf'); +} diff --git a/static/site.css b/static/site.css index 7596124..9cbf25d 100644 --- a/static/site.css +++ b/static/site.css @@ -1,9 +1,11 @@ +@import "./fonts/eb-garamond/font.css"; + body { max-width: 35em; margin-left: auto; margin-right: auto; - font-family: Baskerville, serif; - font-size: 14pt; + font-family: 'EB Garamond', Garamond, serif; + font-size: 16pt; } pre { |
