06:23
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
        
Подвиcание SA-MP (2)
Max 20.02.2017 21:57
 





Рекомендуем:
Добавить IP: 95.172.59.51:7777





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 116 из 151«12114115116117118150151»
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Вопросы и ответы по GTA SAMP [от 19.03.2013]
WeddewДата: Вторник, 19.03.2013, 15:11 | Сообщение # 1
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.


Новичкам:


  • Внятно объясняйте Вашу проблему, если Вы получили ошибку, обязательно выкладывайте строки, на которые "ругается" компилятор.
  • Задавайте вопросы исключительно по коду, а не по системам, которые имеются у Вас в моде.
  • Помощь идет только по желанию пользователя, если человек помог Вам только частично, не нужно начинать поливать его грязью.
  • Возможно тип Вашей проблемы уже обсуждался на форуме, воспользуйтесь поиском.
  • В этой теме пользователи лишь оказывают помощь в написании кода, а не пишут его за Вас.
  • Если Вы хотите отблагодарить пользователя, жмите на кнопку . (Только для продвинутых, и выше)
  • Если Вы уже задавали вопрос и не получили на него ответа, то лучше написать в ЛС одному из участников группы , чем засорять тему.
  • Если Вы сами решили свою проблему, то напишите, как Вы ее решили.
  • Если Вас просят выложить код функций, то используйте для этого сервис pastebin.com


Скриптерам:

  • Не оскорблять новичков.
  • Не засорять тему сообщениями, подобные этому: "Закрой PAWNO и иди делай уроки".
  • Не посылать в поиск. Пользователь итак уже пришёл сюда из поиска. Если решение проблемы уже было опубликовано, то указать в какой теме
  • Как можно понятней объяснять решение той, или иной проблемы, по возможности приводить примеры.



Инструкции:

  • [cut noguest=Краткая инструкция для вшивания FS в мод]
    1) Все из callback OnFilterScriptInit вставляем в конец callback OnGameModeInit перед словом return.
    2) Все из callback OnFilterScriptExit вставляем в конец callback OnGameModeExit перед словом return.
    3) Все объявления переменных (new ...) и констант (const ...; #define ... ...) в начало мода.
    4) Все прототипы (forward ...(...) ) ко всем прототипам.
    5) Все описания нестандартных функций (public ...(...); stock ...(...); ...(...){...} ), которых нет в моде, вставляем в конец мода.

    P.S. Данный мануал не гарантирует, что после копирования все будет работать, так как еще потребуется подгонять одни системы под другие.
    P.P.S Если в одном из callback`ов Вы не обнаружили кода, то переходите к следующему пункту инструкции.
    [/cut]
  • [cut noguest=Защита от ботов]
    В OnPlayerConnect
    [pwn]if(GetPlayersSameIp(playerid) > 3) Kick(playerid);[/pwn]
    В конец мода
    [pwn]stock GetPlayersSameIp(playerid)
    {//by Weddew
    //Возвращает количество подключенных игроков с таким же IP как у playerid
    new count = 0, p_ip[16], i_ip[16];
    GetPlayerIp(playerid, p_ip, sizeof(p_ip));
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    GetPlayerIp(playerid, i_ip, sizeof(i_ip));
    if(i != playerid)
    {
    if(!strcmp(p_ip, i_ip, false)) count++;
    }
    }
    return count;
    }[/pwn]
    [/cut]
  • [cut noguest=Проверка на Role Play ник]
    В конец мода:
    [pwn]
    stock IsARPNickname(playerid)
    {
    //by Weddew
    new p_n[MAX_PLAYER_NAME], dcount = 0;
    GetPlayerName(playerid, p_n, sizeof(p_n))
    for(i = 0; i < strlen(p_n); i++)
    {
    if(p_n[i] == '_') dcount++;
    }
    if(dcount != 1 || p_n[0] == '_' || p_n[strlen(p_n)-1] == '_') return false;
    return true;
    }[/pwn]

    В OnPlayerConnect

    [pwn]
    if(!IsARPNickname(playerid)) Kick(playerid);[/pwn]

    P.S.:
    Не пропустит: _Nick_Name_, _Nick_Name, NickName_
    Пропустит: Nick_Name, NICK_NAME, NiCk_name, nick_name[/cut]




www.weddew-shop.ru


Сообщение отредактировал Weddew - Среда, 23.10.2013, 21:45
GeryyДата: Суббота, 16.11.2013, 14:23 | Сообщение # 1726
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
как извлеч

саму строку можешь извлечь через strfind

Добавлено (16.11.2013, 14:23)
---------------------------------------------
Weddew,

Network Active: 1
Network State: 8
Messages in Send buffer: 0
Messages sent: 46
Bytes sent: 1944
Acks sent: 12
Acks in send buffer: 0
Messages waiting for ack: 0
Messages resent: 0
Bytes resent: 0
Packetloss: 0.0
Messages received: 57
Bytes received: 1524
Acks received: 0
Duplicate acks received: 0
Inst. KBits per second: 28.8
KBits per second sent: 2.2
KBits per second received: 1.7



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Суббота, 16.11.2013, 14:24
WeddewДата: Суббота, 16.11.2013, 14:48 | Сообщение # 1727
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Geryy, спасибо :) Никогда не пользовался данной функцией



www.weddew-shop.ru
[[[WampiR]]]Дата: Воскресенье, 17.11.2013, 13:25 | Сообщение # 1728
Уверенный в себе
Группа: Продвинутые
Сообщений: 202
Награды: 2
Город: Омск
Репутация: -22
Замечания: 20%
Статус:
Здравствуйте. У меня такая проблема: я вырезал сохранение тюнинга с FS в мод и там, когда игрок нажимает на конопку, чтобы сесть в авто, тогда только винил появляется, можно как нибудь сделать, чтобы он не исчезал вообще или при коннекте появлялся?
[cut noguest=Загрузка тюнинга][pwn]public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
LoadModsForAll(vehicleid);
TuneThisCar(vehicleid);
return 1;
}[/pwn]
Вот еще
[pwn]public OnPlayerExitVehicle(playerid, vehicleid)
{
SaveModsForAll(vehicleid);
return 1;
}[/pwn][/cut]

P.s. почему у меня avast блокирует Ваш сайт?



Сообщение отредактировал [[[WampiR]]] - Воскресенье, 17.11.2013, 13:34
SaibotДата: Воскресенье, 17.11.2013, 20:02 | Сообщение # 1729
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Цитата [[[WampiR]]] ()
Здравствуйте. У меня такая проблема: я вырезал сохранение тюнинга с FS в мод и там, когда игрок нажимает на кнопку, чтобы сесть в авто, тогда только винил появляется, можно как нибудь сделать, чтобы он не исчезал вообще или при коннекте появлялся?

Попробуй так.

[pwn]
public OnVehicleSpawn(vehicleid)
{
LoadModsForAll(vehicleid);
TuneThisCar(vehicleid);
return 1;
}

[[[WampiR]]]Дата: Воскресенье, 17.11.2013, 21:54 | Сообщение # 1730
Уверенный в себе
Группа: Продвинутые
Сообщений: 202
Награды: 2
Город: Омск
Репутация: -22
Замечания: 20%
Статус:
Цитата Saibot ()
Попробуй так.

1
2
3
4
5
6
public OnVehicleSpawn(vehicleid)
{
   LoadModsForAll(vehicleid);
   TuneThisCar(vehicleid);
   return 1;
}

Вот так появляется только тогда, когда зареспавню машины.

MaxДата: Воскресенье, 17.11.2013, 22:10 | Сообщение # 1731
Уверенный в себе
Группа: Продвинутые
Сообщений: 170
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
Geryy, можно пример?
GeryyДата: Понедельник, 18.11.2013, 01:52 | Сообщение # 1732
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
можно пример?

Конечн, пример для packetloss

Код

new str[350];
GetPlayerNetworkStats(playerid, str, 350);
new start = strfind(str, "Packetloss", false);
strmid(str, str, start + 12, strfind(str, "Messages", false, start) - 2);
new Float:packetloss = floatstr(str);


Для Messages received

Код

       new stats[300], idx, pos, msgs;
       GetPlayerNetworkStats(playerid, stats, sizeof(stats));
       pos = strfind(stats, "Messages received: ", false, 209);
       msgs = strval(strtok(stats[pos+19], idx));



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Понедельник, 18.11.2013, 02:07
MaxДата: Понедельник, 18.11.2013, 15:20 | Сообщение # 1733
Уверенный в себе
Группа: Продвинутые
Сообщений: 170
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
Acks sent: так уже почему то не извлекается (((

Цитата
new stats[300], idx, pos, msgs;
GetPlayerNetworkStats(playerid, stats, sizeof(stats));
pos = strfind(stats, "Acks sent: ", false, 209);
msgs = strval(strtok(stats[pos+19], idx));

GeryyДата: Понедельник, 18.11.2013, 15:52 | Сообщение # 1734
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
Acks sent: так уже почему то не извлекается (((

Ты же просил пример, а не скопировать/вставить. Я тебе дал 2 варианта на выбор.



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
MaxДата: Понедельник, 18.11.2013, 17:44 | Сообщение # 1735
Уверенный в себе
Группа: Продвинутые
Сообщений: 170
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
а че все по разному извлекаются?
Мне для anti PizDosBot нужен Acks sent:

GeryyДата: Вторник, 19.11.2013, 03:42 | Сообщение # 1736
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
PizDosBot

Чо эт за фигня, атака ботами через коннект?



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Вторник, 19.11.2013, 16:12
MaxДата: Вторник, 19.11.2013, 15:21 | Сообщение # 1737
Уверенный в себе
Группа: Продвинутые
Сообщений: 170
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
Это бот на подобие Rack Samp только у него встроены: лагер, пингер, несколько ддос атак
... и т.д и т.п
В общем меня атакуют так:
Код
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID
[15:15:26] Warning: PlayerDialogResponse PlayerId: 2 dialog ID doesn't match last sent dialog ID

Добавлено (19.11.2013, 15:21)
---------------------------------------------

Код
new stats[300], idx, pos, msgs;  
GetPlayerNetworkStats(playerid, stats, sizeof(stats));  
pos = strfind(stats, "Acks sent: ", false, 48);  
msgs = strval(strtok(stats[pos+11], idx));


Не корректно работает! когда Acks sent = 209 он мне пишет 17

GeryyДата: Вторник, 19.11.2013, 17:07 | Сообщение # 1738
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
Не корректно работает! когда Acks sent = 209 он мне пишет 17

Значения, которые отображаются на кнопке F5 отличаются от тех, которые дает функция GetPlayerNetworkStats



Например значению Messages received (F5) соответсвует значение Messages sent(GetPlayerNetworkStats)
Эквивалент Acks sent не нашел.

Для теста:

Код

new stats1[300], idx1, pos, msgs;
GetPlayerNetworkStats(playerid, stats1, sizeof(stats1));
pos = strfind(stats1, "Messages received: ", false, 0);
msgs = strval(strtok(stats1[pos+19], idx1));
         
new stats2[300], idx2, pos1, msgs1;
GetPlayerNetworkStats(playerid, stats2, sizeof(stats2));
pos1 = strfind(stats2, "Acks sent: ", false, 0);
msgs1 = strval(strtok(stats2[pos1+11], idx2));
        
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "My NetworkStats", stats1, "Okay", "");
        
format(string, sizeof(string), " Messages received: %d Acks sent: %d", msgs, msgs1);
SendClientMessage(playerid, COLOR_GRAD5, string);

Прикрепления: 2460558.jpg(20Kb)


Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Вторник, 19.11.2013, 17:14
MaxДата: Вторник, 19.11.2013, 17:46 | Сообщение # 1739
Уверенный в себе
Группа: Продвинутые
Сообщений: 170
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
а почему в F5 и при извлечении Acks sent: значения разные?? что за глюк
WeddewДата: Вторник, 19.11.2013, 18:45 | Сообщение # 1740
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата Steep_Nk ()
а почему в F5 и при извлечении Acks sent: значения разные?? что за глюк

Это не глюк, а различия в том, что при нажатии F5 вам показываются параметры соединения клиента, а при использовании GetPlayerNetworkStats - параметры соединения на стороне сервера.




www.weddew-shop.ru
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Страница 116 из 151«12114115116117118150151»
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM