Как создать игру «Армия големов» в Minecraft – программирование на Python для детей

c96c75e7c1a47cec27de519a360b767c.png

Хотите сделать мод на големов в игре «Майнкрафт»? Легко! В этом поможет язык Python. Предлагаем начинающим мододелам использовать его по представленной инструкции, чтобы разобраться, как создать игру «Армия големов».

«Дети не умеют писать код». «Им это не интересно». «IT — не детская, а взрослая тема». Это ложные установки, хотя они и имеют место. Мы в школе Pixel считаем, что детей, увлеченных геймингом, нетрудно сделать начинающими программистами: на примере популярной игровой вселенной Minecraft это возможно благодаря языку Python. С его помощью даже младшие школьники (8–9 лет и старше) могут создавать собственные моды для популярной инди-игры в жанре песочницы.

А мы предлагаем нашим читателям разобраться, как создать собственный проект на «Питоне» и запустить его в Minecraft. Будет просто и интересно: нами подготовлена краткая инструкция, а в конце представлен видеоролик, в котором наглядно и с примерами описаны основные шаги.

Приступим?

Программирование на Python во вселенной «Майнкрафт»: создаем мод «Армия железных големов»

Давайте представим, что на нашу виртуальную деревню хотят напасть враги. Чтобы защититься, нам необходимо создать армию мобов в виде големов. Давайте начнем!

Информация для новичков. 

Если вы только начинаете делать первые шаги в программировании и пока не установили Minecraft и Python на ПК, предварительно посмотрите вводные ролики. Вот видео для пользователей компьютеров с Windows и с MacOS

1. Задаем основные условия

Первых и последующих врагов будем спавнить в лесу: данная локация станет стартовой точкой. 

А еще сделаем ночь: так будет интереснее и немного страшнее. Основные шаги:

  1. Обращаемся к командной строке сервера и вводим команду time set night.

  2. Дополнительно пишем gamerule doDayLightCycle true. Эта команда установит запрет на изменение времени суток.

Создаем големов в Minecraft — начало работы над проектом

Создаем големов в Minecraft — начало работы над проектом

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

Создать врагов просто: достаточно использовать внутренние средства, предназначенные для спавна. А еще предлагаем добавить огонь, с чем поможет инструмент «Зажигалка». Применим его, чтобы поджечь деревья в лесу.

Для создания големов из блоков железа нам понадобится:

  1. Создать Python-файл. Давайте назовем его army_golems.

  2. Импортировать 3 модуля, предназначенных для Minecraft, создания блоков и остановки времени.

  3. Объявить переменные. В mc поместим команду для проведения операций в игре. Далее создадим pos для определения позиции одного персонажа.

  4. Создать переменные X, Y, Z. Они потребуются для обращения к координатам персонажей. К X прибавим единицу: это нужно, чтобы новые объекты не появлялись в уже созданных големах.

Объявляем переменные в скрипте

Объявляем переменные в скрипте

Теперь нам нужно применить переменную work. Она отвечает за работу цикла. Не допускается значение в виде False: в этом случае программа перестанет работать. Поэтому поместим в переменную True.

Установим остановку цикла на 0,1 секунды. Объявим переменную chat и поместим в нее команду, предназначенную для считывания сообщений из внутреннего чата. Для этого дополнительно потребуется применить цикл for.

Механизм, который нам нужно реализовать перед тем, как сделать полноценных големов в игре «Майнкрафт», прост: поместим в переменную M сообщение, отправленное в чат. Дополнительно задействуем функцию int для преобразования текста в числовые данные. Это важно: количество повторов зависит от цифр, которые мы будем указывать в чате.

Есть нюанс: наш мод для игры Minecraft на Python устроен так, что один моб-защитник — это голем из четырех блоков и тыквы. Для его создания разместим один железный слиток в нижней центральной части, а остальные — так, чтобы они напоминали тело и руки. Тыква же станет моделью головы, которую мы поставим сверху.

Для определения железных блоков используем следующую команду: block.IRON_BLOCK.id. В отношении тыквы потребуется вписать цифру 86: она указывает на соответствующий объект.

Вот какой код должен получиться:  

6e04217b1be01b5ffeb3ffca5465e6e2.png

3. Проверяем, как работает мод на Python для игры «Майнкрафт»

Давайте попробуем добавить одного голема. Если все получилось, значит программа работает корректно. Затем создадим 10 и 100 мобов. Удалось? Если да, то мы стали командирами бесконечной армии големов.

4. Завершаем программу

Итак, мы разобрались, как создать голема во вселенной «Майнкрафт» и клонировать его для получения полноценной армии. Но программа еще не завершена: нужно прописать условие перед циклом for, чтобы мобы начинали появляться и исчезать автоматически. Используем break для выхода из циклической конструкции, отвечающей за прочтение чата, и попробуем закрыть программу.

5bde5d1e8b887ddb6da8dc81fcb0258b.png

Бонус: код для мода и обучающее видео

Если не получилось разобраться, как построить голема в игре «Майнкрафт» и создать полноценную армию, не переживайте: ниже представлен код. Достаточно скопировать его, чтобы все получилось.

import mcpi.minecraft as minecraft
import mcpi.block as block
import time
 
mc = minecraft.Minecraft.create()
pos = mc.player.getTilePos()
 
x = pos.x + 1
y = pos.y
z = pos.z
 
work = True
 
while work:
	time.sleep(0.1)
	chat = mc.events.pollChatPosts()
	for c in chat:
    	m = int(c.message)
 
    	if m == 0:
        	work = False
        	break
    	
    	for i in range(m):
        	mc.setBlock(x, y, z, block.IRON_BLOCK.id)
        	mc.setBlock(x, y + 1, z, block.IRON_BLOCK.id)
        	mc.setBlock(x - 1, y + 1, z, block.IRON_BLOCK.id)
        	mc.setBlock(x + 1, y + 1, z, block.IRON_BLOCK.id)
        	mc.setBlock(x, y + 2, z, 86)

А еще рекомендуем посмотреть обучающий ролик: в нем преподаватель рассказывает и показывает, как действовать. Даже новичок сможет справиться и научиться делать собственные моды для Minecraft на примере проекта «Армия големов». Обязательно смотрите видео и программируйте свой мир в Minecraft на Python вместе с нами! Мы уверены, что у вас все получится.

Хотим подвести итог и подчеркнуть, что использование Python в игре «Майнкрафт» — отличный способ обучения детей программированию. Это возможно благодаря игровому формату: изучение основ написания кода на примере создания маленьким игроком собственных модов — стимул и мотив с точки зрения вовлечения в процесс.

Мы в школе Pixel вместе с юными учениками программируем на Python в Minecraft и успешно делаем более сложные вещи именно благодаря геймификации. Поэтому при условии, что ребенок — геймер, его увлечение можно направить в правильное русло. Предложенный урок поможет в этом. Если вы хотите углубиться в это направление, приходите на наши курсы.

В завершение хотим уточнить: удалось ли вам разобраться, как создать мод для игры «Майнкрафт» на Python? Если нет, то какие возникли трудности? А еще вопрос к родителям: как считаете, уроки программирования на Python в Minecraft подходят для детей? Или лучше погружение в написание кода с помощью другого языка, скажем, Scratch?  

© Habrahabr.ru