урок 7.4
свойства Game и Info объектов
Свойства всех Game-объектов
Game-объекты не так часто применяются на картах, тем не менее некоторые из них могут пригодиться для реализации определенных целей. В 3-d виде редактора Game-объекты изображаются в виде ярко-синих кубиков с подписями, как на приведенных ниже рисунках.
1. Game_counter
Активирует указанный объект после заданного количества своих собственных активаций.
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Target
Имя объекта, который активируется после заданного числа активаций game_gounter
Deley before trigger
Время в секундах перед активацией объекта, указанного в «Target»
Killtarget
Имя объекта, который нужно уничтожить после указанного числа активаций game_counter (Внимание! Объект будет удален на все оставшиеся раунды!)
Master
Имя объекта multisource или game_team_master
Init value
Начальное значение счетчика
Limit value
Когда число активаций game_counter'а достигнет этого значения, произойдет активация объекта, указанного в «Target»
флаги:
Remove on fire
Если отмечено, то game_counter будет удален после указанного числа активаций (Внимание! Объект будет удален на все оставшиеся раунды!)
Reset on fire
Если отмечено, то при активации объекта, указанного в «Target», значение счетчика будет сброшено на начальное
2. Game_counter_set
Данный объект используется для изменения значения счетчика game_counter.
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Target
Имя объекта game_counter для изменения значения счетчика
Master
Имя объекта multisource или game_team_master
New value
Новое значение счетчика
флаги:
Remove on fire
Если отмечено, то game_counter_set будет удален после своей активации (Внимание! Объект будет удален на все оставшиеся раунды!)
3. Game_end
При активации game_end происходит смена карты. Загружается следующая из списка в файле mapcycle.txt
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Master
Имя объекта multisource или game_team_master
4. Game_player_equip
Этот объект позволяет определить начальное вооружение и набор вещей, которые будут выданы игроку, как только он присоединися к игре. Если Вы поставите этот объект на карту, то игроки будут иметь только то оружие и те вещи, которые указанные в нем. Если активировать данный объект только для одной команды (используя game_team_master), то игроки другой команды будут экипированы только бронежилетами.
свойства:
Name
Если дать этому объекту имя, то его можно будет активировать кнопкой или другим триггером. Чтобы оружие выдавалось при присоединении игрока к игре, не давайте имени
Team Master
Имя объекта multisource или game_team_master
В списке Вы вибираете вид оружия, количество патронов к нему, типы гранат (flash-гранат можно дать две) и пр. Просто укажите Yes или No напротив того или иного объекта (Yes — выдавать объект игроку,
No — не выдавать)
флаги:
Use only
Если отмечено, то оружие и прочие вещи будут выдаваться, только при нажатии на «Use» (по умолчанию кнопка «Е»)
5. Game_player_hurt
При активации наносит повреждения игроку. Объект схож по действию с trigger_hurt, но в отличии от него повреждает игрока взависимости от его (игрока) действий, а не от его (игрока) месторасположения. Возможно также лечение (прибавление здоровья) игрока. Для этого необъодимо указать отрицательное значение в параметре «Damage to Apply». Простым примером использования game_player_hurt может послужить кнопка при нажатии на которую игрок получит повреждение. Также возможно ограничить действие game_player_hurt только на одну команду (для этого необходимо использовать объект game_team_master).
свойства:
Name
Дайте этому объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Damage to apply
Количество отнимаемых процентов жизни. Отрицательное значение для прибавления (лечения)
Team Master
Имя объекта multisource или game_team_master
флаги:
Remove on fire
Если отмечено, то после активации, game_player_hurt будет удален (Внимание! Объект будет удален на все оставшиеся раунды!)
6. Game_player_team
Объект позволяет игроку, активировавшему его, сменить команду.
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Game_team_master to use
Имя объекта game_team_master, в котором указывается новая команда
Team Master
Имя объекта multisource или game_team_master
флаги:
Remove on fire
Если отмечено, то после активации, game_player_team будет удален (Внимание! Объект будет удален на все оставшиеся раунды!)
Kill player
Если отмечено, то при смене команды игрока убъет
Gib player
Если отмечено, то при смене команды игрока разорвет на куски
7. Game_score
Объект прибаляет или отнимает фраги у игрока или команды.
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Points to add (+/-)
Количество добавляемых или отнимаемых фрагов
Master
Имя объекта multisource или game_team_master
флаги:
Allow negative
Если отмечено, то при отнятии фрагов разрешается делать их число отрицательным
Team points
Если отмечено, то фрагу будут добавляться или наооборот отниматься у всей команды, игрока активировавшего game_score
8. Game_team_master
Объект используется как реле, позволяет активировать другой объект только определенной команде.
свойства:
Name
Если game_team_master используется как реле, то объекту необходимо дать имя, чтобы его можно было активировать кнопкой или другим триггером
Target
Если game_team_master используется как реле, то объект, чье имя указано здесь будет активирован
ay before trigger
Время в секундах перед активацией объекта, указанного в «Target»
Kill target
Если game_team_master используется как реле, то объект, чье имя указано здесь будет удален (Внимание! Объект будет удален на все оставшиеся раунды!)
Trigger state
Состояние переключателя, оно может быть:
on — Работает только на включение объекта, т.е. действует только на выключенный объект
off — Работает только на выключенние объекта (например, выключает горящую лампочку или играющий звук)
toggle — Активирует объект независимо от состояния
Team index
Команда, которая может активировать объект, указанный в «Target» («1» — террористы, «2» — контры,
«-1» — любая из команд)
Master
Имя объекта multisource или game_team_master
флаги:
Remove on fire
Если отмечено, то после активации, game_team_master будет удален (Внимание! Объект будет удален на все оставшиеся раунды!)
9. Game_team_set
При активации изменяет индекс команды в объекте game_team_master на индекс команды игрока, активировавшего его.
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Target
Имя объекта game_team_master, в котором нужно изменить индекс команды
Delay before trigger
Время в секундах перед изменением индекса команды
Kill target
Имя объекта, который нужно уничтожить после активации game_team_set (Внимание! Объект будет удален на все оставшиеся раунды!)
Master
Имя объекта multisource или game_team_master
флаги:
Remove on fire
Если отмечено, то после активации, game_team_set, будет удален (Внимание! Объект будет удален на все оставшиеся раунды!)
10. Game_text
Позволяет выводить сообщение на экран. Данный объект является заменой объекту env_message. Для вывода сообщения в несколько строк следует ставить \n в том месте, где заканчивается строка (например, Это строка один\nЭто строка 2). Не используйте сообщения длиннее 127 букв — это может вызвать сбой в работе редактора (эта проблема была актуальна для WorldCraft 3.3).
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Target
Имя объекта, который активируется после срабатывания game_text
Message text
Текст сообщения, который будет отображен на экране
X (0 - 1.0 = left to right) (-1 = center)
Положение текста на экране по оси Х (слева-направо) («-1» — текст по центру)
Y (0 - 1.0 = top to bottom) (-1 = center)
Положение текста на экране по оси Y (сверху-вниз) («-1» — текст по центру)
Text effect
«0»-Fade In/Out, «1»-Credits, «2»-Scan Out — Варианты эффектов появления текста
Color1
Основной цвет текста
Color2
Цвет подсветки
Fade in time (or character scan time)
Время в секундах появления текста
Fade out time
Время в секундах исчезания текста
Hold time
Время в секундах, которое текст будет отображен на экране
Scan time (scan effect only)
Задержка между прорисовкой букв и строк при использовании эффекта Scan Out
Text chanel
Текст может быть отображен в одном из четырех каналов. При использовании одного и того же канала в разных объектах game_text, предыдущая информация стирается
Master
Имя объекта multisource или game_team_master
флаги:
All players
Если отмечено, то текст будет отображен у всех игроков (не только у того, который активирует game_text)
11. Game_zone_player
Активирует объект взависимости от расположения игроков по отношению к себе.
свойства:
Name
Дайте объекту имя, чтобы его можно было активировать кнопкой или другим триггером
Target for IN players
Имя объекта, который будет активирован для всех игроков, находящихся в зоне действия game_zone_player
Target for OUT players
Имя объекта, который будет активирован для всех игроков, находящихся вне зоны действия game_zone_player
Counter for IN players
Имя объекта game_counter, который будет иметь значение, равное количеству игроков в зоне действия объекта game_zone_player
Counter for OUT players
Имя объекта game_counter, который будет иметь значение, равное количеству игроков вне зоны действия объекта game_zone_player
Master
Имя объекта multisource или game_team_master
Пример использования: предположим, что на карте есть кнопка, которая активирует game_zone_player, а тот в свою очередь активирует 2 цели: параметр «Target for IN players» активирует объект game_score, который добавляет фраги всем игрокам, находящимся в зоне действия game_zone_player, а параметр «Target for OUT players» одновременно активирует другой game_score, который отнимает фраги у всех игроков, находящихся вне зоны действия game_zone_player
Свойства всех Info-объектов
Самыми часто используемыми Info-объектами являются info_player_deathmatch и info_player_start, без которых необходится ни одна карта. Остальные объекты применяются довольно редко.
1.info_bomb_target
На de-картах этот объект определяет точку для закладки бомбы. Рекомендуем вместо info_bomb_target использовать func_bomb_target для более точного определения места закладки бомбы.
2. Info_compile_parameters
Данный объект позволяет определить параметры компиляции в своих свойствах и не вводить их в командной строке. Работает только с улучшенной версией компиляторов ZHLT (Custom Build от Anthony Moore aka «Merl»).
Если у Вас нет данного объекта, откройте FGD-файл (обычно он лежит в директории X:\Hammer\FGD\Counter-Strike) и вставьте следующий код в конце этого файла:
@PointClass size(-8 -8 0, 8 8 32) = info_compile_parameters : "Compile Options"
[
hlcsg(choices) : "HLCSG" : 1 =
[
1 : "Normal"
2 : "Onlyents"
0 : "Off"
]
hlbsp(choices) : "HLBSP" : 1 =
[
0 : "Off"
1 : "Normal"
2 : "Leakonly"
]
hlvis(choices) : "HLVIS" : 2 =
[
0 : "Off"
1 : "Fast"
2 : "Normal"
3 : "Full"
]
hlrad(choices) : "HLRAD" : 1 =
[
0 : "Off"
1 : "Normal"
2 : "Extra"
]
texdata(string) : "Texture Data Memory (in KB)" : "4096"
estimate(choices) : "Estimate Compile Times?" : 0 =
[
0: "Yes"
1: "No"
]
bounce(integer) : "Number of radiosity bounces" : 0
ambient(string) : "Ambient world light (0.0 to 1.0, R G B)" : "0 0 0"
smooth(integer) : "Smoothing threshold (in degrees)" : 0
dscale(integer) : "Direct Lighting Scale" : 1
chop(integer) : "Chop Size" : 64
texchop(integer) : "Texture Light Chop Size" : 32
hullfile(string) : "Custom Hullfile"
priority(choices) : "Priority Level" : 0 =
[
0 : "Normal"
1 : "High"
-1 : "Low"
]
wadautodetect(choices) : "Wad Auto Detect" : 0 =
[
0 : "Off"
1 : "On"
]
wadconfig(string) : "Custom Wad Configuration" : ""
verbose(choices) : "Verbose compile messages" : 0 =
[
0 : "Off"
1 : "On"
]
noclipeconomy(choices) : "Strip Uneeded Clipnodes?" : 1 =
[
1 : "Yes"
0 : "No"
]
nocliphull(choices) : "Generate clipping hulls" : 0 =
[
0 : "Yes"
1 : "No"
]
noskyclip(choices) : "No Sky Clip" : 0 =
[
1 : "On"
0 : "Off"
]
sparse(choices) : "Vismatrix Method" : 2 =
[
0 : "No Vismatrix"
1 : "Sparse Vismatrix"
2 : "Normal"
]
circus(choices) : "Circus RAD lighting" : 0 =
[
0 : "Off"
1 : "On"
]
]
свойства:
Texture Data Memory
Максимальный размер памяти, выделяемый для текстур в Кб (по умолчанию 4 Мб). Если на Вашей карте используется бОльшее количество текстур — увеличьте этот параметр
Estimate Compile Times ?
Показывать расчетное время компиляции (yes — показывать, no — не показывать)
Number of radiosity bounces
Число отражений света. К моменту выполнения данной операции все данные уже предварительно посчитаны, так что дополнительное число отражений не займет много времени. Увеличение числа отражений приводит к сглаживанию теней и освещению темных мест на карте более реальным образом
Ambient world light
Освещенность окружающего мира (от 0.0 до 1.0, формат RGB). Эта опция устанавливает минимальную "яркость" каждой поверхности карты для того, чтобы ни одна из них не была полностью черной. Параметры соответствуют красному, зеленому и синему цвету со значениями от 0.0 до 1.0
Smoothing threshold (in degrees)
Порог сглаживания (в градусах). Если угол между двумя поверхностями меньше указанного в этом параметре, расчет освещения будет сделан с использованием технологии сглаживания (имитации плавного перехода — округлости — между поверхностями)
Direct Lighting Scale
Множитель для освещения. Для создания наиболее реалистичных карт необходимо производить расчет прямого освещения один раз (значения: «1» — наиболее реалистичные тени и освещение, «0» — удалит прямое освещение из карты и оставляет только отраженный свет, «3-4» — сильный контраст между тенями и освещенными участками)
Chop Size
Размер патча для обычных текстур. Увеличивая размер патча можно ускорить выполнение hlrad и уменьшить потребность в памяти, однако это приведет к потере качества на готовой карте (неровные, угловатые, нереалистичные тени). Уменьшение же размера патча наоборот приведет к более качественному освещению карты, но потребует больше ресурсов компьютера
Texture Light Chop Size
Размер патча для светящихся текстур. Обычно, размер патча должен быть равен половине размера патча обычных текстур для того, чтобы освещение выглядело хорошо
Custom Hullfile
Загрузить собственный файл с информацией об ограничительных областях
флаги:
Run CSG
Запускать CSG
No Clip
Отключить создание ограничительных областей на карте. Игрок не только сможет ходить сквозь стены, но и проваливаться сквозь землю (если гравитация включена)
Only Ents
Обновить значение параметров энтитей из исходника *.map в готовой карте *.bsp
No Sky Clip
Отключить ограничение карты небом
Run BSP
Запускать BSP
Leak Only
Запустить HLBSP только для поиска дырок (ошибка LEAK)
No Clip
Не обрабатывать ограничительную область
Run VIS
Запускать VIS
Fast
Ускоренный анализ видимых областей на карте
Run RAD
Запускать RAD
Sparse
Задействовать алгоритм с матрицей с ограниченной памятью
Circus Mode
Разрешить режим «circus» для обнаружения неосвещенных участков. Это отладочная опция, которая заменяет все черные точки на любой поверхности на случайный яркий цвет
Extra Mode
Включить более точный расчет освещения (9 point oversampling)
3. Info_hostage_rescue
На cs-картах данный объект определяет место, куда следует отводить спасаемых заложников. Рекомендуем вместо info_hostage_rescue использовать func_hostage_rescue для более точного определения места спасения.
4. Info_lights_rad
Этот объект выполняет функцию RAD-файла, который содержит информацию о светящихся текстурах на Вашей карте (пока что не используется компиляторами). В улучшенной версии компиляторов ZHLT 2.5.3 (Custom Build) для этих целей используется объект info_texlights.
5. Info_map_parameters
В свойствах этого объекта можно указать какая из команд может покупать оружие, а также радиус взрыва бомбы на de-картах.
свойства:
Weapon_buying
Здесь указывается, какая из команд может покупать оружие (только террористы / только контры / обе могут покупать / обе не могут)
Bomb radius
Здесь указывается радиус взрыва бомбы (по умолчанию 500 юнитов)
6. Info_null
Данный объект используется в качестве мишени для объекта light_spot.
свойства:
Name
Присвойте данному объекту имя, а затем пропишите его же в параметре «Target» объекта light_spot, тогда свет будет направлен в сторону info_null
7. Info_player_deathmatch
Объект определяет собой место появления 1 террориста. Следите за тем, чтобы данный объект находился на некотором расстоянии над поверхностью земли, а также не был «вмонтирован» в стены и не касался других таких же объектов, иначе, родившись, игрок не сможет двигаться или вовсе умрет.
Параметром «Angle» Вы можете задать направление взгляда игрока, после его появления. Это бывает полезно сделать, если игрок смотрит в стену и нужно тратить время в начале раунда на разворот. Нужный угол легко определить в редакторе на виде сверху.
8. Info_player_start
Объект определяет собой место появления контр-террориста. Следите за тем, чтобы данный объект находился на некотором расстоянии над поверхностью земли, а также не был «вмонтирован» в стены и не касался других таких же объектов, иначе, родившись, игрок не сможет двигаться или вовсе умрет.
Параметром «Angle» Вы можете задать направление взгляда игрока, после его появления. Это бывает полезно сделать, если игрок смотрит в стену и нужно тратить время в начале раунда на разворот. Нужный угол легко определить в редакторе на виде сверху.
9. Info_target
Используется в качестве мишени для некоторых объектов, например, trigger_camera, env_beam и некоторых др.
свойства:
Name
Присвойте данному объекту имя, а затем пропишите его же в параметре «Target» объекта trigger_camera, тогда камера будет показывать на info_target. Для камеры не обязательно нужно использовать info_target, можно указать любой другой объект с именем, тогда камера будет показывать на него. Info_target используется просто для удобства (т.к. он не требует выставления практически никаких свойств)
10. Info_teleport_destination
Объект определяет собой точку, в которую переместится игрок, активировавший (прошедший через) телепорт trigger_teleport.
11. Info_texlights
Этот объект выполняет функцию RAD-файла, в котором содержится информация о светящихся текстурах на Вашей карте. Работает только в улучшенной версии компиляторов ZHLT (Custom Build).
Отключите кнопку «SmartEdit», нажмите кнопку «Add», в поле «Key:» впишите название светящейся текстуры, а в поле «Value:» цвет излучаемого текстурой света и его яркость в формате RGB XXX, где XXX — яркость (например, 1000 или 20000)
В версии 0.7.7 fgd-файла такого объекта нет. Его можно легко добавить. Для этого откройте fgd-файл в подходящем текстовом редакторе и в конец добавьте следующую строку:
@PointClass color(255 128 0) = info_texlights : "Texture Light Config" []
Не забудьте сохранить файл с расширением *.fgd
12. Info_vip_start
Объект определяет собой место появления VIP'a на as-картах. Следите за тем, чтобы данный объект находился на некотором расстоянии над поверхностью земли, а также не был «вмонтирован» в стены и не касался других таких же объектов, иначе, родившись, игрок не сможет двигаться или вовсе умрет.
Параметром «Angle» Вы можете задать направление взгляда игрока, после его появления. Это бывает полезно сделать, если игрок смотрит в стену и нужно тратить время в начале раунда на разворот. Нужный угол легко определить в редакторе на виде сверху.
13. Infodecal
Этот объект позволяет вставлять на карту (а точнее наносить) декали, т.е. специальные текстуры, которые накладываются поверх основной текстуры для иммитации различных царапин, следов взрывов гранат, дыр от пуль и т.п.