Есть очень важный вопрос для серьёзных программистов разбирающихся в исходном коде minecraft’а.
Возможно ли изменить исходный код игры, добавляя, к примеру:
— новые виды блоков\предметов, и затем натягивать на них новые текстурки (к примеру новые виды руды)
— менять генерацию мира под конкретные цели, увеличивая ширину или глубину мира в блоках. Т.е. изменять заложенные параметры генерации.
— изменять параметры каждого блока \ предмета.
— Дабавлять новый функционал по типу магии, отличный от существующего в лицензии сервера.
Буду искренне благодарен за расширеный ответ, а так же готов пообщаться на данную тему лично с разбирающимся человеком (даже платно).
Тонущий в песках душ
Раздел на официальном форуме.
Случайности не случайны |
Скажу так, редактирование исходников майна не приветствуется в моддинг коммьюнити. Все, что ты перечислил делается через фордж. Если нужен доступ к приватным методам\полям, копай в сторону рефлексии. Если собираешься менять в ваниле что-то серьезное, то спасет coremod форджа.
Блоки\предметы добавляются за 5 минут, больше половины гайдов моддинга на фордже начинаются именно с этого.
Генерацию умеет менять какой нибудь Alternate Terrain Generation. Как он точно это делает, не знаю.
Если надо поменять что-то типо максимальной высоты мира, то тут уже надо менять формат сейва, а следовательно появятся такие нехилые проблемы с совместимостью. Вообщем в эти дебри лучше не лезть.
Основные параметры любых блоков меняются сменой нужной переменной (например Blocks.planks.setResistance(2000.0F); сделает планки неуязвимыми к тнт). Если поле приватное, то, опять же, рефлексия. Если протектед, то расширяй класс.
Дроп меняется как-то так
Добавить новый функционал своим блокам не составляет проблем. Так же есть в большинстве гайдов.
Новый функционал ванильным блокам так просто не добавить. Придется перезаписывать ванильный блок своим.