urhon писал(а):
88021470не помогло
Вот совет попроще, мне он не помог, поэтому я стал ковырять в сторону dll. Попробуй, может, тебе поможет:
Что можно попробовать
1. Включить оффлайн-режим в steam_api.ini
Попробуй изменить строку:
Offline=0
на:
Offline=1
Затем перезапусти игру.
Это часто отключает попытку проверить запуск через Steam и может обойти вызов RestartAppIfNecessary(), особенно в версиях SKIDROW API.
2. Создать steam_appid.txt
Параллельно (даже в обходном варианте SteamAPI) иногда срабатывает подложка steam_appid.txt:
Создай файл steam_appid.txt в той же папке, где NiceDayForFishing.exe.
Внутри напиши:
2393160
Ну и более серьёзные методы, что ЧатГПТ насоветовал, это я уже не разбирал, если интересно - можешь его поспрашивать:
Патчинг .NET DLL (через dnSpy)
Поскольку это Unity/Mono проект, ты можешь открыть сборку Assembly-CSharp.dll или Assembly-CSharp-firstpass.dll и вручную:
найти класс CustomSteamManager
и в методе Awake() удалить вызов SteamAPI.RestartAppIfNecessary(...)
Шаги:
Скачай dnSpy (безопасный .NET редактор).
Открой файл NiceDayForFishing_Data\Managed\Assembly-CSharp.dll.
Найди класс CustomSteamManager.
Найди метод Awake(). Он, скорее всего, выглядит так:
void Awake() {
if (SteamAPI.RestartAppIfNecessary(new AppId_t(2393160))) {
Application.Quit();
return;
}
...
}
Удали/закомментируй этот фрагмент.
Сохрани сборку (Ctrl+Shift+B).
Перезапусти игру.
Желательно сделать резервную копию Assembly-CSharp.dll перед правкой.
Другой вариант: Форсировать другой путь и отключить Steam зависимость глобально
Если в BuildSettings можно заменить Platform: STEAM на Platform: Standalone, ты можешь отредактировать сериализованный .asset файл (возможно globalgamemanagers или resources.assets), но это уже уровень побайтового патчинга Unity файлов и требует Unity Asset Bundle Extractor (UABE) или Unity Asset Studio.
Это крайняя мера.