RU/Slothbot: Difference between revisions
No edit summary |
No edit summary |
||
Line 104: | Line 104: | ||
*'''weapon:''' Оружие которое бот будет "носить" | *'''weapon:''' Оружие которое бот будет "носить" | ||
*'''theMode:''' Действие которое бот будет выполнять, когда "заспавнился" (см. "Режимы игры" [http://wiki.multitheftauto.com/wiki/RU/Slothbot#.D0.9E.D1.81.D0.BE.D0.B1.D0.B5.D0.BD.D0.BD.D0.BE.D1.81.D1.82.D0.B8] ) | *'''theMode:''' Действие которое бот будет выполнять, когда "заспавнился" (см. "Режимы игры" [http://wiki.multitheftauto.com/index.php?title=RU/Slothbot#.D0.9E.D1.81.D0.BE.D0.B1.D0.B5.D0.BD.D0.BD.D0.BE.D1.81.D1.82.D0.B8] ) | ||
*'''theModeSubject:''' | *'''theModeSubject:''' Если режим "погоня" или "следование за.." этим аргументом необходимо сказать, что бот преследует противника(в 1ом случае "погоня") или товарища по команде(во 2ом случае "следование за.." | ||
==setBotHunt== | ==setBotHunt== |
Revision as of 14:16, 11 August 2013
Статью необходимо перевести на русский язык. Если страница не будет переведена в разумные сроки, она будет удалена. |
Этот ресурс разработан для создания виртуального игрока (бота), который может выполнять некоторые задачи реального игрока (стрелять по врагу, следовать за союзником, искать врага, ходить по путям(вайпоинтам) )
Особенности
Командная игра: Бот способен отличать врага от союзника.
Навигация по карте: Если бот будет заспаунен на карте без специальных путей, он сможет двигаться самостоятельно и искать врагов, но не так ловко.
Агрессивность: Эти боты атакуют игроков и ботов состоящих в других командах.
Кооператив: При обнаружении союзника, боты могут автоматически объединяться в команду с ним.
Подвижность и ловкость: Если на пути бота появятся препятствия он попытается обойти их или перепрыгнуть.
Типы игры ботов:
- "hunting" - ("рус. Охота") бот следует по указанному пути и выискивает врага.
- "waiting" - ("рус. Выжидание") бот стоит на месте пока в поле его зрения не появится враг.
- "guarding" - ("рус. Охрана") бот не двигается с места и атакует врага если тот находится в поле его зрения.
- "following" - ("рус. Следование") бот следует за союзником (игроком/ботом) и атакует врагов в поле зрения.
- "chasing" - ("рус. Преследование") бот преследует врага и атакует его.
Игровой режим/Объединение скрипта : Этот сценарий имеет несколько функций и событий что позволит другим ресурсам видеть и контролировать то, что боты делают, и даже взять под контроль их поведение.
EDF путь для создания карты: Интегрированный в карту редактор,на карте разработчики могут легко разместить пути для ботов для их следования через всю карту. Это значительно расширило возможности ботов для имитации истинной игры.
События Сервера
onBotFindEnemy
Это условие вызывается когда бот находит врага. Оно может быть отменено, чтобы бот никого не атаковал
Параметры
element enemy
- enemy: Игрок или бот являющийся врагом
Source
The source of this event is the Bot that has found an enemy
onBotWasted
Это условие вызывается когда бот умирает.
Parameters
element attacker, float weapon, float bodypart
- attacker: Игрок/Бот/Элемент убивший sloth-бота.
- weapon: Орудие убийства.
- bodypart: Часть тела в которую sloth-бот был убит.
Source
The source of this event is the Bot that died
onBotSpawned
Это условие вызывается когда бот возраждается.
Source The source of this event is the Bot that spawned
onBotFollow
Это условие вызывается когда бот следует за союзником.
Parameters
element leader
- leader: Союзник за которым следует sloth-бот
Source
The source of this event is the Bot that starts following a teammate
Функции Сервера
Все эти функции должны быть использованы посредством вызова функции(call), иначе они не будут работать
spawnBot
Эта функция создает бота в игре, вернется элемент бот или ложный, если была проблема.
Syntax
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 = "hunting", element theModesubject = nil ] )
Необходимые аргументы
- x: Координата спавна бота по X
- y: Координата спавна бота по Y
- z: Координата спавна бота по Z
- rotation: "Поворот" спавна бота
Необязательные аргументы
- skinID: ID скина бота
- interior: Интерьер в котором бот "заспавнится"
- dimension: The ID of the dimension that the bot should be in
- theTeam: Команда в которую бот "войдет"
- weapon: Оружие которое бот будет "носить"
- theMode: Действие которое бот будет выполнять, когда "заспавнился" (см. "Режимы игры" [1] )
- theModeSubject: Если режим "погоня" или "следование за.." этим аргументом необходимо сказать, что бот преследует противника(в 1ом случае "погоня") или товарища по команде(во 2ом случае "следование за.."
setBotHunt
makes the bot travel pathways untill finding an enemy or teammate
Syntax
bool setBotHunt ( element theBot )
Required Arguments
- theBot: The bot you want to hunt
setBotWait
makes the bot stand still untill an enemy of teammate comes into view
Syntax
bool setBotWait ( element theBot )
Required Arguments
- theBot: The bot you want to wait
setBotChase
makes the bot attack an anemy bot or player
Syntax
bool setBotChase ( element theBot, element theTarget )
Required Arguments
- theBot: The bot that you want to do the chasing
- theTarget: The bot or player you want to be chased
setBotFollow
makes the bot follow a teammate bot or player
Syntax
bool setBotFollow( element theBot, element theTarget )
Required Arguments
- theBot: The bot that you want to do the following
- theTarget: The bot or player you want to be followed
setBotGuard
makes the bot move to the specific coords and stay there while attacking any enemies
Syntax
bool setBotGuard( element theBot, float x, float y, float z, [ bool priority = false ] )
Required Arguments
- theBot: The bot you want to do the guarding
- x: The X coords you want the bot to guard
- y: The Y coords you want the bot to guard
- z: The Z coords you want the bot to guard
Optional Arguments
- priority: Set to true only if you want the bot to only shoot once it has reached the location to guard
getBotTeam
returns the Team the bot is on, false if no team
Syntax
string getBotTeam ( element theBot)
Required Arguments
- theBot: The bot you want to check the team of
setBotTeam
changes the bot's team and loyalties
Syntax
bool setBotTeam ( element theBot, team theTeam )
Required Arguments
- theBot: The bot you want to change the team of
- theTeam: The team the bot should join
getBotAttackEnabled
returns true if the bot is allowed to attack, false otherwise
Syntax
bool getBotAttackEnabled( element theBot)
Required Arguments
- theBot: The bot you want to check if it can atack
setBotAttackEnabled
allow or disallow the bot to attack (press fire)
Syntax
bool setBotAttackEnabled( element theBot, bool enabled)
Required Arguments
- theBot: The bot you want to set if it can atack
- enabled: set to false to remove the bots ability to attack, true to allow it
getBotMode
returns the mode the bot is in ("chasing", "waiting", "guarding", "hunting", "following") or if the bot is chasing or following, it will return the mode and the target
Syntax
string getBotMode( element theBot)
Required Arguments
- theBot: The bot you want to check the status of
isPedBot
returns true if the ped is a bot, false otherwise
Syntax
bool ispedbot( element thePed)
Required Arguments
- thePed: The ped you want to check if its a bot
setBotWeapon
sets the bot's weapon id (ammo is always infinite)
Syntax
bool setBotWeapon( element theBot, float weapon)
Required Arguments
- theBot: The bot you want to set the weapon of
- weapon: the weapon id you want to give the bot
Credits
- Slothman: Bot creator, main scripter
- Gamesnert: EDF creator, scripting, testing
- Dragon: Gamemode creator, testing, scripting help
- EvGeniz: early testing, mapping
Thanks to Everyone else who made suggestions, tested the script, helped when i was stuck, etc