Counts Kills (Overlay, Message)

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
Вот почистил косяки и оптимизировал код.
Заодно вынес текст оверлея и чата в файл перевода.
Добавил админскую команду sm_count_kills_reload для перезагрузки конфига и переводов (требуется наличие флага ADMFLAG_CONFIG) без смены карты.
Уложился в 202 строки.

Если конфиг окажется пустым, то будут использоваться дефолтные значения. Но наличие файла конфига обязательно.
Расположение и название конфига изменил.
Сообщения автоматически склеены:

@Muinez, чтобы утечку сделать же (потому что датапак не удаляется).
C-подобный:
L 09/04/2021 - 00:58:33: [SM] Exception reported: Handle 38130c8e is invalid (error 1)
L 09/04/2021 - 00:58:33: [SM] Blaming: sm_counts_kills 1.1.0.smx
L 09/04/2021 - 00:58:33: [SM] Call stack trace:
L 09/04/2021 - 00:58:33: [SM]   [0] CloseHandle
L 09/04/2021 - 00:58:33: [SM]   [1] Line 173, sm_counts_kills 1.1.0.sp::Event_Death
L 09/04/2021 - 00:58:55: [SM] Exception reported: Handle 4c460c7c is invalid (error 3)
Не воспроизводит звуки и оверлеи току худ работает
Сообщения автоматически склеены:

@KiKiEEKi, Как можно откл оверлеи убийств? И что за последнее обновление, это то что ты мне скидывал?
И вот еще ошибка в твоем плагине, как то можно пофиксить?

C-подобный:
L 09/04/2021 - 13:08:19: [SM] Exception reported: Invalid client index 0
L 09/04/2021 - 13:08:19: [SM] Blaming: CountsKillsOverlayMessage.smx
L 09/04/2021 - 13:08:19: [SM] Call stack trace:
L 09/04/2021 - 13:08:19: [SM]   [0] ShowHudText
L 09/04/2021 - 13:08:19: [SM]   [1] Line 172, CountsKillsOverlayMessage.sp::Event_PlayerDeath

@September День добрый, пропустите ресурс, пусть в ресурсы добавят, вроде плагин не плохой человек старался видно, постоянно фиксит, пытается исправить ошибки. Можно и исключение сделать на публикацию, в этом ресурсе не чего плохого нет.
 
Последнее редактирование:

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
Не воспроизводит звуки и оверлеи току худ работает
Потому что ниже строки 173 код не выполняется.
Можно поменять местами содержимое блока, выполняемого при проверке if(iFrags[client] < MAX_FRAGS), чтобы при ошибке с таймером выполнялось всё остальное:
C-подобный:
    if(iFrags[client] < MAX_FRAGS)
    {
        if(hHUD && fHud[iFrags[client]][2] > 0.0)
        {
            SetHudTextParams(fHud[iFrags[client]][0], fHud[iFrags[client]][1], fHud[iFrags[client]][2], iClr[iFrags[client]][0], iClr[iFrags[client]][1], iClr[iFrags[client]][2], iClr[iFrags[client]][3], 0, 1.0, 1.0, 0.0);
            ShowSyncHudText(client, hHUD, "%t", MESSAGE[iFrags[client]]);
        }

        if(sSound[iFrags[client]][0]) EmitSoundToClient(client, sSound[iFrags[client]]);

        if(sOverlay[iFrags[client]][0])
        {
            ClientCommand(client, "r_screenoverlay \"%s\"", sOverlay[iFrags[client]]);
            if(hTimer[client]) delete hTimer[client];
            hTimer[client] = CreateTimer(fTimeout, Timer_ClearOverlay, GetClientUserId(client));
        }
    }
Но что за косяк с хэндлом таймера я что-то не вкурю.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
@Grey83, А можно в плагин сделать чтоб оверлеи отключались?
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
Опа, нашёлся косяк в таймере Timer_ClearOverlay():
нужно
if((client = GetClientUserId(client)))
заменить на
if((client = GetClientOfUserId(client)))
Сообщения автоматически склеены:

@Fast-Kill, для всех или только по желанию игрока?
Сообщения автоматически склеены:

Вот с небольшими исправлениями (по идее и таймер должен вылечиться). У убитого тоже будет вырубаться оверлей при смерти.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
@Grey83, По желанию если это возможно
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
@Fast-Kill, команды вызова меню настроек: !streak и !ck.
Также это меню доступно из стандартного меню настроек, вызываемого по команде !settings.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
@Grey83, Мм ошибок нет но теперь звуки не воспроизводит(
Не происходит прекеш звуков и еще перевод кривой в меню настроек!

C-подобный:
"polta<8><TERRORIST>" [641 -1553 -200] with "p90" (headshot)
SV_StartSound: counts_kills/sounds/kill1.mp3 not precached (0)
 

Вложения

  • 2021090212124192453_1.jpg
    2021090212124192453_1.jpg
    14.7 КБ · Просмотры: 18

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
еще перевод кривой в меню настроек!
Не только: и в худе должна быть ошибка тоже
строка 18: MESSAGE[] ==> MESSAGE[][]
строка 19: OPTION[] ==> OPTION[][]
Сообщения автоматически склеены:

Исходник выше перезалил.
Сообщения автоматически склеены:

Возможно прекеш нужно переделывать
Можно попробовать закомментить блок с 202-й по 207-ю строки:
C-подобный:
        if(bCSGO)
        {
            FormatEx(buffer, sizeof(buffer), "*%s", sSound[i]);
            AddToStringTable(FindStringTable("soundprecache"), buffer);
            continue;
        }
Сообщения автоматически склеены:

Или при воспроизведении нужно звёздочку добавлять к пути звука
 
Последнее редактирование:

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
Сообщения автоматически склеены:

@Grey83, Вроде все нормально работает, спасибо!
Сообщения автоматически склеены:


Решение с прекешом звуков:
Можно попробовать закомментить блок с 202-й по 207-ю строки:
C-подобный:
        if(bCSGO)
        {
            FormatEx(buffer, sizeof(buffer), "*%s", sSound[i]);
            AddToStringTable(FindStringTable("soundprecache"), buffer);
            continue;
        }
Сообщения автоматически склеены:
Сообщения автоматически склеены:

@Grey83, Ммм проблемка появилась) Вообщем убиваешь когда 2-3 игроков подряд звук воспроизводит что убил одного и оверлеи показывают 1 убийство и чат тоже самое сделал серию 1 фраг хотя 3 подряд убил
Есть какое то решение?
 
Последнее редактирование:

KiKiEEKi

🏆 🥇
Сообщения
653
Реакции
513
@Fast-Kill Пока @Grey83 не сделал свою версию, можете использовать мою из 1 поста. Как только он сделает стабильную версию я добавлю в первый пост его версию плагина.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
@Fast-Kill Пока @Grey83 не сделал свою версию, можете использовать мою из 1 поста. Как только он сделает стабильную версию я добавлю в первый пост его версию плагина.
Это да, но игроки просят с откл и вкл худов и оверлеев. будем ждать, спасибо за ответ
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
@Fast-Kill, ты точно скачал последнюю загруженную версию?
А то я её перезаливал пару раз.

Приду с работы ещё гляну.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
Отсюда архив брал
Вот почистил косяки и оптимизировал код.
Заодно вынес текст оверлея и чата в файл перевода.
Добавил админскую команду sm_count_kills_reload для перезагрузки конфига и переводов (требуется наличие флага ADMFLAG_CONFIG) без смены карты.
Уложился в 202 строки.

Если конфиг окажется пустым, то будут использоваться дефолтные значения. Но наличие файла конфига обязательно.
Расположение и название конфига изменил.
Сообщения автоматически склеены:

@Muinez, чтобы утечку сделать же (потому что датапак не удаляется).
И плагин брал отсюда после правок с текстом, показывает все нормально текст в меню без символов, только убийства у всех считает по 1
@Fast-Kill, команды вызова меню настроек: !streak и !ck.
Также это меню доступно из стандартного меню настроек, вызываемого по команде !settings.
 
Последнее редактирование:

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
только убийства у всех считает по 1
емнип я это как раз и пофиксил и перезалил
У тебя в Event_Death() начало выглядит так?
C-подобный:
    int victim = GetClientOfUserId(event.GetInt("userid"));
    iFrags[victim] = 0;    // серия кончилась
    if(hTimer[victim])
    {
        delete hTimer[victim];
        ClientCommand(victim, "r_screenoverlay off");
    }
Или вместо victim там client?
Если да, то ты скачал не самую свежую версию.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
емнип я это как раз и пофиксил и перезалил
У тебя в Event_Death() начало выглядит так?
C-подобный:
    int victim = GetClientOfUserId(event.GetInt("userid"));
    iFrags[victim] = 0;    // серия кончилась
    if(hTimer[victim])
    {
        delete hTimer[victim];
        ClientCommand(victim, "r_screenoverlay off");
    }
Или вместо victim там client?
Если да, то ты скачал не самую свежую версию.
Я уже не смогу посмотреть исходник удалил, только smx остался, я скачал когда ты сказал выше пост перезалил с исходником
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
@Fast-Kill, тогда перекачай и скомпилируй снова: возможно ты как раз ту, что нужно и не скачал.
Можно ещё попробовать декомпилировать имеющийся, но так будет быстрее и проще, кмк.
 

Fast-Kill

Админ школьник проверяет мой ПК на читы!
Сообщения
991
Реакции
299
@Grey83, Щас перезалью новый плагин еще раз
Сообщения автоматически склеены:

@Grey83, ну я вчера устал уже тестить психанул) Ну он не считал килы так же и еще в придачу звуки пропали, в консоле все нормально показывало, то есть не было ошибки звука что нет прекеша.
 
Последнее редактирование:

vitaly111

Участник
Сообщения
38
Реакции
0
Приветствую, установил плагин, но при изменении fTimeDelOverlays в ckom.ini ничего не меняется, как оверлеи воспроизводились на доли секунды, так и осталось, игра csgo, помогите пожалуйста
 
Сверху Снизу