Пишем игру 2048 на bash в 2048 байт и меньше

Пишем игру 2048 на bash в 2048 байт и меньшеВы наверняка знакомы с игрой 2048. Достаточно простая, но захватывающая игра, смысл которой в том, чтобы перемещать клетки с цифрами, которые при соединении двух клеток с одинаковым числовым значением превращаются в одну клетку с числовым значением, представляющим сумму этих двух значений. И поскольку я большой любитель bash, я решил написать эту игру на bash’е, уложив ее в 2048 байт.

Укладываемся в 2048 байт

Как оказалось, это достаточно несложно, в 2 килобайта можно уложить игру, при этом туда влезли еще и копирайты с контактами. Но тут нужно учесть кое-что. Поскольку я не вижу смысла в подсчете очков, и смысл игры все-таки в том, чтобы получить плитку с числом 2048, я не стал его делать. От этого игра хуже не стала.

Вот, собственно, текст bash-скрипта 2048.sh:

Как видите, скрипт достаточно понятный, можно еще сократить из спортивного интереса.

Оптимизируем

После некоторых оптимизаций у меня получился вариант размером 1174 байта. Кстати, рандомизация в нем работает несколько лучше. Вот сам скрипт

2048_min.sh

Выглядит несколько иначе, менее читабельный, но уже получше оптимизирован. Если хотите, можете добавить окончание игры с выигрышем по получении плитки со значением 2048 или добавить еще какие-то оптимизации, буду рад отзывам и предложениям в комментариях.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *