On the Subject of Orientation Hypercube

If the bomb doesn’t kill us, a higher-dimensional creature rotating our brains sure will!

This module houses a four-dimensional hypercube, a nine-segment panel, a six-button keypad, and a large ‘Set’ button. There is also an eye-shaped observer looking at the hypercube.

Use the buttons to input a sequence of rotations which take the hypercube to the target orientation, as determined by the colours of its faces. Then, press the ‘Set’ button to solve the module.

The Hypercube and Panel

Top Back Bottom Front Zag Right Zig Left

The “hypercube” on the module is actually a three-dimensional projection of a tesseract, which has eight three-dimensional faces.

Mousing over one the non-centre segments of the panel to the right of the tesseract will highlight its corresponding face according to the diagram on the right. Press the status light to toggle colourblind mode (B = blue, K = black).

Note that these directions are relative to the perspective of the defuser, when looking from below the module.

The Buttons

Counter In Clock Left Out Right

The buttons on the module are used to rotate the tesseract in three different ways:

  • The “clock” and “counter” buttons will roll the tesseract in their respective directions. This means that the top face moves to become the right or left face, respectively.
  • The “left” and “right” buttons will yaw the tesseract in their respective directions. This means that the front face moves to become the left or right face, respectively.
  • The “in” and “out” buttons will ‘push’ the front face into, or ‘pull’ the zig face out of, the centre of the projection. This means that the front face moves to become the zig or zag face, respectively.
Note that these directions are relative to the perspective of the observer (at the time of pressing), which has a chance to move after pressing any button except left and right.

Rotation Preview Mode

Press the centre square of the panel to enter rotation preview mode. This can only be done before any rotations are queued.

The observer will move so that it looks directly at the module. Pressing the rotation buttons in this state will rotate the tesseract accordingly.

Press the centre again to exit this mode. Any rotations done in this mode are ignored.

Finding the Target Orientation

AxisNegativePositiveBits
XLeftRight00
YBottomTop01
ZFrontBack10
WZigZag11

Consider the RGB components of each face colour as separate binary digits, with the presence of a component representing a 1, and absence representing a 0. Any black faces will instead be absent.

The positive faces and negative faces each form a four-digit binary number for each component, with the X axis giving the most significant bit, followed by Y, then Z, then W.

Cycle the (binary) digits of the number obtained from the negative faces to the left by the number of batteries minus the number of battery holders on the bomb, and cycle the digits of the other number to the right by the number of ports. Finally, for every letter in “XYZW” present in the serial number, invert the bits whose position matches the corresponding letter’s position in “XYZW”.

The final number obtained from the faces correspond to directions, as follows:

  • The first pair of bits corresponds to the axis, according to the table above.
  • The second pair of bits indicates the sign: if they match, use the positive direction; otherwise, use the negative direction.

To get to the target orientation, rotate the tesseract so that, for each colour component, the face in the direction obtained from the negative faces ends up in the direction obtained from the positive faces.

Submission

Pressing the rotation buttons while not in Rotation Preview Mode will queue the corresponding rotations. Pressing ‘Set’ will reveal the initial red, green, and blue faces from the previous section, and execute the rotations.

On a strike, press ‘Set’ or the centre panel button to return the module to its initial state. The tesseract’s orientation is reset, and the target orientation remains the same.