Введение
Как исправить моды, которые не отображаются в Linux
Я заметил, что моды, загруженные через Steam Workshop, не отображаются в Dwarf Fortress. Я нашел (по общему признанию, хакерский) способ исправить это.
Эта проблема существует, поскольку Steam загружает моды в «неправильный» каталог, поэтому Dwarf Fortress не может видеть ваши моды. Исправление — это простое копирование и вставка с небольшими оговорками, но я проведу вас через это.
Вы также можете сказать, что Steam все делает правильно, но Dwarf Fortress не настроен должным образом для работы Steam в Linux. Но это не тема данного руководства.
В этом руководстве предполагается следующее:
1. Вы установили Dwarf Fortress под Linux с активированным Steam Play.
2. Вы не используете уровень совместимости, такой как Proton, хотя это не должно иметь большого значения
3. Моды фактически загружаются, поэтому нет проблем с установкой Steam, настройками брандмауэра или настройкой Linux в целом.
Если вы используете Proton или что-то подобное, пути к файлам, которые я здесь упоминаю, могут отличаться. Все-таки папки, в которые Steam загружает моды, должны быть одинаковыми, а вот папки, в которые установлена Dwarf Fortress, могут находиться в другом месте. Это должно быть достаточно похоже на то, что я описываю здесь, чтобы вы могли разобраться в этом самостоятельно, используя инструменты поиска, доступные для вашего дистрибутива.
Кроме того, если директория загрузки модов в вашей установке Linux отличается, у меня есть решение и для этого.
В конечном итоге я думаю, что разработчики должны исправить уже сломанную реализацию Steam Workshop в Linux, но на данный момент это руководство должно помочь запустить ваши моды.
Найдите файлы вашего мода
Шаг 1
Подпишитесь на нужные вам моды и убедитесь, что во вкладке «Загрузки» появляется загрузка.
Шаг 2
Перейдите по пути: /home/YOURUSERNAME/.steam/debian-installation/steamapps/workshop/content/975370
YOURUSERNAME - это имя пользователя в рамках ОС, а не имя пользователя Steam!
ЕСЛИ этот путь вам не подходит, значит, ваш дистрибутив Linux работает иначе, чем мой. В этом случае выполните шаг 2а, чтобы определить путь.
Шаг 2a.
Этот шаг является необязательным и необходим только в том случае, если ваша конкретная настройка Steam или дистрибутив Linux загружает элементы мастерской в другое место, а не как у меня (Ubuntu 22.04 без Proton. (Думаю, что без Proton и на любых Debian дистрибутивах будет работать шаг 2)).
Найдите мод в мастерской, в описании которого упоминаются некоторые полные имена файлов, или спросите разработчика мода, как называется один из его файлов. Одним из модов, который соответствует этим критериям, является мод «Watercolours» - https://steamcommunity.com/sharedfiles/filedetails/?id=2900754411&searchtext=watercolours
В описании упоминается файл: tile_page_watercolours_swamp.txt
Это идеально, потому что это конкретное имя файла. Чем конкретнее, тем выше вероятность того, что наша поисковая система выдаст узкий диапазон результатов, что значительно упрощает процесс поиска этого файла. Как только мы найдем файл, мы автоматически узнаем, куда Steam помещает файлы мода, загруженные через мастерскую.
Теперь подпишитесь, дождитесь завершения загрузки, а затем начните поиск по этому имени файла. Для этой задачи я рекомендую Fsearch — это легкий, очень быстрый и эффективный инструмент поиска, доступный для многих дистрибутивов Linux. Скорее всего, он уже доступен для установки в вашем «Менеджере программного обеспечения», поэтому вам не придется возиться с Терминалом.
sudo apt install fsearch
Еще один совет: если вы хотите использовать Fsearch и у вас включен инструмент резервного копирования, такой как Timeshift, перейдите в «РЕДАКТИРОВАНИЕ» → «НАСТРОЙКИ», затем нажмите вкладку «БАЗА ДАННЫХ», затем нажмите «ИСКЛЮЧИТЬ» слева, а затем добавьте путь / timeshift. Это заставит fsearch игнорировать каталог /timeshift, чтобы он не выполнял поиск в сотнях тысяч крошечных файлов резервных копий. Это значительно ускорит процесс поиска. Если у вас нет доступа к Fsearch, используйте панель поиска в файловом менеджере/проводнике и найдите имя файла. Теперь, когда вы нашли свой файл, вы знаете, куда Steam загрузил ваши моды. Сделайте себе одолжение и добавьте это место в закладки.
Шаг 3 Внутри этой папки вы должны увидеть несколько папок с длинными номерами, например: «2905960813». Это SteamID мода мастерской.
Если вы зайдете внутрь одного из них, вы сможете легко определить, что есть что,
а) посмотрев на изображения предварительного просмотра, поскольку они часто содержат название мода
или
б) прочитав файл «info.txt». Первая строка должна называться [ID:*], где * — это имя вашего мода. Итак, мод «Combat Log» читается как [ID:Combat_Log].
Создание папок модов и перенос их в нужное место
Создайте папку внутри папки мода и назовите ее в стиле шаблона: [ID][EMPTY SPACE]([NUMERIC_VERSION]), найденным в info.txt ([EMPTY SPACE] - просто пробел). Будьте особенно внимательны и не допускайте ошибок в написании.
Пример: interface_tweaks (103)
Будьте осторожны и не забудьте поставить пробел после ID и взять NUMERIC_VERSION в скобки.
Если вы отклонитесь от этого правила, игра заметит мод как установленный, но мод все равно не появится в игре. Это связано с тем, что игра сама создаст папки с правильными именами, но они будут пустыми. Таким образом, технически вы можете скопировать все, НО некоторые моды требуют загрузки во время создания мира. Очень раздражает, но именно так сейчас работает Dwarf Fortress.
Шаг 5
Теперь копируем все файлы мода в созданную папку.
Повторяем со всеми модами, которые необходимо перенести.
Шаг 6
Не закрывая директорию с модами идем по пути
/home/YOURUSERNAME/.steam/debian-installation/steamapps/common/Dwarf Fortress/data/installed_mods
Если вы не можете найти эту папку, перейдите в свою библиотеку Steam, щелкните правой кнопкой мыши Dwarf Fortress → Управление → Просмотреть локальные файлы, затем откройте /data и, наконец, /installed_mods.
Шаг 7
Копируем созданные папки в папку /installed_mods
После копирования, папка /installed_mods будет выглядеть примерно так
Опять же, будьте осторожны, выбирая правильный путь, потому что в корне Dwarf Fortress также есть папка /mods, но в данный момент она ничего не делает, по крайней мере, насколько мне известно.
Шаг 8
Проверяем окно модов в главном меню, там должны быть указаны правильные названия модов выделенные зеленым цветом, сигнализируя, что они установлены.
Создаем новый мир, выбираем пункт моды, проверяем, что все установлено.
Шаг 9
Теперь вы можете создавать миры с использованием модов. Веселитесь!
Темная магия
Шаг 9a
ЭТО НЕОБЯЗАТЕЛЬНО И ТРЕБУЕТСЯ ТОЛЬКО ЕСЛИ РУЧНОЕ НАЗВАНИЕ ПАПОК НЕ РАБОТАЕТ!!!!
На этом этапе нам придется прибегнуть к черной магии. Цель этого шага — заставить Dwarf Fortress создать для нас папки модов с правильными именами, чтобы моды действительно загружались при следующем создании миров.
Как описано, скопируйте папки модов, только имя на этот раз не имеет значения. Просто убедитесь, что вы дали папкам имена, которые позволят легко их идентифицировать.
Шаг 9b
ЭТО НЕОБЯЗАТЕЛЬНО И ТРЕБУЕТСЯ ТОЛЬКО ЕСЛИ РУЧНОЕ НАЗВАНИЕ ПАПОК НЕ РАБОТАЕТ!!!!
Запустите игру и на титульном экране проверьте раздел mods. Ваши моды должны быть указаны зеленым цветом и установлены как установленные. Отлично, теперь мы создаем «пустышный» мир. На экране создания мира нажмите на моды и активируйте все свои моды, добавив их в порядок загрузки. Пусть мир творит сам себя. После завершения его создания не уходите, отправляйтесь в случайное место, это не имеет значения, поскольку это наш фиктивный мир. Вы, вероятно, заметите, что ваши моды все еще не действуют. Это нормально. Теперь сохранитесь и выйдите.
Шаг 9c
ЭТО НЕОБЯЗАТЕЛЬНО И ТРЕБУЕТСЯ ТОЛЬКО ЕСЛИ РУЧНОЕ НАЗВАНИЕ ПАПОК НЕ РАБОТАЕТ!!!!
Вернитесь в:
/home/YOURUSERNAME/.steam/debian-installation/steamapps/common/Dwarf Fortress/data/installed_mods
Теперь вы можете увидеть, что для каждой вашей пользовательской папки теперь есть пустая папка. Ваше именование не влияет на именование созданных теперь «официальных» папок.
Но имена, которые вы им дали, теперь позволяют легко понять, кто кому принадлежит. В моем случае я создал папку с именем combat_log, и после выполнения шага 9б у меня все еще есть папка combat_log и новая папка с именем: Combat_Log (1). Эта папка пуста, но теперь, когда я копирую все из папки combat_log в Combat_Log (1), игра наконец-то правильно загружает моды.
Заключение
Я надеюсь, что это руководство будет полезно для людей, играющих на Linux. Это очень странный способ ведения дел, но пока разработчики не исправят это, вероятно, на данный момент это единственный способ заставить моды для Dwarf Fortress работать с Linux. Если кто-то из вас общается с разработчиками, сообщите им об этом или скажите, как я могу с ними связаться. Потому что, честно говоря, вам не придется так много возиться, просто чтобы установить простой мод.
Хорошего дня и strike the earth!
--------------------------------------------------------------------------------------------------------------------------------------
P.S Статья является полу-ручным полу-машинным переводом, оригинальная статья: https://steamcommunity.com/sharedfiles/filedetails/?id=2908486502
От себя добавил немного.
P.P.S Раздел "Темной магии лично не проверял".
P.P.P.S Думаю, будут проблемы с обновлениями модов, но действовать нужно также по гайду - переносить файлы-исходники в папки в /installed_mods.
Source: https://steamcommunity.com/sharedfiles/filedetails/?id=3113065208
More Dwarf Fortress guilds
- All Guilds
- Force Militia to Equip Boots+Gauntlets
- Infinite Steel (Leggings Exploit)
- Turn Obsidian into Sand
- Making Artificial Volcanoes and Magma Landmines
- How to Create Squads
- Red's Waterwheel'd Power'd Wells.
- Monster slayer guide for your fortress
- Make Dwarf Therapist work with new versions of DF
- Libraries tutorial
- Dwart Fortress Trke Rehber