Иконка ресурса

SourceTV Manager 1.1

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #1
Kruzya добавил(а) новый ресурс:

SourceTV Manager - Предоставляет функционал для работы с SourceTV для плагинов

Интерфейс для взаимодействия с SourceTV сервера из плагинов на SourcePawn. Позволяет взаимодействовать с наблюдателями и так же управлять записью демо.

API​

Все нативы и форварды перечислены в include-файле, в их числе:
  • Базовая информация о SourceTV-сервере (статистика, задержка, активность)
  • Взаимодействие с наблюдателями (сообщения в чате/консоли, кик, получение IP-адреса и имени)
  • Управление камерой
  • Демо-файлы (имя файла, записывающийся тик, генерация...

Узнать больше об этом ресурсе...
 

pracc

Быть, а не казаться.
Сообщения
946
Реакции
541
Не понял, но интересно.
 

Banana

Участник
Сообщения
892
Реакции
113
Я тоже не понял из описания в чем польза и что он делает..
 

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
Не понял, но интересно.
Я тоже не понял из описания в чем польза и что он делает..
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #5
@pracc, @Banana, расширение позволяет управлять запущенным инстансом сервера SourceTV, так же опрашивая его на предмет некоторой информации. Всё.
Оно используется в моём плагине автодемок, которое готовится к публикации, потому его сюда и залил.
 

mrdiega

Участник
Сообщения
328
Реакции
47
Скачана версия <sourcetvmanager-smlatest-linux-306eb5f>
SourceTV Manager (1.2) by Peace-Maker

sm 1.11.0.6928
после сегодняшней обновы начал ругаться
errors_20230203.log:
L 02/03/2023 - 22:30:40: SourceMod error session started
L 02/03/2023 - 22:30:40: Info (map "de_mirage") (file "/steamcmd/server/csgo/addons/sourcemod/logs/errors_20230203.log")
L 02/03/2023 - 22:30:40: [AntiDLL] Sigscan for Signature failed
L 02/03/2023 - 22:30:40: [SM] Unable to load extension "AntiDLL.ext": Failed to create interceptor
L 02/03/2023 - 22:30:40: [STVM] Failed to find host_client pointer. Server might crash when executing commands on SourceTV bot.
L 02/03/2023 - 22:30:40: [PTaH] Failed to get g_CPlayerVoiceListener address.
L 02/03/2023 - 22:30:40: [PTaH] Sigscan for CCSPlayer::FindMatchingWeaponsForTeamLoadout failed
L 02/03/2023 - 22:30:40: [PTaH] Detour failed CCSPlayer::FindMatchingWeaponsForTeamLoadout, functionality GiveNamedItemPre will be limited.
L 02/03/2023 - 22:30:40: [PTaH] g_pCPlayerVoiceListener == nullptr, Hook ClientVoiceToPre will be unavailable.
L 02/03/2023 - 22:30:40: [PTaH] g_pCPlayerVoiceListener == nullptr, Hook ClientVoiceToPost will be unavailable.
L 02/03/2023 - 22:30:40: [CRASH] Accelerator uploaded crash dump: Rate limit exceeded.
L 02/03/2023 - 22:30:40: [SM] Unable to load plugin "AntiDLL.smx": Required extension "AntiDLL" file("AntiDLL.ext") not running
L 02/03/2023 - 22:30:40: [SM] Exception reported: Failed to create SDKCall for CCSGameRules::RewardMatchEndDrops
L 02/03/2023 - 22:30:40: [SM] Blaming: DropsSummoner.smx
L 02/03/2023 - 22:30:40: [SM] Call stack trace:
L 02/03/2023 - 22:30:40: [SM]   [0] SetFailState
L 02/03/2023 - 22:30:40: [SM]   [1] Line 55, D:\sourcemod-1.11.0-git6916-linux\addons\sourcemod\scripting\DropsSummoner.sp::OnPluginStart
L 02/03/2023 - 22:30:40: [SM] Unable to load plugin "DropsSummoner.smx": Error detected in plugin startup (see error logs)
L 02/03/2023 - 22:30:41: [CRASH] Accelerator uploaded crash dump: You need to upgrade accelerator
L 02/03/2023 - 22:30:44: [STVM] Sigscan for CHLTVServer::BroadcastLocalChat failed
L 02/03/2023 - 22:30:44: [STVM] CHLTVServer::BroadcastLocalChat detour could not be initialized.
L 02/03/2023 - 22:30:44: [STVM] Sigscan for CHLTVDemoRecorder::StartRecording failed
L 02/03/2023 - 22:30:44: [STVM] CHLTVDemoRecorder::StartRecording detour could not be initialized.
L 02/03/2023 - 22:30:44: [STVM] Sigscan for CHLTVDemoRecorder::StopRecording failed
L 02/03/2023 - 22:30:44: [STVM] CHLTVDemoRecorder::StopRecording detour could not be initialized.
L 02/03/2023 - 22:30:44: [STVM] Failed to get CHLTVServer::m_DemoRecorder offset.
L 02/03/2023 - 22:30:58: Error log file session closed.
 

Los

Участник
Сообщения
25
Реакции
10
Скачана версия <sourcetvmanager-smlatest-linux-306eb5f>
SourceTV Manager (1.2) by Peace-Maker

sm 1.11.0.6928
после сегодняшней обновы начал ругаться
errors_20230203.log:
L 02/03/2023 - 22:30:40: SourceMod error session started
L 02/03/2023 - 22:30:40: Info (map "de_mirage") (file "/steamcmd/server/csgo/addons/sourcemod/logs/errors_20230203.log")
L 02/03/2023 - 22:30:40: [AntiDLL] Sigscan for Signature failed
L 02/03/2023 - 22:30:40: [SM] Unable to load extension "AntiDLL.ext": Failed to create interceptor
L 02/03/2023 - 22:30:40: [STVM] Failed to find host_client pointer. Server might crash when executing commands on SourceTV bot.
L 02/03/2023 - 22:30:40: [PTaH] Failed to get g_CPlayerVoiceListener address.
L 02/03/2023 - 22:30:40: [PTaH] Sigscan for CCSPlayer::FindMatchingWeaponsForTeamLoadout failed
L 02/03/2023 - 22:30:40: [PTaH] Detour failed CCSPlayer::FindMatchingWeaponsForTeamLoadout, functionality GiveNamedItemPre will be limited.
L 02/03/2023 - 22:30:40: [PTaH] g_pCPlayerVoiceListener == nullptr, Hook ClientVoiceToPre will be unavailable.
L 02/03/2023 - 22:30:40: [PTaH] g_pCPlayerVoiceListener == nullptr, Hook ClientVoiceToPost will be unavailable.
L 02/03/2023 - 22:30:40: [CRASH] Accelerator uploaded crash dump: Rate limit exceeded.
L 02/03/2023 - 22:30:40: [SM] Unable to load plugin "AntiDLL.smx": Required extension "AntiDLL" file("AntiDLL.ext") not running
L 02/03/2023 - 22:30:40: [SM] Exception reported: Failed to create SDKCall for CCSGameRules::RewardMatchEndDrops
L 02/03/2023 - 22:30:40: [SM] Blaming: DropsSummoner.smx
L 02/03/2023 - 22:30:40: [SM] Call stack trace:
L 02/03/2023 - 22:30:40: [SM]   [0] SetFailState
L 02/03/2023 - 22:30:40: [SM]   [1] Line 55, D:\sourcemod-1.11.0-git6916-linux\addons\sourcemod\scripting\DropsSummoner.sp::OnPluginStart
L 02/03/2023 - 22:30:40: [SM] Unable to load plugin "DropsSummoner.smx": Error detected in plugin startup (see error logs)
L 02/03/2023 - 22:30:41: [CRASH] Accelerator uploaded crash dump: You need to upgrade accelerator
L 02/03/2023 - 22:30:44: [STVM] Sigscan for CHLTVServer::BroadcastLocalChat failed
L 02/03/2023 - 22:30:44: [STVM] CHLTVServer::BroadcastLocalChat detour could not be initialized.
L 02/03/2023 - 22:30:44: [STVM] Sigscan for CHLTVDemoRecorder::StartRecording failed
L 02/03/2023 - 22:30:44: [STVM] CHLTVDemoRecorder::StartRecording detour could not be initialized.
L 02/03/2023 - 22:30:44: [STVM] Sigscan for CHLTVDemoRecorder::StopRecording failed
L 02/03/2023 - 22:30:44: [STVM] CHLTVDemoRecorder::StopRecording detour could not be initialized.
L 02/03/2023 - 22:30:44: [STVM] Failed to get CHLTVServer::m_DemoRecorder offset.
L 02/03/2023 - 22:30:58: Error log file session closed.
Попробуй
 

Вложения

  • sourcetvmanager.games.txt
    12.5 КБ · Просмотры: 24

ZakharYA

Добрая душа
Сообщения
77
Реакции
47
Вариант для меня оказался не рабочий, error логами с сигнатурами для sourcertvmanager пропали, но после окончания записи демки(а это смена карты) - сервак уходит в краш. (логов перед этим конечно же нет)
 
  • Мне нравится
Реакции: -r8

ASTEROID

Участник
Сообщения
74
Реакции
88
У кого стоят демки Крузи, и изменили себе геймдату для SourceTV Manager'a, верните её обратно, на ошибки которые он при старой геймдате оставляет в error логах пока можно забить.
C-подобный:
[STVM] Sigscan for CHLTVServer::BroadcastLocalChat failed
[STVM] CHLTVServer::BroadcastLocalChat detour could not be initialized.
[STVM] Sigscan for CHLTVDemoRecorder::StartRecording failed
[STVM] CHLTVDemoRecorder::StartRecording detour could not be initialized.
[STVM] Sigscan for CHLTVDemoRecorder::StopRecording failed
[STVM] CHLTVDemoRecorder::StopRecording detour could not be initialized.
[STVM] Failed to get CHLTVServer::m_DemoRecorder offset.
Т.к. на функционал который отключает STVM по этим ошибкам плагин @Kruzya не полагается.
Запись и загрузка демок будет нормально работать и при смене крашить не будет.
 

Вложения

  • sourcetvmanager.games.txt
    12.3 КБ · Просмотры: 43
  • SourceTV Manager ext-2023-02-04T225834+0300.tar.gz
    2.3 МБ · Просмотры: 44

The_C@t

Слабоумие и отвага
Сообщения
272
Реакции
142
Забавно, реально работает. Днём рип экст ругался не мог демо найти, не писало со старой.
Поколдовал, крашнул серв новой гд,закинул старую - работает падла
 

ZakharYA

Добрая душа
Сообщения
77
Реакции
47
Т.к. на функционал который отключает STVM по этим ошибкам плагин @Kruzya не полагается.
Запись и загрузка демок будет нормально работать и при смене крашить не будет.
как раз вот не работает, демки записываются, но файл не сохраняется с демками.
Сообщения автоматически склеены:

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

sourcetvmanager.games.txt:
"Games"
{
    "#default"
    {
        "#supported"
        {
            "engine" "csgo"
        }

        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "26"
                }

                "linux"
                {
                    "signature" "host_client"
                    "read"      "49"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer_DemoRecorderRef"
                    "read"      "2"
                }

                "linux"
                {
                    "signature" "CHLTVServer_DemoRecorderRef"
                    "read"      "42"
                }
            }
            "CHLTVDemoRecorder::StopRecording"
            {
                "linux"
                {
                    "signature" "CHLTVServer_DemoRecorderRef"
                    "read" "397"
                }
            }
        }

        "Offsets"
        {
            "CBaseServer::BroadcastPrintf"
            {
                "windows" "39"
                "linux"   "40"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "54"
                "linux"   "55"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "52"
                "linux"   "53"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "59"
                "linux"   "60"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "28"
                "linux"   "66"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "16"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "45"
                "linux"   "46"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "32"
                "linux"   "32"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "36"
                "linux"   "36"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "52"
                "linux"   "52"
            }

            // This gets subtracted from the offset looked up by the "CHLTVServer::m_DemoRecorder" address
            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                // ping(CCommand const&) "Client ping times:\n"
                "linux"   "\x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x45\x2A\x83\xB8\x2A\x2A\x2A\x2A\x03"
                "windows" "\x55\x8B\xEC\x51\x8B\x4D\x08\x83\xB9\x08\x05\x00\x00\x03"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                // _ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb
                "linux"   "\x55\x89\xE5\x57\x56\x8D\x45\x2A\x53\x83\xEC\x68\xC7\x45\x2A\x2A\x2A\x2A\x2A\x8B\x5D\x2A\x50\x8B\x7D"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x83\xEC\x4C\x53\x8B\xD9\xC7\x45\xB4\x2A\x2A\x2A\x2A\x56\x8D"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                // _ZN11CHLTVServer18BroadcastLocalChatEPKcS1_
                "linux"   "\x55\x89\xE5\x57\x56\x53\x83\xEC\x5C\xA1\x2A\x2A\x2A\x2A\x8B\x7D\x2A\x8B\x00"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x83\xEC\x54\xA1\x2A\x2A\x2A\x2A\x53"
            }

            "CHLTVServer_DemoRecorderRef"
            {
                "library" "engine"
                // _ZN11CHLTVServer26StopRecordingAndFreeFramesEbPK9CGameInfo
                "linux"   "\x55\x89\xE5\x57\x56\x53\x83\xEC\x3C\x8B\x75\x2A\x8B\x5D\x2A\x88\x5D"
                // _ZN11CHLTVServer11IsRecordingEv
                "windows" "\x8B\x81\x2A\x2A\x2A\x2A\x81\xC1\x2A\x2A\x2A\x2A\x8B\x40\x2A\xFF\xE0"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                // "StartRecording: couldn't open demo file %s.\n"
                // _ZN17CHLTVDemoRecorder14StartRecordingEPKcb
                "linux"   "\x55\x89\xE5\x57\x56\x53\x81\xEC\x24\x01\x00\x00\x8B\x5D\x08\x65\xA1\x14\x00\x00\x00"
            }
        }
    }

    "#default"
    {
        "#supported"
        {
            "engine" "orangebox_valve"
        }

        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "92"
                }

                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }

                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "12"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "40"
                "linux"   "41"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "192"
                "linux"   "196"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "24"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "35"
                "linux"   "36"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "49"
                "linux"   "50"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "47"
                "linux"   "48"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "54"
                "linux"   "55"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "16"
                "linux"   "56"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "14"
            }

            "CBaseClient::ExecuteStringCommand"
            {
                "linux"   "22"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "41"
                "linux"   "42"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }

            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }

            "IServer_from_CHLTVServer"
            {
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x51\x83\x3D\x2A\x2A\x2A\x2A\x01\x75\x2A"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x81\xEC\x44\x04\x00\x00\x53"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x81\xEC\x4C\x04\x00\x00\x53\x8B\xD9"
            }

            "CHLTVServer::Shutdown"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer8ShutdownEv"
                // "HLTV server shutting down"
                "windows" "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\x50\x2A\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }

    "tf"
    {
        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "92"
                }
                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }
                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "12"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "37"
                "linux"   "38"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "192"
                "linux"   "196"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "24"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "37"
                "linux"   "38"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "51"
                "linux"   "52"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "49"
                "linux"   "50"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "56"
                "linux"   "57"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "16"
                "linux"   "56"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "14"
            }

            "CBaseClient::ExecuteStringCommand"
            {
                "linux"   "22"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "43"
                "linux"   "44"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }

            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }

            "IServer_from_CHLTVServer"
            {
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x51\x83\x3D\x2A\x2A\x2A\x2A\x01\x75\x2A"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x81\xEC\x44\x04\x00\x00\x53"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x81\xEC\x4C\x04\x00\x00\x53\x8B\xD9"
            }

            "CHLTVServer::Shutdown"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer8ShutdownEv"
                // "HLTV server shutting down"
                "windows" "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\x50\x2A\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }

    "left4dead"
    {
        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "43"
                }

                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }

                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "22"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "41"
                "linux"   "42"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "224"
                "linux"   "228"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "26"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "34"
                "linux"   "35"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "48"
                "linux"   "49"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "46"
                "linux"   "47"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "52"
                "linux"   "53"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "15"
                "linux"   "61"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "15"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "40"
                "linux"   "41"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }

            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x83\xE4\xC0\x83\xEC\x34\x83\x3D\x2A\x2A\x2A\x2A\x01"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x81\xEC\x50\x04\x00\x00\x53\x55\x33\xDB"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x81\xEC\x54\x04\x00\x00\x53\x55"
            }

            "CHLTVServer::Shutdown"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer8ShutdownEv"
                // "SourceTV stop."
                "windows" "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\xD2\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }

    "left4dead2"
    {
        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "32"
                }

                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }

                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "12"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "41"
                "linux"   "42"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "224"
                "linux"   "228"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "26"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "36"
                "linux"   "37"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "50"
                "linux"   "51"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "48"
                "linux"   "49"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "54"
                "linux"   "55"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "15"
                "linux"   "61"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "15"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "42"
                "linux"   "43"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }
            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }
        }
        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x51\x83\x3D\x2A\x2A\x2A\x2A\x01\x75\x2A"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x81\xEC\x58\x04\x00\x00\xA1\x2A\x2A\x2A\x2A\x33\xC5\x89\x45\xFC\x53\x56"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x81\xEC\x60\x04\x00\x00\xA1\x2A\x2A\x2A\x2A\x33\xC5\x89\x45\xFC\x8B\x45\x0C\x53\x8B\x5D\x08\x56\x57\x8B\xF1"
            }

            "CHLTVServer::Shutdown"
            {
                "library"    "engine"
                "linux"    "@_ZN11CHLTVServer8ShutdownEv"
                // "SourceTV stop."
                "windows"    "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\xD2\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }
}
Источник: Клик
 
Последнее редактирование:

danii7852

Участник
Сообщения
54
Реакции
3
У меня демки не записываются, но плагин работает
 

danii7852

Участник
Сообщения
54
Реакции
3
я её поставил, файл dem не записывается а только json
 

mrdiega

Участник
Сообщения
328
Реакции
47
как раз вот не работает, демки записываются, но файл не сохраняется с демками.
Сообщения автоматически склеены:

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

sourcetvmanager.games.txt:
"Games"
{
    "#default"
    {
        "#supported"
        {
            "engine" "csgo"
        }

        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "26"
                }

                "linux"
                {
                    "signature" "host_client"
                    "read"      "49"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer_DemoRecorderRef"
                    "read"      "2"
                }

                "linux"
                {
                    "signature" "CHLTVServer_DemoRecorderRef"
                    "read"      "42"
                }
            }
            "CHLTVDemoRecorder::StopRecording"
            {
                "linux"
                {
                    "signature" "CHLTVServer_DemoRecorderRef"
                    "read" "397"
                }
            }
        }

        "Offsets"
        {
            "CBaseServer::BroadcastPrintf"
            {
                "windows" "39"
                "linux"   "40"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "54"
                "linux"   "55"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "52"
                "linux"   "53"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "59"
                "linux"   "60"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "28"
                "linux"   "66"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "16"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "45"
                "linux"   "46"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "32"
                "linux"   "32"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "36"
                "linux"   "36"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "52"
                "linux"   "52"
            }

            // This gets subtracted from the offset looked up by the "CHLTVServer::m_DemoRecorder" address
            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                // ping(CCommand const&) "Client ping times:\n"
                "linux"   "\x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x45\x2A\x83\xB8\x2A\x2A\x2A\x2A\x03"
                "windows" "\x55\x8B\xEC\x51\x8B\x4D\x08\x83\xB9\x08\x05\x00\x00\x03"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                // _ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb
                "linux"   "\x55\x89\xE5\x57\x56\x8D\x45\x2A\x53\x83\xEC\x68\xC7\x45\x2A\x2A\x2A\x2A\x2A\x8B\x5D\x2A\x50\x8B\x7D"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x83\xEC\x4C\x53\x8B\xD9\xC7\x45\xB4\x2A\x2A\x2A\x2A\x56\x8D"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                // _ZN11CHLTVServer18BroadcastLocalChatEPKcS1_
                "linux"   "\x55\x89\xE5\x57\x56\x53\x83\xEC\x5C\xA1\x2A\x2A\x2A\x2A\x8B\x7D\x2A\x8B\x00"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x83\xEC\x54\xA1\x2A\x2A\x2A\x2A\x53"
            }

            "CHLTVServer_DemoRecorderRef"
            {
                "library" "engine"
                // _ZN11CHLTVServer26StopRecordingAndFreeFramesEbPK9CGameInfo
                "linux"   "\x55\x89\xE5\x57\x56\x53\x83\xEC\x3C\x8B\x75\x2A\x8B\x5D\x2A\x88\x5D"
                // _ZN11CHLTVServer11IsRecordingEv
                "windows" "\x8B\x81\x2A\x2A\x2A\x2A\x81\xC1\x2A\x2A\x2A\x2A\x8B\x40\x2A\xFF\xE0"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                // "StartRecording: couldn't open demo file %s.\n"
                // _ZN17CHLTVDemoRecorder14StartRecordingEPKcb
                "linux"   "\x55\x89\xE5\x57\x56\x53\x81\xEC\x24\x01\x00\x00\x8B\x5D\x08\x65\xA1\x14\x00\x00\x00"
            }
        }
    }

    "#default"
    {
        "#supported"
        {
            "engine" "orangebox_valve"
        }

        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "92"
                }

                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }

                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "12"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "40"
                "linux"   "41"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "192"
                "linux"   "196"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "24"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "35"
                "linux"   "36"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "49"
                "linux"   "50"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "47"
                "linux"   "48"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "54"
                "linux"   "55"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "16"
                "linux"   "56"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "14"
            }

            "CBaseClient::ExecuteStringCommand"
            {
                "linux"   "22"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "41"
                "linux"   "42"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }

            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }

            "IServer_from_CHLTVServer"
            {
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x51\x83\x3D\x2A\x2A\x2A\x2A\x01\x75\x2A"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x81\xEC\x44\x04\x00\x00\x53"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x81\xEC\x4C\x04\x00\x00\x53\x8B\xD9"
            }

            "CHLTVServer::Shutdown"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer8ShutdownEv"
                // "HLTV server shutting down"
                "windows" "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\x50\x2A\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }

    "tf"
    {
        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "92"
                }
                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }
                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "12"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "37"
                "linux"   "38"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "192"
                "linux"   "196"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "24"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "37"
                "linux"   "38"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "51"
                "linux"   "52"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "49"
                "linux"   "50"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "56"
                "linux"   "57"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "16"
                "linux"   "56"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "14"
            }

            "CBaseClient::ExecuteStringCommand"
            {
                "linux"   "22"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "43"
                "linux"   "44"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }

            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }

            "IServer_from_CHLTVServer"
            {
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x51\x83\x3D\x2A\x2A\x2A\x2A\x01\x75\x2A"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x81\xEC\x44\x04\x00\x00\x53"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x81\xEC\x4C\x04\x00\x00\x53\x8B\xD9"
            }

            "CHLTVServer::Shutdown"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer8ShutdownEv"
                // "HLTV server shutting down"
                "windows" "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\x50\x2A\x8B\x86\x2A\x2A\x2A\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }

    "left4dead"
    {
        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "43"
                }

                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }

                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "22"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "41"
                "linux"   "42"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "224"
                "linux"   "228"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "26"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "34"
                "linux"   "35"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "48"
                "linux"   "49"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "46"
                "linux"   "47"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "52"
                "linux"   "53"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "15"
                "linux"   "61"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "15"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "40"
                "linux"   "41"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }

            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }
        }

        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x83\xE4\xC0\x83\xEC\x34\x83\x3D\x2A\x2A\x2A\x2A\x01"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x81\xEC\x50\x04\x00\x00\x53\x55\x33\xDB"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x81\xEC\x54\x04\x00\x00\x53\x55"
            }

            "CHLTVServer::Shutdown"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer8ShutdownEv"
                // "SourceTV stop."
                "windows" "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\xD2\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }

    "left4dead2"
    {
        "Addresses"
        {
            "host_client"
            {
                "windows"
                {
                    "signature" "host_client"
                    "read"      "32"
                }

                "linux"
                {
                    "signature" "host_client"
                }
            }

            "CHLTVServer::m_DemoRecorder"
            {
                "windows"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "5"
                }

                "linux"
                {
                    "signature" "CHLTVServer::Shutdown"
                    "read"      "12"
                }
            }
        }

        "Offsets"
        {
            "CNetChan::SendNetMsg"
            {
                "windows" "41"
                "linux"   "42"
            }

            "CBaseClient::m_NetChannel"
            {
                "windows" "224"
                "linux"   "228"
            }

            "CGameClient::ClientPrintf"
            {
                "linux"   "26"
            }

            "CBaseServer::BroadcastPrintf"
            {
                "windows" "36"
                "linux"   "37"
            }

            "CHLTVServer::ConnectClient"
            {
                "windows" "50"
                "linux"   "51"
            }

            "CHLTVServer::RejectConnection"
            {
                "windows" "48"
                "linux"   "49"
            }

            "CHLTVServer::GetChallengeType"
            {
                "windows" "54"
                "linux"   "55"
            }

            "CBaseClient::ActivatePlayer"
            {
                "windows" "15"
                "linux"   "61"
            }

            "CBaseClient::FireGameEvent"
            {
                "windows" "1"
                "linux"   "2"
            }

            "CBaseClient::Disconnect"
            {
                "linux"   "15"
            }

            "CHLTVServer::Shutdown"
            {
                "windows" "42"
                "linux"   "43"
            }

            "CHLTVDirector::m_iPVSEntity"
            {
                "windows" "16"
                "linux"   "16"
            }

            "CHLTVDirector::m_vPVSOrigin"
            {
                "windows" "20"
                "linux"   "20"
            }

            "CHLTVDirector::m_nNextShotTick"
            {
                "windows" "40"
                "linux"   "40"
            }
            "CHLTVDemoRecorder_BaseOffset"
            {
                "windows" "0"
                "linux"   "4"
            }
        }
        "Signatures"
        {
            "host_client"
            {
                "library" "engine"
                "linux"   "@host_client"
                // ping(CCommand const&) "Client ping times:\n"
                "windows" "\x55\x8B\xEC\x51\x83\x3D\x2A\x2A\x2A\x2A\x01\x75\x2A"
            }

            "CHLTVServer::BroadcastEventLocal"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer19BroadcastEventLocalEP10IGameEventb"
                // "SourceTV broadcast local event: %s\n"
                "windows" "\x55\x8B\xEC\x81\xEC\x58\x04\x00\x00\xA1\x2A\x2A\x2A\x2A\x33\xC5\x89\x45\xFC\x53\x56"
            }

            "CHLTVServer::BroadcastLocalChat"
            {
                "library" "engine"
                "linux"   "@_ZN11CHLTVServer18BroadcastLocalChatEPKcS1_"
                // "hltv_chat"
                "windows" "\x55\x8B\xEC\x81\xEC\x60\x04\x00\x00\xA1\x2A\x2A\x2A\x2A\x33\xC5\x89\x45\xFC\x8B\x45\x0C\x53\x8B\x5D\x08\x56\x57\x8B\xF1"
            }

            "CHLTVServer::Shutdown"
            {
                "library"    "engine"
                "linux"    "@_ZN11CHLTVServer8ShutdownEv"
                // "SourceTV stop."
                "windows"    "\x56\x8B\xF1\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E\x2A\x2A\x2A\x2A\xFF\xD2\x8B\x86\x2A\x2A\x2A\x2A\x8B\x50\x2A\x8D\x8E"
            }

            // StartRecording and StopRecording are virtual, but get called directly in the linux binary..
            // Need to add a detour.
            "CHLTVDemoRecorder::StartRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder14StartRecordingEPKcb"
            }

            "CHLTVDemoRecorder::StopRecording"
            {
                "library" "engine"
                "linux"   "@_ZN17CHLTVDemoRecorder13StopRecordingEv"
            }
        }
    }
}
Источник: Клик

errors:
L 02/05/2023 - 18:45:40: SourceMod error session started
L 02/05/2023 - 18:45:40: Info (map "am_grass2") (file "/steamcmd/server/csgo/addons/sourcemod/logs/errors_20230205.log")
L 02/05/2023 - 18:45:40: [STVM] Signature for CHLTVDemoRecorder::StopRecording not found in gamedata
L 02/05/2023 - 18:45:40: [STVM] CHLTVDemoRecorder::StopRecording detour could not be initialized.
 

The_C@t

Слабоумие и отвага
Сообщения
272
Реакции
142
Такая же ошибка, но пофигу, демо пишутся.
До полноценного исправления думаю можно потерпеть)
 

xstage

🏹
Сообщения
726
Реакции
754
errors:
L 02/05/2023 - 18:45:40: SourceMod error session started
L 02/05/2023 - 18:45:40: Info (map "am_grass2") (file "/steamcmd/server/csgo/addons/sourcemod/logs/errors_20230205.log")
L 02/05/2023 - 18:45:40: [STVM] Signature for CHLTVDemoRecorder::StopRecording not found in gamedata
L 02/05/2023 - 18:45:40: [STVM] CHLTVDemoRecorder::StopRecording detour could not be initialized.
Такая же ошибка, но пофигу, демо пишутся.
До полноценного исправления думаю можно потерпеть)
 

Вложения

  • sourcetvmanager.games.txt
    23.3 КБ · Просмотры: 41

Los

Участник
Сообщения
25
Реакции
10
Это должна быть без ошибки и рабочая?
 
Сверху Снизу