Изменение Меню
Изменение шрифта в главном меню
По умолчанию Source SDK настраивает мод для использования шрифта Halflife2 для заголовка.
С виду это неплохой шрифт, но он ориентирован к использованию в HalfLife2 в нем многие символы отсутствуют или выглядят как оружие или специальные символы.
Для настройки вашего мода к использованию более приемлимого шрифта требуется внести изменения в файл resource/ClientScheme.res (редактируется текстовым редактором).
Если вы будите пытаться открыть данный файл с помощью Visual Studio возможны проблемы с отображением содержимого.
Найдите в файле секцию ClientTitleFont
Имя шрифта соответствует специфическому имени шрифта, которое можно узнать открыв .ttf файл шрифта программой просмотра:

Если вы используете свой собственный шрифт (который обычо не поставляется с WINDOWS), потребуется добавление записи в секцию CustomFontFiles:
Изменение заголовка (title)
Первоначально имеющийся экран вашего мода при запуске показывает что это Halflife 2.
Естественно вы захотите это изменить, тогда вносите измение в файл scripts/gameinfo.txt
title — это и есть заголовок который мы захочем сменить
type — указывает что это одиночный тип игры
Внимание! не путайте файл scripts/gameinfo.txt с другими файлами имеющими такое же имя в других директориях.
Добавление собственной консольной команды в меню
В файле resource/gamemenu.res содержится скрипт описывающий какие будут присутствовать пункты меню в вашем моде.
Файл рабит на сейкции соответствующие каждому пункуту меню, такого вида
«command» — комманда кторая будет обработана движком, если команда начинается с текста «engine «, все что правее него будет выполнено так как это бы вводилось с консоли.
Например:
«notmulti» — использовать только для сингл-плеера
«OnlyInGame» — использовать только во время выполнения игры
Сами тексты которые отображаются в меню хранятся в файлах resource/gameui_*.txt (соответственно языковой версии).
Изменение фоновых картинок
Half-Life2 загружает 3D анимированные фоновые карты, этот механизм описан в документации по SDK:
http://www.valve-erc.com/srcsdk/Levels/background_maps.html.
Файл scripts/ChapterBackgrounds.txt в вашей директории мода связывает фоновые карты с определенными эпизодами игры.
Этот файл представляет собой список всех эпизодов в игре, и указывает какие фоны из каких BSP файлов будут загружены когда эпизод будет разблокирован в процессе прохождения сценария игроком.
Для загрузки этих картинок используются те же имена, указанные в файле ChapterBackgrounds.txt.
TGA картинки используемые для фонов должны быть кратны размерам 512×512 (1024×1024) пикселей, и иметь 24 битную глубину цвета.
Для использования своего набора картинок воссоздайте структуру файлов в той же последовательности что и внутри .gcf файла в директорию вашего мода.
Для преобразования из .tga в .vtf, используйте утилиту vtex.exe (этот файл обычно находится в директории C:\program files\Valve\Steam\SteamApps\username\sourcesdk\bin.
Если например .tga находятся в директории materialsrc\console, vtex автоматически поместит .vtf в директорию materials\console.
Для создания соответствующих VMT лучше взять за основу оригинальные файлы из .gcf, изменение внесите в тектовом редакторе (notepad) и сохраните в директорию materials\console. Для пример, вот так будет выглядеть файл background01.vmt:
Создание статического фона для меню
Используя всю вышеприведенную информацию, создайте вашу фоновую картинку с именем background01.tga и преобразуйте из формата TGA в VTF. Поместите VTF в директорию materials/console, если этой директории у вас нет — создайте.
Теперь нужно изменить файл cfg/valve.rc
Музыка и звуки в меню
Звуки наведения и кликов на кнопки меню находятся в файлах:
sound/UI/buttonclick.wav
sound/UI/buttonclickrelease.wav
sound/UI/buttonrollover.wav
Создайте файл с музыкальным треком и поместите его в директорию sound/media
В файле cfg/valve.rc укажите
Иконки в меню выбора эпизодов (синглплеер)
Замените материалы в файлах materials/vgui/chapters/*.vtf на ваши собственные (если их нет — создайте на основе тех которые в hl2).
Ссылки
http://www.chatbear.com/…
http://www.sourcewiki.org/wiki/index.php/Main_Menu_Editing
http://www.sourcewiki.org/wiki/index.php/MainMenuEditingPart2
По умолчанию Source SDK настраивает мод для использования шрифта Halflife2 для заголовка.
С виду это неплохой шрифт, но он ориентирован к использованию в HalfLife2 в нем многие символы отсутствуют или выглядят как оружие или специальные символы.
Для настройки вашего мода к использованию более приемлимого шрифта требуется внести изменения в файл resource/ClientScheme.res (редактируется текстовым редактором).
Если вы будите пытаться открыть данный файл с помощью Visual Studio возможны проблемы с отображением содержимого.
Найдите в файле секцию ClientTitleFont
ClientTitleFont
{
"1"
{
"name" "GothicI"
"tall" "72"
"weight" "400"
"antialias" "1"
"custom" "1"
}
}
Параметр custom указывает использовать собственно поставляемый шрифт,
иначе будет производится поиск в системной директории WINDOWS/FONTS.Имя шрифта соответствует специфическому имени шрифта, которое можно узнать открыв .ttf файл шрифта программой просмотра:

Если вы используете свой собственный шрифт (который обычо не поставляется с WINDOWS), потребуется добавление записи в секцию CustomFontFiles:
CustomFontFiles
{
"1" "resource/HALFLIFE2.ttf"
"2" "resource/HL2crosshairs.ttf"
"3" "resource/GothicI.ttf"
}
Если у вас используется нестандартный шрифт, убедитесь что поместили соответствующий
файл шрифта в директорию resource.Изменение заголовка (title)
Первоначально имеющийся экран вашего мода при запуске показывает что это Halflife 2.
Естественно вы захотите это изменить, тогда вносите измение в файл scripts/gameinfo.txt
GameInfo
{
game "MyMod"
title "My Mod Name"
type singleplayer_only
}
game — отображается в заголовке окна программыtitle — это и есть заголовок который мы захочем сменить
type — указывает что это одиночный тип игры
Внимание! не путайте файл scripts/gameinfo.txt с другими файлами имеющими такое же имя в других директориях.
Добавление собственной консольной команды в меню
В файле resource/gamemenu.res содержится скрипт описывающий какие будут присутствовать пункты меню в вашем моде.
Файл рабит на сейкции соответствующие каждому пункуту меню, такого вида
"7"
{
"label" "#GameUI_GameMenu_SaveGame"
"command" "OpenSaveGameDialog"
"notmulti" "1"
"OnlyInGame" "1"
}
«label» — устанавливает текстоый ресурс элемента меню«command» — комманда кторая будет обработана движком, если команда начинается с текста «engine «, все что правее него будет выполнено так как это бы вводилось с консоли.
Например:
"command" "engine cl_showfps 1"это позволит включать отображение экрана fps с помощью кнопки меню
«notmulti» — использовать только для сингл-плеера
«OnlyInGame» — использовать только во время выполнения игры
Сами тексты которые отображаются в меню хранятся в файлах resource/gameui_*.txt (соответственно языковой версии).
Изменение фоновых картинок
Half-Life2 загружает 3D анимированные фоновые карты, этот механизм описан в документации по SDK:
http://www.valve-erc.com/srcsdk/Levels/background_maps.html.
Файл scripts/ChapterBackgrounds.txt в вашей директории мода связывает фоновые карты с определенными эпизодами игры.
Этот файл представляет собой список всех эпизодов в игре, и указывает какие фоны из каких BSP файлов будут загружены когда эпизод будет разблокирован в процессе прохождения сценария игроком.
"chapters"
{
1 "background01"
2 "background01"
3 "background02"
4 "background02"
5 "background03"
6 "background03"
7 "background04"
8 "background04"
9 "background05"
9a "background05"
10 "background06"
11 "background06"
12 "background07"
13 "background07"
14 "background07"
15 "background07"
}
Если в даннй момент нет фоновой карты, например, если она еще загружается —
будет отображена статическая фоновая картинка.
Такие картинки помещаются в директории materials/console,
она находится в файле source materials.gcf.Для загрузки этих картинок используются те же имена, указанные в файле ChapterBackgrounds.txt.
materials\console\ ... background01.vtf background01.vmt background01_widescreen.vtf background01_widescreen.vmt ...VTF — это Формат текстур Valve (Valve`s Texture Format), VMT — это текстовый файл который содержит описание материала — подробнее ознакомиться с его форматом можно в документации по SDK в секции Материалы (Materials) — http://www.valve-erc.com/srcsdk/.
TGA картинки используемые для фонов должны быть кратны размерам 512×512 (1024×1024) пикселей, и иметь 24 битную глубину цвета.
Для использования своего набора картинок воссоздайте структуру файлов в той же последовательности что и внутри .gcf файла в директорию вашего мода.
C:\MyMod\ModName\materials C:\MyMod\ModName\materials\console\ C:\MyMod\ModName\materialsrc C:\MyMod\ModName\materialsrc\consoleРазработчики из Valve подразумевают что в директории materialsrc у вас сохраняются ваши исходные TGA файлы. Директория materials хранит преобразованные VTF и соответствующие им VMT файлы.
Для преобразования из .tga в .vtf, используйте утилиту vtex.exe (этот файл обычно находится в директории C:\program files\Valve\Steam\SteamApps\username\sourcesdk\bin.
Если например .tga находятся в директории materialsrc\console, vtex автоматически поместит .vtf в директорию materials\console.
Для создания соответствующих VMT лучше взять за основу оригинальные файлы из .gcf, изменение внесите в тектовом редакторе (notepad) и сохраните в директорию materials\console. Для пример, вот так будет выглядеть файл background01.vmt:
"UnlitGeneric"
{
"$basetexture" "console/background01"
"$vertexcolor" 1
"$vertexalpha" 1
"$ignorez" 1
"$no_fullbright" "1"
"$nolod" "1"
}
Создание статического фона для меню
Используя всю вышеприведенную информацию, создайте вашу фоновую картинку с именем background01.tga и преобразуйте из формата TGA в VTF. Поместите VTF в директорию materials/console, если этой директории у вас нет — создайте.
Теперь нужно изменить файл cfg/valve.rc
//exec default.cfg exec joystick.cfg exec autoexec.cfg stuffcmds startupmenuЗдесь мы рассмотрим строку
startupmenuЕсли закоментировать ее,
//startupmenuто предыдущая фоновая карта будет заменена на постоянную статическую картинку.
Музыка и звуки в меню
Звуки наведения и кликов на кнопки меню находятся в файлах:
sound/UI/buttonclick.wav
sound/UI/buttonclickrelease.wav
sound/UI/buttonrollover.wav
Создайте файл с музыкальным треком и поместите его в директорию sound/media
В файле cfg/valve.rc укажите
play media/MySound.wav
Иконки в меню выбора эпизодов (синглплеер)
Замените материалы в файлах materials/vgui/chapters/*.vtf на ваши собственные (если их нет — создайте на основе тех которые в hl2).
Ссылки
http://www.chatbear.com/…
http://www.sourcewiki.org/wiki/index.php/Main_Menu_Editing
http://www.sourcewiki.org/wiki/index.php/MainMenuEditingPart2