Добрый день, уважаемые читатели!
У нас выходит второй тираж замечательной книги об игровом мире Minecraft. Мы уже публиковали о ней отдельный пост.
С удовольствием напоминаем, что этой игре все возрасты покорны, более того — она будет интересна даже дошколятам, если правильно подать смысл этой замечательной игры и пробудить в детях творческую жилку. Под катом — рассказ многодетной мамы о том, как это делается.
Наконец, если вас заинтересует перевод ознакомительной публикации Уолтера Хиггса о ScriptCraft, на которую ссылается автор в самом конце статьи — пишите, обсудим :)
Если у вас, как и у меня, есть маленькие дети в возрасте 5-10 лет, то вы, вероятно, не понаслышке знаете о всеобщем увлечении Minecraft; возможно, у вас даже есть книги и игрушки на эту тему. Я стала размышлять, может ли эта игра в кубики чему-то научить ваших детей и решила рассказать, как увлечь детей программированием за игрой в Minecraft. Мы уже пытались учиться программировать на Scratch, но Minecraft нравится детям даже больше, чем этот язык. Вот я и решила отталкиваться от Minecraft.
С чего начать
Установка
Как раз этим делом я решила не заниматься с детьми. Они маленькие, и я хотела сделать так, чтобы мы могли сосредоточиться на «самом интересном», чтобы дети сразу получали «отдачу» от программирования, а не занимались скучной настройкой прежде, чем смогут приступить к программированию. Хорошо, что я поступила именно так: при установке обнаружились некоторые закавыки, которые вполне могли бы испортить детям настроение. Кстати, мы работали на Mac.
Предварительные условия
Вот с чем работала я:
Начали
Необходимо усвоить: если от вас требуется «запустить сервер», то имеется в виду следующее:
Если все сработает верно, то вы должны увидеть следующее:
Обратите внимание: если вы правильно установили плагин ScriptCraft, то также должны увидеть «Found 1 plugin».
Статус завершается приглашением командной строки для рабочего сервера. Чтобы аккуратно выйти с сервера, когда все сделаете, вернитесь в терминал и просто введите «stop». Если этого не сделать и закрыть окно терминала, либо нажать Ctrl-Z, то соответствующий процесс Java так и будет висеть на том порте, где был запущен CanaryMod – по умолчанию 25565. В таком случае у вас возникнут проблемы, как только вы попытаетесь вновь запустить сервер.
Навигация в Minecraft
Если вы не играете в Minecraft регулярно (не то, что я), то убедитесь, что умеете пользоваться навигацией в игре.
Единственный вопрос, ответ на который я не нашла в онлайновых руководствах и при простом поиске в Google – как открыть дверь, не разрушая ее. В итоге я приспособилась прокладывать путь при помощи Ctrl + click. Тогда можно не сносить красивые дверцы домиков и других строений :). Странно, что дети предпочитали везде вламываться, не щадя дверей. Хмммм…
Итак, пойдем
Впервые запустив клиент Minecraft, настройте многопользовательский режим (multiplayer). В руководствах пишут, что для соединения используется просто «localhost», но на самом деле нужно задать
localhost:, где port – либо порт, задаваемый по умолчанию для CanaryMod, то есть, 25565, либо другой порт, который вы могли определить в конфигурационном файле CanaryMod.
Затем попробуйте ввести какой-нибудь текст в командную строку. Обратите внимание: командная строка есть как в самом клиенте Minecraft, так и в том окне терминала, из которого вы запускали сервер CanaryMod. Иногда кажется, что клиент реагирует не на все нажатия клавиш. Мой старший любит в таком случае говорить «что-то глючит». В таком случае нужно перезапустить клиент Minecraft, а иногда даже сервер CanaryMod.
Если вы не хотите отвлекаться на всяких монстров и тварей, пытающихся сожрать вашего персонажа, сразу установите такой игровой режим, чтобы можно было творить. Это можно сделать как в конфигурационном файле config file, так и в командной строке Minecraft, где нужно ввести:
Как увлечь детей
Сначала давайте убедимся, что ScriptCraft работает:
Начинаем с упражнения, в котором учимся программно создавать блоки, для этого применяется вызов длиной в одну строку:
Получился дубовый ящик с id 5, у которого задана ширина, глубина и высота. Он возник в воздухе, поскольку мы начали с той точки, в которой был крестик-прицел.
Дети сразу заинтересовались, а можем ли мы создать тут животных, например, коров или лошадок:
Эти вызовы отличаются от тех, что мы делали при создании блоков: перед ними ставится /js, а не /jsp. Помните команду «op»? Она позволяет делать при помощи /js мощные вызовы, которые не следует предоставлять в распоряжение всем игрокам.
Если в игровом мире начинает идти дождь или становится темно, можете показать ребенку следующие быстрые команды, позволяющие вернуть погожий солнечный день:
/time set 1000
/weather clear
Демо-версия для родителей
Мне не без труда удалось уговорить детей оторваться от игры в Minecraft и выполнить несколько простых упражнений – чтобы увлечь их программированием. Для этого вам потребуется внимательно посмотреть, чем дети занимаются в Minecraft, и подсказать им, какие вещи можно сделать гораздо быстрее, написав всего пару строк кода. Вот несколько рекомендаций на этот счет:
Покажите, как создать цилиндр из тортов (cake blocks) при помощи функции цилиндра, принимающей id торта, радиус и высоту. Моя старшая дочь была в полном восторге от того, что в этом квадратном мире можно сделать цилиндры, причем из торта (id 92). Она переключилась в режим выживания командой
Вот что получилось (вид сверху):
Создаем домик, потом набор домиков, форт и замок. Не забывайте двигать крестик, чтобы все эти объекты не выстраивались друг на друге.
Затем покажите, как замостить одну из этих структур слизнями. Дети подсказали, что если мы так сделаем, то наш персонаж сможет весело летать в облаках и приземляться в виртуальном домике-батуте. Блоки-слизни упоминаются в gamepedia, их id 165.
Можно даже добавить в одном из строений танцпол:
Освободите большое пространство, чтобы на нем было проще размещать разные структуры. На первый взгляд было неочевидно, как это делается, даже покопавшись на различных сайтах я не нашла четкого ответа – разве что такая возможность была в популярном моде WorldEdit. Я не решилась устанавливать малознакомый мод, но в итоге нашла кое-какой код в папке с плагином ScriptCrafts, где используются воздушные блоки. Точно, воздушные блоки! Итак, поехали:
Так можно очистить большое пространство, но на это потребуется до минуты времени, поэтому запаситесь терпением. Дети были в восхищении. Но если в этой области у вас имеются высокие деревья или горы, то их верхушки могут остаться «плавать» в воздухе. В таком случае просто еще раз примените код или поднимите эту область и переставьте крестик. Наконец, мы могли просто настроить на сервере плоский мир и для начала поэкспериментировать с ним, но тогда играть было бы менее интересно. Учтите: если задавать для этих размерностей величины 50 и более, то можно запросто обвалить сервер.
Итак, мне удалось основательно увлечь детей, они стали спрашивать, а что еще тут можно сделать. Если вы тоже заинтересовались – самое время познакомиться с другими вызовами и даже попробовать создать собственный мод.
Домашняя страница ScriptCraft
Ваш первый мод Minecraft
Справка по ScriptCraft API
Ознакомительный пост по ScriptCraft
У нас выходит второй тираж замечательной книги об игровом мире Minecraft. Мы уже публиковали о ней отдельный пост.
С удовольствием напоминаем, что этой игре все возрасты покорны, более того — она будет интересна даже дошколятам, если правильно подать смысл этой замечательной игры и пробудить в детях творческую жилку. Под катом — рассказ многодетной мамы о том, как это делается.
Наконец, если вас заинтересует перевод ознакомительной публикации Уолтера Хиггса о ScriptCraft, на которую ссылается автор в самом конце статьи — пишите, обсудим :)
Если у вас, как и у меня, есть маленькие дети в возрасте 5-10 лет, то вы, вероятно, не понаслышке знаете о всеобщем увлечении Minecraft; возможно, у вас даже есть книги и игрушки на эту тему. Я стала размышлять, может ли эта игра в кубики чему-то научить ваших детей и решила рассказать, как увлечь детей программированием за игрой в Minecraft. Мы уже пытались учиться программировать на Scratch, но Minecraft нравится детям даже больше, чем этот язык. Вот я и решила отталкиваться от Minecraft.
С чего начать
Установка
Как раз этим делом я решила не заниматься с детьми. Они маленькие, и я хотела сделать так, чтобы мы могли сосредоточиться на «самом интересном», чтобы дети сразу получали «отдачу» от программирования, а не занимались скучной настройкой прежде, чем смогут приступить к программированию. Хорошо, что я поступила именно так: при установке обнаружились некоторые закавыки, которые вполне могли бы испортить детям настроение. Кстати, мы работали на Mac.
Предварительные условия
- При установке воспользуйтесь обычным (normal) аккаунтом. Сначала я пыталась работать с аккаунтом ребенка, активировав на нем родительский контроль. К сожалению, в таком случае не только ограничиваются возможности самого Minecraft, но и сужается набор вызовов для командной строки, которые могут понадобиться. Этот аккаунт не требует прав администратора.
- Установите полноценную клиентскую версию Minecraft. Поскольку дети часто играют в Minecraft Pocket Edition (PE) на айпадах, мы не сразу поняли, что эта версия не позволяет подключиться к модифицированному серверу Minecraft, что мы делали при помощи CanaryMod. Клиентскую версию можно приобрести на сайте Minecraft. Обязательно подберите надежный пароль.
- Установите Java, если еще не сделали этого. Без Java вы не сможете работать с модифицированным сервером.
- Наконец, ссылки: убедитесь, что версии, с которыми вы работаете, совместимы друг с другом, иначе плагин ScriptCraft загрузится неправильно.
Вот с чем работала я:
Начали
Необходимо усвоить: если от вас требуется «запустить сервер», то имеется в виду следующее:
- Откройте терминал
- Перейдите в каталог
- Введите
java -jar CanaryMod-1.2.0_0.jar
Если все сработает верно, то вы должны увидеть следующее:
Обратите внимание: если вы правильно установили плагин ScriptCraft, то также должны увидеть «Found 1 plugin».
Статус завершается приглашением командной строки для рабочего сервера. Чтобы аккуратно выйти с сервера, когда все сделаете, вернитесь в терминал и просто введите «stop». Если этого не сделать и закрыть окно терминала, либо нажать Ctrl-Z, то соответствующий процесс Java так и будет висеть на том порте, где был запущен CanaryMod – по умолчанию 25565. В таком случае у вас возникнут проблемы, как только вы попытаетесь вновь запустить сервер.
Навигация в Minecraft
Если вы не играете в Minecraft регулярно (не то, что я), то убедитесь, что умеете пользоваться навигацией в игре.
Единственный вопрос, ответ на который я не нашла в онлайновых руководствах и при простом поиске в Google – как открыть дверь, не разрушая ее. В итоге я приспособилась прокладывать путь при помощи Ctrl + click. Тогда можно не сносить красивые дверцы домиков и других строений :). Странно, что дети предпочитали везде вламываться, не щадя дверей. Хмммм…
Итак, пойдем
Впервые запустив клиент Minecraft, настройте многопользовательский режим (multiplayer). В руководствах пишут, что для соединения используется просто «localhost», но на самом деле нужно задать
localhost:, где port – либо порт, задаваемый по умолчанию для CanaryMod, то есть, 25565, либо другой порт, который вы могли определить в конфигурационном файле CanaryMod.
Затем попробуйте ввести какой-нибудь текст в командную строку. Обратите внимание: командная строка есть как в самом клиенте Minecraft, так и в том окне терминала, из которого вы запускали сервер CanaryMod. Иногда кажется, что клиент реагирует не на все нажатия клавиш. Мой старший любит в таком случае говорить «что-то глючит». В таком случае нужно перезапустить клиент Minecraft, а иногда даже сервер CanaryMod.
Если вы не хотите отвлекаться на всяких монстров и тварей, пытающихся сожрать вашего персонажа, сразу установите такой игровой режим, чтобы можно было творить. Это можно сделать как в конфигурационном файле config file, так и в командной строке Minecraft, где нужно ввести:
/gamemode c
. В таком случае вы с детьми сможете вплотную заняться программированием и игрой, а не спасением вашего персонажа. Как увлечь детей
Сначала давайте убедимся, что ScriptCraft работает:
/js 1 + 1
Начинаем с упражнения, в котором учимся программно создавать блоки, для этого применяется вызов длиной в одну строку:
/js box(5,3,2,4)
Получился дубовый ящик с id 5, у которого задана ширина, глубина и высота. Он возник в воздухе, поскольку мы начали с той точки, в которой был крестик-прицел.
Дети сразу заинтересовались, а можем ли мы создать тут животных, например, коров или лошадок:
/jsp spawn cow
/jsp spawn horse
Эти вызовы отличаются от тех, что мы делали при создании блоков: перед ними ставится /js, а не /jsp. Помните команду «op»? Она позволяет делать при помощи /js мощные вызовы, которые не следует предоставлять в распоряжение всем игрокам.
Если в игровом мире начинает идти дождь или становится темно, можете показать ребенку следующие быстрые команды, позволяющие вернуть погожий солнечный день:
/time set 1000
/weather clear
Демо-версия для родителей
Мне не без труда удалось уговорить детей оторваться от игры в Minecraft и выполнить несколько простых упражнений – чтобы увлечь их программированием. Для этого вам потребуется внимательно посмотреть, чем дети занимаются в Minecraft, и подсказать им, какие вещи можно сделать гораздо быстрее, написав всего пару строк кода. Вот несколько рекомендаций на этот счет:
Покажите, как создать цилиндр из тортов (cake blocks) при помощи функции цилиндра, принимающей id торта, радиус и высоту. Моя старшая дочь была в полном восторге от того, что в этом квадратном мире можно сделать цилиндры, причем из торта (id 92). Она переключилась в режим выживания командой
game mode s
и с аппетитом «поедала» тортики, в Minecraft от этого улучшается здоровье. Ах, если бы в жизни тоже так было :)/js cylinder(92, 5, 20)
Вот что получилось (вид сверху):
Создаем домик, потом набор домиков, форт и замок. Не забывайте двигать крестик, чтобы все эти объекты не выстраивались друг на друге.
/js cottage()
/js cottage_road()
/js fort()
/js castle()
Затем покажите, как замостить одну из этих структур слизнями. Дети подсказали, что если мы так сделаем, то наш персонаж сможет весело летать в облаках и приземляться в виртуальном домике-батуте. Блоки-слизни упоминаются в gamepedia, их id 165.
Можно даже добавить в одном из строений танцпол:
/js dancefloor()
Освободите большое пространство, чтобы на нем было проще размещать разные структуры. На первый взгляд было неочевидно, как это делается, даже покопавшись на различных сайтах я не нашла четкого ответа – разве что такая возможность была в популярном моде WorldEdit. Я не решилась устанавливать малознакомый мод, но в итоге нашла кое-какой код в папке с плагином ScriptCrafts, где используются воздушные блоки. Точно, воздушные блоки! Итак, поехали:
/js box(blocks.air, 50, 50, 50)
Так можно очистить большое пространство, но на это потребуется до минуты времени, поэтому запаситесь терпением. Дети были в восхищении. Но если в этой области у вас имеются высокие деревья или горы, то их верхушки могут остаться «плавать» в воздухе. В таком случае просто еще раз примените код или поднимите эту область и переставьте крестик. Наконец, мы могли просто настроить на сервере плоский мир и для начала поэкспериментировать с ним, но тогда играть было бы менее интересно. Учтите: если задавать для этих размерностей величины 50 и более, то можно запросто обвалить сервер.
Итак, мне удалось основательно увлечь детей, они стали спрашивать, а что еще тут можно сделать. Если вы тоже заинтересовались – самое время познакомиться с другими вызовами и даже попробовать создать собственный мод.
Домашняя страница ScriptCraft
Ваш первый мод Minecraft
Справка по ScriptCraft API
Ознакомительный пост по ScriptCraft