On the Subject of Worse Code

U2F5IGdvb2RieWUgdG8gaGVyIGZvciBtZS4g4pml

NOTICE: Due to hardware limitations, you may run into cases where you cannot play the module as intended. The final page will detail how the module is still accessible should issues arise, hardware related or otherwise.

This module consists of four different “lanes” for inputting Morse code sequences, an LED, and a submit button at the top. Your goal is to provide the module with a valid set of four Morse code sequences— one for each letter— and then perform the final submission when you are ready.

A valid set of letters can be determined via the following procedure:

  • Place an observer at the origin of a coordinate plane.
  • The light of the LED can move in any of the four cardinal directions, with a long pause in-between repeats of the sequence. Note down the directions, as they represent the directions in which this observer moves throughout the plane. This observer will always face the same direction as it’s movements.
  • To convert these movements to letters, consider the turns the observer makes along it’s journey, where each path from the origin it goes in being a different letter.
  • Use the movements of the observer to append signal, which combine to form a letter in International Morse code:
    • Dot signal is appended upon a left turn.
    • Dash signal is appended upon a right turn.
    • Upon a U-turn, stop appending symbols and convert your signals to a letter. Only continue appending signal after the observer crosses the origin.
  • Order the letters obtained via signal based the observer’s original movement off the origin to eventually obtain that letter, starting with north and going clockwise. These must appear top to bottom on the module.

Each lane is made up of 13 “moments”, where a moment is considered a portion in which there can be either signal— a segment of a dot or dash— or space. “Signal type” refers to consecutive signal which form either a dot or dash.

For a set of Morse code sequences to be considered valid, all of the following must apply:

  • The Morse code sequence in each lane must be valid:
    • All Morse code sequences are 13 moments or less.
    • The sequence starts at an odd moment in the lane.
    • All spaces between signal are of length 1 moment.
    • All signal of the same type are of consistent length 2w+1 moments, where w is an integer. This integer cannot be Ø for dashes.
    • The length of dot signal are less than the length of dash signal.
    • The order and amount of signal types matches that of the corresponding valid letter in International Morse code exactly.
  • All columns containing a signal in any of the lanes are consecutive.

Pressing on a specific moment of the lane (dragging is also supported) will “toggle” space into signal, or vice versa. The currently detected letter will be shown to the left of the lane. If there is another valid letter, press the button to change said letter. If no such other letter exists, the module will strike.

Once all valid letters and Morse code sequences are provided, press the submit button. If upon pressing submit your set of Morse code sequences are invalid, the module will strike immediately. Otherwise, the module is prepared for the final submission. If a strike occurs after this, you must press the button again before retrying.

The final submission is performed as follows, using the keys on your keyboard to submit all four of your valid Morse code sequences simultaneously:

  • Start by holding down all keys corresponding to the lanes within the leftmost column containing signal. You will know you have done this correctly once the column turns green. Do not release or hold down keys until instructed to do so or the status light changes color. Pressing other keys is also not allowed.
  • In cases of consecutive matching columns, all will turn green.
  • For subsequent columns, if for each key whether they contain signal compared to the previous moment differ, hold down any keys which within this column do contain signal and release any keys which do not contain signal.

The labels of the buttons showing currently detected letters will turn blue when the module detects the corresponding key being pressed. This can be done before you prepare the module for the final submission.

If you discover that is it impossible for your computer to detect the necessary inputs required for the final submission, press the LED to activate assist mode. You will know assist mode is activated when you see that the labels of the buttons are in lowercase. You can freely toggle assist mode on and off so long as you have not pressed the submit button.

When assist mode is enabled, rather than pressing the keys which correspond to the detected letters, pressing the following four keys correspond to specific lanes the letters are in:

  • Quebec corresponds to the topmost lane.
  • Whiskey corresponds to the second lane.
  • Oscar corresponds to the third lane.
  • Papa corresponds to the bottommost lane.

Via mod settings you can change the four keys listed above to different ones if they do not work for your hardware. The four fields will only accept the codes given below. No two fields can be the same. These fields are not case-sensitive.

ESF1F2F3F4F5F6F7F8F9F1ØF11F12SRSLPA
BQA1A2A3A4A5A6A7A8A9MIEQBSINHOPUNLKDKMUKMI
TAQWERTYUIOPLBRBBHDEENPDK7K8K9KPL
CLASDFGHJKLSCQTREK4K5K6
LSZXCVBNMCMPESHRSUAK1K2K3KEN
LCTLCMLALSPAGRCMMERCTLARDARARKPE

Assist mode will also only take into account the keys chosen for the assist mode, meaning that pressing other keys will no longer yield a strike. Via mod settings you can also determine whether assist mode is enabled on the module by default.

Separately, there is a setting to activate toggle mode. You will know toggle mode is activated when letters turn gold on the module when pressed instead of blue. In toggle mode, rather than keys needing to be held down, toggle mode will upon a key press toggle whether the module detects that key as being held or not. You are allowed to have both assist mode and toggle mode active.