BPanda Posted May 30, 2024 Share #1 Posted May 30, 2024 Всем привет! Заметил что на некоторых остовах техники не спавнится никакой лут. Хотя на многих других проектах я видел спавн лута на таких объектах. Проверил файлики mapgrouppos.xml, mapgroupproto.xml, и реально, классы этих объектов туда не добавлены. Хорошо, запускаю сервер, с раскомментированными: Please Log in or Register to see this: Code Файлики сгенерировались. Комментирую эти строчки в init.c Открываю mapgrouppos.xml, нет моего объекта (Я пытался работать с остовом БТР Land_trash_btr) Ок. Забираю координаты в админке одного из таких БТР: Please Log in or Register to see this: Code Добавляю руками строчку в mapgrouppos.xml: Please Log in or Register to see this: Code В mapgroupproto.xml описываю спавн лута на этом объекте: Please Log in or Register to see this: Code Очищаю storage_1 в missions..., хотя наверно можно было файлики types... просто удалить. Запускаю Сервер, ЛУТА НЕТ. Прошу помощи... P.S. В консоли сервера отловил вот что: Please Log in or Register to see this: Code Link to comment Share on other sites More sharing options...
BPanda Posted May 30, 2024 Author Share #2 Posted May 30, 2024 Сорян, мой косяк. Please Log in or Register to see this: Code pos="7702.640625, 202.301697, 12951.303711" через запятые вставил (копипаста и невнимательность) Вроде пошел спавн. Ща буду дальше проверять. Но не понятно, почему не добавляются при генерации в mapgrouppos.xml многие объекты, такие как мой подопытный Land_trash_btr. Link to comment Share on other sites More sharing options...
veld Posted May 30, 2024 Share #3 Posted May 30, 2024 GetCEApi().ExportProxyData("0 0 0", 100000); ---- Что это, Бэрримор???? Не, ну реально? Лааадно, 0 0 0 .....Это ЦЕНТР вашей карты? Нет? А, внезапно, должен быть. Вернее (барабанная дробь, на будущее), центр зоны с заданным радиусом (10000,в данном случае), где сработает GetCEApi().ExportProxyData. Для Черно 7500 0 7500 и 10650 захватит всю карту... Это для начала. Land_trash_btr - делаете лут для мода? Ибо ванильный нихт имеет такого обьекта. На ванили обломки обычно StaticObj_Wreck_BMP, StaticObj_Wreck_BMP2 или Land_Wreck_Uaz,к примеру, если вписать. Please Log in or Register to see this: Code Или даже Please Log in or Register to see this: Code в mapgroupproto.xml все. Запускаем. (вайп не нужен). Всё.....Правильно вписать надо только.Потом уже можно извращаться до степени полного мазохизма. И да GetCEApi().ExportClusterData(); генерирует не лут,а точки спавна для "яблонь" и прочих плодоовощных объектов. (способ работает с времён мамонтов) Link to comment Share on other sites More sharing options...
BPanda Posted May 30, 2024 Author Share #4 Posted May 30, 2024 @veld 7 часов назад, veld сказал: GetCEApi().ExportProxyData("0 0 0", 100000); ---- Что это, Бэрримор???? Это Припять, Сэр. Примерно 400 квадратных км. У них там в ванильном init.c так и стоит 7 часов назад, veld сказал: Land_trash_btr - делаете лут для мода? Ибо ванильный нихт имеет такого обьекта. Это Припять, Сэр. Их ванильный БТР. Но ни его, ни многих других нет в mapgrouppos.xml, а также в mapgroupproto.xml. Поэтому и взялся вручную прописывать. И, как я писал выше, при экспорте эти объекты, почему-то не добавляются в экпортируемые xml. Все заработало. Как и писал выше, запятые забыл удалить. Остается открытым 1 вопрос по mapgroupproto.xml Please Log in or Register to see this: Code А именно по range, height и flags C range все понятно. Разброс по x Зачем нужен height, чтобы лут в воздухе и под землей спавнился? Непонятно, зачем такое 😶falgs, я читал где-то, или подсказал кто-то в форуме, это чтобы игнорировать height. Заметил вот, что: Изначально выставил range="0.01" height="0.001". Вообще ничего не заспавнилось. Как сильно можно играться с такими величинами? Выставил: Please Log in or Register to see this: Code Заспавнилось, но некоторый лут в водухе немного выше или внутри БТРа С flags еще не игрался. Link to comment Share on other sites More sharing options...
veld Posted May 30, 2024 Share #5 Posted May 30, 2024 (edited) Ну раз это ПРИПЯТЬ, то ....куда уже мне с советами которым сто лет в обед. Она на других принцыпах сделана и извините не знал Ещё раз...попробую достучатся, хотя.... GetCEApi().ExportProxyData("10000 0 10000", 29000) это строчка обработки в инит здорового человека для карты припять что бы не обрабатывать 3/4 пустоты. Далее , эта команда автоматом генерит mapgrouppos обьектов которые ЕСТЬ в mapgroupproto. Стоило сразу внести даже "пустышку"-получили бы на выходе все координаты в mapgrouppos. Всего то стоило с правильной стороны зайти. <point pos="-0.223217 0.452182 0.210887" ...Координаты точки спавна. range="0.221843" height="0.325318 размеры "цилиндра" в котором заспавнится лут если размеры его модели не превышают заданные, причём при спавне может сдвинутся по горизонтали в любом направлении на размер range. Флаги, ну их то всего два на момент сейчас...а нужно ли. Edited May 30, 2024 by veld 1 Link to comment Share on other sites More sharing options...
Mneahuenno Posted December 10, 2024 Share #6 Posted December 10, 2024 @veld #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\Bunker\\Lab1.c" void main() { //НАЧАЛО ПОГОДЫ ПЕРЕД НАЧАЛОМ ЭКОНОМИКИ------------------------ Weather weather = g_Game.GetWeather(); weather.MissionWeather(false); // false = использовать погодный контроллер из Weather.c weather.GetOvercast().SetLimits( 0.0 , 0.0 ); // Пасмурная погода. Задать пределы weather.GetRain().SetLimits(0.0, 0.0); // Дождь. Задать пределы weather.GetFog().SetLimits(0.0, 0.0); // Туман. Задать пределы weather.GetOvercast().SetForecastChangeLimits(0.0, 0.0); // Пасмурная погода. Установить пределы изменения прогноза weather.GetRain().SetForecastChangeLimits(0.0, 0.0); // Дождь. Установить пределы изменения прогноза weather.GetFog().SetForecastChangeLimits(0.0, 0.0); // Туман. Установить пределы изменения прогноза weather.GetOvercast().SetForecastTimeLimits(10, 20); // Пасмурная погода. Установить пределы времени прогноза weather.GetRain().SetForecastTimeLimits(10, 20); // Дождь. Установить пределы времени прогноза weather.GetFog().SetForecastTimeLimits(10, 20); // Туман. Установить пределы времени прогноза weather.GetOvercast().Set(Math.RandomFloatInclusive(0.3, 0.4), 0, 0); // Пасмурная погода. Установить математическое случайное число с плавающей запятой weather.GetRain().Set(Math.RandomFloatInclusive(0.0, 0.2), 0, 0); // Дождь. Установить математическое случайное число с плавающей запятой weather.GetFog().Set(Math.RandomFloatInclusive(0, 1), 0, 0); // Туман. Установить математическое случайное число с плавающей запятой weather.SetWindMaximumSpeed(50); // Установить максимальную скорость ветра weather.SetWindFunctionParams(0.1, 1.0, 50); // Установить параметры функции ветра //INIT ECONOMY-------------------------------------- Hive ce = CreateHive(); SpawnObject( ); //<--- Это ваши постройки GetCEApi().ExportProxyData( "7500 0 7500" , 10650 ); if ( ce ) ce.InitOffline(); //DATE RESET AFTER ECONOMY INIT------------------------- int year, month, day, hour, minute; int reset_month = 9, reset_day = 10; 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); } } } } class CustomMission: MissionServer { ref Lab1 mLab1; void CustomMission() { mLab1 = new Lab1(); } void SetRandomHealth(EntityAI itemEnt) { if ( itemEnt ) { float rndHlt = Math.RandomFloat( 0.45, 0.65 ); itemEnt.SetHealth01( "", "", rndHlt ); } } override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName) { Entity playerEnt; playerEnt = GetGame().CreatePlayer( identity, characterName, pos, 0, "NONE" ); Class.CastTo( m_player, playerEnt ); GetGame().SelectPlayer( identity, m_player ); return m_player; } override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { player.RemoveAllItems(); EntityAI itemEnt; ItemBase itemBs; itemEnt = player.GetInventory().CreateInInventory("MilitaryBeret_Red"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("SportGlasses_Orange"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("TelnyashkaShirt"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("HikingBootsLow_Grey"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("UKAssVest_Olive"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("TTSKOPants"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("SodaCan_Pipsi"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("SodaCan_Pipsi"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("Mag_Deagle_9rnd"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("AmmoBox_357_20Rnd"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("DisinfectantAlcohol"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("TunaCan"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("TunaCan"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("RoadFlare"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory("BandageDressing"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory( "Deagle" ); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory( "Fruck_KnifeRUI" ); itemBs = ItemBase.Cast(itemEnt); } }; Mission CreateCustomMission(string path) { return new CustomMission(); } делаю вот таким вот образом . файл не формируется. mapgroupproto.xml заполнен (файл был в комплекте с локацией) Сам бункер спавнится в небе над океаном, может в этом проблема? Очищаю storage_1 в missions, она вообще не формируется Link to comment Share on other sites More sharing options...
veld Posted December 10, 2024 Share #7 Posted December 10, 2024 ...где ваш бункер...это не ко мне почему он ввоздухе. Может, вдруг, он для другой карты? Может так? Please Log in or Register to see this: Code Link to comment Share on other sites More sharing options...
Mneahuenno Posted December 10, 2024 Share #8 Posted December 10, 2024 @veld Со спавном все получилось. Заработало. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now