Как запустить несколько клиентов Hytale на одном компьютере: Руководство по двойному экземпляру

By HytaleCharts Team Category: guides 7 min read

Хотите запустить два клиента Hytale на одном компьютере? По умолчанию программа запуска Hytale не позволяет открыть второй экземпляр, но есть простое обходное решение с использованием мьютекса Windows. В этом руководстве вы узнаете, как запустить два клиента Hytale без виртуальных машин, песочницы или второго компьютера.

Хотите запустить два клиента Hytale на одном компьютере? По умолчанию программа запуска Hytale не позволяет открыть второй экземпляр, но есть простое обходное решение с использованием мьютекса Windows. В этом руководстве вы узнаете, как запустить два клиента Hytale без виртуальных машин, песочницы или второго компьютера.. Если вы когда-нибудь пытались открыть второй клиент Hytale, когда один уже запущен, вы натолкнулись на стену. Пусковая установка отказывается открываться. Ни сообщения об ошибке, ни объяснения - она просто не запускается. Это намеренная блокировка одного экземпляра, встроенная в клиент Hytale, и она затрагивает всех, кто пытается играть в мультибокс, тестировать с двумя учетными записями или вести игру бок о бок. Хорошая новость: вы можете обойти эту проблему. Никаких виртуальных машин, никаких вторых компьютеров, никакого хитрого стороннего программного обеспечения. Всего лишь бесплатный инструмент Microsoft и около 30 секунд работы. Почему Hytale блокирует несколько экземпляров. Как и многие современные игры, Hytale использует mutex (объект взаимного исключения), чтобы предотвратить одновременный запуск более чем одной копии клиента на одной машине. Когда вы запускаете Hytale, клиент создает именованный мьютекс в Windows под названием HypixelStudios.Hytale.Game. Перед тем как пусковая установка полностью откроется, она проверяет, существует ли уже этот мьютекс. Если он существует, пусковая установка предполагает, что другой экземпляр уже запущен, и молча отказывается запускаться. Это та же самая техника, которую используют такие игры, как Roblox, Guild Wars, Blade & Soul и десятки других. Обходной путь тоже одинаков: закройте хэндл мьютекса на запущенном экземпляре, а затем запустите второй клиент до того, как будет создан новый. Что вам нужно Две учетные записи Hytale - для каждого экземпляра клиента нужна своя аутентифицированная учетная запись. Вы не можете войти в одну и ту же учетную запись дважды одновременно Process Explorer - бесплатный инструмент из пакета Sysinternals от Microsoft. Загрузите его с сайта Microsoft. Компьютер с достаточным количеством ресурсов для запуска двух экземпляров Hytale (рекомендуется 16 ГБ ОЗУ, хотя можно обойтись и 8 ГБ) Пошаговая инструкция: Запуск двух клиентов Hytale Шаг 1: Загрузите и откройте Process Explorer Скачайте Process Explorer с сайта Microsoft Sysinternals и запустите procexp64.exe (для 64-битных систем) от имени администратора. Вы увидите список всех процессов, запущенных на вашей машине, в режиме реального времени. Шаг 2: Запуск первого клиента Hytale Откройте Hytale в обычном режиме и войдите в систему. Оставьте игру запущенной - это ваш первый экземпляр. Шаг 3: Найдите процесс Hytale В Process Explorer найдите HytaleClient.exe в списке процессов. Вы можете нажать Ctrl+F и поискать "Hytale", чтобы быстро найти его. Щелкните на процессе, чтобы выбрать его. Шаг 4: Переключитесь в режим просмотра обработок Выбрав HytaleClient.exe, перейдите в меню View → Lower Pane View → Handles (или нажмите Ctrl+H). На нижней панели теперь будут отображаться все хэндлы, которыми владеет процесс Hytale - файлы, ключи реестра, события и мьютексы. Шаг 5: Найдите мьютекс синглтона На нижней панели найдите хэндл с типом Mutant (Windows отображает мьютексы как "Mutant" в Process Explorer). Вы ищете: \BaseNamedObjects\HypixelStudios.Hytale.Game Чтобы найти его быстрее, нажмите на заголовок столбца Тип для сортировки по типу, затем прокрутите список до записей "Мутант". Кроме того, используйте Ctrl+F в главном меню (Найти → Найти дескриптор или DLL) и найдите HypixelStudios.Hytale.Game. Шаг 6: Закройте хэндл мьютекса Правой кнопкой мыши щелкните на хэндле HypixelStudios.Hytale.Game и выберите Close Handle. Process Explorer попросит вас подтвердить выбор - нажмите Да. Шаг 7: Запуск второго клиента Сразу после закрытия хэндла снова откройте программу запуска Hytale. На этот раз она запустится нормально, поскольку мьютексной блокировки больше не существует. Войдите в систему под второй учетной записью Hytale, и теперь у вас есть два полнофункциональных клиента Hytale, работающих на одном компьютере. Автоматизация процесса Каждое закрытие хэндла мьютекса вручную становится утомительным. Вы можете автоматизировать этот процесс с помощью инструмента командной строки Sysinternals handle64.exe, который входит в состав Sysinternals Suite или отдельно загружаемого. Приложение. Создайте пакетный файл (например, hytale-multi.bat), в котором выполните следующие действия: @echo off echo Закрытие синглтонного мьютекса Hytale... handle64.exe -a -p HytaleClient.exe "HypixelStudios.Hytale.Game" -c -y echo Мьютекс закрыт. Теперь запустите второй клиент Hytale. pause Запустите этот пакетный файл от имени администратора после запуска первого экземпляра Hytale, а затем запустите второй клиент. Примечание: При первом запуске handle64.exe он предложит вам принять ЛСКП Sysinternals. Запустите его один раз вручную, чтобы принять, прежде чем прибегать к помощи пакетного сценария. Важные сведения. Вам нужны две отдельные учетные записи Hytale. Каждый клиентский экземпляр аутентифицируется независимо. Вы не можете запустить два экземпляра на одной учетной записи - сервер отклонит дублирующую сессию. Это означает, что вам необходимо приобрести две игры. Вы должны повторять это каждый раз. Мьютекс создается заново при каждом запуске Hytale. Его закрытие влияет только на текущую сессию. Если вы перезапустите оба клиента, вам нужно будет снова закрыть мьютекс перед открытием второго экземпляра. Производительность имеет значение. Одновременный запуск двух клиентов Hytale требователен. Вам потребуется снизить настройки графики на обоих экземплярах - уменьшить расстояние просмотра, приглушить эффекты и закрыть ненужные фоновые приложения. Твердотельный накопитель существенно влияет на время загрузки, когда оба клиента читают активы одновременно. Ваш первый экземпляр продолжает работать нормально. Закрытие мьютекса не приводит к сбою, отключению или иному воздействию на первый клиент Hytale. Мьютекс проверяется только при запуске - после запуска игры его удаление никак не влияет на игровой процесс. Это не то же самое, что моддинг клиента. Эта техника не модифицирует файлы Hytale, не внедряет код и не изменяет двоичный файл клиента каким-либо образом. Вы просто закрываете ручку Windows с помощью официального инструмента Microsoft. Почему бы не использовать виртуальную машину или песочницу? Виртуальные машины работают, но создают значительные накладные расходы - вы запускаете целую вторую операционную систему только для того, чтобы обойти мьютекс. Для такой ресурсоемкой игры, как Hytale, выделение половины системных ресурсов под виртуальную машину означает, что оба экземпляра будут работать плохо. Инструменты для создания песочницы, такие как Sandboxie, иногда работают, но они часто вызывают проблемы с системами защиты от мошенничества и доступом к графическим драйверам. Метод мьютекса чище, легче и не мешает нормальной работе игры. Устранение неполадок Вторая пусковая установка по-прежнему не открывается: Убедитесь, что вы закрыли правильный хэндл. Имя мьютекса - это именно \BaseNamedObjects\HypixelStudios.Hytale.Game с типом "Mutant". Если вы случайно закрыли другой хэндл, попробуйте еще раз. Process Explorer не показывает хэндлы: Убедитесь, что вы запускаете Process Explorer от имени администратора. Без повышенных привилегий он не может просматривать хэндлы всех процессов. Пакетный скрипт не работает: Убедитесь, что handle64.exe находится в том же каталоге, что и пакетный файл, или добавьте его в системный PATH. Также убедитесь, что вы приняли ЛСКП Sysinternals, запустив handle64.exe сначала вручную. Один клиент отключается, когда другой входит в систему: Это означает, что оба клиента используют одну и ту же учетную запись Hytale. Вам нужна вторая учетная запись с собственной покупкой игры. Недостаточная производительность при использовании двух экземпляров: Уменьшите расстояние рендеринга и настройки графики на обоих клиентах. Закройте Chrome и другие приложения, занимающие много памяти. Если у вас 8 ГБ оперативной памяти, ожидайте появления заиканий - для плавной работы двух клиентов рекомендуется 16 ГБ или больше. Основные выводы Hytale использует мьютекс Windows под названием HypixelStudios.Hytale.Game для предотвращения множественных экземпляров. Process Explorer от Microsoft Sysinternals может закрыть этот мьютекс, позволяя запустить второй клиент. Нужны две отдельные учетные записи Hytale с двумя покупками игр - по одной учетной записи на экземпляр. Мьютекс необходимо закрывать каждый раз перед запуском второго клиента. Этот метод не использует никаких модификаций файлов Hytale и не требует сторонних игровых инструментов. При помощи пакетного скрипта с handle64.exe можно автоматизировать процесс до одного клика. Запуск двух клиентов Hytale открывает возможности для тестирования серверов, мультибоксинга или просто игры с двумя аккаунтами бок о бок. Процесс займет считанные секунды, как только вы поймете, что нужно делать, и будет работать надежно без головной боли, связанной с виртуальными машинами или дополнительным оборудованием. Нужен мониторинг сервера Hytale на обеих учетных записях? Посмотрите статистику своего сервера на HytaleCharts и отслеживайте активность игроков, время работы и рейтинг.