Перейти к публикации

UBERROT

Активный игрок
  • Публикаций

    2 054
  • Зарегистрирован

  • Посещение

Все публикации пользователя UBERROT

  1. Все чел не кринжуй раз даже разобраться в правилах не можешь
  2. Клоун не понимает, что любой режим 1 на 1 считается дуэлью, даже пве режим, на еггварсе никого не банят за скорость и отдачу, с чего ты своим мозгом вдруг решил что тут начнут?
  3. UBERROT

    [Эксперимент] Считаем до 1.000.000

    6748
  4. Ну всё чел пиши свой настоящий ник на вайме

    1. Показать предыдущие комментарии  ещё 3
    2. UBERROT

      UBERROT

      Я те этот ник тоже в вар кину, но основу свою дай

    3. confysed

      confysed

      ты долбаеб какой вар кинешь идиот нахxD)

    4. VovanBigBanan

      VovanBigBanan

      Вар типа война 

  5. FishOfGill - Карта стандартная, брони нет, в первые секунды игры вам даётся выбор из рыб, вы можете взять две, основная будет работать без ограничений, на второй рыбе будет наложено ограничение - кд 10 секунд за 12 кпс. Акула - острота 1. Белая акула - острота 2. Карась - Отдача 2. Карп - Шанс крит.урона 8%. Лосось - +50% скорость бега. Окунь - Снижение отдачи от получаемого урона -50% пока находится в руке. Сом - Заговор огня 2. Щука - Отравление 3. Лещ - Слабость 1. Форель - 14-15% шанс Голема(подбрасывания). Speedsters - Карта стандартная, брони нет, скорость движения 1000%, алмазный меч, регенерация не работает. FlyForFree - Карта стандартная, алмазная броня, алмазный меч, крюк из EggWars(на крюк введено ограничение, он не может работать в течении 2х секунд после удара). Регенерация не работает, урон от падений снижен на 60%. Portals - Карта стандартная, железная броня, железный меч острота 3, Лук(При выстреле телепортирует, на расстояние не дальше 12 блоков, не работает сквозь блоки, кд 7 секунд). Murder - Карта стандартная. Тот кто первым ударит, тот и победил. Особый режим, на нём будет вестись статистика ReachRadar(вообще пора бы запустить статистику ричрадара и сам ричрадар по всем дуэлям). ShadowFight - Стандартная карта, железная броня, железный меч, особая механика: Каждые 3 секунды игроки становятся невидимые на 4 секунды(естественно 3+4=7, а не 3-4), частиц и эффектов никаких нет, видно лишь тень в момент невидимости.
  6. UBERROT

    [Эксперимент] Считаем до 1.000.000

    Конец, вьі досчитали до 1.000.000
  7. crinje
  8. Хочу больше возможностей редактирования темы на форуме без захода в код елемента, ведь я профан в html. Добавить функцию, кнопку, при нажатии на которую будет видно определённый текст, спойлер для этого не подходит, например эта функция нужна если я захочу сделать кнопку выбора языка в теме, при нажатии на кнопку "Английский язык" которую я сам так именую, будет выведено текст который я сам сделал в виде перевода. Добавить функцию, я смогу создать в теме небольшое поле размером на выбор, в котором другой пользователь сможет написать свой ник либо ещё что-то. Разрешить обводку текста цветной линией, сейчас так делать можно, но за это ты получаешь пред. а далее бан по причине "Выдача за администрацию". Добавить функцию закрытия комментариев, а лучше с выбором для определённых лиц.
  9. UBERROT

    sss

    Тримай свою нікому непотрібну думку при собі))
  10. UBERROT

    sss

    Пусть выключит все фоновые процессы в винде которые он не использует во время игры
  11. UBERROT

    Нанесение вреда проекту

    Зачем? Ещё вчера же пофиксили Да? Мои идеи уже пилятся если чё
  12. UBERROT

    Нанесение вреда проекту

    Я не писав це російською розкладкою, просто на телефоні можно зажимом будь-яку букву викликати)
  13. UBERROT

    Нанесение вреда проекту

    Там снежки, а не фейрверки, уже пофиксили.
  14. UBERROT

    /del

    /del
  15. UBERROT

    Нанесение вреда проекту

    В подпись посмотри, тьі етим гордишься? я такое могу придумать по 50 штук за день
  16. UBERROT

    Різномовний VimeWorld

    up
  17. UBERROT

    Нанесение вреда проекту

    Как же ты обижен))
  18. UBERROT

    Нанесение вреда проекту

    Зачем мне играть в симуляторы жизни? Я живу в реальном мире, можешь завидовать конечное, что-то кроме игр?) Когда я сказал работа я и имел ввиду что за компом можно не только смотреть как светящицийся кулер крутится как спиннер на компе в который ты потратишь столько денег, за сколько можно сьездить отдохнуть в Европу, а ну да, ты же не можешь куда то законно выехать. Не спорь со мной шкила я если включу российскую раскладку то забулю тебя начиная от использования фотошопа для покадрового монтажа видео, до разноязычной философии в виде диалектики.
  19. UBERROT

    Нанесение вреда проекту

    К чему тьі ето чел, мне почти полностью хватает моего процессора для моих нужд, тем более взял б/у пк по дешовке чтобьі бьіло удобно, какая мне разница кто там будет тратиться 200-300к на комп когда он нужен максимум для работьі и развлечений взрослому человеку без комплексов.
  20. UBERROT

    Нанесение вреда проекту

    Шо тьі несешь чел
  21. UBERROT

    Нанесение вреда проекту

    Шо тьі вьісрал счас чел, если брать економические данньіе с 2014 года, економика вьіросла на 17%, когда в твоей падает на 4% каждьій год с 2014, уже где-то -21%+-, инфа по открьітьім источникам. Очевидно что у меня зарплатьі и ценьі будут вьіше при таких показателях.
  22. UBERROT

    Нанесение вреда проекту

    У меня в лобби без этих лагов 200-800фпс.
  23. Я не користуюсь узкой розкладкою, але в тебе вже сльози, сходи валер'яночки випий чи шо
  24. Нн ты видел чё ты написал в разработках? Такое даже дети под в слезах не пишут. Ты видимо "гений", ведь думаешь что 2+2 можна написать как-то подругому.
  25. Техническое неполное руководство по аргументам для Java Virtual Machine Вступление Гайд сделан от интереса этой сферы, дабы пользователи VimeWorld об этом больше узнали. Информация собрана с открытых англоязычных и русскоязычных источников, и не претендует на звание первоисточника. В Руководстве описывается работа аргументов, как их можно применить. Если я в чём-то ошибся поправьте меня в комментариях. Содержание Основные понятия Работа с памятью Сборщик мусора Аргументы Аргументы для разработчиков Основные понятия Что такое JVM? - Java Virtual Machine (сокращенно Java VM, JVM) — виртуальная машина Java — основная часть исполняющей системы Java, так называемой Java Runtime Environment (JRE). Виртуальная машина Java исполняет байт-код Java, предварительно созданный из исходного текста Java-программы компилятором Java (javac). JVM может также использоваться для выполнения программ, написанных на других языках программирования. Например, исходный код на языке Ada может быть скомпилирован в байт-код Java, который затем может выполниться с помощью JVM. JVM является ключевым компонентом платформы Java. Так как виртуальные машины Java доступны для многих аппаратных и программных платформ, Java может рассматриваться и как связующее программное обеспечение, и как самостоятельная платформа. Использование одного байт-кода для многих платформ позволяет описать Java как «скомпилируй единожды, запускай везде» (compile once, run anywhere). Что такое JVMargs? - Это аргументы для настройки JVM. Как использовать JVMargs на VimeWorld? - файл jvmargs.txt должен находиться в папке .vimeworld, чтобы все работало следует перезапустить игру. Куча? - Мешок, пакет с определённым количеством памяти обработки за раз. K, M, G - Килобайт, мегабайт, гигабайт. Работа с памятью -Xmx1024M - Максимальное количество памяти, которое вы хотите дать игре. Можно выдать от "300M" до "8192M"+, для VimeWorld MiniGames за голову хватает 4-5гб памяти, советую ставить значения "1024M", "2048M", "4096M", так-же можно ставить "2G", "4G" и т.д. Прирост FPS может быть до значения "4096M", выше прироста FPS вы не заметите, связано это с ограничением чанков на сервере(8). Размер памяти влияет на задержку обработки памяти, "1024M" - примерно 1ms, "5120M"+ - примерно 10ms+, не уверен зависит ли данная задержка от скорости вашей оперативной памяти и её таймингов, вероятнее всего нет. Связано с количеством FPS. -Xmn2M - Минимальная куча памяти которая будет использоваться в игре. Можно выдать от "любогоK" до "6-8части максимального количества памяти". Чем меньше тем стабильнее, не советую ставить менее чем "2M". Cвязано со стабильностью FPS. -Xms512M - Среднее количество памяти которое будет использоваться в игре. Можно выдать от половины и менее максимального количества памяти в игре. Тут выставлено среднее значение, так-же можно выставить 765M и т.д. Данное количество памяти будет использовано в 100% времени игры, если игра захочет взять больше то может дойти до потолка(максимума) что вы указали, что приведет к принудительному очищению мусора и спаду до среднего("512M" к примеру) значения, так как минимальная куча выставлена в районе 2M, то память может вообще никогда не дойти до потолка. Что-то среднее между стабильностью и количеством FPS, ближе к стабильности. -XX:MaxMetaspaceSize=1310M - Максимальное количество выделяемой виртуальной памяти. -XX:NewSize=256M - Выделяемое количество виртуальной(?) памяти. -XX:MaxNewSize=1310M - Максимальное количество выделяемой виртуальной(?) памяти. -Xss512K - Каждый поток в приложении Java имеет собственный стек. Стек используется для хранения адресов возврата, аргументов вызова функции/метода и т. д. Поэтому, если поток имеет тенденцию обрабатывать большие структуры с помощью рекурсивных алгоритмов, ему может потребоваться большой стек для всех этих адресов возврата и тому подобного. В Sun JVM вы можете установить этот размер с помощью этого параметра. Насколько я знаю, выше чем 2048K либо 4096K(не уверен) не работает. Сборщик мусора -XX:+UseSerialGC - Последовательный сборщик использует один поток для выполнения всей работы по сбору мусора, что делает его относительно эффективным, поскольку между потоками не возникает дополнительных затрат на связь. Он лучше всего подходит для однопроцессорных машин, поскольку не может использовать преимущества многопроцессорного оборудования, хотя может быть полезен на многопроцессорных системах для приложений с небольшими наборами данных (примерно до 100 МБ). Сборщик последовательных портов выбирается по умолчанию в определенных конфигурациях оборудования и операционной системы или может быть явно включен с помощью параметра -XX:+UseSerialGC. -XX:+UseParallelGC - Параллельный сборщик (также известный как сборщик пропускной способности) выполняет второстепенные сборы параллельно, что может значительно сократить накладные расходы на сборку мусора. Он предназначен для приложений с наборами данных среднего и большого размера, которые работают на многопроцессорном или многопоточном оборудовании. Параллельный сборщик выбирается по умолчанию в определенных конфигурациях оборудования и операционной системы, или его можно явно включить с помощью параметра -XX:+UseParallelGC. -XX:+UseG1GC - Сборщик мусора Garbage-First (G1) — это сборщик мусора серверного типа, предназначенный для многопроцессорных машин с большим объемом памяти. Он пытается с высокой вероятностью выполнить цели по времени паузы сборки мусора (GC), достигая при этом высокой пропускной способности. Операции с целой кучей, такие как глобальная маркировка, выполняются одновременно с потоками приложения. Это предотвращает прерывания, пропорциональные размеру кучи или оперативных данных. G1GC включается с помощью параметра командной строки -XX:+UseG1GC. Используется на VimeWorld по умолчанию. -XX:+G1UseAdaptiveIHOP -XX:InitiatingHeapOccupancyPercent=45 - Значения по умолчанию для управления начальной загрузкой кучи указывают на то, что адаптивное определение этого значения включено, и что для первых нескольких циклов сбора G1 будет использовать загрузку 45% от старого поколения в качестве порога начала метки. -XX:G1HeapRegionSize=<var> - Размер областей кучи. Значение по умолчанию основано на максимальном размере кучи и рассчитано для рендеринга примерно 2048 регионов. Размер должен быть степенью 2, а допустимые значения — от 1 до 32 МБ. -XX:G1NewSizePercent=5 -XX:G1MaxNewSizePercent=60 - Общий размер молодого поколения, который варьируется между этими двумя значениями в процентах от текущей используемой кучи Java. Требует -"XX:+UnlockExperimentalVMOptions". -XX:G1MixedGCCountTarget=8 - Ожидаемая продолжительность фазы освоения пространства в ряде коллекций. -XX:G1MixedGCLiveThresholdPercent=85 - Области старого поколения с более высокой заполненностью живыми объектами, чем этот процент, не собираются на этом этапе освоения пространства. Требует -"XX:+UnlockExperimentalVMOptions". -XX:-G1EnableStringDeduplication - По умолчанию дедупликация строк отключена. Вы можете включить его. -XX:+UseConcMarkSweepGC или -XX:+USeParNewGC - Сборщик Concurrent Mark Sweep (CMS) предназначен для приложений, которые предпочитают более короткие паузы при сборке мусора и могут позволить себе совместно использовать ресурсы процессора со сборщиком мусора во время работы приложения. Как правило, приложения, которые имеют относительно большой набор долгоживущих данных (большое постоянное поколение) и работают на машинах с двумя или более процессорами, как правило, выигрывают от использования этого сборщика. Тем не менее, этот коллектор следует рассматривать для любого приложения с низкими требованиями к времени паузы. Сборщик CMS включается с помощью параметра командной строки -XX:+UseConcMarkSweepGC (Для сервера), -XX:+USeParNewGC. -XX:CMSInitiatingOccupancyFraction=70 - (Для сервера) Выбирает уровень, на котором начинается сбор. Значение по умолчанию — 68%. -XX:-CMSIncrementalMode - Включает инкрементный режим. Обратите внимание, что сборщик CMS также должен быть включен (с -XX:+UseConcMarkSweepGC), чтобы эта опция работала. -XX:-CMSIncrementalPacing - Включает автоматическую стимуляцию. Рабочий цикл инкрементного режима автоматически настраивается на основе статистики, собранной во время работы JVM. -XX:CMSIncrementalDutyCycle=10 - Процент (от 0 до 100) времени между второстепенными сборами, который разрешен для запуска сборщика CMS. Если CMSIncrementalPacing включен, то это просто начальное значение. -XX:CMSIncrementalDutyCycleMin=0 - Процент (от 0 до 100), являющийся нижней границей рабочего цикла при включении CMSIncrementalPacing. -XX:CMSIncrementalSafetyFactor=10 - Процент (от 0 до 100), используемый для добавления консерватизма при вычислении рабочего цикла. -XX:CMSIncrementalOffset=0 - Процент (от 0 до 100), на который рабочий цикл инкрементного режима смещается вправо в течение периода между второстепенными сборами. -XX:CMSExpAvgFactor=25 - Процентное значение (от 0 до 100), используемое для взвешивания текущей выборки при вычислении экспоненциальных средних для статистики коллекции CMS. -XX:+UseShenandoahGC - Shenandoah GC позиционируется как сборщик, который стремится поддерживать короткие паузы даже на кучах большого объема, за счет выполнения как можно большего количества работы по сборке мусора в конкурентном режиме, то есть одновременно с работой основных потоков приложения. -XX:+UseZGC - Сборщик мусора Z (ZGC) — это масштабируемый сборщик мусора с малой задержкой. ZGC выполняет всю дорогостоящую работу одновременно, не останавливая выполнение потоков приложений более чем на несколько миллисекунд. Он подходит для приложений, требующих низкой задержки. Время паузы не зависит от размера используемой кучи. ZGC поддерживает размер кучи от 8 МБ до 16 ТБ. Сборщик мусора Z включается с помощью параметра командной строки -XX:+UseZGC. Требует "-XX:+UnlockExperimentalVMOptions". Скоро будет полная информация по этому сборщику. -XX:+UseEpsilonGC - Не нашел информации. Общие аргументы для всех сборщиков мусора. -XX:MaxGCPauseMillis=200 - Пауза сборщика мусора в миллисекундах. -XX:ParallelGCThreads=4 - Количество потоков вашего процессора. -XX:ConcGCThreads=2 - Количество потоков вашего процессора которые будут использоваться одновременно. Аргументы -server - Выбирает оптимизацию времени выполнения серверного приложения. Серверу каталогов потребуется больше времени для запуска и «прогрева», но он будет более агрессивно оптимизирован для обеспечения более высокой пропускной способности. -client - Выбирает оптимизацию времени выполнения клиентского приложения. Приложение будет быстрее запускаться и быстрее реагировать из-за меньших накладных расходов на компиляцию. -d64 - Только для 64-битных машин. По умолчанию сервер каталогов выбирает 32-разрядную JVM независимо от архитектуры. Этот параметр следует указывать, когда требуется большая куча JVM (более 4 гигабайт) и архитектура является 64-разрядной. -XX:AggressiveHeap - Включает оптимизацию кучи Java. Это устанавливает оптимальные параметры для длительных заданий с интенсивным выделением памяти в зависимости от конфигурации компьютера (ОЗУ и ЦП). По умолчанию этот параметр отключен, и куча не оптимизирована. FPS? -XX:AggressiveOpts - Позволяет использовать агрессивные функции оптимизации производительности, которые, как ожидается, станут стандартными в следующих выпусках. По умолчанию этот параметр отключен, и экспериментальные функции повышения производительности не используются. FPS -XX:AlwaysPreTouch - Позволяет касаться каждой страницы в куче Java во время инициализации JVM. Это загружает все страницы в память перед входом в метод main(). Этот параметр можно использовать при тестировании для имитации долго работающей системы, в которой вся виртуальная память отображается на физическую память. По умолчанию этот параметр отключен, и все страницы фиксируются по мере заполнения пространства кучи JVM. -XX:DisableExplicitGC - Другой способ, которым приложения могут взаимодействовать со сборкой мусора, — явный вызов полных сборок мусора с помощью вызова System.gc(). Это может привести к выполнению основного сбора, когда в этом может не быть необходимости (например, когда будет достаточно второстепенного сбора), и, как правило, этого следует избегать. Влияние явных сборок мусора на производительность можно измерить, отключив их с помощью флага -XX:+DisableExplicitGC, который заставляет виртуальную машину игнорировать вызовы System.gc(). -XX:+ExplicitGCInvokesConcurrent - Включается по умолчанию, что означает, что будет вызываться параллельный цикл сборки мусора, а не полный сборщик мусора STW. -XX:ParallelRefProcEnabled - Включает параллельную обработку ссылок. По умолчанию эта опция отключена. -XX:PerfDisableSharedMem - Я не нашел официального документа, но кажется, что это мешает GC писать в файловой системе. -XX:UsePerfData - Включает функцию perfdata. Этот параметр включен по умолчанию, чтобы разрешить мониторинг JVM и тестирование производительности. Его отключение подавляет создание каталогов hsperfdata_userid. Чтобы отключить функцию perfdata, укажите -XX:-UsePerfData. -XX:UseCompressedOops - Отключает использование сжатых указателей. По умолчанию этот параметр включен, и сжатые указатели используются, когда размер кучи Java меньше 32 ГБ. Когда этот параметр включен, ссылки на объекты представляются как 32-битные смещения вместо 64-битных указателей, что обычно повышает производительность при запуске приложения с размерами кучи Java менее 32 ГБ. Этот вариант работает только для 64-битных JVM. -XX:+UnlockExperimentalVMOptions - Разблокирует экспериментальные возможности, нужно для многих аргументов в этом списке. -XX:+OptimizeStringConcat - Оптимизирует операции конкатенации строк, когда это возможно. -XX:+UseCompressedStrings - Использует тип byte[] для объектов String, которые могут быть представлены в чистом формате ASCII. -XX:+UseStringCache - Включает кэширование часто выделяемых строк, доступных в пуле строк. -XX:+UseLargePages - Использует большую страничную память, если она поддерживается системой; обратите внимание, что OpenJDK 7 имеет тенденцию к сбою при использовании этого параметра JVM. -XX:+UseStringDeduplication - В Java 8u20 этот параметр JVM введен для уменьшения ненужного использования памяти за счет создания слишком большого количества экземпляров одной и той же строки; это оптимизирует память кучи, уменьшая повторяющиеся значения String в один глобальный массив char[]. -XX:+UseLWPSynchronization - Устанавливает LWP (облегченный процесс) — политику синхронизации на основе, вместо синхронизации на основе потоков. -XX:LargePageSizeInBytes: - Устанавливает большой размер страницы, используемый для кучи Java; принимает аргумент в ГБ/МБ/КБ; с большими размерами страниц мы можем лучше использовать аппаратные ресурсы виртуальной памяти; однако это может привести к увеличению размера пространства для PermGen, что, в свою очередь, может привести к уменьшению размера пространства кучи Java. -XX:MaxHeapFreeRatio:16 - Устанавливает максимальный процент свободной кучи после GC, чтобы избежать сжатия. -XX:MinHeapFreeRatio:3 - Устанавливает минимальный процент свободной кучи после GC, чтобы избежать расширения; для мониторинга использования кучи вы можете использовать VisualVM, поставляемый с JDK. -XX:SurvivorRatio:6 - Соотношение размера пространства Эдем/Выживший – например, -XX:SurvivorRatio=6 устанавливает соотношение между каждым пространством выжившего и пространством Эдема как 1:6, -XX:+UseNUMA - Неоднородный доступ к памяти (NUMA) — это конструкция компьютерной памяти, используемая в многопроцессорной обработке, время доступа к памяти зависит от расположения памяти относительно процессора. -XX:-UseBiasedLocking - Существует компромисс между неконкурентной (предвзятой) пропускной способностью блокировки и безопасными точками, которые JVM делает, чтобы включать и отключать их по мере необходимости. Для рабочих нагрузок, ориентированных на задержку, имеет смысл отключить предвзятую блокировку. Аргументы для разработчиков Ведение журнала сборщика мусора Типичный пример использования: -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=< number of log files > -XX:GCLogFileSize=< file size >[ unit ] -Xloggc:/path/to/gc.log UseGCLogFileRotation указывает политику чередования файлов журнала, как и log4j, s4lj и т. д. NumberOfGCLogFiles обозначает максимальное количество файлов журнала, которое может быть записано для одного жизненного цикла приложения. GCLogFileSize указывает максимальный размер файла. Наконец, loggc обозначает его местоположение. Здесь следует отметить, что есть еще два доступных параметра JVM (-XX:+PrintGCTimeStamps и -XX:+PrintGCDateStamps), которые можно использовать для печати временной метки даты в журнале GC. Например, если мы хотим назначить максимум 100 файлов журнала GC, каждый из которых имеет максимальный размер 50 МБ, и хотим сохранить их в папке «/home/user/log/», мы можем использовать следующий синтаксис: -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=50M -Xloggc:/home/user/log/gc.log Однако проблема в том, что один дополнительный поток даймона всегда используется для мониторинга системного времени в фоновом режиме. Такое поведение может стать узким местом в производительности; поэтому всегда лучше не играть с этим параметром в продакшене. Обработка нехватки памяти Очень часто большое приложение сталкивается с ошибкой нехватки памяти, которая, в свою очередь, приводит к сбою приложения. Это очень важный сценарий, и его очень трудно воспроизвести для устранения проблемы. Вот почему JVM поставляется с некоторыми параметрами, которые выгружают память кучи в физический файл, который можно использовать позже для обнаружения утечек: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./java_pid<pid>.hprof -XX:OnOutOfMemoryError="< cmd args >;< cmd args >" -XX:+UseGCOverheadLimit Здесь следует отметить пару моментов: HeapDumpOnOutOfMemoryError указывает JVM сбросить кучу в физический файл в случае OutOfMemoryError. HeapDumpPath обозначает путь, по которому должен быть записан файл; можно указать любое имя файла; однако, если JVM находит тег <pid> в имени, идентификатор текущего процесса, вызвавшего ошибку нехватки памяти, будет добавлен к имени файла в формате .hprof. OnOutOfMemoryError используется для выдачи экстренных команд, которые должны быть выполнены в случае ошибки нехватки памяти; правильная команда должна использоваться в пространстве аргументов cmd. Например, если мы хотим перезапустить сервер, как только произойдет нехватка памяти, мы можем установить параметр: -XX:OnOutOfMemoryError="shutdown -r" UseGCOverheadLimit — это политика, ограничивающая долю времени, которое виртуальная машина проводит в сборке мусора, прежде чем будет выдана ошибка OutOfMemory.
×
×
  • Создать...