Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Заинтересует ли кого-нибудь ядро 1.7.10 на основе Forge

Тема в разделе "Альтернативные серверные платформы", создана пользователем vlad20012, 22 ноя 2015.

  1. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    Даров всем. Уже полтора года я разрабатываю ядро 1.7.10 (форк форжи). Изначально этот проект был начат не "от нефиг делать", а из совершенно прагматических соображений, до сих пор ядро тянуло сервак с GregTech5 и еще сотней модов со средним онлайном 10 человек на приватном сервере без каких-либо ограничений (т.е. чанклоадеры, карьеры, что хотите и в любом количестве). Все абсолютно стабильно, без лагов, с высоким аптаймом (сервак не надо рестартить каждые 3 часа). Но сейчас проекты заглохли, а мне уже не хочется иметь дело с майном, да и поддерживать ядро тоже. Я могу потратить еще немного времени на публикацию исходников, составление документации и прочее, и, собственно, вопрос: это заинтересует вообще хоть кого-то? Если нет, я забью, и огромная работа канет в небытие.

    Собственно, что имеется:
    1) Очень производительное ядро на основе Forge 1.7.10. Полная совместимость с модами (хотя есть некоторые косяки, как и в Cauldron, в общем-то ). Поддержки Bukkit API нет, ибо заточено на сборки в стиле "накидал 100 модов, запустил, забыл". Но есть собственное скриптовое API на groovy, об этом ниже.
    2) В ядро встроены пермишаны, базовые команды, поддержка множества миров, блокировка предметов, примитивная экономика (валюты)
    3) Магазины реализованы в виде мода.
    4) Приваты территории реализованы в виде мода. Есть видео двухлетней давности (1.5.2), но сейчас мало что изменилось

    5) Логгирование действий игрокой также реализовано отдельный модом (на основе HawkEye), причем охват гораздо выше, чем в типичных баккитовских плагинах. Например, игрок поставил блокплейсер, он поставил следующий, тот поставил карьер. Все действия карьера сохранятся на игрока, который поставил первый блокплейсер, причем будет видно, что игрок эти блоки не руками сломал.
    6) Скриптовое API на языке groovy, также реализовано отдельным модом. Скрипты хранятся исходниками на сервере, возможна загрузка/выгрузка на ходу, после выгрузки скрипт никаких следов после себя не оставляет. Примеры скриптов приложил ниже (расширение файлов должно быть .groovy). Читать надо в таком порядке portals -> lift -> arrival_npc_coin_conversion -> arrival_newby_forest -> spleef -> creeper_recovery (по усложнению). Скрипты не получают никаких врапперов, как в бакките (видите EntityPlayerMP в lift?), просто groovy позволяет добавлять методы в рантайме (можно расширять API), а также перенаправлять вызовы (ремаппить MCP имена на рантаймовые SRG).
    Собственно, portals перехватывает переходы между мирами с использованием порталов из ваниллы или модов (там конкретно DeepDark из экстраутилит), и перенаправляет на конкретные варпы; lift превращает блоки железа в лифты, как в моде OpenBlocks; arrival_npc_coin_conversion - при поднятии монеты зачислаются деньги на счет; arrival_newby_forest - лес новичков: высадка ростков, дорубание деревьев (на определенной территории); spleef - этот скрипт не использовался, просто демонстрация, как в 100 строчек можно написал плагин для сплифа; creeper_recovery - постепенно восстанавливает блоки из вайтлиста после взрывов криперов.
    Ну и в таком духе. Эти скрипты пишутся за полчаса, из них можно напрямую лезть во все моды и делать очень сложную логику. Да и писать можно прямо на продакшн сервере, что-то положить из скрипта - это надо постараться.
    7) WorldEdit и DynMap есть официальные версии под Forge. У меня они чутка подшаманены: WorldEdit, к примеру микроблоки копирует (да и вообще любые блоки. Апплайд сети преспокойно копипастили). Да и вообще на многие моды выпускаю патчи. Проблемы производительности, в основном.


    Не поймите меня неправильно, это не какая-то реклама, и даже не описание ядра. Я прошу ответа на вопрос из заголовка: это вообще интересно хоть кому-нибудь? В смысле не отдельным людям, а проекты какие-то это может заинтересовать? А то я уже пару лет ни по каким форумам не хожу, без понятия что тут у вас происходит. Знаю, что тяжелые сборки на 1.7.10 лагают у всех. Ну, у меня не лагают, хз. Если всем пофигу, ну простите, досвиданья тогда. Если интересно, то уже буду думать, как это все из погреба вытаскивать да публиковать, непросто это. И естественно, тогда я напишу статью подробнее. Это - не статья о ядре, а только вопрос. Вопрос из заголовка.

    P.S. Я надеюсь, все понимают сложность публикации? Если я просто выкину исходники, это будет абсолютно бесполезно. Нужна как минимум документация на конфиги, списки изменений, известные несовместимости, вагоны инструкций, для программистов - документация на API, версионирование, гарантии обратной совместимости и прочее и прочее. Гораздо проще прийти и настроить все руками на целевой машине, объяснив по ходу дела местным админам как что работает.

    UPD: В апреле окончательно все забросил, так что люди добрые, заходите, берите что хотите https://gitlab.ultramine.ru/ultramine/ultramine_core-docs-ru/wikis/home
     

    Вложения:

    Последнее редактирование: 28 мар 2016
  2. Хостинг MineCraft
    <
  3. Teror2

    Teror2 Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    Teror2
    Я вроде давно еще видел сайт, что в описании видео, с луганским доменом. Если не секрет, с какого города?

    По теме: Очень интересно было бы на это посмотреть, но мало кто захочет разбираться с ним, темболее без bukkit'а
     
  4. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    Я из Питера. Сервер, про который вы говорите - angel.lg.ua, ныне мертв. В то время я был там админом, на предыдущих версиях ядра (1.5.2, 1.4.7) все работало.
    Я, собственно, почему все это разрабатывать-то начал. Еще в бородатые времена, на 1.2.5, этот баккит меня так задолбал, что смотреть я на него уже не мог. Тогда еще был MCPC, моды надо было портировать, это было весело (да-да, я брал и портировал, модов не хватало). Тогда я решил, что баккит-то мне в принципе и не нужен, я использую крайний минимум из него, и могу все это написать сам в разумные сроки или портировать на Forge. Уже на 1.4.7 я сделал себе ядро, которое меня устраивало. Нужные плагины я себе портировал в виде Forge модов. Ну там, WorldEdit (его под форжу тогда не было), пермишаны, HawkEye. Потом на 1.5.2 доделал систему событий для приватов и логов, так что ни один мод не проскочит. На 1.5.2 как-то чего-то не хватало, так что я портировал себе RedPower2. Да-да, взял jar, декомпилил и протащил на следующую версию. Упоротый я был чувак... Это я к чему? Говно ваш баккит. Просто привыкли к нему все, что уж поделать... Хотя, может я просто старпер, и уже не понимаю ничего...
     
    Последнее редактирование: 22 ноя 2015
  5. cubespace

    cubespace Старожил Пользователь

    Баллы:
    103
    А как его можно протестировать или получить ?
     
  6. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    Пока пишите мнение о том, что прочитали. Ну если прям совсем прет, можете мне в скайп чиркануть, подниму для вас отдельный сервак.
     
  7. kirill2011s

    kirill2011s Старожил Пользователь

    Баллы:
    103
    Выглядит довольно впечатляюще. Я считаю, есть смысл развивать
     
  8. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    Перечитайте, пожалуйста, статью внимательнее. Во-первых, я как раз говорю, что развивать дальше ничего не собираюсь. Во-вторых, там и так все достаточно развито, что уже год в продакшене (на этой версии; на предыдущих можно уже 3 года насчитать).
     
  9. Etro

    Etro Активный участник Пользователь

    Баллы:
    78
    Skype:
    vo8an99
    Немного велосипед, особенно в нынешнее время.
    Да и к тому же, баккитовских плагинов много полезных, их делают пачками в день... Здесь же всё куда сложнее.
    Плюсик, конечно, за то, что тяжёлые сборки держит, хотя тут уже от прямоты рук администраторов зависит (можно собрать и на котле нормально, да побольше ресурсов выделить).
    Сказал бы, что вещь хорошая, но без постоянного развития всё это просто загнётся, т.к мир MC не стоит на месте.

    P.S Портируй RedPower2 под 1.7.10, это полезнее xD
     
  10. InterWall

    InterWall Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    InterWall
    Невозможно.
     
  11. Etro

    Etro Активный участник Пользователь

    Баллы:
    78
    Skype:
    vo8an99
    Эхх...
     
  12. GoodCoder

    GoodCoder Активный участник Пользователь

    Баллы:
    76
    При наличиии необходимых знаний и прямых рук возможно всё.
    Порт делать начали. https://github.com/Radviger/RedPower2-Port
     
  13. InterWall

    InterWall Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    InterWall
    Так закрытый код же, не?
     
  14. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    Закрытый код никак не мешает декомпилятору. На зачем сейчас-то это? На 1.5.2 не было никаких аналогов, а сейчас вон Project Red, Blue Power.
     
  15. kirill2011s

    kirill2011s Старожил Пользователь

    Баллы:
    103
    Ну я понимаю, что вы не хотите больше это развивать. Но этим могут заняться и другие. Так что, было бы неплохо выложить в общий, если можно.
     
  16. GoodCoder

    GoodCoder Активный участник Пользователь

    Баллы:
    76
    Оба близки по аналогичности RP, но всё же имеют существенные недостатки. Первый написан на scala, что лично для меня делает невозможным создание фиксов для него, а второму пока далеко...
     
  17. maximalyan

    maximalyan Активный участник Пользователь

    Баллы:
    68
    Имя в Minecraft:
    Maximalyan
    Что по поводу ядра, действительно держит неплохой онлайн и нету не каких лагов, крайне рекомендую каждому кто любит большое количество модов. Думаю однозначно должно быть интересно крупным проектам. Если есть время и все же не погасло желание заниматься minecraft-ом то погугли Sponge(он изначально под Forge делался). Крайне рекомендую сделать совместимость с Sponge API. Он имеет интерпретатор для Bukkit. В результате получишь высокопроизводительное ядро с поддержкой sponge и bukkit(пускай и с костылями но все же). Можно будет задуматься о переходе на Sponge многие :) Т.к. Апи у них есть, а ядра у них нету.
    То что это ядро превосходит vanila сервер, нету сомнений. Но пару вопросов может другим тоже будет интересно это знать.
    Можно реальную статистику по серверу "нагрузки/онлайн"?
    Как теперь обстоят дела с обновлениями ?

    Ну и не забрасывай свое детище, оно однозначно стоит внимания.​
     
    Последнее редактирование: 24 ноя 2015
  18. GoodCoder

    GoodCoder Активный участник Пользователь

    Баллы:
    76
    Простите, не знал. Обычно я не пишу сразу в skype.
     
  19. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    1) Sponge разрабатывается под 1.8. Это ядро под 1.7.10 (на данный момент), так что не вопрос
    2) На тяжелых сборках вопрос далеко не в онлайне стоит (чем игрок отличается от чанклоадера?), так что не могу ответить. На таких сборках, что я повидал, форжа валилась на второй день игры, колдрон больше двух недель не держал. На этом ядре все преспокойно крутится месяцами.
    3) С обновлением форжи все элементарно, git merge. Патчей просто несопоставимо меньше, чем в том же колдроне, так что конфликтов мало и резолвятся они элементарно, да и форжа нынче редко обновляется. Конкретно сейчас подмержена последняя версия, 10.13.4.1614. Что по поводу портирования на 1.8 - опять же, патчей мало, специально все разрабатывалось так, чтобы максимально упростить портирование. Только вот на 1.8 модов нет, так что такой вопрос тоже не стоит.
     
    Последнее редактирование: 6 фев 2016
  20. Engardium

    Engardium Ньюби

    Баллы:
    1
    Имя в Minecraft:
    Engardium
    Уважаемый vlad20012 передал мне ядро, для моего сервера (играем с друзьями). Обратился я к нему от безысходности, т.к. все опробованные мной сервера дико лагали под нагрузкой в 80+ модов, да так, что было трудно играть. Сервер стоит с 32 гига оперативы, весь майн крутится на виртуальном диске в оперативной памяти.

    После установки сервера Влада мы забыли, что там вообще что-то могло тормозить. Просто волшебство какое-то. С версии 1,7,10 уходить не собираюсь, больно много у меня на ней модов, которые не обновлятся.
    В общем было бы очень жаль, если такая великолепная работа пропадёт зря. Автору полнейший респект.
     
  21. Автор темы
    vlad20012

    vlad20012 Активный участник Пользователь

    Баллы:
    68
    Skype:
    vlad20012
    Имя в Minecraft:
    vlad20012
    Ах да, забыл дописать: теперь выдаю ядро всем, кто напишет в сайп (vlad20012). Просьба не писать, если вам не с чем сравнивать, т.е. вы не держите серверов 1.7.10.
     
    Последнее редактирование: 2 дек 2015

Поделиться этой страницей