3D Rubik's Cube Puzzle

summary

A 3D Rubik's Cube puzzle game with intuitive controls and hints.

prompt

The game displays a 3D Rubik's Cube composed of smaller, colored cubes, with a realistic perspective effect. Two buttons are featured: 'Hint' and 'Shuffle'. The objective is to align each face of the cube to a single color. The cube is constructed as 27 small cubes (or 26 if the invisible center is omitted), with each face painted in a distinct color such as red, blue, green, orange, white, and yellow. Players can rotate the entire cube using mouse dragging or touch swipes to view it from different angles, and can also rotate individual layers by selecting a small cube and dragging to move its layer. Upon pressing 'Hint', a text message will display a move suggestion (for example, 'Rotate the top face clockwise'). Pressing 'Shuffle' randomizes the cube with 5 to 10 smooth, animated moves at a fixed speed. After each move, the game checks if the cube is solved and, if so, displays a congratulatory message like 'Congratulations! Cube solved!'. The controls are designed to be intuitive on both desktop and mobile devices.

original prompt

На английском.

Общее видение игры:
Игра показывает на экране 3D-кубик-рубик, который состоит из маленьких кубиков.
На экране должны быть две кнопки: «Подсказка» и «Шаффл».
Цель игры – привести кубик к состоянию, когда все грани одного цвета.

Подготовка проекта:
Добавить две кнопки: одну для подсказки, другую для перемешивания (шаффл).

Создание 3D-куба:
Представить куб как набор из 27 маленьких кубиков (или 26, если не показывать невидимый центр).
Каждая грань маленького кубика раскрашена в свой цвет (например, красный, синий, зеленый, оранжевый, белый, желтый).
Сделать так, чтобы куб выглядел трёхмерно – создать эффект перспективы, как будто он реально находится в пространстве.

Вращение всего куба:
Реализовать возможность поворачивать куб целиком, чтобы можно было посмотреть на него с разных сторон.
Для этого использовать управление мышью (когда щёлкаем и двигаем мышку) или тачскрин (свайпы пальцем).

Вращение отдельных слоёв:
Разбить кубик на слои (например, верхний, средний, нижний или левый, центральный, правый).
Сделать так, чтобы при нажатии на определённый кубик и движении мыши (или пальца) выбранный слой плавно поворачивался.
Важно, чтобы после поворота кубики в слое перемещались на свои новые места, как настоящие кубики рубика.

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

Кнопка «Шаффл» (перемешивание):
При нажатии кнопки «Шаффл» кубик перемешивается с помощью серии случайных поворотов.
Важно, чтобы каждый поворот был плавным и анимированным, чтобы игрок видел, как куб меняется.

Проверка сборки:
После каждого поворота проверять, собран ли кубик.
Если все грани получаются одноцветными, выводить сообщение о победе, например, «Поздравляем! Кубик собран!»

Управление:
Для вращения всего куба: щёлкнув и перетаскивая мышку (или свайпом на экране) можно поворачивать куб, чтобы увидеть его с другой стороны.
Для вращения слоёв: при нажатии на конкретный кубик нужно определить, к какому слою он принадлежит, и затем при движении мыши или пальца поворачивать именно этот слой.
Сделать так, чтобы все движения были интуитивно понятными и приятными.

Тестирование и отладка:
Протестировать игру на компьютере с мышкой и на мобильном устройстве с тачскрином.
Проверить, что повороты выполняются правильно и кнопки «Подсказка» и «Шаффл» работают так, как задумано.
Если что-то идёт не так, найти ошибки и исправить их.

Q: Do you want the hint to be displayed as a text message, an animation, or a combination of both?
A: текстом

Q: How many moves or what duration should the shuffle (shaффл) action perform?
A: от 5 до 10

Q: Should the rotation speeds for the entire cube and individual layers be fixed, or would you like the players to have control over the speed?
A: fixed

generation cost summary

model name: o3-mini-medium

response time: 62.80 sec.

result tokens: 9,233

cost: $0.04131490