Готовая сборка Match-сервера - ФОРУМ - HL2DM University RUS
Добрый день, вы зашли как гость.
Новые сообщения | Поиск
Страница 1 из 212»
ФОРУМ » Форумы по разделам » Техника » Готовая сборка Match-сервера
Готовая сборка Match-сервера
Суббота, 22.01.2011, 22:48
Пост 1
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Всем привет.
В связи с тем, что моя сборка стала пользоваться спросом и уже прошла некоторые тесты, посчу ссылки на скачивание тут.
Версия для windows
Версия для linux
По этим ссылкам можно всегда скачать самую последнюю версию.
Более подробно о сборке можно прочесть тут.
Если возникают какие-то вопросы или наши косяк, пишите в этой теме.
ПрофильСайт
Понедельник, 24.01.2011, 19:22
Пост 2
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Сегодня добавлена приятная мелочь: при выполнении конфигов dm/tdm.cfg, значение mp_teamplay меняется и карта сразу же перезагружается для смены режима игры.
ПрофильСайт
Понедельник, 24.01.2011, 19:38
Пост 3
Assassin1996

Пользователь
с 20.12.2009
341 сообщений
Offline
GAVVVR, лол. что за плагин? для смены мапы? я тут смотрю у тя sm_reloadmap добавлена. По подробней плз :3



Профиль
Понедельник, 24.01.2011, 19:56
Пост 4
Kirtanus
Консультант
Пользователь
с 25.06.2010
307 сообщений
Offline
GAVVVR, как я понял ты добавил в тдм.кфг команду sm_reloadmap.
спасибо что нашел этот плагин - а то мне влом было искать его)


◄ VG ► HIPPI∑ или Sun of Beach

Вот такой я хр**ов оптимист в Светлое Будущее ХЛ2дм - кто не согласен: s*ck it


Отредактировано Kirtanus - Понедельник, 24.01.2011, 20:01
Профиль
Понедельник, 24.01.2011, 20:02
Пост 5
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Assassin1996, все очень просто.
Задача: Замутить возможность менять режим игры в пару кликов мышью.
Решение: Делаем два конфига, которые меняют mp_teamplay и перезагружают карту, добавляем конфиги в админское меню.
Проблема: Поспрашивав на форумах и погуглив сам, я пришел к выводу, что всроенной команды для перезагрузки карты (как restart в c.s. 1.6) в source не существует.
Решение проблемы: плагин Reload Map, который добавляет команду sm_reloadmap, перезагружающую карту. Плагин очень прост и работает так: берет название текущей карты и выполняет "changelevel <текущая карта>"
Прошу не беспокоиться на тему: ой, еще плагин добавился, нагрузка на сервер...
SM плагины написаны на языке sourcepawn, адаптированный под source engine язык pawn. Сам pawn предназначен для низкоуровневых устройств, поэтому плагины на SM очень маленькие и нересурсоемкие.
Kirtanus, честно говоря, наткнулся на него случайно, искал совсем другое. Но он оооочень маленький и я включил его в сборку.


Отредактировано GAVVVR - Понедельник, 24.01.2011, 20:03
ПрофильСайт
Понедельник, 24.01.2011, 20:15
Пост 6
Assassin1996

Пользователь
с 20.12.2009
341 сообщений
Offline
GAVVVR, ty



Профиль
Пятница, 28.01.2011, 14:37
Пост 7
Dog
Консультант - Инструктор
Пользователь
с 15.03.2009
723 сообщений
Offline
Quote (GAVVVR)
Решение проблемы: плагин Reload Map, который добавляет команду sm_reloadmap, перезагружающую карту. Плагин очень прост и работает так: берет название текущей карты и выполняет "changelevel <текущая карта>"

У меня есть идея получше:
Code
#pragma semicolon 1

#include <sourcemod>

new Handle:tdm;

public Plugin:myinfo =  
{
  name = "Teamplay changer",
  author = "The Dog",
  description = "Changes teamplay and restarts map if needed",
  version = "1.0",
  url = "http://www.hl2dm-university.ru"
};

public OnPluginStart()
{
  tdm = FindConVar("mp_teamplay");
  RegAdminCmd("sm_tp", Change_Teamplay, ADMFLAG_RCON);
}

public Action:Change_Teamplay(client,args)
{
  if (args < 1)
  {
   ReplyToCommand(client, "[SM] Usage: sm_tp <teamplay 1/0>");
   return Plugin_Handled;
  }

  new String:string[255];
  new String:descript[128];
  new String:map[128];
  GetGameDescription(descript, sizeof(descript));
  GetCmdArgString(string, sizeof(string));
  if(StrEqual(string, "1"))
  {
   if(StrEqual(descript, "Team Deathmatch"))
   {
    if(!GetConVarBool(tdm))
     ServerCommand("mp_teamplay %s", string);
   }
   else
   {
    if(!GetConVarBool(tdm))
     ServerCommand("mp_teamplay %s", string);
    GetCurrentMap(map, sizeof(map));
    ServerCommand("changelevel %s", map);
   }
  }
  else if(StrEqual(string, "0"))
  {
   if(StrEqual(descript, "Deathmatch"))
   {
    if(GetConVarBool(tdm))
     ServerCommand("mp_teamplay %s", string);
   }
   else
   {
    if(GetConVarBool(tdm))
     ServerCommand("mp_teamplay %s", string);
    GetCurrentMap(map, sizeof(map));
    ServerCommand("changelevel %s", map);
   }
  }
  else
   ReplyToCommand(client, "[SM] Usage: sm_tp <teamplay 1/0>");  
  return Plugin_Handled;
}

Сменит карту только в случае необходимости.


:)
Профиль
Пятница, 28.01.2011, 14:56
Пост 8
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Dog, расскажи на словах, что он делает.
А то даже я не понял :D
Я хотел научиться кодить на павн, но пока нету времени.
Quote (Dog)
Сменит карту только в случае необходимости.

Когда он он проверяет условия необходимости? Что конкретно делает sm_tp и в какой из конфигов ты предлагаешь его включить?
ПрофильСайт
Пятница, 28.01.2011, 15:07
Пост 9
Dog
Консультант - Инструктор
Пользователь
с 15.03.2009
723 сообщений
Offline
GAVVVR, в общем, ты вводишь sm_tp 1/0, он проверяет тип игры, если он "Deathmatch", а ты ввёл sm_tp 1, то он меняет карту на эту же, такая же ситуация с "Team Deathmatch"/sm_tp 0, потом проверяет значение mp_teamplay, если оно не такое, то становится таковым. Но смена карты идёт после смены значения mp_teamplay.
Вообще размер массива string лучше поменять на 2 (0/1 + символ конца строки, незачем память лишнюю тратить).
Quote (GAVVVR)
Что конкретно делает sm_tp и в какой из конфигов ты предлагаешь его включить?

Замени mp_teamplay на sm_tp.


:)
Профиль
Пятница, 28.01.2011, 16:10
Пост 10
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Quote (Dog)
Замени mp_teamplay на sm_tp.

В КУ конфигах? Или в dm.cfg и tdm.cfg?
Dog, мне кажется, что ты не очень хорошо знаком с этой сборкой и поэтому изобретаешь велосипед, либо я что-то не так понимаю.
Пока я не увидел никаких преимуществ. Использования sm_tp
Зачем писать sm_tp 0, если стоит тимплей 0 и это видно нажатием кнопки tab?
Аналгично - зачем выполнять dm.cfg в этой сборке, если мы видим, что тимплей 0?
Или ты предлагаешь заменить mp_teamplay на sm_tp непосредственно в CU конфигах?
ПрофильСайт
Пятница, 28.01.2011, 16:14
Пост 11
Fkk
2337
Администратор
с 30.04.2010
338 сообщений
Offline
Dog, я несколько раз перечитал той пост не увидел преимуществ xD
ПрофильСайт
Пятница, 28.01.2011, 18:07
Пост 12
Dog
Консультант - Инструктор
Пользователь
с 15.03.2009
723 сообщений
Offline
GAVVVR, в любых конфигах, содержащих переменную mp_teamplay. Эффект будет тот же, как и от reload map, только он НЕ будет перезагружать карту, если это не надо. Вот допустим: у тебя паблик сервер, работает в режиме ффа, тут тебе приспичило поиграть кв, sm_tp 1 включит тимплей и сменит мапу на эту же, потом ты запускаешь ещё раз конфиг, но sm_tp 1 уже не будет менять мапу, он лишь изменит значение mp_teamplay на 1 (а т.к. пример на паблике ффа, то очевидно, что после смены мапы тимплей будет включён, но переменная будет равна 0). Надеюсь, смог донести, что хотел.


:)
Профиль
Пятница, 28.01.2011, 18:27
Пост 13
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Dog, я примерно понял.
Идея такая же, как в скрипте на ES от Weirdie, где управление осуществлялось через #.#.
Однако, количество заходов в меню на SM при этом не уменьшится. Как было 2, так и останется (если режим не подходящий). Поэтому смысла в этом не вижу и идея мне не очень понравилась.
ПрофильСайт
Пятница, 28.01.2011, 18:30
Пост 14
Dog
Консультант - Инструктор
Пользователь
с 15.03.2009
723 сообщений
Offline
Quote (GAVVVR)
Идея такая же, как в скрипте на ES от Weirdie, где управление осуществлялось через #.#

Ага, именно так.
Quote (GAVVVR)
Однако, количество заходов в меню на SM при этом не уменьшится. (...) Поэтому смысла в этом не вижу

Ну я себе сделал консольные команды sm_duel и sm_cw, удобно, в меню лезть не надо. :)
Если интересует:
Code
#pragma semicolon 1

#include <sourcemod>

new Handle:tdmconfig, Handle:config1v1;

public Plugin:myinfo =   
{
   name = "Config Control",
   author = "The Dog",
   description = "Easy access to execute configurations.",
   version = "1.0",
   url = "http://www.hl2dm-university.ru"
};

public OnPluginStart()
{
   config1v1 = CreateConVar("sv_config_duel", "cu1v1", "Name of configuration file for duel matches");
   tdmconfig = CreateConVar("sv_config_tdm", "cutdm", "Name of configuration file for tdm matches");
   RegAdminCmd("sm_cw", Launch_Clanwar, ADMFLAG_RCON);
   RegAdminCmd("sm_duel", Launch_Duel, ADMFLAG_RCON);
   // AutoExecConfig(true, "configcontrol");
}

public Action:Launch_Clanwar(client,args)
{
   if(args >= 1)
   {
    ReplyToCommand(client, "[SM] Usage: sm_cw");
    return Plugin_Handled;    
   }
   new String:temp[64];
   GetConVarString(tdmconfig, temp, sizeof(temp));
   ServerCommand("exec %s", temp);
   return Plugin_Handled;
}
public Action:Launch_Duel(client,args)
{
   if(args >= 1)
   {
    ReplyToCommand(client, "[SM] Usage: sm_duel");
    return Plugin_Handled;    
   }
   new String:temp[64];
   GetConVarString(config1v1, temp, sizeof(temp));
   ServerCommand("exec %s", temp);
   return Plugin_Handled;
}


:)
Профиль
Воскресенье, 30.01.2011, 01:04
Пост 15
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
DooMeR нашел классную программу для удобного создания и управления админами и группами админов - KVManager.
ПрофильСайт
Воскресенье, 27.02.2011, 14:45
Пост 16
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Обновил сборку, добавил самый новый фикс очков, и обновленный автоспек, обновил конфиги. Прочие подробности тут.
ПрофильСайт
Понедельник, 28.02.2011, 00:15
Пост 17
Fkk
2337
Администратор
с 30.04.2010
338 сообщений
Offline
GAVVVR, Будет правильный счет?
Наконецта!!!!
ПрофильСайт
Понедельник, 28.02.2011, 00:23
Пост 18
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
2Faka, да, счет верный. Плагин с фиксами от 8го ферваля (новее, чем в КУ сборке) Вот пример :D
ПрофильСайт
Понедельник, 28.02.2011, 11:51
Пост 19
Vels

Пользователь
с 03.04.2009
365 сообщений
Offline
Как правильно запустить плагин autorecorder?

sm_autorecorder 1; sm_record все включал не пишет совсем.

Команду: sm_autorecord_minplayers ставил как 1 так и 0. Тоже не пишет.

ПрофильСайт
Понедельник, 28.02.2011, 15:34
Пост 20
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Vels, сорри, если я тебя обижу вопросом - но СТВ у тебя точно включен?
Для записи ТОЛЬКО матчей нужно, чтобы:
-sm_autorecorder 0
-СТВ бот был включен;
-Плагин autorecorder был включен (включен он или нет можно проверить командой sm plugins list)
-Когда необходимо начать запись, выполнялась команда sm_record (это команда плагина авторекорд, которая выполняет команду сервера tv_record <время, карта>)

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

ПрофильСайт
Понедельник, 28.02.2011, 18:39
Пост 21
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Сраные КУ конфиги с кучей ошибок, ни хрена не проверены. Сорри, народ.
Quote
//warmode on
sourcemod/sm_warmode_on.cfg

exec пропущен, вармод не включается. Сообщу, когда поправлю сборку.
ПрофильСайт
Понедельник, 28.02.2011, 18:51
Пост 22
Vels

Пользователь
с 03.04.2009
365 сообщений
Offline
GAVVVR, да всё включено, но я хотел добиться результата, чтобы демка писалась только тогда, когда на сервере кто-то есть и как минимум 2 человека. А не так, чтобы оно писалось постоянно.
PS Захожу на сервер, пишу sm_record. Демка все равно не появляется на сервере.


Отредактировано Vels - Понедельник, 28.02.2011, 18:55
ПрофильСайт
Понедельник, 28.02.2011, 18:56
Пост 23
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Vels, проверь, запущен ли плагин.
У меня работает sm_record.
Исправил ошибку в сборке.
ПрофильСайт
Понедельник, 28.02.2011, 19:01
Пост 24
Vels

Пользователь
с 03.04.2009
365 сообщений
Offline
А какие именно ошибки в сборке были? Думаю проще подправить вручную. Чем заново скачивать.
PS У меня была включена команда sm_autorecord, отключать как я понял?

Плюс, autorecorder.cfg хранится в cfg\sourcemod. Настройки плагина считываются из этого файла или их надо отдельно записать к server.cfg например?



Отредактировано Vels - Понедельник, 28.02.2011, 19:03
ПрофильСайт
Понедельник, 28.02.2011, 19:13
Пост 25
GAVVVR
Консультант
Пользователь
с 11.04.2010
457 сообщений
Offline
Quote (Vels)
А какие именно ошибки в сборке были? Думаю проще подправить вручную. Чем заново скачивать.

В cutdm и cu1v1 пропущен exec в этом месте.
Quote

//warmode on
exec sourcemod/sm_warmode_on.cfg



Quote (Vels)
Плюс, autorecorder.cfg хранится в cfg\sourcemod. Настройки плагина считываются из этого файла или их надо отдельно записать к server.cfg например?

Настройки авторекордера считываются из autorecorder.cfg в cfg\sourcemod при каждой каждой его перезагрузки. Если ты хочешь юзать непрерывную запись, то тут все сложнее. Лучше, чтобы плагин не перезагружался вообще. Чтобы авторекордер не перезагружался, его нужно настроить соответствующим образом в /hl2mp/addons/sourcemod/configs/plugin_settings.cfg, но я пока не умею этого делать.
Quote (Vels)
PS У меня была включена команда sm_autorecord, отключать как я понял?

Если не хочешь, чтобы он писал все подряд-отключай.
ПрофильСайт
ФОРУМ » Форумы по разделам » Техника » Готовая сборка Match-сервера
Страница 1 из 212»
Поиск: