RAGE Multiplayer 1.1.0-DP#1 выходит в публичную бета-версию!

Lev Angel

Developer
Команда форума
RAGE Multiplayer 1.1 - это новая версия, основанная на 1.0-DP1, с почти 200 исправлениями ошибок из 1.0 только за последние несколько недель предварительного публичного тестирования и новыми замечательными функциями, такими как синхронизированные NPC и многое другое!

1582353940098.png

До сих пор крошечная часть 1.0, известная как «DP#2», была отложена в пользу более ранней и более стабильной версии 1.1-DP1. DP2 требует больше времени на тестирование, и вы будете получите о ней информацию отдельно.

Сегодняшний выпуск означает, что вы получите немедленный доступ к общедоступной ветке Windows Client / Server для тестирования, предназначенной для разработчиков серверов, и вы не сможете присоединиться к общедоступным серверам версии 0.3.7.


Ресурсы:
  • Обновлено: значительно улучшена производительность потоковой передачи зашифрованных игровых ресурсов, а также улучшено использование оперативной памяти на тяжелых dlcpacks.
  • Сделано шифрование игровых ресурсов, независимо от индивидуальной системной информации, так что вы можете продолжать распространение огромных файлов отдельно.
  • Добавлена поддержка для перегрузки целых стандартных dlcpacks (ранее это вызывало бы «неопределенное» поведение).
  • Переработан серверный сканер ресурсов с улучшенным распараллеливанием сжатия / шифрования и всего процесса (например, время, необходимое для сканирования и кэширования в памяти сервера 6 ГБ ресурсов (пакет преобразований преобразований LC-IV и VC в V) было уменьшено с более 30с до 8-10 с на тестовой машине).
  • Клиентский лаунчер и внутриигровые проверки сделаны многопоточными.
  • Добавлена возможность регистрации необработанных игровых ресурсов (т. е. при помощи этого вы можете уменьшить размер dlcpacks), например: /client_packages/game_resources/raw/infernus2.ytd

Синхронизация:
  • Обновлено: экстраполяция синхронизации теперь необязательна, переключается с помощью конфигурации сервера: 'enable-synchronization-extrapolation': true. По умолчанию он отключен (рекомендуется для игровых режимов, когда важна любая десинхронизация, вызванная такой задержкой) в 1.0, он всегда был включен в более ранних выпусках.
  • Для новой синхронизации также были реализованы несколько оптимизаций.

Безопасность:
  • Портированные последние версии анти-чита и средств защиты из 0.3.7, оптимизации и дополнительные полезные изменения ветки, которые еще не были перенесены.
  • Реализовано больше мер защиты памяти в мультиплеере.
  • Улучшена защита кода клиентской системы управления пакетами.
  • Реализована дополнительная защита от читерства с помощью клиентского API на C#
  • Добавлен режим server-side-weapons-only-mode для синхронизации только того оружия, которое было выдано игроку на сервере, а не на клиенте (который также имеет свои собственные механизмы защиты, поэтому эта опция по умолчанию отключена).
API:
  • Добавлено: Серверные статические и динамические (синхронизированные) педы. Динамические педы синхронизируется игроком который вручную указывается скриптом и может быть переназначен в любой момент.
JavaScript:
let dynamicPed = mp.peds.new(mp.joaat('mp_m_freemode_01'), mp.players.at(0).position, {dynamic:true});
dynamicPed.controller = mp.players.at(0);

let staticPed = mp.peds.new(mp.joaat('player_zero'), mp.players.at(0).position,
{
      dynamic: false, // still server-side but not sync'ed anymore
      frozen: true,
      invincible: true
});
  • Добавлено: Серверная player.kickSilent, которая будет полезна для быстрого реконнекта, отладки и т. п. (клиент будет вести себя как-будто был таймаут).
  • Добавлено: отменяемое событие на стороне клиента incomingDamage(sourceEntity, sourcePlayer, targetEntity, weapon, boneIndex, damage)
  • Добавлено: отменяемое событие на стороне клиента outgoingDamage(sourceEntity, targetEntity, targetPlayer, weapon, boneIndex, damage)
  • Добавлено: клиентское событие dummyEntityDestroyed(entity, dummyType)
  • Добавлено mp.Pool.getClosestInDimension(position, dimension[, numberOfEntities]) (только server-side)
  • Добавлено: клиенткое событие для педов и транспорта entityControllerChange(entity, newController)
  • Добавлено: клиентский mp.game.weapon.unequipEmptyWeapons
  • C# API: переимонав серверный "Client" в "Player" для соответствия другим API.
  • C# API:реализован клиентский пул сущностей API (например, RAGE.Entities.Players - да, он *уже* использует пространство имен RAGE, такое как клиентский API, вместо "API" или "NAPI" ).
  • C# API: добавлено UIMenu.SetMenuData и UIMenuItem.SetItemData которая позволяет связывать ваши собственные данные с элементами, чтобы упростить логику обработки меню.
  • C# API: Исправлены неверные логические результаты в нескольких клиентских методах .
  • C# API: Добавлено: AddSubMenu(UIMenu menu, string text, string description, System.Drawing.Point offset) перегрузка.
  • C# API:Добавлены недостающие клиентские 1.0 методы в C#.
  • C# API: Исправлена опечатка в имени RAGE.Game.Gxt.
  • C# API: Исправлена проблема с NAPI.Task.
  • C# API: Добавлены недостающие хеши перечислений.
  • C# API: Обновлен список автомобильных сидений.
  • C# API: Обновлен vehicleData.json.
  • C# API: Добавлена поддержка пользовательского vehicleData.json: назовите файл «vehicleData.custom.json», чтобы использовать его вместо этого (полезно серверов с модами на транспорт).
  • C# API: Добавлено отсутствующее событие IncomingConnection.
  • C# API: Исправлено System.EntryPointNotFoundException.
  • C# API: Исправлена недоступность NAPI.Command.
  • C# API: Изменен тип возвращаемого значение Entity.GetSharedData с dynamic на object.
  • C# API: Добавлен серверный player.Heading, исправлен player.SetRotation.
  • C++ API: Сервер: Увеличена версия SDK (чтобы предупредить о несовместимости плагина, когда это необходимо) .
  • NodeJS API: Обновление NodeJS до v13.1.0.
  • NodeJS API: Исправление проблем с NodeJS с 1.0/v13.
  • NodeJS API: Исправлено entity.setVariable и другие связанные с этим проблемы.
  • NodeJS API: Исправлена опция --inspect, которая не обрабатывалась NodeJS.
  • JS API: Изменено поведение mp.Pool.forEach, чтобы оно работало как раньше в 0.3, чтобы предотвратить возможные краши; добавлен mp.Pool.forEachFast для быстрого (но не entity.destroy () - безопасного) поиска (как он изначально работал в 1.0 / 1.1).
Другое
  • Совместимость с игровым патчем 1.50 (текущая общедоступная стабильная ветка уже обновлена до 1.50 (The Diamond Casino Heist Update) и была выпущена менее чем через 5 часов после выпуска - это новый рекорд для основных патчей игры!).
  • Огромная оптимизация сетевой библиотеки - стресс-тесты на сервере с 1800+ игроками на реальном «многофункциональном» игровом режиме, при этом оптимизация, перенесенная на экспериментальный сервер 0.3.7, показала примерно ~10-кратное повышение производительности сети, возможно, оказав еще больший эффект на более мощных процессорах.
  • Исправлена утечка памяти на сервере (которая чаще всего возникала, когда на сервере был один игрок, но были и другие случаи).
  • Оптимизированные средства получения общих данных на стороне клиента для обеих сред выполнения сценариев
  • Исправлено дрожание неймтегов игроков, которые еду в транспорте на большой скорости.
  • Улучшение совместимости с Wine (на данном этапе пока еще не удается войти в игру).
  • Исправлена ошибка, приводившая к дублированию педа после слишком долгой загрузки модели.
  • Добавлена поддержка длинных строк для тегов имен и текстовых меток.
  • Обновлен Chromium до версии 79.0.3945.117.
  • Исправлены клиентские события playerCreate/RemoveWaypoint
  • Обновлен серверный .NET Core до версии 3.1.
  • Исправлена бессмысленная «ошибка» на стороне клиента, которая регистрировалась в «clientide_cs.txt» один раз при каждой инициализации.
  • Обновлены локализации: добавлены индонезийский и тайский языки; обновлено несколько других локализаций.
  • Исправлена ошибка, из-за которой некоторые ограничения игрового лимита применялись некорректно, что приводило к неопределенному поведению.
  • Исправлено несколько старых ошибок.
  • Исправлено обновление изображения, чтобы конфиги не перезаписывались.
  • Лаунчер: Исправлена ошибка перезаписи storage.json
  • Лаунчер: Исправлена ошибка при которой порт отладчика CEF не сохранялся при изменении через лаунчер.
 
Последнее редактирование:
Яндекс.Метрика
Верх