<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=DriftDj</id>
	<title>Multi Theft Auto: Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=DriftDj"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/DriftDj"/>
	<updated>2026-05-20T07:52:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=RU/Slothbot&amp;diff=71153</id>
		<title>RU/Slothbot</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=RU/Slothbot&amp;diff=71153"/>
		<updated>2021-06-05T19:20:46Z</updated>

		<summary type="html">&lt;p&gt;DriftDj: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;resource&amp;quot; subcaption=&amp;quot;Resource&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{translate|ru}}&lt;br /&gt;
&lt;br /&gt;
Этот ресурс разработан для создания виртуального игрока (бота), который может выполнять некоторые задачи реального игрока (стрелять по врагу, следовать за союзником, искать врага, ходить по путям(вайпоинтам)).&lt;br /&gt;
&lt;br /&gt;
=Особенности=&lt;br /&gt;
'''Командная игра:'''&lt;br /&gt;
Бот способен отличать врага от союзника.&lt;br /&gt;
&lt;br /&gt;
'''Навигация по карте:'''&lt;br /&gt;
Если бот будет заспаунен на карте без специальных путей, он сможет двигаться самостоятельно и искать врагов, но не так ловко.&lt;br /&gt;
&lt;br /&gt;
'''Агрессивность:'''&lt;br /&gt;
Эти боты атакуют игроков и ботов состоящих в других командах.&lt;br /&gt;
&lt;br /&gt;
'''Кооператив:'''&lt;br /&gt;
При обнаружении союзника, боты могут автоматически объединяться в команду с ним.&lt;br /&gt;
&lt;br /&gt;
'''Подвижность и ловкость:'''&lt;br /&gt;
Если на пути бота появятся препятствия он попытается обойти их или перепрыгнуть.&lt;br /&gt;
&lt;br /&gt;
'''Типы игры ботов:'''&lt;br /&gt;
*&amp;quot;hunting&amp;quot; - (&amp;quot;Охота&amp;quot;) бот следует по указанному пути и выискивает врага.&lt;br /&gt;
*&amp;quot;waiting&amp;quot; - (&amp;quot;Выжидание&amp;quot;) бот стоит на месте пока в поле его зрения не появится враг.&lt;br /&gt;
*&amp;quot;guarding&amp;quot; - (&amp;quot;Охрана&amp;quot;) бот не двигается с места и атакует врага если тот находится в поле его зрения.&lt;br /&gt;
*&amp;quot;following&amp;quot; - (&amp;quot;Следование&amp;quot;) бот следует за союзником (игроком/ботом) и атакует врагов в поле зрения.&lt;br /&gt;
*&amp;quot;chasing&amp;quot; - (&amp;quot;Преследование&amp;quot;) бот преследует врага и атакует его.&lt;br /&gt;
&lt;br /&gt;
'''Игровой режим/Объединение скрипта:'''&lt;br /&gt;
тот сценарий имеет несколько функций и событий что позволит другим ресурсам видеть и контролировать то, что боты делают, и даже взять под контроль их поведение.&lt;br /&gt;
&lt;br /&gt;
'''EDF путь для создания карты:'''&lt;br /&gt;
Интегрированный в карту редактор,на карте разработчики могут легко разместить пути для ботов для их следования через всю карту. Это значительно расширило возможности ботов для имитации истинной игры.&lt;br /&gt;
&lt;br /&gt;
=События Сервера=&lt;br /&gt;
&lt;br /&gt;
==onBotFindEnemy==&lt;br /&gt;
Это условие вызывается когда бот находит врага. Оно может быть отменено, чтобы бот никого не атаковал.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Параметры'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element enemy&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''enemy''': Игрок или бот являющийся врагом.&lt;br /&gt;
&amp;lt;big&amp;gt;'''Source'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Event system#Event source|source]] этого события является бот, который нашел врага&lt;br /&gt;
&lt;br /&gt;
==onBotWasted==&lt;br /&gt;
Это срабатывает, когда бот убит.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Параметры'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element attacker, float weapon, float bodypart&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''attacker''': Элемент, который убил бота&lt;br /&gt;
*'''weapon''': Идентификатор оружия, используемого для убийства бота&lt;br /&gt;
*'''bodypart''': Идентификатор части тела, в который попали, чтобы убить бота&lt;br /&gt;
&amp;lt;big&amp;gt;'''Source'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Event system#Event source|source]] этого события является бот, который умер&lt;br /&gt;
&lt;br /&gt;
==onBotSpawned==&lt;br /&gt;
Срабатывает, когда появляется бот.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Source'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Event system#Event source|source]] этого события является бот, который спавнился.&lt;br /&gt;
&lt;br /&gt;
==onBotFollow==&lt;br /&gt;
Срабатывает, когда бот начинает следовать за товарищем по команде&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Параметры'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element leader&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''leader''': Игрок или Ped бот начал следовать за ним&lt;br /&gt;
&amp;lt;big&amp;gt;'''Source'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Event system#Event source|source]] этого события является бот, который начинает следовать за товарищем по команде&lt;br /&gt;
&lt;br /&gt;
=Серверные функции =&lt;br /&gt;
Все эти функции используют [[call]] функцию, иначе не будут работать&lt;br /&gt;
&lt;br /&gt;
==spawnBot==&lt;br /&gt;
Эта функция создаёт бота в игре, возвращает элемент bot или false, если возникла проблема.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element spawnBot ( float x, float y, float z, int rotation = 0, [ int skinID = 0, int interior = 0, int dimension = 0, team theTeam = nil, int weapon = 0, string theMode = &amp;quot;hunting&amp;quot;, element theModesubject = nil ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''x:''' x координата спавна бота&lt;br /&gt;
*'''y:''' y координата спавна бота&lt;br /&gt;
*'''z:''' z координата спавна бота&lt;br /&gt;
*'''rotation:''' Ротация бота на спавне&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Optional Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''skinID:''' Скин бота при спавне&lt;br /&gt;
*'''interior:''' Интерьер, в котором появится бот&lt;br /&gt;
*'''dimension:''' Идентификатор [[dimension]] - измерения, в котором должен находиться бот&lt;br /&gt;
*'''theTeam:''' Команда к которой присоединится бот&lt;br /&gt;
*'''weapon:''' Оружие, которое будет носить пед&lt;br /&gt;
*'''theMode:''' Действие, которое бот будет выполнять при появлении на свет (см. раздел &amp;quot;режимы игры&amp;quot; выше)&lt;br /&gt;
*'''theModeSubject:''' Если theMode &amp;quot;преследует &amp;quot; или&amp;quot; следует&amp;quot;, этот аргумент необходим, чтобы сообщить боту, какого противника преследовать или за каким товарищем по команде следовать&lt;br /&gt;
&lt;br /&gt;
==setBotHunt==&lt;br /&gt;
Заставляет бота путешествовать по путям до тех пор, пока он не найдет врага или товарища по команде&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotHunt ( element theBot )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот, на которого вы хотите охотиться&lt;br /&gt;
&lt;br /&gt;
==setBotWait==&lt;br /&gt;
Заставляет бота стоять неподвижно до тех пор, пока в поле зрения не появится враг&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotWait ( element theBot )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот, которого вы хотите подождать&lt;br /&gt;
&lt;br /&gt;
==setBotChase==&lt;br /&gt;
makes the bot attack an anemy bot or player&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotChase ( element theBot, element theTarget )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот, который будет преследовать&lt;br /&gt;
*'''theTarget:''' Бот или игрок, которого будет преследовать&lt;br /&gt;
&lt;br /&gt;
==setBotFollow==&lt;br /&gt;
Заставляет бота следовать за ботом тимейтом или игроком&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotFollow( element theBot, element theTarget )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот, который будет следовать&lt;br /&gt;
*'''theTarget:''' Бот или игрок, за которым будет следовать&lt;br /&gt;
&lt;br /&gt;
==setBotGuard==&lt;br /&gt;
makes the bot move to the specific coords and stay there while attacking any enemies&lt;br /&gt;
Заставляет ходить бота по специальным координатам и не уходить во время атаки&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotGuard( element theBot, float x, float y, float z, [ bool priority = false ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот, который будет охранять&lt;br /&gt;
*'''x:''' x координата спавна бота&lt;br /&gt;
*'''y:''' y координата спавна бота&lt;br /&gt;
*'''z:''' z координата спавна бота&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Optional Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''priority:''' Установите true только, если вы хотите, чтобы бот стрелял только после того, как он достиг места для охраны&lt;br /&gt;
&lt;br /&gt;
==getBotTeam==&lt;br /&gt;
Возвращает команду, в которой находится бот, false, если команды нет.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
string getBotTeam ( element theBot)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот которого хотите проверить команду &lt;br /&gt;
&lt;br /&gt;
==setBotTeam==&lt;br /&gt;
Изменяет команду и лояльность бота&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotTeam ( element theBot, team theTeam )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот у которого хотите изменить команду&lt;br /&gt;
*'''theTeam:''' Команда к которой примкнёт бот&lt;br /&gt;
&lt;br /&gt;
==getBotAttackEnabled==&lt;br /&gt;
Возвращает true, если разрешено атаковать, иначе false.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool getBotAttackEnabled( element theBot)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот у которого хотите узнать разрешено ли атаковать&lt;br /&gt;
&lt;br /&gt;
==setBotAttackEnabled==&lt;br /&gt;
Разрешает или запрещает атаку &lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotAttackEnabled( element theBot, bool enabled)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот которому изменим разрешение&lt;br /&gt;
*'''enabled:''' True, если бот должен атаковать.&lt;br /&gt;
&lt;br /&gt;
==getBotMode==&lt;br /&gt;
возвращает режим котором находится бот (&amp;quot;chasing&amp;quot;, &amp;quot;waiting&amp;quot;, &amp;quot;guarding&amp;quot;, &amp;quot;hunting&amp;quot;, &amp;quot;following&amp;quot;), или, если бот преследует или следует, он вернет режим и цель&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
string getBotMode( element theBot)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот у которого хотите проверить статус&lt;br /&gt;
&lt;br /&gt;
==isPedBot==&lt;br /&gt;
Возвращает true если ped является ботом. False, если не является.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool isPedbot( element thePed)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''thePed:''' Ped, которого вы хотите проверить бот он или нет.&lt;br /&gt;
&lt;br /&gt;
==setBotWeapon==&lt;br /&gt;
Выдаёт оружие боту по айди (патроны не ограничены)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Syntax'''&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setBotWeapon( element theBot, float weapon)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;'''Required Arguments'''&amp;lt;/big&amp;gt;&lt;br /&gt;
*'''theBot:''' Бот, которому собираетесь выдать оружие&lt;br /&gt;
*'''weapon:''' id оружия для выдачи&lt;br /&gt;
&lt;br /&gt;
=Авторство=&lt;br /&gt;
*'''Slothman:''' Создатель бота, главный скриптер&lt;br /&gt;
*'''Gamesnert:''' Создатель EDF, скриптинг, тестировщик&lt;br /&gt;
*'''Dragon:''' Создатель режима игры, тестировщик, помощь в скриптинге.&lt;br /&gt;
*'''EvGeniz:''' Раннее тестирование, маппинг&lt;br /&gt;
*'''DriftDj:''' Перевёл страницу на русский&lt;br /&gt;
'''Спасибо всем остальным, кто внес предложения, протестировал сценарий, помог, когда я застрял, и т.д'''&lt;br /&gt;
&lt;br /&gt;
[[Category:Resource]]&lt;br /&gt;
&lt;br /&gt;
[[en:Slothman/Slothbot]]&lt;/div&gt;</summary>
		<author><name>DriftDj</name></author>
	</entry>
</feed>