<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://www.explainxkcd.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=2A0A%3AEF40%3AC2%3A3201%3A96FA%3A24C1%3A60D5%3A8A12</id>
		<title>explain xkcd - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://www.explainxkcd.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=2A0A%3AEF40%3AC2%3A3201%3A96FA%3A24C1%3A60D5%3A8A12"/>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php/Special:Contributions/2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12"/>
		<updated>2026-04-15T19:48:50Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383993</id>
		<title>3125: Snake-in-the-Box Problem</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383993"/>
				<updated>2025-08-12T07:59:37Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3125&lt;br /&gt;
| date      = August 6, 2025&lt;br /&gt;
| title     = Snake-in-the-Box Problem&lt;br /&gt;
| image     = snake_in_the_box_problem_2x.png&lt;br /&gt;
| imagesize = 359x611px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Chemistry grad students have been spotted trying to lure campus squirrels into laundry hampers in the hope that it sparks inspiration.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
This comic makes fun of the fact that many fields of math and science use analogies to help visualize complex problems. One such analogy, drawn in the comic, involves a snake on the edges of an n-dimensional hypercube, which is a real problem in graph theory called {{w|snake-in-the-box}}. In this problem, a snake is coiled around the edges of an ''n''-dimensional hypercube. No two adjacent corners of the cube can be occupied by non-consecutive parts of the snake (i.e., the snake can't come near itself). The problem involves finding the longest snake for a box of a given dimension. This problem has been solved up to an 8-dimensional cube, but remains unsolved for 9 dimensions and up. (The proper name for this problem, as stated in [https://oeis.org/A099155 OEIS A099155], is &amp;quot;Maximum length of a simple path with no chords in the n-dimensional hypercube&amp;quot; but, as the entry acknowledges, &amp;quot;snake-in-the-box problem&amp;quot; is the name commonly used for it.) Because a common way to formulate hypercubes is as a graph of N-tuples (each corner has N coordinates, each a 0 or 1 - for example, a {{w|Square|2-cube}} has vertices (0,0), (0,1), (1,0), (1,1) - and edges are drawn between vertices differing only in one coordinate), and this problem in particular pertains to connecting edges between vertices, this comic considers the problem to be an example of this phenomenon for the mathematical field of graph theory.&lt;br /&gt;
&lt;br /&gt;
The other thought experiment alluded to is {{w|Schrödinger's cat}}, which is used in quantum physics. In this thought experiment, a cat is put in a box which contains poison, a radioactive source and a {{w|Geiger counter}}. This aims to illustrate an apparent paradox in the principle of {{w|quantum superposition}} — a property of quantum mechanics in which objects can exist in two apparently incompatible states simultaneously, so long as no attempt is made to verify which state they are in. If an atom of the radioactive source decays, the poison is released, and the cat dies, tying its fate to the radioactive decay. Since radioactive decay obeys quantum mechanics, so long as the particle is not observed it will exist in a superposition of two states: decayed and not decayed. Therefore, the cat, too, may be considered to exist in a superposition of two states (alive and not alive) which appears to be absurd. The opening of the box collapses the superposition so that only one of those states remains.&lt;br /&gt;
&lt;br /&gt;
The comic jokes that these two &amp;quot;cute animal in a box&amp;quot; thought experiments are instances of a universal rule that applies to every field of study. Other fields have simply yet to &amp;quot;discover&amp;quot; their own analogies. Whether a snake counts as a &amp;quot;cute animal&amp;quot;, that would satisfy the &amp;quot;rule&amp;quot; is likely to occasion some debate.&lt;br /&gt;
&lt;br /&gt;
The title text takes this further by claiming that chemistry students have been trying to fix the lack of cute-animal-in-box thought experiments in their field by attempting to trap a squirrel with a laundry basket. This is possibly a reference to {{w|Endohedral fullerene}} complexes, where an ion or atom is caged inside a spherical structure of carbon. Those students seem to hope that it will inspire them in some way, maybe similarly to what is depicted in [[1584: Moments of Inspiration]].&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[A panel with text both above and below the illustration, with further text outside the panel below.]&lt;br /&gt;
:[In the panel, above the illustration:]&lt;br /&gt;
:A snake slithers around a hypercube. No two non-consecutive parts of its coils can be on adjacent corners.&lt;br /&gt;
:[Three small illustrations of 4-dimensional hypercubes, each with a snake slithering around its edges. Each illustration has a red line or lines indicating an edge or edges where two non-consecutive parts of the snake are on adjacent corners. Below each hypercube is a red X.]&lt;br /&gt;
:[A large illustration depicting a 4-dimensional hypercube with a snake slithering around its edges.]&lt;br /&gt;
:[Below the large illustration is text printed in green. To the left of the text is a green checkmark.]&lt;br /&gt;
:Dimensions=4&lt;br /&gt;
:Max length=7&lt;br /&gt;
:[The following text is printed in black, except for the last word &amp;quot;UNSOLVED&amp;quot; which is printed in red:]&lt;br /&gt;
:Snake(N) = Largest snake that can fit in an N-dimensional hypercube&lt;br /&gt;
:Snake(N=1, 2, 3 .. 8) = 1, 2, 4, 7, 13, 26, 50, 98&lt;br /&gt;
:Snake(N&amp;gt;8) = UNSOLVED&lt;br /&gt;
&lt;br /&gt;
:[Text outside the panel:]&lt;br /&gt;
:It turns out every scientific field has a key thought experiment that involves putting a cute animal in a weird box for no reason.&lt;br /&gt;
:So far, quantum mechanics and graph theory have found theirs, but most other fields are still working on it.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Math]]&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Animals]]&lt;br /&gt;
[[Category:Cats]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383992</id>
		<title>3125: Snake-in-the-Box Problem</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383992"/>
				<updated>2025-08-12T07:58:54Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Explanation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3125&lt;br /&gt;
| date      = August 6, 2025&lt;br /&gt;
| title     = Snake-in-the-Box Problem&lt;br /&gt;
| image     = snake_in_the_box_problem_2x.png&lt;br /&gt;
| imagesize = 359x611px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Chemistry grad students have been spotted trying to lure campus squirrels into laundry hampers in the hope that it sparks inspiration.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
This comic makes fun of the fact that many fields of math and science use analogies to help visualize complex problems. One such analogy, drawn in the comic, involves a snake on the edges of an n-dimensional hypercube, which is a real problem in graph theory called {{w|snake-in-the-box}}. In this problem, a snake is coiled around the edges of an ''n''-dimensional hypercube. No two adjacent corners of the cube can be occupied by non-consecutive parts of the snake (i.e., the snake can't come near itself). The problem involves finding the longest snake for a box of a given dimension. This problem has been solved up to an 8-dimensional cube, but remains unsolved for 9 dimensions and up. (The proper name for this problem, as stated in [https://oeis.org/A099155 OEIS A099155], is &amp;quot;Maximum length of a simple path with no chords in the n-dimensional hypercube&amp;quot; but, as the entry acknowledges, &amp;quot;snake-in-the-box problem&amp;quot; is the name commonly used for it.) Because a common way to formulate hypercubes is as a graph of N-tuples (each corner has N coordinates, each a 0 or 1 - for example, a {{w|Square|2-cube}} has vertices (0,0), (0,1), (1,0), (1,1) - and edges are drawn between vertices differing only in one coordinate), and this problem in particular pertains to connecting edges between vertices, this comic considers the problem to be an example of this phenomenon for the mathematical field of graph theory.&lt;br /&gt;
&lt;br /&gt;
The other thought experiment alluded to is {{w|Schrödinger's cat}}, which is used in quantum physics. In this thought experiment, a cat is put in a box which contains poison, a radioactive source and a {{w|Geiger counter}}. This aims to illustrate an apparent paradox in the principle of {{w|quantum superposition}} — a property of quantum mechanics in which objects can exist in two apparently incompatible states simultaneously, so long as no attempt is made to verify which state they are in. If an atom of the radioactive source decays, the poison is released, and the cat dies, tying its fate to the radioactive decay. Since radioactive decay obeys quantum mechanics, so long as the particle is not observed it will exist in a superposition of two states: decayed and not decayed. Therefore, the cat, too, may be considered to exist in a superposition of two states (alive and not alive) which appears to be absurd. The opening of the box collapses the superposition so that only one of those states remains.&lt;br /&gt;
&lt;br /&gt;
The comic jokes that these two &amp;quot;cute animal in a box&amp;quot; thought experiments are instances of a universal rule that applies to every field of study. Other fields have simply yet to &amp;quot;discover&amp;quot; their own analogies. Whether a snake counts as a &amp;quot;cute animal&amp;quot;, that would satisfy the &amp;quot;rule&amp;quot; is likely to occasion some debate.&lt;br /&gt;
&lt;br /&gt;
The title text takes this further by claiming that chemistry students have been trying to fix the lack of cute-animal-in-box thought experiments in their field by attempting to trap a squirrel with a laundry basket. This is possibly a reference to {{w|Endohedral fullerene}} complexes, where an ion or atom is caged inside a spherical structure of carbon. Those students seem to hope that it will inspire them in some way, maybe similarly to what is depicted in [[1584: Moments of Inspiration]].&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Don't remove this notice too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[A panel with text both above and below the illustration, with further text outside the panel below.]&lt;br /&gt;
:[In the panel, above the illustration:]&lt;br /&gt;
:A snake slithers around a hypercube. No two non-consecutive parts of its coils can be on adjacent corners.&lt;br /&gt;
:[Three small illustrations of 4-dimensional hypercubes, each with a snake slithering around its edges. Each illustration has a red line or lines indicating an edge or edges where two non-consecutive parts of the snake are on adjacent corners. Below each hypercube is a red X.]&lt;br /&gt;
:[A large illustration depicting a 4-dimensional hypercube with a snake slithering around its edges.]&lt;br /&gt;
:[Below the large illustration is text printed in green. To the left of the text is a green checkmark.]&lt;br /&gt;
:Dimensions=4&lt;br /&gt;
:Max length=7&lt;br /&gt;
:[The following text is printed in black, except for the last word &amp;quot;UNSOLVED&amp;quot; which is printed in red:]&lt;br /&gt;
:Snake(N) = Largest snake that can fit in an N-dimensional hypercube&lt;br /&gt;
:Snake(N=1, 2, 3 .. 8) = 1, 2, 4, 7, 13, 26, 50, 98&lt;br /&gt;
:Snake(N&amp;gt;8) = UNSOLVED&lt;br /&gt;
&lt;br /&gt;
:[Text outside the panel:]&lt;br /&gt;
:It turns out every scientific field has a key thought experiment that involves putting a cute animal in a weird box for no reason.&lt;br /&gt;
:So far, quantum mechanics and graph theory have found theirs, but most other fields are still working on it.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Math]]&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Animals]]&lt;br /&gt;
[[Category:Cats]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383991</id>
		<title>3125: Snake-in-the-Box Problem</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383991"/>
				<updated>2025-08-12T07:58:26Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Explanation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3125&lt;br /&gt;
| date      = August 6, 2025&lt;br /&gt;
| title     = Snake-in-the-Box Problem&lt;br /&gt;
| image     = snake_in_the_box_problem_2x.png&lt;br /&gt;
| imagesize = 359x611px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Chemistry grad students have been spotted trying to lure campus squirrels into laundry hampers in the hope that it sparks inspiration.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
This comic makes fun of the fact that many fields of math and science use analogies to help visualize complex problems. One such analogy, drawn in the comic, involves a snake on the edges of an n-dimensional hypercube, which is a real problem in graph theory called {{w|snake-in-the-box}}. In this problem, a snake is coiled around the edges of an ''n''-dimensional hypercube. No two adjacent corners of the cube can be occupied by non-consecutive parts of the snake (i.e., the snake can't come near itself). The problem involves finding the longest snake for a box of a given dimension. This problem has been solved up to an 8-dimensional cube, but remains unsolved for 9 dimensions and up. (The proper name for this problem, as stated in [https://oeis.org/A099155 OEIS A099155], is &amp;quot;Maximum length of a simple path with no chords in the n-dimensional hypercube&amp;quot; but, as the entry acknowledges, &amp;quot;snake-in-the-box problem&amp;quot; is the name commonly used for it.) Because a common way to formulate hypercubes is as a graph of N-tuples (each corner has N coordinates, each a 0 or 1 - for example, a {{w|Square|2-cube}} has vertices (0,0), (0,1), (1,0), (1,1) - and edges are drawn between vertices differing only in one coordinate), and this problem in particular pertains to connecting edges between vertices, this comic considers the problem to be an example of this phenomenon for the mathematical field of graph theory.&lt;br /&gt;
&lt;br /&gt;
The other thought experiment alluded to is {{w|Schrödinger's cat}}, which is used in quantum physics. In this thought experiment, a cat is put in a box which contains poison, a radioactive source and a {{w|Geiger counter}}. This aims to illustrate an apparent paradox in the principle of {{w|quantum superposition}} — a property of quantum mechanics in which objects can exist in two apparently incompatible states simultaneously, so long as no attempt is made to verify which state they are in. If an atom of the radioactive source decays, the poison is released, and the cat dies, tying its fate to the radioactive decay. Since radioactive decay obeys quantum mechanics, so long as the particle is not observed it will exist in a superposition of two states: decayed and not decayed. Therefore, the cat, too, may be considered to exist in a superposition of two states (alive and not alive) which appears to be absurd. The opening of the box collapses the superposition so that only one of those states remains.&lt;br /&gt;
&lt;br /&gt;
The comic jokes that these two &amp;quot;cute animal in a box&amp;quot; thought experiments are instances of a universal rule that applies to every field of study. Other fields have simply yet to &amp;quot;discover&amp;quot; their own analogies. Whether a snake counts as a &amp;quot;cute animal&amp;quot; &amp;lt;!-- Not really. --!&amp;gt; that would satisfy the &amp;quot;rule&amp;quot; is likely to occasion some debate.&lt;br /&gt;
&lt;br /&gt;
The title text takes this further by claiming that chemistry students have been trying to fix the lack of cute-animal-in-box thought experiments in their field by attempting to trap a squirrel with a laundry basket. This is possibly a reference to {{w|Endohedral fullerene}} complexes, where an ion or atom is caged inside a spherical structure of carbon. Those students seem to hope that it will inspire them in some way, maybe similarly to what is depicted in [[1584: Moments of Inspiration]].&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Don't remove this notice too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[A panel with text both above and below the illustration, with further text outside the panel below.]&lt;br /&gt;
:[In the panel, above the illustration:]&lt;br /&gt;
:A snake slithers around a hypercube. No two non-consecutive parts of its coils can be on adjacent corners.&lt;br /&gt;
:[Three small illustrations of 4-dimensional hypercubes, each with a snake slithering around its edges. Each illustration has a red line or lines indicating an edge or edges where two non-consecutive parts of the snake are on adjacent corners. Below each hypercube is a red X.]&lt;br /&gt;
:[A large illustration depicting a 4-dimensional hypercube with a snake slithering around its edges.]&lt;br /&gt;
:[Below the large illustration is text printed in green. To the left of the text is a green checkmark.]&lt;br /&gt;
:Dimensions=4&lt;br /&gt;
:Max length=7&lt;br /&gt;
:[The following text is printed in black, except for the last word &amp;quot;UNSOLVED&amp;quot; which is printed in red:]&lt;br /&gt;
:Snake(N) = Largest snake that can fit in an N-dimensional hypercube&lt;br /&gt;
:Snake(N=1, 2, 3 .. 8) = 1, 2, 4, 7, 13, 26, 50, 98&lt;br /&gt;
:Snake(N&amp;gt;8) = UNSOLVED&lt;br /&gt;
&lt;br /&gt;
:[Text outside the panel:]&lt;br /&gt;
:It turns out every scientific field has a key thought experiment that involves putting a cute animal in a weird box for no reason.&lt;br /&gt;
:So far, quantum mechanics and graph theory have found theirs, but most other fields are still working on it.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Math]]&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Animals]]&lt;br /&gt;
[[Category:Cats]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383990</id>
		<title>3125: Snake-in-the-Box Problem</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3125:_Snake-in-the-Box_Problem&amp;diff=383990"/>
				<updated>2025-08-12T07:58:03Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3125&lt;br /&gt;
| date      = August 6, 2025&lt;br /&gt;
| title     = Snake-in-the-Box Problem&lt;br /&gt;
| image     = snake_in_the_box_problem_2x.png&lt;br /&gt;
| imagesize = 359x611px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Chemistry grad students have been spotted trying to lure campus squirrels into laundry hampers in the hope that it sparks inspiration.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
This comic makes fun of the fact that many fields of math and science use analogies to help visualize complex problems. One such analogy, drawn in the comic, involves a snake on the edges of an n-dimensional hypercube, which is a real problem in graph theory called {{w|snake-in-the-box}}. In this problem, a snake is coiled around the edges of an ''n''-dimensional hypercube. No two adjacent corners of the cube can be occupied by non-consecutive parts of the snake (i.e., the snake can't come near itself). The problem involves finding the longest snake for a box of a given dimension. This problem has been solved up to an 8-dimensional cube, but remains unsolved for 9 dimensions and up. (The proper name for this problem, as stated in [https://oeis.org/A099155 OEIS A099155], is &amp;quot;Maximum length of a simple path with no chords in the n-dimensional hypercube&amp;quot; but, as the entry acknowledges, &amp;quot;snake-in-the-box problem&amp;quot; is the name commonly used for it.) Because a common way to formulate hypercubes is as a graph of N-tuples (each corner has N coordinates, each a 0 or 1 - for example, a {{w|Square|2-cube}} has vertices (0,0), (0,1), (1,0), (1,1) - and edges are drawn between vertices differing only in one coordinate), and this problem in particular pertains to connecting edges between vertices, this comic considers the problem to be an example of this phenomenon for the mathematical field of graph theory.&lt;br /&gt;
&lt;br /&gt;
The other thought experiment alluded to is {{w|Schrödinger's cat}}, which is used in quantum physics. In this thought experiment, a cat is put in a box which contains poison, a radioactive source and a {{w|Geiger counter}}. This aims to illustrate an apparent paradox in the principle of {{w|quantum superposition}} — a property of quantum mechanics in which objects can exist in two apparently incompatible states simultaneously, so long as no attempt is made to verify which state they are in. If an atom of the radioactive source decays, the poison is released, and the cat dies, tying its fate to the radioactive decay. Since radioactive decay obeys quantum mechanics, so long as the particle is not observed it will exist in a superposition of two states: decayed and not decayed. Therefore, the cat, too, may be considered to exist in a superposition of two states (alive and not alive) which appears to be absurd. The opening of the box collapses the superposition so that only one of those states remains.&lt;br /&gt;
&lt;br /&gt;
The comic jokes that these two &amp;quot;cute animal in a box&amp;quot; thought experiments are instances of a universal rule that applies to every field of study. Other fields have simply yet to &amp;quot;discover&amp;quot; their own analogies. Whether a snake counts as a &amp;quot;cute animal&amp;quot; &amp;lt;!-- Not really. --!&amp;gt;that would satisfy the &amp;quot;rule&amp;quot; is likely to occasion some debate.&lt;br /&gt;
&lt;br /&gt;
The title text takes this further by claiming that chemistry students have been trying to fix the lack of cute-animal-in-box thought experiments in their field by attempting to trap a squirrel with a laundry basket. This is possibly a reference to {{w|Endohedral fullerene}} complexes, where an ion or atom is caged inside a spherical structure of carbon. Those students seem to hope that it will inspire them in some way, maybe similarly to what is depicted in [[1584: Moments of Inspiration]].&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Don't remove this notice too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[A panel with text both above and below the illustration, with further text outside the panel below.]&lt;br /&gt;
:[In the panel, above the illustration:]&lt;br /&gt;
:A snake slithers around a hypercube. No two non-consecutive parts of its coils can be on adjacent corners.&lt;br /&gt;
:[Three small illustrations of 4-dimensional hypercubes, each with a snake slithering around its edges. Each illustration has a red line or lines indicating an edge or edges where two non-consecutive parts of the snake are on adjacent corners. Below each hypercube is a red X.]&lt;br /&gt;
:[A large illustration depicting a 4-dimensional hypercube with a snake slithering around its edges.]&lt;br /&gt;
:[Below the large illustration is text printed in green. To the left of the text is a green checkmark.]&lt;br /&gt;
:Dimensions=4&lt;br /&gt;
:Max length=7&lt;br /&gt;
:[The following text is printed in black, except for the last word &amp;quot;UNSOLVED&amp;quot; which is printed in red:]&lt;br /&gt;
:Snake(N) = Largest snake that can fit in an N-dimensional hypercube&lt;br /&gt;
:Snake(N=1, 2, 3 .. 8) = 1, 2, 4, 7, 13, 26, 50, 98&lt;br /&gt;
:Snake(N&amp;gt;8) = UNSOLVED&lt;br /&gt;
&lt;br /&gt;
:[Text outside the panel:]&lt;br /&gt;
:It turns out every scientific field has a key thought experiment that involves putting a cute animal in a weird box for no reason.&lt;br /&gt;
:So far, quantum mechanics and graph theory have found theirs, but most other fields are still working on it.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Math]]&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Animals]]&lt;br /&gt;
[[Category:Cats]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3085:_About_20_Pounds&amp;diff=383989</id>
		<title>3085: About 20 Pounds</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3085:_About_20_Pounds&amp;diff=383989"/>
				<updated>2025-08-12T07:56:21Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Explanation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3085&lt;br /&gt;
| date      = May 5, 2025&lt;br /&gt;
| title     = About 20 Pounds&lt;br /&gt;
| image     = about_20_pounds_2x.png&lt;br /&gt;
| imagesize = 666x278px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = In addition to gravity, burritos interact through the strong, weak, and electromagnetic forces, which is believed to be a major contributor to their popularity.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*'''The article might be off-topic'''. We should focus on explaining the comic. If this is solved, remove this notice.}}&lt;br /&gt;
&lt;br /&gt;
*'''In the comic, [[Cueball]] and [[Ponytail]] consult an {{w|oracle}} to learn about dark matter.&lt;br /&gt;
&lt;br /&gt;
The pentacle and candles suggest that the oracle is supernatural, summoned by an occult ritual; something which would present its own challenges to our understanding of the physical world.  There may be a pun here, in that they may be using 'dark magic' to communicate with something from the 'dark realm' on the assumption that it will know about dark matter. However, the word 'dark' in dark matter simply means that we do not know how to observe it; we have no evidence that dark matter is evil or satanic, though [[Randall]] may consider it [[:Category:Comics with cursed items|cursed]]. The oracle is used very similarly to how people have been using and customizing {{w|large language model|large language models}}.&lt;br /&gt;
The particle's mass is described vaguely as ''about twenty pounds'', roughly 10 kilograms&amp;lt;!-- anywhere near 22 is feasibly &amp;quot;about 20&amp;quot;, so editors needn't try to add false precision to either side of this comparison --&amp;gt;, in line with how all-knowing oracles legendarily use ambiguous statements. This is a ludicrous amount of energy for particle physics. Any interaction would have to involve an equally ludicrous amount of other particle mass being in exactly the right place and time, a coincidence that might be so rare that one would not expect it to occur ever in the history of the universe. By comparison, the {{w|top quark|heaviest single particle}} we have observed, with a mass over a hundred times that of the proton, is around a tenth of a trillionth&amp;lt;!-- short scale &amp;quot;trillion&amp;quot;, right? ...as if that matters much here --&amp;gt; of a trillionth of a pound.&lt;br /&gt;
The oracle proceeds to break expectations by suggesting that Ponytail and Cueball go out for {{w|burrito}}s. When faced with the apparent futility of continuing to try to investigate dark matter, the oracle predicts that going out for burritos is precisely as productive as any other approach. It justifies the suggestion by burritos being &amp;quot;pretty&amp;quot; good, again neither exactly quantifying the oracularity, and likely not even giving the optimal idea.&lt;br /&gt;
&lt;br /&gt;
The title text observes that burritos interact through all four known {{w|fundamental interactions}}, making burritos popular. The electromagnetic force mediates the chemical reactions leading to a burrito's taste, the strong force keeps atomic nuclei together, and gravity gives burritos heft, all of which are helpful for enjoying them. It's hard to see how the weak force, which takes part in radioactive decay, helps with burrito enjoyment or popularity, but the weak force is responsible for the nuclear fusion that allowed the complex elements of the burrito to exist in the first place.&lt;br /&gt;
&lt;br /&gt;
==Science==&lt;br /&gt;
&lt;br /&gt;
The nature of {{w|dark matter}} is a significant unsolved problem in physics. We observe that galaxies spin faster than we expect based on the nearby observable matter.  Likewise galactic motions indicate additional mass that we have not observed in other ways.  Dark matter is the name we give to this mass.&lt;br /&gt;
In general, not all forces interact with all particles; indeed, {{w|gravity}} is believed to be the only force that interacts with everything we have observed. If a force doesn't interact with a particle, then the particle's existence cannot be directly observed via disturbances in that force. In particular, something that doesn't interact with electromagnetism cannot be 'seen', as photons will pass through it relatively unaffected, and likewise cannot be felt, because collision is a side effect of the {{w|Pauli exclusion principle}}.&lt;br /&gt;
Even {{w|neutrino}}s, famous for {{what if|73|interacting with ''almost'' nothing}}, still interact via the {{w|weak force}}, allowing them to be detected with sufficiently large tanks of dense material. This is the main reason neutrinos cannot be dark matter: they interact far too much to be a viable option. A particle that interacts with ''nothing'' except gravity could only be detected by a {{w|LIGO|gravitational telescope}}.&lt;br /&gt;
We can theorise the presence of dark matter thanks to how ''something'' interacts with the matter we can see, i.e. the nature of the rotation of far away galaxies implies significant additional mass that does not emit, absorb, reflect ''or'' diffuse light. While there are also other theories which try to account for what we do see, a number of the suggestions are that it is one or other form of unseeable but gravitationally-interactive substance, given the soubriquet of &amp;quot;dark matter&amp;quot;.&lt;br /&gt;
In trying to determine what form this actually exists in, and on the assumption that if it exists at all then it is also drifting past (and through) our own neighbourhood, experiments here on Earth are trying to detect it using any other means. For example, a popular dark matter candidate is a {{w|weakly interacting massive particle}}, which interacts via the {{w|weak nuclear force}}. Dark matter experiments build large tanks of liquid xenon with a gaseous top, keep them extremely dark, and look for some way in which passing particles might interact and produce electroluminescent scintillations. There are good theoretical reasons to expect some interaction, which would mean the oracle in the comic is lying, but there are no sufficiently conclusive results as of now. There is one dark matter candidate where the only interaction is overwhelmingly gravitational: black holes formed through collapse in the early Universe. These {{w|primordial black holes}} may not be detectable through any terrestrial experiment. However, even these objects can be found through their lensing effects if they are sufficiently large and common to account for the 'missing mass' we are looking for. Black holes of around 10 kg would also likely quickly evaporate through Hawking radiation, so are not a good dark matter candidate. Black holes of around asteroid mass would be extremely hard to detect and are a good dark matter candidate given current information.&lt;br /&gt;
Under more normal circumstances, we might still hope to observe the properties of the particle via creating it ourselves under controlled laboratory conditions. But again, there is no reasonable way to focus the energy required into a single particle interaction. The {{w|Large Hadron Collider|most powerful particle accelerator in the world}}, for example, peaks at about ten thousand times the mass of the proton (a solid billion times less energy than required) so it's out too. 20 pounds is about 2.6e36 eV which is way over any accelerator could achieve in the foreseeable future.&lt;br /&gt;
Despite all this, twenty pounds is also much too ''small'' to be detectable via gravitational interaction; its {{w|Perturbation (astronomy)|influence on the orbits of planets}}, say, or the strength of its {{w|gravitational lensing}} effect, would be entirely negligible. In the scenario posed by the comic, then, there is no plausible way to observe more about dark matter while on Earth. Even if we did find some such particles naturally occurring, and had instruments that could measure such small gravitational forces, since it would interact only via gravity, the only properties it could have other than mass would be its decay rates from other particles. Which, again, would all be essentially nil, due to its mass&amp;lt;!-- except that because 10kg is roughly a billion Planck masses, the particle must decay by collapsing into a black hole and then exploding in a burst of 10²²K Hawking radiation--&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The previous comic [[3084: Unstoppable Force and Immovable Object]] dealt with particles which do not even interact with gravity.&lt;br /&gt;
In [[2035: Dark Matter Candidates]] these 20 lb dark matter particles fit between magic 8 balls and space cows.  The squirrels that make up [[2186: Dark Matter]] near the earth must be pretty chunky. Talking to a floating sphere is becoming a returning subject in xkcd. See more about other instances of this on the page for the [[:Category:Time traveling Sphere|Time traveling Sphere]] series.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Cueball and Ponytail are standing in front of a pentacle with lit candles at the corners. A black sphere, the oracle, is floating above the middle of the pentacle.]&lt;br /&gt;
:Ponytail: Dear oracle,&lt;br /&gt;
:Ponytail: What is the nature of dark matter?&lt;br /&gt;
:Oracle: It's about 20 pounds.&lt;br /&gt;
&lt;br /&gt;
:[Close up of oracle]&lt;br /&gt;
:Off-panel: What?&lt;br /&gt;
:Oracle: Dark matter is a particle. It weighs about 20 pounds.&lt;br /&gt;
:Oracle: It only interacts through gravity.&lt;br /&gt;
&lt;br /&gt;
:[Same view as first panel]&lt;br /&gt;
:Cueball: Only gravity, huh?&lt;br /&gt;
:Cueball: So none of our experiments are really going to tell us any more about it, then.&lt;br /&gt;
:Oracle: Afraid not.&lt;br /&gt;
&lt;br /&gt;
:[Same view as first and third panels, except Cueball lifted his forearm.]&lt;br /&gt;
:Cueball: So what do we do?&lt;br /&gt;
:Oracle: You should go out for burritos.&lt;br /&gt;
:Ponytail: How will that help?&lt;br /&gt;
:Oracle: Well&lt;br /&gt;
:Oracle: Burritos are pretty good.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Cosmology]]&lt;br /&gt;
[[Category:Food]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3085:_About_20_Pounds&amp;diff=383988</id>
		<title>3085: About 20 Pounds</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3085:_About_20_Pounds&amp;diff=383988"/>
				<updated>2025-08-12T07:54:50Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3085&lt;br /&gt;
| date      = May 5, 2025&lt;br /&gt;
| title     = About 20 Pounds&lt;br /&gt;
| image     = about_20_pounds_2x.png&lt;br /&gt;
| imagesize = 666x278px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = In addition to gravity, burritos interact through the strong, weak, and electromagnetic forces, which is believed to be a major contributor to their popularity.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*'''The article might be off-topic'''. We should focus on explaining the comic. If this is solved, remove this notice.&lt;br /&gt;
*'''The article might be too technical and short''', especially the leading paragraph.}}&lt;br /&gt;
&lt;br /&gt;
*'''In the comic, [[Cueball]] and [[Ponytail]] consult an {{w|oracle}} to learn about dark matter.&lt;br /&gt;
&lt;br /&gt;
The pentacle and candles suggest that the oracle is supernatural, summoned by an occult ritual; something which would present its own challenges to our understanding of the physical world.  There may be a pun here, in that they may be using 'dark magic' to communicate with something from the 'dark realm' on the assumption that it will know about dark matter. However, the word 'dark' in dark matter simply means that we do not know how to observe it; we have no evidence that dark matter is evil or satanic, though [[Randall]] may consider it [[:Category:Comics with cursed items|cursed]]. The oracle is used very similarly to how people have been using and customizing {{w|large language model|large language models}}.&lt;br /&gt;
The particle's mass is described vaguely as ''about twenty pounds'', roughly 10 kilograms&amp;lt;!-- anywhere near 22 is feasibly &amp;quot;about 20&amp;quot;, so editors needn't try to add false precision to either side of this comparison --&amp;gt;, in line with how all-knowing oracles legendarily use ambiguous statements. This is a ludicrous amount of energy for particle physics. Any interaction would have to involve an equally ludicrous amount of other particle mass being in exactly the right place and time, a coincidence that might be so rare that one would not expect it to occur ever in the history of the universe. By comparison, the {{w|top quark|heaviest single particle}} we have observed, with a mass over a hundred times that of the proton, is around a tenth of a trillionth&amp;lt;!-- short scale &amp;quot;trillion&amp;quot;, right? ...as if that matters much here --&amp;gt; of a trillionth of a pound.&lt;br /&gt;
The oracle proceeds to break expectations by suggesting that Ponytail and Cueball go out for {{w|burrito}}s. When faced with the apparent futility of continuing to try to investigate dark matter, the oracle predicts that going out for burritos is precisely as productive as any other approach. It justifies the suggestion by burritos being &amp;quot;pretty&amp;quot; good, again neither exactly quantifying the oracularity, and likely not even giving the optimal idea.&lt;br /&gt;
&lt;br /&gt;
The title text observes that burritos interact through all four known {{w|fundamental interactions}}, making burritos popular. The electromagnetic force mediates the chemical reactions leading to a burrito's taste, the strong force keeps atomic nuclei together, and gravity gives burritos heft, all of which are helpful for enjoying them. It's hard to see how the weak force, which takes part in radioactive decay, helps with burrito enjoyment or popularity, but the weak force is responsible for the nuclear fusion that allowed the complex elements of the burrito to exist in the first place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The nature of {{w|dark matter}} is a significant unsolved problem in physics. We observe that galaxies spin faster than we expect based on the nearby observable matter.  Likewise galactic motions indicate additional mass that we have not observed in other ways.  Dark matter is the name we give to this mass.&lt;br /&gt;
In general, not all forces interact with all particles; indeed, {{w|gravity}} is believed to be the only force that interacts with everything we have observed. If a force doesn't interact with a particle, then the particle's existence cannot be directly observed via disturbances in that force. In particular, something that doesn't interact with electromagnetism cannot be 'seen', as photons will pass through it relatively unaffected, and likewise cannot be felt, because collision is a side effect of the {{w|Pauli exclusion principle}}.&lt;br /&gt;
Even {{w|neutrino}}s, famous for {{what if|73|interacting with ''almost'' nothing}}, still interact via the {{w|weak force}}, allowing them to be detected with sufficiently large tanks of dense material. This is the main reason neutrinos cannot be dark matter: they interact far too much to be a viable option. A particle that interacts with ''nothing'' except gravity could only be detected by a {{w|LIGO|gravitational telescope}}.&lt;br /&gt;
We can theorise the presence of dark matter thanks to how ''something'' interacts with the matter we can see, i.e. the nature of the rotation of far away galaxies implies significant additional mass that does not emit, absorb, reflect ''or'' diffuse light. While there are also other theories which try to account for what we do see, a number of the suggestions are that it is one or other form of unseeable but gravitationally-interactive substance, given the soubriquet of &amp;quot;dark matter&amp;quot;.&lt;br /&gt;
In trying to determine what form this actually exists in, and on the assumption that if it exists at all then it is also drifting past (and through) our own neighbourhood, experiments here on Earth are trying to detect it using any other means. For example, a popular dark matter candidate is a {{w|weakly interacting massive particle}}, which interacts via the {{w|weak nuclear force}}. Dark matter experiments build large tanks of liquid xenon with a gaseous top, keep them extremely dark, and look for some way in which passing particles might interact and produce electroluminescent scintillations. There are good theoretical reasons to expect some interaction, which would mean the oracle in the comic is lying, but there are no sufficiently conclusive results as of now. There is one dark matter candidate where the only interaction is overwhelmingly gravitational: black holes formed through collapse in the early Universe. These {{w|primordial black holes}} may not be detectable through any terrestrial experiment. However, even these objects can be found through their lensing effects if they are sufficiently large and common to account for the 'missing mass' we are looking for. Black holes of around 10 kg would also likely quickly evaporate through Hawking radiation, so are not a good dark matter candidate. Black holes of around asteroid mass would be extremely hard to detect and are a good dark matter candidate given current information.&lt;br /&gt;
Under more normal circumstances, we might still hope to observe the properties of the particle via creating it ourselves under controlled laboratory conditions. But again, there is no reasonable way to focus the energy required into a single particle interaction. The {{w|Large Hadron Collider|most powerful particle accelerator in the world}}, for example, peaks at about ten thousand times the mass of the proton (a solid billion times less energy than required) so it's out too. 20 pounds is about 2.6e36 eV which is way over any accelerator could achieve in the foreseeable future.&lt;br /&gt;
Despite all this, twenty pounds is also much too ''small'' to be detectable via gravitational interaction; its {{w|Perturbation (astronomy)|influence on the orbits of planets}}, say, or the strength of its {{w|gravitational lensing}} effect, would be entirely negligible. In the scenario posed by the comic, then, there is no plausible way to observe more about dark matter while on Earth. Even if we did find some such particles naturally occurring, and had instruments that could measure such small gravitational forces, since it would interact only via gravity, the only properties it could have other than mass would be its decay rates from other particles. Which, again, would all be essentially nil, due to its mass&amp;lt;!-- except that because 10kg is roughly a billion Planck masses, the particle must decay by collapsing into a black hole and then exploding in a burst of 10²²K Hawking radiation--&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The previous comic [[3084: Unstoppable Force and Immovable Object]] dealt with particles which do not even interact with gravity.&lt;br /&gt;
In [[2035: Dark Matter Candidates]] these 20 lb dark matter particles fit between magic 8 balls and space cows.  The squirrels that make up [[2186: Dark Matter]] near the earth must be pretty chunky. Talking to a floating sphere is becoming a returning subject in xkcd. See more about other instances of this on the page for the [[:Category:Time traveling Sphere|Time traveling Sphere]] series.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Cueball and Ponytail are standing in front of a pentacle with lit candles at the corners. A black sphere, the oracle, is floating above the middle of the pentacle.]&lt;br /&gt;
:Ponytail: Dear oracle,&lt;br /&gt;
:Ponytail: What is the nature of dark matter?&lt;br /&gt;
:Oracle: It's about 20 pounds.&lt;br /&gt;
&lt;br /&gt;
:[Close up of oracle]&lt;br /&gt;
:Off-panel: What?&lt;br /&gt;
:Oracle: Dark matter is a particle. It weighs about 20 pounds.&lt;br /&gt;
:Oracle: It only interacts through gravity.&lt;br /&gt;
&lt;br /&gt;
:[Same view as first panel]&lt;br /&gt;
:Cueball: Only gravity, huh?&lt;br /&gt;
:Cueball: So none of our experiments are really going to tell us any more about it, then.&lt;br /&gt;
:Oracle: Afraid not.&lt;br /&gt;
&lt;br /&gt;
:[Same view as first and third panels, except Cueball lifted his forearm.]&lt;br /&gt;
:Cueball: So what do we do?&lt;br /&gt;
:Oracle: You should go out for burritos.&lt;br /&gt;
:Ponytail: How will that help?&lt;br /&gt;
:Oracle: Well&lt;br /&gt;
:Oracle: Burritos are pretty good.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Cosmology]]&lt;br /&gt;
[[Category:Food]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=3084:_Unstoppable_Force_and_Immovable_Object&amp;diff=383987</id>
		<title>3084: Unstoppable Force and Immovable Object</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=3084:_Unstoppable_Force_and_Immovable_Object&amp;diff=383987"/>
				<updated>2025-08-12T07:49:02Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 3084&lt;br /&gt;
| date      = May 2, 2025&lt;br /&gt;
| title     = Unstoppable Force and Immovable Object&lt;br /&gt;
| image     = unstoppable_force_and_immovable_object_2x.png&lt;br /&gt;
| imagesize = 297x379px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Unstoppable force-carrying particles can't interact with immovable matter by definition.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
An &amp;quot;{{w|Irresistible force paradox|unstoppable force meeting an immovable object}}&amp;quot; is a common expression and thought experiment when two things with mutually exclusive properties are forced to interact. In the comic, this is depicted with three drawings, with an arrow representing an unstoppable force moving toward an object that is immovable. The next two images depict how they interact - or rather, not interact, with the force passing right through the object as if it weren't there. In a caption below the comic, [[Randall]] states that he cannot understand why people find this scenario to be tricky&lt;br /&gt;
&lt;br /&gt;
The comic plays on the word &amp;quot;force&amp;quot;, which has different definitions depending on context. To a physicist like Randall it describes a fundamental influence between particles of matter. Not all forces interact with all types of matter, nor ''can'' they be stopped (only depleted, by interaction and dispersion over their effective distance); as a result, although &amp;quot;unstoppable forces&amp;quot; seem like an impossible thing, they are in fact quite common (again, provided one is using the physics definition), something Randall exploits in line with [[123: Centrifugal Force|prior informative comics]] of this ilk. In casual language however, a &amp;quot;force&amp;quot; is an entity with a large amount of (usually kinetic) energy, hence the question might better be phrased as &amp;quot;what happens if one attempts to apply kinetic energy to an object whose velocity cannot be changed?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
A lot of times, the &amp;quot;unstoppable force / immovable object&amp;quot; expression is just that, an expression, to indicate that two parties who have contradictory goals and are unwilling or unable to compromise. Other times it's an exaggeration for large and powerful forces that are not literally unstoppable but still cause massive damage when they run into each other.&lt;br /&gt;
&lt;br /&gt;
In the title text, Randall clarifies what he means in that the force-carrying particles cannot interact with the matter by definition. If such objects did exist, being intangible to each other is the only possible answer that would be compatible with how we understand physics to work, as force-carrying particles can only interact with some particles. (An further explanation of this situation is described in a [https://www.youtube.com/watch?v=9eKc5kgPVrA video] by {{w|Minute Physics}}.) In quantum physics, all forces (electromagnetic, strong-nuclear, gravity, weak-nuclear) are carried by force-carrying particles (photons, gluons, W &amp;amp; Z bosons, Higgs Boson), but this is not usually something that is relevant to consider, when macroscopic objects interact.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[In one panel there are three drawings representing the same scenario at three different times. The first drawing shows a right-pointing arrow at the left, and a rounded trapezium-like object set slightly to the right of center. They are each labeled with a line going from a label above down to the respective shape:]&lt;br /&gt;
:Unstoppable Force&lt;br /&gt;
:Immovable Object&lt;br /&gt;
&lt;br /&gt;
:[In the second drawing the arrow is shown in the process of moving through the trapezoid, the part of the arrow within the trapezoid is drawn in gray lines.]&lt;br /&gt;
&lt;br /&gt;
:[In the third drawing the arrow has moved a similar distance, now being to the right of the trapezoid.]&lt;br /&gt;
&lt;br /&gt;
:[Caption below the panel:] &lt;br /&gt;
:I don't see why people find this scenario to be tricky.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Physics]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383986</id>
		<title>2916: Machine</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383986"/>
				<updated>2025-08-12T07:44:32Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2916&lt;br /&gt;
| date      = April 5, 2024&lt;br /&gt;
| title     = Machine&lt;br /&gt;
| image     = machine_2x.png&lt;br /&gt;
| imagesize = 740x740px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = The Credible Machine&lt;br /&gt;
}}&lt;br /&gt;
{{series&lt;br /&gt;
| series        = April&lt;br /&gt;
| number        = 15&lt;br /&gt;
| date          = April 5, 2024&lt;br /&gt;
| days_late     = 4&lt;br /&gt;
| day_category  = Friday&lt;br /&gt;
| prev_title    = 2765: Escape Speed&lt;br /&gt;
| prev_date     = April 19, 2023&lt;br /&gt;
| next_title    = 3074: Push Notifications&lt;br /&gt;
| next_date     = April 9, 2025&lt;br /&gt;
| extra_text    = [[#Trivia|Learn why this comic was released late]].&lt;br /&gt;
}}&lt;br /&gt;
{{TOC}}To experience the interactivity of the game, visit the {{xkcd|2916|original comic}}!&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*Finish the explanations for how the items work in section [[#Toolbox items]].&lt;br /&gt;
*The article shouldn't start with a list of what's been added to the comic before explaining it...}}&lt;br /&gt;
&amp;quot;Machine&amp;quot; has been updated multiple times in the weeks following its release, adding the following features:&lt;br /&gt;
* the trophy and shot glass props&lt;br /&gt;
* the cat, which swats balls in front of it&lt;br /&gt;
* the inanimate kitten and bun decorations&lt;br /&gt;
* a system of links, which encodes the XY coordinates of the currently viewed cell, and the time (i.e. the entire machine's state after a certain moderation action)&lt;br /&gt;
* a button to follow a nearby ball as it traverses through the machine, also preventing it from despawning&lt;br /&gt;
&lt;br /&gt;
As referenced in the title text, this game is a spiritual successor to the 1990s and early 2000s PC puzzle game series {{w|The Incredible Machine}}, a game Randall played as a kid. Both games have several objects in common:&lt;br /&gt;
* fan&lt;br /&gt;
* cat&lt;br /&gt;
* ramps&lt;br /&gt;
* balls of varying densities&lt;br /&gt;
&lt;br /&gt;
The comic starts in a main screen where the user can create a {{w|Rube Goldberg machine}} in a &amp;quot;Cell&amp;quot; where the goal is to route a constant stream of colored balls from inputs on the ceiling or walls to outputs of matching colors on the walls or floor. After the comic is first opened a window pops up over the machine where Cueball in a lab coat tells you to route the balls from the inputs to the outputs. A button opens a “tool panel” where there are large and small boards available for use, as well as some gimmicky stuff like prisms&amp;lt;!-- that sort marbles by color SEEM TO 'RANDOMLY' REFRACT/DEFLECT, IF SORTING IS TRUE THEN EXPLAIN IN NEW/RELOCATED SECTION? --&amp;gt; (which deflect marbles) and fans (which blow marbles around), plus decorative elements which have no effect on the balls.&lt;br /&gt;
&lt;br /&gt;
Typically, inputs and outputs only accept balls of a single color. However, some outputs accept multiple colors, indicated by a double arrow, and some inputs produce multiple colors. When the player is designing their 'machine', this will involve multiple full streams merged into one (supplied by a double-exit on the adjacent submission). Machines now working in the full grid may, however, find that their sources now contain stray balls of other types that were not handled properly, but there is no way to force a re-edit of the machine to alter its behavior to account for this.&lt;br /&gt;
&lt;br /&gt;
If any balls are left in your cell for more than 30 seconds, they fade away. The first time a ball fades away another popup informs you that the balls are removed for security reasons. An indicator next to each exit increases for each ball of the correct color that passes through an exit, and reduces when no balls pass through, or if balls of the wrong color pass through it. While that exit is not properly supplied it displays a red cross, which changes to a green tick when a sufficient, and sufficiently clean, stream of balls is supplied. The first time you have built a machine which succeeds in routing enough balls of the correct color to ''all'' relevant outputs, a popup will prompt you to submit your cell to be added to the public machine. (Subsequently, the submit button will quietly change from 'inactive' (pale) to clickable (dark). This will change back again if any ball transfers dip back below the required threshold for any reason, such as further editing or an end to a 'fluke' glut of accumulated balls.)&lt;br /&gt;
&lt;br /&gt;
Choosing to submit your cell will give you a textbox to give this cell a name. Proceeding through that, you will now see your cell within the 'grid' and a 'live' feed of balls from any relevant neighboring cells (which may be more sporadic then the feed you designed your cell with, and contain stray balls of different types). If any supplying-neighbors are still marked as &amp;quot;under construction&amp;quot;, they ''may'' provide the balls as if perfectly routed from their own (eventual) source, but will eventually dry up. If your newly submitted creation is placed in the lowest row of cells, balls will be dispensed through the exit at the bottom, but there will be no launcher to propel them towards the pit, and they will vanish as they leave the exit.&lt;br /&gt;
&lt;br /&gt;
Upon reopening the link to this comic without coordinate and time parameters, your recently created machine will most likely not be visible in the space you built it in. [https://www.reddit.com/user/xzaphenia/comments/ Reddit user xzaphenia] has claimed on r/xkcd that this is because there is a moderation team (of which they are a member) and that [https://www.reddit.com/r/xkcd/comments/1c1ixmb/comment/kzc3rmg/ the main page only shows public, approved machines]. This team of people, including those credited as co-creators of this comic, select machines according to their preferences (and little to no formal criteria besides [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ coolness, innovativeness, effectiveness], and [https://www.reddit.com/r/xkcd/comments/1c0bsk2/comment/kyvfean/ privacy concerns]). Given the number of 'bottom-layer' cells that are likely primed ready to be completed (e.g. the grid-width of twelve, perhaps staggered across adjacent rows) and the many possible worldwide contributors at any one time, it may be that the chances of being picked for permanence is low; and certainly would have been lower early on in the comic's existence during the initial frantic rush to participate. [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ It is also claimed that at some point, moderation will be cut off and the machine will be considered &amp;quot;complete&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery heights=&amp;quot;200&amp;quot; widths=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:2916_popup_intro.png|Introduction popup&lt;br /&gt;
File:2916_popup_time.png|Time limit popup&lt;br /&gt;
File:2916_popup_submit.png|Submission popup&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The button in the bottom right corner allows you to toggle between editing your own machine and a page where you can drag around to view all of the machines that have been submitted and accepted, with a title for each in the upper left corner. In this view you can see that all of the outputs are also inputs for another cell, except for the top row where the inputs come from off screen and the lowest row which output through a launcher of some kind to a set of four colored-coded containers far below. Any empty cells are marked off by yellow tape with the words &amp;quot;UNDER CONSTRUCTION&amp;quot; as well as &amp;quot;DJIA ↑ 31415&amp;quot; once in each cell. &amp;quot;DJIA&amp;quot; stands for the Dow Jones Industrial Average, with &amp;quot;DJIA ↑ 31415&amp;quot; indicating that it rose to 31415 points, 31415 being the first five digits of pi, without the period. This would often be displayed on a yellow 'ticker', which might look superficially similar to the yellow barrier tape.&lt;br /&gt;
&lt;br /&gt;
When viewing the whole machine, a button in the bottom left corner, added later, allows you to follow the path of the nearest ball as it passes from cell to cell. This will also make the ball you are following immortal - not subject to the 30s timeout rule. However, it will stop following at the bottom of the base machine -- it will not follow into the bottom holding containers, nor keep it immortal once down there. Another later addition was a button in the top left corner which copies a URL that will take you directly to the current cell that you are viewing. However, the link that is created will always show you the version of the machine at the time that you were viewing it, without any subsequent additions.&lt;br /&gt;
&lt;br /&gt;
Whenever balls reach the bottom of the grid, they are directed towards four containers, one of each color. Most balls are accurately sent to their appropriate container, though there are some misfires. These containers are above a pit, and  dump their contents every 11.5 seconds. Balls in the pit are subject to a 97 (approx) second culling rule (including time spent in the holding containers), unlike the balls in the cells above. If no balls are directed towards the containers, the pit will be empty. If at least one stream of balls is making it, Cueball and Megan sit in a small boat named the USS Buoyancy, and when sufficient balls are being deposited, the boat begins to float and move. Balls that miss or overspill the pit fall out of the bottom of the frame.&lt;br /&gt;
&lt;br /&gt;
Under construction cells will feed balls of the appropriate color into neighboring cells so long as you are not looking at them. Once you scroll to look at them, the supply of balls stops and subsequent cells in the chain will not receive any; scroll away from them again and the supply will resume.&lt;br /&gt;
&lt;br /&gt;
The grid is 12 cells wide, and grows in height. The largest size observed so far is 12x128, for a total of 1536 cells. The machine's height is determined by the lowest cell; this can be either your submitted cell, or a cell created by another user.&lt;br /&gt;
&lt;br /&gt;
Imperfections in the machines (whether accidental or by design) and the impossibility of entirely avoiding collisions when crossing streams inevitably lead to significant levels of losses and pollution with the wrong color balls. Indeed, using the follow ball function appears to demonstrate that it is quite rare for a ball to survive more than several machines without getting stuck somewhere. This should mean that effectively no balls would reach the lower layers. This implies that there is some 'creative accounting' going on to ensure that cells lower in the grid still have balls to process - simulating flow only for a few nearby cells, while assuming that those cells themselves have pure, steady inputs.&lt;br /&gt;
&lt;br /&gt;
There is a hard limit of 100 items (both physically interactive and purely decorative) that can be placed in any given arena. If you have placed 75 items, a count will appear in the component bar of your piece-count (&amp;quot;''##''/100&amp;quot;), which will go away again if you delete items to bring it below this count. The count text turns red at &amp;quot;100/100&amp;quot;, at which point no more items can be added, only existing ones moved (or removed, to lower the count again).&lt;br /&gt;
&lt;br /&gt;
===Toolbox items===&lt;br /&gt;
====Tangible items====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=margin:auto&amp;quot;&lt;br /&gt;
! Image&lt;br /&gt;
! Item !! Explanation &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_plank.png|frameless|upright=0.25]]&lt;br /&gt;
| Plank || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_hammer.png|frameless|upright=0.25]]&lt;br /&gt;
| Hammer || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_sword.png|frameless|upright=0.25]]&lt;br /&gt;
| Sword || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_scoop.png|frameless|upright=0.25]]&amp;lt;br&amp;gt;[[File:2916_scoop_mirrored.png|frameless|upright=0.25]]&lt;br /&gt;
| Hinged scoop || It rotates around its hinge and tries to remain horizontal, with a spring-like effect. The hinged scoops are strictly horizontal when placed on the building. They rotate away from — and spring back to — the horizontal position in response to interactions with balls or other non-decorative items that may disturb their balance. These disturbances can sometimes lead to further interesting interactions, which may or may not be intentional or useful.&lt;br /&gt;
Along with the triangular Bumpers, they are the only class of objects with a clear and practical asymmetry, for which a mirrored chirality can be selected from the sidebar.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_anvil.png|frameless|upright=0.125]]&lt;br /&gt;
| Anvil || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_brick.png|frameless|upright=0.125]]&lt;br /&gt;
| Brick || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_fan.png|frameless|upright=0.125]]&lt;br /&gt;
| Fan || Blows away balls in front of it. Can be rotated 360 degrees. Different colors are affected by differing amounts (yellow balls are lightest, and can be levitated above an upward-facing fan). If a ball hits a blade of a fan, especially from the side, the bounce is larger than normal. If you put a fan interlocking with a wheel it might eventually freeze your machine.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_pillow.png|frameless|upright=0.125]]&lt;br /&gt;
| Pillow || Balls bounce less if they hit it &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_round_bumper.png|frameless|upright=0.125]] [[File:2916_bumper_left.png|frameless|upright=0.125]] [[File:2916_bumper_right.png|frameless|upright=0.125]]&lt;br /&gt;
| Bumper || Bounces balls away at significantly higher speed. Together with the Hinged scoop, they are the only object class with a clear and practical asymmetry, for which a mirrored chirality can be chosen from the sidebar. &lt;br /&gt;
|-&lt;br /&gt;
|| [[File:2916_attractor.png|frameless|upright=0.125]]&lt;br /&gt;
| Attractor/Black hole || Pulls balls toward center. The Attractor is omnidirectional, but the area of effect can be resized to extend or restrict its influence. You do this by way of its bounding box with corner and mid-edged 'drag nodes' and a circular area that shows the current extent, which are only visible when the element is actively selected. This resize can be no larger than will make the box/circle touch the edges, no smaller than the fixed graphic and will always be identically proportioned in both axes.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_repulsor.png|frameless|upright=0.125]]&lt;br /&gt;
| Repulsor/White hole || Repels balls away from center. Like the Attractor, it is omnidirectional and can be resized. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_prism.png|frameless|upright=0.125]]&lt;br /&gt;
| Prism || &amp;quot;Refracts&amp;quot; and internally-reflects balls as they otherwise pass through the object, the color of the ball ''may'' cause them to react (as much as possible) according to the respective color across the element.&amp;lt;!-- Benefit of the doubt, but it hasn't seemed to work that well for me, either. --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_wheel.png|frameless|upright=0.125]]&lt;br /&gt;
| Wheel || Spins, deflects balls, can jam with enough resistance (e.g. glut of balls or against other elements). It actively rotates and starts off, by default, spinning anticlockwise. Pressing or tapping left/right arrow keys, when a placed wheel is selected, will adjust that wheel's rotation rate to be more/less anticlockwise. Adjusting it beyond zero rotation allows you to make it spin in the opposite direction. Rotation can be increased well beyond the point at which the {{w|wagon-wheel effect}} occurs&amp;lt;!-- does it depend upon browser rendering frequency, or is there a convenient refresh-cap-rate built into the rendering engine? --&amp;gt;, which may make it difficult to work out the spin direction of an overspeed wheel element (and thus which arrow keys will slow or speed up its rotation, if you have forgotten), though observing its impact upon any balls that strike it ''should'' make its current spin-direction obvious. The 'bounding editing box' will usually appear rotated, possibly according to the spinning graphic's current orientation upon selection, but remains at that (often non-orthagonal) angle even as the wheel spins (if it can) during this period of selection for editing. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_trophy.png|frameless|upright=0.125]]&lt;br /&gt;
| &amp;quot;Good job&amp;quot; trophy (Called &amp;quot;stand&amp;quot; in assets)|| Static obstacle. Any ball can rest on the top of a trophy. This feature was probably added on purpose.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cup.png|frameless|upright=0.125]]&lt;br /&gt;
| Glass cup || Static obstacle. Container, with a nominal capacity of up to four balls (in whole or in part) within it. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat_new.png|frameless|upright=0.25]]&lt;br /&gt;
| Cat || Swats away balls in front of itself (was added later). Balls can get stuck on top of the cat or between the cat's head and tail. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intangible decorations====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;margin: auto; float: right&amp;quot;&lt;br /&gt;
! Image !! Transcript &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_ponytail_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_ponytail.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_cueball_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing Cueball, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_whitehat.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing White Hat, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap_resting.png|frameless|upright=0.25]]&lt;br /&gt;
| Rightwards-facing Knit Cap, in an 'action' pose &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Knit Cap, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_helmet.png|frameless|upright=0.125]]&lt;br /&gt;
| Helmet-wearing figure, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_squirrel.png|frameless|upright=0.125]]&lt;br /&gt;
| Squirrel &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_deterministic.png|frameless|upright=0.25]]&lt;br /&gt;
| &amp;quot;Probably Deterministic&amp;quot; sign &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_rabbit.png|frameless|upright=0.125]]&lt;br /&gt;
| [[1682: Bun|Bun]] &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat.png|frameless|upright=0.125]]&lt;br /&gt;
| Cat &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All other items can be manually re-angled by a 'loop node' arm extending from the bounding box. If you cannot see the 'angle node' for such a selected item, which is normally at the top of any freshly placed item but follows any re-angling that may have already applied, it could be that you have placed the item too close to the edge in which direction the node extends. To rotate it, move the object away from the edge to access the construction node (after which, you can drag the object back if required – but see below).&lt;br /&gt;
&lt;br /&gt;
Rotation may be limited by the {{w|minimum bounding box}} that is the 'selection box', this is not necessarily the more flush {{w|convex hull}} of the collision-map built into the graphic. Should a corner of the bounding box need to move across the edge of the build-area, it will do nothing more than touch the edge until there is sufficient angle-drag to snap it to the angle from which that corner now comes back away from the edge; or, when it has a long straight edge currently flush with the edge boundary, it may snap to exactly 180°, in rotation, whereupon the opposite long straight edge is flush to the construction area edge. All objects that are drag-moved, similarly, cannot be moved any further than their current bounding box touching the construction-area edging. The bounding box for the rotating wheel is a notable exception to this, being not under any direct angle-control by the player. Instead, it seems to use the bounding inscribed circle that defines the wheel edge iteslf.&lt;br /&gt;
&lt;br /&gt;
Apart from some interactions between the hinged scoops and any element (including other hinged scoops), there is no preventative 'collision detection' between objects during user-placement, which may overlap/cover each other (the most recently spawned item graphically overlays any earlier one). The wheel object will only spin if not constrained by other physical elements (including the spokes of an adjacent wheel, not in counter-rotation) but can still be dragged and placed anywhere within the boundary of the construction area.&lt;br /&gt;
&lt;br /&gt;
The continuous stream(s) of balls respect all ''tangible'' objects, which includes any currently being dragged/rotated, though may prematurely vanish if forced between two items moved to touch/overlap each other. It is possible to indirectly nudge balls by carefully moving a tangible object's surface into them (or holding them within it, e.g. the &amp;quot;cup&amp;quot;). This may be useful for rescuing temporarily stray balls (before they time-out anyway), unjamming an area with a construction-induced glut ''or'' for testing a ball-path that is not currently being fed 'naturally'. Doing so ''can'' then conceivably fulfil all the exit-gate requirements (temporarily), as it might also transiently spoil some required routing, but the manual intervention will not be possible once a 'machine' has been submit.&lt;br /&gt;
&lt;br /&gt;
====Non-player items====&lt;br /&gt;
{|&lt;br /&gt;
|[[File:2916_container_red.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_yellow.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_blue.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_green.png|thumb|center|80px]]&lt;br /&gt;
|}&lt;br /&gt;
Ball containers at the bottom of the machine. 420 x 195&lt;br /&gt;
&lt;br /&gt;
[[File:4d425c.png|thumb|left|250px|Cueball and Megan in the ''USS Buoyancy. 262 x 162]]&lt;br /&gt;
&lt;br /&gt;
[[File:2916_pit_bottom.png|thumb|left|400px|Pit below the ''USS Buoyancy''. 1389 x 290]]&lt;br /&gt;
&amp;lt;br clear=all&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Color routing ===&lt;br /&gt;
The different ball colors have different physical properties. Red balls are more bouncy than other balls, green balls are heavier, and yellow balls are lighter and slightly bouncy. The following values were extracted from the code:&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Color&lt;br /&gt;
! Mass&lt;br /&gt;
! Density&lt;br /&gt;
! Restitution (bounciness)&lt;br /&gt;
! Linear damping (drag)&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;00F&amp;quot; | Blue&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;F00&amp;quot; | Red&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0.8&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;0F0&amp;quot; | Green&lt;br /&gt;
| 0.75&lt;br /&gt;
| 9.325&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;FF0&amp;quot; | Yellow&lt;br /&gt;
| 0.024&lt;br /&gt;
| 0.3&lt;br /&gt;
| 0.6&lt;br /&gt;
| 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Balls also have spin, but it is subtle and hard to see because the balls have no visible texture.It can be seen, with effort, using green balls (which are heaviest). Rolling down a slope (say, two boards), green balls accumulate spin in the direction they are rolling. Let them drop off the end and then bounce off a brick such that they travel upward, but with very little sideways motion. Then &amp;quot;catch&amp;quot; the balls with a brick just past their apex, when they are moving slowly. If the ball lands on a horizontal brick, it can be seen that the ball will suddenly accelerate left or right based on the spin.&lt;br /&gt;
&lt;br /&gt;
For certain combinations of inlet and outlet 'gates', it is necessary to 'cross the streams'. e.g. to direct righthand-entry balls to a lefthand-exit and vice-versa. It is possible to just construct the field to send two (or more!) sets of balls to fly across a common gap, to land on an appropriate reception area that leads to the chosen exit. But, though this is not {{w|Proton pack#Crossing the streams|completely inadvised}}, the timing of the balls cannot be guaranteed to be in sync (or, rather, anti-sync) with each other and collisions ''will'' occur, especially under the variations of delivery that might significantly alter the ballistic path across the gap. Even if the trial machine works, in isolation with a steady stream of all balls entering the field of play, once submitted it will inevitably be fed by a more chaotically-routed preceeding construction.&lt;br /&gt;
&lt;br /&gt;
In order to maintain sufficient correct arrivals at exits&amp;lt;!-- and, I believe, sufficiently few ''wrong'' arrivals... does it enumerate the 'net correct delivery rate' to establish the validity of the output? ...needs more research --&amp;gt;, it may be necessary to add a method of filtering the hues.&lt;br /&gt;
&lt;br /&gt;
This could just mean introducing a 'wrong hue trap' beyond any crossing point(s) that send the occasionally wrong ball back to the cross point (or let them time-out in a dead-end, relying upon few enough failures from the rest of the balls, along with all colliding balls that subsequently missed ''any'' chance of reaching an exit). Alternatively, two (or more) feeds of marbles could be fed through a deliberate 'sorter' that does a sufficiently reasonable job of separating the combined sets out towards their intended target-exits.&lt;br /&gt;
&lt;br /&gt;
The various physical qualities of the balls suggest a number of methods for redirecting separate hues to separate onward journeys. This can be done by isolating a hue from every other hue, then passing on (if necessary) to a setup extracting a different one from the remainder, and perhaps also a third time. It may also be possible to merge 'arrangements' of sorting mechanics to efficiently distribute straight into three ''or even four'' onward tracks towards the desired outputs, but that is left as an exercise to the reader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This may not be the most efficient depiction (with just four/less 'core methods', after following &amp;quot;See X/Y&amp;quot;s) but if the Prism or some other item actually adds zignificantly practical pre-&amp;quot;See&amp;quot; differences then the all-vs-all format (with the reversals/same-to-sames still there to be abbreviated/redirected) will come into its own.&lt;br /&gt;
If you so wish, redo. e.g. as &amp;quot;;header + :paragraph&amp;quot;s or table of &amp;quot;!Combo(s)!!Methodology&amp;quot;&lt;br /&gt;
NB:&lt;br /&gt;
  1x ! Row-start Style=                                                 | Row-start 'header'&lt;br /&gt;
  4x | *Unwikiparsable key just for editors' benefit* + optional Style= | Contents&lt;br /&gt;
...right now, I've mostly added &amp;quot;vertical fan&amp;quot; experiences (which I find useful for all but R/B differentiation), but more about bumpers (including fan-/wheel-collisions), the positive/negative 'force objects' and of course horizontal/angled fans could also be added.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:black; color:white&amp;quot; | To separate !! style=&amp;quot;background-color:lightblue&amp;quot; | Blue !! style=&amp;quot;background-color:lightgreen&amp;quot; | Green !! style=&amp;quot;background-color:yellow&amp;quot; | Yellow !! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
| *R/B* | '''Use 'bounce''''&lt;br /&gt;
The sole difference is how much balls will rebound from objects. Well managed and constrained ricochets should allow a sorting action.&lt;br /&gt;
| *R/G* | '''Use mass or 'bounce''''&lt;br /&gt;
Green balls are not easily affected by a fan or a black hole, making it easier to sort from other balls. On the other hand, it also means it is very hard to precisely accelerate green, since the only components able to accelerate green is the bonk and the kitten.&amp;lt;br/&amp;gt;Green, like Blue, rebounds differently to Red.&lt;br /&gt;
| *R/Y* | ''See&amp;lt;br /&amp;gt;Y/B+G''&lt;br /&gt;
| *R/R* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:yellow&amp;quot; | Yellow&lt;br /&gt;
| *Y/B+G* colspan=2| '''All methods'''&lt;br /&gt;
Yellow, alone, exhibits high drag against any unforced motion.&amp;lt;br/&amp;gt;It is also unique in all other ways; e.g. can be levitated highest, against all other hues (though most profoundly against Green).&lt;br /&gt;
| *Y/Y* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *Y/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- R/Y-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightgreen&amp;quot; | Green&lt;br /&gt;
| *G/B* | '''Use mass'''&lt;br /&gt;
Green balls are only minimally affected by a fan.&amp;lt;br/&amp;gt;There is also a not so marginal difference in density that might be exploited, such as by using black holes, which only minimally effects Green (perhaps showing an effective difference between mass of attraction and mass of inertia).&lt;br /&gt;
| *G/G* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *G/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- Y/G-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
| *G/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/G&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightblue&amp;quot; | Blue&lt;br /&gt;
| *B/B* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *B/G* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See G/B&lt;br /&gt;
| *B/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See&amp;lt;br /&amp;gt;Y/B+G&lt;br /&gt;
| *B/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Even when not strictly necessary for one's own submission, once submitted into the full playing grid the player's own contribution may find itself working with less 'pure' delivered ball-streams (from an imperfectly separating feed-in contribution). It is possible that this more interactive disruption can make the new setup behave erratically or even entirely incorrectly.&lt;br /&gt;
&lt;br /&gt;
It might be thought good practice (but not ''necessary'') to deliberately combine any or all inputs and do a full job of splitting them again, just in anticipation of possibly having to deal with such cross-contamination and being able to 'clean up' the onward stream(s) for the benefit of others. This would of course be particularly difficult if the isolated building-phase does not provide all four hues to 'test' against, so any speculatively added filtering would have to be added 'blind' (and only on the offchance that any anticipated incorrect balls will actually enter the arena) and without any legitimate exits to which such rejects could be shunted (therefore could accumulate, up until any 'time out' that might apply to any ball once operational as part of the combined grid).&lt;br /&gt;
&lt;br /&gt;
Single-input/single-output designs might not particularly require ''any'' sorting mechanism, in theory, though the unexpected 'contamination' of the system with balls of different masses/etc could perhaps introduce malfunctioning passage from the added chaos it might succumb to.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Finish transcribing the comic!}}&lt;br /&gt;
&lt;br /&gt;
:[The placeholder image shows four balls, colored red, green, yellow and blue, bouncing on top of three white blocks. Text in the center: &amp;quot;[visit xkcd.com to view]&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
:[In the game, colored balls fall out of rotating half-gears that spawn at random from the wall and/or ceiling while an opposite set of half-gears rotate with a colored triangle pointing to that intersection of said set of gears. There is a button that says &amp;quot;view machine&amp;quot; button in the bottom right corner. When clicked, it takes you to a larger grid of others' machines that you can view in a larger grid. There is another button with a wrench which is a menu that gives you tools and decorations to move the balls to the set of gears with the colored corresponding triangle.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, intro popup]&lt;br /&gt;
:Cueball: Balls falling into your cell should be routed to the outputs at a steady rate.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, warning popup]&lt;br /&gt;
:Cueball: For security reasons, balls that remain in your device for more than 30 seconds will be removed and destroyed.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, submit popup]&lt;br /&gt;
:Cueball: Congratulations! Your contraption has passed all tests. Press [submit button] to submit it to be added to the machine!&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
* Once again an April Fool's Day Comic came out late, as Randall did not release this on April 1st, even though April 1st did fall on a Monday, a normal release day. It first came four days later with the Friday release on April 5th. That this is to be considered an April Fools' Day comic, in spite of the later release, was confirmed on the xkcd Facebook page.&lt;br /&gt;
*Randall acknowledges the people who helped him create this comic in a [[Header_text#Machine|comic-specific header text]], with 11 different involved apart from Randall this is by far the comic with most people involved.&lt;br /&gt;
&lt;br /&gt;
*Some hidden keyboard shortcuts have been found:&lt;br /&gt;
** Follow balls: Ctrl + Alt/Option + B (now also accessible by using the button provided)&lt;br /&gt;
** Show debug overlay: Ctrl + Shift + Win/Cmd + D&lt;br /&gt;
***  This may particularly clash with browser functionality, e.g. Firefox's &amp;quot;New Bookmarks&amp;quot; dialogue which will need closing, though still activating the overlay graphics.&lt;br /&gt;
** Delete selected item: Delete (Fn + Delete on Mac)&lt;br /&gt;
&lt;br /&gt;
*When Randall posted a [https://www.facebook.com/TheXKCD/posts/pfbid0Cs97awQZi1ZiaEXouAex9tXrwAS3qJV3RmAiuCq5uvZQwqZVMgDmcqJ7JU9LYodYl link to this comic] on his [https://www.facebook.com/TheXKCD Facebook feed], he directly wrote that it was a late April Fools' Day!&lt;br /&gt;
**This thus ends any discussion of whether this should be seen as an April Fool's comic or not, it just came out 4 days late. This has also happened several times since [[Garden]].&lt;br /&gt;
[[File:2916 Machine Facebook April fools' confirmation.png]]&lt;br /&gt;
*The [https://github.com/xkcd/incredible source code] for the comic was released on GitHub on May 8, 2024.&lt;br /&gt;
**chromakode, one of the developers, also published a [https://chromakode.com/post/xkcd-machine/ blog post discussing the design and development process].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Dynamic comics]]&lt;br /&gt;
[[Category:Comics with animation]] &lt;br /&gt;
[[Category:Interactive comics]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Comics featuring White Hat]]&lt;br /&gt;
[[Category:Comics featuring Knit Cap]]&lt;br /&gt;
[[Category:Characters with hats]]&lt;br /&gt;
[[Category:Squirrels]]&lt;br /&gt;
[[Category:Buns]]&lt;br /&gt;
[[Category:Cats]]&lt;br /&gt;
[[Category:Physics]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383985</id>
		<title>2916: Machine</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383985"/>
				<updated>2025-08-12T07:43:39Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Trivia */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2916&lt;br /&gt;
| date      = April 5, 2024&lt;br /&gt;
| title     = Machine&lt;br /&gt;
| image     = machine_2x.png&lt;br /&gt;
| imagesize = 740x740px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = The Credible Machine&lt;br /&gt;
}}&lt;br /&gt;
{{series&lt;br /&gt;
| series        = April&lt;br /&gt;
| number        = 15&lt;br /&gt;
| date          = April 5, 2024&lt;br /&gt;
| days_late     = 4&lt;br /&gt;
| day_category  = Friday&lt;br /&gt;
| prev_title    = 2765: Escape Speed&lt;br /&gt;
| prev_date     = April 19, 2023&lt;br /&gt;
| next_title    = 3074: Push Notifications&lt;br /&gt;
| next_date     = April 9, 2025&lt;br /&gt;
| extra_text    = [[#Trivia|Learn why this comic was released late]].&lt;br /&gt;
}}&lt;br /&gt;
{{TOC}}To experience the interactivity of the game, visit the {{xkcd|2916|original comic}}!&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*Finish the explanations for how the items work in section [[#Toolbox items]].&lt;br /&gt;
&lt;br /&gt;
*Also, the [[#Trivia]] section is a mess. Need to clean it up and use coherent sentences.&lt;br /&gt;
&lt;br /&gt;
*The article shouldn't start with a list of what's been added to the comic before explaining it...}}&lt;br /&gt;
&amp;quot;Machine&amp;quot; has been updated multiple times in the weeks following its release, adding the following features:&lt;br /&gt;
* the trophy and shot glass props&lt;br /&gt;
* the cat, which swats balls in front of it&lt;br /&gt;
* the inanimate kitten and bun decorations&lt;br /&gt;
* a system of links, which encodes the XY coordinates of the currently viewed cell, and the time (i.e. the entire machine's state after a certain moderation action)&lt;br /&gt;
* a button to follow a nearby ball as it traverses through the machine, also preventing it from despawning&lt;br /&gt;
&lt;br /&gt;
As referenced in the title text, this game is a spiritual successor to the 1990s and early 2000s PC puzzle game series {{w|The Incredible Machine}}, a game Randall played as a kid. Both games have several objects in common:&lt;br /&gt;
* fan&lt;br /&gt;
* cat&lt;br /&gt;
* ramps&lt;br /&gt;
* balls of varying densities&lt;br /&gt;
&lt;br /&gt;
The comic starts in a main screen where the user can create a {{w|Rube Goldberg machine}} in a &amp;quot;Cell&amp;quot; where the goal is to route a constant stream of colored balls from inputs on the ceiling or walls to outputs of matching colors on the walls or floor. After the comic is first opened a window pops up over the machine where Cueball in a lab coat tells you to route the balls from the inputs to the outputs. A button opens a “tool panel” where there are large and small boards available for use, as well as some gimmicky stuff like prisms&amp;lt;!-- that sort marbles by color SEEM TO 'RANDOMLY' REFRACT/DEFLECT, IF SORTING IS TRUE THEN EXPLAIN IN NEW/RELOCATED SECTION? --&amp;gt; (which deflect marbles) and fans (which blow marbles around), plus decorative elements which have no effect on the balls.&lt;br /&gt;
&lt;br /&gt;
Typically, inputs and outputs only accept balls of a single color. However, some outputs accept multiple colors, indicated by a double arrow, and some inputs produce multiple colors. When the player is designing their 'machine', this will involve multiple full streams merged into one (supplied by a double-exit on the adjacent submission). Machines now working in the full grid may, however, find that their sources now contain stray balls of other types that were not handled properly, but there is no way to force a re-edit of the machine to alter its behavior to account for this.&lt;br /&gt;
&lt;br /&gt;
If any balls are left in your cell for more than 30 seconds, they fade away. The first time a ball fades away another popup informs you that the balls are removed for security reasons. An indicator next to each exit increases for each ball of the correct color that passes through an exit, and reduces when no balls pass through, or if balls of the wrong color pass through it. While that exit is not properly supplied it displays a red cross, which changes to a green tick when a sufficient, and sufficiently clean, stream of balls is supplied. The first time you have built a machine which succeeds in routing enough balls of the correct color to ''all'' relevant outputs, a popup will prompt you to submit your cell to be added to the public machine. (Subsequently, the submit button will quietly change from 'inactive' (pale) to clickable (dark). This will change back again if any ball transfers dip back below the required threshold for any reason, such as further editing or an end to a 'fluke' glut of accumulated balls.)&lt;br /&gt;
&lt;br /&gt;
Choosing to submit your cell will give you a textbox to give this cell a name. Proceeding through that, you will now see your cell within the 'grid' and a 'live' feed of balls from any relevant neighboring cells (which may be more sporadic then the feed you designed your cell with, and contain stray balls of different types). If any supplying-neighbors are still marked as &amp;quot;under construction&amp;quot;, they ''may'' provide the balls as if perfectly routed from their own (eventual) source, but will eventually dry up. If your newly submitted creation is placed in the lowest row of cells, balls will be dispensed through the exit at the bottom, but there will be no launcher to propel them towards the pit, and they will vanish as they leave the exit.&lt;br /&gt;
&lt;br /&gt;
Upon reopening the link to this comic without coordinate and time parameters, your recently created machine will most likely not be visible in the space you built it in. [https://www.reddit.com/user/xzaphenia/comments/ Reddit user xzaphenia] has claimed on r/xkcd that this is because there is a moderation team (of which they are a member) and that [https://www.reddit.com/r/xkcd/comments/1c1ixmb/comment/kzc3rmg/ the main page only shows public, approved machines]. This team of people, including those credited as co-creators of this comic, select machines according to their preferences (and little to no formal criteria besides [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ coolness, innovativeness, effectiveness], and [https://www.reddit.com/r/xkcd/comments/1c0bsk2/comment/kyvfean/ privacy concerns]). Given the number of 'bottom-layer' cells that are likely primed ready to be completed (e.g. the grid-width of twelve, perhaps staggered across adjacent rows) and the many possible worldwide contributors at any one time, it may be that the chances of being picked for permanence is low; and certainly would have been lower early on in the comic's existence during the initial frantic rush to participate. [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ It is also claimed that at some point, moderation will be cut off and the machine will be considered &amp;quot;complete&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery heights=&amp;quot;200&amp;quot; widths=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:2916_popup_intro.png|Introduction popup&lt;br /&gt;
File:2916_popup_time.png|Time limit popup&lt;br /&gt;
File:2916_popup_submit.png|Submission popup&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The button in the bottom right corner allows you to toggle between editing your own machine and a page where you can drag around to view all of the machines that have been submitted and accepted, with a title for each in the upper left corner. In this view you can see that all of the outputs are also inputs for another cell, except for the top row where the inputs come from off screen and the lowest row which output through a launcher of some kind to a set of four colored-coded containers far below. Any empty cells are marked off by yellow tape with the words &amp;quot;UNDER CONSTRUCTION&amp;quot; as well as &amp;quot;DJIA ↑ 31415&amp;quot; once in each cell. &amp;quot;DJIA&amp;quot; stands for the Dow Jones Industrial Average, with &amp;quot;DJIA ↑ 31415&amp;quot; indicating that it rose to 31415 points, 31415 being the first five digits of pi, without the period. This would often be displayed on a yellow 'ticker', which might look superficially similar to the yellow barrier tape.&lt;br /&gt;
&lt;br /&gt;
When viewing the whole machine, a button in the bottom left corner, added later, allows you to follow the path of the nearest ball as it passes from cell to cell. This will also make the ball you are following immortal - not subject to the 30s timeout rule. However, it will stop following at the bottom of the base machine -- it will not follow into the bottom holding containers, nor keep it immortal once down there. Another later addition was a button in the top left corner which copies a URL that will take you directly to the current cell that you are viewing. However, the link that is created will always show you the version of the machine at the time that you were viewing it, without any subsequent additions.&lt;br /&gt;
&lt;br /&gt;
Whenever balls reach the bottom of the grid, they are directed towards four containers, one of each color. Most balls are accurately sent to their appropriate container, though there are some misfires. These containers are above a pit, and  dump their contents every 11.5 seconds. Balls in the pit are subject to a 97 (approx) second culling rule (including time spent in the holding containers), unlike the balls in the cells above. If no balls are directed towards the containers, the pit will be empty. If at least one stream of balls is making it, Cueball and Megan sit in a small boat named the USS Buoyancy, and when sufficient balls are being deposited, the boat begins to float and move. Balls that miss or overspill the pit fall out of the bottom of the frame.&lt;br /&gt;
&lt;br /&gt;
Under construction cells will feed balls of the appropriate color into neighboring cells so long as you are not looking at them. Once you scroll to look at them, the supply of balls stops and subsequent cells in the chain will not receive any; scroll away from them again and the supply will resume.&lt;br /&gt;
&lt;br /&gt;
The grid is 12 cells wide, and grows in height. The largest size observed so far is 12x128, for a total of 1536 cells. The machine's height is determined by the lowest cell; this can be either your submitted cell, or a cell created by another user.&lt;br /&gt;
&lt;br /&gt;
Imperfections in the machines (whether accidental or by design) and the impossibility of entirely avoiding collisions when crossing streams inevitably lead to significant levels of losses and pollution with the wrong color balls. Indeed, using the follow ball function appears to demonstrate that it is quite rare for a ball to survive more than several machines without getting stuck somewhere. This should mean that effectively no balls would reach the lower layers. This implies that there is some 'creative accounting' going on to ensure that cells lower in the grid still have balls to process - simulating flow only for a few nearby cells, while assuming that those cells themselves have pure, steady inputs.&lt;br /&gt;
&lt;br /&gt;
There is a hard limit of 100 items (both physically interactive and purely decorative) that can be placed in any given arena. If you have placed 75 items, a count will appear in the component bar of your piece-count (&amp;quot;''##''/100&amp;quot;), which will go away again if you delete items to bring it below this count. The count text turns red at &amp;quot;100/100&amp;quot;, at which point no more items can be added, only existing ones moved (or removed, to lower the count again).&lt;br /&gt;
&lt;br /&gt;
===Toolbox items===&lt;br /&gt;
====Tangible items====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=margin:auto&amp;quot;&lt;br /&gt;
! Image&lt;br /&gt;
! Item !! Explanation &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_plank.png|frameless|upright=0.25]]&lt;br /&gt;
| Plank || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_hammer.png|frameless|upright=0.25]]&lt;br /&gt;
| Hammer || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_sword.png|frameless|upright=0.25]]&lt;br /&gt;
| Sword || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_scoop.png|frameless|upright=0.25]]&amp;lt;br&amp;gt;[[File:2916_scoop_mirrored.png|frameless|upright=0.25]]&lt;br /&gt;
| Hinged scoop || It rotates around its hinge and tries to remain horizontal, with a spring-like effect. The hinged scoops are strictly horizontal when placed on the building. They rotate away from — and spring back to — the horizontal position in response to interactions with balls or other non-decorative items that may disturb their balance. These disturbances can sometimes lead to further interesting interactions, which may or may not be intentional or useful.&lt;br /&gt;
Along with the triangular Bumpers, they are the only class of objects with a clear and practical asymmetry, for which a mirrored chirality can be selected from the sidebar.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_anvil.png|frameless|upright=0.125]]&lt;br /&gt;
| Anvil || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_brick.png|frameless|upright=0.125]]&lt;br /&gt;
| Brick || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_fan.png|frameless|upright=0.125]]&lt;br /&gt;
| Fan || Blows away balls in front of it. Can be rotated 360 degrees. Different colors are affected by differing amounts (yellow balls are lightest, and can be levitated above an upward-facing fan). If a ball hits a blade of a fan, especially from the side, the bounce is larger than normal. If you put a fan interlocking with a wheel it might eventually freeze your machine.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_pillow.png|frameless|upright=0.125]]&lt;br /&gt;
| Pillow || Balls bounce less if they hit it &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_round_bumper.png|frameless|upright=0.125]] [[File:2916_bumper_left.png|frameless|upright=0.125]] [[File:2916_bumper_right.png|frameless|upright=0.125]]&lt;br /&gt;
| Bumper || Bounces balls away at significantly higher speed. Together with the Hinged scoop, they are the only object class with a clear and practical asymmetry, for which a mirrored chirality can be chosen from the sidebar. &lt;br /&gt;
|-&lt;br /&gt;
|| [[File:2916_attractor.png|frameless|upright=0.125]]&lt;br /&gt;
| Attractor/Black hole || Pulls balls toward center. The Attractor is omnidirectional, but the area of effect can be resized to extend or restrict its influence. You do this by way of its bounding box with corner and mid-edged 'drag nodes' and a circular area that shows the current extent, which are only visible when the element is actively selected. This resize can be no larger than will make the box/circle touch the edges, no smaller than the fixed graphic and will always be identically proportioned in both axes.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_repulsor.png|frameless|upright=0.125]]&lt;br /&gt;
| Repulsor/White hole || Repels balls away from center. Like the Attractor, it is omnidirectional and can be resized. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_prism.png|frameless|upright=0.125]]&lt;br /&gt;
| Prism || &amp;quot;Refracts&amp;quot; and internally-reflects balls as they otherwise pass through the object, the color of the ball ''may'' cause them to react (as much as possible) according to the respective color across the element.&amp;lt;!-- Benefit of the doubt, but it hasn't seemed to work that well for me, either. --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_wheel.png|frameless|upright=0.125]]&lt;br /&gt;
| Wheel || Spins, deflects balls, can jam with enough resistance (e.g. glut of balls or against other elements). It actively rotates and starts off, by default, spinning anticlockwise. Pressing or tapping left/right arrow keys, when a placed wheel is selected, will adjust that wheel's rotation rate to be more/less anticlockwise. Adjusting it beyond zero rotation allows you to make it spin in the opposite direction. Rotation can be increased well beyond the point at which the {{w|wagon-wheel effect}} occurs&amp;lt;!-- does it depend upon browser rendering frequency, or is there a convenient refresh-cap-rate built into the rendering engine? --&amp;gt;, which may make it difficult to work out the spin direction of an overspeed wheel element (and thus which arrow keys will slow or speed up its rotation, if you have forgotten), though observing its impact upon any balls that strike it ''should'' make its current spin-direction obvious. The 'bounding editing box' will usually appear rotated, possibly according to the spinning graphic's current orientation upon selection, but remains at that (often non-orthagonal) angle even as the wheel spins (if it can) during this period of selection for editing. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_trophy.png|frameless|upright=0.125]]&lt;br /&gt;
| &amp;quot;Good job&amp;quot; trophy (Called &amp;quot;stand&amp;quot; in assets)|| Static obstacle. Any ball can rest on the top of a trophy. This feature was probably added on purpose.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cup.png|frameless|upright=0.125]]&lt;br /&gt;
| Glass cup || Static obstacle. Container, with a nominal capacity of up to four balls (in whole or in part) within it. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat_new.png|frameless|upright=0.25]]&lt;br /&gt;
| Cat || Swats away balls in front of itself (was added later). Balls can get stuck on top of the cat or between the cat's head and tail. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intangible decorations====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;margin: auto; float: right&amp;quot;&lt;br /&gt;
! Image !! Transcript &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_ponytail_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_ponytail.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_cueball_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing Cueball, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_whitehat.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing White Hat, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap_resting.png|frameless|upright=0.25]]&lt;br /&gt;
| Rightwards-facing Knit Cap, in an 'action' pose &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Knit Cap, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_helmet.png|frameless|upright=0.125]]&lt;br /&gt;
| Helmet-wearing figure, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_squirrel.png|frameless|upright=0.125]]&lt;br /&gt;
| Squirrel &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_deterministic.png|frameless|upright=0.25]]&lt;br /&gt;
| &amp;quot;Probably Deterministic&amp;quot; sign &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_rabbit.png|frameless|upright=0.125]]&lt;br /&gt;
| [[1682: Bun|Bun]] &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat.png|frameless|upright=0.125]]&lt;br /&gt;
| Cat &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All other items can be manually re-angled by a 'loop node' arm extending from the bounding box. If you cannot see the 'angle node' for such a selected item, which is normally at the top of any freshly placed item but follows any re-angling that may have already applied, it could be that you have placed the item too close to the edge in which direction the node extends. To rotate it, move the object away from the edge to access the construction node (after which, you can drag the object back if required – but see below).&lt;br /&gt;
&lt;br /&gt;
Rotation may be limited by the {{w|minimum bounding box}} that is the 'selection box', this is not necessarily the more flush {{w|convex hull}} of the collision-map built into the graphic. Should a corner of the bounding box need to move across the edge of the build-area, it will do nothing more than touch the edge until there is sufficient angle-drag to snap it to the angle from which that corner now comes back away from the edge; or, when it has a long straight edge currently flush with the edge boundary, it may snap to exactly 180°, in rotation, whereupon the opposite long straight edge is flush to the construction area edge. All objects that are drag-moved, similarly, cannot be moved any further than their current bounding box touching the construction-area edging. The bounding box for the rotating wheel is a notable exception to this, being not under any direct angle-control by the player. Instead, it seems to use the bounding inscribed circle that defines the wheel edge iteslf.&lt;br /&gt;
&lt;br /&gt;
Apart from some interactions between the hinged scoops and any element (including other hinged scoops), there is no preventative 'collision detection' between objects during user-placement, which may overlap/cover each other (the most recently spawned item graphically overlays any earlier one). The wheel object will only spin if not constrained by other physical elements (including the spokes of an adjacent wheel, not in counter-rotation) but can still be dragged and placed anywhere within the boundary of the construction area.&lt;br /&gt;
&lt;br /&gt;
The continuous stream(s) of balls respect all ''tangible'' objects, which includes any currently being dragged/rotated, though may prematurely vanish if forced between two items moved to touch/overlap each other. It is possible to indirectly nudge balls by carefully moving a tangible object's surface into them (or holding them within it, e.g. the &amp;quot;cup&amp;quot;). This may be useful for rescuing temporarily stray balls (before they time-out anyway), unjamming an area with a construction-induced glut ''or'' for testing a ball-path that is not currently being fed 'naturally'. Doing so ''can'' then conceivably fulfil all the exit-gate requirements (temporarily), as it might also transiently spoil some required routing, but the manual intervention will not be possible once a 'machine' has been submit.&lt;br /&gt;
&lt;br /&gt;
====Non-player items====&lt;br /&gt;
{|&lt;br /&gt;
|[[File:2916_container_red.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_yellow.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_blue.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_green.png|thumb|center|80px]]&lt;br /&gt;
|}&lt;br /&gt;
Ball containers at the bottom of the machine. 420 x 195&lt;br /&gt;
&lt;br /&gt;
[[File:4d425c.png|thumb|left|250px|Cueball and Megan in the ''USS Buoyancy. 262 x 162]]&lt;br /&gt;
&lt;br /&gt;
[[File:2916_pit_bottom.png|thumb|left|400px|Pit below the ''USS Buoyancy''. 1389 x 290]]&lt;br /&gt;
&amp;lt;br clear=all&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Color routing ===&lt;br /&gt;
The different ball colors have different physical properties. Red balls are more bouncy than other balls, green balls are heavier, and yellow balls are lighter and slightly bouncy. The following values were extracted from the code:&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Color&lt;br /&gt;
! Mass&lt;br /&gt;
! Density&lt;br /&gt;
! Restitution (bounciness)&lt;br /&gt;
! Linear damping (drag)&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;00F&amp;quot; | Blue&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;F00&amp;quot; | Red&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0.8&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;0F0&amp;quot; | Green&lt;br /&gt;
| 0.75&lt;br /&gt;
| 9.325&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;FF0&amp;quot; | Yellow&lt;br /&gt;
| 0.024&lt;br /&gt;
| 0.3&lt;br /&gt;
| 0.6&lt;br /&gt;
| 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Balls also have spin, but it is subtle and hard to see because the balls have no visible texture.It can be seen, with effort, using green balls (which are heaviest). Rolling down a slope (say, two boards), green balls accumulate spin in the direction they are rolling. Let them drop off the end and then bounce off a brick such that they travel upward, but with very little sideways motion. Then &amp;quot;catch&amp;quot; the balls with a brick just past their apex, when they are moving slowly. If the ball lands on a horizontal brick, it can be seen that the ball will suddenly accelerate left or right based on the spin.&lt;br /&gt;
&lt;br /&gt;
For certain combinations of inlet and outlet 'gates', it is necessary to 'cross the streams'. e.g. to direct righthand-entry balls to a lefthand-exit and vice-versa. It is possible to just construct the field to send two (or more!) sets of balls to fly across a common gap, to land on an appropriate reception area that leads to the chosen exit. But, though this is not {{w|Proton pack#Crossing the streams|completely inadvised}}, the timing of the balls cannot be guaranteed to be in sync (or, rather, anti-sync) with each other and collisions ''will'' occur, especially under the variations of delivery that might significantly alter the ballistic path across the gap. Even if the trial machine works, in isolation with a steady stream of all balls entering the field of play, once submitted it will inevitably be fed by a more chaotically-routed preceeding construction.&lt;br /&gt;
&lt;br /&gt;
In order to maintain sufficient correct arrivals at exits&amp;lt;!-- and, I believe, sufficiently few ''wrong'' arrivals... does it enumerate the 'net correct delivery rate' to establish the validity of the output? ...needs more research --&amp;gt;, it may be necessary to add a method of filtering the hues.&lt;br /&gt;
&lt;br /&gt;
This could just mean introducing a 'wrong hue trap' beyond any crossing point(s) that send the occasionally wrong ball back to the cross point (or let them time-out in a dead-end, relying upon few enough failures from the rest of the balls, along with all colliding balls that subsequently missed ''any'' chance of reaching an exit). Alternatively, two (or more) feeds of marbles could be fed through a deliberate 'sorter' that does a sufficiently reasonable job of separating the combined sets out towards their intended target-exits.&lt;br /&gt;
&lt;br /&gt;
The various physical qualities of the balls suggest a number of methods for redirecting separate hues to separate onward journeys. This can be done by isolating a hue from every other hue, then passing on (if necessary) to a setup extracting a different one from the remainder, and perhaps also a third time. It may also be possible to merge 'arrangements' of sorting mechanics to efficiently distribute straight into three ''or even four'' onward tracks towards the desired outputs, but that is left as an exercise to the reader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This may not be the most efficient depiction (with just four/less 'core methods', after following &amp;quot;See X/Y&amp;quot;s) but if the Prism or some other item actually adds zignificantly practical pre-&amp;quot;See&amp;quot; differences then the all-vs-all format (with the reversals/same-to-sames still there to be abbreviated/redirected) will come into its own.&lt;br /&gt;
If you so wish, redo. e.g. as &amp;quot;;header + :paragraph&amp;quot;s or table of &amp;quot;!Combo(s)!!Methodology&amp;quot;&lt;br /&gt;
NB:&lt;br /&gt;
  1x ! Row-start Style=                                                 | Row-start 'header'&lt;br /&gt;
  4x | *Unwikiparsable key just for editors' benefit* + optional Style= | Contents&lt;br /&gt;
...right now, I've mostly added &amp;quot;vertical fan&amp;quot; experiences (which I find useful for all but R/B differentiation), but more about bumpers (including fan-/wheel-collisions), the positive/negative 'force objects' and of course horizontal/angled fans could also be added.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:black; color:white&amp;quot; | To separate !! style=&amp;quot;background-color:lightblue&amp;quot; | Blue !! style=&amp;quot;background-color:lightgreen&amp;quot; | Green !! style=&amp;quot;background-color:yellow&amp;quot; | Yellow !! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
| *R/B* | '''Use 'bounce''''&lt;br /&gt;
The sole difference is how much balls will rebound from objects. Well managed and constrained ricochets should allow a sorting action.&lt;br /&gt;
| *R/G* | '''Use mass or 'bounce''''&lt;br /&gt;
Green balls are not easily affected by a fan or a black hole, making it easier to sort from other balls. On the other hand, it also means it is very hard to precisely accelerate green, since the only components able to accelerate green is the bonk and the kitten.&amp;lt;br/&amp;gt;Green, like Blue, rebounds differently to Red.&lt;br /&gt;
| *R/Y* | ''See&amp;lt;br /&amp;gt;Y/B+G''&lt;br /&gt;
| *R/R* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:yellow&amp;quot; | Yellow&lt;br /&gt;
| *Y/B+G* colspan=2| '''All methods'''&lt;br /&gt;
Yellow, alone, exhibits high drag against any unforced motion.&amp;lt;br/&amp;gt;It is also unique in all other ways; e.g. can be levitated highest, against all other hues (though most profoundly against Green).&lt;br /&gt;
| *Y/Y* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *Y/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- R/Y-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightgreen&amp;quot; | Green&lt;br /&gt;
| *G/B* | '''Use mass'''&lt;br /&gt;
Green balls are only minimally affected by a fan.&amp;lt;br/&amp;gt;There is also a not so marginal difference in density that might be exploited, such as by using black holes, which only minimally effects Green (perhaps showing an effective difference between mass of attraction and mass of inertia).&lt;br /&gt;
| *G/G* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *G/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- Y/G-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
| *G/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/G&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightblue&amp;quot; | Blue&lt;br /&gt;
| *B/B* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *B/G* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See G/B&lt;br /&gt;
| *B/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See&amp;lt;br /&amp;gt;Y/B+G&lt;br /&gt;
| *B/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Even when not strictly necessary for one's own submission, once submitted into the full playing grid the player's own contribution may find itself working with less 'pure' delivered ball-streams (from an imperfectly separating feed-in contribution). It is possible that this more interactive disruption can make the new setup behave erratically or even entirely incorrectly.&lt;br /&gt;
&lt;br /&gt;
It might be thought good practice (but not ''necessary'') to deliberately combine any or all inputs and do a full job of splitting them again, just in anticipation of possibly having to deal with such cross-contamination and being able to 'clean up' the onward stream(s) for the benefit of others. This would of course be particularly difficult if the isolated building-phase does not provide all four hues to 'test' against, so any speculatively added filtering would have to be added 'blind' (and only on the offchance that any anticipated incorrect balls will actually enter the arena) and without any legitimate exits to which such rejects could be shunted (therefore could accumulate, up until any 'time out' that might apply to any ball once operational as part of the combined grid).&lt;br /&gt;
&lt;br /&gt;
Single-input/single-output designs might not particularly require ''any'' sorting mechanism, in theory, though the unexpected 'contamination' of the system with balls of different masses/etc could perhaps introduce malfunctioning passage from the added chaos it might succumb to.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Finish transcribing the comic!}}&lt;br /&gt;
&lt;br /&gt;
:[The placeholder image shows four balls, colored red, green, yellow and blue, bouncing on top of three white blocks. Text in the center: &amp;quot;[visit xkcd.com to view]&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
:[In the game, colored balls fall out of rotating half-gears that spawn at random from the wall and/or ceiling while an opposite set of half-gears rotate with a colored triangle pointing to that intersection of said set of gears. There is a button that says &amp;quot;view machine&amp;quot; button in the bottom right corner. When clicked, it takes you to a larger grid of others' machines that you can view in a larger grid. There is another button with a wrench which is a menu that gives you tools and decorations to move the balls to the set of gears with the colored corresponding triangle.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, intro popup]&lt;br /&gt;
:Cueball: Balls falling into your cell should be routed to the outputs at a steady rate.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, warning popup]&lt;br /&gt;
:Cueball: For security reasons, balls that remain in your device for more than 30 seconds will be removed and destroyed.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, submit popup]&lt;br /&gt;
:Cueball: Congratulations! Your contraption has passed all tests. Press [submit button] to submit it to be added to the machine!&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
* Once again an April Fool's Day Comic came out late, as Randall did not release this on April 1st, even though April 1st did fall on a Monday, a normal release day. It first came four days later with the Friday release on April 5th. That this is to be considered an April Fools' Day comic, in spite of the later release, was confirmed on the xkcd Facebook page.&lt;br /&gt;
*Randall acknowledges the people who helped him create this comic in a [[Header_text#Machine|comic-specific header text]], with 11 different involved apart from Randall this is by far the comic with most people involved.&lt;br /&gt;
&lt;br /&gt;
*Some hidden keyboard shortcuts have been found:&lt;br /&gt;
** Follow balls: Ctrl + Alt/Option + B (now also accessible by using the button provided)&lt;br /&gt;
** Show debug overlay: Ctrl + Shift + Win/Cmd + D&lt;br /&gt;
***  This may particularly clash with browser functionality, e.g. Firefox's &amp;quot;New Bookmarks&amp;quot; dialogue which will need closing, though still activating the overlay graphics.&lt;br /&gt;
** Delete selected item: Delete (Fn + Delete on Mac)&lt;br /&gt;
&lt;br /&gt;
*When Randall posted a [https://www.facebook.com/TheXKCD/posts/pfbid0Cs97awQZi1ZiaEXouAex9tXrwAS3qJV3RmAiuCq5uvZQwqZVMgDmcqJ7JU9LYodYl link to this comic] on his [https://www.facebook.com/TheXKCD Facebook feed], he directly wrote that it was a late April Fools' Day!&lt;br /&gt;
**This thus ends any discussion of whether this should be seen as an April Fool's comic or not, it just came out 4 days late. This has also happened several times since [[Garden]].&lt;br /&gt;
[[File:2916 Machine Facebook April fools' confirmation.png]]&lt;br /&gt;
*The [https://github.com/xkcd/incredible source code] for the comic was released on GitHub on May 8, 2024.&lt;br /&gt;
**chromakode, one of the developers, also published a [https://chromakode.com/post/xkcd-machine/ blog post discussing the design and development process].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Dynamic comics]]&lt;br /&gt;
[[Category:Comics with animation]] &lt;br /&gt;
[[Category:Interactive comics]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Comics featuring White Hat]]&lt;br /&gt;
[[Category:Comics featuring Knit Cap]]&lt;br /&gt;
[[Category:Characters with hats]]&lt;br /&gt;
[[Category:Squirrels]]&lt;br /&gt;
[[Category:Buns]]&lt;br /&gt;
[[Category:Cats]]&lt;br /&gt;
[[Category:Physics]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383984</id>
		<title>2916: Machine</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383984"/>
				<updated>2025-08-12T07:40:28Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Non-player items */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2916&lt;br /&gt;
| date      = April 5, 2024&lt;br /&gt;
| title     = Machine&lt;br /&gt;
| image     = machine_2x.png&lt;br /&gt;
| imagesize = 740x740px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = The Credible Machine&lt;br /&gt;
}}&lt;br /&gt;
{{series&lt;br /&gt;
| series        = April&lt;br /&gt;
| number        = 15&lt;br /&gt;
| date          = April 5, 2024&lt;br /&gt;
| days_late     = 4&lt;br /&gt;
| day_category  = Friday&lt;br /&gt;
| prev_title    = 2765: Escape Speed&lt;br /&gt;
| prev_date     = April 19, 2023&lt;br /&gt;
| next_title    = 3074: Push Notifications&lt;br /&gt;
| next_date     = April 9, 2025&lt;br /&gt;
| extra_text    = [[#Trivia|Learn why this comic was released late]].&lt;br /&gt;
}}&lt;br /&gt;
{{TOC}}To experience the interactivity of the game, visit the {{xkcd|2916|original comic}}!&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*Finish the explanations for how the items work in section [[#Toolbox items]].&lt;br /&gt;
&lt;br /&gt;
*Also, the [[#Trivia]] section is a mess. Need to clean it up and use coherent sentences.&lt;br /&gt;
&lt;br /&gt;
*The article shouldn't start with a list of what's been added to the comic before explaining it...}}&lt;br /&gt;
&amp;quot;Machine&amp;quot; has been updated multiple times in the weeks following its release, adding the following features:&lt;br /&gt;
* the trophy and shot glass props&lt;br /&gt;
* the cat, which swats balls in front of it&lt;br /&gt;
* the inanimate kitten and bun decorations&lt;br /&gt;
* a system of links, which encodes the XY coordinates of the currently viewed cell, and the time (i.e. the entire machine's state after a certain moderation action)&lt;br /&gt;
* a button to follow a nearby ball as it traverses through the machine, also preventing it from despawning&lt;br /&gt;
&lt;br /&gt;
As referenced in the title text, this game is a spiritual successor to the 1990s and early 2000s PC puzzle game series {{w|The Incredible Machine}}, a game Randall played as a kid. Both games have several objects in common:&lt;br /&gt;
* fan&lt;br /&gt;
* cat&lt;br /&gt;
* ramps&lt;br /&gt;
* balls of varying densities&lt;br /&gt;
&lt;br /&gt;
The comic starts in a main screen where the user can create a {{w|Rube Goldberg machine}} in a &amp;quot;Cell&amp;quot; where the goal is to route a constant stream of colored balls from inputs on the ceiling or walls to outputs of matching colors on the walls or floor. After the comic is first opened a window pops up over the machine where Cueball in a lab coat tells you to route the balls from the inputs to the outputs. A button opens a “tool panel” where there are large and small boards available for use, as well as some gimmicky stuff like prisms&amp;lt;!-- that sort marbles by color SEEM TO 'RANDOMLY' REFRACT/DEFLECT, IF SORTING IS TRUE THEN EXPLAIN IN NEW/RELOCATED SECTION? --&amp;gt; (which deflect marbles) and fans (which blow marbles around), plus decorative elements which have no effect on the balls.&lt;br /&gt;
&lt;br /&gt;
Typically, inputs and outputs only accept balls of a single color. However, some outputs accept multiple colors, indicated by a double arrow, and some inputs produce multiple colors. When the player is designing their 'machine', this will involve multiple full streams merged into one (supplied by a double-exit on the adjacent submission). Machines now working in the full grid may, however, find that their sources now contain stray balls of other types that were not handled properly, but there is no way to force a re-edit of the machine to alter its behavior to account for this.&lt;br /&gt;
&lt;br /&gt;
If any balls are left in your cell for more than 30 seconds, they fade away. The first time a ball fades away another popup informs you that the balls are removed for security reasons. An indicator next to each exit increases for each ball of the correct color that passes through an exit, and reduces when no balls pass through, or if balls of the wrong color pass through it. While that exit is not properly supplied it displays a red cross, which changes to a green tick when a sufficient, and sufficiently clean, stream of balls is supplied. The first time you have built a machine which succeeds in routing enough balls of the correct color to ''all'' relevant outputs, a popup will prompt you to submit your cell to be added to the public machine. (Subsequently, the submit button will quietly change from 'inactive' (pale) to clickable (dark). This will change back again if any ball transfers dip back below the required threshold for any reason, such as further editing or an end to a 'fluke' glut of accumulated balls.)&lt;br /&gt;
&lt;br /&gt;
Choosing to submit your cell will give you a textbox to give this cell a name. Proceeding through that, you will now see your cell within the 'grid' and a 'live' feed of balls from any relevant neighboring cells (which may be more sporadic then the feed you designed your cell with, and contain stray balls of different types). If any supplying-neighbors are still marked as &amp;quot;under construction&amp;quot;, they ''may'' provide the balls as if perfectly routed from their own (eventual) source, but will eventually dry up. If your newly submitted creation is placed in the lowest row of cells, balls will be dispensed through the exit at the bottom, but there will be no launcher to propel them towards the pit, and they will vanish as they leave the exit.&lt;br /&gt;
&lt;br /&gt;
Upon reopening the link to this comic without coordinate and time parameters, your recently created machine will most likely not be visible in the space you built it in. [https://www.reddit.com/user/xzaphenia/comments/ Reddit user xzaphenia] has claimed on r/xkcd that this is because there is a moderation team (of which they are a member) and that [https://www.reddit.com/r/xkcd/comments/1c1ixmb/comment/kzc3rmg/ the main page only shows public, approved machines]. This team of people, including those credited as co-creators of this comic, select machines according to their preferences (and little to no formal criteria besides [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ coolness, innovativeness, effectiveness], and [https://www.reddit.com/r/xkcd/comments/1c0bsk2/comment/kyvfean/ privacy concerns]). Given the number of 'bottom-layer' cells that are likely primed ready to be completed (e.g. the grid-width of twelve, perhaps staggered across adjacent rows) and the many possible worldwide contributors at any one time, it may be that the chances of being picked for permanence is low; and certainly would have been lower early on in the comic's existence during the initial frantic rush to participate. [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ It is also claimed that at some point, moderation will be cut off and the machine will be considered &amp;quot;complete&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery heights=&amp;quot;200&amp;quot; widths=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:2916_popup_intro.png|Introduction popup&lt;br /&gt;
File:2916_popup_time.png|Time limit popup&lt;br /&gt;
File:2916_popup_submit.png|Submission popup&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The button in the bottom right corner allows you to toggle between editing your own machine and a page where you can drag around to view all of the machines that have been submitted and accepted, with a title for each in the upper left corner. In this view you can see that all of the outputs are also inputs for another cell, except for the top row where the inputs come from off screen and the lowest row which output through a launcher of some kind to a set of four colored-coded containers far below. Any empty cells are marked off by yellow tape with the words &amp;quot;UNDER CONSTRUCTION&amp;quot; as well as &amp;quot;DJIA ↑ 31415&amp;quot; once in each cell. &amp;quot;DJIA&amp;quot; stands for the Dow Jones Industrial Average, with &amp;quot;DJIA ↑ 31415&amp;quot; indicating that it rose to 31415 points, 31415 being the first five digits of pi, without the period. This would often be displayed on a yellow 'ticker', which might look superficially similar to the yellow barrier tape.&lt;br /&gt;
&lt;br /&gt;
When viewing the whole machine, a button in the bottom left corner, added later, allows you to follow the path of the nearest ball as it passes from cell to cell. This will also make the ball you are following immortal - not subject to the 30s timeout rule. However, it will stop following at the bottom of the base machine -- it will not follow into the bottom holding containers, nor keep it immortal once down there. Another later addition was a button in the top left corner which copies a URL that will take you directly to the current cell that you are viewing. However, the link that is created will always show you the version of the machine at the time that you were viewing it, without any subsequent additions.&lt;br /&gt;
&lt;br /&gt;
Whenever balls reach the bottom of the grid, they are directed towards four containers, one of each color. Most balls are accurately sent to their appropriate container, though there are some misfires. These containers are above a pit, and  dump their contents every 11.5 seconds. Balls in the pit are subject to a 97 (approx) second culling rule (including time spent in the holding containers), unlike the balls in the cells above. If no balls are directed towards the containers, the pit will be empty. If at least one stream of balls is making it, Cueball and Megan sit in a small boat named the USS Buoyancy, and when sufficient balls are being deposited, the boat begins to float and move. Balls that miss or overspill the pit fall out of the bottom of the frame.&lt;br /&gt;
&lt;br /&gt;
Under construction cells will feed balls of the appropriate color into neighboring cells so long as you are not looking at them. Once you scroll to look at them, the supply of balls stops and subsequent cells in the chain will not receive any; scroll away from them again and the supply will resume.&lt;br /&gt;
&lt;br /&gt;
The grid is 12 cells wide, and grows in height. The largest size observed so far is 12x128, for a total of 1536 cells. The machine's height is determined by the lowest cell; this can be either your submitted cell, or a cell created by another user.&lt;br /&gt;
&lt;br /&gt;
Imperfections in the machines (whether accidental or by design) and the impossibility of entirely avoiding collisions when crossing streams inevitably lead to significant levels of losses and pollution with the wrong color balls. Indeed, using the follow ball function appears to demonstrate that it is quite rare for a ball to survive more than several machines without getting stuck somewhere. This should mean that effectively no balls would reach the lower layers. This implies that there is some 'creative accounting' going on to ensure that cells lower in the grid still have balls to process - simulating flow only for a few nearby cells, while assuming that those cells themselves have pure, steady inputs.&lt;br /&gt;
&lt;br /&gt;
There is a hard limit of 100 items (both physically interactive and purely decorative) that can be placed in any given arena. If you have placed 75 items, a count will appear in the component bar of your piece-count (&amp;quot;''##''/100&amp;quot;), which will go away again if you delete items to bring it below this count. The count text turns red at &amp;quot;100/100&amp;quot;, at which point no more items can be added, only existing ones moved (or removed, to lower the count again).&lt;br /&gt;
&lt;br /&gt;
===Toolbox items===&lt;br /&gt;
====Tangible items====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=margin:auto&amp;quot;&lt;br /&gt;
! Image&lt;br /&gt;
! Item !! Explanation &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_plank.png|frameless|upright=0.25]]&lt;br /&gt;
| Plank || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_hammer.png|frameless|upright=0.25]]&lt;br /&gt;
| Hammer || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_sword.png|frameless|upright=0.25]]&lt;br /&gt;
| Sword || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_scoop.png|frameless|upright=0.25]]&amp;lt;br&amp;gt;[[File:2916_scoop_mirrored.png|frameless|upright=0.25]]&lt;br /&gt;
| Hinged scoop || It rotates around its hinge and tries to remain horizontal, with a spring-like effect. The hinged scoops are strictly horizontal when placed on the building. They rotate away from — and spring back to — the horizontal position in response to interactions with balls or other non-decorative items that may disturb their balance. These disturbances can sometimes lead to further interesting interactions, which may or may not be intentional or useful.&lt;br /&gt;
Along with the triangular Bumpers, they are the only class of objects with a clear and practical asymmetry, for which a mirrored chirality can be selected from the sidebar.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_anvil.png|frameless|upright=0.125]]&lt;br /&gt;
| Anvil || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_brick.png|frameless|upright=0.125]]&lt;br /&gt;
| Brick || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_fan.png|frameless|upright=0.125]]&lt;br /&gt;
| Fan || Blows away balls in front of it. Can be rotated 360 degrees. Different colors are affected by differing amounts (yellow balls are lightest, and can be levitated above an upward-facing fan). If a ball hits a blade of a fan, especially from the side, the bounce is larger than normal. If you put a fan interlocking with a wheel it might eventually freeze your machine.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_pillow.png|frameless|upright=0.125]]&lt;br /&gt;
| Pillow || Balls bounce less if they hit it &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_round_bumper.png|frameless|upright=0.125]] [[File:2916_bumper_left.png|frameless|upright=0.125]] [[File:2916_bumper_right.png|frameless|upright=0.125]]&lt;br /&gt;
| Bumper || Bounces balls away at significantly higher speed. Together with the Hinged scoop, they are the only object class with a clear and practical asymmetry, for which a mirrored chirality can be chosen from the sidebar. &lt;br /&gt;
|-&lt;br /&gt;
|| [[File:2916_attractor.png|frameless|upright=0.125]]&lt;br /&gt;
| Attractor/Black hole || Pulls balls toward center. The Attractor is omnidirectional, but the area of effect can be resized to extend or restrict its influence. You do this by way of its bounding box with corner and mid-edged 'drag nodes' and a circular area that shows the current extent, which are only visible when the element is actively selected. This resize can be no larger than will make the box/circle touch the edges, no smaller than the fixed graphic and will always be identically proportioned in both axes.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_repulsor.png|frameless|upright=0.125]]&lt;br /&gt;
| Repulsor/White hole || Repels balls away from center. Like the Attractor, it is omnidirectional and can be resized. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_prism.png|frameless|upright=0.125]]&lt;br /&gt;
| Prism || &amp;quot;Refracts&amp;quot; and internally-reflects balls as they otherwise pass through the object, the color of the ball ''may'' cause them to react (as much as possible) according to the respective color across the element.&amp;lt;!-- Benefit of the doubt, but it hasn't seemed to work that well for me, either. --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_wheel.png|frameless|upright=0.125]]&lt;br /&gt;
| Wheel || Spins, deflects balls, can jam with enough resistance (e.g. glut of balls or against other elements). It actively rotates and starts off, by default, spinning anticlockwise. Pressing or tapping left/right arrow keys, when a placed wheel is selected, will adjust that wheel's rotation rate to be more/less anticlockwise. Adjusting it beyond zero rotation allows you to make it spin in the opposite direction. Rotation can be increased well beyond the point at which the {{w|wagon-wheel effect}} occurs&amp;lt;!-- does it depend upon browser rendering frequency, or is there a convenient refresh-cap-rate built into the rendering engine? --&amp;gt;, which may make it difficult to work out the spin direction of an overspeed wheel element (and thus which arrow keys will slow or speed up its rotation, if you have forgotten), though observing its impact upon any balls that strike it ''should'' make its current spin-direction obvious. The 'bounding editing box' will usually appear rotated, possibly according to the spinning graphic's current orientation upon selection, but remains at that (often non-orthagonal) angle even as the wheel spins (if it can) during this period of selection for editing. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_trophy.png|frameless|upright=0.125]]&lt;br /&gt;
| &amp;quot;Good job&amp;quot; trophy (Called &amp;quot;stand&amp;quot; in assets)|| Static obstacle. Any ball can rest on the top of a trophy. This feature was probably added on purpose.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cup.png|frameless|upright=0.125]]&lt;br /&gt;
| Glass cup || Static obstacle. Container, with a nominal capacity of up to four balls (in whole or in part) within it. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat_new.png|frameless|upright=0.25]]&lt;br /&gt;
| Cat || Swats away balls in front of itself (was added later). Balls can get stuck on top of the cat or between the cat's head and tail. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intangible decorations====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;margin: auto; float: right&amp;quot;&lt;br /&gt;
! Image !! Transcript &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_ponytail_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_ponytail.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_cueball_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing Cueball, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_whitehat.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing White Hat, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap_resting.png|frameless|upright=0.25]]&lt;br /&gt;
| Rightwards-facing Knit Cap, in an 'action' pose &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Knit Cap, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_helmet.png|frameless|upright=0.125]]&lt;br /&gt;
| Helmet-wearing figure, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_squirrel.png|frameless|upright=0.125]]&lt;br /&gt;
| Squirrel &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_deterministic.png|frameless|upright=0.25]]&lt;br /&gt;
| &amp;quot;Probably Deterministic&amp;quot; sign &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_rabbit.png|frameless|upright=0.125]]&lt;br /&gt;
| [[1682: Bun|Bun]] &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat.png|frameless|upright=0.125]]&lt;br /&gt;
| Cat &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All other items can be manually re-angled by a 'loop node' arm extending from the bounding box. If you cannot see the 'angle node' for such a selected item, which is normally at the top of any freshly placed item but follows any re-angling that may have already applied, it could be that you have placed the item too close to the edge in which direction the node extends. To rotate it, move the object away from the edge to access the construction node (after which, you can drag the object back if required – but see below).&lt;br /&gt;
&lt;br /&gt;
Rotation may be limited by the {{w|minimum bounding box}} that is the 'selection box', this is not necessarily the more flush {{w|convex hull}} of the collision-map built into the graphic. Should a corner of the bounding box need to move across the edge of the build-area, it will do nothing more than touch the edge until there is sufficient angle-drag to snap it to the angle from which that corner now comes back away from the edge; or, when it has a long straight edge currently flush with the edge boundary, it may snap to exactly 180°, in rotation, whereupon the opposite long straight edge is flush to the construction area edge. All objects that are drag-moved, similarly, cannot be moved any further than their current bounding box touching the construction-area edging. The bounding box for the rotating wheel is a notable exception to this, being not under any direct angle-control by the player. Instead, it seems to use the bounding inscribed circle that defines the wheel edge iteslf.&lt;br /&gt;
&lt;br /&gt;
Apart from some interactions between the hinged scoops and any element (including other hinged scoops), there is no preventative 'collision detection' between objects during user-placement, which may overlap/cover each other (the most recently spawned item graphically overlays any earlier one). The wheel object will only spin if not constrained by other physical elements (including the spokes of an adjacent wheel, not in counter-rotation) but can still be dragged and placed anywhere within the boundary of the construction area.&lt;br /&gt;
&lt;br /&gt;
The continuous stream(s) of balls respect all ''tangible'' objects, which includes any currently being dragged/rotated, though may prematurely vanish if forced between two items moved to touch/overlap each other. It is possible to indirectly nudge balls by carefully moving a tangible object's surface into them (or holding them within it, e.g. the &amp;quot;cup&amp;quot;). This may be useful for rescuing temporarily stray balls (before they time-out anyway), unjamming an area with a construction-induced glut ''or'' for testing a ball-path that is not currently being fed 'naturally'. Doing so ''can'' then conceivably fulfil all the exit-gate requirements (temporarily), as it might also transiently spoil some required routing, but the manual intervention will not be possible once a 'machine' has been submit.&lt;br /&gt;
&lt;br /&gt;
====Non-player items====&lt;br /&gt;
{|&lt;br /&gt;
|[[File:2916_container_red.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_yellow.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_blue.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_green.png|thumb|center|80px]]&lt;br /&gt;
|}&lt;br /&gt;
Ball containers at the bottom of the machine. 420 x 195&lt;br /&gt;
&lt;br /&gt;
[[File:4d425c.png|thumb|left|250px|Cueball and Megan in the ''USS Buoyancy. 262 x 162]]&lt;br /&gt;
&lt;br /&gt;
[[File:2916_pit_bottom.png|thumb|left|400px|Pit below the ''USS Buoyancy''. 1389 x 290]]&lt;br /&gt;
&amp;lt;br clear=all&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Color routing ===&lt;br /&gt;
The different ball colors have different physical properties. Red balls are more bouncy than other balls, green balls are heavier, and yellow balls are lighter and slightly bouncy. The following values were extracted from the code:&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Color&lt;br /&gt;
! Mass&lt;br /&gt;
! Density&lt;br /&gt;
! Restitution (bounciness)&lt;br /&gt;
! Linear damping (drag)&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;00F&amp;quot; | Blue&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;F00&amp;quot; | Red&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0.8&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;0F0&amp;quot; | Green&lt;br /&gt;
| 0.75&lt;br /&gt;
| 9.325&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;FF0&amp;quot; | Yellow&lt;br /&gt;
| 0.024&lt;br /&gt;
| 0.3&lt;br /&gt;
| 0.6&lt;br /&gt;
| 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Balls also have spin, but it is subtle and hard to see because the balls have no visible texture.It can be seen, with effort, using green balls (which are heaviest). Rolling down a slope (say, two boards), green balls accumulate spin in the direction they are rolling. Let them drop off the end and then bounce off a brick such that they travel upward, but with very little sideways motion. Then &amp;quot;catch&amp;quot; the balls with a brick just past their apex, when they are moving slowly. If the ball lands on a horizontal brick, it can be seen that the ball will suddenly accelerate left or right based on the spin.&lt;br /&gt;
&lt;br /&gt;
For certain combinations of inlet and outlet 'gates', it is necessary to 'cross the streams'. e.g. to direct righthand-entry balls to a lefthand-exit and vice-versa. It is possible to just construct the field to send two (or more!) sets of balls to fly across a common gap, to land on an appropriate reception area that leads to the chosen exit. But, though this is not {{w|Proton pack#Crossing the streams|completely inadvised}}, the timing of the balls cannot be guaranteed to be in sync (or, rather, anti-sync) with each other and collisions ''will'' occur, especially under the variations of delivery that might significantly alter the ballistic path across the gap. Even if the trial machine works, in isolation with a steady stream of all balls entering the field of play, once submitted it will inevitably be fed by a more chaotically-routed preceeding construction.&lt;br /&gt;
&lt;br /&gt;
In order to maintain sufficient correct arrivals at exits&amp;lt;!-- and, I believe, sufficiently few ''wrong'' arrivals... does it enumerate the 'net correct delivery rate' to establish the validity of the output? ...needs more research --&amp;gt;, it may be necessary to add a method of filtering the hues.&lt;br /&gt;
&lt;br /&gt;
This could just mean introducing a 'wrong hue trap' beyond any crossing point(s) that send the occasionally wrong ball back to the cross point (or let them time-out in a dead-end, relying upon few enough failures from the rest of the balls, along with all colliding balls that subsequently missed ''any'' chance of reaching an exit). Alternatively, two (or more) feeds of marbles could be fed through a deliberate 'sorter' that does a sufficiently reasonable job of separating the combined sets out towards their intended target-exits.&lt;br /&gt;
&lt;br /&gt;
The various physical qualities of the balls suggest a number of methods for redirecting separate hues to separate onward journeys. This can be done by isolating a hue from every other hue, then passing on (if necessary) to a setup extracting a different one from the remainder, and perhaps also a third time. It may also be possible to merge 'arrangements' of sorting mechanics to efficiently distribute straight into three ''or even four'' onward tracks towards the desired outputs, but that is left as an exercise to the reader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This may not be the most efficient depiction (with just four/less 'core methods', after following &amp;quot;See X/Y&amp;quot;s) but if the Prism or some other item actually adds zignificantly practical pre-&amp;quot;See&amp;quot; differences then the all-vs-all format (with the reversals/same-to-sames still there to be abbreviated/redirected) will come into its own.&lt;br /&gt;
If you so wish, redo. e.g. as &amp;quot;;header + :paragraph&amp;quot;s or table of &amp;quot;!Combo(s)!!Methodology&amp;quot;&lt;br /&gt;
NB:&lt;br /&gt;
  1x ! Row-start Style=                                                 | Row-start 'header'&lt;br /&gt;
  4x | *Unwikiparsable key just for editors' benefit* + optional Style= | Contents&lt;br /&gt;
...right now, I've mostly added &amp;quot;vertical fan&amp;quot; experiences (which I find useful for all but R/B differentiation), but more about bumpers (including fan-/wheel-collisions), the positive/negative 'force objects' and of course horizontal/angled fans could also be added.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:black; color:white&amp;quot; | To separate !! style=&amp;quot;background-color:lightblue&amp;quot; | Blue !! style=&amp;quot;background-color:lightgreen&amp;quot; | Green !! style=&amp;quot;background-color:yellow&amp;quot; | Yellow !! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
| *R/B* | '''Use 'bounce''''&lt;br /&gt;
The sole difference is how much balls will rebound from objects. Well managed and constrained ricochets should allow a sorting action.&lt;br /&gt;
| *R/G* | '''Use mass or 'bounce''''&lt;br /&gt;
Green balls are not easily affected by a fan or a black hole, making it easier to sort from other balls. On the other hand, it also means it is very hard to precisely accelerate green, since the only components able to accelerate green is the bonk and the kitten.&amp;lt;br/&amp;gt;Green, like Blue, rebounds differently to Red.&lt;br /&gt;
| *R/Y* | ''See&amp;lt;br /&amp;gt;Y/B+G''&lt;br /&gt;
| *R/R* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:yellow&amp;quot; | Yellow&lt;br /&gt;
| *Y/B+G* colspan=2| '''All methods'''&lt;br /&gt;
Yellow, alone, exhibits high drag against any unforced motion.&amp;lt;br/&amp;gt;It is also unique in all other ways; e.g. can be levitated highest, against all other hues (though most profoundly against Green).&lt;br /&gt;
| *Y/Y* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *Y/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- R/Y-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightgreen&amp;quot; | Green&lt;br /&gt;
| *G/B* | '''Use mass'''&lt;br /&gt;
Green balls are only minimally affected by a fan.&amp;lt;br/&amp;gt;There is also a not so marginal difference in density that might be exploited, such as by using black holes, which only minimally effects Green (perhaps showing an effective difference between mass of attraction and mass of inertia).&lt;br /&gt;
| *G/G* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *G/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- Y/G-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
| *G/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/G&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightblue&amp;quot; | Blue&lt;br /&gt;
| *B/B* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *B/G* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See G/B&lt;br /&gt;
| *B/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See&amp;lt;br /&amp;gt;Y/B+G&lt;br /&gt;
| *B/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Even when not strictly necessary for one's own submission, once submitted into the full playing grid the player's own contribution may find itself working with less 'pure' delivered ball-streams (from an imperfectly separating feed-in contribution). It is possible that this more interactive disruption can make the new setup behave erratically or even entirely incorrectly.&lt;br /&gt;
&lt;br /&gt;
It might be thought good practice (but not ''necessary'') to deliberately combine any or all inputs and do a full job of splitting them again, just in anticipation of possibly having to deal with such cross-contamination and being able to 'clean up' the onward stream(s) for the benefit of others. This would of course be particularly difficult if the isolated building-phase does not provide all four hues to 'test' against, so any speculatively added filtering would have to be added 'blind' (and only on the offchance that any anticipated incorrect balls will actually enter the arena) and without any legitimate exits to which such rejects could be shunted (therefore could accumulate, up until any 'time out' that might apply to any ball once operational as part of the combined grid).&lt;br /&gt;
&lt;br /&gt;
Single-input/single-output designs might not particularly require ''any'' sorting mechanism, in theory, though the unexpected 'contamination' of the system with balls of different masses/etc could perhaps introduce malfunctioning passage from the added chaos it might succumb to.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Finish transcribing the comic!}}&lt;br /&gt;
&lt;br /&gt;
:[The placeholder image shows four balls, colored red, green, yellow and blue, bouncing on top of three white blocks. Text in the center: &amp;quot;[visit xkcd.com to view]&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
:[In the game, colored balls fall out of rotating half-gears that spawn at random from the wall and/or ceiling while an opposite set of half-gears rotate with a colored triangle pointing to that intersection of said set of gears. There is a button that says &amp;quot;view machine&amp;quot; button in the bottom right corner. When clicked, it takes you to a larger grid of others' machines that you can view in a larger grid. There is another button with a wrench which is a menu that gives you tools and decorations to move the balls to the set of gears with the colored corresponding triangle.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, intro popup]&lt;br /&gt;
:Cueball: Balls falling into your cell should be routed to the outputs at a steady rate.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, warning popup]&lt;br /&gt;
:Cueball: For security reasons, balls that remain in your device for more than 30 seconds will be removed and destroyed.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, submit popup]&lt;br /&gt;
:Cueball: Congratulations! Your contraption has passed all tests. Press [submit button] to submit it to be added to the machine!&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
* Once again an April Fool's Day Comic came out late, as Randall did not release this on April 1st, even though April 1st did fall on a Monday, a normal release day. It first came four days later with the Friday release on April 5th. That this is to be considered an April Fools' Day comic, in spite of the later release, was confirmed on the xkcd Facebook page.&lt;br /&gt;
*Randall acknowledges the people who helped him create this comic in a [[Header_text#Machine|comic-specific header text]]. &lt;br /&gt;
**With 11 different involved apart from Randall this is by far the comic with most people involved.&lt;br /&gt;
*Some hidden keyboard shortcuts have been found:&lt;br /&gt;
** Follow balls: Ctrl + Alt/Option + B (now also accessible by using the button provided)&lt;br /&gt;
** Show debug overlay: Ctrl + Shift + Win/Cmd + D&lt;br /&gt;
***  This may particularly clash with browser functionality, e.g. Firefox's &amp;quot;New Bookmarks&amp;quot; dialogue which will need closing, though still activating the overlay graphics.&lt;br /&gt;
** Delete selected item: Delete (Fn + Delete on Mac)&lt;br /&gt;
*When Randall posted a [https://www.facebook.com/TheXKCD/posts/pfbid0Cs97awQZi1ZiaEXouAex9tXrwAS3qJV3RmAiuCq5uvZQwqZVMgDmcqJ7JU9LYodYl link to this comic] on his [https://www.facebook.com/TheXKCD Facebook feed], he directly wrote that it was a late April Fools' Day!&lt;br /&gt;
**MACHINE&lt;br /&gt;
**Happy Belated April Fool's Day!&lt;br /&gt;
**This thus ends any discussion of whether this should be seen as an April Fool's comic or not. &lt;br /&gt;
**It just came out 4 days late. This has also happened several times since [[Garden]].&lt;br /&gt;
[[File:2916 Machine Facebook April fools' confirmation.png]]&lt;br /&gt;
*The [https://github.com/xkcd/incredible source code] for the comic was released on GitHub on May 8, 2024.&lt;br /&gt;
**chromakode, one of the developers, also published a [https://chromakode.com/post/xkcd-machine/ blog post discussing the design and development process].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Dynamic comics]]&lt;br /&gt;
[[Category:Comics with animation]] &lt;br /&gt;
[[Category:Interactive comics]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Comics featuring White Hat]]&lt;br /&gt;
[[Category:Comics featuring Knit Cap]]&lt;br /&gt;
[[Category:Characters with hats]]&lt;br /&gt;
[[Category:Squirrels]]&lt;br /&gt;
[[Category:Buns]]&lt;br /&gt;
[[Category:Cats]]&lt;br /&gt;
[[Category:Physics]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383983</id>
		<title>2916: Machine</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383983"/>
				<updated>2025-08-12T07:39:57Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Non-player items */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2916&lt;br /&gt;
| date      = April 5, 2024&lt;br /&gt;
| title     = Machine&lt;br /&gt;
| image     = machine_2x.png&lt;br /&gt;
| imagesize = 740x740px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = The Credible Machine&lt;br /&gt;
}}&lt;br /&gt;
{{series&lt;br /&gt;
| series        = April&lt;br /&gt;
| number        = 15&lt;br /&gt;
| date          = April 5, 2024&lt;br /&gt;
| days_late     = 4&lt;br /&gt;
| day_category  = Friday&lt;br /&gt;
| prev_title    = 2765: Escape Speed&lt;br /&gt;
| prev_date     = April 19, 2023&lt;br /&gt;
| next_title    = 3074: Push Notifications&lt;br /&gt;
| next_date     = April 9, 2025&lt;br /&gt;
| extra_text    = [[#Trivia|Learn why this comic was released late]].&lt;br /&gt;
}}&lt;br /&gt;
{{TOC}}To experience the interactivity of the game, visit the {{xkcd|2916|original comic}}!&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*Finish the explanations for how the items work in section [[#Toolbox items]].&lt;br /&gt;
&lt;br /&gt;
*Also, the [[#Trivia]] section is a mess. Need to clean it up and use coherent sentences.&lt;br /&gt;
&lt;br /&gt;
*The article shouldn't start with a list of what's been added to the comic before explaining it...}}&lt;br /&gt;
&amp;quot;Machine&amp;quot; has been updated multiple times in the weeks following its release, adding the following features:&lt;br /&gt;
* the trophy and shot glass props&lt;br /&gt;
* the cat, which swats balls in front of it&lt;br /&gt;
* the inanimate kitten and bun decorations&lt;br /&gt;
* a system of links, which encodes the XY coordinates of the currently viewed cell, and the time (i.e. the entire machine's state after a certain moderation action)&lt;br /&gt;
* a button to follow a nearby ball as it traverses through the machine, also preventing it from despawning&lt;br /&gt;
&lt;br /&gt;
As referenced in the title text, this game is a spiritual successor to the 1990s and early 2000s PC puzzle game series {{w|The Incredible Machine}}, a game Randall played as a kid. Both games have several objects in common:&lt;br /&gt;
* fan&lt;br /&gt;
* cat&lt;br /&gt;
* ramps&lt;br /&gt;
* balls of varying densities&lt;br /&gt;
&lt;br /&gt;
The comic starts in a main screen where the user can create a {{w|Rube Goldberg machine}} in a &amp;quot;Cell&amp;quot; where the goal is to route a constant stream of colored balls from inputs on the ceiling or walls to outputs of matching colors on the walls or floor. After the comic is first opened a window pops up over the machine where Cueball in a lab coat tells you to route the balls from the inputs to the outputs. A button opens a “tool panel” where there are large and small boards available for use, as well as some gimmicky stuff like prisms&amp;lt;!-- that sort marbles by color SEEM TO 'RANDOMLY' REFRACT/DEFLECT, IF SORTING IS TRUE THEN EXPLAIN IN NEW/RELOCATED SECTION? --&amp;gt; (which deflect marbles) and fans (which blow marbles around), plus decorative elements which have no effect on the balls.&lt;br /&gt;
&lt;br /&gt;
Typically, inputs and outputs only accept balls of a single color. However, some outputs accept multiple colors, indicated by a double arrow, and some inputs produce multiple colors. When the player is designing their 'machine', this will involve multiple full streams merged into one (supplied by a double-exit on the adjacent submission). Machines now working in the full grid may, however, find that their sources now contain stray balls of other types that were not handled properly, but there is no way to force a re-edit of the machine to alter its behavior to account for this.&lt;br /&gt;
&lt;br /&gt;
If any balls are left in your cell for more than 30 seconds, they fade away. The first time a ball fades away another popup informs you that the balls are removed for security reasons. An indicator next to each exit increases for each ball of the correct color that passes through an exit, and reduces when no balls pass through, or if balls of the wrong color pass through it. While that exit is not properly supplied it displays a red cross, which changes to a green tick when a sufficient, and sufficiently clean, stream of balls is supplied. The first time you have built a machine which succeeds in routing enough balls of the correct color to ''all'' relevant outputs, a popup will prompt you to submit your cell to be added to the public machine. (Subsequently, the submit button will quietly change from 'inactive' (pale) to clickable (dark). This will change back again if any ball transfers dip back below the required threshold for any reason, such as further editing or an end to a 'fluke' glut of accumulated balls.)&lt;br /&gt;
&lt;br /&gt;
Choosing to submit your cell will give you a textbox to give this cell a name. Proceeding through that, you will now see your cell within the 'grid' and a 'live' feed of balls from any relevant neighboring cells (which may be more sporadic then the feed you designed your cell with, and contain stray balls of different types). If any supplying-neighbors are still marked as &amp;quot;under construction&amp;quot;, they ''may'' provide the balls as if perfectly routed from their own (eventual) source, but will eventually dry up. If your newly submitted creation is placed in the lowest row of cells, balls will be dispensed through the exit at the bottom, but there will be no launcher to propel them towards the pit, and they will vanish as they leave the exit.&lt;br /&gt;
&lt;br /&gt;
Upon reopening the link to this comic without coordinate and time parameters, your recently created machine will most likely not be visible in the space you built it in. [https://www.reddit.com/user/xzaphenia/comments/ Reddit user xzaphenia] has claimed on r/xkcd that this is because there is a moderation team (of which they are a member) and that [https://www.reddit.com/r/xkcd/comments/1c1ixmb/comment/kzc3rmg/ the main page only shows public, approved machines]. This team of people, including those credited as co-creators of this comic, select machines according to their preferences (and little to no formal criteria besides [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ coolness, innovativeness, effectiveness], and [https://www.reddit.com/r/xkcd/comments/1c0bsk2/comment/kyvfean/ privacy concerns]). Given the number of 'bottom-layer' cells that are likely primed ready to be completed (e.g. the grid-width of twelve, perhaps staggered across adjacent rows) and the many possible worldwide contributors at any one time, it may be that the chances of being picked for permanence is low; and certainly would have been lower early on in the comic's existence during the initial frantic rush to participate. [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ It is also claimed that at some point, moderation will be cut off and the machine will be considered &amp;quot;complete&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery heights=&amp;quot;200&amp;quot; widths=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:2916_popup_intro.png|Introduction popup&lt;br /&gt;
File:2916_popup_time.png|Time limit popup&lt;br /&gt;
File:2916_popup_submit.png|Submission popup&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The button in the bottom right corner allows you to toggle between editing your own machine and a page where you can drag around to view all of the machines that have been submitted and accepted, with a title for each in the upper left corner. In this view you can see that all of the outputs are also inputs for another cell, except for the top row where the inputs come from off screen and the lowest row which output through a launcher of some kind to a set of four colored-coded containers far below. Any empty cells are marked off by yellow tape with the words &amp;quot;UNDER CONSTRUCTION&amp;quot; as well as &amp;quot;DJIA ↑ 31415&amp;quot; once in each cell. &amp;quot;DJIA&amp;quot; stands for the Dow Jones Industrial Average, with &amp;quot;DJIA ↑ 31415&amp;quot; indicating that it rose to 31415 points, 31415 being the first five digits of pi, without the period. This would often be displayed on a yellow 'ticker', which might look superficially similar to the yellow barrier tape.&lt;br /&gt;
&lt;br /&gt;
When viewing the whole machine, a button in the bottom left corner, added later, allows you to follow the path of the nearest ball as it passes from cell to cell. This will also make the ball you are following immortal - not subject to the 30s timeout rule. However, it will stop following at the bottom of the base machine -- it will not follow into the bottom holding containers, nor keep it immortal once down there. Another later addition was a button in the top left corner which copies a URL that will take you directly to the current cell that you are viewing. However, the link that is created will always show you the version of the machine at the time that you were viewing it, without any subsequent additions.&lt;br /&gt;
&lt;br /&gt;
Whenever balls reach the bottom of the grid, they are directed towards four containers, one of each color. Most balls are accurately sent to their appropriate container, though there are some misfires. These containers are above a pit, and  dump their contents every 11.5 seconds. Balls in the pit are subject to a 97 (approx) second culling rule (including time spent in the holding containers), unlike the balls in the cells above. If no balls are directed towards the containers, the pit will be empty. If at least one stream of balls is making it, Cueball and Megan sit in a small boat named the USS Buoyancy, and when sufficient balls are being deposited, the boat begins to float and move. Balls that miss or overspill the pit fall out of the bottom of the frame.&lt;br /&gt;
&lt;br /&gt;
Under construction cells will feed balls of the appropriate color into neighboring cells so long as you are not looking at them. Once you scroll to look at them, the supply of balls stops and subsequent cells in the chain will not receive any; scroll away from them again and the supply will resume.&lt;br /&gt;
&lt;br /&gt;
The grid is 12 cells wide, and grows in height. The largest size observed so far is 12x128, for a total of 1536 cells. The machine's height is determined by the lowest cell; this can be either your submitted cell, or a cell created by another user.&lt;br /&gt;
&lt;br /&gt;
Imperfections in the machines (whether accidental or by design) and the impossibility of entirely avoiding collisions when crossing streams inevitably lead to significant levels of losses and pollution with the wrong color balls. Indeed, using the follow ball function appears to demonstrate that it is quite rare for a ball to survive more than several machines without getting stuck somewhere. This should mean that effectively no balls would reach the lower layers. This implies that there is some 'creative accounting' going on to ensure that cells lower in the grid still have balls to process - simulating flow only for a few nearby cells, while assuming that those cells themselves have pure, steady inputs.&lt;br /&gt;
&lt;br /&gt;
There is a hard limit of 100 items (both physically interactive and purely decorative) that can be placed in any given arena. If you have placed 75 items, a count will appear in the component bar of your piece-count (&amp;quot;''##''/100&amp;quot;), which will go away again if you delete items to bring it below this count. The count text turns red at &amp;quot;100/100&amp;quot;, at which point no more items can be added, only existing ones moved (or removed, to lower the count again).&lt;br /&gt;
&lt;br /&gt;
===Toolbox items===&lt;br /&gt;
====Tangible items====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=margin:auto&amp;quot;&lt;br /&gt;
! Image&lt;br /&gt;
! Item !! Explanation &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_plank.png|frameless|upright=0.25]]&lt;br /&gt;
| Plank || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_hammer.png|frameless|upright=0.25]]&lt;br /&gt;
| Hammer || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_sword.png|frameless|upright=0.25]]&lt;br /&gt;
| Sword || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_scoop.png|frameless|upright=0.25]]&amp;lt;br&amp;gt;[[File:2916_scoop_mirrored.png|frameless|upright=0.25]]&lt;br /&gt;
| Hinged scoop || It rotates around its hinge and tries to remain horizontal, with a spring-like effect. The hinged scoops are strictly horizontal when placed on the building. They rotate away from — and spring back to — the horizontal position in response to interactions with balls or other non-decorative items that may disturb their balance. These disturbances can sometimes lead to further interesting interactions, which may or may not be intentional or useful.&lt;br /&gt;
Along with the triangular Bumpers, they are the only class of objects with a clear and practical asymmetry, for which a mirrored chirality can be selected from the sidebar.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_anvil.png|frameless|upright=0.125]]&lt;br /&gt;
| Anvil || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_brick.png|frameless|upright=0.125]]&lt;br /&gt;
| Brick || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_fan.png|frameless|upright=0.125]]&lt;br /&gt;
| Fan || Blows away balls in front of it. Can be rotated 360 degrees. Different colors are affected by differing amounts (yellow balls are lightest, and can be levitated above an upward-facing fan). If a ball hits a blade of a fan, especially from the side, the bounce is larger than normal. If you put a fan interlocking with a wheel it might eventually freeze your machine.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_pillow.png|frameless|upright=0.125]]&lt;br /&gt;
| Pillow || Balls bounce less if they hit it &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_round_bumper.png|frameless|upright=0.125]] [[File:2916_bumper_left.png|frameless|upright=0.125]] [[File:2916_bumper_right.png|frameless|upright=0.125]]&lt;br /&gt;
| Bumper || Bounces balls away at significantly higher speed. Together with the Hinged scoop, they are the only object class with a clear and practical asymmetry, for which a mirrored chirality can be chosen from the sidebar. &lt;br /&gt;
|-&lt;br /&gt;
|| [[File:2916_attractor.png|frameless|upright=0.125]]&lt;br /&gt;
| Attractor/Black hole || Pulls balls toward center. The Attractor is omnidirectional, but the area of effect can be resized to extend or restrict its influence. You do this by way of its bounding box with corner and mid-edged 'drag nodes' and a circular area that shows the current extent, which are only visible when the element is actively selected. This resize can be no larger than will make the box/circle touch the edges, no smaller than the fixed graphic and will always be identically proportioned in both axes.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_repulsor.png|frameless|upright=0.125]]&lt;br /&gt;
| Repulsor/White hole || Repels balls away from center. Like the Attractor, it is omnidirectional and can be resized. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_prism.png|frameless|upright=0.125]]&lt;br /&gt;
| Prism || &amp;quot;Refracts&amp;quot; and internally-reflects balls as they otherwise pass through the object, the color of the ball ''may'' cause them to react (as much as possible) according to the respective color across the element.&amp;lt;!-- Benefit of the doubt, but it hasn't seemed to work that well for me, either. --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_wheel.png|frameless|upright=0.125]]&lt;br /&gt;
| Wheel || Spins, deflects balls, can jam with enough resistance (e.g. glut of balls or against other elements). It actively rotates and starts off, by default, spinning anticlockwise. Pressing or tapping left/right arrow keys, when a placed wheel is selected, will adjust that wheel's rotation rate to be more/less anticlockwise. Adjusting it beyond zero rotation allows you to make it spin in the opposite direction. Rotation can be increased well beyond the point at which the {{w|wagon-wheel effect}} occurs&amp;lt;!-- does it depend upon browser rendering frequency, or is there a convenient refresh-cap-rate built into the rendering engine? --&amp;gt;, which may make it difficult to work out the spin direction of an overspeed wheel element (and thus which arrow keys will slow or speed up its rotation, if you have forgotten), though observing its impact upon any balls that strike it ''should'' make its current spin-direction obvious. The 'bounding editing box' will usually appear rotated, possibly according to the spinning graphic's current orientation upon selection, but remains at that (often non-orthagonal) angle even as the wheel spins (if it can) during this period of selection for editing. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_trophy.png|frameless|upright=0.125]]&lt;br /&gt;
| &amp;quot;Good job&amp;quot; trophy (Called &amp;quot;stand&amp;quot; in assets)|| Static obstacle. Any ball can rest on the top of a trophy. This feature was probably added on purpose.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cup.png|frameless|upright=0.125]]&lt;br /&gt;
| Glass cup || Static obstacle. Container, with a nominal capacity of up to four balls (in whole or in part) within it. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat_new.png|frameless|upright=0.25]]&lt;br /&gt;
| Cat || Swats away balls in front of itself (was added later). Balls can get stuck on top of the cat or between the cat's head and tail. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intangible decorations====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;margin: auto; float: right&amp;quot;&lt;br /&gt;
! Image !! Transcript &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_ponytail_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_ponytail.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_cueball_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing Cueball, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_whitehat.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing White Hat, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap_resting.png|frameless|upright=0.25]]&lt;br /&gt;
| Rightwards-facing Knit Cap, in an 'action' pose &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Knit Cap, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_helmet.png|frameless|upright=0.125]]&lt;br /&gt;
| Helmet-wearing figure, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_squirrel.png|frameless|upright=0.125]]&lt;br /&gt;
| Squirrel &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_deterministic.png|frameless|upright=0.25]]&lt;br /&gt;
| &amp;quot;Probably Deterministic&amp;quot; sign &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_rabbit.png|frameless|upright=0.125]]&lt;br /&gt;
| [[1682: Bun|Bun]] &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat.png|frameless|upright=0.125]]&lt;br /&gt;
| Cat &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All other items can be manually re-angled by a 'loop node' arm extending from the bounding box. If you cannot see the 'angle node' for such a selected item, which is normally at the top of any freshly placed item but follows any re-angling that may have already applied, it could be that you have placed the item too close to the edge in which direction the node extends. To rotate it, move the object away from the edge to access the construction node (after which, you can drag the object back if required – but see below).&lt;br /&gt;
&lt;br /&gt;
Rotation may be limited by the {{w|minimum bounding box}} that is the 'selection box', this is not necessarily the more flush {{w|convex hull}} of the collision-map built into the graphic. Should a corner of the bounding box need to move across the edge of the build-area, it will do nothing more than touch the edge until there is sufficient angle-drag to snap it to the angle from which that corner now comes back away from the edge; or, when it has a long straight edge currently flush with the edge boundary, it may snap to exactly 180°, in rotation, whereupon the opposite long straight edge is flush to the construction area edge. All objects that are drag-moved, similarly, cannot be moved any further than their current bounding box touching the construction-area edging. The bounding box for the rotating wheel is a notable exception to this, being not under any direct angle-control by the player. Instead, it seems to use the bounding inscribed circle that defines the wheel edge iteslf.&lt;br /&gt;
&lt;br /&gt;
Apart from some interactions between the hinged scoops and any element (including other hinged scoops), there is no preventative 'collision detection' between objects during user-placement, which may overlap/cover each other (the most recently spawned item graphically overlays any earlier one). The wheel object will only spin if not constrained by other physical elements (including the spokes of an adjacent wheel, not in counter-rotation) but can still be dragged and placed anywhere within the boundary of the construction area.&lt;br /&gt;
&lt;br /&gt;
The continuous stream(s) of balls respect all ''tangible'' objects, which includes any currently being dragged/rotated, though may prematurely vanish if forced between two items moved to touch/overlap each other. It is possible to indirectly nudge balls by carefully moving a tangible object's surface into them (or holding them within it, e.g. the &amp;quot;cup&amp;quot;). This may be useful for rescuing temporarily stray balls (before they time-out anyway), unjamming an area with a construction-induced glut ''or'' for testing a ball-path that is not currently being fed 'naturally'. Doing so ''can'' then conceivably fulfil all the exit-gate requirements (temporarily), as it might also transiently spoil some required routing, but the manual intervention will not be possible once a 'machine' has been submit.&lt;br /&gt;
&lt;br /&gt;
====Non-player items====&lt;br /&gt;
{|&lt;br /&gt;
|[[File:2916_container_red.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_yellow.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_blue.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_green.png|thumb|center|80px]]&lt;br /&gt;
|}&lt;br /&gt;
Ball containers at the bottom of the machine. 420 x 195&lt;br /&gt;
&lt;br /&gt;
[[File:4d425c.png|thumb|left|250px|Cueball and Megan in the ''USS Buoyancy. 262 x 162]]&lt;br /&gt;
&lt;br /&gt;
[[File:2916_pit_bottom.png|thumb|left|400px|Pit below the ''USS Buoyancy''.]]&lt;br /&gt;
1389 x 290&lt;br /&gt;
&amp;lt;br clear=all&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Color routing ===&lt;br /&gt;
The different ball colors have different physical properties. Red balls are more bouncy than other balls, green balls are heavier, and yellow balls are lighter and slightly bouncy. The following values were extracted from the code:&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Color&lt;br /&gt;
! Mass&lt;br /&gt;
! Density&lt;br /&gt;
! Restitution (bounciness)&lt;br /&gt;
! Linear damping (drag)&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;00F&amp;quot; | Blue&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;F00&amp;quot; | Red&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0.8&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;0F0&amp;quot; | Green&lt;br /&gt;
| 0.75&lt;br /&gt;
| 9.325&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;FF0&amp;quot; | Yellow&lt;br /&gt;
| 0.024&lt;br /&gt;
| 0.3&lt;br /&gt;
| 0.6&lt;br /&gt;
| 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Balls also have spin, but it is subtle and hard to see because the balls have no visible texture.It can be seen, with effort, using green balls (which are heaviest). Rolling down a slope (say, two boards), green balls accumulate spin in the direction they are rolling. Let them drop off the end and then bounce off a brick such that they travel upward, but with very little sideways motion. Then &amp;quot;catch&amp;quot; the balls with a brick just past their apex, when they are moving slowly. If the ball lands on a horizontal brick, it can be seen that the ball will suddenly accelerate left or right based on the spin.&lt;br /&gt;
&lt;br /&gt;
For certain combinations of inlet and outlet 'gates', it is necessary to 'cross the streams'. e.g. to direct righthand-entry balls to a lefthand-exit and vice-versa. It is possible to just construct the field to send two (or more!) sets of balls to fly across a common gap, to land on an appropriate reception area that leads to the chosen exit. But, though this is not {{w|Proton pack#Crossing the streams|completely inadvised}}, the timing of the balls cannot be guaranteed to be in sync (or, rather, anti-sync) with each other and collisions ''will'' occur, especially under the variations of delivery that might significantly alter the ballistic path across the gap. Even if the trial machine works, in isolation with a steady stream of all balls entering the field of play, once submitted it will inevitably be fed by a more chaotically-routed preceeding construction.&lt;br /&gt;
&lt;br /&gt;
In order to maintain sufficient correct arrivals at exits&amp;lt;!-- and, I believe, sufficiently few ''wrong'' arrivals... does it enumerate the 'net correct delivery rate' to establish the validity of the output? ...needs more research --&amp;gt;, it may be necessary to add a method of filtering the hues.&lt;br /&gt;
&lt;br /&gt;
This could just mean introducing a 'wrong hue trap' beyond any crossing point(s) that send the occasionally wrong ball back to the cross point (or let them time-out in a dead-end, relying upon few enough failures from the rest of the balls, along with all colliding balls that subsequently missed ''any'' chance of reaching an exit). Alternatively, two (or more) feeds of marbles could be fed through a deliberate 'sorter' that does a sufficiently reasonable job of separating the combined sets out towards their intended target-exits.&lt;br /&gt;
&lt;br /&gt;
The various physical qualities of the balls suggest a number of methods for redirecting separate hues to separate onward journeys. This can be done by isolating a hue from every other hue, then passing on (if necessary) to a setup extracting a different one from the remainder, and perhaps also a third time. It may also be possible to merge 'arrangements' of sorting mechanics to efficiently distribute straight into three ''or even four'' onward tracks towards the desired outputs, but that is left as an exercise to the reader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This may not be the most efficient depiction (with just four/less 'core methods', after following &amp;quot;See X/Y&amp;quot;s) but if the Prism or some other item actually adds zignificantly practical pre-&amp;quot;See&amp;quot; differences then the all-vs-all format (with the reversals/same-to-sames still there to be abbreviated/redirected) will come into its own.&lt;br /&gt;
If you so wish, redo. e.g. as &amp;quot;;header + :paragraph&amp;quot;s or table of &amp;quot;!Combo(s)!!Methodology&amp;quot;&lt;br /&gt;
NB:&lt;br /&gt;
  1x ! Row-start Style=                                                 | Row-start 'header'&lt;br /&gt;
  4x | *Unwikiparsable key just for editors' benefit* + optional Style= | Contents&lt;br /&gt;
...right now, I've mostly added &amp;quot;vertical fan&amp;quot; experiences (which I find useful for all but R/B differentiation), but more about bumpers (including fan-/wheel-collisions), the positive/negative 'force objects' and of course horizontal/angled fans could also be added.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:black; color:white&amp;quot; | To separate !! style=&amp;quot;background-color:lightblue&amp;quot; | Blue !! style=&amp;quot;background-color:lightgreen&amp;quot; | Green !! style=&amp;quot;background-color:yellow&amp;quot; | Yellow !! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
| *R/B* | '''Use 'bounce''''&lt;br /&gt;
The sole difference is how much balls will rebound from objects. Well managed and constrained ricochets should allow a sorting action.&lt;br /&gt;
| *R/G* | '''Use mass or 'bounce''''&lt;br /&gt;
Green balls are not easily affected by a fan or a black hole, making it easier to sort from other balls. On the other hand, it also means it is very hard to precisely accelerate green, since the only components able to accelerate green is the bonk and the kitten.&amp;lt;br/&amp;gt;Green, like Blue, rebounds differently to Red.&lt;br /&gt;
| *R/Y* | ''See&amp;lt;br /&amp;gt;Y/B+G''&lt;br /&gt;
| *R/R* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:yellow&amp;quot; | Yellow&lt;br /&gt;
| *Y/B+G* colspan=2| '''All methods'''&lt;br /&gt;
Yellow, alone, exhibits high drag against any unforced motion.&amp;lt;br/&amp;gt;It is also unique in all other ways; e.g. can be levitated highest, against all other hues (though most profoundly against Green).&lt;br /&gt;
| *Y/Y* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *Y/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- R/Y-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightgreen&amp;quot; | Green&lt;br /&gt;
| *G/B* | '''Use mass'''&lt;br /&gt;
Green balls are only minimally affected by a fan.&amp;lt;br/&amp;gt;There is also a not so marginal difference in density that might be exploited, such as by using black holes, which only minimally effects Green (perhaps showing an effective difference between mass of attraction and mass of inertia).&lt;br /&gt;
| *G/G* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *G/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- Y/G-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
| *G/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/G&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightblue&amp;quot; | Blue&lt;br /&gt;
| *B/B* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *B/G* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See G/B&lt;br /&gt;
| *B/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See&amp;lt;br /&amp;gt;Y/B+G&lt;br /&gt;
| *B/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Even when not strictly necessary for one's own submission, once submitted into the full playing grid the player's own contribution may find itself working with less 'pure' delivered ball-streams (from an imperfectly separating feed-in contribution). It is possible that this more interactive disruption can make the new setup behave erratically or even entirely incorrectly.&lt;br /&gt;
&lt;br /&gt;
It might be thought good practice (but not ''necessary'') to deliberately combine any or all inputs and do a full job of splitting them again, just in anticipation of possibly having to deal with such cross-contamination and being able to 'clean up' the onward stream(s) for the benefit of others. This would of course be particularly difficult if the isolated building-phase does not provide all four hues to 'test' against, so any speculatively added filtering would have to be added 'blind' (and only on the offchance that any anticipated incorrect balls will actually enter the arena) and without any legitimate exits to which such rejects could be shunted (therefore could accumulate, up until any 'time out' that might apply to any ball once operational as part of the combined grid).&lt;br /&gt;
&lt;br /&gt;
Single-input/single-output designs might not particularly require ''any'' sorting mechanism, in theory, though the unexpected 'contamination' of the system with balls of different masses/etc could perhaps introduce malfunctioning passage from the added chaos it might succumb to.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Finish transcribing the comic!}}&lt;br /&gt;
&lt;br /&gt;
:[The placeholder image shows four balls, colored red, green, yellow and blue, bouncing on top of three white blocks. Text in the center: &amp;quot;[visit xkcd.com to view]&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
:[In the game, colored balls fall out of rotating half-gears that spawn at random from the wall and/or ceiling while an opposite set of half-gears rotate with a colored triangle pointing to that intersection of said set of gears. There is a button that says &amp;quot;view machine&amp;quot; button in the bottom right corner. When clicked, it takes you to a larger grid of others' machines that you can view in a larger grid. There is another button with a wrench which is a menu that gives you tools and decorations to move the balls to the set of gears with the colored corresponding triangle.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, intro popup]&lt;br /&gt;
:Cueball: Balls falling into your cell should be routed to the outputs at a steady rate.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, warning popup]&lt;br /&gt;
:Cueball: For security reasons, balls that remain in your device for more than 30 seconds will be removed and destroyed.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, submit popup]&lt;br /&gt;
:Cueball: Congratulations! Your contraption has passed all tests. Press [submit button] to submit it to be added to the machine!&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
* Once again an April Fool's Day Comic came out late, as Randall did not release this on April 1st, even though April 1st did fall on a Monday, a normal release day. It first came four days later with the Friday release on April 5th. That this is to be considered an April Fools' Day comic, in spite of the later release, was confirmed on the xkcd Facebook page.&lt;br /&gt;
*Randall acknowledges the people who helped him create this comic in a [[Header_text#Machine|comic-specific header text]]. &lt;br /&gt;
**With 11 different involved apart from Randall this is by far the comic with most people involved.&lt;br /&gt;
*Some hidden keyboard shortcuts have been found:&lt;br /&gt;
** Follow balls: Ctrl + Alt/Option + B (now also accessible by using the button provided)&lt;br /&gt;
** Show debug overlay: Ctrl + Shift + Win/Cmd + D&lt;br /&gt;
***  This may particularly clash with browser functionality, e.g. Firefox's &amp;quot;New Bookmarks&amp;quot; dialogue which will need closing, though still activating the overlay graphics.&lt;br /&gt;
** Delete selected item: Delete (Fn + Delete on Mac)&lt;br /&gt;
*When Randall posted a [https://www.facebook.com/TheXKCD/posts/pfbid0Cs97awQZi1ZiaEXouAex9tXrwAS3qJV3RmAiuCq5uvZQwqZVMgDmcqJ7JU9LYodYl link to this comic] on his [https://www.facebook.com/TheXKCD Facebook feed], he directly wrote that it was a late April Fools' Day!&lt;br /&gt;
**MACHINE&lt;br /&gt;
**Happy Belated April Fool's Day!&lt;br /&gt;
**This thus ends any discussion of whether this should be seen as an April Fool's comic or not. &lt;br /&gt;
**It just came out 4 days late. This has also happened several times since [[Garden]].&lt;br /&gt;
[[File:2916 Machine Facebook April fools' confirmation.png]]&lt;br /&gt;
*The [https://github.com/xkcd/incredible source code] for the comic was released on GitHub on May 8, 2024.&lt;br /&gt;
**chromakode, one of the developers, also published a [https://chromakode.com/post/xkcd-machine/ blog post discussing the design and development process].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Dynamic comics]]&lt;br /&gt;
[[Category:Comics with animation]] &lt;br /&gt;
[[Category:Interactive comics]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Comics featuring White Hat]]&lt;br /&gt;
[[Category:Comics featuring Knit Cap]]&lt;br /&gt;
[[Category:Characters with hats]]&lt;br /&gt;
[[Category:Squirrels]]&lt;br /&gt;
[[Category:Buns]]&lt;br /&gt;
[[Category:Cats]]&lt;br /&gt;
[[Category:Physics]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383982</id>
		<title>2916: Machine</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2916:_Machine&amp;diff=383982"/>
				<updated>2025-08-12T07:38:03Z</updated>
		
		<summary type="html">&lt;p&gt;2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12: /* Non-player items */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2916&lt;br /&gt;
| date      = April 5, 2024&lt;br /&gt;
| title     = Machine&lt;br /&gt;
| image     = machine_2x.png&lt;br /&gt;
| imagesize = 740x740px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = The Credible Machine&lt;br /&gt;
}}&lt;br /&gt;
{{series&lt;br /&gt;
| series        = April&lt;br /&gt;
| number        = 15&lt;br /&gt;
| date          = April 5, 2024&lt;br /&gt;
| days_late     = 4&lt;br /&gt;
| day_category  = Friday&lt;br /&gt;
| prev_title    = 2765: Escape Speed&lt;br /&gt;
| prev_date     = April 19, 2023&lt;br /&gt;
| next_title    = 3074: Push Notifications&lt;br /&gt;
| next_date     = April 9, 2025&lt;br /&gt;
| extra_text    = [[#Trivia|Learn why this comic was released late]].&lt;br /&gt;
}}&lt;br /&gt;
{{TOC}}To experience the interactivity of the game, visit the {{xkcd|2916|original comic}}!&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|&lt;br /&gt;
*Finish the explanations for how the items work in section [[#Toolbox items]].&lt;br /&gt;
&lt;br /&gt;
*Also, the [[#Trivia]] section is a mess. Need to clean it up and use coherent sentences.&lt;br /&gt;
&lt;br /&gt;
*The article shouldn't start with a list of what's been added to the comic before explaining it...}}&lt;br /&gt;
&amp;quot;Machine&amp;quot; has been updated multiple times in the weeks following its release, adding the following features:&lt;br /&gt;
* the trophy and shot glass props&lt;br /&gt;
* the cat, which swats balls in front of it&lt;br /&gt;
* the inanimate kitten and bun decorations&lt;br /&gt;
* a system of links, which encodes the XY coordinates of the currently viewed cell, and the time (i.e. the entire machine's state after a certain moderation action)&lt;br /&gt;
* a button to follow a nearby ball as it traverses through the machine, also preventing it from despawning&lt;br /&gt;
&lt;br /&gt;
As referenced in the title text, this game is a spiritual successor to the 1990s and early 2000s PC puzzle game series {{w|The Incredible Machine}}, a game Randall played as a kid. Both games have several objects in common:&lt;br /&gt;
* fan&lt;br /&gt;
* cat&lt;br /&gt;
* ramps&lt;br /&gt;
* balls of varying densities&lt;br /&gt;
&lt;br /&gt;
The comic starts in a main screen where the user can create a {{w|Rube Goldberg machine}} in a &amp;quot;Cell&amp;quot; where the goal is to route a constant stream of colored balls from inputs on the ceiling or walls to outputs of matching colors on the walls or floor. After the comic is first opened a window pops up over the machine where Cueball in a lab coat tells you to route the balls from the inputs to the outputs. A button opens a “tool panel” where there are large and small boards available for use, as well as some gimmicky stuff like prisms&amp;lt;!-- that sort marbles by color SEEM TO 'RANDOMLY' REFRACT/DEFLECT, IF SORTING IS TRUE THEN EXPLAIN IN NEW/RELOCATED SECTION? --&amp;gt; (which deflect marbles) and fans (which blow marbles around), plus decorative elements which have no effect on the balls.&lt;br /&gt;
&lt;br /&gt;
Typically, inputs and outputs only accept balls of a single color. However, some outputs accept multiple colors, indicated by a double arrow, and some inputs produce multiple colors. When the player is designing their 'machine', this will involve multiple full streams merged into one (supplied by a double-exit on the adjacent submission). Machines now working in the full grid may, however, find that their sources now contain stray balls of other types that were not handled properly, but there is no way to force a re-edit of the machine to alter its behavior to account for this.&lt;br /&gt;
&lt;br /&gt;
If any balls are left in your cell for more than 30 seconds, they fade away. The first time a ball fades away another popup informs you that the balls are removed for security reasons. An indicator next to each exit increases for each ball of the correct color that passes through an exit, and reduces when no balls pass through, or if balls of the wrong color pass through it. While that exit is not properly supplied it displays a red cross, which changes to a green tick when a sufficient, and sufficiently clean, stream of balls is supplied. The first time you have built a machine which succeeds in routing enough balls of the correct color to ''all'' relevant outputs, a popup will prompt you to submit your cell to be added to the public machine. (Subsequently, the submit button will quietly change from 'inactive' (pale) to clickable (dark). This will change back again if any ball transfers dip back below the required threshold for any reason, such as further editing or an end to a 'fluke' glut of accumulated balls.)&lt;br /&gt;
&lt;br /&gt;
Choosing to submit your cell will give you a textbox to give this cell a name. Proceeding through that, you will now see your cell within the 'grid' and a 'live' feed of balls from any relevant neighboring cells (which may be more sporadic then the feed you designed your cell with, and contain stray balls of different types). If any supplying-neighbors are still marked as &amp;quot;under construction&amp;quot;, they ''may'' provide the balls as if perfectly routed from their own (eventual) source, but will eventually dry up. If your newly submitted creation is placed in the lowest row of cells, balls will be dispensed through the exit at the bottom, but there will be no launcher to propel them towards the pit, and they will vanish as they leave the exit.&lt;br /&gt;
&lt;br /&gt;
Upon reopening the link to this comic without coordinate and time parameters, your recently created machine will most likely not be visible in the space you built it in. [https://www.reddit.com/user/xzaphenia/comments/ Reddit user xzaphenia] has claimed on r/xkcd that this is because there is a moderation team (of which they are a member) and that [https://www.reddit.com/r/xkcd/comments/1c1ixmb/comment/kzc3rmg/ the main page only shows public, approved machines]. This team of people, including those credited as co-creators of this comic, select machines according to their preferences (and little to no formal criteria besides [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ coolness, innovativeness, effectiveness], and [https://www.reddit.com/r/xkcd/comments/1c0bsk2/comment/kyvfean/ privacy concerns]). Given the number of 'bottom-layer' cells that are likely primed ready to be completed (e.g. the grid-width of twelve, perhaps staggered across adjacent rows) and the many possible worldwide contributors at any one time, it may be that the chances of being picked for permanence is low; and certainly would have been lower early on in the comic's existence during the initial frantic rush to participate. [https://www.reddit.com/r/xkcd/comments/1c0sp60/comment/kz6hbgl/ It is also claimed that at some point, moderation will be cut off and the machine will be considered &amp;quot;complete&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery heights=&amp;quot;200&amp;quot; widths=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:2916_popup_intro.png|Introduction popup&lt;br /&gt;
File:2916_popup_time.png|Time limit popup&lt;br /&gt;
File:2916_popup_submit.png|Submission popup&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The button in the bottom right corner allows you to toggle between editing your own machine and a page where you can drag around to view all of the machines that have been submitted and accepted, with a title for each in the upper left corner. In this view you can see that all of the outputs are also inputs for another cell, except for the top row where the inputs come from off screen and the lowest row which output through a launcher of some kind to a set of four colored-coded containers far below. Any empty cells are marked off by yellow tape with the words &amp;quot;UNDER CONSTRUCTION&amp;quot; as well as &amp;quot;DJIA ↑ 31415&amp;quot; once in each cell. &amp;quot;DJIA&amp;quot; stands for the Dow Jones Industrial Average, with &amp;quot;DJIA ↑ 31415&amp;quot; indicating that it rose to 31415 points, 31415 being the first five digits of pi, without the period. This would often be displayed on a yellow 'ticker', which might look superficially similar to the yellow barrier tape.&lt;br /&gt;
&lt;br /&gt;
When viewing the whole machine, a button in the bottom left corner, added later, allows you to follow the path of the nearest ball as it passes from cell to cell. This will also make the ball you are following immortal - not subject to the 30s timeout rule. However, it will stop following at the bottom of the base machine -- it will not follow into the bottom holding containers, nor keep it immortal once down there. Another later addition was a button in the top left corner which copies a URL that will take you directly to the current cell that you are viewing. However, the link that is created will always show you the version of the machine at the time that you were viewing it, without any subsequent additions.&lt;br /&gt;
&lt;br /&gt;
Whenever balls reach the bottom of the grid, they are directed towards four containers, one of each color. Most balls are accurately sent to their appropriate container, though there are some misfires. These containers are above a pit, and  dump their contents every 11.5 seconds. Balls in the pit are subject to a 97 (approx) second culling rule (including time spent in the holding containers), unlike the balls in the cells above. If no balls are directed towards the containers, the pit will be empty. If at least one stream of balls is making it, Cueball and Megan sit in a small boat named the USS Buoyancy, and when sufficient balls are being deposited, the boat begins to float and move. Balls that miss or overspill the pit fall out of the bottom of the frame.&lt;br /&gt;
&lt;br /&gt;
Under construction cells will feed balls of the appropriate color into neighboring cells so long as you are not looking at them. Once you scroll to look at them, the supply of balls stops and subsequent cells in the chain will not receive any; scroll away from them again and the supply will resume.&lt;br /&gt;
&lt;br /&gt;
The grid is 12 cells wide, and grows in height. The largest size observed so far is 12x128, for a total of 1536 cells. The machine's height is determined by the lowest cell; this can be either your submitted cell, or a cell created by another user.&lt;br /&gt;
&lt;br /&gt;
Imperfections in the machines (whether accidental or by design) and the impossibility of entirely avoiding collisions when crossing streams inevitably lead to significant levels of losses and pollution with the wrong color balls. Indeed, using the follow ball function appears to demonstrate that it is quite rare for a ball to survive more than several machines without getting stuck somewhere. This should mean that effectively no balls would reach the lower layers. This implies that there is some 'creative accounting' going on to ensure that cells lower in the grid still have balls to process - simulating flow only for a few nearby cells, while assuming that those cells themselves have pure, steady inputs.&lt;br /&gt;
&lt;br /&gt;
There is a hard limit of 100 items (both physically interactive and purely decorative) that can be placed in any given arena. If you have placed 75 items, a count will appear in the component bar of your piece-count (&amp;quot;''##''/100&amp;quot;), which will go away again if you delete items to bring it below this count. The count text turns red at &amp;quot;100/100&amp;quot;, at which point no more items can be added, only existing ones moved (or removed, to lower the count again).&lt;br /&gt;
&lt;br /&gt;
===Toolbox items===&lt;br /&gt;
====Tangible items====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=margin:auto&amp;quot;&lt;br /&gt;
! Image&lt;br /&gt;
! Item !! Explanation &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_plank.png|frameless|upright=0.25]]&lt;br /&gt;
| Plank || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_hammer.png|frameless|upright=0.25]]&lt;br /&gt;
| Hammer || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_sword.png|frameless|upright=0.25]]&lt;br /&gt;
| Sword || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_scoop.png|frameless|upright=0.25]]&amp;lt;br&amp;gt;[[File:2916_scoop_mirrored.png|frameless|upright=0.25]]&lt;br /&gt;
| Hinged scoop || It rotates around its hinge and tries to remain horizontal, with a spring-like effect. The hinged scoops are strictly horizontal when placed on the building. They rotate away from — and spring back to — the horizontal position in response to interactions with balls or other non-decorative items that may disturb their balance. These disturbances can sometimes lead to further interesting interactions, which may or may not be intentional or useful.&lt;br /&gt;
Along with the triangular Bumpers, they are the only class of objects with a clear and practical asymmetry, for which a mirrored chirality can be selected from the sidebar.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_anvil.png|frameless|upright=0.125]]&lt;br /&gt;
| Anvil || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_brick.png|frameless|upright=0.125]]&lt;br /&gt;
| Brick || Static obstacle &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_fan.png|frameless|upright=0.125]]&lt;br /&gt;
| Fan || Blows away balls in front of it. Can be rotated 360 degrees. Different colors are affected by differing amounts (yellow balls are lightest, and can be levitated above an upward-facing fan). If a ball hits a blade of a fan, especially from the side, the bounce is larger than normal. If you put a fan interlocking with a wheel it might eventually freeze your machine.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_pillow.png|frameless|upright=0.125]]&lt;br /&gt;
| Pillow || Balls bounce less if they hit it &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_round_bumper.png|frameless|upright=0.125]] [[File:2916_bumper_left.png|frameless|upright=0.125]] [[File:2916_bumper_right.png|frameless|upright=0.125]]&lt;br /&gt;
| Bumper || Bounces balls away at significantly higher speed. Together with the Hinged scoop, they are the only object class with a clear and practical asymmetry, for which a mirrored chirality can be chosen from the sidebar. &lt;br /&gt;
|-&lt;br /&gt;
|| [[File:2916_attractor.png|frameless|upright=0.125]]&lt;br /&gt;
| Attractor/Black hole || Pulls balls toward center. The Attractor is omnidirectional, but the area of effect can be resized to extend or restrict its influence. You do this by way of its bounding box with corner and mid-edged 'drag nodes' and a circular area that shows the current extent, which are only visible when the element is actively selected. This resize can be no larger than will make the box/circle touch the edges, no smaller than the fixed graphic and will always be identically proportioned in both axes.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_repulsor.png|frameless|upright=0.125]]&lt;br /&gt;
| Repulsor/White hole || Repels balls away from center. Like the Attractor, it is omnidirectional and can be resized. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_prism.png|frameless|upright=0.125]]&lt;br /&gt;
| Prism || &amp;quot;Refracts&amp;quot; and internally-reflects balls as they otherwise pass through the object, the color of the ball ''may'' cause them to react (as much as possible) according to the respective color across the element.&amp;lt;!-- Benefit of the doubt, but it hasn't seemed to work that well for me, either. --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_wheel.png|frameless|upright=0.125]]&lt;br /&gt;
| Wheel || Spins, deflects balls, can jam with enough resistance (e.g. glut of balls or against other elements). It actively rotates and starts off, by default, spinning anticlockwise. Pressing or tapping left/right arrow keys, when a placed wheel is selected, will adjust that wheel's rotation rate to be more/less anticlockwise. Adjusting it beyond zero rotation allows you to make it spin in the opposite direction. Rotation can be increased well beyond the point at which the {{w|wagon-wheel effect}} occurs&amp;lt;!-- does it depend upon browser rendering frequency, or is there a convenient refresh-cap-rate built into the rendering engine? --&amp;gt;, which may make it difficult to work out the spin direction of an overspeed wheel element (and thus which arrow keys will slow or speed up its rotation, if you have forgotten), though observing its impact upon any balls that strike it ''should'' make its current spin-direction obvious. The 'bounding editing box' will usually appear rotated, possibly according to the spinning graphic's current orientation upon selection, but remains at that (often non-orthagonal) angle even as the wheel spins (if it can) during this period of selection for editing. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_trophy.png|frameless|upright=0.125]]&lt;br /&gt;
| &amp;quot;Good job&amp;quot; trophy (Called &amp;quot;stand&amp;quot; in assets)|| Static obstacle. Any ball can rest on the top of a trophy. This feature was probably added on purpose.&lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cup.png|frameless|upright=0.125]]&lt;br /&gt;
| Glass cup || Static obstacle. Container, with a nominal capacity of up to four balls (in whole or in part) within it. &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat_new.png|frameless|upright=0.25]]&lt;br /&gt;
| Cat || Swats away balls in front of itself (was added later). Balls can get stuck on top of the cat or between the cat's head and tail. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intangible decorations====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;margin: auto; float: right&amp;quot;&lt;br /&gt;
! Image !! Transcript &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_ponytail_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_ponytail.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Ponytail, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_cueball_arms.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing Cueball, with raised arms &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_whitehat.png|frameless|upright=0.125]]&lt;br /&gt;
| Left-facing White Hat, standing &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap_resting.png|frameless|upright=0.25]]&lt;br /&gt;
| Rightwards-facing Knit Cap, in an 'action' pose &lt;br /&gt;
|-&lt;br /&gt;
|  [[File:2916_knitcap.png|frameless|upright=0.125]]&lt;br /&gt;
| Right-facing Knit Cap, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_helmet.png|frameless|upright=0.125]]&lt;br /&gt;
| Helmet-wearing figure, standing &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_squirrel.png|frameless|upright=0.125]]&lt;br /&gt;
| Squirrel &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_deterministic.png|frameless|upright=0.25]]&lt;br /&gt;
| &amp;quot;Probably Deterministic&amp;quot; sign &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_rabbit.png|frameless|upright=0.125]]&lt;br /&gt;
| [[1682: Bun|Bun]] &lt;br /&gt;
|-&lt;br /&gt;
| [[File:2916_cat.png|frameless|upright=0.125]]&lt;br /&gt;
| Cat &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All other items can be manually re-angled by a 'loop node' arm extending from the bounding box. If you cannot see the 'angle node' for such a selected item, which is normally at the top of any freshly placed item but follows any re-angling that may have already applied, it could be that you have placed the item too close to the edge in which direction the node extends. To rotate it, move the object away from the edge to access the construction node (after which, you can drag the object back if required – but see below).&lt;br /&gt;
&lt;br /&gt;
Rotation may be limited by the {{w|minimum bounding box}} that is the 'selection box', this is not necessarily the more flush {{w|convex hull}} of the collision-map built into the graphic. Should a corner of the bounding box need to move across the edge of the build-area, it will do nothing more than touch the edge until there is sufficient angle-drag to snap it to the angle from which that corner now comes back away from the edge; or, when it has a long straight edge currently flush with the edge boundary, it may snap to exactly 180°, in rotation, whereupon the opposite long straight edge is flush to the construction area edge. All objects that are drag-moved, similarly, cannot be moved any further than their current bounding box touching the construction-area edging. The bounding box for the rotating wheel is a notable exception to this, being not under any direct angle-control by the player. Instead, it seems to use the bounding inscribed circle that defines the wheel edge iteslf.&lt;br /&gt;
&lt;br /&gt;
Apart from some interactions between the hinged scoops and any element (including other hinged scoops), there is no preventative 'collision detection' between objects during user-placement, which may overlap/cover each other (the most recently spawned item graphically overlays any earlier one). The wheel object will only spin if not constrained by other physical elements (including the spokes of an adjacent wheel, not in counter-rotation) but can still be dragged and placed anywhere within the boundary of the construction area.&lt;br /&gt;
&lt;br /&gt;
The continuous stream(s) of balls respect all ''tangible'' objects, which includes any currently being dragged/rotated, though may prematurely vanish if forced between two items moved to touch/overlap each other. It is possible to indirectly nudge balls by carefully moving a tangible object's surface into them (or holding them within it, e.g. the &amp;quot;cup&amp;quot;). This may be useful for rescuing temporarily stray balls (before they time-out anyway), unjamming an area with a construction-induced glut ''or'' for testing a ball-path that is not currently being fed 'naturally'. Doing so ''can'' then conceivably fulfil all the exit-gate requirements (temporarily), as it might also transiently spoil some required routing, but the manual intervention will not be possible once a 'machine' has been submit.&lt;br /&gt;
&lt;br /&gt;
====Non-player items====&lt;br /&gt;
{|&lt;br /&gt;
|[[File:2916_container_red.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_yellow.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_blue.png|thumb|center|80px]]&lt;br /&gt;
|[[File:2916_container_green.png|thumb|center|80px]]&lt;br /&gt;
|}&lt;br /&gt;
Ball containers at the bottom of the machine.&lt;br /&gt;
&lt;br /&gt;
[[File:4d425c.png|thumb|left|250px|Cueball and Megan in the ''USS Buoyancy. 262 x 162]]&lt;br /&gt;
&lt;br /&gt;
[[File:2916_pit_bottom.png|thumb|left|400px|Pit below the ''USS Buoyancy''.]]&lt;br /&gt;
&amp;lt;br clear=all&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Color routing ===&lt;br /&gt;
The different ball colors have different physical properties. Red balls are more bouncy than other balls, green balls are heavier, and yellow balls are lighter and slightly bouncy. The following values were extracted from the code:&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Color&lt;br /&gt;
! Mass&lt;br /&gt;
! Density&lt;br /&gt;
! Restitution (bounciness)&lt;br /&gt;
! Linear damping (drag)&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;00F&amp;quot; | Blue&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;F00&amp;quot; | Red&lt;br /&gt;
| 0.08&lt;br /&gt;
| 1&lt;br /&gt;
| 0.8&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;0F0&amp;quot; | Green&lt;br /&gt;
| 0.75&lt;br /&gt;
| 9.325&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
! data-sort-key=&amp;quot;FF0&amp;quot; | Yellow&lt;br /&gt;
| 0.024&lt;br /&gt;
| 0.3&lt;br /&gt;
| 0.6&lt;br /&gt;
| 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Balls also have spin, but it is subtle and hard to see because the balls have no visible texture.It can be seen, with effort, using green balls (which are heaviest). Rolling down a slope (say, two boards), green balls accumulate spin in the direction they are rolling. Let them drop off the end and then bounce off a brick such that they travel upward, but with very little sideways motion. Then &amp;quot;catch&amp;quot; the balls with a brick just past their apex, when they are moving slowly. If the ball lands on a horizontal brick, it can be seen that the ball will suddenly accelerate left or right based on the spin.&lt;br /&gt;
&lt;br /&gt;
For certain combinations of inlet and outlet 'gates', it is necessary to 'cross the streams'. e.g. to direct righthand-entry balls to a lefthand-exit and vice-versa. It is possible to just construct the field to send two (or more!) sets of balls to fly across a common gap, to land on an appropriate reception area that leads to the chosen exit. But, though this is not {{w|Proton pack#Crossing the streams|completely inadvised}}, the timing of the balls cannot be guaranteed to be in sync (or, rather, anti-sync) with each other and collisions ''will'' occur, especially under the variations of delivery that might significantly alter the ballistic path across the gap. Even if the trial machine works, in isolation with a steady stream of all balls entering the field of play, once submitted it will inevitably be fed by a more chaotically-routed preceeding construction.&lt;br /&gt;
&lt;br /&gt;
In order to maintain sufficient correct arrivals at exits&amp;lt;!-- and, I believe, sufficiently few ''wrong'' arrivals... does it enumerate the 'net correct delivery rate' to establish the validity of the output? ...needs more research --&amp;gt;, it may be necessary to add a method of filtering the hues.&lt;br /&gt;
&lt;br /&gt;
This could just mean introducing a 'wrong hue trap' beyond any crossing point(s) that send the occasionally wrong ball back to the cross point (or let them time-out in a dead-end, relying upon few enough failures from the rest of the balls, along with all colliding balls that subsequently missed ''any'' chance of reaching an exit). Alternatively, two (or more) feeds of marbles could be fed through a deliberate 'sorter' that does a sufficiently reasonable job of separating the combined sets out towards their intended target-exits.&lt;br /&gt;
&lt;br /&gt;
The various physical qualities of the balls suggest a number of methods for redirecting separate hues to separate onward journeys. This can be done by isolating a hue from every other hue, then passing on (if necessary) to a setup extracting a different one from the remainder, and perhaps also a third time. It may also be possible to merge 'arrangements' of sorting mechanics to efficiently distribute straight into three ''or even four'' onward tracks towards the desired outputs, but that is left as an exercise to the reader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This may not be the most efficient depiction (with just four/less 'core methods', after following &amp;quot;See X/Y&amp;quot;s) but if the Prism or some other item actually adds zignificantly practical pre-&amp;quot;See&amp;quot; differences then the all-vs-all format (with the reversals/same-to-sames still there to be abbreviated/redirected) will come into its own.&lt;br /&gt;
If you so wish, redo. e.g. as &amp;quot;;header + :paragraph&amp;quot;s or table of &amp;quot;!Combo(s)!!Methodology&amp;quot;&lt;br /&gt;
NB:&lt;br /&gt;
  1x ! Row-start Style=                                                 | Row-start 'header'&lt;br /&gt;
  4x | *Unwikiparsable key just for editors' benefit* + optional Style= | Contents&lt;br /&gt;
...right now, I've mostly added &amp;quot;vertical fan&amp;quot; experiences (which I find useful for all but R/B differentiation), but more about bumpers (including fan-/wheel-collisions), the positive/negative 'force objects' and of course horizontal/angled fans could also be added.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:black; color:white&amp;quot; | To separate !! style=&amp;quot;background-color:lightblue&amp;quot; | Blue !! style=&amp;quot;background-color:lightgreen&amp;quot; | Green !! style=&amp;quot;background-color:yellow&amp;quot; | Yellow !! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:red&amp;quot; | Red&lt;br /&gt;
| *R/B* | '''Use 'bounce''''&lt;br /&gt;
The sole difference is how much balls will rebound from objects. Well managed and constrained ricochets should allow a sorting action.&lt;br /&gt;
| *R/G* | '''Use mass or 'bounce''''&lt;br /&gt;
Green balls are not easily affected by a fan or a black hole, making it easier to sort from other balls. On the other hand, it also means it is very hard to precisely accelerate green, since the only components able to accelerate green is the bonk and the kitten.&amp;lt;br/&amp;gt;Green, like Blue, rebounds differently to Red.&lt;br /&gt;
| *R/Y* | ''See&amp;lt;br /&amp;gt;Y/B+G''&lt;br /&gt;
| *R/R* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:yellow&amp;quot; | Yellow&lt;br /&gt;
| *Y/B+G* colspan=2| '''All methods'''&lt;br /&gt;
Yellow, alone, exhibits high drag against any unforced motion.&amp;lt;br/&amp;gt;It is also unique in all other ways; e.g. can be levitated highest, against all other hues (though most profoundly against Green).&lt;br /&gt;
| *Y/Y* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *Y/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- R/Y-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightgreen&amp;quot; | Green&lt;br /&gt;
| *G/B* | '''Use mass'''&lt;br /&gt;
Green balls are only minimally affected by a fan.&amp;lt;br/&amp;gt;There is also a not so marginal difference in density that might be exploited, such as by using black holes, which only minimally effects Green (perhaps showing an effective difference between mass of attraction and mass of inertia).&lt;br /&gt;
| *G/G* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *G/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | ''See&amp;lt;br /&amp;gt;Y/B+G'' &amp;lt;!-- Y/G-&amp;gt;Y/B --&amp;gt;&lt;br /&gt;
| *G/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/G&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background-color:lightblue&amp;quot; | Blue&lt;br /&gt;
| *B/B* style=&amp;quot;text-align: center; background-color:black; color:white&amp;quot; | n/a&lt;br /&gt;
| *B/G* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See G/B&lt;br /&gt;
| *B/Y* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See&amp;lt;br /&amp;gt;Y/B+G&lt;br /&gt;
| *B/R* style=&amp;quot;text-align: center; background-color:gray&amp;quot;  | See R/B&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Even when not strictly necessary for one's own submission, once submitted into the full playing grid the player's own contribution may find itself working with less 'pure' delivered ball-streams (from an imperfectly separating feed-in contribution). It is possible that this more interactive disruption can make the new setup behave erratically or even entirely incorrectly.&lt;br /&gt;
&lt;br /&gt;
It might be thought good practice (but not ''necessary'') to deliberately combine any or all inputs and do a full job of splitting them again, just in anticipation of possibly having to deal with such cross-contamination and being able to 'clean up' the onward stream(s) for the benefit of others. This would of course be particularly difficult if the isolated building-phase does not provide all four hues to 'test' against, so any speculatively added filtering would have to be added 'blind' (and only on the offchance that any anticipated incorrect balls will actually enter the arena) and without any legitimate exits to which such rejects could be shunted (therefore could accumulate, up until any 'time out' that might apply to any ball once operational as part of the combined grid).&lt;br /&gt;
&lt;br /&gt;
Single-input/single-output designs might not particularly require ''any'' sorting mechanism, in theory, though the unexpected 'contamination' of the system with balls of different masses/etc could perhaps introduce malfunctioning passage from the added chaos it might succumb to.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Finish transcribing the comic!}}&lt;br /&gt;
&lt;br /&gt;
:[The placeholder image shows four balls, colored red, green, yellow and blue, bouncing on top of three white blocks. Text in the center: &amp;quot;[visit xkcd.com to view]&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
:[In the game, colored balls fall out of rotating half-gears that spawn at random from the wall and/or ceiling while an opposite set of half-gears rotate with a colored triangle pointing to that intersection of said set of gears. There is a button that says &amp;quot;view machine&amp;quot; button in the bottom right corner. When clicked, it takes you to a larger grid of others' machines that you can view in a larger grid. There is another button with a wrench which is a menu that gives you tools and decorations to move the balls to the set of gears with the colored corresponding triangle.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, intro popup]&lt;br /&gt;
:Cueball: Balls falling into your cell should be routed to the outputs at a steady rate.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, warning popup]&lt;br /&gt;
:Cueball: For security reasons, balls that remain in your device for more than 30 seconds will be removed and destroyed.&lt;br /&gt;
&lt;br /&gt;
:[Cueball with lab coat, submit popup]&lt;br /&gt;
:Cueball: Congratulations! Your contraption has passed all tests. Press [submit button] to submit it to be added to the machine!&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
* Once again an April Fool's Day Comic came out late, as Randall did not release this on April 1st, even though April 1st did fall on a Monday, a normal release day. It first came four days later with the Friday release on April 5th. That this is to be considered an April Fools' Day comic, in spite of the later release, was confirmed on the xkcd Facebook page.&lt;br /&gt;
*Randall acknowledges the people who helped him create this comic in a [[Header_text#Machine|comic-specific header text]]. &lt;br /&gt;
**With 11 different involved apart from Randall this is by far the comic with most people involved.&lt;br /&gt;
*Some hidden keyboard shortcuts have been found:&lt;br /&gt;
** Follow balls: Ctrl + Alt/Option + B (now also accessible by using the button provided)&lt;br /&gt;
** Show debug overlay: Ctrl + Shift + Win/Cmd + D&lt;br /&gt;
***  This may particularly clash with browser functionality, e.g. Firefox's &amp;quot;New Bookmarks&amp;quot; dialogue which will need closing, though still activating the overlay graphics.&lt;br /&gt;
** Delete selected item: Delete (Fn + Delete on Mac)&lt;br /&gt;
*When Randall posted a [https://www.facebook.com/TheXKCD/posts/pfbid0Cs97awQZi1ZiaEXouAex9tXrwAS3qJV3RmAiuCq5uvZQwqZVMgDmcqJ7JU9LYodYl link to this comic] on his [https://www.facebook.com/TheXKCD Facebook feed], he directly wrote that it was a late April Fools' Day!&lt;br /&gt;
**MACHINE&lt;br /&gt;
**Happy Belated April Fool's Day!&lt;br /&gt;
**This thus ends any discussion of whether this should be seen as an April Fool's comic or not. &lt;br /&gt;
**It just came out 4 days late. This has also happened several times since [[Garden]].&lt;br /&gt;
[[File:2916 Machine Facebook April fools' confirmation.png]]&lt;br /&gt;
*The [https://github.com/xkcd/incredible source code] for the comic was released on GitHub on May 8, 2024.&lt;br /&gt;
**chromakode, one of the developers, also published a [https://chromakode.com/post/xkcd-machine/ blog post discussing the design and development process].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Dynamic comics]]&lt;br /&gt;
[[Category:Comics with animation]] &lt;br /&gt;
[[Category:Interactive comics]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Comics featuring White Hat]]&lt;br /&gt;
[[Category:Comics featuring Knit Cap]]&lt;br /&gt;
[[Category:Characters with hats]]&lt;br /&gt;
[[Category:Squirrels]]&lt;br /&gt;
[[Category:Buns]]&lt;br /&gt;
[[Category:Cats]]&lt;br /&gt;
[[Category:Physics]]&lt;/div&gt;</summary>
		<author><name>2A0A:EF40:C2:3201:96FA:24C1:60D5:8A12</name></author>	</entry>

	</feed>