Перейти к содержимому


Фотография

BIS_fnc_spawnGroup.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 73

#1 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 05 August 2014 - 21:54

Вот расковырял БИСовскую миссию "Побег с Алтиса", все вроде бы понятно и ладно что нужно поменял и переделал.

Единственный момент - там есть вот такой вот скрипт:

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> (BIS_InfantryPatrolsCSAT select floor random count BIS_InfantryPatrolsCSAT), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

_newGrp - новая группа - все понятно.

 [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >>  - конфиг группы - все понятно.

(BIS_InfantryPatrolsCSAT select floor random count BIS_InfantryPatrolsCSAT) - рэндомный выбор спавнующейся группы, из заранее подготовленного списка групп (CfgGroups), в котором идет перечисление доступных групп для спавна:

(  

    "OI_reconPatrol",

    "OI_reconSentry",

    "OI_reconTeam",

    "OI_SniperTeam",

    "OIA_InfSentry",

    "OIA_InfSquad",

    "OIA_InfSquad_Weapons",

    "OIA_InfTeam",

    "OIA_InfTeam_AA",

    "OIA_InfTeam_AT"

) - тут все понятно.

 

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> (BIS_InfantryPatrolsCSAT select floor random count BIS_InfantryPatrolsCSAT), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup; - вот эта строчка вызывает спавн только класса "Infantry" - я сделал то же самое, но для класса "Armored", все получилось.

Вопрос, как сделать random в random,  т.е что бы спавнился не только класс "Infantry", но и класс  "Armored"?

 

_newGrp =

                 random

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> (BIS_InfantryPatrolsCSAT select floor random count BIS_InfantryPatrolsCSAT), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup

                 random

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Armored" >> (BIS_ArmoredPatrolsCSAT select floor random count BIS_ArmoredPatrolsCSAT), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup

Блин надеюсь я все правильно и понятно спросил! :pardon:

 

       

 

 

 


  • 0

#2 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 06 August 2014 - 20:07

_rndTypeGroup = ["Infantry", "Armored"] call BIS_fnc_selectRandom;
_rndGroup     = if (_rndTypeGroup == "Infantry") then {BIS_InfantryPatrolsCSAT} else {BIS_ArmoredPatrolsCSAT};

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

Блин надеюсь я все правильно понял)


  • 0

#3 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 06 August 2014 - 22:48

Блин - СЧа попробую))))

Попробовал - не работает)))


Сообщение отредактировал D_Donskoy: 06 August 2014 - 23:34

  • 0

#4 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 07 August 2014 - 17:03

Блин - СЧа попробую))))

Попробовал - не работает)))

не работает что?

 

Просто рандом в коде выше должен работать, скорее всего где то в коде косяк.

 

И ещё, очень полезная штука в разработке, это читать лог).

Идёте

C:\Users\Ваш_профиль\AppData\Local\Arma 3

и открываете в редакторе текста последний по дате и времени файл с расширением *.rpt

в этом логе найдёте все свои и не свои косяки.

 

Если не увидите в проводнике папки AppData, идёте в свойства папок и ставите галочку "показывать скрытые и системные папки и файлы.

 

И было бы понятней, если бы вы показали весь скрипт, которым спавните группы. Только при показывании, не забудьте нажать на кнопочку <> там где отвечаете, видите ли, так читать код, особенно не короткий, будет удобней)


Сообщение отредактировал SteelRat: 07 August 2014 - 17:59

  • 0

#5 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 07 August 2014 - 20:15

Вот весь код целиком, это по сути "initServer.sqf" из Побег с Алтиса. Некоторые строки удалены за ненадобностью, все проверил, все работает, вснес свои изменения, проверил, все работает.

Прикрепляю свой тест сюда же.

Вопрос тот же. Как сделать рандомный выбор не только в классе "ИНФАНТРИ", но и "АРМОРЕД" и "СПЕКОПС" и "ВСЕ ОСТАЛЬНЫЕ КЛАССЫ". Если это вообще возможно? :pardon:

Прикрепленные файлы


  • 0

#6 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 07 August 2014 - 23:33

D_Donskoy, pls используй "спойлер" и "<>"
  • 0

#7 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 08 August 2014 - 21:22

D_Donskoy, pls используй "спойлер" и "<>"

"спойлер" и "<>"  - простите за серость - ЧТО ЭТО? :sorry: 


  • 0

#8 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 08 August 2014 - 23:33

D_Donskoy,
"<>"
_x = _x + 1;
_x = _x + 1;
spoiler

Сообщение отредактировал vlad333000: 08 August 2014 - 23:35

  • 0

#9 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 09 August 2014 - 00:42

Уж простите за выражение. Пытаться понять такой длинны код, да без отступов, нафиг нафиг, к терапевту !)

 

Предупреждение

Нарушение правил форума.


Сообщение отредактировал WAF3R: 09 August 2014 - 10:13

  • 0

#10 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 09 August 2014 - 01:20

А вообще странно, почему у вас не получается.

	// random patrols Infantry
	if (triggerText _x == "GEN_infantryCSAT") then {
		_x spawn {
			_basePos = position _this;
			_rad = (triggerArea _this) select 0;
			deleteVehicle _this;
			_oldFPSStep = BIS_fps_simulSteps;
			while {TRUE} do {	// no need to test every frame, use Simulation Manager test loops instead
				waitUntil {BIS_fps_simulSteps > _oldFPSStep};
				if ({(_x distance _basePos) < (2000 + _rad) && (_x distance _basePos) >= (1000 + _rad) && !(vehicle _x isKindOf "Air")} count units BIS_grpMain > 0) exitWith {};
				_oldFPSStep = BIS_fps_simulSteps;
			};
			for [{_x = 1}, {_x <= (_rad / 125)}, {_x = _x + 1}] do {
				_pos = [_basePos, random _rad, random 360] call BIS_fnc_relPos;
				_newGrp = grpNull;
				
				_rndTypeGroup = ["Infantry", "Armored"] call BIS_fnc_selectRandom;
				_rndGroup = switch (_rndTypeGroup) do {
					case "Armored": {BIS_ArmoredPatrolsCSAT};
					default {BIS_InfantryPatrolsCSAT};	// по умолчанию "Infantry"
				};
				
				_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;			
				
				{_x call BIS_corpseRemoval} forEach units _newGrp;
				[_newGrp, _rad] spawn {
					_oldFPSStep = BIS_fps_simulSteps;
					while {TRUE} do {	// no need to test every frame, use Simulation Manager test loops instead
						waitUntil {BIS_fps_simulSteps > _oldFPSStep};
						if ({(_x distance leader (_this select 0)) < (4000 + (_this select 1))} count units BIS_grpMain == 0) exitWith {};
						_oldFPSStep = BIS_fps_simulSteps;
					};
					{deleteVehicle _x} forEach units (_this select 0);
					deleteGroup (_this select 0);
					BIS_fps_rescanNewObjects = TRUE;
				};
				
				_wp = _newGrp addWaypoint [position leader _newGrp, 3000];
				_wp setWaypointLoiterType "CIRCLE";
				_wp setWaypointSpeed "LIMITED";
				_wp setWaypointBehaviour "SAFE";
				_wp = _newGrp addWaypoint [waypointPosition [position leader _newGrp, 1], 0];
				_wp setWaypointType "CYCLE";
    		};
			BIS_fps_rescanNewObjects = TRUE;
		};
	};

  • 1

#11 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 11 August 2014 - 13:11

Супер!

Благодарности нет границ.

Спасибо за терпение и отзывчивость.

 

РЕСПЕКТ ВАМ ТОВАРИЩ.  :clapping:

 

Тут еще один нюанс)

Группы "Mechanized" и "Motorized_MTP" - после спавна и срабатывания вейпоинта, группа на отрез отказывается залезать в свой транспорт, я пробовал ставить вейпоинт "ГЕТ ИН" - не помогло, пробовал увеличить расстояние до точки маршрута - не помогло, пробовал изменить скорость передвижения и "БИХАВИУР" - не помогло.

Догадываюсь что нужно дописать что то здесь:

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

А вот куда именно так и не догадался. Если не трудно подскажите, куда дописать "ИН КАРГО"!)))


Сообщение отредактировал D_Donskoy: 11 August 2014 - 13:29

  • 0

#12 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 11 August 2014 - 16:50

Супер!

Благодарности нет границ.

Спасибо за терпение и отзывчивость.

 

РЕСПЕКТ ВАМ ТОВАРИЩ.  :clapping:

 

Тут еще один нюанс)

Группы "Mechanized" и "Motorized_MTP" - после спавна и срабатывания вейпоинта, группа на отрез отказывается залезать в свой транспорт, я пробовал ставить вейпоинт "ГЕТ ИН" - не помогло, пробовал увеличить расстояние до точки маршрута - не помогло, пробовал изменить скорость передвижения и "БИХАВИУР" - не помогло.

Догадываюсь что нужно дописать что то здесь:

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

А вот куда именно так и не догадался. Если не трудно подскажите, куда дописать "ИН КАРГО"!)))

Не потому ли, что техника уже укомплектована?!

 

Идём по цепочке

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

что мы видим там?

..............

//Is this a character or vehicle?	
		if (getNumber(configFile >> "CfgVehicles" >> _type >> "isMan") == 1) then 
		{	
			_unit = _grp createUnit [_type, _itemPos, [], 0, "FORM"];
			_unit setDir _azimuth;
		} 
		else 
		{
			_unit = ([_itemPos, _azimuth, _type, _grp] call BIS_fnc_spawnVehicle) select 0; // Ага! Сюда
		};

.............

Идём туда

..............

//Spawn the crew and add the vehicle to the group.
//_crew = [_veh, _grp] call BIS_fnc_spawnCrew;
createvehiclecrew _veh;
_crew = crew _veh;
_crew joinsilent _grp;
_grp addVehicle _veh;

//If this is a new group, select a leader.
if (_newGrp) then
{
	_grp selectLeader (commander _veh);
};

[_veh, _crew, _grp]

Ага! А что у нас такое

createvehiclecrew

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


  • 0

#13 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 11 August 2014 - 22:09

 

Супер!

Благодарности нет границ.

Спасибо за терпение и отзывчивость.

 

РЕСПЕКТ ВАМ ТОВАРИЩ.  :clapping:

 

Тут еще один нюанс)

Группы "Mechanized" и "Motorized_MTP" - после спавна и срабатывания вейпоинта, группа на отрез отказывается залезать в свой транспорт, я пробовал ставить вейпоинт "ГЕТ ИН" - не помогло, пробовал увеличить расстояние до точки маршрута - не помогло, пробовал изменить скорость передвижения и "БИХАВИУР" - не помогло.

Догадываюсь что нужно дописать что то здесь:

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

А вот куда именно так и не догадался. Если не трудно подскажите, куда дописать "ИН КАРГО"!)))

Не потому ли, что техника уже укомплектована?!

 

Идём по цепочке

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

что мы видим там?

..............

//Is this a character or vehicle?	
		if (getNumber(configFile >> "CfgVehicles" >> _type >> "isMan") == 1) then 
		{	
			_unit = _grp createUnit [_type, _itemPos, [], 0, "FORM"];
			_unit setDir _azimuth;
		} 
		else 
		{
			_unit = ([_itemPos, _azimuth, _type, _grp] call BIS_fnc_spawnVehicle) select 0; // Ага! Сюда
		};

.............

Идём туда

..............

//Spawn the crew and add the vehicle to the group.
//_crew = [_veh, _grp] call BIS_fnc_spawnCrew;
createvehiclecrew _veh;
_crew = crew _veh;
_crew joinsilent _grp;
_grp addVehicle _veh;

//If this is a new group, select a leader.
if (_newGrp) then
{
	_grp selectLeader (commander _veh);
};

[_veh, _crew, _grp]

Ага! А что у нас такое

createvehiclecrew

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

 

Я видимо не правильно задал вопрос. 

То, что вы написали я понял, это создание команды в отспавнившейся пустой технике - так?

Я же хотел спросить про то, почему к примеру:

 

BIS_MechanizedPatrolsCSAT = [

    "OIA_MechInf_AA"

]; - это "тим" и "виекл" в одной группе.

 

Дак вот, почему после того, как наш код спавнит "тим" с "виеклом" и этой "тим" нужно перейти на вейпоинт на удалении 3 км., тим не садиться в свой "виекл" и не едет к нему на их "виекле". 

В отличие от той же "тим", которую я поставлю в редакторе обычным способом - т.е. к примеру - группы / красные / мотопехота / моторизированная группа - эта "тим", 100% не пойдет пешком на маршбросок в 3 км., и залезет в свой "ифрит" и двинет на нем, если конечно не стоит скорость передвижения "медленно".

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

Надеюсь я правильно спросил. :pardon:   

Да к стати, как делать спойлеры? :unknw:


  • 0

#14 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 12 August 2014 - 01:33

 

 

Супер!

Благодарности нет границ.

Спасибо за терпение и отзывчивость.

 

РЕСПЕКТ ВАМ ТОВАРИЩ.  :clapping:

 

Тут еще один нюанс)

Группы "Mechanized" и "Motorized_MTP" - после спавна и срабатывания вейпоинта, группа на отрез отказывается залезать в свой транспорт, я пробовал ставить вейпоинт "ГЕТ ИН" - не помогло, пробовал увеличить расстояние до точки маршрута - не помогло, пробовал изменить скорость передвижения и "БИХАВИУР" - не помогло.

Догадываюсь что нужно дописать что то здесь:

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

А вот куда именно так и не догадался. Если не трудно подскажите, куда дописать "ИН КАРГО"!)))

Не потому ли, что техника уже укомплектована?!

 

Идём по цепочке

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

что мы видим там?

..............

//Is this a character or vehicle?	
		if (getNumber(configFile >> "CfgVehicles" >> _type >> "isMan") == 1) then 
		{	
			_unit = _grp createUnit [_type, _itemPos, [], 0, "FORM"];
			_unit setDir _azimuth;
		} 
		else 
		{
			_unit = ([_itemPos, _azimuth, _type, _grp] call BIS_fnc_spawnVehicle) select 0; // Ага! Сюда
		};

.............

Идём туда

..............

//Spawn the crew and add the vehicle to the group.
//_crew = [_veh, _grp] call BIS_fnc_spawnCrew;
createvehiclecrew _veh;
_crew = crew _veh;
_crew joinsilent _grp;
_grp addVehicle _veh;

//If this is a new group, select a leader.
if (_newGrp) then
{
	_grp selectLeader (commander _veh);
};

[_veh, _crew, _grp]

Ага! А что у нас такое

createvehiclecrew

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

 

Я видимо не правильно задал вопрос. 

То, что вы написали я понял, это создание команды в отспавнившейся пустой технике - так?

Я же хотел спросить про то, почему к примеру:

 

BIS_MechanizedPatrolsCSAT = [

    "OIA_MechInf_AA"

]; - это "тим" и "виекл" в одной группе.

 

Дак вот, почему после того, как наш код спавнит "тим" с "виеклом" и этой "тим" нужно перейти на вейпоинт на удалении 3 км., тим не садиться в свой "виекл" и не едет к нему на их "виекле". 

В отличие от той же "тим", которую я поставлю в редакторе обычным способом - т.е. к примеру - группы / красные / мотопехота / моторизированная группа - эта "тим", 100% не пойдет пешком на маршбросок в 3 км., и залезет в свой "ифрит" и двинет на нем, если конечно не стоит скорость передвижения "медленно".

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

Надеюсь я правильно спросил. :pardon:   

Да к стати, как делать спойлеры? :unknw:

 

 

Просто вы , сударь, поняли, да не всё, что бы вам сделать то что вы хотите, вашу тиму надо спавнить отдельно от техники, а саму технику спавнить, так сказать ручками), то есть своим кодом, а не БИСовскими функциями, и после спавна присоединить к тиме.

Попробуйте ещё раз проследить то что я отписал выше.

Если функция BIS_fnc_spawnGroup определит в переданном массиве технику, то она передаёт эту технику функции BIS_fnc_spawnVehicle, а та уже технику и укомплектует, и вы тут хоть сколько танцуйте с бубном)

ИТОГО: тима отдельно, техника отдельно, после объединить.


  • 1

#15 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 12 August 2014 - 13:23

 

 

 

Супер!

Благодарности нет границ.

Спасибо за терпение и отзывчивость.

 

РЕСПЕКТ ВАМ ТОВАРИЩ.  :clapping:

 

Тут еще один нюанс)

Группы "Mechanized" и "Motorized_MTP" - после спавна и срабатывания вейпоинта, группа на отрез отказывается залезать в свой транспорт, я пробовал ставить вейпоинт "ГЕТ ИН" - не помогло, пробовал увеличить расстояние до точки маршрута - не помогло, пробовал изменить скорость передвижения и "БИХАВИУР" - не помогло.

Догадываюсь что нужно дописать что то здесь:

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

А вот куда именно так и не догадался. Если не трудно подскажите, куда дописать "ИН КАРГО"!)))

Не потому ли, что техника уже укомплектована?!

 

Идём по цепочке

_newGrp = [_pos, EAST, configFile >> "CfgGroups" >> "East" >> "OPF_F" >> _rndTypeGroup >> (_rndGroup select floor random count _rndGroup), [], [], [0.2, 0.5]] call BIS_fnc_spawnGroup;

что мы видим там?

..............

//Is this a character or vehicle?	
		if (getNumber(configFile >> "CfgVehicles" >> _type >> "isMan") == 1) then 
		{	
			_unit = _grp createUnit [_type, _itemPos, [], 0, "FORM"];
			_unit setDir _azimuth;
		} 
		else 
		{
			_unit = ([_itemPos, _azimuth, _type, _grp] call BIS_fnc_spawnVehicle) select 0; // Ага! Сюда
		};

.............

Идём туда

..............

//Spawn the crew and add the vehicle to the group.
//_crew = [_veh, _grp] call BIS_fnc_spawnCrew;
createvehiclecrew _veh;
_crew = crew _veh;
_crew joinsilent _grp;
_grp addVehicle _veh;

//If this is a new group, select a leader.
if (_newGrp) then
{
	_grp selectLeader (commander _veh);
};

[_veh, _crew, _grp]

Ага! А что у нас такое

createvehiclecrew

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

 

Я видимо не правильно задал вопрос. 

То, что вы написали я понял, это создание команды в отспавнившейся пустой технике - так?

Я же хотел спросить про то, почему к примеру:

 

BIS_MechanizedPatrolsCSAT = [

    "OIA_MechInf_AA"

]; - это "тим" и "виекл" в одной группе.

 

Дак вот, почему после того, как наш код спавнит "тим" с "виеклом" и этой "тим" нужно перейти на вейпоинт на удалении 3 км., тим не садиться в свой "виекл" и не едет к нему на их "виекле". 

В отличие от той же "тим", которую я поставлю в редакторе обычным способом - т.е. к примеру - группы / красные / мотопехота / моторизированная группа - эта "тим", 100% не пойдет пешком на маршбросок в 3 км., и залезет в свой "ифрит" и двинет на нем, если конечно не стоит скорость передвижения "медленно".

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

Надеюсь я правильно спросил. :pardon:   

Да к стати, как делать спойлеры? :unknw:

 

 

Просто вы , сударь, поняли, да не всё, что бы вам сделать то что вы хотите, вашу тиму надо спавнить отдельно от техники, а саму технику спавнить, так сказать ручками), то есть своим кодом, а не БИСовскими функциями, и после спавна присоединить к тиме.

Попробуйте ещё раз проследить то что я отписал выше.

Если функция BIS_fnc_spawnGroup определит в переданном массиве технику, то она передаёт эту технику функции BIS_fnc_spawnVehicle, а та уже технику и укомплектует, и вы тут хоть сколько танцуйте с бубном)

ИТОГО: тима отдельно, техника отдельно, после объединить.

 

..., ..., ..., ..., слов нет одни эмоции)))

Тему не закрываю, по мере проб и ошибок буду искать подсказки здесь.

Товарищу "Стальная крыса" - по прежнему респект.


  • 0

#16 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 12 August 2014 - 16:01

Благодарствую на добром слове!


  • 0

#17 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 14 August 2014 - 22:23

Благодарствую на добром слове!

_APC = [getMarkerPos "MrkVeh", 0, "O_APC_Wheeled_02_rcws_F", EAST] call BIS_fnc_spawnVehicle;

 

_APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup;

 

Товарищи, что не так? Что то я не помню но вроде все работало, а сегодня перестало?!


Сообщение отредактировал D_Donskoy: 14 August 2014 - 22:51

  • 0

#18 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 15 August 2014 - 01:06

 

Благодарствую на добром слове!

_APC = [getMarkerPos "MrkVeh", 0, "O_APC_Wheeled_02_rcws_F", EAST] call BIS_fnc_spawnVehicle;

 

_APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup;

 

Товарищи, что не так? Что то я не помню но вроде все работало, а сегодня перестало?!

 

как то совсем уж не конкретно, что  и как перестало работать?


  • 0

#19 OFFLINE   D_Donskoy

D_Donskoy

    Старшина

  • Пользователи
  • 447 сообщений
  • Откуда:Россия

Отправлено 15 August 2014 - 19:33

 

 

Благодарствую на добром слове!

_APC = [getMarkerPos "MrkVeh", 0, "O_APC_Wheeled_02_rcws_F", EAST] call BIS_fnc_spawnVehicle;

 

_APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup;

 

Товарищи, что не так? Что то я не помню но вроде все работало, а сегодня перестало?!

 

как то совсем уж не конкретно, что  и как перестало работать?

 

Торопился!)

_APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup; - вот этот код, что то не спавнит мне группу на маркере.

Ну и в продолжение темы, я в правильном направлении работаю? Я имею ввиду:

1._APC = [getMarkerPos "MrkVeh", 0, "O_APC_Wheeled_02_rcws_F", EAST] call BIS_fnc_spawnVehicle; - спавню виекл.

createvehiclecrew _APC; - спавню крю для виекла.

2._APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup; - спавню тиму.

Да и еще момент - почему то не работает БИСовский форум и ВИКИ временами, это у всех или только у меня что то не то с сетью? (не заходит именно вот сюда -

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

_Commands_Arma_3)  


  • 0

#20 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 15 August 2014 - 22:21

 

 

_APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup; - вот этот код, что то не спавнит мне группу на маркере.

1: вполне вероятно функция не может найти подходящую позицию для спавна в пределах позиции маркера, помоему там была такая тема когда я лазил по функции, значит , как вариант попробовать подвигать сам маркер, что бы дать простора вокруг маркера, ну или с именем маркера может ошиблись?), такое тоже бывает.

2: ошиблись в имени класса группы, и такое тоже бывает

1._APC = [getMarkerPos "MrkVeh", 0, "O_APC_Wheeled_02_rcws_F", EAST] call BIS_fnc_spawnVehicle; - спавню виекл.
createvehiclecrew _APC; - спавню крю для виекла.
2._APCTeam = [getMarkerPos "MrkGrp", EAST, (configFile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OI_recon_EOD")] call BIS_fnc_spawnGroup; - спавню тиму.

На сколько я помню, офигеть правда?), я и помню, ваша затея была такова:

 

Спавните группу

Спавните технику приданную этой группе

Даёте группе вайпойнт, а вайпойнт далеко

Группа садится в технику и едет с ветерком

 

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

Это на сколько я в танке! И не ошибаюсь.

Значит вам сюда

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

Спавните пустую тачку по текущим координатам группы, и присоединяете эту ПУСТУЮ тачку к группе.


  • 1




Яндекс.Метрика