AMX MOD X
Четверг, 05.12.2024, 01:28:41



Приветствую Вас Гость | RSS
[ Главная ] [ Плагин веб статистики top15 sqlstats - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
Плагин веб статистики top15 sqlstats
tavotДата: Среда, 20.05.2009, 12:16:36 | Сообщение # 1
Генерал-майор
Группа: Пользователи
Сообщений: 256
Репутация: 3
Статус: Не в сети
Собственно есть плагин sqlstats - он заносит в sql базу топ 15 с сервера.
Но писался он видимо для лицензии, а на крятнутых серверах стим id определяется как valive_id_p....
А в базе примари значение стоит authid

нужно сделать так, чтоб он определял не по authid, а по нику -> (name)
Попробывал сам, но что то ни как не получается.

Quote
new g_tmpsv_lan = 0 // set to 1 to force logging by IP instead of STEAM_ID

не вариант - у нас много игроков с динамикой.

Добавлено (2009-05-20, 12:16 Pm)
---------------------------------------------
я так понимаю надо тут:

Code
dbi_query(g_dbc, "CREATE TABLE IF NOT EXISTS `%s` (`authid` VARCHAR( 32 ) NOT NULL, `name` VARCHAR( 32 ) NOT NULL , `date` TIMESTAMP( 10 ) NOT NULL , `score` INT NOT NULL ,`kills` INT NOT NULL , `teamkills` INT NOT NULL, `deaths` INT NOT NULL , `hits` INT NOT NULL , `shots` INT NOT NULL , `headshots` INT NOT NULL , `efficiency` DOUBLE (19,2) DEFAULT NULL, `accuracy` double(19,2) default NULL,`accuracyHS` double(19,2) default NULL, PRIMARY KEY(`authid`))", g_sqlstats_table)

PRIMARY KEY(`authid`))" -> зменить на name

и что то сделать вот тут:

Code
// gets the stats for a player
gets_user_stats(iPlayer)
{
  new bad_id[5] = "hltv"
  new bad_id2[18] = "VALVE_ID_LOOPBACK"
  new sAuthid[MAX_NAME_LENGTH+1]

  get_user_authid(iPlayer, sAuthid, MAX_NAME_LENGTH)

   if ( is_user_connected(iPlayer) && contain( sAuthid, bad_id) == -1 && contain( sAuthid, bad_id2) == -1 )
   {
   //if we're on LAN save by IP, else save by steam_id
   if ( g_tmpsv_lan == 1 )
    get_user_ip(iPlayer, g_sPStatsIds[g_iMutationcount], MAX_NAME_LENGTH, 1)
   else{
    get_user_authid(iPlayer, g_sPStatsIds[g_iMutationcount], MAX_NAME_LENGTH)
   }
   get_user_name(iPlayer, g_sPStatsNames[g_iMutationcount], MAX_NAME_LENGTH)
   get_user_stats( iPlayer, g_iStats, g_iBodyHits )
    
   log_amx("[sqlStats] gets_user_stats %s, %s",g_sPStatsNames[g_iMutationcount], g_sPStatsIds[g_iMutationcount])
    
   g_iPStats[g_iMutationcount][S_KILLS] = g_iStats[S_KILLS]  // kills
   g_iPStats[g_iMutationcount][S_DEATHS] = g_iStats[S_DEATHS]  // deaths
   g_iPStats[g_iMutationcount][S_HS] = g_iStats[S_HS]    // headshots
   g_iPStats[g_iMutationcount][S_TK] = g_iStats[S_TK]    // teamkills
   g_iPStats[g_iMutationcount][S_SHOTS] = g_iStats[S_SHOTS]  // shots
   g_iPStats[g_iMutationcount][S_HITS] = g_iStats[S_HITS]   // hits
   //g_iPStats[g_iMutationcount][S_TIME] = get_user_time(iPlayer)    // playing time // dropped query lines are getting too big for the compiler
   
   g_iPStats[g_iMutationcount][S_SCORE] = g_iStats[S_KILLS] - g_iStats[S_DEATHS] - g_iStats[S_TK]
    
   //FIXME: maybe convert these into floats? now done in integers, db already works with floats (double(19,2))
   g_iPStats[g_iMutationcount][S_EFF] = g_iStats[S_KILLS]*100 / (g_iStats[S_KILLS]+g_iStats[S_DEATHS])
   g_iPStats[g_iMutationcount][S_ACC] = g_iStats[S_HITS]*100 / g_iStats[S_SHOTS]
   g_iPStats[g_iMutationcount][S_ACCHS] = g_iStats[S_HS]*100 / g_iStats[S_SHOTS]
   
   //one stats mutation added
   if (g_iMutationcount < BUFFER_SIZE )
    g_iMutationcount++
   else
    log_amx("[sqlStats] g_iMutationcount overflow, increase BUFFER_SIZE") // your server can be very busy <img rel="usm" src="http://amxmodx.ucoz.ru/Smiles/smile.gif" border="0" align="absmiddle" alt=":)">
     
  }
}

Есть желающие помоч?

Прикрепления: sqlstats.sma (22.5 Kb)


Сообщение отредактировал tavot - Среда, 20.05.2009, 12:22:06
 
tavotДата: Среда, 20.05.2009, 18:30:46 | Сообщение # 2
Генерал-майор
Группа: Пользователи
Сообщений: 256
Репутация: 3
Статус: Не в сети
Или есть другой плагин ( смотрим sqlstats2.sma)
там такая же проблема, если valive_id или стим - он не переписывает строки.

Люди помогите плиз!!!!!

Прикрепления: sqlstats2.sma (10.3 Kb)
 
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2024