TF2/Flag Based Goal Systems:ru

From Valve Developer Community
< TF2
Revision as of 09:43, 29 January 2009 by Sin0d (talk | contribs) (New page: '''Для создания режима захвата флага''' используем энтити <code>item_teamflag</code> - это будет сам флаг. Флаги чле...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Для создания режима захвата флага используем энтити 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 простых блока (браша), на которых будут лежать документы обеих команд, что то типа опор. Начнем с красной команды, создайте браш, к примеру 96 на 80 юнитов длиной\шириной и 48 юнитов высотой, покрасьте этот браш любой текстурой, например "wood/grain_elevator_facade_14a", и превратим этот браш в энтитю "func_detail" - Edit -> Tie To Entity.

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

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

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

Энтити item_teamflag

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

Энтити func_capturezone

The RED team's briefcase-flag and capture zone.
Finally, create a func_capturezone brush-based entity over your capture zone landmark. This defines the area in which the enemy briefcase can be returned to score points. In our example, we'll define it as a column above our capture zone pedestal. We'll make it 160 units high to be sure jumpy scouts can score too. Again set the func_capturezone's team property to RED.

Заключение

You now have all you need for the RED team, and just need to repeat the process for the blue team. Once that is done, you will have a fully functioning capture the flag map! With these entities in place, the map briefing will automatically be filled out with the CTF description, and the win condition for the round will be set to 3 captures.

Download an example map here:

http://www.mediafire.com/?1mw0lm0ej2i

Carrier message
Note: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".

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

When an item_teamflag has its team set to any, it is considered neutral and either team can pick it up and take it to their capture zone to score. Neutral flags have a white skin variant of the briefcase, and a grey return timer above them during gameplay.
Bug: Keep in mind, while carrying a neutral flag, the HUD element will show that you are carrying an enemy flag.
Neutral flags are rumored to be in the upcoming Scout update pack, due to this recent change.


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

A player can score using any flag that doesn't belong to his team. So, theoretically, you could have as many flags as you wanted on your map.

A player can carry as many flags as he can find, but will only be able to turn in one of those flags - the rest will get stuck with him The bug where players would pick up an unlimited number of flags has been fixed, as you can no longer carry more than one flag. However, this does not disallow multiple flags, as you can have as many flags as you please in your map. This fix is also an insight to Valve's intentions for Neutral Flags


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

This technique allows you to change the position of the flags between captures. This way, you can make a team's second capture harder than its first, move a neutral flag around each time it's captured, or any number of other interesting tweaks to standard CTF.

Имя флага

First, make sure you have a few item_teamflags placed on your map, and give them all names. We'll be using three in our example, each with their team set to any (neutral), called flag1, flag2, and flag3. Don't forget your func_capturezones for each team as well.

Start disabled

All of your flags should have the Start Disabled property set to yes except the ones you want to have on the map when the round starts. In our example, flag1 is the only one with Start Disabled set to no.

Setup their outputs

The second flag in the multiple sequence, and its outputs.

Select the flag you want available first; flag1 in our example. You will need to setup a couple of outputs. One to turn the next flag on, and another to turn this one off. They should look like this:

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

Do the same for the other flags, turning on the next in the sequence and disabling the current flag. When you get to the last one, you can loop around and turn the first one on again.

You now have three flags, of which only one will be active at a time! We used neutral flags in the example, but you could do this for both team's flags to get a really dynamic CTF map.

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.

Football CTF

This is Reverse CTF with neutral flags. With a single flag, the result is similar to the sport of football or the Bombing Run game type in the Unreal Tournament series, in which both teams fight to carry the flag into the capture zone on the enemies' end of the map.

Design theory

  • A flag room should have enough space for both defenders and attackers, more than one entrance, a few good sentry positions, and some cover from those sentry positions.
  • The mission briefing appears to be the regular CTF briefing no matter what kind of funky things you do with the entities. It is possible to manually change the mission briefing.
  • Flag and capture zone locations usually feature landmarks, such as the desk in ctf_2fort, to make them easy to identify.

See also