Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
DrSova

Патрули ботов для системы WAI

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

Вообще, сидя на форумах, я так и не нашел нормального патруля ботов, поэтому решил сделать самим. Для его работы нужна система миссий WAI.

 

Установка:

 

Для начала, создадим файл people_patrol.sqf и впишем в него:

 

 

if (isServer) then
{
private ["_aiskin","_skin","_mission","_aitype","_aicskill","_wpnum","_radius","_skillarray","_unitgroup","_startingpos","_skill","_position","_wp","_peopname","_count"];

_position = _this select 0;
_startingpos = _this select 1;
_radius = _this select 2;
_wpnum = _this select 3;
_skill = _this select 4;
_skin = _this select 5;
_aitype = _this select 6;
_count = _this select 7;


_skillarray = ["aimingAccuracy","aimimngShake","aimingSpeed","endurance","spotDistance","spotTime","courage","reloadSpeed","commanding","general"];
_aiweapon             = [];

call {
if (_skill == "easy") exitWith { _aicskill = ai_skill_easy; };
if (_skill == "medium") exitWith { _aicskill = ai_skill_medium; };
if (_skill == "hard") exitWith { _aicskill = ai_skill_hard; };
if (_skill == "extreme") exitWith { _aicskill = ai_skill_extreme; };
if (_skill == "random") exitWith { _aicskill = ai_skill_random call BIS_fnc_selectRandom; };
};

call {
if (_skin == "random") exitWith { _aiskin = ai_all_skin call BIS_fnc_selectRandom; };
if (_skin == "hero") exitWith { _aiskin = ai_hero_skin call BIS_fnc_selectRandom; };
if (_skin == "bandit") exitWith { _aiskin = ai_bandit_skin call BIS_fnc_selectRandom; };
if (_skin == "special") exitWith { _aiskin = ai_special_skin call BIS_fnc_selectRandom; };
};

if (_aitype == "hero") then {
_unitGroup = creategroup RESISTANCE;
} else {
_unitGroup = createGroup East;
};

for "_x" from 1 to _count do {
if (typeName _aiskin == "ARRAY") then
{
_aiskin = _aiskin call BIS_fnc_selectRandom;
};

_aiweapon = ai_wep_random call BIS_fnc_selectRandom;
_weaponandmag     = _aiweapon call BIS_fnc_selectRandom;
_weapon         = _weaponandmag select 0;
_magazine         = _weaponandmag select 1;

_peopname = _unitgroup createUnit [_aiskin, [(_startingpos select 0),(_startingpos select 1),(_startingpos select 2)], [], 1, "NONE"];
[_peopname] joinSilent _unitGroup;

removeAllWeapons _peopname;
removeAllItems _peopname;

for "_i" from 1 to 3 do {
_peopname addMagazine _magazine;
};
_peopname addweapon _weapon;
_peopname selectWeapon _weapon;


call {
if (_aitype == "hero") exitWith { _peopname setVariable ["Hero",true,true]; };
if (_aitype == "bandit") exitWith { _peopname setVariable ["Bandit",true,true]; };
if (_aitype == "special") exitWith { _peopname setVariable ["Special",true,true]; };
};

{ _peopname setSkill [_x,0.1] } count _skillArray;

};


{ _x addEventHandler ["Killed",{[_this select 0, _this select 1, "vehicle"] call on_kill;}]; } forEach (units _unitGroup);


_unitGroup allowFleeing 0;
_unitGroup setBehaviour "AWARE";
_unitGroup setCombatMode "RED";

if (_wpnum > 0) then {
for "_x" from 1 to _wpnum do {
_wp = _unitgroup addWaypoint [[(_position select 0),(_position select 1),0],_radius];
_wp setWaypointType "SAD";
_wp setWaypointCompletionRadius 200;
};

};

_wp = _unitGroup addWaypoint [[(_position select 0),(_position select 1),0],100];
_wp setWaypointType "CYCLE";
_wp setWaypointCompletionRadius 200;

_unitGroup
};






 

 

 

 

Далее, найдем в папке WAI файл init.sqf и после

if(isServer) then {

 

  напишем:

people_patrol  = compile preprocessFileLineNumbers "\z\addons\dayz_server\WAI\compile\people_patrol.sqf";

 

Далее положим people_patrol.sqf по пути WAI\compile

 

Как ставить патрули:

 

Находим в папке WAI\static файл с зонами, который соответствует вашей карте (подробнее см. установку статичных ботов) и в самом низу прописываем:

	[
		[2390.41,4401.12,0.001], //Старт группы				
		[2390.41,4401.12,0.001], //Зона патрулирования				
		500, //радиус патрулирования								
		1000, //количество вейпоинтов патруля								
		"easy",	//скилл ботов						
		"Random", //скины							
		"Bandit", //статус ботов
                20 //количество ботов		
	] spawn people_patrol;

 

На этом все.

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


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





спасибо

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


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

спасибо.как раз это сейчас и искал

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


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

 

"Bandit", //статус ботов

 

как работает эта строчка?

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


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

ак работает эта строчка?

предполагаю , если бандит то + хуманити, если герой , то - хуманити за убийство

Изменено пользователем davidx (история изменений)

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


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

как работает эта строчка?

Bandit - прибавляется хуманити

Hero - отбавляется хуманити

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


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

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

Цель - охрана торговцев от "чужих"

Изменено пользователем Karakurd (история изменений)

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


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

Странный патруль без оружия... подскажите пожалуйста как их вооружить???

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


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

Странный патруль без оружия... подскажите пожалуйста как их вооружить???

Да, заметил это тоже, когда поставил на ванильный дейз. Сейчас выложу исправленную версию

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


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

Залил исправленную версию. Позже добавлю полную кастомизацию

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


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

Залил исправленную версию. Позже добавлю полную кастомизацию

А нельзя ли отвязать от WAI , или это сложно ?

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


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

А нельзя ли отвязать от WAI , или это сложно ?

Можно, почему нет. Только смысл

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


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

подробнее см. установку статичных ботов

где посмотреть?

Изменено пользователем Karakurd (история изменений)

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


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

Чтоле спасибо помог молодец. Очень благодарен

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


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

Вроде работает! Но человечность дается только за одного бота из всей группы.

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


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

И еще боты бывает убивают своих при спавне.

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


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

На этом все.

 

Что то немогу заставить работать, WAI 2.2.0 V3  , RPT

0:40:24 "[DZAI] DZAI loading completed in 1.26199 seconds."

 0:40:24 Warning Message: Script z\addons\dayz_server\WAI\customsettings.sqf not found

 0:40:24 "TIME SYNC: Local Time set to [2015,3,1,13,40]"

 0:40:25 "WAI: AI Config File Loaded"

 0:40:25 "WAI: Initialising missions"

 0:40:25 Error in expression <Random;

_weapon         = _weaponandmag select 0;

_magazine         = _weaponand>

 0:40:25   Error position: <select 0;

_magazine         = _weaponand>

 0:40:25   Error select: Type String, expected Array,Config entry

 0:40:25 File z\addons\dayz_server\WAI\compile\people_patrol.sqf, line 47

 0:40:25 "WAI: AI Monitor Started"

 0:40:26 Error in expression <Random;

_weapon         = _weaponandmag select 0;

_magazine         = _weaponand>

 0:40:26   Error position: <select 0;

_magazine         = _weaponand>

 0:40:26   Error select: Type String, expected Array,Config entry

 0:40:26 File z\addons\dayz_server\WAI\compile\people_patrol.sqf, line 47

 0:40:28 "WAI: Spawned a group of 4 AI (Bandit) at [17156,18572,0.001]"

 0:40:29 "WAI: Spawned a group of 4 AI (Bandit) at [17166,18542,0.001]"

 0:40:29 "Napf static spawn configuration loaded."

 0:40:29 "WAI: Spawned a group of 4 AI (Bandit) at [16044,19368,0.001]"

 0:40:29 Warning Message: Bad vehicle type

 0:40:29 Warning Message: Bad vehicle type

 0:40:29 Warning Message: Bad vehicle type

 0:40:29 Warning Message: Bad vehicle type

 0:40:29 Warning Message: Bad vehicle type

 0:40:29 Warning Message: Bad vehicle type

 0:40:29 "WAI: Spawned in 6 KORD_high_TK_EP1"

 0:40:30 "WAI: Spawned a group of 4 AI (Bandit) at [16365.8,18362.1,0.001]"

 0:40:30 "WAI: Spawned a group of 4 AI (Bandit) at [16651.4,18414.9,0.001]"

 0:40:30 "WAI: Spawned a group of 10 AI (Bandit) at [16479.1,18410.5,0.001]"

 0:40:30 Warning Message: Bad vehicle type

 0:40:31 Warning Message: Bad vehicle type

 0:40:31 Warning Message: Bad vehicle type

 0:40:31 Warning Message: Bad vehicle type

 0:40:31 Warning Message: Bad vehicle type

 0:40:31 "WAI: Spawned in 5 M2StaticMG"

 0:40:31 Error in expression <Random;

_weapon         = _weaponandmag select 0;

_magazine         = _weaponand>

 0:40:31   Error position: <select 0;

_magazine         = _weaponand>

 0:40:31   Error select: Type String, expected Array,Config entry

 0:40:31 File z\addons\dayz_server\WAI\compile\people_patrol.sqf, line 47

 0:40:41 Warning: z\addons\dayz_communityassets\models\razor.p3d:0 Error while trying to generate ST for points: 214, 349, 208

 

 

Переделал, все работает, норм патруль, спасибо.

Изменено пользователем shturman (история изменений)

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


Ссылка на сообщение
Поделиться на других сайтах
[2390.41,4401.12,0.001], //Старт группы                
        [2390.41,4401.12,0.001], //Зона патрулирования                
        500, //радиус патрулирования                                
        1000, //количество вейпоинтов патруля                                
        "easy",    //скилл ботов                        
        "Random", //скины                            
        "Bandit", //статус ботов
                20 //количество ботов        
    ] spawn people_patrol;

Не пойму, куда это прописывать , не появляются патрули, на скрине мои файлы, в какой из них, и в каком именно месте прописать ?

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

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


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

лови +  :good:  :smile:

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


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

Доброго дня!

Подскажите, где увеличивается или уменьшается агресивность ботов на миссиях?

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


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

Агрессивность или точность?

 

Если всё-таки точность, то в файле WAI/config.sqf смотри:

		ai_skill_extreme			= [["aimingAccuracy",1.00],["aimingShake",1.00],["aimingSpeed",1.00],["endurance",1.00],["spotDistance",1.00],["spotTime",1.00],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]]; 	// Extreme
		ai_skill_hard				= [["aimingAccuracy",0.80],["aimingShake",0.80],["aimingSpeed",0.80],["endurance",1.00],["spotDistance",0.80],["spotTime",0.80],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]]; 	// Hard
		ai_skill_medium				= [["aimingAccuracy",0.60],["aimingShake",0.60],["aimingSpeed",0.60],["endurance",1.00],["spotDistance",0.60],["spotTime",0.60],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]];	// Medium
		ai_skill_easy				= [["aimingAccuracy",0.40],["aimingShake",0.50],["aimingSpeed",0.50],["endurance",1.00],["spotDistance",0.50],["spotTime",0.50],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]];	// Easy
		ai_skill_random				= [ai_skill_extreme,ai_skill_hard,ai_skill_hard,ai_skill_hard,ai_skill_hard,ai_skill_medium,ai_skill_medium,ai_skill_medium,ai_skill_medium,ai_skill_easy];

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


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

ну они жестокие через чур ). 

У меня вот так:

ai_skill_extreme            = [["aimingAccuracy",1.00],["aimingShake",1.00],["aimingSpeed",1.00],["endurance",1.00],["spotDistance",1.00],["spotTime",1.00],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]];     // Extreme
        ai_skill_hard                = [["aimingAccuracy",0.99],["aimingShake",0.99],["aimingSpeed",0.99],["endurance",0.99],["spotDistance",0.99],["spotTime",0.99],["courage",0.99],["reloadSpeed",0.99],["commanding",0.99],["general",0.99]];     // Hard
        ai_skill_medium                = [["aimingAccuracy",0.96],["aimingShake",0.96],["aimingSpeed",0.96],["endurance",0.96],["spotDistance",0.96],["spotTime",0.96],["courage",0.96],["reloadSpeed",0.96],["commanding",0.96],["general",0.96]];    // Medium
        ai_skill_easy                = [["aimingAccuracy",0.95],["aimingShake",0.95],["aimingSpeed",0.95],["endurance",0.95],["spotDistance",0.95],["spotTime",0.95],["courage",0.95],["reloadSpeed",0.95],["commanding",0.95],["general",0.95]];    // Easy
        ai_skill_random                = [ai_skill_extreme,ai_skill_hard,ai_skill_hard,ai_skill_hard,ai_skill_hard,ai_skill_medium,ai_skill_medium,ai_skill_medium,ai_skill_medium,ai_skill_easy];
 
Что нужно изменить?

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


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

Самое простое, это скопировать этот кусок скрипта выше/ниже и закомментировать его (сделать backup :) ).

А в незакомментированном участке скопировать все значения из "ai_skill_easy" в другие. Тогда все миссии/патрули будут с настройками "easy".

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


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

Данные боты очень жрут фпс

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


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

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Тоха
      Заинтересовал меня этот мод, вторую ночь из-за него не сплю). Суть вопроса в заголовке. Возможно ли прикрутить ботов, желательно патрули да и мисси тоже. Чтоб с минимальной болью. Хотел взять перебрать ботов от Exile, но понял, что переоценил себя. Кто может подсказать как лучше сделать? Рассматриваю еще как вариант создание миссий через редактор армы, но как патрулей запихнуть, примерно понимаю как рандомизировать и прописать вейпоинты, но что то подсказывает опять переоцениваю себя. 
      p/s пока рылся в серверной части натыкался на файлы отвечающие за спавн юнитов и отрядов
      @BreakingPointServer\Addons\breakingpoint_server\functions\AI\fn_spawnAI.sqf
      @BreakingPointServer\Addons\breakingpoint_server\functions\AI\fn_spawnAISquad.sqf
    • Автор: Akie
      Никак не могу разобраться как заставить ВАИ выводить миникарту при старте миссии, скрипт есть, просто как заставить его выводить её не могу понять, подскажите пожалуйста господа. Знаю что сообщения выводятся через mission_winorfail.sqf, но как оттуда сделать вызов вариабла сообщения я не знаю.
    • Автор: Gromillla
      Доброго времени суток дамы и господа, и сразу к вопросу, в миссиях 2.2.5 версии, если боты "бандиты", то они скин игрока видят и реагируют на него, а если миссии с ботами "героями", то они скин игрока не видят. Скин  "RUS_Soldier_Marksman". Как соответственно решить эту проблему? Ошибок в РПТ нет.
    • Автор: Шапокляк
      Как сделать чтоб Боты агрелись на Игрока с расстояния   1000-1500 метров. Темы вродибы есть но решений нет.
      ai_share_info = true; // AI share info on player position ai_share_distance = 2000; // distance from killed AI for AI to share your rough position ai_skill_extreme = [["aimingAccuracy",1.00],["aimingShake",1.00],["aimingSpeed",1.00],["endurance",1.00],["spotDistance",3.99],["spotTime",1.00],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]]; // Extreme ai_skill_hard = [["aimingAccuracy",1.00],["aimingShake",1.00],["aimingSpeed",1.00],["endurance",1.00],["spotDistance",3.99],["spotTime",1.00],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]]; // Hard менял все не помогает.!!!
    • Автор: DIasTer
      кто нибудь встречался с этим? как исправить?
       
      19:54:45 File z\addons\dayz_server\WAI\compile\mission_winorfail.sqf, line 321
      19:54:46 Error in expression < ({[_x,_name] call fnc_inString;} count wai_clean_when_clear) != 0) then {

      _mi>
      19:54:46   Error position: <wai_clean_when_clear) != 0) then {

      _mi>
      19:54:46   Error Undefined variable in expression: wai_clean_when_clear
  • Наш выбор

×
×
  • Создать...

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

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.