О Фрактальном Лабиринте

Как вообще можно найти выход в бесконечном лабиринте?

На модуле имеется 3 квадрата и квадрат справа, разделённый на 4 квадрата по меньше. Чтобы обезвредить модуль, пройдите различные итерации фрактала, пока он не сократится до -1 итерации.

3 больших квадрата и пустой угол являются частью сетки 2х2. Эта сетка 2х2 является вашим ключом и нулевой итерацией. Чтобы проитерировать сетку, создайте копию текущей сетки в каждом непустом квадрате ключа. Потом, измените каждую новую копию в соответствии с цветом квадрата ключа, в котором находится новая копия.

Первый лабиринт является третьей итерацией, имеющей высоту и ширину 16 квадратов. Последующие лабиринты (вы будете перемещены в следующий лабиринт после прохождения текущего) являются предыдущими итерациями. Продолжайте, пока вы не пройдёте нулевую итерацию.

Для перемещения по лабиринту используйте квадрат справа. Данный квадрат также показывает вашу позицию и позицию выхода посредством цветных сигналов. Количество сигналов равно номеру вашей итерации + 1. Красный указывает на вашу позицию, а зелёный указывает на выход. Пересечение данных цветов отображается жёлтым цветом.

Чтобы определить на что указывают сигналы, возьмите два горящих квадрата. Они указывают на один из углов сетки. Каждая вспышка указывает на позицию в одной из итераций. Первая вспышка указывает позицию в нулевой итерации, вторая укажет позицию в первой итерации внутри позиции из первой вспышки и т.д. . Продолжайте определять позиции в итерациях, пока вы не окажитесь на одном из квадратов вашей итерации.

Каждый из цветов представляет из себя определённую серию изменений. Чтобы определить данные изменения, разложите цвет на RGB* компоненты. Цвета с R=1: Красный, Пурпурный, Жёлтый и Белый. Цвета с G=1: Зелёный, Голубой, Жёлтый и Белый. Цвета с B=1: Синий, Голубой, Пурпурный и Белый.

Если цвет имеет R=1, то сетка должна быть отражена по вертикали. Если цвет имеет G=1, то сетка должна быть отражена по горизонтали. Если цвет имеет B=1, то сетка должна быть повёрнута на 90 градусов по часовой стрелке. Все изменения должны происходить именно в таком порядке.

*RGB - Красный(R), Зелёный(G) и Синий(B).