v50 Steam/Premium information for editors
  • v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
  • Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.

Editing User:SL/Logic Gates

Jump to navigation Jump to search

Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.


The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
This page may contain references to bugs in older versions of DF which no longer exist, for example catastrophic overflowing. I haven't messed with these in DF recently, but pumps shouldn't pump water up to their own z-level anymore.
 
 
I'm pondering borg logic gates here as of 2/15/2010: http://dwarffortresswiki.org/index.php/User:SL/Borg_Logic_Gates
 
 
 
This includes:
 
This includes:
 
* [[#NOT_gate|NOT]], [[#AND_gate|AND]], [[#OR_gate|OR]], and [[#XOR_gate|XOR gates]]. [[#NOR_gate|NOR]] and [[#NAND_gate|NAND gates]] have single-sentence instructions, since you can build them by changing one pressure plate in an OR or AND gate, respectively.
 
* [[#NOT_gate|NOT]], [[#AND_gate|AND]], [[#OR_gate|OR]], and [[#XOR_gate|XOR gates]]. [[#NOR_gate|NOR]] and [[#NAND_gate|NAND gates]] have single-sentence instructions, since you can build them by changing one pressure plate in an OR or AND gate, respectively.
Line 38: Line 34:
 
* '''[[#Repeater|Repeater]]''': ENABLE input hooked to AND gate's output. First output hooked to checkerboard black square spikes. Second input hooked to checkerboard white square spikes.
 
* '''[[#Repeater|Repeater]]''': ENABLE input hooked to AND gate's output. First output hooked to checkerboard black square spikes. Second input hooked to checkerboard white square spikes.
 
* '''Checkerboard patterned spikes:'''
 
* '''Checkerboard patterned spikes:'''
** Black squares: All hooked to repeater's first output.
+
* * Black squares: All hooked to repeater's first output.
** White squares: All hooked to repeater's second output.
+
* * White squares: All hooked to repeater's second output.
 
* Note: Spikes take about twice as long as hatches or doors to respond to signals. Bridges are also slow. (I haven't tried floodgates, since doors are fast)
 
* Note: Spikes take about twice as long as hatches or doors to respond to signals. Bridges are also slow. (I haven't tried floodgates, since doors are fast)
 
 
 
Demonstration of one repeater hooked to both spikes and hatches, showing the speed difference etc: http://mkv25.net/dfma/movie-281-repeaterinaction
 
Demonstration of one repeater hooked to both spikes and hatches, showing the speed difference etc: http://mkv25.net/dfma/movie-281-repeaterinaction
 
+
 
==What you need to make these==
 
==What you need to make these==
 
These gates use water for computing, but input and output signals are mechanical in nature (linked pressure plates etc). They require power and are constructed on top of (ideally) a murky pool, (non-pressurized) dwarf-made cistern, river, stream, brook, or aquifer. Each one uses one or two pumps only, so the power requirements are small.
 
These gates use water for computing, but input and output signals are mechanical in nature (linked pressure plates etc). They require power and are constructed on top of (ideally) a murky pool, (non-pressurized) dwarf-made cistern, river, stream, brook, or aquifer. Each one uses one or two pumps only, so the power requirements are small.
Line 56: Line 52:
 
* Refilling a pool to 7/7 from another water source is (usually) safe.
 
* Refilling a pool to 7/7 from another water source is (usually) safe.
 
* Running a pump on top of a pool which is connected to a water source is, however, NOT safe.
 
* Running a pump on top of a pool which is connected to a water source is, however, NOT safe.
 +
* Even though the pump's output is surrounded by walls, it WILL result in a catastrophic overflow (Let's call it a "superflood"): If all the water in the pool is 7/7 and the tile above it also fills up to 7/7, it seems to cause the water around the pump's output (even though it is walled in) to create water above itself if it is below the pump's z level. This expands in a circle (if there's no terrain, walls, etc, in the way), generating water until the all accessible tiles (without going above the pump's z level) are filled with water. Even worse is that shutting off the connection to the original water source (river, etc) will not stop the flooding! Somehow this turns your pump into an unlimited water generator. Shutting off the power to the pump or blocking the input with a hatch appears to stop the infinite water generation, however. A safety pressure plate (NOT walled in) built next to the gate, linked to the input hatch and set to water 0-0 will serve to arrest any superflood in the very early stages, but once the water evaporates it will open the hatch, and it will likely begin flooding again for a second or two if you haven't taken measures to prevent it.
 
* If you want to build gates on murky pools or dwarf-made cisterns, the best thing to do is to provide a means of disabling all the gates remotely (lever linked to gear assemblies between the gates and power, for instance), and provide a connection to an infinite source (river, brook, aquifer, or the like) via a floodgate which is controlled by another lever. Disable your gates prior to refilling, then open the floodgate to refill, then close the floodgate to disconnect the pool from the water source, and only then re-enable the gates. The pressurization and overflow problem can (theoretically) only occur on a murky pool if something refills the pool while there is water in the logic gates (But I'm not 100% certain about that).
 
* If you want to build gates on murky pools or dwarf-made cisterns, the best thing to do is to provide a means of disabling all the gates remotely (lever linked to gear assemblies between the gates and power, for instance), and provide a connection to an infinite source (river, brook, aquifer, or the like) via a floodgate which is controlled by another lever. Disable your gates prior to refilling, then open the floodgate to refill, then close the floodgate to disconnect the pool from the water source, and only then re-enable the gates. The pressurization and overflow problem can (theoretically) only occur on a murky pool if something refills the pool while there is water in the logic gates (But I'm not 100% certain about that).
 
* Make sure your refiller's source (pumps are sources, or a water source if it's directly connected to it without pumps) is on the same z level as the pool, or you will likely cause a castastrophic overflow even if you don't have any gates on top of it.
 
* Make sure your refiller's source (pumps are sources, or a water source if it's directly connected to it without pumps) is on the same z level as the pool, or you will likely cause a castastrophic overflow even if you don't have any gates on top of it.
Line 124: Line 121:
 
  #H@>D^B.#
 
  #H@>D^B.#
 
  ######B##
 
  ######B##
      ###
+
    ###
  
 
====Details====
 
====Details====
Line 194: Line 191:
 
* * If the first input is ON, the left bridge will be raised (blocking), the right door will be open, and the left door will be closed. Water can not reach the drain.
 
* * If the first input is ON, the left bridge will be raised (blocking), the right door will be open, and the left door will be closed. Water can not reach the drain.
 
* * If the second input is ON, the right bridge will be raised (blocking), the left door will be open, and the right door will be closed. Water can not reach the drain.
 
* * If the second input is ON, the right bridge will be raised (blocking), the left door will be open, and the right door will be closed. Water can not reach the drain.
* * If both inputs are ON, both bridges will be raised (blocking), and both doors will be open. Water will flow through the open doors.
+
* * If both inpust are ON, both bridges will be raised (blocking), and both doors will be open. Water will flow through the open doors.
 
+
 
===NOR gate===
 
===NOR gate===
 
Identical to the OR gate, except that the pressure plate is 0-3 instead of 4-7.
 
Identical to the OR gate, except that the pressure plate is 0-3 instead of 4-7.
Line 206: Line 203:
 
* X is a floodgate which allows or disallows water entering the system. @> is a pump which draws from the west and pumps to the east.
 
* X is a floodgate which allows or disallows water entering the system. @> is a pump which draws from the west and pumps to the east.
 
* ~ is the water source. Ideally it should actually be a solid dirt/rock/whatever tile on the side of a pool/river/whatever before you start construction. You can install the floodgate first, and then dig your channel above, which will let the tile fill with water.
 
* ~ is the water source. Ideally it should actually be a solid dirt/rock/whatever tile on the side of a pool/river/whatever before you start construction. You can install the floodgate first, and then dig your channel above, which will let the tile fill with water.
* There is only one version of this, no 'faster' or 'safer' variants. (2 or more of these will increase the frequency(speed), however they have to be desynchronized)
+
* There is only one version of this, no 'faster' or 'safer' variants.
  
 
====Bottom level====
 
====Bottom level====

Please note that all contributions to Dwarf Fortress Wiki are considered to be released under the GFDL & MIT (see Dwarf Fortress Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel Editing help (opens in new window)

Template used on this page: