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

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

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

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

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

Ящики со своим лутом, временем респауна и многим другим...

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

Ящик с настраиваемым содержимым и т.п.


Возможности:
1. Настройка возрождаемых предметов для каждого ящика.
2. Генерируемое кол-во ресурсов в ящике.
3. Выбор процентной вероятности возрождения.
4. Добавление своих предметов, а так же групп предметов для возрождения.

5. Выбор места возрождения ящика(ов). Случайно или по заданным координатам.

6. Установка кол-ва обновления предметов в ящике(Один раз, при старте, или постоянно).

7. Задержка перед созданием ящика.

Сам скрипт:

/*
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
В файл init.sqf, добавить переменную:
Ultima_Diag_Level = 0; //    Уровень диагностики для вывода в RPT, от 0 до 3.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Как добавлять предметы в массивы: (см. _aSpawnItems - это массивы предметов, которые вы можете возрождать в ящиках).
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1 - Идентификатор предмета.
2 - Максимальное кол-во возрождаемых предметов. (от 0, до числа которое Вы укажете). Чтобы возрождалось точное кол-во указанных предметов, см. Спавн ящика, п.11
3 - Процент вероятности, что предметы вообще появятся в ящике - от 1 до 100.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Спавн ящика: *Внимательно смотрите на цифры переменных!!!! (см. _Data - Это список ящиков, которые вы создаете на карте).
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
0 - Координата X *см. сноску ниже, для случайных координат.
1 - Координата Y *см. сноску ниже, для случайных координат.
2 - Координата Z *см. сноску ниже, для случайных координат.
3 - Угол под которым будет создан ящик.
4 - Время между обновлением предметов в ящике.
5 - Радиус от центра ящика, - если в пределах данного радиуса находится какой либо игрок, предметы не будут возрождаться. - Обновление предметов в ящике происходит, только если в пределах радиуса никого нет.
6 - Вместо цифры, впишите номер массива предметов.(см. _aSpawnItems).
7 - Внешний вид ящика.
8 - Задержка перед созданием ящика.
9 - Случайно выбирать позицию возрождения ящика(false - установить в указанных координатах. true - установить в случайных координатах).
10 - Возрождать ли предметы в ящике, или создать его один раз.(false - возрождать предметы. true - создать ящик  один раз при старте сервера(после задержки. см. п.9)).
11 - Кол-во предметов в ящике подбирать случайно от 0 до  - стольки, сколько указано, или ровно столько, сколько указано. - true - случайно.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
*/

/*
//	Если существует глобальная переменная Ultima_Loot_Box_Global_Data - то спавнится будут объекты прописанные в ней, а не в _data ниже.
Ultima_Loot_Box_Global_Data = 
	[
		[12968, 3551, 9, 59, 600, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false, true]
		,[13153, 3662, 9, 59, 600, 50, (_aSpawnItems select 1),"TKVehicleBox_EP1", 0, false, false, true]
		,[13120, 3616, 9, 59, 600, 50, (_aSpawnItems select 2),"USVehicleBox", 0, false, false, true]
		,[13099, 3615, 9, 59, 600, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false, true]
		,[13032, 3562, 9, 59, 600, 50, (_aSpawnItems select 2),"USVehicleBox", 0, false, false, true]
		,[12978, 3539, 9, 59, 600, 50, (_aSpawnItems select 1),"RUVehicleBox", 0, false, false, true]
		,[12994, 3547, 9, 59, 600, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false, true]
	];
*/

if (isNil "Ultima_Diag_Level") then
	{Ultima_Diag_Level	=	0;};
Ultima_Map_Center	=	(getMarkerPos "center");
Ultima_Map_Radius	=	(Ultima_Map_Center select 0);
if !(isServer) exitWith {};
if (Ultima_Diag_Level > 0) then
	{diag_log("[#Ultima]: [Ящики с лутом]: Создание ящиков с лутом.");};
private ["_Data","_aSpawnItems"];
_aSpawnItems	=	
	[
		[
			["ItemPole",4,90]
			,["ItemTankTrap",4,80]
			,["ItemGenerator",2,40]
			,["ItemWire",2,30]
			,["ItemTent",1,30]
			,["CinderBlocks",6,50]
			,["MortarBucket",6,40]
			,["ItemMixOil",1,10]
			,["ItemOilBarrel",1,5]
			,["ItemSandbag",5,40]
			,["ItemSandbagLarge",2,20]
			,["ItemSandbagExLarge",1,10]
			,["ItemJerrycanEmpty",3,50]
			,["ItemJerrycan",2,30]
			,["ItemFuelBarrelEmpty",3,20]
			,["ItemFuelBarrel",2,10]
			,["ItemFireBarrel_kit",1,5]
			,["fuel_pump_kit",1,1]
			,["PartWoodLumber",10,50]
			,["PartPlankPack",7,30]
			,["PartWoodPlywood",10,40]
			,["PartPlywoodPack",5,20]
			,["metal_panel_kit",4,10]
			,["ItemComboLock",2,5]
			,["ItemLockbox",1,1]
			,["PartGeneric",10,80]
			,["ItemCopperBar",2,40]
		]
		,[
			["8Rnd_9x18_Makarov",10,90]
			,["8Rnd_9x18_MakarovSD",4,20]
			,["30Rnd_545x39_AK",6,70]
			,["30Rnd_762x39_AK47",4,60]
			,["Makarov_DZ",4,50]
			,["AK74_DZ",3,30]
			,["AKM_DZ",5,40]
			,["PartGeneric",10,80]
			,["ItemCopperBar",2,40]
		]
		,[
			["ItemBandage",8,80]
			,["ItemPainkiller",4,70]
			,["ItemMorphine",2,30]
			,["ItemEpinephrine",6,90]
			,["ItemBloodbag",4,60]
			,["ItemAntibiotic",2,30]
			,["PartGeneric",10,80]
			,["ItemCopperBar",2,40]
		]
	];
//	Если существует Ultima_Loot_Box_Global_Data - то спавн будет оттуда, а эта переменная не играет роли
if !(isNil "Ultima_Loot_Box_Global_Data") then
	{
		_data	=	[]+Ultima_Loot_Box_Global_Data;
	}
else
	{
		_Data = 
			[
				[12968, 3551, 9, 59, 600, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false, true]
				,[13153, 3662, 9, 59, 600, 50, (_aSpawnItems select 1),"TKVehicleBox_EP1", 0, false, false, true]
				,[13120, 3616, 9, 59, 600, 50, (_aSpawnItems select 2),"USVehicleBox", 0, false, false, true]
				,[13099, 3615, 9, 59, 600, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false, true]
				,[13032, 3562, 9, 59, 600, 50, (_aSpawnItems select 2),"USVehicleBox", 0, false, false, true]
				,[12978, 3539, 9, 59, 600, 50, (_aSpawnItems select 1),"RUVehicleBox", 0, false, false, true]
				,[12994, 3547, 9, 59, 600, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false, true]
			];
	};
{
	[_x] spawn
		{
			private ["_random_count","_Data","_aSpawnItems","_TimerSpawn","_SpawnItems","_SpawnDelay","_randomPos","_SpawnOneTime","_Box","_BoxID","_nearPlayers","_Item","_Count","_Percent","_Random","_Model"];
			_Data			=	(_this select 0);
			_Angle			=	(_data select 3);
			_TimerSpawn		=	(_data select 4);
			_Radius			=	(_data select 5);
			_boxID			=	str(round(random 999999));
			_box			=	objNull;
			_SpawnItems		=	true;					
			_aSpawnItems	=	(_data select 6);
			_Model			=	(_data select 7);
			_SpawnDelay		=	(_data select 8);
			_randomPos		=	(_data select 9);
			_SpawnOneTime	=	(_data select 10);
			_random_count	=	(_data select 11);
			_Coords			=	[(_data select 0), (_data select 1), (_data select 2)];
			if (_randomPos) then
				{_Coords	=	[Ultima_Map_Center, 100, Ultima_Map_Radius, 20, 0, 20, 0] call BIS_fnc_findSafePos;};
			sleep _SpawnDelay;
			if (Ultima_Diag_Level > 1) then
				{diag_log(format["[#Ultima]: [Ящики с лутом]: Создание ящика в координатах: %1", _Coords]);};
			_box = createVehicle [_Model, _Coords, [], 0, "CAN_COLLIDE"];
			_box setDir _Angle;
			_box setPos _Coords;
			_box setVariable ["ObjectID", _boxID, true];
			_box setVariable ["ObjectUID", _boxID, true];
			_box setVariable ["permaLoot",true];
			dayz_serverObjectMonitor set [count dayz_serverObjectMonitor, _box];		
			while {true} do
				{
					if (_SpawnItems) then
						{
							clearWeaponCargoGlobal _box;
							clearMagazineCargoGlobal _box;
							clearBackpackCargoGlobal _box;
							{
								_Percent	=	_x select 2;
								_Random		=	random(100);
								if (_Random < _Percent) then
									{
										if (_random_count) then
											{_Count		=	round(random(_x select 1));}
										else
											{_Count		=	(_x select 1);};
										if (_Count > 0) then
											{
												_Item		=	(_x select 0);
												if (getText (configFile >> "CfgMagazines" >> _item >> "displayName")	!=	"") then
													{_box addMagazineCargoGlobal [_Item, _Count];}
												else
													{
														if (getText (configFile >> "CfgWeapons" >> _item >> "displayName")	!=	"") then
															{_box addWeaponCargoGlobal [_Item, _Count];}
														else
															{
																if (getText (configFile >> "CfgVehicles" >> _item >> "displayName")	!=	"") then
																	{_box addBackpackCargoGlobal [_Item, _Count];};
															};
													};
											};
									};
							} forEach _aSpawnItems;
							if (_SpawnOneTime) ExitWith {};
							_SpawnItems	=	false;
							sleep _TimerSpawn;
						};
					if (_SpawnOneTime) ExitWith {};
					while {!_SpawnItems} do
						{
							sleep 10;
							_nearPlayers	=	nearestObjects [_Coords, ["CAManBase"], _Radius];
							if (count(_nearPlayers) <= 0) then
								{_SpawnItems	=	true;};
						};
				};
		};
} forEach _Data;
if (Ultima_Diag_Level > 0) then
	{diag_log("[#Ultima]: [Ящики с лутом]: Создание ящиков с лутом завершено.");};

 

 

Чтобы изменить разброс координат, от центра, и т.п. - смотрите описание данной функции по ссылке:

http://www.flashpoint.ru/threads/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9-%D0%B2-arma-2.48077/#post-1862879

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

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


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





Я это на корабль поместил - на эсминец)

Просто задолбало координаты подгонять, он же весь кривой-косой, и лут рандомный нормально не подцепить, то под палубой то в воздухе висит. Каждую точечку вымерять надоело)))

Поставил несколько разных ящиков и декорации подцепил. Оказалось гораздо проще, чем мучатся с добавлением этих шести кривых кусков корабля в таблицу лута. А зм, на нем один хрен не агрятся и проваливаются)))

А на 1.8.0.3 его возможно использовать?

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


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

Спасибо.

Но какое ему можно найти применение кроме вышеуказанных?

Ведь если туда даже мелочевку положить, то ушлые игроки будут с утра до вечера там пастись.

 

 

З.Ы. а как сделать подобный рабочий ящик но с возрождением предметов только после рестарта?

Находил пару мануалов. но все они не работают в 1.0.4.2.

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


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

Обновил скрипт.

Добавил настройки.

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


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

 

Я это на корабль поместил - на эсминец)

Просто задолбало координаты подгонять, он же весь кривой-косой, и лут рандомный нормально не подцепить, то под палубой то в воздухе висит. Каждую точечку вымерять надоело)))

Поставил несколько разных ящиков и декорации подцепил. Оказалось гораздо проще, чем мучатся с добавлением этих шести кривых кусков корабля в таблицу лута. А зм, на нем один хрен не агрятся и проваливаются)))

А на 1.8.0.3 его возможно использовать?

Думаю, что да.

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


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

Спасибо.

Но какое ему можно найти применение кроме вышеуказанных?

Ведь если туда даже мелочевку положить, то ушлые игроки будут с утра до вечера там пастись.

 

 

З.Ы. а как сделать подобный рабочий ящик но с возрождением предметов только после рестарта?

Находил пару мануалов. но все они не работают в 1.0.4.2.

Обновил скрипт. Добавил настройки.

P.S. - Как вариант - задать время обновления предметов в ящике более долгое - например 30 минут\час\два часа....

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


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

Раскажите пожалуйста куда вписывать скрипт.   

Очень мало понятно что делать со скриптом.  Как его подключить и настроить.  

Как понять что где?  

    это     это    Что за данные?

[12968, 3551, 9, 59, 300, 50, (_aSpawnItems select 0),"USVehicleBox", 0, false, false],

 

 

Что такое  ItemPole

 

Прошу помогите разобраться)

 

Например я хочу ящик в определённом месте со случайным лутом.

Конкретно на базе например.

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


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

Ты вероятно плохо читал, там все написано, - что это за данные.

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


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

Точно!)  

Как я сразу не увидел?

Наверное там молоком написано, грел свечкой монитор! Ни чего нет. 

 

Как думаешь зачем я тогда вопрос задал?

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


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

В твоем посте, 2 вопроса и 1 пожелание.

Ок. Давай по пунктам(пока мне не станет влом):

По данным инфы нет? - "что это за данные"

Описание параметров - есть.

Свечка херовая. Еще раз перечитай.

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


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

Точно!)  

Как я сразу не увидел?

Наверное там молоком написано, грел свечкой монитор! Ни чего нет. 

 

Как думаешь зачем я тогда вопрос задал?

А свечка на воске или парафине? Очень интересует!

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


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

Обновил скрипт, добавил пару настроек, и автоопредиление карты, и ее центра, для случайного разброса.

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


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

А как его подключить?

Через execVM ? или в init скопировать?

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


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

На сервере, так же как ботов подключают.

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


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

Не работает ! (или руки кривые)

 

 

Вот что пишет RPT:

 

21:31:16 "[#Ultima]: [Ящики с лутом]: Создание ящиков с лутом."
21:31:16 "[#Ultima]: [Ящики с лутом]: Карта определена как chernarus."
21:31:16 "[#Ultima]: [Ящики с лутом]: Установлен центр координат для случайного создания: [7839.61,8414.73,0]."
21:31:16 "[#Ultima]: [Ящики с лутом]: Создание ящиков с лутом завершено."
21:31:16 Error in expression [13120, 3616, 9, 59,>
21:31:16 Error position: <_Map_Radius, true],
[13120, 3616, 9, 59,>
21:31:16 Error Undefined variable in expression: _map_radius
21:31:16 File z\addons\dayz_server\custom_buildings\init_crates.sqf, line 45
21:31:16 Error in expression if (this setVectorUp [ 0 , 0 , 1 ];true) then
{
_this = createVehicle ["MA>
21:31:16 Error position: <;true) then
{
_this = createVehicle ["MA>
21:31:16 Error Missing )
21:31:16 File z\addons\dayz_server\custom_buildings\custom_base\bases.sqf, line 2067
21:31:16 "AC_functions version 1.01"
21:31:16 Warning: z\addons\dayz_communityassets\models\compass.p3d:0 Error while trying to generate ST for points: 863, 853, 852
21:31:23 Cannot create non-ai vehicle RHmgswpammobox,
21:31:23 Cannot create non-ai vehicle RHsmgbox,
21:31:25 ca\misc\sphere2.p3d: No geometry and no visual shape
21:31:25 ca\misc\sphere2.p3d: No geometry and no visual shape
21:31:25 ca\misc\sphere2.p3d: No geometry and no visual shape
21:31:25 ca\misc\sphere2.p3d: No geometry and no visual shape
21:31:26 Error in expression _hndl ppEffectEnable true;
_hndl ppEffec>
21:31:26 Error position: <_hndl ppEffectEnable true;
_hndl ppEffec>
21:31:26 Error Undefined variable in expression: _hndl
21:31:26 File mpmissions\DayZ_Epoch_11.Chernarus\scripts\Effekte.sqf, line 2
21:31:26 "HIVE: Starting"
21:31:26 "HIVE: trying to get objects"
21:31:28 "[#Ultima]: [Ящики с лутом]: Создание ящика в координатах: any"
21:31:28 Error in expression <ʐِېРв координатах: %1", _Coords]);};
_box = createVehicle [_Mode>
21:31:28 Error position: <_Coords]);};
_box = createVehicle [_Mode>
21:31:28 Error Undefined variable in expression: _coords
21:31:28 File z\addons\dayz_server\custom_buildings\init_crates.sqf, line 77
21:31:28 Error in expression _box = createVehicle [_Model, _Coords, [], 0, "CAN_COLLIDE"];
_box set>
21:31:28 Error position: <_Coords, [], 0, "CAN_COLLIDE"];
_box set>
21:31:28 Error Undefined variable in expression: _coords
21:31:28 File z\addons\dayz_server\custom_buildings\init_crates.sqf, line 78
21:31:28 "HIVE: found 0 objects"
21:31:28 "HIVE: Commence Object Streaming..."
21:31:28 "HIVE: got 0 Epoch Objects and 0 Vehicles"
21:31:29 "HIVE: Vehicle Spawn limit reached!"
21:31:29 "HIVE: Spawning # of Debris: 0"
21:31:29 "HIVE: Spawning # of Ammo Boxes: 3"
21:31:29 "HIVE: Spawning # of Veins: 50"
21:31:29 "Total Number of spawn locations 5"
21:31:29 String STR_FAL_Street_Sign not found
21:31:30 "infiSTAR.de - Player-Log: Loki(76561198146976543) - 0h 00min | ******ADMIN******"
21:31:32 Error in expression <1964];
};


 

 прошу помощи
Изменено пользователем smirnov-ivan1983 (история изменений)

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


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

ты массив покажи с ящиками, в скрипте, кто его знает, чего ты там понаписал.

 

P.S. Скрипт слегка обновил.

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


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

ты массив покажи с ящиками, в скрипте, кто его знает, чего ты там понаписал.

 

P.S. Скрипт слегка обновил.

ничего не обновлял как есть поставил!

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


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

ничего не обновлял как есть поставил!

Я скрипт обновил на 1 странице. При чем тут ты?)

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


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

Как обывателю, вообще НИЧЕГО не понятно. Что это за описание!? Набор символов. Не уже ли сложно описать, что и куда вставлять? 

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


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

Как обывателю, вообще НИЧЕГО не понятно. Что это за описание!? Набор символов. Не уже ли сложно описать, что и куда вставлять? 

если ты это понять не можешь то какой смысл объяснять тебе

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


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

если ты это понять не можешь то какой смысл объяснять тебе

Как бы 90% скриптов на форуме написано достаточно, четко и понятно. Что куда вставлять, где и что качать. А тут просто текст, ни куда его вставлять ничего!

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


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

Как бы 90% скриптов на форуме написано достаточно, четко и понятно. Что куда вставлять, где и что качать. А тут просто текст, ни куда его вставлять ничего!

создаешь файл скф текст туда файл в серверную часть и подключай вот и все

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


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

Скрипт обновлен.

Теперь нет необходимости писать какая ячейка у предмета. - Автоматически определяет.

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


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

Скрипт обновлен.

Теперь нет необходимости писать какая ячейка у предмета. - Автоматически определяет.

как раз этого и не хватало , а то пишет ошибки в РПТ . +

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

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


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

Доброе утро, недавно посадили на админку, особо еще не разбрался в модинге, такая проблема на сервере есть 2 миссии которые находятся в течении всего времени  на сервере FNG и на скалистом( ящики) так вот ящики спаунятся в этих местах по два(друг в друге). как я понял отвечает за это файлик init (в MPMMissins) тоесть где то ссылается на спаун дважды в этоу зону, помогите разобраться

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

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

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

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