Давайте Поиграем В Отладку В Это Воскресенье Вечером?

Вы когда-нибудь задумывались, что существуют игры, которые сами по себе являются языком программирования? Не обязательно Тьюринг-полный, но все же язык.

У меня есть отличный пример.

Геймплей Нейросимы-6 чудовищно похож на дебаг.

Снаружи, конечно, это похоже на стратегию, но внутри — отладочное, родное.

Посмотрите на эту картинку из жизни бойцов Пустоши.



Давайте поиграем в отладку в это воскресенье вечером?

Фигуры 20/20 — это командные центры, остальные две — фигуры бойцов с атаками в ближнем бою в направлении треугольников по краям.

Пока все просто — синий робот с ножами бьет желтого ковбоя, а ковбой бьет по синему центру управления.

Давайте усложним стек и запустим компиляцию.

Предположим, ситуация такая:

Давайте поиграем в отладку в это воскресенье вечером?

Сейчас нам важны приоритеты – это цифры на фишках.

Это уровень инструкций в стеке.

Если вы начнете бой, как на картинке выше, вы получите следующее: == Слой 3 Желтый панк с приоритетом 3 бьет мутанта и уничтожает его (если бы этого не было сделано, мутант ворвался бы в желтый командный центр на шаге 2).

Больше никого с таким приоритетом нет. Пойдем ниже.

== Слой 2 Желтый бегун и «ковбой» одновременно бьют по синему центру управления, а «ковбоя» бьет робот с ножами.

Командный центр теряет 2 единицы брони, «ковбой» уничтожен.

== Слой 1 Нет никого с приоритетом 1. Эта часть стека просто пропускается.

== Слой 0 Комцентры работают с приоритетом 0 и поражают всех ближайших врагов.

Синий командный центр отстреливается и уничтожает бегуна и товарища зазубренным ножом.

Он бы и «ковбоя» уничтожил, но незадача — его уже два тика нет. Конец стека .

Введите новые данные.



Будете ли вы пытаться самостоятельно разобраться в ситуации с такими входными данными?



Давайте поиграем в отладку в это воскресенье вечером?

Здесь модуль с плюсом берет на себя атаку одного из бойцов, к которому он подключен.

То есть, грубо говоря, мутант возле желтого командного центра получил вторую жизнь.

Фишка взрыва — желтая, которая начала выполнение стека из текущего состояния.

Желтый парень с сеткой пистолета — это блок: фигура противника, на которую нацелена сетка, не попадает в стек.

Вы прокручивали ситуацию в своей голове? Сколько попаданий осталось у какого командного центра? Какие фишки остаются на поле после полной очистки стека? Вот что вы должны получить:

Давайте поиграем в отладку в это воскресенье вечером?

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

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

В хаосе реального сражения даже простой ход становится настоящей отладкой:

Давайте поиграем в отладку в это воскресенье вечером?

Обратите внимание на красных стрелков – они поражают ближайшую фигуру противника по направлению атаки, но не поражают свои войска.



Теперь ты сам по себе



Давайте поиграем в отладку в это воскресенье вечером?

Вы играете за красных рейдеров – Гегемонию.

У вашего командного центра 2 хитпоинта, у противника – 6. Вам необходимо взять и разместить 3 фишки из пяти имеющихся на поле.

После этого начнется компиляция, и в конце казни у противника должно быть меньше очков жизни, чем у вас.

Фишки можно вращать.

Посмотрим, что имеем: парень с ближним и дальним боем может нанести сразу два урона, и он быстр.

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

Еще один боец с двойной рукопашной атакой по верхнему сектору – компромисс между скоростью и мощью.

И два рейдера – очень быстрые, но не такие сильные.

Ответ прост:

Давайте поиграем в отладку в это воскресенье вечером?



Другая суть - заказы

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

Вы можете только двигаться, вы можете только вращаться, вы можете делать и то, и другое.

Нажатием (стрелка вверх) перед компиляцией можно переместить чужую фигуру.

Ваш отталкивает его от себя на площадь.

Если рядом с толкаемой фигурой есть свободная ячейка, и в этой ячейке толкаемая фигура будет дальше от вашего толкаемого, чем раньше, можно использовать такой порядок.

Снайперский выстрел снимает одно попадание с любого отряда противника, то есть уничтожает все, что не бронировано.



Давайте поиграем в отладку в это воскресенье вечером?

У вас есть попадание, у зеленого врага — два.

Да, еще одна вещь.

Комцентры могут давать бонусы соседним фишкам: треугольник означает усиление атаки (здесь человек с кривым ножом получает вторую атаку в ближнем бою), зеленые звездочки - возможность дважды перейти в стек (по своей инициативе и ниже, то есть стрелок над зеленым командным центром будет атаковать дважды в 3 и 2).

Вот решение:

Давайте поиграем в отладку в это воскресенье вечером?



И последняя языковая конструкция — модули

Это юниты, изменяющие свойства соседей, к которым они подключены палочками.

Треугольник и плюс – усиление соответствующей атаки.

+1 — увеличение скорости, то есть приоритета обработки в стеке.

Плюс — защита от одной атаки (вместо атакуемой армии модуль с плюсом принимает атаку на себя).

Задача:

Давайте поиграем в отладку в это воскресенье вечером?

У вас есть попадание, а у желтых и синих врагов по три попадания.

Вы можете использовать любые три модуля из пяти, у нас демократия.

Командный центр противника дает плюс к инициативе (стрелок за синим командным центром стреляет на 4 фазе в самом верху стека), ваш увеличивает дальний бой на 1. Вот решение, попробуйте разобраться.

Медленно, но верно мы приближаемся к циклам и рекурсии, вы это чувствуете?

Давайте поиграем в отладку в это воскресенье вечером?

У одной из армий есть возможность построить бесконечный цикл, наносящий бесконечный урон до конца разбора стека.



Более сложный

Вот набросок, сможешь ли ты быстро оттолкнуть своих врагов? Вы играете за Красного и имеете 1 очко здоровья.

У желтого цвета 6 очков жизни, у зеленого — 3, а у синего — 2.

Давайте поиграем в отладку в это воскресенье вечером?

Выберите любые три фишки из пяти.

Вот ответ:

Давайте поиграем в отладку в это воскресенье вечером?

Видите, как это здорово? А теперь представьте, что в реальной игре такая отладка происходит на каждом шагу.

Поэтому я и говорю о тактическом симуляторе-отладчике, да-да-да.

Вот десктопный оригинальная игра , на странице которого есть подробные правила.



Призовой эскиз



Давайте поиграем в отладку в это воскресенье вечером?

Вы — Застава.

Если вы решите эту проблему Вам необходимо прикрепить в комментарии картинку с ситуацией до «подборки», которая приведет к вашей победе – хоть отфотошопленную с фишками из вариантов выбора, хоть на салфетке, хоть на словах, но обязательно.

Первый, кто определится, получит коробочку Неурошимы с доставкой по всей территории РФ.

Если вам понравилась эта воскресная игра, я продолжу задания.

Эта проблема решена.

Скрытый текст В комментариях есть одно решение, вот классическое:

Давайте поиграем в отладку в это воскресенье вечером?

Собственно, о чем я говорю? Если вы разработчик, то игра вам обязательно понравится.

Мы нашли ему еще одно применение — посоветовали родителям как средство обучения логическому программированию.

P.S. Вторая призовая задача — исследование «блокировки мьютексов»:

Давайте поиграем в отладку в это воскресенье вечером?

Здесь вам нужно будет углубиться в правила точной формулировки работы сетей и сетевой парадокс.

Первым, кто решит, кроме подмигивание также получит коробку.

Решение:

Давайте поиграем в отладку в это воскресенье вечером?

Теги: #Воскресный вечер #игра #приз #Нейросима #отладка #отладка #Neuroshima Hex #Разработка игр #механика #Разработка игр #отладка

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.