Про Algotica Iterations


Algotica - це гра про програмування, створена людиною, яка явно любить програмування. Шкода лише, що вона значно менше любить користувачів.

На перший погляд усе виглядає багатообіцяюче. Вам потрібно складати послідовність команд і приводити персонажа до фінішу. Майже як перші уроки алгоритмів для дітей, тільки замість нудних квадратів тут гарний казковий світ із туманами, деревами та руїнами. Візуально гра виглядає так, ніби художник і програміст працювали окремо, але художник виграв усі суперечки.

Сюжет тут існує приблизно на рівні заставки з падаючими літерами у стилі "Матриці". Після неї гра чесно каже: забудь про історію, зараз будемо страждати через алгоритми.

І починається найцікавіше.

За задумом потрібно складати програму з простих команд руху. За фактом дуже швидко з'ясовується, що герой живе не за законами математики, а за законами фізичного рушія. А це різні речі.

Тому замість:
"Зроби три кроки вперед"
ви отримуєте:
"Зроби три кроки вперед, трохи послизнись, зачепи кущ, полети в невідомому напрямку і провали тест".

Особливо прекрасно поводяться стрибки, величини яких відчуваються не в метрах, не в клітинках і навіть не в пікселях. Вони вимірюються в магічних папугаях. Інакше пояснити деякі траєкторії неможливо.

Ще один бос гри - інтерфейс. Перетягування команд виконане так, ніби розробник хотів перевірити силу вашого бажання вивчати програмування. Незручні зони захоплення, дивний запуск програм і постійна боротьба з меню іноді створюють більше виклику, ніж самі головоломки.

Особливо дивує відсутність деяких базових речей:
- циклів немає;
- нормальної паузи виконання немає;
- аналізу алгоритму майже немає;
- зате дивної поведінки фізики - скільки завгодно.

Самі задачі активно штовхають до оптимізації. Чим менше команд використано - тим краще результат. Ідея гарна. Але дуже часто оптимальне рішення виглядає не як красивий алгоритм, а як шаманський ритуал із серії "якщо тричі підстрибнути біля каменя, равлик випадково докотиться до потрібної точки".

Найсумніше те, що гра позиціонується як знайомство з програмуванням. Але замість пояснення логіки, структур мислення та побудови алгоритмів вона демонструє іншу важливу навичку сучасного програміста - як працювати з системою, яка поводиться не так, як написано в документації.

Зате дуже добре передає дух реальної розробки: усе поводиться дивно, половина рішень виглядає неправильними, але чомусь працює. На жаль, це не той урок програмування, який хотілося б давати дітям.

[3/10]

Коментарі