Вопросы

Новичок

Прошу помочь с подключением проверки мод-пака к моду Just RP.
Как я не пытался, не могу вычислить ХЭШ мод пака, ничего не высвечивается, всё сделал как написано, пробовал по всякому, кому не сложно помогите пж.

Буду благодарен, сильно!

((отсюда брал код)) Командный процессор PawnCMD.

 

Поделиться сообщением


Ссылка на сообщение

17 ответов на этот вопрос

  • 0
Активный

Вот и у меня такой процессор что только не делал хэш не выводится уже всю голову сломал.Здесь возможно я так думаю что какойто другой паблик обрабатывает команды а какой без понятия.

Поделиться сообщением


Ссылка на сообщение
  • 0
Активный
6 часов назад, Nicinen сказал:

@Андрей Лазарев Знаем, головой и руками:)

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

Поделиться сообщением


Ссылка на сообщение
  • 0
Освоившийся

Попробуйте использовать такие паблики как OnPlayerCommandPerfomed/OnPlayerCommandReceived. Так же если не помогает попробуйте вместо "$" поставить "/". (В обоих пабликах)

Поделиться сообщением


Ссылка на сообщение
  • 0
Активный

в оба паблика пробывал а вот с заменой еще нет щас испробую

 

Неа всеровно не работает. Что еще может быть?

 

Поделиться сообщением


Ссылка на сообщение
  • 0
Активный

у меня командный процессор pawncmd и паблик который там указан не работает

Поделиться сообщением


Ссылка на сообщение
  • 0

@Андрей Лазарев Тут нужно вам открыть либо документацию Pawn.CMD, либо исходники. Но по-моему в Pawn.CMD с помощью хака памяти заменяет адрес функции OnPlayerCommandText на свой, поэтому OnPlayerCommandText вообще не вызывается, а OnPlayerCommandReceived/Perfomed вызываются только если это команда, т.е. начинается с "/". Я посмотрю попозже, если не забуду и уточню. Возможно даже, что из-за такого костыля со стороны разработчиков CRMP не получится использовать проверку на модпак и Pawn.CMD. 

Поделиться сообщением


Ссылка на сообщение
  • 0
Активный
В 23.08.2019 в 05:49, DEST сказал:

@Андрей Лазарев Тут нужно вам открыть либо документацию Pawn.CMD, либо исходники. Но по-моему в Pawn.CMD с помощью хака памяти заменяет адрес функции OnPlayerCommandText на свой, поэтому OnPlayerCommandText вообще не вызывается, а OnPlayerCommandReceived/Perfomed вызываются только если это команда, т.е. начинается с "/". Я посмотрю попозже, если не забуду и уточню. Возможно даже, что из-за такого костыля со стороны разработчиков CRMP не получится использовать проверку на модпак и Pawn.CMD. 

Вы не смотрели по поводу этой проблеммы?

Поделиться сообщением


Ссылка на сообщение
  • 0
Cawfee
Великий Гуру

Попробуйте использовать адаптированную версию плагина от Владимира Сергеенко: тык. Ну, а проверку на установленность пакета модификаций, как и раньше добавляйте в OnPlayerCommandText: 

if(strfind(cmdtext, "$response get_custom_hash", true) != -1)

 

Поделиться сообщением


Ссылка на сообщение
  • 0
Активный
21 час назад, odosenok сказал:

Попробуйте использовать адаптированную версию плагина от Владимира Сергеенко: тык. Ну, а проверку на установленность пакета модификаций, как и раньше добавляйте в OnPlayerCommandText: 


if(strfind(cmdtext, "$response get_custom_hash", true) != -1)

 

что то я не нашел где его там скачать

Поделиться сообщением


Ссылка на сообщение
  • 0
Активный
В 08.09.2019 в 17:42, DEST сказал:

@Андрей Лазарев вот тут скачайте инклуд и плагин - https://github.com/vsergeenko777/Pawn.CMD/releases, source code можно не качать, это исходные коды

спасибо большое ваша ссылка очень помогла я вывел хэш но когда его потом прописал сервер просто тупо раз за разом перезагружается и никакого сообщенияв чат не выводит

 

 

а с модпаком все норм заходит

 

public OnPlayerCommandText(playerid, cmdtext[])
{
	if(strfind(cmdtext, "$response get_custom_hash", true) != -1) //Если ответ получен и искомая строка найдена
	{
	    new packhash[64]; //Создадим массив, в котором будет находится этот хэш
	    strmid(packhash, cmdtext, 26, strlen(cmdtext)); //Разделяем строку cmdtext и результат разделения - искомый хэш - запишем в массив packhash
	    if (strcmp(packhash, "fb1d0c34e25be780", false)) //Если строки различны
	    {
	        SetTimerEx("KickPack", 1000, false, "i", playerid); // кикаем игрока с таймером, дабы не было переподключения
	    }
	    return 1;
	}
	return 1;
}

 

Поделиться сообщением


Ссылка на сообщение
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • От dante34538
      ищу гейм мод самп рп, который не был в пабликах, по цене до 3000р, писать в вк https://vk.com/screamzmorrow
    • От DonK/Key
      Всем привет, помогите кто разбирается, так как я можно сказать начинающий сделать свой КРМП, буду благодарен. Напишите либо тут либо @evreI_sigma (Мой Telegram)