Jump to content

ONIversity: [Pre-Patch] Four Key Examples to Mastering Partial Melting/Evaporating (An Introductory Flaking Guide)


Recommended Posts

Well, it looks like the end of abusing flaking is fast approaching, with the most recent update. The devs gave an official name for this mechanic, namely "Partial Melting" (solid flaking) and "Partial Evaporation" (liquid flaking). I will often refer to both of these as "Partial Phasing". 

This post walks through 4 key examples that illustrate the 4 ways we can (ab)use each mechanic. We can use partial melting/evaporation to either create heat or destroy heat (so 2 mechanics, with 2 uses, hence 4 examples). In every instance of partial melting/evaporation, the game removes 5kg from a tile and creates a phased-up version of that element next to the tile.  I like to call this a Parent-Child relationship, where the parent looses 5kg to create a phased-up version that has exactly 5kg.  In order to enable this child to appear, another cell (which we'll call the donor) must briefly be adjacent to the parent and give up some heat. As such, (ab)uses require that there is a heat source nearby as well to keep the donor cell hot enough. It is crucial that in each example we clearly identify

  1. The Parent (a solid or liquid tile that will partially melt or partially evaporate)
  2. The Child (a 5kg  liquid or gas byproduct that is a phased up version of the parent)
  3. The Donor (a tile that is at least 3C above the phase up temperature of the parent, with sufficient mass to enable partial phasing)
  4. The Heat Source (something that guarantees the donor tile has enough heat after each partial phasing event)

Rather than discuss all the equations and conditions required for partial phasing, we'll use a spreadsheet to perform all the computations. I'll put up screenshots of the spreadsheet next to each example, and then walk through how the mechanic works its magic. A detailed description of the equations and conditions is located here, if you want it.  After each example, I'll put a spoiler with links to other examples. 

Partial Melting for Heating - Creating Massive Amounts of Heat by Partially Melting a Solid Tile

We start with a regolith to magma melter. 

regolith-melter.png.06680ca7fc7b72d89e110d031782d43b.pngimage.png.14b94822b9d6ab75be3993b6fd3c135b.png

Let's identify the 4 important parts. 

  1. Parent = Large block of regolith at 300C. (SHC = 0.2)
  2. Child = 5kg chunks of magma (they are pooling at the bottom of this contraption below the carbon dioxide).
  3. Donor = 1.5kg bit of chlorine directly right of the regolith block.
  4. Heat source = The magma above the boiler, above 1550C so that the chlorine below is kept above 1517.025 (the reset temp)

The diamond tile and conveyor bridge above the chlorine help transfer tiny bits of heat to the chlorine to enable partial melting, as the donor temp must be above its reset temp.  I could have used a bit less chlorine to lower the rest temp, but this is sufficiently simple to make in sandbox. The regolith block partially melts each tick, getting us a 25kg/s flow of magma with the liquid dripping (not beading) down to the right.  Initially, I painted 2kg/tile of carbon dioxide below the chlorine. This forces the chlorine to stay at 1.5kg, and never change mass (as changing the donor mass can radically alter the reset temp).  With the magma now flowing, the carbon dioxide content is 4kg below the chlorine.  The spoiler has other uses. 

Spoiler

This is the basic principle behind abysallite flaking (recent thread here). I credit @HeatEngine for the chlorine/carbon dioxide combo, as I was just gonna use a single gas. It is way more efficient to trap the donor in one cell. Attach a dispenser on the other side (thanks @kbn), and you can refill the regolith block till you run out of regolith (is that even possible...). If only @flapee were here to see the level of abuse.

You can use this same principle to rapidly melt an ice biome, and recover 2.4C water.  You can use it on any solid, provided the donor is a gas.

Caveat - I have yet to experiment with what happens if you try to partially melt algae. I have no idea how the game deals with solids that partially melt into another solid.  Perhaps this would describe what @Sigma Cypher noted the other day with regards to an odd behavior he saw with conveyor loader sometimes dropping debris as dirt, instead of solid dirt tiles.  It would not surprise me if flaking algae resulted in dirt debris (rather than a dirt tile). 

Partial Melting for Cooling - Destroying Massive Amounts of Heat by Partially Melting a Solid Tile

We now use 20kg of hydrogen next to -41C 1000kg blocks of ice to cool 95C water down to 30C.

water-chiller.png.c8eceac8b9ff46964476aabc7e5410d2.pngimage.png.61797495b32c7664037087781f2a3497.png

  1. Parents = The 1000kg ice blocks (which decrease in mass after each partial melt) There are 2 parents here, and they take turns creating children.
  2. Child = 5kg blob of water (which quickly turns into ice debri, which you can see above the ice blocks)
  3. Donor = 20kg hydrogen (there are 40 kg total above the ice, and after the child freezes the gas evens out very quickly to 20kg/tile). 
  4. Heat Source = 95C water flowing past (could come from a geyser, or a liquid vent, or whatever).

The diamond tiles above the hydrogen, along with the tempshift plates, are there to rapidly transfer heat from the 95C water into the hydrogen.  Once one of the hydrogen tiles reaches 3C above melting (so about 2.35C), that hydrogen tile's temp resets to -236.3C (massive heat deletion). Increase the mass of the hydrogen from 20kg to 1000kg, and you freeze the water as it flows past, not just cool it. The diamond tiles on the sides of the hydrogen are there to just keep enough cool to guarantee the 5kg child freezes almost instantly. 

Spoiler

I used this mechanic to create the "Doomsday Freezer" (credit for name to @Zarquan), in the "Yet Another Borg Cube..." post.  

Partial Evaporation for Heating - Destroying Massive Amounts of Heat by Partial Evaporation of a Liquid Tile

We use a glass tile kept 3C above ethanols boiling point to evaporate 14C ethanol at 25kg/s.

 EthanolBoiler.png.26f3accde5dcf7a891966ed62e257271.png  image.png.adc29cb7dc71159689e792256ec0df4a.png

  1. Parent = Ethanol at 14C (the left chamber - it will all become gas).
  2. Child = Gaseous ethanol at 3C above evaporation, created at 25kg/s, heading upwards from the bottom middle tile at .
  3. Donor = Glass window tile (must be glass, not diamond). 
  4. Heat Source = The pool of 85C water you see to the right. 

When the 14C ethanol comes in contact with the 85C window tile, it partially evaporates at 5gk/0.2s = 25kg/s, provided the donor glass window tile can keep it's temperature above 84.862C. This is easy to accomplish with 85C water sitting next to it. In fact, even less heat is lost if the temp of the ethanol is dropped to 13.1C.  Try painting in 13C ethanol, and you'll see that the bottom bit heats up just a tad and you will boil away all the 13C ethanol with basically no heat drop from the water.  However, if you instead paint 12C ethanol, then it does not raise temp fast enough to start partial evaporation. As such, the window tile drops in heat, and no reation ever starts.  This is a great example to see what happens at the boundaries. 

Spoiler

You can find lots of massive exploits of this in the following thread.  For example, you can create a very simple crude to petro boiler, that requires zero precooling.  Couple it with a petro to sour gas boiler (partial evaporation again), and you get huge amounts of heat really fast.  The problem then becomes trying to utilize that heat (you can't build enough steam turbines to do it). Special thanks to @Zarquan for this thread, which truthfully catalyzed the last two weeks of craziness, and possibly the hoped for fix. 

 

Partial Evaporation for Cooling - Destroying Massive Amounts of Heat by Partial Evaporation of a Liquid Tile

This aquatuner setup uses 5010g of ethanol to drop the temp in an aquatuner from 100C to 90C. 

aquatuner-cooling.png.3feda16351c2e25551d1c456846bfb1d.png

image.png.bff161c79a8268acefa23bc9b753650e.png

  1. Parent = Liquid Ethanol in 5010g beads, delivered through the piping system. The temp of the parent here is almost irrelevant (the picture above shows 14C, but it could be 55C with almost not change to the setup)
  2. Child = Gaseous Ethanol (a 5kg chunk appears at just 3C above boiling point)
  3. Donor = Gaseous Ethanol (over 500kg, and very slowly rising as the child becomes part of the donor)
  4. Heat Source = The aquatuner continues to deliver heat to this system. 

Every time the temp in the aquatuner room rises above 100C, the liquid pump turns on and delivers several 5010g beads of liquid (forced into bead form by the mesh tile).  These beads then partially evaporate (leaving behind 10g which instantly vaporizes from conduction).  However, upon partially evaporating, one of the surrounding gas cells drops almost 10C in temp.  This happens several times in a few seconds (turning off the pump) and by the time the last bit of liquid falls out, the room is around 90C. So a very small amount of cool ethanol, I can keep the temp in the room between 100C and 90C indefinitely (till the vent overpressurizes at 1000kg - which would probably take over 10000 cycles....).

This exact same thing can, and does, happen in some steam turbine setups.  If the liquid volume in your pipes passes the 5010g level (so 3 turbines or more venting in the same spot), BEWARE.  You will lose massive amounts of heat if you have large pressure steam. 

Spoiler

You can also make tons of liquid hydrogen or liquid oxygen using this same principle, by controlling when the parent comes in contact with the donor with the help of a door, as shown by @Zarquan's cooling monsters. 

 

Wrap Up

Once you can identify the parent, child, donor, and heat source, learning to (ab)use partial melting and partial evaporation is just a matter of picking the correct combination of materials to meet your needs.  There are so many different combinations possible, which is what makes this mechanic so fun to play with.  

Essentially, the entire "exploit" portion that is hopefully fixed with the most recent patch stems from the ability to "reset" the temperature of something. We can still reset temps of several things in the game (critters, debris, food, and more). However, most of those we don't have the ability to pick the temp at will (though we can with debris still).  The thing that made "flaking" so bad was the ability to reset the temp from as cold as -250C, up to 3500C, at will, and then phase change materials at 25kg/s.  This was completely broken, and thankfully a fix is in the works. Play with it before July 1 (Canada Day) if you want to see the sheer game breaking power this mechanic possessed. 

Thanks @Ipsquiggle and everyone else at Klei for the rapid fix. We can let this monstrosity peacefully disappear. 

 

Link to comment
Share on other sites

On June  20, after upgrading my game to the beta branch, the partial melting examples above both still work perfectly (so regolith melting, and the hydrogen/ice freezer).  The partial evaporation contraptions definitely now use different code. @wachunga, if it sounds fun and you want to crack the new code, I'd love an update.  I may tackle this one today or tomorrow to get the new equations. 

Link to comment
Share on other sites

As you say, partial melting hasn't been addressed.

Heat conservation during partial evaporation is accurate as far as I can determine. What small errors there are, I would blame on rounding slop. The minimum donor mass seems to be determined by what causes a 10C drop in donor temp. Which could explain how the "-10" bit got into the partial evaporation equation.

Perhaps "DonorNewTemp = DonorOldTemp - 10 + (5 * ParentSHC * PhaseUpDelta) / (DonorSHC * DonorMass)" was really meant to be something like "DonorNewTemp = DonorOldTemp - Min(10, (5 * ParentSHC * PhaseUpDelta) / (DonorSHC * DonorMass))". Or however it's actually implemented.

Assuming the 10C was meant as a "no more than this amount" brings it in line with the "DonorCondensation + 6" bit from partial melting. Assuming of course that's why that bit is in partial melting, who knows! However 10C is a relative value while DonorCondensation + 6C is a fixed value so the partial melting equation needs to be slightly different.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

×
  • Create New...