Pterohost docs

TTT сервер Garry's Mod: установка Trouble in Terrorist Town

Gmod TTT - установка Trouble in Terrorist Town через SteamCMD, конфиг ttt_round_limit, ttt_traitor_pct, карты ttt_minecraft, оружие TTT M9K, ULX и анти-чит.

TTT (Trouble in Terrorist Town) - один из самых популярных режимов Garry’s Mod после DarkRP. Это раундовая социальная дедукция с PvP: игроки делятся на Innocents (мирных), Detectives (детективов) и Traitors (предателей). Предатели должны тайно убить всех мирных, мирные - выжить и вычислить предателей, детективы помогают расследовать смерти. В этой статье - полная установка TTT-сервера через SteamCMD, конфиг gamemode, выбор карт, кастомное оружие и админ-инструменты.

Pterohost - игровой хостинг с DDoS-защитой L4+L7, NVMe SSD и техподдержкой. Промокод 4START даёт -20% на первый заказ. Заказать сервер Garry’s Mod

Как работает TTT

Раунд начинается с фазы подготовки (preparation, обычно 30 секунд) - игроки могут осмотреться. Затем стартует основная фаза:

  • Innocents (~62%) - мирные. Цель - выжить и убить всех предателей. Не знают, кто предатель.
  • Traitors (~25%) - предатели. Знают друг друга (видят TR-метки), имеют доступ к Traitor Shop (T-room) с уникальным оружием (Silenced Pistol, Knife для one-shot kill, C4, Radar).
  • Detectives (~13%) - детективы (только при 8+ игроках). Имеют DNA Scanner, Body Armor, Health Station. Все знают, кто детектив (синяя шапка).

Раунд заканчивается:

  1. Все предатели мертвы - Innocents win.
  2. Все мирные мертвы - Traitors win.
  3. Истёк ttt_round_time (по умолчанию 5 минут после prep) - Innocents win (Time’s Up).

После раунда - karma-система: убийство тиммейта (например, Innocent убил Innocent) снижает karma, при низкой karma игрок наносит меньше урона. Это сдерживает RDM (Random Death Match).

Системные требования

ПараметрМинимум (16 слотов)Рекомендуется (32 слота)
CPU1 ядро 3.0 GHz1 ядро 4.0+ GHz
RAM2 GB4 GB
Диск10 GB HDD20 GB NVMe SSD
Сеть10 Мбит100 Мбит

TTT нагружает CPU меньше, чем Sandbox с физикой пропсов - тут нет постоянного спавна объектов. Но при использовании Custom Weapons (TTT M9K) и Custom Roles нагрузка растёт.

Установка сервера через SteamCMD

Шаг 1. Установка SteamCMD и srcds

apt update
apt install -y lib32gcc-s1 lib32stdc++6 libncurses5:i386 wget tar
useradd -m -s /bin/bash gmod
su - gmod
mkdir -p ~/steamcmd ~/gmodserver
cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh +force_install_dir /home/gmod/gmodserver +login anonymous +app_update 4020 validate +quit

App ID Garry’s Mod Server - 4020.

Шаг 2. Запуск с gamemode terrortown

TTT встроен в Garry’s Mod из коробки, отдельно качать его не нужно. Достаточно указать gamemode при запуске:

cd ~/gmodserver
./srcds_run -game garrysmod +gamemode terrortown +map ttt_minecraft_b5 +maxplayers 16 -port 27015

Флаги:

  • +gamemode terrortown - запускает TTT (внутреннее имя gamemode).
  • +map ttt_minecraft_b5 - карта с префиксом ttt_ (обязательно, иначе не работают T-room и оружие).
  • +maxplayers 16 - оптимально 16-24 слота для TTT (на 32+ становится хаос).
  • -port 27015 - порт сервера.

Для полноценного сервера нужна Workshop-коллекция с TTT-картами и оружием:

./srcds_run -game garrysmod +gamemode terrortown +map ttt_minecraft_b5 \
    +host_workshop_collection 1234567890 \
    -authkey ВАШ_STEAM_API_KEY \
    +maxplayers 24 -port 27015

Конфиг сервера: server.cfg + ttt.cfg

server.cfg

Файл: ~/gmodserver/garrysmod/cfg/server.cfg - общие настройки.

hostname "Pterohost TTT | RU 24/7"
sv_password ""
sv_lan 0
rcon_password "СложныйПарольRCON"
sv_region 3

// Сеть
sv_minrate 100000
sv_maxrate 0
sv_minupdaterate 33
sv_maxupdaterate 66
sv_mincmdrate 33
sv_maxcmdrate 66

// Чит-защита
sv_cheats 0
sv_allowcslua 0
sv_kickerrornum 0

// TTT - запретить лишние Sandbox-команды
sbox_noclip 0
sbox_godmode 0

ttt.cfg (специфичные настройки TTT)

Файл: ~/gmodserver/garrysmod/cfg/ttt.cfg подгружается gamemode terrortown автоматически. Это рекомендованный способ хранить TTT-специфичные переменные.

// === Раунд ===
ttt_round_limit 6              // сколько раундов до смены карты
ttt_time_limit_minutes 60      // лимит времени на карте, минуты
ttt_preptime_seconds 30        // фаза подготовки
ttt_firstpreptime 60           // подготовка на первом раунде
ttt_postround_seconds 30       // показ результатов после раунда
ttt_roundtime_minutes 10       // максимальная длительность раунда
ttt_haste 1                    // ускорение конца раунда при малом числе живых
ttt_haste_starting_minutes 5
ttt_haste_minutes_per_death 0.5

// === Роли ===
ttt_traitor_pct 0.25           // 25% предателей
ttt_traitor_max 32             // абсолютный максимум предателей
ttt_detective_pct 0.13         // 13% детективов
ttt_detective_max 32
ttt_detective_min_players 8    // детективы только при 8+

// === Karma ===
ttt_karma 1
ttt_karma_strict 1
ttt_karma_starting 1000
ttt_karma_max 1000
ttt_karma_ratio 0.001
ttt_karma_kill_penalty 15
ttt_karma_round_increment 5
ttt_karma_clean_bonus 30
ttt_karma_traitordmg_ratio 0.0003
ttt_karma_traitorkill_bonus 40
ttt_karma_low_amount 600
ttt_karma_low_ban 1
ttt_karma_low_ban_minutes 60

// === Магазин предателя ===
ttt_credits_starting 2
ttt_credits_award_pct 0.35     // % мирных, после смерти которых выдаётся кредит
ttt_credits_award_size 1
ttt_credits_award_repeat 1

// === Прочее ===
ttt_namechange_kick 1
ttt_namechange_bantime 10
ttt_no_nade_throw_during_prep 1
ttt_dyingshot 0
ttt_postround_dm 0             // 0 = после раунда нельзя стрелять
ttt_ragdoll_pinning 1
ttt_ragdoll_pinning_innocents 0

После правки ttt.cfg сделайте changelevel ttt_minecraft_b5 через RCON или перезапустите сервер.

Карты TTT

Карты для TTT обязательно имеют префикс ttt_ - они содержат комнату предателей (T-room), специальные ловушки (тестеры на T, кнопки, ловушки) и точки спавна оружия.

КартаWorkshop / источникОписание
ttt_minecraft_b5Workshop 158961959Самая популярная: Minecraft-стилистика, средний размер.
ttt_67thwayWorkshop 116659191Классика TTT, отель/казино.
ttt_clue_seWorkshop 159905146Особняк “Cluedo”.
ttt_rooftopsWorkshop 142467585Городские крыши, опасно высоко.
ttt_waterworldWorkshop 154945322Корабль на воде.
ttt_community_bowling_v5aWorkshop 159896800Боулинг-центр.
ttt_skyscraperWorkshop 161210378Многоэтажка, лифты.
ttt_terrortown_islandWorkshop 198148855Открытый остров.
ttt_dollsWorkshop 1124044204Маленькая карта (8-12 игроков).

Для ротации карт через MapVote ставится аддон MapVote (Workshop 829458673) - в конце раунда игроки голосуют.

Кастомное оружие для TTT

Стандартный TTT поставляется с базовым оружием: Glock, Deagle, M16, MAC-10, HUGE-249, Knife (для предателей), Silenced Pistol, C4. Этого хватает, но многим хочется разнообразия.

Популярные паки:

АддонWorkshop IDЧто даёт
TTT M9K Pack250916439Современное оружие M9K, адаптированное под TTT-слоты.
Vanilla Plus Weapons162717677Дополнительные стволы в стиле Source.
TTT Custom Weapon Pack144982306Большой пак с самыми разными SWEPs.
TTT Weapon Switcher256399681Удобное переключение оружия (заменяет стандартный UI).
TTT Equipment Items247230978Дополнительные предметы для T-shop и D-shop (Radar, Disguiser и т.д.).

Кастомное оружие должно правильно прописать SWEP.Kind:

  • WEAPON_HEAVY - основное (1 слот, дробовики, винтовки).
  • WEAPON_PISTOL - вторичное (1 слот, пистолеты).
  • WEAPON_NADE - гранаты (до 3 в инвентаре).
  • WEAPON_EQUIP1 / WEAPON_EQUIP2 - снаряжение из T/D-shop.
  • WEAPON_ROLE - роль-специфичные (Knife для T).

TTT2 - расширенная альтернатива

TTT2 - форк TTT с системой Custom Roles: Vampire, Jester (выигрывает если его убьют), Hypnotist (превращает в T), Survivalist, Glutton, Pharaoh и десятки других.

Установка:

  1. Подпишитесь на TTT2 base (Workshop 2421039084).
  2. Добавьте в Workshop-коллекцию.
  3. Запустите сервер с +gamemode terrortown (TTT2 заменяет базовый TTT).
  4. Установите роли как отдельные аддоны - каждая роль это аддон.

TTT2 хорошо подходит для серверов с активным комьюнити и стримов, но требует адаптации игроков (новые правила).

Админ-инструменты и логи

ULX для TTT

Базовый ULX подходит для TTT (бан/кик/мьют/слэй). Полный гайд - ULX команды и группы. Специфичные для TTT расширения:

  • TTT Round Reporter / TTT Logs - сохраняет лог раунда (кто кого убил, кто чего покупал, кто получал кредиты).
  • TTT Round End - кастомизация экрана конца раунда.
  • TTT Damagelogs - детальные логи урона, упрощает разбор RDM.
  • !report / TTT Report System - команда !report <ник> для жалоб на RDM.

Анти-чит для TTT

В TTT критичны wallhack и aimbot. Варианты защиты:

  1. VAC - стандартный Steam AC. Включается через -secured (по умолчанию on). Слабый, но базовый уровень.
  2. CAC (Civil Anti-Cheat) - бесплатный анти-чит для GMod. Workshop ID 1234567 (поискать актуальный).
  3. Glua AntiCheat - проверка чистоты клиентского Lua.
  4. sv_allowcslua 0 - запретит клиентские Lua-скрипты, обязательно.
  5. Платные решения: AntiNullCheats, GModAC.

Pterohost - игровой хостинг с DDoS-защитой L4+L7, NVMe SSD и техподдержкой. Промокод 4START даёт -20% на первый заказ. Заказать сервер Garry’s Mod

Защита от DDoS

TTT-серверы регулярно атакуют - конкуренты, неадекватные игроки после бана. Стандартная Source Engine уязвима к A2S_INFO flood, query flood, UDP amp. Минимум:

  1. Сетевая фильтрация L4 на уровне дата-центра (защита от UDP flood).
  2. sv_master_legacy_mode 0 и скрытие сервера от A2S через рейт-лимит запросов.
  3. Хостинг с готовой DDoS-защитой - см. статью защита от DDoS на игровых серверах.

Автозапуск через systemd

/etc/systemd/system/gmod-ttt.service:

[Unit]
Description=Garry's Mod TTT Server
After=network.target

[Service]
Type=simple
User=gmod
WorkingDirectory=/home/gmod/gmodserver
ExecStart=/home/gmod/gmodserver/srcds_run -game garrysmod +gamemode terrortown +map ttt_minecraft_b5 +maxplayers 24 -port 27015 +host_workshop_collection 1234567890 -authkey ВАШ_КЛЮЧ
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now gmod-ttt
journalctl -u gmod-ttt -f

Часто задаваемые вопросы

Что такое TTT в Garry’s Mod?

TTT (Trouble in Terrorist Town) - раундовый PvP-режим, где случайные игроки получают роль предателя (Traitor) и должны убить остальных (Innocents). Среди мирных есть детективы (Detective) - они умеют сканировать трупы и опознавать предателей. Раунд длится 5-10 минут или до уничтожения одной из команд.

Какой gamemode прописывать в srcds_run для TTT?

+gamemode terrortown - стандартный TTT, встроен в Garry’s Mod из коробки. Если используется фреймворк TTT2 (форк с расширенной системой ролей), gamemode будет terrortown с подгруженным аддоном TTT2. Карта по умолчанию - ttt_minecraft_b5 или ttt_67thway.

Какие карты популярны для TTT?

ttt_minecraft_b5, ttt_67thway, ttt_clue_se, ttt_rooftops, ttt_waterworld, ttt_community_bowling, ttt_terrortown, ttt_skyscraper. TTT-карты имеют префикс ttt_ и содержат комнаты предателей (Traitor Room) с особыми ловушками.

Как настроить процент предателей и детективов?

ttt_traitor_pct 0.25 - 25 процентов игроков получат роль предателя (по умолчанию). ttt_detective_pct 0.13 - около 13 процентов будут детективами. ttt_detective_min_players 8 - детективы появляются только при 8+ игроках. Параметры пишут в server.cfg или ttt.cfg.

Где брать кастомное оружие для TTT?

Стандартное TTT-оружие встроено в gamemode. Популярные паки: TTT M9K (Workshop ID 250916439), TTT Vanilla Plus Weapons, TTT Custom Weapons. Кастомное оружие должно поддерживать SWEP.Kind = WEAPON_HEAVY/WEAPON_PISTOL для совместимости со слотами TTT.

Что такое TTT2 и нужно ли его ставить?

TTT2 - форк TTT с расширенной системой ролей (Vampire, Jester, Hypnotist, Survivalist и т.д.) и Custom Roles. Ставится как замена базового gamemode. Подходит если вы хотите больше разнообразия. Для классического опыта оставайтесь на стандартном terrortown.

Итого

TTT-сервер ставится через SteamCMD (app 4020), запускается с +gamemode terrortown без дополнительных закачек - сам режим встроен в Garry’s Mod. Базовая работа держится на двух конфигах: общий server.cfg (имя, пароль, сеть) и специфичный ttt.cfg (раунд, проценты ролей, karma, кредиты). Для контента подключаете Workshop-коллекцию с картами ttt_* (minecraft_b5, 67thway, clue) и опционально TTT M9K для оружия. Админ-инструменты - ULX + TTT Logs + Damagelogs против RDM, плюс CAC/Glua AntiCheat против читеров. Оптимальные слоты - 16-24, на сервере с быстрым однопоточным CPU всё держит 66 тик.