Ru/Team Fortress 2/Docs/Level Design/Flag Based Goal Systems: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
'''Для создания режима захвата флага''' используем энтити <code>[[item_teamflag]]</code> - это будет сам флаг. Флаги члены команды должны нести на свою базу - <code>[[func_capturezone]]</code> [[Entity_Creation#Brush-based_entity_creation|браш-энтити]]. Это что то типа области, куда нужно доставить и откуда нужно украсть доки. Хотя <code>item_teamflags</code> и есть по идее флаг для захвата, но в игре будет отображаться как портфель с документами или просто "доки".  
'''Для создания режима захвата флага''' используем энтити <code>[[item_teamflag]]</code> - это будет сам флаг. Флаги члены команды должны нести на свою базу - <code>[[func_capturezone]]</code> [[Entity_Creation#Brush-based_entity_creation| - браш-энтити]]. Это что то типа области, куда нужно доставить и откуда нужно украсть доки. Хотя <code>item_teamflags</code> и есть по идее флаг для захвата, но в игре будет отображаться как портфель с документами или просто "доки".  


Энтити и input/output позволят сделать нам некоторые очень интересные с флагами вещи в Team Fortress 2.
Энтити и input/output позволят сделать нам некоторые очень интересные с флагами вещи в Team Fortress 2.
Line 14: Line 14:
==== Ориентиры для флага ====
==== Ориентиры для флага ====
[[image:Tf2_ctf_bas_lm1.jpg|thumb|right|100px| Опоры без флага.]]
[[image:Tf2_ctf_bas_lm1.jpg|thumb|right|100px| Опоры без флага.]]
Для примера, мы будем использовать 2 простых блока (браша), на которых будут лежать документы обеих команд, что то типа опор. Начнем с красной команды, создайте браш, к примеру 96 на 80 юнитов длиной\шириной и 48 юнитов высотой, покрасьте этот браш любой текстурой, например <code>"wood/grain_elevator_facade_14a"</code>, и превратим этот браш в энтитю "<code>func_detail</code>" - Edit -> Tie To Entity.
Для примера, мы будем использовать 2 простых блока (браша), на которых будут лежать документы обеих команд, что то типа опор. Начнем с красной команды, создайте браш (Shift+B), к примеру 96 на 80 юнитов длиной\шириной и 48 юнитов высотой, покрасьте этот браш любой текстурой (Shift+A), например <code>"wood/grain_elevator_facade_14a"</code>, и превратим этот браш в энтитю "<code>func_detail</code>" - Edit -> Tie To Entity (Ctrl+T).
{{clr}}
{{clr}}


==== Ориентиры для зоны захвата флага ====
==== Ориентиры для зоны захвата флага ====
[[image:Tf2_ctf_bas_lm2.jpg|thumb|right|100px| Неплохая граница для зоны захвата.]]
[[image:Tf2_ctf_bas_lm2.jpg|thumb|right|100px| Неплохая граница для зоны захвата.]]
Теперь создадим, как вы догадались, ориентир для зоны захвата.  Создайте ориентир-границу на основе браша, 16 в длину, 2 в высоту и 4 юнита в ширину. Красим браш в текстуру, чтобы придать ей визуальный стиль -  "<code>props/hazardstrip001a</code>" , после покраски превращаем в энтити - "<code>func_detail</code>".  Также можно поставить декаль "<code>signs/capture_zone</code>", чисто как украшение{{clr}}
Теперь создадим, как вы догадались, ориентир для зоны захвата.  Создайте ориентир-границу на основе браша, 16 в длину, 2 в высоту и 4 юнита в ширину. Красим браш в текстуру, чтобы придать ей визуальный стиль -  "<code>props/hazardstrip001a</code>" , после покраски превращаем в энтити - "<code>func_detail</code>".  Также можно поставить декаль (Shift+D) "<code>signs/capture_zone</code>", чисто как украшение{{clr}}


В принципе все выше описанное проделывать не обязательно, это служит чисто для визуального эффекта. Вы и сами можете поэкспериментировать с оформлением, ограничиваясь лишь своей фантазией. На стенах, к примеру, можно повесить различные указатели: [[prop_dynamic]] энтити, models/props_gameplay/sign_gameplay01_witharrow_r_sm.mdl Больше об устройстве карт можно почитать в [[TF2 Design Theory:ru]] - теории дизайна.
В принципе все выше описанное проделывать не обязательно, это служит чисто для визуального эффекта. Вы и сами можете поэкспериментировать с оформлением, ограничиваясь лишь своей фантазией. На стенах, к примеру, можно повесить различные указатели: [[prop_dynamic]] энтити, models/props_gameplay/sign_gameplay01_witharrow_r_sm.mdl Больше об устройстве карт можно почитать в [[TF2 Design Theory:ru]] - теории дизайна.


=== Энтити item_teamflag ===
=== Энтити item_teamflag ===
Далее, создаем энтити <code>item_teamflag</code> (будующий флаг) и помещаем его на заранее заготовленное место. В нашем примере мы делаем флаг для красной команды, поэтому в свойствах (Alt+Enter) <code>item_teamflag</code> значение опции ''team'' (команда) ставим на RED.
Далее, создаем энтити (Shift+E) <code>item_teamflag</code> (будующий флаг) и помещаем его на заранее заготовленное место. В нашем примере мы делаем флаг для красной команды, поэтому в свойствах Edit -> Properties (Alt+Enter) <code>item_teamflag</code> значение опции ''team'' (команда) ставим на RED.


=== Энтити func_capturezone ===
=== Энтити func_capturezone ===
[[Image:Tf2_ctf_bas_czone.jpg|thumb|right|100px|Документы и зона захвата красной команды.]]
[[Image:Tf2_ctf_bas_czone.jpg|thumb|right|100px|Документы и зона захвата красной команды.]]
Наконец, создаем зону захвата флага <code>func_capturezone</code> - [[Entity_Creation#Brush-based_entity_creation|браш-энтити]]. Длину\ширину сделайте такими, какими у вас в общем сделаны ориентиры и границы для флага, высоту можно сделать примерно в 160 юнитов. В опциях этой энтити (Alt+Enter) <code>func_capturezone</code> значение ''team'' (команда) ставим в нашем примере на RED.{{clr}}
Наконец, создаем зону захвата флага <code>func_capturezone</code> - [[Entity_Creation#Brush-based_entity_creation| - браш-энтити]]. Создаем браш, длину\ширину сделайте такими, какими у вас в общем сделаны ориентиры и границы для флага, высоту можно сделать примерно в 160 юнитов. Далее, Tools - Tie to Entity. В опциях этой энтити (Alt+Enter) <code>func_capturezone</code> значение ''team'' (команда) ставим в нашем примере на RED.{{clr}}


=== Заключение ===
=== Заключение ===
Line 53: Line 53:


=== Outputs флага ===
=== Outputs флага ===
[[Image:MultiCTF-Sequential.jpg|thumb|right|200px|The second flag in the multiple sequence, and its outputs.]]
[[Image:MultiCTF-Sequential.jpg|thumb|right|200px|Второй последовательный флаг и его output'ы.]]
Выберите флаг, который вы хотели бы сделать "первой жертвой" грязных рук игроков, в нашем примере это '''flag1'''. В его опциях нужно будет поставить Output'ы, для того чтобы включить в игру следующий флаг и убрать этот. Смотрим ниже и ставим все как на рисунке:
Выберите флаг, который вы хотели бы сделать "первой жертвой" грязных рук игроков, в нашем примере это '''flag1'''. В его опциях (Alt+Enter) нужно будет поставить Output'ы, для того чтобы включить в игру следующий флаг и убрать этот. Смотрим ниже и ставим все как на рисунке:
:{| border="1" cellpadding="2" cellspacing="1"
:{| border="1" cellpadding="2" cellspacing="1"
! !! My Output > !! Target Entity !! Target Input !! Parameter !! Delay !! Only Once
! !! My Output > !! Target Entity !! Target Input !! Parameter !! Delay !! Only Once

Revision as of 22:32, 30 January 2009

Для создания режима захвата флага используем энтити item_teamflag - это будет сам флаг. Флаги члены команды должны нести на свою базу - func_capturezone - браш-энтити. Это что то типа области, куда нужно доставить и откуда нужно украсть доки. Хотя item_teamflags и есть по идее флаг для захвата, но в игре будет отображаться как портфель с документами или просто "доки".

Энтити и input/output позволят сделать нам некоторые очень интересные с флагами вещи в Team Fortress 2.


Основа CTF (Capture The Flag)

Большинство карт для захвата флагов (CTF) (официальные) основаны на том, чтобы захватить чужой портфель с документами и доставить его на свою базу. Эта карта проста в построении, обычно она представляет из себя две симметричные по архитектуре (не визуально) части для каждой из команд. Пока что в Team Fortress 2 существует только 3 официальные CTF карты: ctf_well, вездесущий ctf_2fort и пользовательской сборки ctf_turbine.

В этом туторе рассказано, как устроенна CTF карта и как ее собственно собрать своимим руками.

Ориентиры

Для начала, можно (даже нужно) поместить на карту ориентиры. Это стрелки, указатели и прочие объекты, которые подскажут игроку, где находятся доки, респаун и прочее. Они не являются обязательным атрибутом для карты, это скорее чисто для визуального эффекта... но если вы их все же поместите, игроки в TF2 скажут вам спасибо. Итак, что же для этого нужно?

Ориентиры для флага

Опоры без флага.

Для примера, мы будем использовать 2 простых блока (браша), на которых будут лежать документы обеих команд, что то типа опор. Начнем с красной команды, создайте браш (Shift+B), к примеру 96 на 80 юнитов длиной\шириной и 48 юнитов высотой, покрасьте этот браш любой текстурой (Shift+A), например "wood/grain_elevator_facade_14a", и превратим этот браш в энтитю "func_detail" - Edit -> Tie To Entity (Ctrl+T).

Ориентиры для зоны захвата флага

Неплохая граница для зоны захвата.

Теперь создадим, как вы догадались, ориентир для зоны захвата. Создайте ориентир-границу на основе браша, 16 в длину, 2 в высоту и 4 юнита в ширину. Красим браш в текстуру, чтобы придать ей визуальный стиль - "props/hazardstrip001a" , после покраски превращаем в энтити - "func_detail". Также можно поставить декаль (Shift+D) "signs/capture_zone", чисто как украшение

В принципе все выше описанное проделывать не обязательно, это служит чисто для визуального эффекта. Вы и сами можете поэкспериментировать с оформлением, ограничиваясь лишь своей фантазией. На стенах, к примеру, можно повесить различные указатели: prop_dynamic энтити, models/props_gameplay/sign_gameplay01_witharrow_r_sm.mdl Больше об устройстве карт можно почитать в TF2 Design Theory:ru - теории дизайна.

Энтити item_teamflag

Далее, создаем энтити (Shift+E) item_teamflag (будующий флаг) и помещаем его на заранее заготовленное место. В нашем примере мы делаем флаг для красной команды, поэтому в свойствах Edit -> Properties (Alt+Enter) item_teamflag значение опции team (команда) ставим на RED.

Энтити func_capturezone

Документы и зона захвата красной команды.

Наконец, создаем зону захвата флага func_capturezone - - браш-энтити. Создаем браш, длину\ширину сделайте такими, какими у вас в общем сделаны ориентиры и границы для флага, высоту можно сделать примерно в 160 юнитов. Далее, Tools - Tie to Entity. В опциях этой энтити (Alt+Enter) func_capturezone значение team (команда) ставим в нашем примере на RED.

Заключение

Теперь у вас есть флаг для красной команды. Чтобы сделать тот же флаг для синей, нужно всего лишь значения team item_teamflag и func_capturezone поставить на Blu. Как только сделаете флаг для синей команды, у вас будет полностью рабочая карта режима CTF. На этой карте автоматически будет написан брифинг для карт CTF и установлено стандартное число захватов для победы - 3.

Загрузить готовую карту можно здесь: http://www.mediafire.com/?1mw0lm0ej2i

Note.pngПримечание:a team's capture zone does not have to be in the same location as the intelligence briefcase, it can be placed anywhere inside the map. However, if a player from the opposing team touches it while carrying the intelligence, they will see the message, "Take the INTELLIGENCE back to YOUR BASE".

Нейтральный флаг

Если в опциях флага item_teamflag значение team поставить any (любой), то этот флаг будет нейтральным, то есть его смогут захватить члены любой из команд. Нейтральные портфели имеют серый цвет окраски.

Icon-Bug.pngБаг:Имейте ввиду, что когда вы несете нейтральный флаг, на худе будет показано, что вы несете вражеский флаг.  [нужно проверить в ?]

Многократный флаг (одновременный)

Игрок может захватывать любой флаг, не принадлежащий его команде. Теоретически, можно сделать так много флагов, сколько пожелает ваша "безумная" фантазия. (Как это сделать, думаю, вы и так знаете.) Существовал даже баг: игрок может вполне "спереть" все вражеские и нейтральные флаги, которые есть на карте, но захватить получится только один, остальные застревали в нем.

Многократный флаг (последовательный)

Вы можете после каждого захвата менять расположение флага, чтобы игрокам было сложнее и интереснее воровать доки. Как это сделать? Смотрим ниже...

Имя флага

Для начала, удостоверьтесь в том, что у вас на карте есть несколько энтитей item_teamflags, и все они имеют свои имена (name) в опциях. В нашем примере мы сделаем 3 месторасположения нейтрального (можете вполне поэкспериментировать с флагами отдельных команд) флага, в опциях - team - any, там же даем имена флагам - flag1, flag2, и flag3. Не забудьте сделать зону захвата для каждой команды - func_capturezones.

Start disabled

Во всех ваших флагах, которые должны будут появляться после захвата предыдущего, в опциях должны иметь значение Start Disabled - yes. В нашем примере только flag1 имеет значение Start Disabled - no.

Outputs флага

Второй последовательный флаг и его output'ы.

Выберите флаг, который вы хотели бы сделать "первой жертвой" грязных рук игроков, в нашем примере это flag1. В его опциях (Alt+Enter) нужно будет поставить Output'ы, для того чтобы включить в игру следующий флаг и убрать этот. Смотрим ниже и ставим все как на рисунке:

My Output > Target Entity Target Input Parameter Delay Only Once
Io11.png OnCapture flag2 Enable 0.00 No
Io11.png OnCapture flag1 Disable 0.00 No

Для следующих флагов делаем так же, убирая предыдущие и ставя следующие.

Собственно все, мы сделали 3 последовательно идущих друг за другом флага.

Reverse CTF

Reverse CTF is a simple variation on basic CTF in which the position of the flags and capture zones are reversed - put on the opposite side of the map. Instead of retrieving a defended flag, the goal is to deliver a flag from the friendly end of the map to a defended capture zone.

CTF-футбол

Это режим типа Reverse CTF с нейтральным флагом. Подобно футболу, нужно захватить флаг и принести его на вражескую базу. Bombing Run режим игры подобен тому, что есть в Unreal Tournament.

Теория дизайна

  • Комната с флагом должна иметь достаточно хорошие места для защиты и атаки, по крайней мере 2 выхода и хорошие места для укрытия.
  • Поменять брифинг миссии, если вы делаете какой то нестандартный режим, можно в этом туторе - manually change the mission briefing.
  • Не забывайте ставить ориентиры для флагов, чтобы их проще было заметить.

См. Также