Question

DimasikMatveev
Новичок

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

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

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

 

Share this post


Link to post

17 answers to this question

  • 0
Андрей Лазарев
Активный

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

Share this post


Link to post
  • 0
Андрей Лазарев
Активный

что никто незнает как решить данную проблемму?

Share this post


Link to post
  • 0
Андрей Лазарев
Активный
6 часов назад, Nicinen сказал:

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

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

Share this post


Link to post
  • 0
Sam At Style (Tsoi)
Освоившийся

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

Share this post


Link to post
  • 0
Андрей Лазарев
Активный

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

 

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

 

Share this post


Link to post
  • 0
Андрей Лазарев
Активный

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

Share this post


Link to post
  • 0
DEST
Maintainer

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

Share this post


Link to post
  • 0
Андрей Лазарев
Активный
В 23.08.2019 в 05:49, DEST сказал:

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

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

Share this post


Link to post
  • 0
Cawfee
Великий Гуру

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

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

 

Share this post


Link to post
  • 0
Андрей Лазарев
Активный
21 час назад, odosenok сказал:

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


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

 

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

Share this post


Link to post
  • 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;
}

 

Share this post


Link to post
  • 0
Андрей Лазарев
Активный

да и с этим плагином не работает не одна команда потом

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Badr
      By Badr
      дратуте , решил сделать лаунчер самп на node.js , все норм сделал дизайн/стиль , но когда захожу абсолютно на любой сервер (заходил на онух рп ,и на свой сервер ) и пишет вронг сервер пароль ( мне лень на англиском писать )  скрин прикрепил 

      исходник https://disk.yandex.ru/d/D_104GFgrFO16A ( сам делал , то-есть дипсик  )
      я знаю все будут писать что (Слово удалено системой) ии-шное