1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Новая жизнь Java Edition или маппинги в массы!

Тема в разделе "Оффтопик", создана пользователем Dymeth, 4 сен 2019.

  1. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    Отталкивался от старой игры Lineage 2 Где Java умерла (онлайн на таких серверах меньше 5ти %)
    после перехода на C++ один из разрабов говорил что оборудование выдерживает в 6 раз больше онлайна при том что контента в 10 раз больше т.к большую часть инфы юзер грузит сам серверу остаётся только синхронизировать инфу между рядом стоящими пользователями

    p/s
    Если через 3 года ещё буду на этом форуме подниму эту тему с личными графиками
     
    Последнее редактирование: 18 июн 2021
  2. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    Ну даже без аргументов можно представить что 1 сервер запущенный на 12 ядерном проце
    будет намного произоводительней и экономнее по памяти 12 серверам запущенным на каждом ядре связанный банжикордами и миллионами баз данных
     
  3. MurlikMurlik

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

    Баллы:
    96
    Бедрок версия пишется сразу в многопоток? То есть все процессы там параллельны, в том числе обработка сущностей, загрузка чанков и тд?
    Если да, то почему этого еще нет на java? Это ведь значительно ускорит игру.
    По этой причине я не понимаю в каком месте ты ожидаешь значительных преимуществ в производительности в бедроке.
     
  4. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    Ну я не силён в java говорю то что знаю.
    (кринж текст с которого полахают)
    На java мультипоточность сделать нельзя, можно асинхронно использовать разные ядра. т.е кусок кода обработать на одном ядре после того как это отработало перекидывает на другое ядро. таким способом уменьшается нагрузка на 1 ядро.

    C++ же может начать обработку инфы сразу первой части кода и второй части на двух ядрах одновременно и выдать результат быстрее в разы
     
  5. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    тоже самое сделают и в бедроке
     
  6. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    ну в плагинах да, но чанки и ентити каким образом в мультипоток загрузить, а это 70% всей нагрузки сервера
     
  7. MurlikMurlik

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

    Баллы:
    96
    Java многопоточный ЯП.

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

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

    Я уверен, что java версию просто портировали на c++, что означает, что там же она работает в одном потоке.
     
  8. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    Для того и портировали. bedrock работает на 6+ ядрах. Это позволяет запускать одну и туже игру на телефонах, дохлых по ггц xbox"ax, пк <= самое то что нужно для microsoft.

    Прямо сейчас в приоритетах microsoft обнова для bedrock но паблик релиз всегда за java'ой потому что основная масса юзеров, модмейкеров и всех прочих тут.

    т.е чтобы не переписывать Java версию с нуля, лучше уж пилить C++ что позволяет пихать продукт повсюду also зарабатывать на этом больше
     
    Последнее редактирование: 18 июн 2021
  9. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    это я видел ещё года 2 назад, если все эти боты пойдут копать алмазы память сервера забьётся до максимума и серв отвалится патамуша это java
     
  10. CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Я бы сказал, на плюсах еще проще память потерять.
     
  11. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    если обсуждать 2 языка в других задачах то да, но если говорить именно про minecraft где под ногами милион тон информации которой нет ни в одной другой игре в этом мире то именно C++ из за своих возможностей конроля памяти сможет увеличить производительность в несколько раз

    (я в java даун) чтобы черпать инфу для выполнения скрипта нужно хранить огромные пачки данных и очистить её только по завершению всех проверок или других задач

    Например: если не хранить в памяти инфу про каждый сломанный блок то как последующий скрипт поймёт что блок сломан?

    C++ же может хранить в буфере только то что нужно для выполнения самого скрипта.

    Например: После каждого сломанного блока память очищается и если другой одновременно работающий поток поймёт что это нужный ему блок - Хранит его в буфере и выполняет скрипт в другом потоке
     
  12. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    ну на плюсах если забыть где то в 33-рёх милионах строчек кода добавить очистку памяти то шляпнеться вся память, но разрабы в mojong же не глупые. нужно пару лет команде разрабов чтобы перелопатить каждую строчку кода

    Ашыбка нигде не вылезет ибо это не ашыбка
     
    Последнее редактирование: 19 июн 2021
  13. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    ах да, шарабанит в память не блок а все видимые чанки в огромном радиусе :good:
     
  14. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Куда-то вас не туда понесло, Остапы.
     
  15. Автор темы
    Dymeth

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

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Я, конечно, понимаю, что тема в оффтопе, но, может, всё-таки, ближе к теме?
     
  16. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Ты несёшь чушь. Причём что применительно к основам ЯП, что применительно к работе самого сервера, что жабосервера, что бедрок сервера. И да, реализация бедрока была скопирована с жабосревера в версии 1.2.5, и с тех пор конечно что-то поменялось, но не сильно, в основном все усилия ушли на то чтобы приделать поддержку паков-аддонов. Это ктстати собственно всё что моджанги как-то пилят в сервере бедрока, потому работает он даже хуже современного жабовского, ну и дополнение ещё валится с сегфолтами, чтобы жизнь мёдом не казалась. И ather engine они тоже нахрен отменили (и вот в нём должна была быть многопоточная обработка мира как раз, а текущий сервер как и жабовский варит почти всё в один поток), ибо нафига тратить на это бабло, когда в принципе сервака хватает чтобы как-то запускать паки-аддоны с магазина, и бабки текут рекой итак.
     
  17. d00hh

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

    Баллы:
    66
    Имя в Minecraft:
    d00h
    Я не говорю про сейчас, я говорю про будущее в minecraft. Сейчас бедрок по тихому пилят полностью с нуля, через 2-3 года будут заливать туда толпы людей под предлогом java sdohla ибо после пещер будет вверх а после верха будет новый ендер. сколько людей выдержит сурвач на java с такими генераторами?

    Повысят цену на Realms дожмут свои сервера до максимума и вкинут всё на bedrock
    --

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

    Уже видели обнову 1.17 и думаю заметили с каким желанием они хотят тратить своё время на то что скоро никому не будет нужно. Тупо пилят за зарплатку пока c++ не схавал minecraft


    Купили за 2.5 млрда при чистом доходе 120-150 млн в год, этого слишком мало для microsoft окупаемость в 20+ лет существует только в странах СНГ



    пээс высосано из пальца людей который работают в microsoft
     
    Последнее редактирование: 24 июн 2021
  18. alexandrage

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

    Баллы:
    173
    Все еще хуже чем я думал.
     
  19. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Ага, пилят с нуля, конечно, держи карман шире. Я прям в посте писал что Aether Engine который и должен быть новым перепилом майна был нахрен отменён. Так что жри магазин и скинчики. В итоге любой реальный бедрок сервер работает на самопальном ядре, либо перепиленном жабосервере со слоем совместимости.
    Это только верхушка айсберга. Там всё кривое в этом ядре, смена мира (клиент впадает в ступор, и надо ждать пока он вышлет тебе сигнал о том что он просрался, если послать что-то ему до этого, он оподливится и упадёт), передвижение (игрок шагает прямо в блок), инвентарь (даже с новой системой взаимодействий некоторая часть логики всё ещё на клиенте, например открытие инвентаря), телепортирование (никакой нотификации от клиента о том что он был телепортирован нет, сиди гадай на кофейной гуще, это передвижение до телепорта или после), даже партиклы (часть буквально прибита к мобам, нету моба - нету партикла, часть к блокам, и только некоторую небольшую часть можно заспавнить где угодно). Там буквально нет ни одной вещи которая была бы сделана правильно.
     
  20. alexandrage

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

    Баллы:
    173
    @d00hh
    Все еще веришь что бедрок вытестит java майн? Что он будет держать 500 онлайна? Сними розовые очки. На плюсах писать на столько круто, что никто не парится и все через одно место :D.
     
    Последнее редактирование: 25 июн 2021

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