 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Вопросы и ответы по GTA SAMP [от 19.03.2013]
| |
| Weddew | Дата: Вторник, 19.03.2013, 15:11 | Сообщение # 1 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 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 |
| |
|
|
| forst5 | Дата: Среда, 03.07.2013, 23:55 | Сообщение # 1126 |
|
Новенький
Группа:
Пользователи
Сообщений: 48
Награды: 0
Город: NSK
Репутация: -10
Замечания: 0%
Статус: 
| Weddew, вот
Код if(AutoBusJob[playerid] == 1) { switch(pAutoBusLS[playerid]) { case CHECKPOINT_1: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_2; SetPlayerRaceCheckpoint(playerid, 0,1214.3824,-1842.2007,13.5149,1195.2499,-1849.5330,13.5300, 7.0); } case CHECKPOINT_2: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_3; SetPlayerRaceCheckpoint(playerid, 0,1195.2499,-1849.5330,13.5300,1076.8751,-1850.1189,13.5237, 7.0); } case CHECKPOINT_3: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_4; SetPlayerRaceCheckpoint(playerid, 0,1076.8751,-1850.1189,13.5237,1060.6364,-1834.8591,13.6470, 7.0); } case CHECKPOINT_4: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_5; SetPlayerRaceCheckpoint(playerid, 0,1060.6364,-1834.8591,13.6470,1038.0361,-1785.1960,13.68850, 7.0); } case CHECKPOINT_5: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_6; SetPlayerRaceCheckpoint(playerid, 0,1038.0361,-1785.1960,13.6885,1039.8900,-1731.7588,13.5161, 7.0); } case CHECKPOINT_6: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_7; SetPlayerRaceCheckpoint(playerid, 0,1039.8900,-1731.7588,13.5161,1147.0249,-1714.6013,13.9146, 7.0); } case CHECKPOINT_7: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_8; SetPlayerRaceCheckpoint(playerid, 1,1147.0249,-1714.6013,13.9146,0.0,0.0,0.0, 7.0); BusStop[playerid] = 1; } case CHECKPOINT_8: { if(BusStop[playerid] == 1) { BusStopTime[playerid] = 10; SendClientMessage(playerid, COLOR_GREEN, "Îñòàíîâêà! Æäèòå ïîññàæèðîâ"); format(string, sizeof(string), "Àâòîáóñ îòüåæàåò ÷åðåç 10 ñåêóíä"); ProxDetector(30.0, playerid, string, COLOR_GREEN,COLOR_GREEN,COLOR_GREEN,COLOR_GREEN,COLOR_GREEN); } else { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_9; SetPlayerRaceCheckpoint(playerid, 0,1280.5072,-1714.8085,13.5162,1294.9458,-1728.1792,13.5161, 7.0); } } case CHECKPOINT_9: { AutoBusCheck[playerid] ++; pAutoBusLS[playerid] = CHECKPOINT_10; SetPlayerRaceCheckpoint(playerid, 0,1294.9458,-1728.1792,13.5161,1294.8989,-1836.0220,13.5162, 7.0); }
|
| |
|
|
| Weddew | Дата: Четверг, 04.07.2013, 00:17 | Сообщение # 1127 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| forst5, функция вызванная таймеров должна взаимодействовать с переменными BusStopTime[playerid] и BusStop[playerid]. Поищите по моду что-нибудь подобное: [pwn]BusStopTime[i]--;[/pwn]
www.weddew-shop.ru
|
| |
|
|
| forst5 | Дата: Четверг, 04.07.2013, 00:50 | Сообщение # 1128 |
|
Новенький
Группа:
Пользователи
Сообщений: 48
Награды: 0
Город: NSK
Репутация: -10
Замечания: 0%
Статус: 
| Weddew,
Код if(BusStopTime[i] <= 11 && BusStopTime[i] >= 1) { BusStopTime[i] --; format(string,sizeof(string), "~n~~n~~b~%d", BusStopTime[i] - 1); GameTextForPlayer(i, string, 2000, 6); } if(BusStopTime[i] == 1) { if(AutoBusJob[i] == 1) { if(BusStop[i] == 1) { BusStopTime[i] = 0; BusStop[i] = 0; pAutoBusLS[i] = CHECKPOINT_8; SetPlayerRaceCheckpoint(i, 0,1147.0249,-1714.6013,13.9146,1280.5072,-1714.8085,13.5162, 5.0); SendClientMessage(i, COLOR_GREEN, "Âû ìîæåòå åõàòü äàëüøå"); } if(BusStop[i] == 2) { BusStopTime[i] = 0; BusStop[i] = 0; pAutoBusLS[i] = CHECKPOINT_17; SetPlayerRaceCheckpoint(i, 0,1481.3625,-1734.5426,13.5161,1514.0380,-1734.8099,13.5162, 7.0); SendClientMessage(i, COLOR_GREEN, "Âû ìîæåòå åõàòü äàëüøå"); }
|
| |
|
|
| mdavid | Дата: Четверг, 04.07.2013, 02:28 | Сообщение # 1129 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 135
Награды: 0
Город: Unity Station, 16
Репутация: 112
Замечания: 0%
Статус: 
| Получается, в сампе стоит ограничение на кол-во обьектов, да? можно ли как-то обойти это? Streamer Plugin v2.6.1 (revision 84) (SA-MP 0.3x) вот этот стример стоит.
Мои работы: [MAP] Pool building + Bar outside. [MAP] Well Stacked Pizza Co. [MAP] Prison [MAP] NEW Bank (beta) [Map] Zombie Apocalypse in Montgomery [4SALE] [MAP] Clucking Bell at East LS Beach [MAP] Flat # 1 [MAP] Clucking Bell in San Fierro. _ Antizombie || Выживание в мире зомби
Сообщение отредактировал mdavid - Четверг, 04.07.2013, 02:36 |
| |
|
|
| Geryy | Дата: Четверг, 04.07.2013, 02:59 | Сообщение # 1130 |
|
Советчик
Группа:
Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус: 
| Цитата (vadimka_skipper_) Подскажите как сделать что бы при регистрации игроку на почту высылалось письмо с его данными для входа. Использовать e-mail для восстановления пароля есть смысл, но для регистрации зачем?
Тогда лучше уже сделать регистрацию на сайте On-line чтобы в игру не заходить.
Смотри подобные решения:
http://forum.sa-mp.com/showthread.php?t=399299 http://forum.sa-mp.com/showthread.php?t=444873
Цитата (mdavid) Я использую систему авто которая идет : авто привязано к дому. получается до 70 дома все нормально, а после 70 дома уже что-то где-то сбивается и авто как-будто привязано, но к другому дому, просто не пойму, вроде все правильно делаю, 70 домой норм работают, а потом уже все сбивается к чертям( Да, машина спавнится там где должна, но открыть я её уже не могу, т.к как-будто это машина привязана к другому дому, никто не знает в чем может быть проблема? Смотри чтобы в массиве домов было верно указано их кол-во: new HouseInfo[70][hInfo]; //70 домов В файле домов соответсвенно должно быть 70 записей. Чтобы координаты входа/выхода не совпадали...Добавлено (04.07.2013, 02:59) ---------------------------------------------
Цитата (mdavid) Получается, в сампе стоит ограничение на кол-во обьектов, да? можно ли как-то обойти это? Streamer Plugin v2.6.1 (revision 84) (SA-MP 0.3x) вот этот стример стоит. ограничение стоит на стандартную функцию CreateObject, обойти можно используя плагин стриммер и его функцию CreateDynamicObject
Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
|
| |
|
|
| vadimka_skipper_ | Дата: Четверг, 04.07.2013, 05:58 | Сообщение # 1131 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 189
Награды: 1
Город: Иркутск
Репутация: 40
Замечания: 0%
Статус: 
| Цитата (Geryy) Использовать e-mail для восстановления пароля есть смысл, но для регистрации зачем?
Тогда лучше уже сделать регистрацию на сайте On-line чтобы в игру не заходить.
Мне нужно именно, что бы после регистрации отсылало данные указанные игрокам и мой текст. Может кто скинуть код?
Помощь в скриптинге! Продажа вкладки Hosted - 550 рублей/адрес Хостинг GTA SAMP Обмен WMR в Яндекс.Деньги
Skype - Duramar
|
| |
|
|
| mdavid | Дата: Пятница, 05.07.2013, 03:18 | Сообщение # 1132 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 135
Награды: 0
Город: Unity Station, 16
Репутация: 112
Замечания: 0%
Статус: 
| Обьекты черезе CreateDynamicObject не загружаются, стример 0.3х стоит, в конфигурации сервера он прописан. plugins streamer сервер на виндоус 7. #include <streamer> - есть В кфг сервера - прописано : plugins streamer.dll (пробовал и plugins streamer) В чем проблема?
Мои работы: [MAP] Pool building + Bar outside. [MAP] Well Stacked Pizza Co. [MAP] Prison [MAP] NEW Bank (beta) [Map] Zombie Apocalypse in Montgomery [4SALE] [MAP] Clucking Bell at East LS Beach [MAP] Flat # 1 [MAP] Clucking Bell in San Fierro. _ Antizombie || Выживание в мире зомби
Сообщение отредактировал mdavid - Пятница, 05.07.2013, 03:24 |
| |
|
|
| Geryy | Дата: Пятница, 05.07.2013, 12:30 | Сообщение # 1133 |
|
Советчик
Группа:
Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус: 
| mdavid, Версии streamer.dll и #include совпадают?
Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
|
| |
|
|
| mdavid | Дата: Пятница, 05.07.2013, 12:42 | Сообщение # 1134 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 135
Награды: 0
Город: Unity Station, 16
Репутация: 112
Замечания: 0%
Статус: 
| Цитата (Geryy) mdavid, Версии streamer.dll и #include совпадают?
Geryy, да. Я кидал все что скачалось в папке со стримером в папку с сервером. Почему-то оно не подгружает их((
Мои работы: [MAP] Pool building + Bar outside. [MAP] Well Stacked Pizza Co. [MAP] Prison [MAP] NEW Bank (beta) [Map] Zombie Apocalypse in Montgomery [4SALE] [MAP] Clucking Bell at East LS Beach [MAP] Flat # 1 [MAP] Clucking Bell in San Fierro. _ Antizombie || Выживание в мире зомби
|
| |
|
|
| Merbul | Дата: Пятница, 05.07.2013, 15:40 | Сообщение # 1135 |
|
Новенький
Группа:
Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус: 
| Weddew, PlayeriInfo[CarOffer[playerid]][pTehosm] = 0; Спасибо помог. Как исправить. Вот игрок умирает. Задержка на несколько секунд 3-4. Например ввожу команду /gm. У него 0 хп и звук как он умер, но он до сих пор стоит. И через несколько секунд опять звук потом игрок падает.
|
| |
|
| |
|
| Geryy | Дата: Пятница, 05.07.2013, 16:17 | Сообщение # 1137 |
|
Советчик
Группа:
Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус: 
| Цитата (Merbul) Как исправить. Вот игрок умирает. Задержка на несколько секунд 3-4. Например ввожу команду /gm. У него 0 хп и звук как он умер, но он до сих пор стоит. И через несколько секунд опять звук потом игрок падает.
Такая же проблема? http://www.samp-rus.com/forum/15-22285-1
Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
|
| |
|
|
| mdavid | Дата: Пятница, 05.07.2013, 17:40 | Сообщение # 1138 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 135
Награды: 0
Город: Unity Station, 16
Репутация: 112
Замечания: 0%
Статус: 
| Цитата (Geryy) Цитата (mdavid) Я использую систему авто которая идет : авто привязано к дому. получается до 70 дома все нормально, а после 70 дома уже что-то где-то сбивается и авто как-будто привязано, но к другому дому, просто не пойму, вроде все правильно делаю, 70 домой норм работают, а потом уже все сбивается к чертям( Да, машина спавнится там где должна, но открыть я её уже не могу, т.к как-будто это машина привязана к другому дому, никто не знает в чем может быть проблема?
Смотри чтобы в массиве домов было верно указано их кол-во: new HouseInfo[70][hInfo]; //70 домов В файле домов соответсвенно должно быть 70 записей. Чтобы координаты входа/выхода не совпадали... Добавлено (04.07.2013, 02:59)
Да, у меня стоит new HouseInfo[232][hInfo]; в файле property тоже 232 строчки с домами. НО по машинам у меня new Float:HouseCarSpawns[234][4] = { получается у меня на 2 машины больше? но когда я ставлю там 232, то компилятор не компилирует. Ошибка компилятора:
Код : error 018: initialization data exceeds declared size error 010: invalid function or declaration warning 209: function "Streamer_OnPlayerDisconnect" should return a value warning 204: symbol is assigned a value that is never used: "car" warning 204: symbol is assigned a value that is never used: "car" warning 209: function "Streamer_OnPlayerEnterCP" should return a value warning 213: tag mismatch : warning 202: number of arguments does not match definition warning 202: number of arguments does not match definition warning 202: number of arguments does not match definition : warning 202: number of arguments does not match definition Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
2 Errors.
Мои работы: [MAP] Pool building + Bar outside. [MAP] Well Stacked Pizza Co. [MAP] Prison [MAP] NEW Bank (beta) [Map] Zombie Apocalypse in Montgomery [4SALE] [MAP] Clucking Bell at East LS Beach [MAP] Flat # 1 [MAP] Clucking Bell in San Fierro. _ Antizombie || Выживание в мире зомби
|
| |
|
|
| Merbul | Дата: Пятница, 05.07.2013, 18:02 | Сообщение # 1139 |
|
Новенький
Группа:
Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус: 
| GeryyЦитата Такая же проблема? http://www.samp-rus.com/forum/15-22285-1
Нет у меня не такая. Игрок умерат но поздно. Вот например убил, он постоит потом падает и умирает.
|
| |
|
|
| Fen1ks | Дата: Пятница, 05.07.2013, 18:33 | Сообщение # 1140 |
|
Новенький
Группа:
Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус: 
| Вообщем проблемка такая. [pwn]public NetworkUpdate() { new stats[300], idx, pos, msgs; for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { idx = 0; GetPlayerNetworkStats(i, stats, sizeof(stats)); pos = strfind(stats, "Messages received: ", false, 209);//209 - минимальная позиция "Messages received" в строке msgs = strval(strtok(stats[pos+19], idx)); if(msgs - MessagesCount[i] - OtherMessages[i] > MAX_MESSAGES && msgs > 2000) { new pname[MAX_PLAYER_NAME]; GetPlayerName(i, pname, sizeof(pname)); printf("AntiDos: Blocked attack from playerid: %d", i); Ban(i); } MessagesCount[i] = msgs; OtherMessages[i] = 0; } } }[/pwn] этот код банит иногда такой ip: 255.255.255.255 Я знаю что такого ип нету, но как предотвратить бан такого IP ? Видел у себя какой-то код похоже на решение проблемы, но не могу найти... [pwn]255.255.255.255 [05/07/13 | 17:59:11] Dimas_Konyahin - AntiDoS: Packets DoS [/pwn]вот пример, такого за день 5-6 в логе.
|
| |
|
|
|
 |
|
 | |
| |
|