Образовательная галактика Intel®

Блог Участника

Запись блога

Новые навыки со "старой" игрой - как настольная игра о программировании роботов позволяет расширить возможности обучения

Наша обучающая настольная игра "Битва Големов. Учимся программировать роботов", которую благодаря поддержке родителей и преподавателей мы издали в декабре 2016, разошлась в коробочной версии тиражом более 300 экземпляров, а скачивание бесплатной версии превысило 2300 раз. Мы уже писали, как можно применять игру для дошкольников и младших школьников, а сейчас хотим рассказать о дополнительных возможностях игры (в том числе, и бесплатной версии) для обучения программированию и робототехнике. Мы объединили новые методики в тему "Секретные архивы мага Алгоритмуса" и планируем дополнять их.

I. Изучаем "обратное программирование"

С помощью Битвы Големов можно рассказать ученикам об "обратной разработке" она же "reverse engineering". И не только рассказать, но и дать задания на эту тематику. Как это сделать?

1. Разбиваете учеников на две группы.
2. Первая группа формирует игровое поле и составляет программу для Голема, не показывая ее второй и не давая подсматривать (можно использовать ширму или другой материал, позволяющий загородить карты). Программа может быть любой сложности, длины и включать в себя Циклы и Условия и Удары.
3. После этого второй группе (НЕ ПОКАЗЫВАЯ ИСХОДНЫЙ КОД!) демонстрируется действия Голема на игровом поле согласно этой Программе. Вторая группа должна запомнить их. Для лучшего запоминания вторая группа может попросить повторить действия Голема еще пару раз.
4. Далее вторая группа составляет код, который, по их мнению, должен задать Голему эту последовательность действий.
5. После этого открывают Программу первой группы и сравнивают с кодом второй группы.

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

Для информационного сопровождения занятия можно дать ученикам информацию о законности обратного копирования и его применении в различных сферах деятельности и причинах этого.

II Изучаем многопоточность исполнителей

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

На поле для каждого игрока выставляется по два Голема - к примеру, у первого - Красный и Желтый, у второго - Синий и Зеленый.

Программа составляется единственная из комплекта карт для ОДНОГО Голема. Бонусы также применяются для одного столбца Команд. Но исполняется Программа одновременно для обоих. То есть, если у первого игрока первая Команда ВПЕРЕД, то вперед пойдут и Красный, и Желтый Големы.

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

Игра продолжается до выведения из строя всех Големов противника или до окончания 10 раундов. В последнем случае победитель определяется по меньшему числу повреждений на его обоих Големах.



III Изучаем информационную безопасность

С помощью Битвы Големов вы можете поиграть... в хакеров!

Как известно, любой программный код, увы, страдает от зловредных действий со стороны. Его могут взломать, изменить и использовать во вред. В Битве Големов вы можете использовать хакерские атаки на код противника, взламывая его систему и меняя программный код.

Для этого используйте Карты Удачи дополнения Логика, замешав их в колоду вместо Пустых карт Удачи.

Правила игры "Информационная безопасность Големов" в этом случае следующие:
1. Если вы вытаскиваете Карту Удачи с символом "НЕ", то можете ПОСЛЕ ВЫКЛАДЫВАНИЯ ПРОГРАММЫ и перед открытием первого ряда команд взломать систему ОДНОГО противника и удалить любую карту из его ряда команд. В этом случае игрок пропускает этот шаг.
2. Если выпадает Карта Удачи "И" игрок может взломать соперника и положить ему карту Действия из колоды РУБАШКОЙ ВВЕРХ, вытянув ее в слепую из колоды команд соперника, В КОНЕЦ ЕГО ПРОГРАММЫ.
3. Если выпадает Карта Удачи "ИЛИ" игрок может взломать соперника и поменять у него любые карты в Программе.
4. Если же выпадает Карта Удачи "XOR", то игрок может отразить любую атаку по взлому от соперников.

Взламывать одного игрока можно только ОДИН раз за раунд.

IV Работаем с подпрограммами

Расширяем возможности программирования, вводя в код Программы Големов Подпрограммы.

Вы можете задать подпрограмму в начале игры и вызывать ее в процессе составления Программы, положив соответствующую карту вызова. Как это сделать с текущей версией игры?

За Подпрограмму у нас будут отвечать карты "Стоять на месте". Одна карта будет являться планшетом, на котором мы будем составлять Подпрограмму, а другая вызывать ее. В игре команда "Стоять на месте" использоваться больше не сможет!

Порядок игры с Подпрограммами:
1. Игрок, который решил использовать Подпрограмму, выкладывает на стол карту "Стоять на месте" и задает ниже нее В ОТКРЫТУЮ код Подпрограммы ОБЯЗАТЕЛЬНО из ДВУХ Команд. Можно класть по две одинаковые команды Движения, но только одну команду Удар или Защита. Эти команды уже не будут использоваться в основном коде и брать их из Подпрограммы нельзя! Вы не можете использовать карты Бонуса в Подпрограмме!
2. В процессе составления Программы для Голема игрок может выложить вторую карту "Стоять на месте", показав строку вызова подпрограммы.
3. В ходе раунда, если у игрока открывается вызов подпрограммы, он выполняет ее КАК ОДНУ СТРОКУ ПРОГРАММЫ, аналогично циклу. То есть сначала выполняется первая команда Подпрограммы параллельно со строками Программ соперников этой строки, потом вторая команда Подпрограммы параллельно со строками второго прохода Цикла соперников. Если у соперников нет Цикла или вызова подпрограмм, то они ожидают завершения исполнения второй карты Подпрограммы.
4. Вы можете изменить Подпрограмму, ПРОПУСТИВ ХОДЫ В ТЕКУЩЕМ РАУНДЕ. В этом случае вы не выкладываете программу для своего Голема, но можете поменять карты в Подпрограмме.



V Учим Роботов-Големов различать типы препятствий

Не хватает Условий или кажется, что ваши Големы недостаточно умные? Добавьте им возможность различать типы препятствий и разнообразьте игровой процесс. Что для этого надо сделать? Просто ввести небольшое правило - выкладывать на карту Условия жетон препятствия.

Правила при этом для Условия следующие:
1. Вам необходимо выделить по одному жетону Стены или Воды для каждого игрока. Учитывайте это при составлении уровней.
2. Вначале ваш Голем не обучен различать тип препятствий и принимает за них все, что мешает ему пройти. Но как только вы выполняете Удар по препятствию, то можете или забрать себе этот жетон (в случае Бочки), или взять из запаса (Стена или Вода) и положить его на карту Голема. Теперь вы можете использовать тип данного препятствия в Условии.
3. Если вам выпала Карта Удачи "Условие", то вы можете применить карту "Есть препятствие?" выложив на нее жетон нужного препятствия. К примеру так:



В этом случае условие будет "Есть препятствие "Бочка"?" и Голем не будет реагировать положительно на другие виды препятствий или Големов.


Вы можете следить за новыми методиками, сценариями и дополнениями у нас на Вики или подписавшись на наши страницы в соцсетях (ссылки есть на сайте игры).

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

Комментарии

Активный пользователь

  • Группа: Пользователи
  • Сообщений: 40
  • Регистрация: 28.12.2013
  • Из: Кронштадт
  • Номер участника: 148105
Предупреждение

Спасибо за новые идеи, «хакеров» подпрограммы попробуем обязательно. Для подпрограмм нужна дополнительная память, я думаю? Как-то это обыграть надо.
У нас, по-моему, тоже новое «правило»: можно помиловать голема, у которого отобрали последнюю «жизнь», пожертвовав чем-то (не выполнять очередную команд или уменьшив количество своих команд в следующем раунде). Такая ситуация обычно возникает, если играют несколько девочек ))): мастерство они компенсируют «тихим сговором». Поэтому я зову это их новое правило «Принцесса». Иногда слышу, как мальчишки сразу договариваются с ними: «Сегодня никаких принцесс!»


--------------------
Саша Барышева,
ГБОУ СОШ №418, Кронштадт

Новичок

  • Группа: Пользователи
  • Сообщений: 1
  • Регистрация: 13.4.2010
  • Из: Глазов
  • Номер участника: 84535
Предупреждение

Цитата(Kron418 @ 19.3.2017, 2:00)
Спасибо за новые идеи, «хакеров» подпрограммы попробуем обязательно. Для подпрограмм нужна дополнительная память, я думаю? Как-то это обыграть надо.
У нас, по-моему, тоже новое «правило»: можно помиловать голема, у которого отобрали последнюю «жизнь», пожертвовав чем-то (не выполнять очередную команд или уменьшив количество своих команд в следующем раунде). Такая ситуация обычно возникает, если играют несколько девочек ))): мастерство они компенсируют «тихим сговором». Поэтому я зову это их новое правило «Принцесса». Иногда слышу, как мальчишки сразу договариваются с ними: «Сегодня никаких принцесс!»


Интересное правило - надо будет добавить на ВиКи smile.gif

По подпрограммам - она увеличивает число команд на одну + позволяет делать к примеру выпад вперед с ударом, или защиту с последующим ударом, не тратя строку программы. Да, уменьшает общее число команд + пока приходится жертвовать картами "Стоять на месте" (в дополнении/второй редакции будет отдельная карта), но и дает некоторые преимущества в игре.

Последние записи

Последние записи

Наверх