Как написать мод для майнкрафт на python
Перейти к содержимому

Как написать мод для майнкрафт на python

  • автор:

Как создавать моды для Minecraft?

Предыстория:
Хотел писать моды для Minecraft, знал, что они пишутся на Java. Начал учить, уже установил IDE(Eclipse), но вот незадача, не могу найти нормальные ресурсы на тему «как создавать моды для майнкрафт»(искал я не по такому запросу, но вы надеюсь поняли). Ищу, ищу, а там только копии одной статьи и гайды по созданию модов для forge 1.7, мне же надо fabric 1.18.2. Уже сижу и думаю, а стоит ли вообще пытаться создавать моды тогда и вообще учить Java? Задаю вопросы на разных форумах, люди привели меня сюда. Если есть знающие люди, у которых есть свободное время, просьба быть кем–то вроде наставника в этом деле. Спасибо тем, кто откликнулся на вопрос. И да, вопрос–заголовок охватывает очень много тем, но ниже есть более мелкие вопросы.

Сам вопрос:
Какие есть ресурсы по изучению искусства создания модов для Minecraft fabric 1.18.2? Что нужно для создания модов для Minecraft fabric 1.18.2(программы, знания)? Ну, и конечно же как создавать моды для Minecraft fabric 1.18.2(Учебник видел, но он только на 1.16)?

TheAndrey
Редактор учебника

1,019 68 353
Уже сижу и думаю, а стоит ли вообще пытаться создавать моды тогда и вообще учить Java?

От себя: я бы не советовал заниматься моддингом данной игры. Архитектура игры ужасна; нет никакой документации к коду, обо всём придётся догадываться самому; с каждым выходом новой версии игры придётся постоянно чинить свой мод, разработчики не дают информации о том что куда переместили.

will0376 написал(а):
Причем тут моддинг?

Priz01

От себя: я бы не советовал заниматься моддингом данной игры. Архитектура игры ужасна; нет никакой документации к коду, обо всём придётся догадываться самому; с каждым выходом новой версии игры придётся постоянно чинить свой мод, разработчики не дают информации о том что куда переместили.

TheAndrey, дело в том, что я хочу найти себя в программировании, т.к. у меня нет хобби. Я готов идти на такие трудности. Я уже учил Python, C#, C++, но там как–то мне не хватало идей для проектов, а тут у меня есть цель — написать мод(ы). Тем более, что у меня уже есть несколько идей и следовательно мотивация обучаться и прогрессировать, а не как с прошлыми языками программирования: выучил, поискал вдохновение, не нашёл, забросил.

HomaPlus

Уже сижу и думаю, а стоит ли вообще пытаться создавать моды тогда и вообще учить Java?

1) Без знаний и опыта — никуда. Если не имел опыта в программировании ,,вообще,, — то только только на основы у тебя уйдет с пол-года (сам язык + стуктуры данных + ооп + алгоритмы + патерны проектирования + опыт работы со всем этим). Если есть все, кроме первого — то за недели полторы-2 сможешь базу подтянуть.

2) Не зацикливайся на конкретном языке. Java/Kotlin/Scala/(другой язык jvm) или запускай майн на GraalVM и бонусом используй все преимущества этого полиглота, или что-то еще, что я тут не упомянул, либо не знаю — не важно. Выбери то, что тебе больше нравится

3) Все гайды +- переборки раздела документации get started из оф. документации Fabric. (в твоем случае) Так или иначе, там везде +- понятно

4) Что весь моддинг с помощью Forge, что с помощью Fabric +- одно и то-же, только не нужно рассматривать гайды, как конкретику,
смотри на это, как на некоторую абстракцию, и уже потом подгоняй ее под свои конкретные условия. (Так например, часть гайдов с 1.7 применимы к 1.19, и наоборот, например мои знания 1.12 могут помочь другим в решении проблем с 1.7 или 1.16)

От себя: я бы не советовал заниматься моддингом данной игры.

Не советую заниматься моддингом ,,вообще,, (если тебе дорого время и нервы)

Касательно самого моддинга, не важно какой игры. 95% времени — это анализ существующего кода. Чаще всего нечитаемого. Это чистый реинженеринг либо машинного кода, либо байт-кода (Юнити, привет). В случае с майном — это за нас уже сделали создатели MCP, и слава богу, код хотя-бы +- читаемый, и вникать в логику работы проще.

Последнее редактирование: 4 Фев 2023
System.out.println(«Лучше чем Console.WriteLine»)

TheAndrey
Редактор учебника

1,019 68 353
Касательно самого моддинга, не важно какой игры.

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

will0376 написал(а):
Причем тут моддинг?

Deco20-19

333 14 109

TheAndrey, дело в том, что я хочу найти себя в программировании, т.к. у меня нет хобби. Я готов идти на такие трудности. Я уже учил Python, C#, C++, но там как–то мне не хватало идей для проектов, а тут у меня есть цель — написать мод(ы). Тем более, что у меня уже есть несколько идей и следовательно мотивация обучаться и прогрессировать, а не как с прошлыми языками программирования: выучил, поискал вдохновение, не нашёл, забросил.

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

Priz01

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

Предлагаю обратить внимание на игровые движки.

1. TheAndrey, я отлично понимаю, что мне нужно будет переписывать мод на другие версии и т.д. Но тогда зачем другие люди создают моды для Minecraft? Тот же Create, насколько я знаю, он есть на несколько версий, а не на одну. И людям не лень переписывать его. Так что же я должен ленится?

2. DeCo20-19, я не игры хочу создавать, хотя я пробовал. В Unity было так: я вообще только установил движок и потом даже не прикасался к нему. В Godot: уже удачнее, но меня отпугнула перспектива рисования текстур для игры, т.к. она у меня была не стандартная, да и писать на GDScript я толком не мог, так, пару видео по нему посмотрел. Я же хочу делать моды для игры, которая во–первых уже есть, а во–вторых моя любимая.

Без знаний и опыта — никуда. Если не имел опыта в программировании ,,вообще,, — то только только на основы у тебя уйдет с пол-года (сам язык + стуктуры данных + ооп + алгоритмы + патерны проектирования + опыт работы со всем этим). Если есть все, кроме первого — то за недели полторы-2 сможешь базу подтянуть.

запускай майн на GraalVM

1. А можно пояснить мне, тому, кто ещё не понимает, где это учить?? Структуры данных, алгоритмы, паттерны проектирования.
2. Что такое GraalVM?

Priz01

(и можете кто–нибудь пояснить, что такое Gradle? Слышал про него, но не понял, что это, даже когда поискал в интернете)

TheAndrey
Редактор учебника

1,019 68 353
и можете кто–нибудь пояснить, что такое Gradle?

Установка программ — Создание Minecraft модов

Установка необходимых программ, которые необходимы для разработки Minecraft модов.
mcmodding.ru
will0376 написал(а):
Причем тут моддинг?

HomaPlus

Что такое GraalVM?

Гугл в помощь на все вопросы. Есть куча нормальных статей. Ладно. Держи по граалю, graalvm.org. Бонусом, ТЫК и ТЫК.

что такое Gradle?

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

(П.с, да, без видео, только суровая официальная документация, ну или на крайняк статьи с выборками по ней)

System.out.println(«Лучше чем Console.WriteLine»)

Priz01

Спасибо всем.
Гугл в помощь на все вопросы.
И ещё, может вы хоть скажете, где вы учили всё необходимое? Или вы гуглили всё?

Liahim

4,034 63 639
Всё сами, всё сами.
Форум, вопросы, ответы плюс куча проб и ошибок )

Liahim

4,034 63 639
Не советую заниматься моддингом ,,вообще,, (если тебе дорого время и нервы)
Расскажи, плиз, а чем же заниматься?
Свою игру с нуля создавать?
Это проще?

HomaPlus

Расскажи, плиз, а чем же заниматься?

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

System.out.println(«Лучше чем Console.WriteLine»)

NoMatterCode

И ещё, может вы хоть скажете, где вы учили всё необходимое? Или вы гуглили всё?

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

На этом сайте есть хороший учебник, пусть и не завершённый от оглавления до послесловия, но всё же вводную он даёт хорошую. Он заточен именно под моды на майнкрафт. Сам язык лично я учу по Герберту Шилдту, но это единственная книга которую я читаю и соответственно это всё что я могу посоветовать. Вроде как всё достаточно понятно излагается.
Первое с чем я столкнулся — нехватка идей. Написать мод — не есть идея, это всё же искусство.
Лично я просто гуляю по документации и думаю что бы такого намудрить и в чём можно покопаться, какой метод можно интересно обыграть и тому подобное.
Как уже писали выше дело это совсем неблагодарное, но как хобби вполне сойдёт. Какая разница сколько ты тратишь времени на то что тебе нравится, верно? Но конечно подход моджангов это то ещё свинство касательно обфускации, обновлений да и кода в целом. Разбираться во всём этом очень и очень долго до получения первых плодов. Желаю найти себя

Как написать мод для майнкрафта на пайтоне?

Как написать мод для лазаруса
Реально-ли это? Самый востребованный мод, на мой взгляд, позволяющий вставлять ссылки на схемы в.

Как установить Мод для phpBB 3.0.7
Мод Благодарности за сообщение 1.2.7

Как сделать мод для GTA V?
Не нашел подходящего раздела. Поэтому сразу прошу прощения, если написал не туда. Гугл перерыл.

Регистрация: 17.10.2019
Сообщений: 95

Эксперт Python

5415 / 3839 / 1214
Регистрация: 28.10.2013
Сообщений: 9,554
Записей в блоге: 1

Лучший ответ

Сообщение было отмечено BlackLightHack как решение

Решение

ЦитатаСообщение от BlackLightHack Посмотреть сообщение

ибо майнкрафт писан на джаве

Вообще-то его переписали (базовую версию) на С++. А Python (как и любой другой скриптовый язык) в играх используется для. скриптов.
Скрипт переводится как сценарий. На сценарных языках пишется игровая логика, которая к движку игры никакого отношения не имеет. Она просто использует экспортированные из движка функции. Таким образом как писать моды для майнкрафт нужно спрашивать на форумах игры, а не здесь. Python это всего лишь инструмент.

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Ищу процессор для майнкрафта на am3+ сокете
Добрый день, после покупки компьютера обнаружил что на нём лагает майнкрафт. Покопавшись в.

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

Как установить мод Call in для Half-Life 2?
Не могу завести мод Call in. Вставляю мод во все папки и стим включаю. Результата ноль!! и какая.

Как обойти Anti-Xray на серверах майнкрафта?
Здравствуйте, я хочу подрубить xray ну чтобы быстрее добывать руды, но когда я его подрубаю то у.

написать программу в виде суммы произведение конечного ряда чисел в пайтоне
Написать программу вычисления суммы (произведения) конечного ряда. Предусмотреть пропуск слагаемых.

IPB Где найти и как настроить мод репутации для IPB 3.3.2?
Подскажите пожалуйста где найти и как натсроить мод репутации для IPB 3.3.2 Добавлено через 20.

Для чего нужна lambda в пайтоне?
В видосах на Ютубе смотрел урок про функции (def, lambda, return) в питоне, так вот я всё понял.

Программирование на Python в Minecraft — бесплатные видеоуроки для детей и подростков для детей от 9 лет

За 10 уроков вы изучите программирование в Minecraft, создадите новых героев, построите целые улицы и выполните много интересных заданий.

Обложка поста Программирование на Python в Minecraft — бесплатные видеоуроки для детей и подростков для детей от 9 лет

Вадим Бордик
Основатель школы программирования для детей «Пиксель»

Игра Minecraft (Майнкрафт) пользуется огромной популярностью во всём мире, особенно среди детей и подростков. Почти мгновенно после выхода игра «обросла» фанатской субкультурой, а армия поклонников продолжает расти с каждым днём. В связи с этим разработчики сделали игровой процесс ещё полезнее: теперь можно подключать к игре язык Python и учиться программировать, не покидая любимых героев.

Благодаря программированию модов для Minecraft дети могут познакомиться с профессией Python-разработчика, не отрываясь от игрового процесса.

Мы подготовили бесплатные видеоуроки по изучению Python. Всего за 10 уроков вы изучите программирование в Minecraft, создадите новых героев, построите целые улицы и выполните огромное количество интересных заданий. Данный курс программирования для детей абсолютно бесплатен.

Подготовка к обучению

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

Minecraft и Python на Windows:

Minecraft и Python на MacOS:

Видеоурок №1. Знакомство с языком программирования Python

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

Видеоурок №2. Координаты

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

Видеоурок №3. Переменные и условия. Создаём свою первую игру

Третье занятие посвящено изучению переменной и условия. После прохождения темы мы напишем код для подсчёта и выведения количества набранных очков.

Видеоурок №4. Блоки: как их создавать c помощью Python?

Блоки — важнейший элементы игры Майнкрафт, из них создаются все постройки в игре. На четвёртом уроке мы научимся работать с блоками. Для этого нам необходимо импортировать несколько дополнительных библиотек и написать скрипты. Также во время урока мы разберём понятие цикла. Затем закрепим знания: с помощью цикла возведём несколько зданий.

Видеоурок №5. Строительство улиц

Одного дома нам будет недостаточно, поэтому мы переходим к строительству улиц. Во время урока мы изучим функцию и с её помощью построим 12 домов.

Видеоурок №6. Создание плоских 2D-фигур

Шестой урок посвящён созданию плоских фигур. Мы установим дополнительные библиотеки, которые и помогут нам их создать.

Видеоурок №7. Создание объёмных 3D-фигур

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

Видеоурок №8. Создание многоугольников

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

Видеоурок №9. Искусственный интеллект в Майнкрафте

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

Видеоурок №10. Случайные числа в ИИ

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

На этом наш видеокурс подходит к концу. Как мы видим, программирование для детей может быть интересным и увлекательным, особенно если ребёнок не покидает любимую игру.

Следите за новыми постами по любимым темам

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

Строим НЛО в Minecraft при помощи Python

Строим НЛО в Minecraft

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

В этой статье мы покажем, как создать НЛО в Minecraft с использованием Python и специальной библиотеки для взаимодействия с игрой — mcpi.

Для подключения Python к Minecraft используем свободный режим Python на нашем сайте progkids.com, но можно использовать и такие сторонние библиотеки, как mcpi.

Давайте теперь напишем код для проекта «НЛО».

После импортирования необходимых библиотек объявляем переменные, содержащие id блоков, и очищаем участок (заполняем пол адским камнем, всё, что выше пола – воздухом).

b1 = 169 b2 = 95 b3 = 165 color = 9 world.setCuboid(-63, 0, -63, 63, 50, 63, 0) world.setCuboid(-63, -1, -63, 63, -1, 63, 87)

Далее объявляем переменные для радиуса, высоты и переменную-счётчик.

r = 25 y = 60 i = 0

Подготовка окончена! Можно приступать к строительству.

Начнём с самой тарелки:

for i in range(8): world.buildSphere(0, y, 0, r, b1) world.setCuboid(-r, y + 1 + i, -r, r, y + r, r, 0) world.setCuboid(-r, y — 1 — i, -r, r, y — r — i, r, 0) r -=1

С каждой итерацией цикла радиус сфер становится меньше на единицу.

Результат работы цикла:

Строительство НЛО в Minecraft

На следующем этапе необходимо построить верхнюю часть и пол для НЛО. Для этого можем воспользоваться методами buildSphere и setCuboid.

world.buildSphere(0, y, 0, r, b2, color) world.setCuboid(-r, y — 8, -r, r, y — r, r, 0) world.setCuboid(-13, y — 7, -13, 13, y — 7, 13, b1)

Строительство НЛО в Minecraft

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

Это можно реализовать с помощью цикла со сферами – каждое повторение цикла их радиус увеличивается, а высота уменьшается. Пример кода:

y1 = y — 9 r = 1 while y1 > 0: world.buildSphere(0, y1, 0, r, b3) y1 -= 4 r += 1

На этом наш проект готов! Его окончательный вид:

Строительство НЛО в Minecraft

Так выглядит полный код программы:

import mc from mc import * world.setTime(18000) b1 = 169 b2 = 95 b3 = 165 color = 9 world.setCuboid(-63, 0, -63, 63, 50, 63, 0) world.setCuboid(-63, -1, -63, 63, -1, 63, 87) r = 25 y = 60 i = 0 for i in range(8): world.buildSphere(0, y, 0, r, b1) world.setCuboid(-r, y + 1 + i, -r, r, y + r, r, 0) world.setCuboid(-r, y — 1 — i, -r, r, y — r — i, r, 0) r -=1 world.buildSphere(0, y, 0, r, b2, color) world.setCuboid(-r, y — 8, -r, r, y — r, r, 0) world.setCuboid(-13, y — 7, -13, 13, y — 7, 13, b1) y1 = y — 9 r = 1 while y1 > 0: world.buildSphere(0, y1, 0, r, b3) y1 -= 4 r += 1

Ссылка на готовый проект НЛО, зарегистрируйтесь на progkids.com, чтобы ссылка открывалась.

Программирование в Майнкрафте может быть очень интересным и увлекательным занятием. Используя Python, вы можете создавать свои собственные игры и моды, которые будут уникальными и заинтересуют игроков по всему миру. Если вы хотите начать программировать в Minecraft, записывайтесь на пробное занятие в нашу школу progkids.com!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *