CTF
Advanced
This
page is intended for those who have already mastered the basics
of CTF, and are ready for more complex tactics and strategies.
This information has been submitted or obtained from community
sources.
Sometimes
the best way to learn is to observe...
This is a demo
recording of a CTF match between two clans, khz
(red) and [HEL]
(blue).
It
is rather large, and covers pretty much the entire game (to
11 captures).
(The
file is from October 19, 2002 and was recorded by khz.chr0nicbl@Ze.
Tested with 1.04. Aprox 6.4 mb in size).
Capture
the Flag
Pure
Server
Hosted
by www.hel-guild.com
Time
Limit: 20
Force
Level: Jedi Master
Map:
Warring Factions
|
Place the demo file in your /base/demos/ folder
and run from the in-game menu.
Unfortunately,
the person recording it appears to have suffered some framerate
problems (as far as I can tell its not just me), so the view
is a bit choppy, but it is still perfectly watchable.
It
is worth watching (though long), to note the various tactics
employed by the Red
team.
Keep
in mind that these tactics are not necessarily the best for
all situations. Every team is different and every enemy is
different. What works once may not ever work again (luck).
However, when you win a game, you should ask yourself why
this happened, it may help you learn from the experience.
By
the same token, when you lose, you should examine what went
wrong, and how you could have fixed it. Everybody has a "bad
day" now and then, but each time you play, you should
come away with something you can use in the future to improve
play. Things don't always go as planned, and even a great
player cannot always save his team from defeat if the dynamic
is off.
This
demo was recorded from the perspective of one player, on one
team, but we can see things happening and how the big picture
fits together. See what you can learn from watching it.
Things
to watch for in the demo:
- chr0nicbl@Ze
acts as a Flag Carrier primarily
- He
commits suicide to respawn from falling death faster (/kill
command bound to key)
- He
uses Jump+Speed to make shortcuts across the map
- He
uses the "roll" move often (perhaps even excessively)
but he gets where he wants to go most of the time.
- He
sticks to Neutral Force. I don't know his setup, but he
saves all his mana for the powers that allow him to manuver
to his destination the fastest. He doesn't waste much time
fighting enemies.
- His
teammates use Team Energize and Team Heal on him as he gets
close to base.
- His
teammates utilize Chat Bindings (/say_team) to keep each
other updated on enemy movements at all times
Here
is a sample of some Team chat bindings that you may find useful,
taken from the Strategy
Forums (you can copy and paste these into your
own cfg text files and modify to your liking):
DeTRiTiC-iQ says:
These are the scripts I made for my
clan.
First I bind some keys for changing
"modes" or config files quickly:
bind HOME "exec carrier.cfg"
bind PGUP "exec attack.cfg"
bind INS "exec defense.cfg"
bind KP_ENTER "Kill"
bind KP_INS "say_team ^3TEAM MESSAGE ^7>> ^2MESSAGE
RECEIVED, MOVING INTO POSITION" |
So when I'm a flag-carrier I press
HOME, when I'm on attack or recovery I press Page-Up and when
I'm on defense I press Insert. Notice I've also included my
two generic CTF commands, this allows me to respond quickly
and/or respawn back to base to for defense.
Next we have the contents of each file.
First carrier.cfg:
unbind KP_STAR
unbind KP_MINUS
unbind KP_HOME
unbind KP_UPARROW
unbind KP_PGUP
unbind KP_LEFTARROW
unbind KP_5
unbind KP_RIGHTARROW
unbind KP_END
unbind KP_DOWNARROW
unbind KP_PGDN
unbind KP_PLUS
unbind KP_DEL
bind KP_SLASH "say_team ^3TEAM MESSAGE ^7>>
^5 I NEED URGENT COVER"
bind KP_STAR "say_team ^3TEAM MESSAGE ^7>>
^1 I NEED URGENT HEALING"
bind KP_MINUS "say_team ^3TEAM MESSAGE ^7>>
^2 I NEED AN URGENT MANA BOOST"
bind KP_HOME "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^1ENEMY LEFT ROUTE"
bind KP_UPARROW "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^1ENEMY BASE"
bind KP_PGUP "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^1ENEMY RIGHT ROUTE"
bind KP_LEFTARROW "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^5UPPER ROUTE"
bind KP_5 "say_team ^3TEAM MESSAGE ^7>> The
^2FRIENDLY FLAG CARRIER^7 is in ^5MIDDLE AREA"
bind KP_RIGHTARROW "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^5LOWER ROUTE"
bind KP_END "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^2HOME LEFT ROUTE"
bind KP_DOWNARROW "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^2HOME BASE"
bind KP_PGDN "say_team ^3TEAM MESSAGE ^7>>
The ^2FRIENDLY FLAG CARRIER^7 is in ^2HOME RIGHT ROUTE"
bind KP_DEL "say_team ^3TEAM MESSAGE ^7>>
I am now ^5CARRYING THE FLAG"
bind KP_PLUS "say_team ^3TEAM MESSAGE ^7>>
^2I AM ABOUT TO ENTER OUR BASE WITH THE FLAG"
|
Next we have defense.cfg,
you use this whenever you are defending the BASE only, I've
put recovery stuff in with the attack script.
unbind KP_SLASH
unbind KP_STAR
unbind KP_MINUS
unbind KP_HOME
unbind KP_UPARROW
unbind KP_PGUP
unbind KP_LEFTARROW
unbind KP_5
unbind KP_RIGHTARROW
unbind KP_END
unbind KP_DOWNARROW
unbind KP_PGDN
unbind KP_PLUS
unbind KP_DEL
bind KP_SLASH "say_team ^3TEAM MESSAGE ^7>>
MORE PLAYERS NEEDED ON DEFENSE"
bind KP_STAR "say_team ^3TEAM MESSAGE ^7>>
ENEMY PLAYERS ARE IN OUR BASE: ^1USE FORCE SEEING"
bind KP_MINUS "say_team ^3TEAM MESSAGE ^7>>
^1OUR BASE IS OVERRUN BY THE ENEMY: HELP NEEDED"
bind KP_UPARROW "say_team ^3TEAM MESSAGE ^7>>
INCOMING ENEMY FORCES FROM THE ^2TOP ROUTE"
bind KP_LEFTARROW "say_team ^3TEAM MESSAGE ^7>>
INCOMING ENEMY FORCES FROM THE ^2LEFT ROUTE"
bind KP_5 "say_team ^3TEAM MESSAGE ^7>> INCOMING
ENEMY FORCES FROM THE ^2MIDDLE ROUTE"
bind KP_RIGHTARROW "say_team ^3TEAM MESSAGE ^7>>
INCOMING ENEMY FORCES FROM THE ^2RIGHT ROUTE"
bind KP_DOWNARROW "say_team ^3TEAM MESSAGE ^7>>
INCOMING ENEMY FORCES FROM THE ^2BOTTOM ROUTE"
bind KP_DEL "say_team ^3TEAM MESSAGE ^7>> I
am now playing on ^5DEFENSE"
bind KP_PLUS "say_team ^3TEAM MESSAGE ^7>>
^1THE ENEMY CARRIER HAS ESCAPED THE BASE, GIVE CHASE IMMEDIATELY" |
Finally we have attack.cfg,
used if you are either running to get the flag or recovering
your own flag:
unbind KP_SLASH
unbind KP_STAR
unbind KP_MINUS
unbind KP_HOME
unbind KP_UPARROW
unbind KP_PGUP
unbind KP_LEFTARROW
unbind KP_5
unbind KP_RIGHTARROW
unbind KP_END
unbind KP_DOWNARROW
unbind KP_PGDN
unbind KP_PLUS
unbind KP_DEL
bind KP_SLASH "say_team ^3TEAM MESSAGE ^7>>
^5 I NEED MORE PLAYERS ON ATTACK"
bind KP_STAR "say_team ^3TEAM MESSAGE ^7>>
^1 I NEED HELP PENETRATING ENEMY DEFENSE"
bind KP_MINUS "say_team ^3TEAM MESSAGE ^7>>
^2 I WILL PROVIDE COVER FIRE, SOMEONE ELSE GO FOR THE
FLAG"
bind KP_HOME "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^1ENEMY LEFT ROUTE"
bind KP_UPARROW "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^1ENEMY BASE"
bind KP_PGUP "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^1ENEMY RIGHT ROUTE"
bind KP_LEFTARROW "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^5UPPER ROUTE"
bind KP_5 "say_team ^3TEAM MESSAGE ^7>> The
^1ENEMY FLAG CARRIER^7 is in ^5MIDDLE AREA"
bind KP_RIGHTARROW "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^5LOWER ROUTE"
bind KP_END "say_team ^3TEAM MESSAGE ^7>> The
^1ENEMY FLAG CARRIER^7 is in ^2HOME LEFT ROUTE"
bind KP_DOWNARROW "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^2HOME BASE"
bind KP_PGDN "say_team ^3TEAM MESSAGE ^7>>
The ^1ENEMY FLAG CARRIER^7 is in ^2HOME RIGHT ROUTE"
bind KP_DEL "say_team ^3TEAM MESSAGE ^7>> I
am now playing on ^5ATTACK/RECOVERY"
bind KP_PLUS "say_team ^3TEAM MESSAGE ^7>>
^1THE ENEMY TEAM ARE ABOUT TO SCORE, GET THEIR FLAG FAST" |
Notice that pressing the Delete key on the numpad will notify
your team of which mode you are currently in. The numbered
keys on the numpad are for locational/directional information.
The keys at the top/right of the numpad are for mode-specific
commands.
These scripts are constantly evolving,
stuff that doesn't get used much gets replaced with more effective
commands etc. The current bit under review is the definition
of ENEMY LEFT ROUTE/RIGHT ROUTE etc, since its often confusing
as to which point-of-view these represent. As it stands, think
of a birds-eye view of the level with home base at the bottom,
and enemy base at the top. The numbered keys then represent
positions on the birds-eye view.
Sith Maximus says:
I use this in all of my Quake 3 based
games. It's great for RTCW as well, just replace the word
flag with "objective". It uses the keypad keys.
Home starts the script and then just follow the onscreen echo
directions from there. This script is nice because you can
change from attacking to defending orders very quickly without
exec another cfg file and its small enough to be in a single
cfg.
////////////////////////////Text
Colors
// ^0 = Black
// ^1 = Red
// ^2 = Green
// ^3 = Yellow
// ^4 = Blue
// ^5 = Cyan
// ^6 = Magenta
// ^7 = White
//LINE-1//Press KP7 to start
script
set start-reset "vstr start-text; vstr start-keys"
bind KP_HOME "vstr start-reset"
//LINE-2//Start script text
set start-text "echo [^1PRESS ^6KP8 ^1TO ^1CANCEL
: ^1PRESS ^6KP9 ^1FOR ^6DEFENCE; echo ^1PRESS ^6KP4
^1FOR ^6OFFENCE : ^1PRESS ^6KP5 ^1FOR ^6INCOMING; echo
^1PRESS ^6KP6 ^1FOR ^6NEEDS^7]"
//LINE-3//Start keys
set start-keys "bind KP_UPARROW vstr cancel; bind
KP_PGUP vstr talk-a0; bind KP_LEFTARROW vstr talk-b0;
bind KP_5 vstr talk-c0; bind KP_RIGHTARROW vstr talk-d0"
//Cancel
set cancel "echo [^6ORDERS ^6TEXT ^6RESET^7]; vstr
start-text; vstr start-keys"
//Repeat orders text
set repeat-1 "vstr orders-text-1"
set repeat-2 "vstr orders-text-2"
set repeat-3 "vstr orders-text-3"
set repeat-4 "vstr orders-text-4"
//LINE-4//Echo orders text
set orders-text-1 "echo [^6KP8^3=^1CANCEL ^6KP9^3=^1ON
^1DEFENSE ^6KP4^3=^1GUARDING ^1OBJECTIVE; echo ^6KP5^3=^1QBJECTIVE
^1SAFE ^6^6KP6^3=^1PURSUING ^1ENEMY; echo ^6KP1^3=^1RETURNING
OBJECTIVE^7]"
set orders-text-2 "echo [^6KP8^3=^1CANCEL ^6KP9^3=^1OBJECTIVE
^6KP4^3=^1ATTACKING; echo ^6KP5^3=^1THROUGH ^1DEFENCES
^KP6^3V=^1OBJ ^1IN ^1SIGHT; echo ^6KP1^3=OBJECTIVE ^1RETRIEVED^7]"
set orders-text-3 "echo [^6KP8^3=^1CANCEL ^6KP9^3=^1LEFT
^6KP4^3=^1RIGHT; echo ^6KP5^3=^1ABOVE ^6KP6^3=^1BELOW
^6KP1^3=^1FLANK^7]"
set orders-text-4 "echo [^6KP8^3=^1CANCEL ^6KP9^3=^1HELP
^6KP4^3=^1AMMO ^6KP5^3=^1COVER; echo ^6KP6^3=^1ENEMY
^1HAS ^1OBJECTIVE; echo ^6KP1^3=^1OBJECTIVE ^1UNDER
^1ATTACK^7]"
//LINE-5//Defence
set talk-a0 "bind KP_UPARROW vstr cancel; bind
KP_PGUP vstr repeat-1; bind KP_LEFTARROW vstr talk-a-a;
bind KP_5 vstr talk-a-b; bind KP_RIGHTARROW vstr talk-a-c;
bind KP_END vstr talk-a-d; bind KP_DOWNARROW vstr talk-a-e;
vstr orders-text-1"
set talk-a-a "say_team ^6<<--^1ON ^1DEFENCE!"
set talk-a-b "say_team ^6<<--^1GUARDING ^1FLAG!"
set talk-a-c "say_team ^6<<--^1OBJECTIVE
^1SAFE!"
set talk-a-d "say_team ^6<<--^1PURSUING ^1ENEMY
^1FLAG ^1CARRIER!"
set talk-a-e "say_team ^6<<--^1RETURNING
^1TO ^1GUARD ^1FLAG!"
//LINE-6//Offence
set talk-b0 "bind KP_UPARROW vstr cancel; bind
KP_PGUP vstr repeat-2; bind KP_LEFTARROW vstr talk-b-a;
bind KP_5 vstr talk-b-b; bind KP_RIGHTARROW vstr talk-b-c;
bind KP_END vstr talk-b-d; bind bind KP_DOWNARROW vstr
talk-b-e; vstr orders-text-2"
set talk-b-a "say_team ^6<<--^1GOING ^1FOR
^1FLAG!"
set talk-b-b "say_team ^6<<--^1ATTACKING
^1ENEMY!"
set talk-b-c "say_team ^6<<--^1THROUGH ^1ENEMY
^1DEFENCES!"
set talk-b-d "say_team ^6<<--^1FLAG ^1IN
^1SIGHT!"
set talk-b-e "say_team ^6<<--^1FLAG ^1STOLEN!"
//LINE-7//Incoming
set talk-c0 "bind KP_UPARROW vstr cancel; bind
KP_PGUP vstr repeat-3; bind KP_LEFTARROW vstr talk-c-a;
bind KP_5 vstr talk-c-b; bind KP_RIGHTARROW vstr talk-c-c;
bind KP_END vstr talk-c-d; bind bind KP_DOWNARROW vstr
talk-c-e; vstr orders-text-3"
set talk-c-a "say_team ^6<<--^1INCOMING ^1ENEMY
^1LEFT!"
set talk-c-b "say_team ^6<<--^1INCOMING ^1ENEMY
^1RIGHT"
set talk-c-c "say_team ^6<<--^1INCOMING ^1ENEMY
^1ABOVE"
set talk-c-d "say_team ^6<<--^1INCOMING ^1ENEMY
^1BELOW!"
set talk-c-e "say_team ^6<<--^1INCOMING ^1ENEMY
^1AT ^1FLANK!"
//LINE-8//Need
set talk-d0 "bind KP_UPARROW VSTR CANCEL; BIND
KP_PGUP vstr repeat-4; bind KP_LEFTARROW vstr talk-d-a;
bind KP_5 vstr talk-d-b; bind KP_RIGHTARROW vstr talk-d-c;
bind KP_END vstr talk-d-d; bind bind KP_DOWNARROW vstr
talk-d-e; vstr orders-text-4"
set talk-d-a "say_team ^6<<--^1UNDER ^1ATTACK
^1NEED ^1HELP!"
set talk-d-b "say_team ^6<<--^1NEED ^1AMMUNITION!"
set talk-d-c "say_team ^6<<--^1HAVE ^1FLAG...^1COVER
^1ME ^6NOW!"
set talk-d-d "say_team ^6<<--^1ENEMY ^1HAS
^1FLAG...^1NEED ^1ASSISTANCE!"
set talk-d-e "say_team ^6<<--^1DEFEND ^1THE
^1FLAG!"
|
|