Вылет при старте & фризы
Вылет
Фризы
По умолчанию процесс игры задействует только первое логическое ядро ЦП (CPU 0), которое активно используется Windows для выполнения широкого спектра системных задач, что закономерно приводит к провисаниям ввиду конкуренции потоков.
Для устранения проблемы нужно вручную позволить игре задействовать все ядра процессора.

Для удобства настройте свежесозданному ярлыку автоматический запуск с админ-правами в свойствах.
Для устранения проблемы нужно вручную позволить игре задействовать все ядра процессора.
Ручной способ:
⚠️ Описанные далее действия придётся выполнять при каждом входе в игру, т. к. Windows не сохраняет свойства процесса между запусками.
- Через несколько секунд после старта игры Alt+Tab на рабочий стол
- В диспетчере задач ПКМ по процессу игры → Подробно
- Второй раз ПКМ по процессу игры → Задать сходство
- В открывшемся окне выбрать <Все процессоры>
Автоматизация
Задачу проставления ядер процессу можно автоматизировать при помощи самописного PowerShell-скрипта. В папке с экзешником игры создаётся файл с расширением ps1 (например, start.ps1), в который вставляется приведённый ниже код.⚠️ Поскольку скрипту требуется изменять параметры уже запущенного процесса, для его корректной работы неизбежно потребуются права администратора.
# Путь к исполняемому файлу игры
$exePath = Join-Path $PSScriptRoot "AC4BFSP.exe"
try {
# Получение количества логических ядер из env
$logicalProcessors = [Environment]::ProcessorCount
# Маска сходства на все ядра
$affinityMask = [int]((1 -shl $logicalProcessors) - 1)
# Запуск процесса игры
Start-Process -FilePath $exePath
# Ожидание запуска процесса AC4BFSP.exe
$processName = (Get-Item $exePath).BaseName
$process = $null
while ($process -eq $null) {
Start-Sleep -Seconds 1
$process = Get-Process -Name $processName -ErrorAction SilentlyContinue
}
# Установка сходства процессу
$process.ProcessorAffinity = [IntPtr]::new($affinityMask)
Write-Host "Processor affinity set successfully" -ForegroundColor Green
} catch {
Write-Host "Error setting processor affinity: $_" -ForegroundColor Red
pause
}
# Опциональное ожидание после выполнения
Start-Sleep -Seconds 3
Для быстрого запуска создайте в удобном месте ярлык со следующим содержанием. Путь к файлу скрипта в кавычках замените на свой. powershell -ExecutionPolicy Bypass -File "С:\Program Files (x86)\Steam\steamapps\common\Assassin's Creed IV Black Flag\start.ps1"
Для удобства настройте свежесозданному ярлыку автоматический запуск с админ-правами в свойствах.
Послесловие
Это был мой первый опыт знакомства с Black Flag. Нужно ли говорить: я был действительно ошарашен, что запуск игры 2013 года в принципе может обернуться таким сабантуем, скорее присущим проектам нулевых. Любопытно, проблема ли это последних патчей или порта в целом. Если играли в игру на выходе, напишите, сталкивались ли тогда с подобными проблемами (будет интересно почитать).
А пока не могу упустить возможность поблагодарить начинающую французскую инди-студию Ubisoft за неповторимые эмоции от использования законно приобретённого лицензионного продукта!
А пока не могу упустить возможность поблагодарить начинающую французскую инди-студию Ubisoft за неповторимые эмоции от использования законно приобретённого лицензионного продукта!
This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.