Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила раздела

Перед созданием новой темы убедитесь, не искал ли кто-нибудь подобный плагин до вас, для этого следует воспользоваться поиском.

Все вновь созданные темы, с названием типа "Помогите найти", "А что это за плагин", "Ищу плагин", "Нужен плагин", "Подскажите пожалуйста название плагина" - будут удалены.
При создании темы постарайтесь максимально понятно сформулировать её заголовок так, чтобы он соответствовал функциям плагина который Вы ищите. В том случае, если Вам не удается сформулировать мысль и правильно расписать всё в теме, воспользуйтесь графическим редактором, к примеру Paint, что бы примерно изобразить функции нужного Вам плагина.

Автоматическая выдача ВИПки ТОП 10 игрокам

, Работа с плагином GameMe
Статус пользователя noob1985
сообщение 20.6.2015, 21:25
Сообщение #1
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Здравствуйте! Возникла необходимость выдачи ВИПки игрокам попавшим в ТОП 10 и блокировки если игрок вышел из ТОП 10.
Реализовать мог готовыми плагинами, но дело в том, что я использую статистику GameMe (Статистика в режиме реального времени). Есть сайт, где виден ТОП игроков.
Нужно реализовать плагин, который будет работать с этой статистикой, а если это невозможно, то каким-то образом с информацией сайта статистики. Онлайн Статистика
Например написать скрипт PHP который будет читать информацию со страницы ТОП игроков каждые 5 минут и сохранять их в файл на сервере (реализовать можно посредством crontab), а плагин попросту будет читать этот файл каждые 5 минут и применять настройки в файле users.ini
Желательно не удалять игроков вышедших из ТОП, а комментировать знаком ;
Или напрямую с плагином если это возможно...

В принципе это всё. Готов оплатить плагин через paypal или skrill.
Жду Ваших предложений.
Прикрепленные файлы:
Прикрепленный файл  gameme_cstrike.sma ( 46,35 килобайт ) Кол-во скачиваний: 23
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя eone
сообщение 20.6.2015, 23:15
Сообщение #2
Стаж: 11 лет

Сообщений: 317
Благодарностей: 180
Полезность: 245

Я уже пытался :))) Плагин привязанный к статистике GameMe (Пост #797865)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Swidi
сообщение 20.6.2015, 23:18
Сообщение #3
Стаж: 11 лет

Сообщений: 237
Благодарностей: 30
Полезность: < 0

А с обычной статистикой statsx_gui_skill.amxx плагин будет работать стабильно ? Выдавать випки через users и снимать или я не так понял?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 21.6.2015, 9:42
Сообщение #4
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Цитата(eone @ 20.6.2015, 23:15) *


И что, неосилил? Или это нереально? Очень нужно, не бесплатно же )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя eone
сообщение 21.6.2015, 11:19
Сообщение #5
Стаж: 11 лет

Сообщений: 317
Благодарностей: 180
Полезность: 245

noob1985, ну я пытался попросить сделать так же как и ты :) как видишь никто не взялся
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 21.6.2015, 11:37
Сообщение #6


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

[API] gameME (Пост #799132)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 21.6.2015, 12:39
Сообщение #7
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Цитата(Bloo @ 21.6.2015, 11:37) *


У меня пара вопросов относительно этого плагина:

Код:
// gameME connection parameters
#define RECV_TASK_ID 27200 <--- Что за порт?
new gszHost[] = "stats.skillzonly.net" <--- Так понимаю мой хост статы тут?
new gszRankName[] = "cstrike"
#define TIMEOUT 2.00 <--- Что за задержка?

#define IGNORE_FLAG ADMIN_LEVEL_A /* flag "m" */ <--- Для чего игнор?

new pRanks, pFlags

new g_socket[33]
new Float:g_socked_time[33]

public plugin_init() {
register_plugin( "Top Awards - gameME", "0.13", "Safety1st" )
register_dictionary( "topawards.txt" ) <--- Что за словарик такой, его самому писать или где-то скачать?
pRanks = register_cvar( "top_ranks", "10" )
pFlags = register_cvar( "top_flags", "btuz" )


Вот....
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 21.6.2015, 19:11
Сообщение #8


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

noob1985, видимо да, я не пользовался никогда им.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 21.6.2015, 19:50
Сообщение #9
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Цитата(Bloo @ 21.6.2015, 19:11) *
noob1985, видимо да, я не пользовался никогда им.


Плагин даже не компилипруется... Кто-нить может отозваться на мои мольбы?...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 21.6.2015, 20:05
Сообщение #10


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

noob1985, плагин видимо решили переделать на переменные или массивы, я хз как там правильно, в общем вернул обратно на дефайны, попробуй, по идеи должен работать.
Код:
/*
* Top Awards 10/22/2012
*
* ѕлагин добавл¤ет флаг(и) TOPx игрокам
*  вары:
* top_ranks - максимальный ранг, который может иметь игрок (конец TOPX)
* top_flags - какие флаги добавл¤ютс¤
*
* »гнорируютс¤ игроки с флагом IGNORE_FLAG (по умолчанию это флаг m) и игроки, уже имеющие ¬—≈ добавл¤емые флаги.
* ѕо¤сн¤юща¤ надпись игроку выводитс¤ цветным чатом.
*
* Credits:
* - original plugin's authors SimonLogic & RoleX
* - c-s.net.ua users 3aB}{o3 & cs-portal for the idea and link
*/

#include <amxmodx>
#include <sockets>

// gameME connection parameters
#define RECV_TASK_ID 27200
#define TIMEOUT 2.00

#define HOST "stats.aimaster.ru"
#define GAMENAME cstrike

#define IGNORE_FLAG ADMIN_LEVEL_A /* flag "m" */

new pRanks, pFlags

new g_socket[33]
new Float:g_socked_time[33]

public plugin_init() {
register_plugin( "Top Awards - gameME", "0.13", "Safety1st" )
register_dictionary( "topawards.txt" )
pRanks = register_cvar( "top_ranks", "10" )
pFlags = register_cvar( "top_flags", "t" )
}

public client_connect(id) {
CheckStats(id)
}

public CheckStats(id) {
if ( g_socket[id] )
disconnect_socket(id)

new error

g_socket[id] = socket_open( HOST, 80, SOCKET_TCP, error )

if((g_socket[id]>0)&&!error){
new get[256], authid[32]

get_user_authid(id,authid,31)

if ( !strcmp( authid, "STEAM_ID_LAN" ) )
return

formatex(get,255,"GET /api/playerinfo/GAMENAME/%s/ HTTP/1.1^r^nHost: %s^r^nConnection: close^r^n^r^n",authid,HOST)

socket_send(g_socket[id],get,strlen(get))

g_socked_time[id] = get_gametime() + TIMEOUT

if(!task_exists(RECV_TASK_ID+id)){
set_task(0.1,"read_socket",RECV_TASK_ID+id,.flags="b")
}
}
}

public read_socket(task_id){
new id = task_id - RECV_TASK_ID

if(!is_user_connected(id)){
disconnect_socket(id)
return
}

new buffer[1024]

if(socket_change(g_socket[id],1))
{
socket_recv(g_socket[id], buffer,1023)

if(contain(buffer,"<rank>")!=-1){
new len1 = contain(buffer,"<rank>")
new len2 = contain(buffer,"</rank>")

new temp[10]

// <rank> = 6

formatex(temp,len2-len1-6,buffer[len1+6])

log_amx("get_rank -> %s",temp)

new iFlags = get_user_flags(id)
new szAddFlags[16]
get_pcvar_string( pFlags, szAddFlags, 15 )
new iAddFlags = read_flags(szAddFlags)

if ( iFlags & IGNORE_FLAG || iFlags & iAddFlags == iAddFlags )
// ignore player with IGNORE_FLAG or having all additional flags
return

new iRanks = get_pcvar_num(pRanks)
if ( !iRanks )
return

new iRank = str_to_num(temp)

if ( iRank && iRank <= iRanks ) {
// 1st check for safety. may be player not ranked at all yet
set_user_flags( id, iFlags | iAddFlags )
new data[2]
data[0] = id
data[1] = iRanks
set_task( 5.0, "PrintMessage", _, data, 2 )
}

disconnect_socket(id)

return
}


if(!buffer[0]){
disconnect_socket(id)

return
}
}

if(g_socked_time[id]<get_gametime()){
log_amx("socket operation timeout")
disconnect_socket(id)
}
}

public disconnect_socket(id){
remove_task(RECV_TASK_ID+id)
g_socked_time[id] = 0.0

socket_close(g_socket[id])

g_socket[id] = 0
}

public PrintMessage( data[2] ) {
if ( !is_user_connected(data[0]) )
return

ColorPrint( data[0], "%L", data[0], "TOP_AWARDS", data[1] )
}

ColorPrint( iReceiver, const szRawMessage[ ], any:... ) {
static iMsgSayText = 0
if( !iMsgSayText )
iMsgSayText = get_user_msgid( "SayText" )

new szMessage[192]
vformat( szMessage, charsmax(szMessage) - 1, szRawMessage, 3 )
replace_all( szMessage, charsmax(szMessage) - 1, "!n", "^1" )
replace_all( szMessage, charsmax(szMessage) - 1, "!t", "^3" )
replace_all( szMessage, charsmax(szMessage) - 1, "!g", "^4" )
if ( szMessage[0] != '^1' || szMessage[0] != '^3' || szMessage[0] != '^4' )
format( szMessage, charsmax(szMessage) - 1, "^1%s", szMessage ) // we must set initial default color if it is not provided explicitly

message_begin( MSG_ONE_UNRELIABLE, iMsgSayText, _, iReceiver )
write_byte(iReceiver) // use target player as sender to see colors at all (and his own team color for ^3)
write_string(szMessage)
message_end()
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 21.6.2015, 21:57
Сообщение #11
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Логи....

Код:
2015-06-21 21:53:21:    5.196.89.214:27015 - SERVER: Authentication successfully on 5.196.89.214:27015
2015-06-21 21:53:21: 5.196.89.214:27016 - SERVER: Currently 7/21 players connected
2015-06-21 21:53:21: 5.196.89.214:27016 - SERVER: Server running map: de_dust2_2x2
2015-06-21 21:53:21: 5.196.89.214:27016 - SERVER: Authentication successfully on 5.196.89.214:27016
2015-06-21 21:53:21: 5.196.89.214:27015 - SERVER: Game type: Normal
2015-06-21 21:53:21: 5.196.89.214:27015 - VAC: Kick/Ban vac-banned players
2015-06-21 21:53:21: 5.196.89.214:27015 - SERVER: 6x minimum players required
2015-06-21 21:53:20: 5.196.89.214:27015 - SERVER: Server running game: csgo [csgo]
2015-06-21 21:53:21: 5.196.89.214:27016 - SERVER: Game type: Normal
2015-06-21 21:53:21: 5.196.89.214:27016 - VAC: Kick/Ban vac-banned players
2015-06-21 21:53:21: 5.196.89.214:27016 - SERVER: 6x minimum players required
2015-06-21 21:53:20: 5.196.89.214:27016 - SERVER: Server running game: cstrike [cs16]
2015-06-21 21:53:21: - gameME: gameME Stats are now running (Normal mode)
2015-06-21 21:53:21: - gameME: Opening network socket on 88.198.27.9:34215 ... ok
2015-06-21 21:53:20: - gameME: Running customer cw014226
2015-06-21 21:53:20: - gameME: gameME Stats starting...
2015-06-21 21:53:20: - MYSQL: Close connecting to options database ... ok
2015-06-21 21:53:20: - MYSQL: Connecting to options database ... connected ok
gameME Stats started...


#define RECV_TASK_ID 27200 <--- Тут менять ничего не надо?
register_dictionary( "topawards.txt" ) <---- Это что такое, где взять?

Плашин работает, но не вижу чтобы давал привилешии пока. Ошибок нет...

Отредактировал: Bloo, - 22.6.2015, 10:28
Причина: Выдано устное предупреждение!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 21.6.2015, 22:09
Сообщение #12
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Код
2015-06-21 21:53:20:    5.196.89.214:27015 - SERVER: Server running game: csgo [csgo]

Мне нравится этот парень: на сервер CS:GO ставит AMXX-плагин и в качестве его логов даёт логи статы rofl.gif

Кстати, в SourceMod-версии плагина gameME API уже есть.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 21.6.2015, 22:12
Сообщение #13
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Цитата(Safety1st @ 21.6.2015, 22:09) *
Код
2015-06-21 21:53:20:    5.196.89.214:27015 - SERVER: Server running game: csgo [csgo]

Мне нравится этот парень: на сервер CS:GO ставит AMXX-плагин и в качестве его логов даёт логи статы rofl.gif

Кстати, в SourceMod-версии плагина gameME API уже есть.


Ты явно что-то перепутал....

Код:
2015-06-21 21:53:20:    5.196.89.214:27016 - SERVER: Server running game: cstrike [cs16]


Это 1.6 сервер и логи статы я дал, потому что возможно пригодятся от туда данные для параметров плагина...
У меня на аккаунте 2 сервера CS GO:27015/ 1.6:27016

Кстати, в SourceMod-версии плагина gameME API уже есть. - это я вкурсе как бы )

Отредактировал: noob1985, - 21.6.2015, 22:16
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 21.6.2015, 22:22
Сообщение #14
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Ну, ладно, тогда ещё не всё потеряно lol.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 21.6.2015, 22:24
Сообщение #15
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Слушай, а по теме тебе нечего сказать мне? Было бы здорово!

Вот в логах нашёл что она передаёт Rcon from 88.198.27.9:47278 на этот порт, может его в плагине нужно указать?

P.S. Пробовал. Не помогло.

Отредактировал: noob1985, - 21.6.2015, 23:13
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 22.6.2015, 10:34
Сообщение #16


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Цитата
Rcon from 88.198.27.9:47278

Это стата отправляет.
---------------------------------------
Цитата
#define RECV_TASK_ID 27200

Не знаю что это за taskID, по коду для меня это не понятно.

----------------------------------------
Цитата
register_dictionary( "topawards.txt" )

Задел на будущее, в плагине сейчас не используется этот словарь.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 22.6.2015, 11:11
Сообщение #17
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Цитата(Bloo @ 22.6.2015, 11:34) *
Не знаю что это за taskID, по коду для меня это не понятно.

Абсолютно произвольное число. Какой-то ID'ник должен быть у задачи, 'работающей' с сокетами, чтобы ей было возможно управлять.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 22.6.2015, 18:03
Сообщение #18
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Цитата(Safety1st @ 22.6.2015, 11:11) *
Абсолютно произвольное число. Какой-то ID'ник должен быть у задачи, 'работающей' с сокетами, чтобы ей было возможно управлять.


Я так и не понял какие параметры выставить чтобы оно заработало. Вы не подскажете?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 22.6.2015, 19:20
Сообщение #19
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

У меня лично большие сомнения, что плагин работоспособен. Главная причина, почему я не поставил его на своих серверах с gameME.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя noob1985
сообщение 22.6.2015, 20:24
Сообщение #20
Стаж: 11 лет

Сообщений: 69
Благодарностей: 1
Полезность: 15

Цитата(Safety1st @ 22.6.2015, 19:20) *
У меня лично большие сомнения, что плагин работоспособен. Главная причина, почему я не поставил его на своих серверах с gameME.


Если так, то найдётся ли челокек сумеющий довести его до ума? Пусть не бесплатно!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: