Содержание:
1 Документация по инструменту импорта

1.1 Необходимые условия
1.1.1 Предварительно скомпилированный контент
1.1.2 Исходные файлы карт
1.1.3 Исходные файлы текстур
1.2 Начало работы
1.2.1 1. Установка Python 2.7.14
1.2.2 2. Установка переменных среды
1.2.3 3. Установка расширения Colorama
1.2.4 4. Создание нового аддона с помощью инструментов мастерской
1.2.5 5. Нахождение скриптов импорта
1.2.6 6. Запуск скрипта + параметры
1.2.6.1 Параметры скрипта
1.2.7 7. Исправление после импорта
1.2.8 Экспериментальное GU
2 Устранение неполадок

В состав инструментов Мастерской CS2 мы включили скрипт Python, который поможет создателям контента быстро перенести карты и активы в Source 2. Прежде чем приступить к работе, необходимо выполнить некоторые подготовительные действия.

Необходимые условия

Предварительно скомпилированный контент

Предварительно скомпилированный контент (например, любые пользовательские vmt, vtf, mdl и т.д.) должен быть расположен в папке
Steam\steamapps\common\Counter-Strike Global Offensive\csgo папке. Например:

  • Steam\steamapps\common\Counter-Strike Global Offensive\csgo\materials
  • Steam\steamapps\common\Counter-Strike Global Offensive\csgo\models
Любое пользовательское содержимое, заархивированное в .bsp, необходимо извлечь в соответствующие папки перед импортом. Инструмент импорта также требует vmf, поэтому если у вас есть только bsp для вашей карты, вам нужно будет декомпилировать его в vmf. Наконец, не копируйте файлы .vmf в указанную выше папку, так как это запутает инструмент импорта.

Исходные файлы карт
Ваши файлы карт (vmfs) могут находиться в любом месте за пределами Counter-Strike Global Offensive при условии, что они находятся в maps папке. Любой префаб или экземпляр vmfs, на который ссылается ваша карта, должен находиться в той структуре вложенных папок, которая предполагается картой. Например:

  • c:\mymapfolder\maps\mymap.vmf
  • c:\mymapfolder\maps\prefabs\mymapprefab.vmf
  • c:\mymapfolder\maps\instances\mymapinsstance.vmf
Исходные файлы текстур
Если у вас есть несжатые исходные файлы текстур (tga, psd и т.д.), инструмент импорта попытается использовать их при импорте материалов, в противном случае он вернется к конвертированию и повторному сжатию файлов vtf (что может снизить качество текстур). Для успешного выполнения этой операции убедитесь, что ваши исходные файлы находятся в зеркальном отображении файлов vtf в папке \Steam\steamapps\common\Counter-Strike Global Offensive\csgo\materials. Например:

  • C:\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\materials\mymaterial\mytexture.vtf
  • C:\mymapfolder\materials\mymaterial\mytexture.tga

Начало работы


1. Установка Python 2.7.14

Для выполнения сценария импорта вам потребуется установить Python 2.7.14, который вы можете взять здесь: https://www.python.org/downloads/release/python-2714/.

2. Настройка переменных среды
Далее вам нужно будет установить две переменные пути окружения, чтобы Windows знал, где находится ваша установка python и другие библиотеки импорта в
Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\bin\win64 папке:
Нажмите клавиши ⊞ Win+X, чтобы открыть меню задач пользователя.

  • В меню задач опытного пользователя выберите пункт Система.
  • В окне Система прокрутите страницу в самый низ и щелкните опцию О программе.
  • В окне Система > О программе нажмите ссылку Дополнительные параметры системы в нижней части раздела Характеристики устройства.
  • В окне Свойства системы перейдите на вкладку Дополнительно, а затем нажмите кнопку Переменные среды в нижней части этой вкладки.
  • В окне Переменные среды (на рисунке ниже) выделите переменную Path в разделе Системные переменные и/или нажмите кнопку Создать.
  • Добавьте переменную path, где Value - это путь к месту установки Python, а путь к вашему Counter-Strike Global Offensive\game\bin\win64 разделенный точкой с запятой. Например.
    C:\python27;
    C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game\bin\win64
  • Сделайте это как для переменных пользователя, так и для системных переменных:

1.png

Чтобы убедиться в правильности применения переменных Path, может потребоваться перезагрузка компьютера.

3. Установка расширения Colorama
Далее вам понадобится расширение Python под названием colorama. Чтобы установить его, просто откройте командную строку (найдите cmd в меню "Пуск" Windows) и введите

Код:
python -m pip install colorama
2.png


4. Создание нового аддона с помощью инструментов мастерской

Перед запуском импорта необходимо создать аддон Workshop Tools, чтобы у импортируемого содержимого было действительное место назначения. Чтобы создать новый аддон, просто запустите игру с помощью Workshop Tools, в пользовательском интерфейсе нажмите "Создать новый аддон" и запишите название для дальнейшего использования.

3.png

5. Нахождение скриптов импорта

Сначала нужно найти скрипт импорта python, который можно найти в следующей папке:
(YourSteamInstallFolder)\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\import_scripts
4.png
После того как вы нашли папку, откройте командную строку. Это можно сделать, просто набрав "cmd" в адресной строке проводника Windows и нажав клавишу Enter:

5.png

Существует также экспериментальный графический интерфейс под названием import_map_community_gui.exe более подробную информацию о нем можно найти в конце этого документа.

Запуск скрипта + параметры
Теперь вы готовы запустить скрипт, введя следующее:
Код:
python import_map_community.py <s1gameinfopath> <s1contentpath> <s2gameinfopath> <s2addon> <mapname> -usebsp

Параметры скрипта

<s1gameinfopath>
Путь к папке, содержащей файл gameinfo.txt CS:GO, это ДОЛЖЕН быть путь, содержащий скомпилированные модели CS:GO и материалы, которые вы хотите импортировать (например, .mdl, .vmt).

<s1contentpath>
Путь к папке с исходным содержимым (.vmf.psd.tgaи т.д.). Как упоминалось выше, чтобы импортер мог успешно найти и использовать исходные файлы текстур, убедитесь, что они находятся в зеркальном отображении по отношению к .vtfs(см. пример выше).

Путь к содержимому S1 не может содержать пробелов.

<s2gameinfopath>
Путь к папке, содержащей файл gameinfo.gi в CS2

<s2addon>
Имя аддона CS2 Workshop, который вы создали ранее. Именно сюда будут импортированы ваши активы.

<mapname>
Это имя карты (.vmf) без расширения, например, de_examplemap, которую вы хотите импортировать. Если ваша карта находится в подкаталоге
maps в папке <s1contentpath>. Обязательно добавьте этот путь перед именем вашей карты. Например:
my_maps/de_examplemap

-usebsp

При этом карта проходит через специальный процесс vbsp для создания чистой геометрии карты из кистей, удаляются скрытые грани и сшиваются края, что делает версию CS2 более удобной для работы в Hammer. Он сохраняет кисти мира (vis) и кисти func_detail для совместимости с Source 2. Этот параметр также объединит все func_instances в вашей карте. Обратите внимание, что конечная геометрия будет триангулирована, но ее очистка - довольно простой процесс, который будет описан в другом руководстве.

-usebsp_nomergeinstances
Используйте это вместо -usebsp, если вы хотите одновременно сгенерировать чистую гео и сохранить func_instances. Обратите внимание, что это занимает немного больше времени, так как процесс импорта выполняется дважды. Конечная геометрия также будет триангулирована.

-skipdeps
Необязательно: пропускает импорт всех зависимостей/контента и генерирует только файл(ы) vmap. Это обеспечивает "быстрый" импорт, например, при итерации сущностей. Не используйте эту опцию, если вы импортируете в первый раз.

Пример:
Код:
python import_map_community.py "C:\Steam\steamapps\common\Counter-Strike Global Offensive\csgo" "c:\map_sources\" "C:\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo" de_example_cs2 de_examplemap -usebsp

7. Исправление после импорта
После того, как ваш уровень будет импортирован, просмотрите шаги по исправлению после импорта

Экспериментальное GU
В (YourSteamInstallFolder)\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\import_scripts
мы включили экспериментальный GUI для импортера карт, который может помочь несколько упростить процесс импорта, под названием import_map_community_gui.exe

Преимуществом этого графического интерфейса являются полезные подсказки, легко выбираемые параметры импорта, а также запоминание настроек между сеансами. Обратите внимание, что для корректной работы вам все равно придется выполнить предварительные условия и шаги 1-4 выше. Мы также включили исходные python-скрипты, чтобы сообщество могло изменить их по своему усмотрению.
6.png

Устранение неполадок
Вы можете получить следующую ошибку при импорте, если вы используете скайбокс не по умолчанию. Измените свой skybox на sky_dust и попробуйте снова.
Код:
vpk:c:\program files (x86)\steam\steamapps\common\counter-strike global offensive\csgo\pak01.vpk:materials\skybox\sky_csgo_night_flatrt.vmt
Следующая ошибка указывает на то, что в вашем <s1contentpath> есть пробелы. Измените
Код:
Prepping bsp for S2 import!
Command line "./bin/vbsp.exe" "-game" "C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\csgo" "-prepfors2" "c:\my" "project/content/map.vmf