Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Нужна помощь?

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

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • Не хотите БАН?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок
  • Загляните на торговую площадку

    Там вы можете купить
    Всё что касается игровых серверов
123new

Размещение своих объектов на карте

Recommended Posts

Много вопросов на данную тему наблюдаю от новичков, попробую прояснить немного сей вопрос.

 

Предположим. что вы уже знаете на каких координатах вам надо спавнить определенное здание или объект\животное\бота, с каким углом поворота. И так. эта тема для вас.

 

Если вы с расставили их с модифицированной версии Offline (Offline by Arksenor это называется), то вы получили и нашли код вида:

GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13251.875000 0.0 3748.525879").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13254.599609 0.0 3722.703613").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13257.344727 0.0 3696.718750").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13260.040039 0.0 3670.984131").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13262.756836 0.0 3645.180176").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13265.441406 0.0 3619.531982").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13268.124023 0.0 3593.995361").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13270.844727 0.0 3568.186523").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13273.514648 0.0 3542.561279").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13276.195313 0.0 3517.048828").SetOrientation("-96.000000 0.000000 0.000000");
GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13278.399414 0.0 3496.097900").SetOrientation("-96.000000 0.000000 0.000000");

Здесь (по примеру первой строки) 1 значение в скобках - id постройки/объекта, 2 значение - координаты в формате X Y Z, разделенные пробелом, 3 - значение поворота примерно в том же формате.

Как это делать в Offline - статья от автора Offine:
https://github.com/Arkensor/DayZCommunityOfflineMode/wiki/Add-custom-objects-to-your-server-or-mission

 

И так, инструкция:

1. Добавляем в начало init.c файла в вашей mpmissions следующий код:

#include "$CurrentDir:mpmissions\dayzOffline.chernarusplus\spawn_buildings.c"

2. Создаем в папке вашей активной mpmissions файлик spawn_buildings.c и заполняем его следующей информацией.

void SpawnObject( string type, vector position, vector orientation )
{
	private string NameBlockLog = "[CreateObject] ";
	private string InfoLog = "";
	if(type != "")
	{
		auto obj = GetGame().CreateObject( type, "0 0 0" );
		if(obj)
		{
			if ((position[0] != 0) && (position[1] != 0) && (position[2] != 0))
			{
				obj.SetPosition( position );
				obj.SetOrientation( orientation );
				obj.Update();
				if (obj.CanAffectPathgraph())
				{
					obj.SetAffectPathgraph(true, false);
					GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(GetGame().UpdatePathgraphRegionByObject, 100, false, obj);
				}
				InfoLog = "[Type: '" + obj.GetType() + "' Position: '" + obj.GetPosition().ToString() + "' Orientation: '" + obj.GetOrientation().ToString() + "']";
				Write_Log(NameBlockLog + " Object has been created successfully! Info " + InfoLog);
			} else
			{
				InfoLog = "[Type: '" + type + "' Position: '" + position + "' Orientation: '" + orientation + "']";
				Write_Log(NameBlockLog + " Object can't be created! Incorrect writed position. Info " + InfoLog);
			}
		} else
		{
			InfoLog = "[Type: '" + type + "' Position: '" + position + "' Orientation: '" + orientation + "']";
			Write_Log(NameBlockLog + " Object can't be created! Info " + InfoLog);
		}
	} else
	{
		InfoLog = "[Type: '" + type + "' Position: '" + position + "' Orientation: '" + orientation + "']";
		Write_Log(NameBlockLog + " Object can't be created! Incorrect writed type. Info " + InfoLog);
	}
}
void Write_Log(string message) 
{
	Print(String(message));
}

3. Открываем созданный нами файл,  и в конце файла дописываем следующее:

void SpawnAirfeeldBuildings()
{
	SpawnObject( "Land_CementWorks_ExpeditionB", "13251.875000 0.0 3748.525879", "-96.000000 0.000000 0.000000");
	SpawnObject( "Land_CementWorks_ExpeditionB", "13254.599609 0.0 3722.703613", "-96.000000 0.000000 0.000000");
	SpawnObject( "Land_CementWorks_ExpeditionB", "13257.344727 0.0 3696.718750", "-96.000000 0.000000 0.000000");
}
void SpawnKrasnoBuildings()
{
	SpawnObject( "Land_CementWorks_ExpeditionB", "13251.875000 0.0 3748.525879", "-96.000000 0.000000 0.000000");
	SpawnObject( "Land_CementWorks_ExpeditionB", "13254.599609 0.0 3722.703613", "-96.000000 0.000000 0.000000");
	SpawnObject( "Land_CementWorks_ExpeditionB", "13257.344727 0.0 3696.718750", "-96.000000 0.000000 0.000000");
}

Где после void - название функции идет, а между открытыми скобками вызов спавна самих зданий на указанных координатах.
На примере 1 строки:
Land_CementWorks_ExpeditionB - id постройки (type)
13251.875000 0.0 3748.525879 - координаты в формате X Y Z
-96.000000 0.000000 0.000000 - значение поворота в формате X Y Z
Внимание: id постройки и координаты в примере указаны не верные и требуют подключения дополнительной модификации для корректной работы!!! Координаты не соответствуют названию функции!!!
4. открываем в MpMissions в папке с вашей активной миссией init.c и перед ЗАКРЫВАЮЩЕЙ скобкой '}' дописываем нужную нам функцию (это будет активация спавна на карте):

SpawnAirfeeldBuildings();

5. Готово, Запускайте сервер, и в scripts.log вы увидите процедуру спавна ваших зданий и увидите, спавнятся ли они на карте или нет.

Можно написать конечно и более готовую, универсальную систему спавна на карте со считыванием конфигурации из файла, но я считаю это лишним.

 

Как заполнить добавленные здания лутом на карте:

вариант 1:

https://github.com/Arkensor/DayZCommunityOfflineMode/wiki/Enable-loot-for-custom-placed-objects

вариант 2: вручную заполнить xml-файл  mapgrouppos.xml в mpmssions данными о местоположении зданий, где rpy - значение поворота здания в формате Z Y X

 

С помощью данной статьи вы можете разместить любой элемент игры(постройку, животное, зомби, бота), доступный к спавну через любую модификацию-админ. панель. Очень полезный мод в этом смысле BuilderItems, с его помощью можно творить поистину интересные локации!

Edited by 123new (see edit history)

Share this post


Link to post
Share on other sites



А сам пробовал первым вариантом заполнить лутом постройки?

Share this post


Link to post
Share on other sites

DimitriPokki  

Перевод возможно кривоватый. (я читал его но не понял все ровно) :wacko:

1.Открываем инициализации.c-файл и скопируйте все, что находится в файле, в ваш init.C файл. --------- тут не понятно мне куда именно в инит вставлять!?
2.Загрузить обновленный дистрибутив.файл с вашего сервера и перезапустить сервер. -------- и этот пункт не совсем понятен мне. :wacko:
3. Теперь у вас есть Тихиизалив военных в вашем сервере.

это мой инит

#include "$CurrentDir:mpmissions\dayzOffline.chernarusplus\CustomSpawnPlayerConfig\Script.c"
#include "$CurrentDir:mpmissions\dayzOffline.chernarusplus\CustomSpawnPlayerConfig\Sets.c"
ref CustomSpawnPlayerConfig  My_Custom_Spawn_Parameters = new CustomSpawnPlayerConfig();
ref StartSetsPlayersConfig StartSetsPlayers = new StartSetsPlayersConfig();

void main()
{
	//INIT WEATHER BEFORE ECONOMY INIT------------------------
	Weather weather = g_Game.GetWeather();

	weather.MissionWeather(false);    // false = use weather controller from Weather.c

	weather.GetOvercast().Set( Math.RandomFloatInclusive(0.4, 0.6), 1, 0);
	weather.GetRain().Set( 0, 0, 1);
	weather.GetFog().Set( Math.RandomFloatInclusive(0.05, 0.1), 1, 0);

	//INIT ECONOMY--------------------------------------
	Hive ce = CreateHive();
	if ( ce )
		ce.InitOffline();

	//DATE RESET AFTER ECONOMY INIT-------------------------
	int year, month, day, hour, minute;
	int reset_month = 9, reset_day = 20;
	GetGame().GetWorld().GetDate(year, month, day, hour, minute);

	if ((month == reset_month) && (day < reset_day))
	{
		GetGame().GetWorld().SetDate(year, reset_month, reset_day, hour, minute);
	}
	else
	{
		if ((month == reset_month + 1) && (day > reset_day))
		{
			GetGame().GetWorld().SetDate(year, reset_month, reset_day, hour, minute);
		}
		else
		{
			if ((month < reset_month) || (month > reset_month + 1))
			{
				GetGame().GetWorld().SetDate(year, reset_month, reset_day, hour, minute);
			}
		}
	}
	
	GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(My_Custom_Spawn_Parameters.Read_Update_Config, 120000, true); // Обновление настроек скрипта кастомных спавнов, 1 минута = 60000
}

class CustomMission: MissionServer
{
	void SetRandomHealth(EntityAI itemEnt)
	{
		if ( itemEnt )
		{
			int rndHlt = Math.RandomInt(55,100);
			itemEnt.SetHealth("","",rndHlt);
		}
	}

	override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName)
	{
		pos = My_Custom_Spawn_Parameters.Load_And_Check_Spawnpoints(identity, pos);
        characterName = My_Custom_Spawn_Parameters.Load_And_Check_SpawnSkin_Player(identity, characterName);
		Entity playerEnt;
		playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player
		Class.CastTo(m_player, playerEnt);

		GetGame().SelectPlayer(identity, m_player);

		return m_player;
	}

	override void StartingEquipSetup(PlayerBase player, bool clothesChosen)
	{
		EntityAI itemTop;
		EntityAI itemEnt;
		ItemBase itemBs;
		float rand;

		itemTop = player.FindAttachmentBySlotName("Body");

		if ( itemTop )
		{
			itemEnt = itemTop.GetInventory().CreateInInventory("Rag");
			if ( Class.CastTo(itemBs, itemEnt ) )
				itemBs.SetQuantity(4);

			SetRandomHealth(itemEnt);

			string chemlightArray[] = { "Chemlight_White", "Chemlight_Yellow", "Chemlight_Green", "Chemlight_Red" };
			int rndIndex = Math.RandomInt(0, 4);
			itemEnt = itemTop.GetInventory().CreateInInventory(chemlightArray[rndIndex]);
			SetRandomHealth(itemEnt);

			rand = Math.RandomFloatInclusive(0.0, 1.0);
			if ( rand < 0.35 )
				itemEnt = player.GetInventory().CreateInInventory("Apple");
			else if ( rand > 0.65 )
				itemEnt = player.GetInventory().CreateInInventory("Pear");
			else
				itemEnt = player.GetInventory().CreateInInventory("Plum");

			SetRandomHealth(itemEnt);
		}
		My_Custom_Spawn_Parameters.Load_And_Check_StartLoadout(player);
	}
};

Mission CreateCustomMission(string path)
{
	return new CustomMission();
}

а это я так понимаю то что надо вставить в него. из скаченного со стима мода. (но куда?) что бы корректно сработало.
 

//Spawn helper function
void SpawnObject(string type, vector position, vector orientation)
{
	auto obj = GetGame().CreateObject(type, position);
	obj.SetPosition(position);
	obj.SetOrientation(orientation);
	obj.SetOrientation(obj.GetOrientation()); //Collision fix
	obj.Update();
	obj.SetAffectPathgraph(true, false);
	if (obj.CanAffectPathgraph()) GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(GetGame().UpdatePathgraphRegionByObject, 100, false, obj);
}

//Your custom spawned objects
SpawnObject("bldr_rds_runwayold_40_main", "767.054993 6.350000 1881.579956", "54.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "790.599976 6.000000 1849.329956", "54.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "734.690002 6.048950 1858.040039", "54.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "758.190979 6.000000 1825.859985", "54.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "725.831970 6.000000 1802.300049", "54.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "693.593994 6.000000 1778.780029", "54.000000 0.000000 0.000000");
SpawnObject("Land_Airfield_Hangar_Green", "688.487976 12.554700 1777.819946", "-126.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_turnoutr", "744.119019 6.064160 1811.359985", "-124.000008 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "731.168030 5.795220 1805.920044", "-105.999992 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "720.057983 5.794590 1802.579956", "73.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "712.565002 5.745220 1799.640015", "66.000000 0.000000 0.000000");
SpawnObject("bldr_rail_track_up_40", "694.559998 5.762140 1788.869995", "-125.000000 -1.000000 0.000000");
SpawnObject("Land_Train_742_Blue", "711.684021 8.906030 1799.180054", "66.000000 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "685.681030 8.322730 1782.839966", "56.000000 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "695.695007 8.305590 1789.589966", "56.000000 0.000000 0.000000");
SpawnObject("Land_Train_742_Red", "705.492004 8.784320 1783.319946", "55.000000 0.000000 0.000000");
SpawnObject("Land_Train_742_Red", "694.755981 8.834320 1775.939941", "55.000000 0.000000 0.000000");
SpawnObject("bldr_rail_linebreak_concrete", "677.551025 7.096930 1777.140015", "54.000000 0.000000 0.000000");
SpawnObject("bldr_rail_linebreak_concrete", "670.843994 7.296940 1759.930054", "56.000000 0.000000 0.000000");
SpawnObject("bldr_rail_crossing_barrier", "743.234009 8.644650 1814.010010", "-104.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Guardhouse2", "809.521973 7.519450 1850.729980", "55.000000 0.000000 0.000000");
SpawnObject("Land_Train_742_Blue", "815.307983 8.821900 1859.540039", "51.000000 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "825.044006 8.274500 1867.479980", "51.000000 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "834.315979 8.298380 1874.959961", "51.000000 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "843.682983 8.364950 1882.589966", "49.000000 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "852.463013 8.393180 1890.680054", "47.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Guardhouse2", "768.057983 7.879960 1916.609985", "-112.999992 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_turnoutl", "768.200989 5.998260 1823.609985", "-124.000008 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r25_10", "752.606995 5.543349 1805.729980", "34.000000 0.000000 0.000000");
SpawnObject("bldr_rail_track_up_25", "739.950012 5.253390 1784.459961", "28.999998 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "728.312012 5.114040 1765.839966", "-143.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "715.538025 5.214590 1751.119995", "-135.000015 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "707.596985 5.620290 1744.510010", "-126.999992 2.000000 0.000000");
SpawnObject("bldr_rail_tracke_40", "684.068970 5.928850 1728.660034", "57.000004 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "659.156006 5.903030 1712.810059", "-119.999992 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "641.539978 5.931990 1704.189941", "-112.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "623.015991 5.920900 1698.160034", "-104.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r30_20", "604.085999 5.953420 1694.849976", "-96.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_turnoutr", "566.437012 6.164160 1687.540039", "56.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_r25_10", "588.158997 5.891000 1693.479980", "85.000008 0.000000 0.000000");
SpawnObject("bldr_sign_train", "584.656006 7.224120 1704.930054", "56.000000 0.000000 0.000000");
SpawnObject("bldr_sign_train", "587.528992 7.205710 1700.859985", "57.000004 0.000000 0.000000");
SpawnObject("bldr_mine_rail_end", "604.541016 6.932000 1715.349976", "-125.000000 0.000000 0.000000");
SpawnObject("bldr_mine_rail_end", "611.645996 7.132000 1720.189941", "-125.000000 0.000000 0.000000");
SpawnObject("bldr_mine_rail_end", "670.674011 7.232000 1759.880005", "-125.000000 0.000000 0.000000");
SpawnObject("Land_Construction_Crane", "719.164001 23.936701 1788.939941", "-128.000015 0.000000 0.000000");
SpawnObject("Land_Train_742_Red", "713.802002 24.790001 1793.500000", "6.000000 -1.000000 10.000000");
SpawnObject("bldr_wall_cncsmall_8", "806.431030 6.857280 1861.339966", "54.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "801.762024 6.845610 1867.729980", "54.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "797.116028 6.823480 1874.079956", "54.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "793.017029 6.851120 1879.750000", "54.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_4", "816.825012 6.824250 1845.989990", "55.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "807.989014 6.835150 1837.430054", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "802.031982 6.843960 1833.130005", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "795.763000 6.850000 1828.599976", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "789.872009 6.847110 1824.319946", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "783.614014 6.850000 1819.750000", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "778.547668 6.850000 1816.120972", "-35.000004 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "770.808044 6.839830 1810.459961", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "764.770020 6.818440 1806.069946", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "758.607971 6.830850 1801.599976", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "752.291016 6.800010 1796.979980", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "735.106995 6.911570 1784.599976", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "728.922974 6.887170 1780.079956", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "722.711975 6.874940 1775.540039", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "716.700989 6.855050 1771.160034", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "710.526978 6.897010 1766.650024", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "704.224976 6.921030 1761.969971", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "687.064026 6.909580 1754.130005", "54.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "698.142029 6.924200 1757.540039", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "692.382996 6.925090 1753.359985", "-36.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "735.950012 9.679600 1787.650024", "143.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "754.513977 9.850110 1801.339966", "142.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "805.692993 9.920920 1858.619995", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "815.090027 10.180100 1844.140015", "52.999996 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "789.473999 6.004800 1875.380005", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "794.570007 6.035520 1868.079956", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "800.043030 6.000000 1860.339966", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "752.271973 6.124570 1859.089966", "145.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "784.538025 6.046640 1849.270020", "-125.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "779.078979 6.087490 1856.839966", "-125.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "774.692017 6.000000 1842.260010", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big1_1", "769.044983 6.071420 1849.780029", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Airfield_HQ", "719.934021 11.895800 1832.719971", "54.000000 0.000000 0.000000");
SpawnObject("Land_Mil_GuardTower", "742.125000 14.270900 1945.420044", "-31.000002 0.000000 0.000000");
SpawnObject("Land_Mil_GuardTower", "680.495972 14.007200 1902.209961", "-36.000000 0.000000 0.000000");
SpawnObject("Wreck_UH1Y", "864.408020 4.256910 1966.540039", "0.000000 0.000000 0.000000");
SpawnObject("Wreck_UH1Y", "912.077026 3.946280 2004.949951", "0.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "772.038025 6.743530 1909.449951", "-20.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "772.523987 6.745080 1908.229980", "-20.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "769.783020 6.759220 1907.089966", "-16.000002 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "771.085999 6.737930 1920.189941", "68.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "772.401001 6.739120 1920.859985", "68.000000 0.000000 0.000000");
SpawnObject("bldr_rail_crossing_barrier", "749.479004 8.817980 1794.089966", "0.000000 0.000000 0.000000");
SpawnObject("bldr_rail_crossing_barrier", "739.375000 8.912100 1788.020020", "-14.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_roof_east", "764.862000 8.394130 1893.829956", "-31.000002 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_roof_east", "751.419006 8.816250 1884.520020", "52.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_roof_east", "741.432007 8.202350 1875.469971", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_roof_east", "752.036011 8.194840 1859.680054", "52.999996 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_roof_east", "759.405029 8.225000 1864.930054", "52.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_roof_east", "775.375000 9.139440 1886.020020", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "769.559021 8.641500 1849.229980", "55.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "774.737000 8.526540 1842.140015", "50.000004 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "779.489014 8.442880 1857.219971", "52.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "785.375000 8.488340 1850.290039", "52.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "799.346985 8.610430 1860.459961", "52.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "794.158997 8.609010 1867.479980", "52.000000 0.000000 0.000000");
SpawnObject("bldr_mil_camonet_tent2", "788.565979 8.609020 1874.489990", "52.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "714.205994 6.718580 1865.520020", "-40.999996 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "710.284973 6.699730 1862.250000", "-40.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "709.198975 6.722650 1863.500000", "-40.999996 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "713.260010 6.736750 1867.050049", "-40.999996 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "718.427002 6.761590 1869.199951", "-40.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "717.236023 6.757260 1870.439941", "-40.000000 0.000000 0.000000");
SpawnObject("Land_Misc_Well_Pump_Yellow", "731.716980 6.862400 1831.199951", "0.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Guardhouse2", "703.859009 7.528270 1859.489990", "52.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "788.006104 10.020921 1825.467041", "143.000046 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "814.344299 6.819731 1842.057983", "-36.000004 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "699.293091 7.237614 1805.834595", "-50.000004 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "705.130554 7.235358 1811.314941", "-36.000004 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "710.900696 7.288017 1815.494751", "-36.000004 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_8", "715.027283 7.297509 1818.507324", "-36.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "787.869080 5.134533 1797.905396", "54.999989 0.000000 0.000000");
SpawnObject("Land_Mil_Barracks6", "797.671997 5.906867 1783.517822", "145.000000 0.000000 0.000000");
SpawnObject("bldr_pipe_small_stairs", "775.057922 6.661513 1813.144897", "53.999985 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_4", "777.138794 6.803982 1814.719360", "-35.000004 0.000000 0.000000");
SpawnObject("bldr_wall_cncsmall_4", "772.672913 6.855567 1811.298218", "-35.000004 0.000000 0.000000");
SpawnObject("Land_Mil_Barracks2", "791.922302 6.669107 1808.570190", "146.000015 0.000000 0.000000");
SpawnObject("Land_Mil_Barracks3", "773.695618 7.408454 1795.143921", "-124.999939 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "797.136047 6.165140 1819.310791", "64.000008 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "802.921143 6.207627 1811.139526", "64.000015 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "810.861572 6.217404 1800.057617", "64.000008 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "765.076782 6.156118 1795.615723", "-114.999969 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "774.323975 6.215481 1782.275269", "66.000015 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "832.054382 7.102876 1804.492432", "54.999992 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "811.182922 6.171800 1814.121216", "-26.000021 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "823.493103 6.165140 1822.967041", "-26.000011 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "841.835144 6.069606 1825.385986", "65.000015 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "830.094543 6.170655 1827.599121", "-26.000010 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "850.822266 6.120034 1812.314941", "65.000015 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "834.646240 6.160108 1781.415283", "-25.000013 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "847.409790 6.103891 1790.268311", "-25.000013 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "855.025024 6.132470 1806.285889", "65.000000 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "853.073059 6.120028 1794.205322", "-24.000021 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "822.884521 6.156492 1783.381104", "65.000015 0.000000 0.000000");
SpawnObject("bldr_wall_gate_kolchoz", "816.580383 8.836583 1791.468018", "53.999996 0.000000 0.000000");
SpawnObject("Land_Mil_Fortified_Nest_Watchtower", "851.955078 8.684627 1799.356689", "-124.999939 0.000000 0.000000");
SpawnObject("Land_Mil_Fortified_Nest_Watchtower", "829.343994 8.204535 1783.801636", "53.999996 0.000000 0.000000");
SpawnObject("Land_Mil_Fortified_Nest_Watchtower", "834.397522 8.921746 1825.711914", "52.999996 0.000000 0.000000");
SpawnObject("Land_Mil_Fortified_Nest_Watchtower", "810.750061 8.827445 1809.433838", "52.999996 0.000000 0.000000");
SpawnObject("Land_Mil_Tent_Big3", "830.383850 8.271435 1804.236450", "-35.000004 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "820.801453 7.548453 1794.233765", "56.999989 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "720.428284 6.893614 1900.166992", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "728.777466 6.898913 1906.823364", "-37.000004 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "738.917419 7.083680 1914.388794", "-33.000004 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "743.056213 6.913208 1916.555298", "-17.000006 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "713.838867 6.897511 1891.898926", "-43.000000 0.000000 0.000000");
SpawnObject("bldr_misc_barbedwire", "709.892883 6.885076 1888.205811", "-44.000000 0.000000 0.000000");
SpawnObject("bldr_rds_runwayold_40_main", "770.996094 5.683239 1752.268677", "54.999989 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "811.115723 6.125258 1785.010010", "-26.000010 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "799.088806 6.109629 1776.355713", "-26.000011 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "792.671448 6.040265 1771.732910", "-26.000008 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "788.007019 6.039451 1763.227783", "66.000015 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "794.025024 6.019375 1754.183594", "66.000000 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "791.700623 5.987998 1742.366577", "-25.000011 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "777.795715 6.022290 1732.752319", "-25.000013 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "773.204834 5.994217 1729.557007", "-25.000013 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "761.391785 5.927121 1731.518555", "65.000000 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "751.791809 5.888366 1745.300049", "65.000015 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "768.872986 6.170704 1775.304199", "-25.000013 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "748.359558 5.883465 1750.188721", "65.000000 0.000000 0.000000");
SpawnObject("bldr_rail_polett2", "762.313354 12.233829 1821.435303", "54.999992 0.000000 0.000000");
SpawnObject("bldr_workbench", "666.112854 6.680724 1768.853516", "-36.000004 0.000000 0.000000");
SpawnObject("bldr_rail_track_lb1_re", "743.451538 5.742319 1771.158569", "0.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_turnoutl", "744.788574 5.608080 1790.283325", "-152.000031 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_25", "750.892883 5.221720 1759.829834", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_rail_tracke_25", "762.770508 5.243848 1742.763550", "-35.000004 0.000000 0.000000");
SpawnObject("bldr_rail_signals", "738.589905 8.964175 1775.103149", "27.000010 0.000000 0.000000");
SpawnObject("bldr_rail_linebreak_concrete", "768.833008 6.704517 1733.944702", "-36.000004 0.000000 0.000000");
SpawnObject("bldr_hbarrier_round", "739.436340 5.707395 1775.284424", "91.000015 0.000000 0.000000");
SpawnObject("bldr_hbarrier_round", "744.118774 5.418020 1776.649048", "82.999992 0.000000 0.000000");
SpawnObject("bldr_hbarrier_round", "740.789551 5.685384 1770.674438", "67.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_round", "746.132874 5.454712 1771.521851", "66.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "743.702698 5.674334 1766.152588", "54.999992 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "746.859497 5.675222 1761.637573", "53.999996 0.000000 0.000000");
SpawnObject("bldr_hbarrier_6m", "748.831543 5.555862 1767.406860", "58.999989 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "771.145630 3.517828 1731.343384", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "770.268860 5.162187 1732.118652", "-32.000004 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "764.811584 3.835356 1731.064941", "56.999989 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "760.353699 3.837506 1737.255493", "54.999992 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "755.647156 3.887280 1743.565186", "56.999989 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "771.827759 4.279496 1736.620972", "58.999989 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "767.645752 4.167671 1742.602417", "54.999989 0.000000 0.000000");
SpawnObject("bldr_hbarrier_big", "763.192810 4.426958 1749.128052", "54.999992 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "763.011658 7.572906 1742.378174", "-35.000004 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "756.654114 7.593858 1751.412231", "-35.000004 0.000000 0.000000");
SpawnObject("Land_Train_Wagon_Box", "750.245605 7.565978 1760.722778", "-33.000004 0.000000 0.000000");
SpawnObject("Land_Train_742_Red", "741.443359 7.811353 1780.576416", "0.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "795.921326 8.563419 1748.341064", "145.000031 0.000000 0.000000");
SpawnObject("Land_Mil_Tower_Small", "752.949097 8.853463 1748.019531", "-126.999931 0.000000 0.000000");
SpawnObject("bldr_rail_platform_start", "752.646851 5.874147 1761.509033", "145.000000 0.000000 0.000000");
SpawnObject("bldr_rail_platform_segment", "755.910217 5.906864 1756.815063", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_rail_platform_segment", "758.948730 5.908932 1752.351318", "145.000015 0.000000 0.000000");
SpawnObject("bldr_rail_platform_segment", "761.917969 5.926222 1747.978882", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_rail_platform_segment", "764.911072 5.949416 1743.546875", "-34.000000 0.000000 0.000000");
SpawnObject("bldr_rail_platform_start", "767.456543 5.964572 1739.936279", "-34.000000 0.000000 0.000000");
SpawnObject("Land_Container_1Mo", "766.997986 7.122918 1767.677124", "-34.000000 0.000000 0.000000");
SpawnObject("Land_Container_1Mo", "769.364990 7.015676 1769.410889", "-34.000000 0.000000 0.000000");
SpawnObject("Land_Container_1Mo", "781.911438 6.559171 1762.676514", "55.999992 0.000000 0.000000");
SpawnObject("Land_Container_1Mo", "783.894226 6.552423 1759.769043", "55.999992 0.000000 0.000000");
SpawnObject("Land_Container_1Mo", "785.940186 6.517925 1756.723022", "55.999992 0.000000 0.000000");
SpawnObject("Land_Garage_Row_Small", "782.515381 6.760662 1743.915527", "-35.000004 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "789.543396 4.703743 1792.764282", "-35.000004 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "727.792480 5.761245 1815.718262", "-3.000004 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "732.774658 5.761245 1816.018066", "-3.000005 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "740.556396 5.801356 1838.926514", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "730.707336 5.714703 1845.095825", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "737.257568 5.635349 1846.357422", "-3.000008 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "717.144165 5.661244 1784.362061", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "758.877258 5.591779 1761.726440", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "757.996094 5.403170 1766.517822", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "825.368713 6.778255 1801.923706", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "837.306580 6.777976 1808.878662", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "717.092957 5.688422 1807.490112", "0.000000 0.000000 0.000000");
SpawnObject("bldr_Misc_Sandbox", "711.724854 5.743590 1808.758911", "0.000000 0.000000 0.000000");
SpawnObject("Land_Mil_Guardhouse2", "732.905823 7.496144 1766.382080", "36.000004 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "743.908325 5.877855 1756.571411", "65.000000 0.000000 0.000000");
SpawnObject("bldr_Prison_Wall_Small", "719.118591 6.995864 1772.965332", "26.000011 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "784.851013 5.080207 1754.774292", "54.999992 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "788.205872 5.066763 1757.012451", "54.999992 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "783.784058 5.107860 1756.428711", "54.999992 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "782.838806 5.117366 1757.922607", "54.999992 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "781.791260 5.098452 1759.461548", "54.999992 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "787.066711 5.094270 1758.630005", "54.999992 0.000000 0.000000");
SpawnObject("bldr_roadblock_cncblock", "786.191528 5.155619 1760.089355", "54.999992 0.000000 0.000000");
SpawnObject("bldr_tools_racking_dz", "668.191101 6.680724 1765.220215", "53.999996 0.000000 0.000000");


И самое интересное это то что там еще есть Addons куда его девать подключать как мод!? или кидать в аддоны сервера!?

Edited by MONK (see edit history)

Share this post


Link to post
Share on other sites

MONK Addons там можешь выкинуть, там файл называется соответствующе. переведи название того файла и поймешь, что он нафиг не нужен.

Share this post


Link to post
Share on other sites
10 часов назад, paranoyk сказал:

:biggrin:....Следующий вопрос " а почему у меня нет половины построек?"

не понял, вы о чем, коллега?

Share this post


Link to post
Share on other sites

123new В описании мода, афффффтар (этой свалки,по другому я назвать не могу), не указал взаимосвязь с другим модом. Если его не поставить-не будет половины объектов. Судя по всему у MONK  нужный мод стоит. Значит вопроса не будет.

(если честно перефразируя одного персонажа из к\ф "Жмурки"-"А вы всё в инит всё вставляете?".....ещё раз спасибо за науку "как не забивать инит всякой хренью")

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

123new Воистину....У "аффтора" ещё Скалистый есть. Сравнил....у меня Алтарь и то проще и не забивает сервак мусором.

Share this post


Link to post
Share on other sites

привет а кто знает как исправить такую фигню, после установки зданий зомбари проникают в них будто не замечают стен полов?

Share this post


Link to post
Share on other sites

А можно более подробный пример, например файл приложить (сделал все как тут, сервер не запускается с ошибкой)

Share this post


Link to post
Share on other sites

Ответ нашел, надо прописать так в файл инит

Скрытый текст


void SpawnObject( string type, vector position, vector orientation )
{
    auto obj = GetGame().CreateObject( type, position );
    obj.SetPosition( position );
    obj.SetOrientation( orientation );
    obj.SetOrientation( obj.GetOrientation() ); //Collision fix
    obj.Update();
    obj.SetAffectPathgraph( true, false );
    if( obj.CanAffectPathgraph() ) GetGame().GetCallQueue( CALL_CATEGORY_SYSTEM ).CallLater( GetGame().UpdatePathgraphRegionByObject, 100, false, obj );    
}

void main()
{
SpawnObject( Ваши постройки);

.......

 

    //INIT WEATHER BEFORE ECONOMY INIT------------------------
    Weather weather = g_Game.GetWeather();

 

Edited by Leshrak (see edit history)

Share this post


Link to post
Share on other sites

Можете подсказать ? как сделать что добавленные деревья можно было рубить, а то они тупо как статичная текстура работает=(

Share this post


Link to post
Share on other sites
11 минут назад, SkaZzz сказал:

Можете подсказать ? как сделать что добавленные деревья можно было рубить, а то они тупо как статичная текстура работает=(

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

Share this post


Link to post
Share on other sites

Прекращаем флуд не по теме, один уже залетел

Share this post


Link to post
Share on other sites
53 минуты назад, 123new сказал:

Прекращаем флуд не по теме, один уже залетел

чет я не понял =) за что? что я не по теме спросил?  "Размещение своих объектов на карте"

Share this post


Link to post
Share on other sites
9 минут назад, SkaZzz сказал:

чет я не понял =) за что? что я не по теме спросил?  "Размещение своих объектов на карте"

тьфу, брат, моя ошибка, не проснулся, посчитал что вопрос связан с проблемой рубки деревьев на ливонии, прошу товарищей админов убрать ошибойчный пред

Share this post


Link to post
Share on other sites

Всем Приветы! Народ, помогайте, прописываю Кастомные здания, Зомби ходят сквозь них, в прямом смысле сквозь них(((

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

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By BorizzK
      В эксперементалке 1.08 если сбросить предмет находясь на машине (крыше, багажнике, капоте в кузове) предмет проваливается сквозь машину на землю или оказывается в ее текстурах
       
      Тикет
      https://feedback.bistudio.com/T152071
       
      ответ богемии поразителен - сейчас нет простого решения
       
      А ниже что? Проще не бывает...
       
      Собственно код фикса (Автор Я)
       
      Code ``` modded class ItemBase extends InventoryItem { override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc) { super.EEItemLocationChanged(oldLoc,newLoc); if (newLoc.GetType() == InventoryLocationType.GROUND) { if (oldLoc.GetParent()) { PlayerBase player = PlayerBase.Cast(oldLoc.GetParent()); if (player) { FixPositionIfDropOnCar(player); } } } } void FixPositionIfDropOnCar(PlayerBase player) { vector m_RayStart; vector m_RayEnd; m_RayStart = player.GetPosition(); m_RayStart[1] = m_RayStart[1] + 0.5; m_RayEnd = m_RayStart; m_RayEnd[1] = m_RayEnd[1] - 1; RaycastRVParams m_RayCastInput = new RaycastRVParams(m_RayStart, m_RayEnd, this, 0.05); array<ref RaycastRVResult> m_RayCastResults = new array<ref RaycastRVResult>; m_RayCastInput.with = player; m_RayCastInput.flags = CollisionFlags.FIRSTCONTACT; if (DayZPhysics.RaycastRVProxy(m_RayCastInput, m_RayCastResults)) { if (m_RayCastResults.Count() > 0) { Car car; if (Class.CastTo(car, m_RayCastResults[0].obj) || Class.CastTo(car, m_RayCastResults[0].parent)) { this.SetPosition(m_RayCastResults[0].pos + (player.GetDirection() * 0.1)); } } } } } ``` Наверное имеет смысл чуть приподнять предмет над поверхностью, но необходимость этого зависит от типа предмета, потому не стал этого делать
       
      чуть откорректировал код
    • By BorizzK
      Довольно тупое охлаждение жратвы и кастрюли если они оказались на земле
      Прикрутить охлаждение содержимого кастрюли как 2 байта сами знаете что
      Сделать охлаждение после снятия с костра и тп вобщем то же не проблема
       
      Просто код и ничего лишнего
       
      Комментарии к коду добавлю позже
      Логгирование в коде закомментировано - раскомментируйте, что бы наблюдать за процессом
       
      Для жратвы убавление температуры раз в 10 сек на 1 градус
      Для кастрюли на 2 градуса
       
      Охлаждается до дневной температуры воздуха далее охлаждение прекращается
      У бгемотов есть 2 температуры воздуха - дневная и ночная
      Идиотизм? Однозначно
      Я пытался в погоде сделать ее плавное изменение в зависимости от Overcast, Rain и тп, но забил - потом как-нибудь
       
      Есть вопросы, задавайте, отвечу если будет время.
       
      Вобщем как-то так:
       
      //08.05.2020 modded class ItemBase extends InventoryItem { ref Timer m_TemperatureDecrease; private float m_InitTemperature; private float m_DecreaseTempTime = 10; private float m_TempDecreaseCoef = -1; void ItemBase() { m_InitTemperature = 12; //g_Game.GetMission().GetWorldData().GetDayTemperature(); // Не работает ((( какого художника - я хз if ( IsInherited(Pot) /* GetInventory().GetCargo() */ ) { m_TempDecreaseCoef = -2; } } override void AfterStoreLoad() { super.AfterStoreLoad(); if (!IsInherited(FireplaceBase)) TryToStartTempDecrease(); } private void TryToStartTempDecrease() { if (GetTemperature() > GetInitTemperature()) { if (!GetHierarchyParent()) { if (!m_TemperatureDecrease) { Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: Init: TryToStartTempDecrease: this: " + this + ": GetHierarchyParent(): " + GetHierarchyParent() + ": GetTemperature(): " + GetTemperature()); StartTemperatureDecrease(); } } } } override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc) { super.EEItemLocationChanged(oldLoc,newLoc); //Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: EEItemLocationChanged: this: " + this + ": newLoc.GetType(): " + newLoc.GetType() + ": newLoc.GetParent(): " + newLoc.GetParent() + ": GetTemperature(): " + GetTemperature()); if (GetTemperature() > GetInitTemperature()) { if (!newLoc.GetParent() || newLoc.GetType() == InventoryLocationType.GROUND) { if (!m_TemperatureDecrease) { Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: EEItemLocationChanged: this: " + this + ": Begin decrease temperature: GetTemperature(): " + GetTemperature()); StartTemperatureDecrease(); } } } else { if (m_TemperatureDecrease) { Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: EEItemLocationChanged: this: " + this + ": End decrease temperature: GetTemperature(): " + GetTemperature()); StopTemperatureDecrease(); } } } private void StartTemperatureDecrease() { m_TemperatureDecrease = new Timer( CALL_CATEGORY_SYSTEM ); m_TemperatureDecrease.Run(m_DecreaseTempTime, this, "DecreaseTemperature", NULL, true); } private void StopTemperatureDecrease() { m_TemperatureDecrease.Stop(); m_TemperatureDecrease = NULL; } void DecreaseTemperature() { if (GetTemperature() > GetInitTemperature()) { AddTemperature(GetTempDecreaseCoef()); if ( IsInherited(Pot) /* GetInventory().GetCargo() */) { DecreaseCargoTemperature(); } Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseTemperature: this: " + this + ": Decrease: GetTemperature(): " + GetTemperature()); } else { SetTemperature(GetInitTemperature()); StopTemperatureDecrease(); Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseTemperature: this: " + this + ": Stop decrease: GetTemperature(): " + GetTemperature()); } } void DecreaseCargoTemperature() { ItemBase item; int item_count = GetInventory().GetCargo().GetItemCount(); for (int i = 0; i < item_count; i++) { item = ItemBase.Cast(GetInventory().GetCargo().GetItem(i)); if (item) { if (item.GetTemperature() > item.GetInitTemperature()) { item.AddTemperature(item.GetTempDecreaseCoef()); Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseCargoTemperature: this: " + this + ": Decrease: item: " + item + ": item.GetTemperature(): " + item.GetTemperature()); } else { item.SetTemperature(item.GetInitTemperature()); Print("::: SERVER: [ItemBase extends InventoryItem: Decreasetemp]: DecreaseCargoTemperature: this: " + this + ": Stop decrease: item: " + item + ": item.GetTemperature(): " + item.GetTemperature()); } } } } float GetInitTemperature() { return m_InitTemperature; } float GetTempDecreaseCoef() { return m_TempDecreaseCoef; } } Немного переделал код
      Теперь охлаждается все если оно имеет Т выше 12, а если это кастрюля с содержимым, то и ее содержимое
      Получить Т воздуха в конструкторе не выходит потому указал руками
       
    • By DrTauren
      Что нам понадобится:
      1) Архив
      2) Notepad


      Инструкция:
      1) Качаем архив и копируем из него папку custom в вашу папку с миссией
      2) Открываем init.sqf и ищем такие строки:
      if (!isDedicated) then { 0 fadeSound 0; waitUntil {!isNil "dayz_loadScreenMsg"}; dayz_loadScreenMsg = (localize "STR_AUTHENTICATING"); _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}]; }; 3) Перед закрывающей скобкой }; прописываем это:
      _nil = [] execVM "custom\JAEM\EvacChopper_init.sqf"; 4) Выбираем одно из двух, выполняем действия указанные ниже:
      Если у вас нет своего variables.sqf в папке с миссией:  
       
      Если у вас есть свой variables.sqf в папке с миссией:  

      5) Копируем файлы remoteexec.txt, waypointcondition.txt, waypointstatement.txt в вашу папку с фильтрами BattlEye (\instance_11_Chernarus\BattlEye)

      Настройка параметров:
      Открываем файл EvacChopper_init.sqf (custom\JAEM\EvacChopper_init.sqf), находим нужную строку, редактируем по своему усмотрению:
      evac_chopperPrice = 3; Цена вашего спасения евреями. По умолчанию 3 Брифкейса
       
      evac_needRadio = 0; Обязательно ли радио для того, что бы вызвать хапуг? (0-не нужно, 1-таки извольте)
       
      evac_zoneMarker = 0; Дымовая граната на месте эвакуации (0-не надо, 1-таки не увидим мы без дыма)
       
      evac_minDistance = 500; Дословно: минимальное расстояние, что бы вызвать евреев. Меньше 500 не ставить!
    • By Serdce
      Ссылка на первоисточник - https://github.com/BrettNordin/Exile
      Я всего лишь перевёл
      Собственно переходим по ссылке, и скачиваем архив.
      Для тех, кто не знает как качать с хаба скрин 
      И так, едем дальше
      Скачанный архив распаковываем в удобное место для работы,
      Идём в ваш @ExileServer, там нас интересуют файлы - extDB2.dll , extDB2.so , extDB2-conf.ini , XM8.dll , XM8.so Удаляем эти файлы
      Далее идём в @ExileServer которую мы скачали, всё её содержимое копируем в аналогичную папку на сервере.
      Теперь идём в вашу MPmissions и там распаковываем вашу миссию "Exile.название карты",
      Туда мы копируем содержимое папки Exile.MapName из архива,
      Далее открываем ваш config.cpp и ищем там class CfgExileCustomCode 
      В него мы добавляем - #include "CfgExileCustomCode.cpp"
      Должно получится так
      Запаковываем обратно)
      Ну и теперь из архива мы копируем tbbmalloc.dll, tbbmalloc_x64.dll в папку расположения вашего Arma3_server.exe
      Не забываем поменять в вашем файле запуска сервера с arma3server.exe на arma3server_x64.exe 
      Ну и финишная прямая, открываем вашу базу данных ( желательно с название exile ) и добавляем файл Exile_Database_Update_64x.sql
      Далее настройте под себя ваш extdb3-conf.ini
       
    • By Astrahrom
      Столкнулся с цикличной проблемой в лаунчере, при установке ботов A3EAI:
      Script @epochhive\A3EAI_config.sqf not found Оказалось, что все дело в том, что в открытом доступе лежат старые версии этого скрипта, и все кто пытается воткнуть в Epochhive, как я, данный скрипт - делают это по старой схеме, не актуальной для последних версий.
       
      Решение
       
      Скачиваем - https://yadi.sk/d/HfXeB1pEAGoRtw
       
      Устанавливаем:
      1. Взять из папки архива "1. Installation Package" папку "@A3EAI" и вложить её в папку с вашим сервером;
      2. Прописать скрипт в вашем запускаторе, примерно так:
      -servermod=@EpochHive;@A3EAI; Пример моего запускатора:
      @echo off start "arma3" "arma3server.exe" -servermod=@EpochHive;@A3EAI; -mod=@Epoch; -config=C:\Arma3Server\sc\server.cfg -port=2307 -profiles=sc -cfg=C:\Arma3Server\sc\basic.cfg -name=sc -autoINIT Варианты настройки, которые хранятся в самой папке @A3EAI\addons\a3eai_config в файле config.cpp.
×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.