Перейти к содержанию
Авторизация  
Skinn3r

Создание ботов на сервер CRMP

Рекомендуемые сообщения

Skinn3r

Здравствуйте уважаемые пользователи CR-MP.RU

Сегодня я вам покажу , как добавить ботов на сервер (Автор: Neat)

Для начало, скачаем необходимые файлы

----------------------------------------------------------------------------------------------------------------------------------------

Файлы npc_record.pwn и npc_record.amx копируем в filterscripts, а a_npc.inc в /pawno/include.

Далее открываем server.cfg и в строке filterscripts прописываем npc_record, также изменяем maxnpc на количество ботов на сервере.

Далее открываем мод через pawno.exe и после 

#include <a_samp>

 добавляем 

#include <a_npc>

 и компилируем мод.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

В этом уроке мы будем делать бота который ездит на машине по заданному маршруту. Заходим на сервер, входим как RCON администратор, садимся в машину и как только вы готовы начать записывать бота - вводим команду /vrecord [имя бота] (не используйте кириллицу в названии бота). Запись началась, ездим по нужному нам маршруту и когда нужно остановить запись бота - вводим команду /srecord и запись останавливается. 

Выходим из игры и заходим в scriptfiles, там вы увидите названия бота.rec копируем этот файл в /npcmodes/recordings.

 

Создаем чистый .pwn файл и вносим в него следующий код:

#define RECORDING "NameNPC" //Имя вашего записанного файла из scriptfiles без расширения
#define RECORDING_TYPE 1 //1 - если путь записан на машине, 2 - пешком
#include

main(){}

public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
#if RECORDING_TYPE == 1
public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);
public OnNPCExitVehicle() StopRecordingPlayback();
#else
public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING); .
#endif

Компилируем и закрываем.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Открываем свой мод и ко всем глобальным переменным добавляем (название может быть любое, я взял ProverkaNPC):

new ProverkaNPC

Далее идем в 

public OnGameModeInit()

 и добавляем:

ConnectNPC("любое имя бота","название файла из scriptfiles без расширения");
ProverkaNPC = CreateVehicle(400,0.0,0.0,5.0,0.0,3,3,5000);//Координаты изменять не надо, можете изменить только модель ТС и цвет

Далее идем в 

public OnPlayerSpawn(playerid)

 и добавляем:

if(IsPlayerNPC(playerid))
{
new npcname[MAX_PLAYER_NAME];
GetPlayerName(playerid,npcname,sizeof(npcname));
if(!strcmp(npcname,"имя указанное в ConnectNPC",true))
{
PutPlayerInVehicle(playerid,ProverkaNPC,0);
}
return 1;
}

Если при подключении бота, его выкидывает с сервера из-за того, что у вас система регистрации, то при регистрации нужно вставить этот код:

if(IsPlayerNPC(playerid)) return 1;

Всё! Если вы всё сделали правильно, то у вас всё должно работать.

Файлы для ботов!.rar

  • Like 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Rici

Автора не хочешь указать не? этого с другого портала взято

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Skinn3r

Автора не хочешь указать не? этого с другого портала взято

Спасибо , что напомнил

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#Rock

Красава +  :-D  :-D  :-D  :-D  :-D  :-D  :-D  :-D  :-D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Skinn3r
 
Красава +  :-D  :-D  :-D  :-D  :-D  :-D  :-D  :-D  :-D

спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#GiFF

ОФФТОП прекратили!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Flaymeek

Тему можно закрывать,в избежание флуда и офттопа,

По теме:Даже "Спасибо" не за что ставить,просто скопированный текст.Можно найти эту информацию на других порталах.Лучше уж самому написать,чем портить репутацию форума.Могут говорить что мы копируем... 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#Kot

Тему можно закрывать,в избежание флуда и офттопа,

По теме:Даже "Спасибо" не за что ставить,просто скопированный текст.Можно найти эту информацию на других порталах.Лучше уж самому написать,чем портить репутацию форума.Могут говорить что мы копируем... 

Ну хоть оформил нормально,видно что не копировал.Ну и что с другого портала?Я тоже брал темы с другого портала,многие.Что тут такого?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Flaymeek

 

Тему можно закрывать,в избежание флуда и офттопа,

По теме:Даже "Спасибо" не за что ставить,просто скопированный текст.Можно найти эту информацию на других порталах.Лучше уж самому написать,чем портить репутацию форума.Могут говорить что мы копируем... 

Ну хоть оформил нормально,видно что не копировал.Ну и что с другого портала?Я тоже брал темы с другого портала,многие.Что тут такого?

 

Ты видел как сперва был текст?Это уже потом администрация изменила.Копировать скрипт или готовый решение и копировать мануал это разное...Изначально даже автора он не указал,т.к он хотел присвоить себе.

 

Уже OFFTOP ;)

Изменено пользователем Serega_Cool

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Skinn3r

 

 

Тему можно закрывать,в избежание флуда и офттопа,

По теме:Даже "Спасибо" не за что ставить,просто скопированный текст.Можно найти эту информацию на других порталах.Лучше уж самому написать,чем портить репутацию форума.Могут говорить что мы копируем... 

Ну хоть оформил нормально,видно что не копировал.Ну и что с другого портала?Я тоже брал темы с другого портала,многие.Что тут такого?

 

Ты видел как сперва был текст?Это уже потом администрация изменила.Копировать скрипт или готовый решение и копировать мануал это разное...Изначально даже автора он не указал,т.к он хотел присвоить себе.

 

Уже OFFTOP ;)

 

Что , я не хотел его присваивать себе , я скачало написал , что автор не известен!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
EgasVegas

 

 

 

Тему можно закрывать,в избежание флуда и офттопа,

По теме:Даже "Спасибо" не за что ставить,просто скопированный текст.Можно найти эту информацию на других порталах.Лучше уж самому написать,чем портить репутацию форума.Могут говорить что мы копируем... 

Ну хоть оформил нормально,видно что не копировал.Ну и что с другого портала?Я тоже брал темы с другого портала,многие.Что тут такого?

 

Ты видел как сперва был текст?Это уже потом администрация изменила.Копировать скрипт или готовый решение и копировать мануал это разное...Изначально даже автора он не указал,т.к он хотел присвоить себе.

 

Уже OFFTOP ;)

 

Что , я не хотел его присваивать себе , я скачало написал , что автор не известен!

 

Ага

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
SHOROOP

Разницу между уроком и готовым решением не видим? Переношу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Kostyaev

Красава +  :-D  :-D  :-D  :-D  :-D  :-D  :-D  :-D  :-D

+

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vladimir_Kulkov

Автор, мне ошибку выдаeт fatal error 100: нету файла " " на строке #include main () {}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ruslan14141414

,

#define RECORDING "mynpc" //Имя файла с записью без расширения.
#define RECORDING_TYPE 1 //Тип записи: 1 на транспорте, и 2 пешком

#include <a_npc>
main(){}
public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

#if RECORDING_TYPE == 1
    public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);
    public OnNPCExitVehicle() StopRecordingPlayback();
#else
    public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
#endif

вот рабочие

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Alonso

А разве NPC пашет в crmp?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Web

Да, только надо исправленную серверную сборку скачать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Alonso

,имеется у вас такая? Или на форуме? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Web

, Наверно да и на gtasrv.ru (сайт адаптаций, конечно не реклама) наверно бинарники обновили.  А так, вот они:

 

Windows:

http://www.gtasrv.ru/download-srv/srv-cr-mp-c3-win.zip

 

Linux:

http://www.gtasrv.ru/download-srv/srv-cr-mp-c3-linux.tar.gz

Изменено пользователем Веб
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vsergeenko

, как несколько лет назад обновили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Frost1218

В списке их показывать не будет? в мультиплеере

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Web

@Frost1218, не будет

а вот слоты будут занимать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Frost1218

Куда вставлять?
 

if(IsPlayerNPC(playerid)) return 1;

При какой регистрации?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Web

@Frost1218, паблик регистрации аккаунта в твоем игровом режиме

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Frost1218

@Wеb, Разобрался! Но не могу понять одного! После создания нового pwn что с ним делать???


И 

ConnectNPC("Nick_Nick","recordings");

Верно? тут

  • Sad 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.