On the Subject of LEGO Removal

You know, people always talk about how painful it is to step on LEGOs. Personally, I think being blown up by them is worse.

A structure of randomly stacked and assorted LEGO bricks is placed onto a multi-colored 16×16 baseplate. The structure is made up of 42-70 bricks, and is 7-10 layers tall. The baseplate also has three screens and a button.

Each brick will be one of 12 sizes from the list below, and one of 28 colors from the palette in Appendix COLOR on page 3. Each 1x1 brick is provided with its side view. The list is in reading order, 1×1s first.


In order to solve the module, the defuser must dismantle the structure while following three different sequences and an incrementer:

  1. Base Sequence:
    • A looping sequence of digits 0-3.
  2. LEGO Order:
    • The order each brick must be removed in.
      • by: Color ID, Size, Support Studs, and Layer Number
    • Represented by the digits in Base Sequence.
  3. Direction:
    • A looping binary sequence.
      • 1 = ascending order, 0 = descending order.
    • Matches with Base Sequence, applied to LEGO Orders.
  4. Increment Brick:
    • A specific size brick that increments Base Sequence and Direction by 1 when removed from the structure.

Attempting to remove a brick in the wrong order will incur a strike, reset every sequence to its beginning, and change the Increment Brick. The brick you attempted to remove will be left in its place.

  1. Use the serial # to find the Base Sequence.
    • Remove each letter from the serial #.
      • “81ACH7” ⇒ “817”
    • Replace each digit with the result of this formula:
      • (digit + (# of 1×1×3s)) mod 4

  2. Plug each digit in Base Sequence with its LEGO Order.
    • 0: Color ID
      • Remove selectables by their Color ID found in Appendix COLOR.
    • 1: Size (area)
      • Remove selectables by their area in studs.
        • 1×1×3s have a size of 3, other 1×1s have a size of 1.
    • 2: Support Studs
      • Calculate # of studs attached directly below each selectable.
    • 3: Layer Number.
      • Determine what layer each selectable is placed in. The bottom layer is 0, and the top layer will be between 6-9.

  3. Use the serial # to find the Direction.
    • Remove each number from the serial #.
      • “81ACH7” ⇒ “ACH”
    • Replace each letter with the result of this formula:
      • (base10(letter) + (# of tiny 1×1s)) mod 2
    • If Direction and Base are different lengths, loop accordingly.
    Ex. Base Sequence: 3210 3, 2, 1, 0… Layer Supp. Size Color
      Direction: 01 0, 1, 0, 1… Desc. Asc. Desc. Asc.

  4. Find the Increment Brick.
    • Take the sum of each brick’s size on the current topmost layer, modulo 12, then plug it into the brick list on page 1.
      • 0 = the tiny 1x1, 11 = the 2x4
    • Upon a strike, redo this process.

Only selectables are considered when following sequences (bricks with nothing placed on top of them). If removing a brick completely uncovers another, it becomes a new selectable and is now a part of the sequence. Bricks of the same value may be removed in any order.

The Button

Clicking the button will highlight every selectable brick. It’s highly probable for selectables to be hidden behind other bricks, so take care in making sure every selectable is accounted for.

Appendix COLOR

The palette is in ROYGBIV order, plus white. Each color starts with its transparent material, then moves from its shade to its tint.

Hovering over a brick will display its Color ID on the three screens.
"Bright Red," would be displayed on the screens as, “002.”

T 0
Red
  1
Maroon
2
Bright Red
 
T 10
Orange
    13
Orange
 
T 20
Yellow
    24
Brgt. Yellow
26
Vanilla
T 30
Green
  32
Earth Green
34
Jade Green
36
Mint
T 40
Blue
  42
Earth Blue
44
Azure
46
Cornflower
T 60
Indigo
  62
Night Blue
64
Indigo
 
T 70
Violet
  71
Dark Plum
72
Violet
73
Bright Pink
T 100
White
120
Black
140
Dark Stone
160
Light Stone
200
White