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.

Difference between revisions of "User:Kami/Logic gates"

From Dwarf Fortress Wiki
Jump to navigation Jump to search
Line 1: Line 1:
 
'''''ToDo'''''
 
'''''ToDo'''''
 +
== General ==
 +
 
== Key ==
 
== Key ==
 
{| style="border-spacing:0; padding:0;"
 
{| style="border-spacing:0; padding:0;"
Line 81: Line 83:
 
|[[water]]
 
|[[water]]
 
|-
 
|-
|{{RTL|#AAF|≈|#CCC||||1|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||1|#00A|left}}
|{{RTL|#AAF|≈|#CCC||||…|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||…|#00A|left}}
|{{RTL|#AAF|≈|#CCC||||7|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
 
|{{RTL|#FFF}}
 
|{{RTL|#FFF}}
 
|[[water]] depth
 
|[[water]] depth
 
|}
 
|}
== Power2trigger - converter ==
+
== Logic gates ==
<div style="position:relative; float:right">
+
=== Power2trigger - converter ===
 +
If you are dealing with [[mechanical logic]], you'll want to trigger something else but machine components. Currently there doesn't exist any trigger in dwarf fortress that reacts on the working state of machine components, thus power. So you'll have to convert it via pressure plates, screw pumps and fluid.
 +
<div style="position:relative; float:left;">
 
'''Z 0'''
 
'''Z 0'''
 
{| cellpadding="0" cellspacing="0" style="border-spacing:0; border-style:solid; border-width:thin; border-color:#000000;"
 
{| cellpadding="0" cellspacing="0" style="border-spacing:0; border-style:solid; border-width:thin; border-color:#000000;"
Line 120: Line 124:
 
|}
 
|}
 
</div>
 
</div>
<div style="float:right;">&nbsp;</div>
+
<div style="float:left;">&nbsp;</div>
<div style="position:relative; float:right;">
+
<div style="position:relative; float:left;">
 
'''Z-1'''
 
'''Z-1'''
 
{| cellpadding="0" cellspacing="0" style="border-spacing:0; border-style:solid; border-width:thin; border-color:#000000;"
 
{| cellpadding="0" cellspacing="0" style="border-spacing:0; border-style:solid; border-width:thin; border-color:#000000;"
Line 136: Line 140:
 
|-
 
|-
 
|{{RTL|#222}}
 
|{{RTL|#222}}
|{{RTL|#AAF|≈|#CCC||||7|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
|{{RTL|#AAF|≈|#CCC||||7|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
|{{RTL|#AAF|≈|#CCC||||7|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
|{{RTL|#AAF|≈|#CCC||||7|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
|{{RTL|#AAF|≈|#CCC||||7|#00F|left}}
+
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
 
|{{RTL|#222}}
 
|{{RTL|#222}}
 
|-
 
|-
Line 154: Line 158:
 
|}
 
|}
 
</div>
 
</div>
There doesn't exist any trigger in dwarf fortress that reacts on the working state of machine components, thus power. If you want to create trigger signals from power, you'll have to convert it via pressure plates, screw pumps and any fluid.
+
<div style="clear:left;">
 
<br />
 
<br />
 +
When power is on, the pump will suck water from the left and pump it to the right onto the pressure plate. The plate has to be set to react on 4&hellip;7 water. You can invert it to 0&hellip;2 to get an off signal instead. The pump is fast enough not to let the water level fall noteworthy below 7 while pumping. In both cases the off signal will have a delay of 100 steps. When power is off, there will be 1 unit of water left behind on the pressure plate that could evaporate eventually. So you'll make sure you can refill the water somehow.
 +
</div>
 +
<div style="position:relative; float:left;">
 +
'''Z 0'''
 +
{| cellpadding="0" cellspacing="0" style="border-spacing:0; border-style:solid; border-width:thin; border-color:#000000;"
 +
|
 +
{| cellpadding="0" cellspacing="0" style="border-spacing:0; padding:0; margin:0; vertical-align:middle;"
 +
|-
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|-
 +
|{{RTL|#222}}
 +
|{{RTL|#00A|·|#888||||3|#00A|left}}
 +
|{{RTL|#444|÷|#CCC||||3|#00A|left}}
 +
|{{RTL|#444|÷|#CCC|►|#00A|center|►|#00A|center}}
 +
|{{RTL|#00A|^|#CCC||||3|#00A|left}}
 +
|{{RTL|#222}}
 +
|-
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#AAF|≈|#CCC||||3|#00A|left}}
 +
|{{RTL|#AAF|≈|#CCC||||3|#00A|left}}
 +
|{{RTL|#AAF|≈|#CCC||||3|#00A|left}}
 +
|{{RTL|#222}}
 +
|-
 +
|{{RTL|#FFF}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|}
 +
|}
 +
</div>
 +
<div style="float:left;">&nbsp;</div>
 +
<div style="position:relative; float:left;">
 +
'''Z-1'''
 +
{| cellpadding="0" cellspacing="0" style="border-spacing:0; border-style:solid; border-width:thin; border-color:#000000;"
 +
|
 +
{| cellpadding="0" cellspacing="0" style="border-spacing:0; padding:0; margin:0; vertical-align:middle;"
 +
|-
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|-
 +
|{{RTL|#222}}
 +
|{{RTL|#AAF|≈|#CCC||||7|#00A|left}}
 +
|{{RTL|#222}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|-
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#222}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|-
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|{{RTL|#FFF}}
 +
|-
 +
|}
 +
|}
 +
</div>
 +
<div style="clear:left;">
 +
<br />
 +
If you have no access to unlimited water, you'll have to avoid evaporation. This one is harder to create. You have to fill it to the exact water level. Set the plate to 5&hellip;7 respectively 0&hellip;3.
 +
</div>

Revision as of 16:09, 14 December 2009

ToDo

General

Key

any tile
floor
no floor
wall
·
channel
door
X
flood gate
*
gear assembly
ramp
^
pressure plate (reacting on water)
÷
÷
screw pump (pumping right)
water
1
7
water depth

Logic gates

Power2trigger - converter

If you are dealing with mechanical logic, you'll want to trigger something else but machine components. Currently there doesn't exist any trigger in dwarf fortress that reacts on the working state of machine components, thus power. So you'll have to convert it via pressure plates, screw pumps and fluid.

Z 0

·
÷
÷
^
·
 

Z-1

7
7
7
7
7


When power is on, the pump will suck water from the left and pump it to the right onto the pressure plate. The plate has to be set to react on 4…7 water. You can invert it to 0…2 to get an off signal instead. The pump is fast enough not to let the water level fall noteworthy below 7 while pumping. In both cases the off signal will have a delay of 100 steps. When power is off, there will be 1 unit of water left behind on the pressure plate that could evaporate eventually. So you'll make sure you can refill the water somehow.

Z 0

·
3
÷
3
÷
^
3
3
3
3
 

Z-1

7


If you have no access to unlimited water, you'll have to avoid evaporation. This one is harder to create. You have to fill it to the exact water level. Set the plate to 5…7 respectively 0…3.