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

 



 
        
Зацените (14)
JasonGordon 27.02.2017 13:12
Подвиcание SA-MP (2)
Max 20.02.2017 21:57
MYSQL Донат (2)
JasonGordon 08.02.2017 10:39
 





Рекомендуем:
Добавить 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
Страница 383 из 412«12381382383384385411412»
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » [Архив #2] Вопросы ответы по SAMP [от 11.01.2012]
[Архив #2] Вопросы ответы по SAMP [от 11.01.2012]
ВеликсДата: Среда, 11.01.2012, 23:37 | Сообщение # 1
Мастер джэдай
Группа: Модераторы
Сообщений: 3923
Награды: 287
Город: Мухосранск
Репутация: 8404
Замечания: 0%
Статус:
[move]-= Вопрос | Ответ =-[/move]

В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.


Новичкам:


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


Скриптерам:

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



[cut=freestyle]
ПРИНЕСЛА СОРОКА В РОТЕ ПРИВОРОТ ,
СВЯЗАЛАСЬ НА ШЕЕ ЛОЗА И БЫЛ ПОЛНЫЙ ПИ**ЕЦ,
ОСЕНЬ С ЗИМОЙ, ЛЕТО С ВЕСНОЙ,
ГУСЬ С ЛИСОЙ, ЕБ**ИСЬ ВО ТЬМЕ НОЧНОЙ.
УЗЕЛ ЗАВЯЗАЛСЯ, ПЕПЕЛ РАЗМЕТАЛСЯ И ЛИСА ЗАБЕРЕМЕНЕЛА.
ВМЕСТЕ ВЕК ВЕКОВАТЬ, ПУТУ НЕ РАЗВЯЗАТЬ.
ТРАВА ПЕРЕПЛЕТИСЬ, УЗЕЛ ЗАВОРОЖИСЬ.
ЛЕНАРУ ДАЙ УМА И ЛЕНУ
НА ВЕЛЕ НЕ ОТРАЗИСЬ,ЕБ*СЬ ЕБ*СЬ ЕБ*СЬ
© Хасан
[/cut]


Сообщение отредактировал Weddew - Понедельник, 09.06.2014, 03:17
WeddewДата: Пятница, 25.01.2013, 15:12 | Сообщение # 5731
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (Fabervox)
Я хочу синхронизировать передвижение игрока на одном сервере с передвижением бота на другом. Реализацией я займусь позже, когда наберусь опыта.
Но сейчас мне интересно, возможно ли вообще управление ботом в реальном времени с другого сервера, пусть даже банальными MoveTo?

Думаю, что это возможно, используя посредника (например хранение данных на файлах).

Добавлено (25.01.2013, 15:12)
---------------------------------------------
Опишу алгоритм при использовании посредника (хранение данных в файлах) между серверами.
Допустим, сервер получает координаты передвижения игрока. Эти координаты записываются в файл. Второй сервер тут же считывает эти данные и использует в своих вычислениях, в данном случае: перемещение ботов. Правда одно но, время синхронизации будет отличаться между серверами.
P.S. Нет нерешаемой задачи.




www.weddew-shop.ru


Сообщение отредактировал Weddew - Пятница, 25.01.2013, 15:17
vadimka_skipper_Дата: Пятница, 25.01.2013, 16:54 | Сообщение # 5732
Уверенный в себе
Группа: Продвинутые
Сообщений: 189
Награды: 1
Город: Иркутск
Репутация: 40
Замечания: 0%
Статус:
Народ подскажите как сделать ограничение на подключение с одного ip. к примеру 1 подключение в секунду разрешено?


Помощь в скриптинге!
Продажа вкладки Hosted - 550 рублей/адрес
Хостинг GTA SAMP
Обмен WMR в Яндекс.Деньги

Skype - Duramar

FabervoxДата: Суббота, 26.01.2013, 00:10 | Сообщение # 5733
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 235
Награды: 1
Город: Краматорск
Репутация: 217
Замечания: 0%
Статус:
Цитата (vadimka_skipper_)
Народ подскажите как сделать ограничение на подключение с одного ip. к примеру 1 подключение в секунду разрешено?

А зачем одно в секунду.Может вообще одно или больше времени?

Weddew, а как думаете, сделать посредника прямо в памяти средствами PAWN удастся? Т.е. допустим mxINI до закрытия файла сам не записывает в файл, а держит в памяти. Если написать допустим на С/С++ простенькую виртуальную ФС то именно то и получится.
[off]Но сам я в таких языках пока не разбираюсь, так что игровая идея уйдет в долгий ящик,а он у меня и так забитый :) [/off]

Я ещё спрашивал несколько страниц назад о зонах. Можно ли создать примером прямоугольную зону и фиксировать не только наличие в ней игрока, но и расстояние от границы до игрока если он находится по определенную сторону от игрока? Ну и как в общих чертах это сделать.
Понятно что можно все чисто математически сделать, но может вы знаете какие-то подходящие калбеки и/или функции.




RP в мире - как мух в сортире, а нужного чуда не видать покуда..©_Z_
Как посмотришь, сколько тысяч строчек кода, в одном файле, сразу понимаешь почему моды делают годами.
Закон сохранения сложности
mdavidДата: Суббота, 26.01.2013, 01:16 | Сообщение # 5734
Освоившийся
Группа: Продвинутые
Сообщений: 135
Награды: 0
Город: Unity Station, 16
Репутация: 112
Замечания: 0%
Статус:
Подскажите как сделать там чтобы команду /try можно было использовать один раз в определенное время?
[cut=сама комманда]
Цитата
if(strcmp(cmd, "/try", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Âû åùå íå çàëîãèíåíû!");
return 1;
}
if(PlayerInfo[playerid][pMuteTime] > 1)
{

return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Èñïîëüçóéòå: /try [äåéñòâèå]");
return 1;
}
new temptryrand = random(2);
if(temptryrand == 1)
{
format(string, sizeof(string), "%s ïîïûòàëñÿ %s (óäà÷íî)", sendername, result);

ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
printf("%s", string);
return 1;
}
else
{
format(string, sizeof(string), "%s ïîïûòàëñÿ %s (íå óäà÷íî)", sendername, result);

ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
printf("%s", string);
}
}
return 1;
}
[/cut]



Мои работы:
[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 || Выживание в мире зомби
FabervoxДата: Суббота, 26.01.2013, 02:02 | Сообщение # 5735
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 235
Награды: 1
Город: Краматорск
Репутация: 217
Замечания: 0%
Статус:
Цитата (mdavid)
Подскажите как сделать там чтобы команду /try можно было использовать один раз в определенное время?

Ну допустим можно сразу после ввода и проверки игрока, добавить запись в аргумент равный id игрока массив (у которого будут создано столько аргументов, сколько у вас игроков), со временем когда он сможет вновь написать, предварительно расчитав его, а перед записью проверить соответсвие значения все того же аргумента относительно текущего времени, ну и выйти в противном случае.

И отдельно сделать при дисконекте, запись в файл(мускуль) имени этого игрока и значения (времени до которого он не сможет использовать команду), а потом обнуление(в данном случае максимальное значение текущего времени) значения аргумента.
Ну и наоборот чтение из файла при конекте определенного id, и запись в соответствующий массив. Если в файле не удалось прочесть требуемую информацию, ничего не делать.

Ну и сделать ещё админскую команду бекапа всего массива в файл в виде имя игрока и значение. Если конечно нужно. Разумеется это же выполнять перед рестартом.




RP в мире - как мух в сортире, а нужного чуда не видать покуда..©_Z_
Как посмотришь, сколько тысяч строчек кода, в одном файле, сразу понимаешь почему моды делают годами.
Закон сохранения сложности
JiggaДата: Суббота, 26.01.2013, 05:47 | Сообщение # 5736
Новенький
Группа: Пользователи
Сообщений: 53
Награды: 0
Город: Владивосток
Репутация: 0
Замечания: 0%
Статус:
Вот у меня такой вопрос.
как можно сделать чтоб игрок вошел адмдути и ему добавлялся тег A_ник игрока
подскажите

AfflictionДата: Суббота, 26.01.2013, 08:49 | Сообщение # 5737
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 288
Награды: 2
Город: Владивосток
Репутация: 471
Замечания: 40%
Статус:
Jigga,
Код
format(sql, sizeof(sql), "UPDATE `players` SET `Name`='%s' WHERE `ID` = %d");

WeddewДата: Суббота, 26.01.2013, 15:21 | Сообщение # 5738
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (vadimka_skipper_)
Народ подскажите как сделать ограничение на подключение с одного ip. к примеру 1 подключение в секунду разрешено?

Поищите в этой теме, я уже писал пример кода пользователю Steep_Nk (если не ошибаюсь).

Добавлено (26.01.2013, 15:14)
---------------------------------------------

Цитата (Fabervox)
Weddew, а как думаете, сделать посредника прямо в памяти средствами PAWN удастся? Т.е. допустим mxINI до закрытия файла сам не записывает в файл, а держит в памяти. Если написать допустим на С/С++ простенькую виртуальную ФС то именно то и получится.

Если не ошибаюсь, то кажется можно передавать данные между серверами SAMP при помощи property, это только в том случае, если игровые сервера находятся на одной машине, также есть функции как: sendpacket и sendstring, но они к сожалению не работают в текущей версии SA:MP. Еще можно написать плагин на C/C++, который в свою очередь будет передавать данные между серверами.

Добавлено (26.01.2013, 15:18)
---------------------------------------------
mdavid,

Код
if(strcmp(cmd, "/try", true) == 0)  
{  
  if(IsPlayerConnected(playerid))  
  {
   new hour, minute, second;
   gettime(hour, minute, second);
    
   if(hour != 12) return SendClientMessage(playerid, -1, "Команду можно использовать только в 12 часов дня!");
    
   if(gPlayerLogged[playerid] == 0)  
   {  
    SendClientMessage(playerid, COLOR_GREY, " Au aua ia caeiaeiaiu!");  
    return 1;  
   }  
   if(PlayerInfo[playerid][pMuteTime] > 1)  
   {  

    return 1;  
   }  
   GetPlayerName(playerid, sendername, sizeof(sendername));  
   new length = strlen(cmdtext);  
   while ((idx < length) && (cmdtext[idx] <= ' '))  
   {  
    idx++;  
   }  
   new offset = idx;  
   new result[64];  
   while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))  
   {  
    result[idx - offset] = cmdtext[idx];  
    idx++;  
   }  
   result[idx - offset] = EOS;  
   if(!strlen(result))  
   {  
    SendClientMessage(playerid, COLOR_GRAD2, "Eniieucoeoa: /try [aaenoaea]");  
    return 1;  
   }  
   new temptryrand = random(2);  
   if(temptryrand == 1)  
   {  
    format(string, sizeof(string), "%s iiiuoaeny %s (oaa?ii)", sendername, result);  

    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);  
    printf("%s", string);  
    return 1;  
   }  
   else  
   {  
    format(string, sizeof(string), "%s iiiuoaeny %s (ia oaa?ii)", sendername, result);  

    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);  
    printf("%s", string);  
   }  
  }  
  return 1;  
}

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

Цитата (Affliction)
Jigga,
Код
format(sql, sizeof(sql), "UPDATE `players` SET `Name`='%s' WHERE `ID` = %d");

Причем тут это?

Цитата (Jigga)
Вот у меня такой вопрос.
как можно сделать чтоб игрок вошел адмдути и ему добавлялся тег A_ник игрока
подскажите


Код

new pname[MAX_PLAYER_NAME], tmpname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
format(tmpname, sizeof(tmpname), "A_%s", tmpname);
SetPlayerName(playerid, tmpname);




www.weddew-shop.ru
AfflictionДата: Суббота, 26.01.2013, 15:54 | Сообщение # 5739
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 288
Награды: 2
Город: Владивосток
Репутация: 471
Замечания: 40%
Статус:
Weddew, это пример смены ника:/
WeddewДата: Суббота, 26.01.2013, 16:02 | Сообщение # 5740
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (Affliction)
Weddew, это пример смены ника:/

mda Это пример запроса обновления записей в БД, а не смена ника. Перечитайте еще раз, что нужно Jigge.




www.weddew-shop.ru
etthanДата: Суббота, 26.01.2013, 19:43 | Сообщение # 5741
Новенький
Группа: Пользователи
Сообщений: 2
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Кто может помочь залить мод на сервер, напишите в скайп dropexstyle. буду благодарен!
Maks338Дата: Суббота, 26.01.2013, 20:06 | Сообщение # 5742
Новенький
Группа: Пользователи
Сообщений: 51
Награды: 0
Город: Киев
Репутация: -10
Замечания: 0%
Статус:
Вот тот же плагин fixes2 от Y_Less. При запуске пишет:
[26/01/2013 19:48:27] fixes.plugin: Could not find function Check.
[26/01/2013 19:48:27] fixes.plugin: Could not find function Check2.
[26/01/2013 19:48:27] fixes.plugin: Could not find function Check3.
и через 2 минуты офает сервер.
Что не так?



Продам pack программ для атак серверов Samp 0.3e
Skype: TopSamp
Вк: vk.com/maks_drift
WeddewДата: Суббота, 26.01.2013, 20:10 | Сообщение # 5743
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (etthan)
Кто может помочь залить мод на сервер, напишите в скайп dropexstyle. буду благодарен!

Здесь вся информация по первичной настройке сервера.

Добавлено (26.01.2013, 20:10)
---------------------------------------------

Цитата (Maks338)
Вот тот же плагин fixes2 от Y_Less. При запуске пишет:
[26/01/2013 19:48:27] fixes.plugin: Could not find function Check.
[26/01/2013 19:48:27] fixes.plugin: Could not find function Check2.
[26/01/2013 19:48:27] fixes.plugin: Could not find function Check3.
и через 2 минуты офает сервер.
Что не так?

Не найдены функции Check, Check2, Check3. Проверьте их наличие.




www.weddew-shop.ru


Сообщение отредактировал Weddew - Суббота, 26.01.2013, 20:09
Maks338Дата: Суббота, 26.01.2013, 20:22 | Сообщение # 5744
Новенький
Группа: Пользователи
Сообщений: 51
Награды: 0
Город: Киев
Репутация: -10
Замечания: 0%
Статус:
Цитата (Weddew)
Не найдены функции Check, Check2, Check3. Проверьте их наличие.

Что для этого сделать? Залепить в мод forward`s или new`s, я плохо шарю в павне)

Добавлено (26.01.2013, 20:21)
---------------------------------------------
в моде имеются форварды Check, Check2, Check3 убрал, щас посмотрю

Добавлено (26.01.2013, 20:22)
---------------------------------------------
нет, ошибка так-же осталась.


Продам pack программ для атак серверов Samp 0.3e
Skype: TopSamp
Вк: vk.com/maks_drift
WeddewДата: Суббота, 26.01.2013, 21:12 | Сообщение # 5745
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (Maks338)
Не найдены функции Check, Check2, Check3. Проверьте их наличие.

Что для этого сделать? Залепить в мод forward`s или new`s, я плохо шарю в павне)
Добавлено (26.01.2013, 20:21)
---------------------------------------------
в моде имеются форварды Check, Check2, Check3 убрал, щас посмотрю

Добавлено (26.01.2013, 20:22)
---------------------------------------------
нет, ошибка так-же осталась.

Не нужно было убирать прототипы. У Вас в моде не описаны функции Check, Check2, Check3. Опишите их и проблемы исчезнут.

Добавлено (26.01.2013, 21:12)
---------------------------------------------

Цитата (Fabervox)
Я ещё спрашивал несколько страниц назад о зонах. Можно ли создать примером прямоугольную зону и фиксировать не только наличие в ней игрока, но и расстояние от границы до игрока если он находится по определенную сторону от игрока? Ну и как в общих чертах это сделать.
Понятно что можно все чисто математически сделать, но может вы знаете какие-то подходящие калбеки и/или функции.

Все это возможно. Для этого нужно использовать математические вычисления.




www.weddew-shop.ru
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » [Архив #2] Вопросы ответы по SAMP [от 11.01.2012]
Страница 383 из 412«12381382383384385411412»
Поиск:





 


 


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