Итак, конфиг - это текстовый файл, в котором хранятся все клиентские настройки и переменные (как то настройки графики, управления, сетевые параметры, скрипты и пр.)

Как создать собственный конфиг?
Запустить игру, настроить все "под себя", т.е. управление\графику итд итп.
Открыть консоль (кнопка "~" над TAB-ом) и ввести "/writeconfig YOUR_NICK.cfg" и нажать ENTER, обозвать его можно как угодно, после чего в папке "Quake3/cpma/" появится файлик с именем "YOUR_NICK.cfg", это и есть ваш конфиг.

Как загрузить конфиг?
Открываем консоль (~), и пишем "/exec YOUR_NICK.cfg", после чего произойдет загрузка вашего конфига со всеми вашими настройками.

Как сделать так, чтобы при каждом запуске автоматически подгружался мой конфиг?
Способ 1й:
Для этого нужно создать ярлык для "Quake.exe" с параметрами: "+set fs_game cpma +nologo +set vm_game 2 +exec YOUR_NICK.cfg", без кавычек.
Способ 2й:
Нужно создать текстовый документ со следующей строчкой: "quake3.exe +set fs_game cpma +nologo +set vm_game 2 +exec YOUR_NICK.cfg", сохранить в папку "Qukae3/" и сменить расширение на ".cmd" и использовать его для запуска.
Способ 3й:
Создать в папке "Quake3/cpma/" текстовый файл с именем "autoexec.cfg", в который добавить строчку "+exec YOUR_NICK.cfg", без кавычек.

Далее открываем наш конфиг и правим его уже вручную.


Настройки управления приведу на примере своего конфига:
bind КНОПКА ДЕЙСВИЕ

unbindall \\эта строчка снимает привязку к действиям со всех клавиш преде загрузкой конфига
bind ESCAPE togglemenu \\вызывает главное меню
bind ` toggleconsole \\вызывает консоль
bind SPACE +moveup \\прыжок
bind MOUSE1 +attack \\огонь
bind e +forward \\движение вперед
bind d +back \\движение назад
bind s +moveleft \\стрейф влево
bind f +moveright \\стрейф вправо
bind z +movedown \\приседание
bind a +speed \\идти "пешком", т.е. беззвучно
bind SHIFT +zoom \\приближение
bind w weapon 1 \\переключение на перчатку (Gauntlet)
bind g weapon 2 \\переключение Machinegun
bind MWHEELDOWN weapon 3 \\Shotgun
bind MWHEELUP weapon 4 \\Grenade Launcher
bind MOUSE2 weapon 5 \\Rocket Launcher
bind MOUSE3 weapon 6 \\Lightning Gun
bind t weapon 7 \\Railgun
bind r weapon 8 \\Plasma Gun
bind x weapon 9 \\BFG
bind F1 vid_restart \\перезапуск видео подсистемы
bind F5 ready \\вы готовы начать
bind F6 notready \\вы не готовы
bind F9 autorecord \\автозапись, название будущей демки будет сделано по маске
bind F10 stoprecord \\остановка записи
bind F11 screenshotjpeg \\снимок экрана (screenshot)
bind F12 quit \\выход
bind 0 team s \\зайти за наблюдателя (spectator)
bind - team r \\зайти за красную команду
bind = team b \\зайти за синюю
bind PGUP timein \\продолжение матча
bind PGDN timeout \\остановка матча на некоторое время, применяется в экстренных случаях
bind DEL players \\список игроков с их порядковыми номерами и сетевыми параметрами
bind UPARROW speconly \\постоянный режим наблюдателя, т.е. в дуэли вы не занимаете очередь и не заходите в игру, дуже если одно место пустует
bind KP_ENTER callvote restart \\поднять голосование за перезапуск карты
bind KP_SLASH callvote instagib 1 \\поднять голосование за режим instagib (rail-only)
bind * callvote instagib 0 \\поднять голосование за отмену режима instagib
bind KP_MINUS vote no \\голосовать против
bind KP_PLUS vote yes \\голосовать за
bind 1 say gl... \\пожелать вашему оппоненту учачи (good luck)
bind m +button2 \\использовать предмет (телепорт)
bind 4 +button3 \\гримаса вашей модели (или рык, например у Uriel-а)
bind 5 say -i!-<|= \\послать в чат смайлик
bind b say_team ^0<^1<^0< ^7QUAD^1!!! \\сообщение только для товарищей по команде - "ВСЕ НА КВАД!"
bind CAPSLOCK +wstats \\выводит информацию о вашей меткости, подобранных итемов итп.

bind q vstr rj1 \\вызывает скрипт "rj1", в моем случае он выглядит так:
set rj1 "+moveup;+attack;wait;wait;-attack;-moveup"
т.е. при нажатии происходит прыжок и через долю секунды выстрел, т.е "рокетджамп".

Таким же образом можно сделать скрипт на "zoom":
bind q vstr zum
set zum vstr zm1
set zm1 "cg_fov 55;sensitivity 2;set zum vstr zm0"
set zm0 "cg_fov 110;sensitivity 4;set zum vstr zm1"

т.е. при первом нажатии угол обзора становится в 2 раза меньше и чувствительность мыши так же уменьшается в 2 раза, при повторном нажатии все возвращается до прежних значений.


Далее следует описание основных клиентских настроек, опять же на примере моего конфига:
seta ПЕРЕМЕННАЯ ЗНАЧЕНИЕ

seta name "^0lpb^1'^0ko^1A^0sh^1'^0ns" \\никнейм, в моем случае в нике чередуются красный цвет с черным

Расшифровка цветов:

seta nick "^0ko^1A^0sh" \\ваш короткий "позывной", который будут видеть ваши товарищи по команде в окошке командной сводки

seta model xaero/red \\ваша модель, может быть либо простой, например sarge (sarge/red, sarge/blue), либо PM-ной, например sarge/pm (keel/pm, xaero/pm), так же устанавливает модель членов вашей команды, но только если прописано "cg_forceModel 1"

seta sensitivity 4 \\чувствительность мыши
seta m_filter 1 \\более плавное движение мышью
seta m_yaw 0.018 \\коэффициент чувствительности по горизонтали
seta m_pitch 0.018 \\коэффициент чувствительности по вертикали
seta in_mouse -1 \\тип ввода, может быть равным "0", "1" и "-1"
seta cl_mouseaccel 1 \\акселерация мыши, чем быстрее двигаете мышь, тем быстрее двигается прицел
seta cl_freelook 1 \\обзор мышью
seta cl_run 1 \\постоянный бег
seta cg_bobroll 0 \\покачивание при ходьбе
seta cg_bobpitch 0 \\покачивание при ходьбе
seta cg_runroll 0 \\покачивание при ходьбе
seta cg_runpitch 0 \\покачивание при ходьбе
seta cg_bobup 0 \\покачивание при ходьбе
seta cg_drawgun 0 \\убирает показ модели оружия
seta cg_altplasma 1 \\альтернативный вид плазмы (0,1)
seta cg_altgrenades 1 \\альтернативный вид банок (0,1)
seta cg_altlightning 1 \\альтернативный вид луча шафта (0,1,2,3)
seta cg_truelightning 0.8 \\степень отставания луча от прицела при резких поворотах, создает лишь видимость, на деле луч всегда отстает как при нулевом значении
seta cg_fov 110 \\угол обзора
seta cg_zoomfov 55 \\угол, до которого происходит приближение при зуме, если он задан так: "bind SHIFT +zoom"

seta color aaaaa \\цвет вашей модели (от 0-9 и от a-z)
первая цифра/буква - цвет рельсы
вторая - головы
третья - туловища
четвертая - ног
пятая - вторичный цвет рельсы (цвет кольца)
Например "/color qaaqa" - яркокрасный скин с синими ногами и красно-синей рельсой.
Примечание:
Цвета головы/туловища/ног действуют только, если у вас стоит "PM"-скин.
Так же этим параметром задается цвет членов вашей команды, но только если прописана команда "/cg_forceColors 1".

seta cg_enemycolors qqqqq \\цвет модели ваших врагов (от 0-9 и от a-z)
первая цифра/буква - цвет рельсы
вторая - головы
третья - туловища
четвертая - ног
Например "/cg_enemyColors qaaqa" - яркокрасный скин с синими ногами и красно-синей рельсой.
Примечание:
Цвета головы/туловища/ног действуют только, если врагам задан "PM"-скин.

seta cg_forcecolors 0 \\форсирование цветов моделей членов вашей команды, т.е. они будут такого цвета как и вы
seta cg_forcemodel 1 \\форсирование моделей членов вашей команды, т.е. они будут с такой же моделью как и вы
seta cg_enemymodel keel/pm \\модель врага, может быть либо простой, например sarge (sarge/red, sarge/blue), либо PM-ной, например sarge/pm (keel/pm, xaero/pm)

seta cg_lightningimpact 0 \\вспышка в месте касания луча шафта с целью
seta cg_showplayerlean 0 \\показ наклонов вражеской модели при движении
seta cg_muzzleflash 0 \\вспышка на конце вашего ствола при выстреле
seta cg_crosshairpulse 0 \\пульсация прицела при подборе итемов
seta cg_nomotddisplayduringdemo 0 \\не показывать "Message Of The Day" при просмотре демок

seta cg_nomip 0 \\отменяет действие "r_picmip" для следующих элементов:
1 - луч шафта
2 - плазмы
4 - взрывы от рокет и гранат
8 - САМИ гранаты
16 - пули от машингана и шотгана
32 - рейлган
64 - БФГ
128 - кровь
256 - дым
512 - дым от рокет
Если же вы хотите включить этот эффект для нескольких элементов, то сложите их маски.

seta cg_damagedraw 0 \\краснеющий экран при попадании в вас
seta cg_damagekick 0 \\краснеющий экран при падении

seta cg_gibs 1 \\с хлюпаньем и чавканьем разлетающиеся во все стороны куски окровавленного мяса при размежевании трупов, при нулевом значении отлетать будет лишь одинокая черепушка))
seta com_blood 1 \\полностью включает либо отключает кровь в игре

seta cg_marks 0 \\следы от пуль на стенах
seta cg_brasstime 0 \\время до исчезновения гильз от машингана и шотгана на полу ("0" - их нет вообще)
seta cg_shadows 0 \\тени от моделей (0,1,2)
seta cg_simpleitems 0 \\простые итемы, вместо моделей - спрайтовые значки
seta cg_viewsize 100 \\видимая область, на больших монитотрах ее обычно уменьшают
seta cg_autoswitch 0 \\автопереключение на подобранное оружие
seta cg_nochatbeep 0 \\отключение звука сообщения
seta cg_drawcrosshair 1 \\тип прицела (0,1,2,3,4,5...)
seta cg_crosshairsize 24 \\размер прицела
seta cg_crosshairhealth 0 \\цвет прицела зависит от колличества жизней
seta cg_drawCrosshairNames 0 \\показ имен над прицелом (0,1,2)
seta cg_drawrewards 0 \\показ наград (Impressive, Excellent etc.)
seta cg_drawattacker 0 \\показ атакующего вас игрока
seta cg_drawammowarning 0 \\показ предупреждения о малом количестве патронов
seta cg_draw2d 1 \\показ иконок в 2Д
seta cg_teamchatsonly 0 \\показ сообщений во время игры только от товарищей по команде
seta cg_railtrailtime 400 \\время исчезновения следа от рейлгана
seta cg_deadBodyDarken 1 \\потемнение моделей игроков после смерти (работает только на PM-скинах)
seta cg_noAmmoChange 1 \\позволяет переключаться на оружие, патронов для которого у вас нет
seta cg_itemFX 7 \\тип анимации при появлении патронов, брони и пр. (с "cg_simpleitems 1" действует только на флаги):
1 - раскачивание по вертикали
2 - вращение
4 - увеличение размера

seta cg_railstyle 5 \\стиль отображения луча рейлгана:
0 - нет луча
1 - только сплошное ядро
2 - только спираль, без ядра
3 - спираль со сплошным ядром
4 - ядро из точек
5 - оригинальный стиль id
6 - спираль с ядром из точек
7 - все

seta cg_smoke_SG 0 \\дым от шотгана
seta cg_smokeGrowth_GL 0 \\увеличение дыма от гранат
seta cg_smokeGrowth_RL 0 \\увеличение дыма от ракет
seta cg_smokeRadius_GL 0 \\размер дымового следа от гранат
seta cg_smokeRadius_RL 0 \\размер дымового следа от ракет
seta cg_noProjectileTrail \\показ пузырьков под водой от выстрелов
seta cg_ammoWarning 0 \\"клик" при малом количестве патронов
seta cg_nohitbeep 0 \\отключение звука при попаданиях
seta cg_noTaunt 0 \\отключение всех гримас моделей противников а так же консольных сообщений
seta cg_noteamchatbeep 0 \\отключение звука командных сообщений
seta cg_oldCTFSounds 0 \\тип озвучки в режиме CTF (0,1,2)
seta cg_gunoffset "0,0,0" \\смещение модели оружия по координатам

Например, если вы хотите сделать луч вашего шафта тонкой ровной линией:
bind X "weapon 6; cg_drawgun 1; cg_gunoffset -5,2,-3"

seta ch_crosshairText "" \\любой текст вместо прицела
seta ch_playerNames 0 \\показ имен игроков над их головами (работает только во время просмотра демо-записей)
seta ch_crosshairTeamInfo 1 \\показ инфы о ваших тиммейтах
seta ch_selfOnTeamOverlay 1 \\показ вас в окошке командной статистике
seta ch_wstatsTime 4 \\сколько секунд будут держаться на экране статсы
seta ch_crosshairAlpha 1 \\прозрачность прицела

seta r_railcorewidth 4 \\толщина "ядра" луча рейлгана
seta r_railsegmentlength 16 \\расстояние между элементами луча
seta r_railwidth 18 \\толщина элементов луча
seta s_announcer feedback \\голос комментатора (feedback, hellchick)
seta s_occfactor 0.5 \\степень отражения звуков от стен
seta s_ambient 0 \\фоновый шум на картах (горящие факелы итп.)


Описание основных переменных влияющих на качество графики и ее детализацию

seta r_displayrefresh 75\\герцовка монитора, как правило многие LCD мониторы больше 75-85 не держат, в то время как практически все ЭЛТ мониторы держат 120 при разрешении 800х600
seta r_allowextensions 1 \\разрешает использовать функции драйвера
seta r_ext_compressed_textures 0 \\сжимает текстуры
seta r_ext_gamma_control 1 \\контроль за гаммой
seta r_ext_multisample 0 \\степень полноэкранного сглаживания
seta r_ext_max_anisotropy 0 \\степень анизотропной фильтрации
seta r_mode 4 \\разрешение экрана, 4=800х600
seta r_gamma 1.35 \\яркость
seta r_texturebits 32 \\глубина цвета текстур
seta r_colorbits 32 \\глубина цвета текстур
seta r_depthbits 32 \\глубина цвета монитора
seta r_stencilbits 0 \\глубина цвета теней
seta r_lodbias 0 \\степень погрешности кривых
seta r_picmip 5 \\степень размытия текстур
seta r_overbrightbits 1 \\общая яркость
seta r_mapoverbrightbits 5 \\яркость карты
seta r_simplemipmaps 0 \\дополнительное размытие
seta r_intensity 1 \\интенсивность освещения
seta r_vertexlight 2 \\вертексное освещение
seta r_subdivisions 4 \\точность кривых
seta r_fullscreen 1 \\полноэкранный режим
seta r_lodcurveerror 250 \\дальность при которой начинают упрощаться кривые
seta r_flares 0 \\световые ореолы
seta r_fastsky 0 \\отключение прорисовки неба
seta r_dynamiclight 0 \\динамический свет
seta r_texturemode GL_LINEAR_MIPMAP_NEAREST \\фильтр текстур
seta r_swapinterval 0 \\отключение вертикальной синхронизации


Сетевые параметры

!Для игры на нашем сервере я рекомендую использовать только такие сетевые настройки:
seta rate 25000 \\общая ширина канала
seta snaps 30 \\частота входящих
seta cl_maxpackets 125 \\частота исходящих
seta cl_packetdup 0 \\дублирование пакетов
seta cl_timenudge 0 \\коррекция задержки
seta cg_predictitems 0 \\предсказание
seta cg_predict 2 \\другой алгоритв предсказания
seta cg_lagHax -1 \\компенсация лага в 50мс
seta cg_nudge 0 \\другой алгоритм коррекции задержки
seta cg_xerpclients 0 \\сглаживание движений противников
seta cg_optimiseBW 1 \\оптимизация под канал
Для компенсации лагов или же при узкой пропускной способности канала советую поэкспериментировать лишь с этими 3мя переменными:
seta rate 25000
seta snaps 30
seta cl_maxpackets 125


HUD

В CPMA мы получили дополнительную возможность настроить игру "под себя" - появилась возможность создавать отдельные конфиги для внутриигрового интерфейса, так называемого HUD-а.
HUD-настройки (панелька с кол-вом патронов, здоровья, брони, оружием, положение и размер окошек счета, таймера, шрифты сообщений и т.п.) в CPMA содержатся в cfg-файлах в каталоге "cpma\hud".
Указать ваш файл настроек можно через переменную консоли "ch_file":

seta ch_file koash_q3_hud \\название вашего HUD-файла

Так же при загрузке нового HUD-а следует ввести команду "\reloadHud", иначе изменения не вступят в силу.
Так же в каталоге "cpma\hud" находятся примеры готовых HUD-в. Попробуйте варианты настроек hud1, hud2, ..., hud7, на их основе можно создать свой HUD-конфиг.
Настроить этот конфиг можно вручную или с помощью утилиты "q3cpmaHudEditor".


Поведение на сервере

Как проголосовать за то, чтобы кикнуть определенного игрока?
Для этого в консоли необходимо набрать "/callvote kick playerID (или его ник)", где "playerID" - это порядковый номер игрока, узнать который можно набрав "/players".
Пример 1: "/callvote kick 9"
Пример 2: "/callvote kick Dushman4eg"

Как проголосовать за смену карты?
Для этого в консоли необходимо набрать "/callvote map mapID (или ее название)", где "mapID" - это порядковый номер карты, узнать который можно набрав "/maplist".
Пример 1: "/callvote map 1"
Пример 2: "/callvote map ztn3tourney1"

Как проголосовать за рестарт текущей карты?
Для этого в консоли необходимо набрать "/callvote restart"

Как проголосовать за смену режима игры?
Для этого в консоли необходимо набрать "/callvote mode XXX", где "ХХХ" - это название режима, доступные режимы можно узнать набрав "/callvote mode".
Пример: "/callvote mode 1v1"

Как проголосовать за изменение фраглимита или таймлимита?
Пример 1: "/callvote tl 7"
Пример 1: "/callvote fl 500"
Где "tl" - это желаемый таймлимит, а "fl" - желаемый фраглимит.


Проблемы

Можно ли Q3 как-нибудь запустить в родном для широкоформатного монитора разрешении 1440x900?
Можно, для этого нужно прописать в консоли следующее:
r_mode -1
r_aspectRatio 2
r_customWidth 1440
r_customHeight 900


Суть проблемы состоит в том, что после порядка 30-60 минут игрового процесса самопроизвольно отрубаеться системный блок, в чем может быть проблема?
Проблема скорее всего в системе охлаждения, а точнее в ее неэффективной работе.
Рекомендации: устранение пыли в системном блоке, проверка исправности кулеров на процессоре и видеокарте и замена термопасты.

При попытке запуска игры выскакивает ошибка в консоли и загрузка прерывается, ошибка примерно такая:
.calling CDS: ok
...created window@0,0 (640x480)
Initializing OpenGL driver
...
----- CL_Shutdown -----
RE_Shutdown( 1 )
-----------------------
GLW_StartOpenGL() - could not load OpenGL subsystem
Подобная ошибка обычно выскакивает когда не все в порядке с драйверами для видеокарты. Следовательно, следует их обновить на более свежие, либо же поискать версию постарше, но более стабильную.

При попытке подключиться меня выкидывает с сервера, что делать?
Это в подавляющем большинстве случаев происходит, если у вас нет необходимых паков (карт, модов итп).
Рекомендации: обновить дистрибутив по ссылкам в теме Ссылки на дистрибутивы,
или же прописать в консоли cl_allowdownload 1.

!Если кто-то желает дополнить этот ФАК, то не стесняйтесь, пишите!)