Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление
  2. Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Лаунчер JMCLauncherFX, мультиклиент, шаблоны UPD 0.7.1

Тема в разделе "Веб-обвязки и лаунчеры", создана пользователем dimana90, 19 июл 2013.

?

Нужен ли такой лаунчер?

  1. Определенно да!

    168 голосов
    61,8%
  2. Подожду новую версию

    51 голосов
    18,8%
  3. Ненужен

    53 голосов
    19,5%
  1. Автор темы
    dimana90

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

    Баллы:
    103
    Тестировал у себя на 4гб, при забивке 2гб maxMemory() возвращает 700-800 мб, при забивке 3гб maxMemory() возвращает 200-300 мб. Впринципе результат в тестах сходился с реальными и если я выделял более например 900 мб когда maxMemory() возвращал 820 то ява крашилась на создании.
    PS если есть предложение по более грамотному расчету памяти то я буду только рад)
     
  2. Хостинг MineCraft
    <
  3. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    maxMemory() возвращает лимит для JVM, и утебя просто каким-то образом лими выставлялся в зависимости от свободной памяти. Хотя на самом деле это будет тупо 256 метров в большинстве случаев.

    Есть sunjvm-dependent способ узнать физическую память.

    Код:
    com.sun.management.OperatingSystemMXBean mxbean = (com.sun.management.OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
    int memorybytes = mxbean.getTotalPhysicalMemorySize();
    
     
    dimana90 нравится это.
  4. Kolobok96

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

    Баллы:
    88
    Skype:
    mr.mafan9
    Имя в Minecraft:
    mafan9
    Как изменить вот этот файл: 1.6.2-customcompileforge1.jar на версию 1.6.4?
     
  5. Автор темы
    dimana90

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

    Баллы:
    103
    Собрать по инструкции в шапке версию 1.6.4
     
  6. volkovsema

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

    Баллы:
    88
    На мой взгляд, фразы про java-бинарник и про параметры java-машины очень пугают рядового пользователя. Мне, например, категорически непонятно что за java-бинарник и где его брать. Может просто сделать обычный выпадающий список со значениями памяти? Было бы удобно...[DOUBLEPOST=1383486735,1383484152][/DOUBLEPOST]Кстати, на XP версия 0.7.1 не запускается, хотя предыдущая идет. В окошке командной строки пишет, что не может выделить столько ОЗУ. Нужен фикс, ибо остались еще люди, которые юзают ХРюшу....
     
  7. Автор темы
    dimana90

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

    Баллы:
    103
    спасибо, гляну.
     
  8. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    Проблемка нарисовалась:
    Ланчер при первом запуске спокойно закачивает клиент, записывает md5 для bin и assets в папочку.
    Далее если кто-то вносит изменения в minecraft.jar и запускает ланчер - клиент не проверяется и запускается. Дата md5 файлов не изменяется и остается той, что была на момент первого запуска, хотя поидее они же должны считаться каждый раз при запуске ланчера.

    Не могу понять - это глюк 0.7.1 версии(раньше вроде работало) или я где-то с настройками накосячил?
     
    volkovsema нравится это.
  9. Автор темы
    dimana90

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

    Баллы:
    103
    md5 существуют только для проверки обновления клиента т.е. при запуске игры сверяется сумма в md5 хранящаяся локально и сумма архива например bin.zip на сервере, если она расходится то происходит обновление файлов из архива сервера.

    Почему именно сверка архивного мд5? Просто ради разгрузки трафика клиент\сервера и в частности разгрузка количестварасчетов сумм файлов на сервере. Подсчитать 1-10 md5 сумм архивов на сервере или расчитать 10-n фалов без клиента. Естественно выигрывает первый метод по сверке и расчету меньшего количества сумм.
    Вообще реализовать сверку именно по файлам вполне например только папки Bin можно но я больше переживаю по поводу нагрузки т.к. у очень многих хостинг и так дохленький.
     
    The Midnight Wizard нравится это.
  10. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    тю... так может локально хранить zipы тоже, при запуске ланчера проверять их md5 с серверными и распаковывать с перезаписью хотябы? На компе много ресурсов не сожрет. А то механизм есть, задействовать для защиты клиента от модификаций бы.
     
    Likeobot нравится это.
  11. Автор темы
    dimana90

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

    Баллы:
    103
    Можно сделать отдельный лист загрузок для папки bin к примеру, и его сверять жестко по md5 в реалтайме при запуске игры если лаунчер в онлайне.
     
  12. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    так это еще и распакованную bin держать на сервере надо?
    Ну тогда можно параметр "DownloadZipList":["bin.zip","assets.zip"] совместить с этим. Типа того "DownloadList":["bin.zip","assets.zip","bin/minecraft.jar"]
     
  13. Автор темы
    dimana90

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

    Баллы:
    103
    Ну ничто не помешает держать в bin.zip все кроме minecraft.jar и еще пары уязвимых либ, Соответсвенно minecraft.jar держать распакованными рядом с bin.zip , нагрузка минимальная а желаемое выйдет.
    [/QUOTE] тоже интересный подход, постараюсь реализовать такой подход для извращенцев =)
     
  14. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    было бы здорово... а то лаунчер у меня на продакшене стоит.. и уже читеров развелось =) я чего-то думал что клиент проверяется =)
     
  15. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Кто-то видимо не понял смысла лаунчера.
    Я ведь могу спокойно подменить ссылки в конфиге и не париться.
     
  16. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    обфускация для этого есть и прочие запаковщики
     
  17. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Запаковщики, для json конфига????
    Ну да, конечно.
     
    ВремяПриключений нравится это.
  18. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    ну если отбросить кроссплатформенность. jar->exe, exe в упаковщик. До конфига будет не добраться.
     
    Сникерсни нравится это.
  19. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Ты что-нибудь про такую вещи как дамп JVM слышал?
    Никакая упаковка тебе не поможет.
     
    GJEvolution нравится это.
  20. AlexxNB

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

    Баллы:
    63
    Имя в Minecraft:
    AlexxNB
    так и чего, соберешь из дампа новый ланчер со своими ссылками, а он верификацию по md5 не пройдет.
     
  21. Автор темы
    dimana90

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

    Баллы:
    103
    Лично проверил и ввожу на наши сервера потихоньку связку на из оребфускатора+нолаг+ночитс. На тестовом стенде справляется на ура со всеми читами. Другое дело если держателю сервера лень повозиться пару часов с конфигом атичита а потом перекладывать свои проблемы с больной головы на здоровую.
    При этом можно спокойно оставлять включенный динамит и вообще не утежелять и резать возможности клиента.

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

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