Изменение шрифта в главном меню
По умолчанию 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
Файл
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.
materialsconsole
...
background01.vtf
background01.vmt
background01_widescreen.vtf
background01_widescreen.vmt
...
VTF - это Формат текстур Valve (Valve's Texture Format),
VMT - это текстовый файл который содержит описание материала -
подробнее ознакомиться с его форматом можно в документации по SDK
в секции Материалы (Materials)
TGA картинки используемые для фонов должны быть кратны размерам 512x512 (1024x1024) пикселей,
и иметь 24 битную глубину цвета.
Для использования своего набора картинок воссоздайте структуру файлов в той же последовательности что и внутри .gcf файла
в директорию вашего мода.
C:MyModModNamematerials
C:MyModModNamematerialsconsole
C:MyModModNamematerialsrc
C:MyModModNamematerialsrcconsole
Разработчики из Valve подразумевают что в директории
materialsrc у вас сохраняются ваши исходные TGA файлы.
Директория
materials хранит преобразованные VTF и соответствующие им VMT файлы.
Для преобразования из .tga в .vtf, используйте утилиту
vtex.exe (этот файл обычно находится в директории
C:program filesValveSteamSteamAppsusernamesourcesdkbin.
Если например .tga находятся в директории
materialsrcconsole,
vtex автоматически поместит .vtf в директорию
materialsconsole.
Для создания соответствующих VMT лучше взять за основу оригинальные файлы из .gcf,
изменение внесите в тектовом редакторе (notepad) и сохраните в директорию
materialsconsole.
Для пример, вот так будет выглядеть файл 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/...
Автор:
DarkLight
© RealTeam 2005