Книга «Minecraft. Программируй свой мир»

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

    image

    Книга специально написана для тех, кто не только любит играть, но и хочет создавать что-то новое. Вы с легкостью освоите программирование, просто играя в Minecraft. В этом вам помогут простые пошаговые инструкции, позволяющие не только написать программу на Python, но и построить дом, фантастическое сооружение или даже 3D-копировальную машину. Вы сможете создавать собственные интерактивные игры, заниматься поиском сокровищ и даже возводить невероятные гигантские 2D- и 3D-объекты (сферы и пирамиды).

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

    Что такое Minecraft

    Minecraft — это инди-игра в жанре песочницы, где можно строить сооружения, собирать предметы, добывать минералы и сражаться с монстрами. Она выглядит как трехмерный виртуальный мир, состоящий из разных кубических блоков; каждый блок занимает свое место в трехмерной решетке мира. На рисунке в начале поста показан пример ландшафта в мире Minecraft.

    Виртуальный мир

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

    Персонаж в Minecraft — воплощение игрока, его аватар называется Стив (Steve). Игрок управляет Стивом в виртуальном мире, стремясь достичь поставленной цели. Если удастся благополучно пережить первую ночь, когда одолевают монстры, вы сможете следовать своим целям, взаимодействовать с другими игроками и строить огромные сооружения, ограничиваясь лишь собственной фантазией. Игры в жанре песочницы позволяют игроку самому решать, как вести игру, не вынуждая его двигаться маршрутами, заложенными создателями игры.

    О программировании в Minecraft

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

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

    image
    Рис. 1. Длинная улица со зданиями, построенная 20-строчной программой на Python

    Что вы узнаете

    Вы познакомитесь со множеством сторон игры Minecraft и способами влияния на ее поведение с помощью программ на языке Python. Откроете тайну адресации блоков в трехмерном мире с использованием координат. Узнаете, как определять местоположение персонажа, создавать и удалять блоки в Minecraft и как определить, какой блок выбран игроком.

    Вы научитесь настраивать и запускать собственный локальный сервер Minecraft, использовав сервер craft-bukkit, созданный сообществом, и программировать его, использовав программный интерфейс Minecraft.

    Вы узнаете, как писать программы на языке Python: от самых простых, таких как «Привет, мир Minecraft!», до сложных, взаимодействующих с огромными трехмерными объектами, которые, благодаря новым навыкам программирования на Python, легко штамповать.

    Использовав бесплатный модуль MinecraftStuff, входящий в состав библиотеки на языке Python, вы сможете создавать двух- и трехмерные объекты из блоков, рисовать линии и многоугольники, а также выводить текст.

    О структуре книги

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

    Очень важно, чтобы вы в первую очередь прочли Приключение 1, потому что там описано, как загрузить и установить все, что вам понадобится, и убедиться, что все работает должным образом. В этом приключении мы перечислим главные шаги, которые придется выполнять в следующих приключениях, и будем напоминать о них на протяжении первых приключений.

    Первые три приключения написаны для тех, кто мало знает или вообще ничего не знает о программировании. Мы объясним все термины и понятия по мере встречи с ними. В Приключениях 2, 3 и 4 рассмотрены ключевые элементы любой хорошей игры Minecraft. В их числе: определение событий, происходящих в мире Minecraft; выполнение простых вычислений и создание программ, реагирующих по-разному, например, отправляющих сообщения в чат или автоматически создающих блоки. Эти три ключевых понятия — определение, вычисление и реагирование — мы будем использовать на протяжении всей книги для создания больших и захватывающих программ Minecraft.

    Приключение 5 основано на знаниях, полученных в предыдущих приключениях. Здесь мы исследуем некоторые интересные способы связи виртуального мира Minecraft с внешним миром. В частности, рассмотрены способы сохранения больших объемов данных в файлах для копирования и воспроизведения больших сооружений с помощью трехмерного «копировального аппарата».

    Приключения 6 и 7 знакомят с модулем MinecraftStuff, позволяющим с помощью блоков создавать линии, окружности и другие двухмерные фигуры, а также некоторые фантастические трехмерные сферы и пирамиды. Они могут стать основой для строительства гигантских сооружений, создать которые вручную очень сложно. В Приключении 7 показано, как наделить движущиеся объекты индивидуальными особенностями, чтобы сделать их движения более-менее разумными. Освоив эти приемы, вы сможете писать захватывающие «игры внутри игры», которые наверняка поразят ваших друзей.

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

    Более подробно с книгой можно познакомиться на сайте издательства:

    Оглавление
    Отрывок

    Для Хаброжителей скидка 20% по купону — Minecraft
    Поделиться публикацией
    Похожие публикации
    Комментарии 50
    • +2
      Круто, жаль раньше такого не было]
      • 0
        А почему нет цифровой версии? И будет ли она?
        • –3
          электронной книги не будет
          • 0
            Очень жаль. С бумаги читать очень неудобно. Придётся ждать пиратов.
            • 0
              Ну вот же версия для киндла
              • 0
                Мне кажется это немного не то и не на том языке.
                • +2
                  Это та самая книга, Питер обложку поменял. Но язык не тот, да.
        • 0
          Подскажите, пожалуйста, на какую примерно возрастную группу рассчитано данное издание?
          • 0
            Книга адресована читателям в возрасте 11–15 лет, но некоторые приключения в финале могут показаться сложными и более взрослым людям. Кроме того, первые главы книги исследовали совсем юные читатели в возрасте от восьми лет.
            • 0
              Мне нужна такая же для 7-летнего мальчика…
          • +2
            пособие для гриферов есть?
            • +10
              Забавно. На новый год хочу такую.
              Мальчик, 32 года.
              • 0
                Для какой операционной системы написано?
                • 0
                  упоминается Raspberry Pi, может raspbian?image
                  • 0
                    У Вас электронная версия есть? Там только Малина упоминается? Винда, Мак, Линукс — нет?

                    Под Малину — это как-то заморочно для детской книги…
                    • 0
                      Малины не будет. Там винды (как самая популярная в нашей стране ОС)
                      • 0
                        А вот я посмотрел на сайте книги (http://eu.wiley.com/WileyCDA/Section/id-823690.html), там есть файлы для скачивания, в том числе для Мака и Линукса. А в книге про Мак и Линукс ничего нету?
                        • 0
                          Упс, где я Линукс увидел? Пардон. На сайте файлы для Мака, PC (видимо, это Винда) и для Малины. Из книги упоминания Мака и Малины вырезали, что ли?
                • 0
                  Внезапный оффтоп: вот это будет?
                  • +1
                    Сын сказал «хочу-хочу-хочу» )) Завтра попробуем заказать
                    • –1
                      Пытаюсь сделать заказ на сайте. Выбираю доставку в пункт выдачи — оно у меня требует заполнения адреса доставки. Пытаюсь что-нибудь написать в адресе доставки — оно стирает выбранный пункт выдачи. Что за фигня? Как заказать с доставкой в пункт выдачи?
                      • –1
                        image
                        • 0
                          Продублировать адрес пункта выдачи %)
                          • 0
                            И индекс угадать? :)
                            • 0
                              А индекс гуглится =)
                              • 0
                                В таком случае, индекс пункта выдачи должен автоматически сам подставляться, как и адрес, либо пропускаться.
                                • 0
                                  Логично. Но такую схему, к сожалению, можно встретить во многих интернет-магазинах.
                          • 0
                            В-общем, мне тоже не удалось заказать по-нормальному. Кнопка «Подтвердить заказ» не работала. В итоге перезапустила браузер, все поля остались заполненными, а пункт выдачи был выделен, но адрес сбросился. Написали, что заказ принят. Надеюсь…
                            Как-то так
                            Способ доставки: Пункты выдачи товара с оплатой при получении (CDEK)
                            Регион: г Санкт-Петербург
                            Город/Район: Санкт-Петербург
                            Адрес: КОЛОМЯЖСКИЙ ПРОСПЕКТ, д.28 корп 2, оф.29Н
                            Почтовый индекс:197341
                        • 0
                          блин, ну как же жаль что нет электронной версии!
                          • +1
                            Если электронная версия нужна для того, чтобы копировать оттуда код, то весь код есть на сайте книги.
                            • 0
                              Код на сайте это хорошо, спасибо! А электронную версию хочу чтобы прямо сегодня можно было бы вручить книгу ребёнку, как раз каникулы. А уже имея электронную можно ждать пока придёт бумажная.
                              • 0
                                Дада, я тоже как-раз из-за этого разволновался — у ребенка неделя безделья, а тут такой прям подарок судьбы:)
                          • 0
                            А есть где-нибудь нормальное описание api (если оно есть), или рассказ о том, как этот майнкрафт «вскрывали»?
                            • 0
                              Прямо в тексте этой статьи говорится о сервере craft-bukkit, я чутка погуглил и наткнулся вот на этот сайт — rubukkit.org

                              Наверное, там можно поискать про API и прочее. Но я не искал, утверждать не буду.
                              • 0
                                Bukkit не считается. Интересно было бы узнать, как прикрутить что-то своё к чистому майнкрафту. Понимаю, конечно, что можно какой-нибудь свой агент сделать, подменять классы и всё такое, но вдруг есть нормальный способ.
                                • 0
                                  Я не в теме. А что, этот craft-bukkit — это не настоящий Майнкрафт? К примеру, если у ребенка на планшете установлен настоящий Майнкрафт, то он не сможет подключиться к craft-bukkit?
                                  • 0
                                    Сможет. Bukkit — это серверная модификация, реализующая API для плагинов
                                    • –1
                                      А тот Майнкрафт, который установлен на планшете — это, получается, плагин? Кто там на ком сидит?
                                      • 0
                                        Майнкрафт на планшете — это клиент игры.
                                      • 0
                                        Не получается у меня подключиться с планшета к Bukkit. Гуглил, гуглил — по всему выходит, что не может планшетная версия так сделать, для нее нужен какой-то специальный сервер, для планшетной версии Майнкрафта.

                                        Это я чего-то недопонял? Как Майнкрафт с планшета подключить к Bukkit? Где читать?
                                        • +1
                                          Совсем никак не подключить, ибо на планшете мобильная версия Майнкрафта, она сильно отличается от десктопной по функционалу, блокам и местами вроде даже физике.
                              • +1
                                Спасибо за перевод!

                                Дополню, в 2013 году на блоге RaspberryPi было:

                                Learning Python using Codecademy and Minecraft Pi

                                Оттуда:
                                • 0
                                  А потом будет как-то так :)

                                  • 0
                                    Дети шпилят в майнкрафт на игровой приставке (X1). Будет ли им полезна эта книга? Смогут ли они увидеть на большом экране то, что напрограммировали на ноутбуке?
                                    • 0
                                      Отвечу как человек, только-что сам купивший эту книгу (и, возможно, не до конца еще всё понявший).

                                      В книге предполагается, что Майнкрафт будет установлен на компе. На этом же компе будет происходить программирование. Тот экземпляр Майнкрафта, который у Вас на приставке, в процессе не задействуется.

                                      Теоретически, если Вы разбираетесь, то можете попробовать подключить к процессу этот, приставочный экземпляр, вместо предполагаемого в книге компьютерного экземпляра. Но я не знаю, можно ли так сделать. Я пробовал такое сделать для Майнкрафта, который у меня есть на планшете — но ничего не вышло.
                                      • 0
                                        Вопрос к человеку, купившему книгу, от человека, который всего в одном шаге от покупки :)
                                        Я так понял, в книге описывается установка сервера под виндой?
                                        Это вот этот сервер: rubukkit.org?
                                        Я смогу его поставить на мак по мануалам с rubukkit.org?
                                        • +1
                                          > Я так понял, в книге описывается установка сервера под виндой?

                                          Я что-то подзабыл уже, если ли в книге инструкции под Мак и Линукс (под винду точно есть), но в файлах, раздаваемых с сайта книги, есть готовые сборки под Мак и Линукс, так что никакой проблемы вообще не возникает. Я поставил всё за 5 минут под Мак.

                                          > Это вот этот сервер: rubukkit.org?

                                          Да. Но используется, вроде бы, не последняя версия, потому что там какие-то тонкие вопросы совместимости с модулями Питона.

                                          Ставьте готовую сборку с сайта книги (в книге есть ссылки) и всё заработает сразу и без бубна. Я до этого никогда сервер майнкрафта не ставил и про bukkit вообще не слышал, просто по книге все сделал. Там вся инструкция сводится к трем строчкам.
                                          • 0
                                            Премного благодарен, спасибо
                                          • +1
                                            У меня больше проблем возникло с Питоном. Питоновский редактор по умолчанию (IDLE) это какой-то ад. Пришлось помучиться и настроить редактор Sublime Text.
                                            • 0
                                              Тьфуты, опять я про Линукс написал, что за напасть. Я выше уже писал кому-то: На сайте есть сборки под Мак, Винду и Малину. Под Линукс нету.

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

                                        Самое читаемое