В этой теме вы сможете получить ответы, на многие ваши вопросы по 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]
undefined symbol "RandomMSGmute" Сервер\gamemodes\RPGS.pwn(24409) : error 029: invalid expression, assumed zero Сервер\gamemodes\RPGS.pwn(24409) : warning 215: expression has no effect Сервер\gamemodes\RPGS.pwn(24410) : error 017: undefined symbol "RandomMSGmute" Сервер\gamemodes\RPGS.pwn(24410) : warning 215: expression has no effect Сервер\gamemodes\RPGS.pwn(24410) : error 001: expected token: ";", but found "]" Сервер\gamemodes\RPGS.pwn(24410) : error 029: invalid expression, assumed zero Сервер\gamemodes\RPGS.pwn(24410) : fatal error 107: too many error messages on one line
Я всего лишь напросто орфографию в тексте исправлял, да и даже в строчках 24410 и 24409 не копался, у меня там команда /mute. Скобки, запятые тоже не где не убирал(((
Moskvichev, в гф можно телепортироваться к домам /houseo id, где id - id дома. Попробуй введи /houseo 2 и посмотри, где окажешься. Если около дома, то дома грузятся, если у дома будет пикап, то проблема в неверном размере массива, как сказал fus1, если телепортнёшься хз куда, то дома не грузятся. По поводу денег, проверь, где ещё идёт присвоение pCash. Насколько помню в каких-то модах первоначальная сумма хранится в какой-то глобальной переменной.
ЦитатаFus1 ()
Найди массив домов в моде, возможно у тебя указано к примеру 10 , а домов 100 , соответственно другие не отображаются.
Щас буду пробывать, надеюсь определю проблему. Спасибо за помощь
Moskvichev, скинь то , что исправлял. У тебя проблема с символом ';" По поводу домов, поищи в моде что то типо переменной "HouseInfo[]" или "Property[]" и т.д
Добавлено (11.01.2015, 20:41) --------------------------------------------- А вообще, советую удалить все дома с файла, обновить переменную и создать все дома заного. Потратишь на это допустим пол дня, зато не будет проблем и лишних домов, входов и т.д
Здравствуйте. Только начинаю работать с Pawn. Расскажите, пожалуйста, вот о чем:
1. что такое Интерьер (SetPlayerInterior) и Виртуальный мир (SetPlayerVirtualWorld) игрока? Для чего нужны и как ими правильно пользоваться? Любые ли значения можно устанавливать игроку в эти настройки или эти значения выбираются из определенного интервала?
2. например, у интерьера одного из магазинов 24/7 указан Universe ID равный 17 (http://wiki.sa-mp.com/wiki/Interior). 17 - что это? Виртуальный мир? или интерьер для игрока? и что будет, если у игрока не 17 будет установлено?
3. в samp есть такое понятие, как Пикапы (CreatePickup), которые, к примеру, можно использовать для перемещения игрока с улицы в интерьер дома. Какое максимальное количество пикапов может быть в моде на сервере 0.3z? Сильно ли нагружают они сервер?
4. какое максимальное количество объектов (CreateObject) можно ставить в мод, при разработке маппинга сервера? Как сильно они нагружают сервер? Знаю моды, где количество объектов насчитывается десятками тысяч (больше 80.000 в моде), админы такого мода говорят, что эти объекты не нагружают сервер, мол, ему все равно - это нагрузка на клиент игрока. Правда ли это? Правда ли можно ставить в мод неограниченное количество объектов маппинга? Или это какое-то другое решение, не CreateObject?
Заранее спасибо за ответы. Прошу прощения, если эти вопросы уже ранее поднимались, а я не заметил. Искал ответы, но конкретного ничего, увы, найти не удалось.
1. что такое Интерьер (SetPlayerInterior) и Виртуальный мир (SetPlayerVirtualWorld) игрока? Для чего нужны и как ими правильно пользоваться? Любые ли значения можно устанавливать игроку в эти настройки или эти значения выбираются из определенного интервала?
Стандартный интерьер на улице , SetPlayerInterior(playerid, 0); и мир SetPlayerVirtualWorld(playerid, 0); = 0 Все доступные интерьеры сампа, можно посмотреть тут - http://wiki.sa-mp.com/wiki/InteriorIDs , так же ты можешь спокойной указывать любой собственный интерьер, к примеру ты делаешь вход в магазин, можешь указать SetPlayerInterior(playerid, 500); и мир SetPlayerVirtualWorld(playerid, 500); , внимательно обращай внимания на вирт.мир , чтоб он НЕ совпадал с другими мирам интерьеров, тогда выйдет так, что 2 разных входа и внутри игроки будут в 1 локации сервера (разных интерьерах, один мир).
ЦитатаJasonGordon ()
2. например, у интерьера одного из магазинов 24/7 указан Universe ID равный 17 (http://wiki.sa-mp.com/wiki/Interior). 17 - что это? Виртуальный мир? или интерьер для игрока? и что будет, если у игрока не 17 будет установлено?
17 это ИД данного магазина, так же там указаны координаты этого магазина, вирт. мир ты можешь указать - любой (кроме 0 , это улица). Если будет указано не 17 , а допустим 20 , то, это будет зависить от координат , если ты будешь на координатах магазина (интерьера 17) в интерьере 20 , соответственно ты скорее всего полетишь с неба вниз.
ЦитатаJasonGordon ()
3. в samp есть такое понятие, как Пикапы (CreatePickup), которые, к примеру, можно использовать для перемещения игрока с улицы в интерьер дома. Какое максимальное количество пикапов может быть в моде на сервере 0.3z? Сильно ли нагружают они сервер?
4. какое максимальное количество объектов (CreateObject) можно ставить в мод, при разработке маппинга сервера? Как сильно они нагружают сервер? Знаю моды, где количество объектов насчитывается десятками тысяч (больше 80.000 в моде), админы такого мода говорят, что эти объекты не нагружают сервер, мол, ему все равно - это нагрузка на клиент игрока. Правда ли это? Правда ли можно ставить в мод неограниченное количество объектов маппинга? Или это какое-то другое решение, не CreateObject?
Опять же, если ты ставишь стандартные CreateObject - хотя это глупо, используй стример. Когда я занимался сампом, я всегда использовал http://forum.sa-mp.com/showthread.php?t=102865 , считаю он идеальный. По кол-ву объектов, ты можешь допустим поставить 100 домов и 100 в другом месте с дальностью прорисовки 500 метров (к примеру) , и если ты уезжаешь от этих домов на >500 метров, объекты тебе не отображаются, их просто для тебя - нет, соответственно загруженности - нет. Ты подъехал - они появились.
Добавлено (13.01.2015, 00:46) --------------------------------------------- После смерти игрок появляется не на спавне, а у дома Си-Джея с сигаретой или бутылкой в руках! Как это исправить? Так происходит не каждый раз, но очень часто. Почему так? Спасибо.
После смерти игрок появляется не на спавне, а у дома Си-Джея с сигаретой или бутылкой в руках! Как это исправить? Так происходит не каждый раз, но очень часто. Почему так? Спасибо.
Никто не знает как исправить? Неужели я единственный, кто столкнулся с такой проблемой?
Приватно никого не консультирую, моды также не пишу, ни так, ни за деньги. Моя ICQ 675715, пишу только с неё. Все остальные Роачи фейки, ничего я не продаю и продавать не буду, вас разводят.
кривое сохранение аккаунта , а точнее координат спавна.
Координаты спавна хранятся в массиве с переменными игрока и не меняются в моде - что здесь может быть кривого? Потом же он нормально спавнится. Из смертей пяти, у дома Си-Джея появляется раз или два.