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

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

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

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

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

Добавление на карту зданий и спавн в них лута

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

Как добавить здания на карту? И как прописать в них спавн лута?

Несмотря на то, что задача видится единой,  вопросов по её решению, как очевидно, два.

 

1) КАК ДОБАВИТЬ ЗДАНИЯ НА КАРТУ:

шаг первый: проходим по ссылке и скачиваем offline-админку https://vk.com/fidovpublic?w=wall-94007758_3744 или сразу с яндекс-диска https://yadi.sk/d/vL_KvUQ4di38Hw (версия 1.3.1) https://yadi.sk/d/dIbbc1GFkUrD7A (версия 1.2); 

Шаг второй: устанавливаем, заходим, нажимаем Y, выбираем "ОБ" (то есть объекты), "постройки", размещаем объект на земле, кликаем по наименованию в окне, теперь скролом колесика мыши по координатам - можно подвинуть влево/вправо, вперед назад, вниз/вверх,далее нажимаем на значок "экскаватор" (открывается дополнительное окно ниже), в нем так же скролом наклоняем или разворачиваем объект, можем сохранить и после рестарта объекты будут стоять на том же месте.

Шаг третий: нажимаем экспорт и идем в notepad++, нажимаем ctrl+V (вставляем из буфера обмена код с нашими зданиями и их координатами). Выглядит это так: GetGame().CreateObject("Land_Container_1Moh", "446.953156 422.951996 11226.987305").SetOrientation("132.000000 0.000000 0.000000");

Шаг четвертый: открываем файл init.c (Server\mpmissions\dayzOffline.chernarusplus\init.c), находим void main() {…., опускаемся ниже до строчки weather.SetWindFunctionParams(0.1, 0.3, 50); После нее прописываем

Object obj;

GetGame().CreateObject("Land_Container_1Moh", "446.953156 422.951996 11226.987305").SetOrientation("132.000000 0.000000 0.000000"); 

( поставьте свои координаты чтобы Вам было удобно проверить или может скачать файл с несколькими новыми военными базами у меня https://yadi.sk/i/c_RH9woVKvIsvQ ) 

загрузить здания без лута - для этого вам будет уже достаточно вышеприведенного текста, если вы, например, готовите базу для игроков, либо дополняете локации нелутабельными объектами, создаете красоту и атмосферу. Если же Вам нужен лут, то переходим вместе со мной к этапу №2 и пытаемся вместе разобраться.

 

2) КАК ДОБАВИТЬ ЛУТ В ЗДАНИЯ? (Я ПРОШУ УЧАСТНИКОВ ФОРУМА ПОМОЧЬ В ЭТОМ)

приведу несколько статей на этой счет:

статья первая: "генерация новых точек для спавна лута в зданиях"

Следуя директивам: так же в init.c вставляем код
находим "class CustomMission: MissionServer" (он идет сразу после добавленных нами зданий)
и в этот класс вставляем void OnInit () { текст } (текст указан ниже)
вот так вот:

class CustomMission: MissionServer
{    
    void OnInit () 
    {
        CETesting TestHive = GetTesting();
        TestHive.ExportProxyProto();
        TestHive.ExportProxyData( "7500 0 7500", 7000 ); 
    }

};

запустите сервер и подождите примерно 30-60 секунд после прочтения миссии!
как только вы видите это в консоли: [ce][mapexport]:: entity found:13722, entity valid:8983, types total: 224... took 33 sec. 
перейдите в папку хранения в миссии, откройте его, и вы должны увидеть новую папку с именем "export" внутри него будет содержать копию 2 xml и заменить старые с новыми, когда получишь 2 файла удали код который добавил при следующем запуске сервера

 

и еще три статьи на одну тему

Статья вторая: Вы должны добавить здание в mapgrouppos.xml с той же позицией. Тогда у вас должен появиться там спавн лута, пишет автор статьи. Ссылка на статью https://forums.dayz.com/topic/240272-dayz-map-mod/
Статья третья: Я "игрался" с кодом и добавил некоторые записи в mapgrouppos.xml, но я понял, что это определение экземпляров макетов лута для каждой строительной сетки (т.е. у меня был лут, плавающий в воздухе, без зданий под ним и вокруг него) тут админ, видимо, забыл про файл init.c и сами здания отсутствовали. Ссылка на статью 

 

Статья четвертая: В mapgrouppos.xml указаны все точки спавнов. Ссылка на статью 

идем в mapgrouppos.xml

DayZCommunityOfflineMode / Missions / DayZCommunityOfflineMode.ChernarusPlus /mapGroupPos.xml

и видим там все здания в координатами

<group name="Land_Misc_FeedShack" pos="80.255409 113.792282 4422.158691" rpy="-0.000000 0.000000 -70.013718" a="160.013718" />

<group name="Land_Misc_FeedShack" pos="80.250587 411.261566 10449.115234" rpy="-0.000000 0.000000 -58.923214" a="148.923203" />

а наш код, выгруженный из offline админки 

GetGame().CreateObject("Land_Container_1Moh", "446.953156 422.951996 11226.987305").SetOrientation("132.000000 0.000000 0.000000");
GetGame().CreateObject("Land_Container_1Moh", "451.626770 423.004059 11222.603516").SetOrientation("-45.999992 -0.000000 0.000000");

Только вот что такое "rpy" и "a" я не знаю, могу предположить что

"rpy" это есть SetOrientation а "а" это градус поворота, но как это выгрузить из offline админки я ума не приложу

Оставляю на Ваше изучение, использование и дополнение (прошу помочь)

 

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


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





И так, вот код с оффлайна
 

obj = GetGame().CreateObject("Land_City_Stand_FastFood", "8157.828613 475.809326 9090.811523");
obj.SetOrientation("-115.000000 0.000000 0.000000");
obj.SetPosition("8157.828613 475.809326 9090.811523");

 А вот с mapGroupPos 
 

<group name="Land_City_Stand_FastFood" pos="8157.828613 475.809326 9090.811523" rpy="0.000000 0.000000 -115.000000" a="-110.838165" />

pos="" - это координаты по широте, долготе и высоте
rpy="" - это радиус вращения, только в отличии от оффлайна координаты нужно вставить зеркально
a="" - пока не понял, но взял координат именно с такой же постройки

 И всё лут появится

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

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


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

Народ

Подскажите класснеймы зданий

В 062 они назывались

 

Пожарка

Land_A_Stationhouse

5этажка

Land_Tenement_building_small

9 этажка

Land_Tenement_building_Big

 

Шпиль или как там его из 3х частей - телебашня которая

 Land_A_TVTower_Base
 Land_A_TVTower_Mid
 Land_A_TVTower_Top
 

Диспетчерская с СЗ

Land_Mil_ControlTower

 

Land_A_Castle_Bastion

 

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


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

ACTPA 

obj.GetPosition - это Pos= 

 

obj.GetOrientation - это rpy=

 

obj.GetDirection - это походу a=

Да взять скриптом в лог данные

 

 

З.Ы.

 

 /**
 \brief Retrieve orientation (yaw, pitch, roll) in <b>degrees</b>
 \return vector of yaw, pitch and roll angles (x = yaw, y = pitch, z = roll)
 */
 proto native vector GetOrientation();

 

 //! Retrieve direction vector
 proto native vector GetDirection();
 

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

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


Ссылка на сообщение
Поделиться на других сайтах
47 минут назад, BorizzK сказал:

ACTPA 

obj.GetPosition - это Pos= 

obj.GetOrientation - это rpy=

obj.GetDirection - это походу a=


 

я действительно просто взял этот "а" из такого же объекта и поменял "зеркально" координаты ориентирования и все работает. Я только что проверил. Проблем нет.  Спасибо за ответы.

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


Ссылка на сообщение
Поделиться на других сайтах
56 минут назад, BorizzK сказал:

Диспетчерская с СЗ

Land_Mil_ControlTower

Land_Mil_ATC_Big

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


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

ACTPA 

Как бы вытащить вообще все класснеймы из игры...

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


Ссылка на сообщение
Поделиться на других сайтах
57 минут назад, ACTPA сказал:

что значит зеркально?

написано rpy="0.000000 0.000000 -115.000000"

а ставить rpy="-115.000000 0.000000 0.000000" ?????

В оффлайне написано -115.000000 0.000000 0.000000
А в mapGroupPos нужно 0.000000 0.000000 -115.000000

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


Ссылка на сообщение
Поделиться на других сайтах
Только что, adler14k сказал:

В оффлайне написано -115.000000 0.000000 0.000000
А в mapGroupPos нужно 0.000000 0.000000 -115.000000

Большое спасибо. Я проверил у в=меня все работает. Надеюсь эта будет для всех актуальна

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


Ссылка на сообщение
Поделиться на других сайтах
Только что, ACTPA сказал:

Большое спасибо. Я проверил у в=меня все работает. Надеюсь эта будет для всех актуальна

Да не за что, сам тестил и на тестил

А "rpy" - это получается вектор поворота по осям

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


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, BorizzK сказал:

ACTPA 

Как бы вытащить вообще все класснеймы из игры...

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

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


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

я там выше выкладывал на яндекс диск мои наработки https://yadi.sk/i/c_RH9woVKvIsvQ - готовые локации. Может кому то лень будет строить, а тут уже готовое.

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


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

ACTPA буду балагодарен

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

А то все никак пвп зоны не дострою

 

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


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

 

4 минуты назад, BorizzK сказал:

ACTPA буду балагодарен

я их через админменю книжное перебирал, ставил, ориентировал итдитп

 

смотри https://dayz.gamepedia.com/ATC_Tower объект называется Land_Mil_ATC_Big а как я это понял? открываем фотку. а там написано Land_Mil_ATC_Big

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

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


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, BorizzK сказал:

Народ

Подскажите класснеймы зданий

В 062 они назывались

 

Пожарка

Land_A_Stationhouse

5этажка

Land_Tenement_building_small

9 этажка

Land_Tenement_building_Big

 

Шпиль или как там его из 3х частей - телебашня которая

 Land_A_TVTower_Base
 Land_A_TVTower_Mid
 Land_A_TVTower_Top
 

Диспетчерская с СЗ

Land_Mil_ControlTower

 

Land_A_Castle_Bastion

 

Пожарка - Land_City_FireStation
Диспетчерская с СЗ - Land_Mil_ATC_Small ------- (2 вида) ---- Land_Mil_ATC_Big
5 этажей - Land_Tenement_small
9 этажей - Land_Tenement_Big
Шпиль 
Land_Tower_TC2_Base

Land_Tower_TC2_Mid

Land_Tower_TC2_Top

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


Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, BorizzK сказал:

ACTPA 

О

Данке шон

Так есть же оффлайн админка со всем списком предметов и их привью. Там же можно поставить и указать все вектора и даже экспорт 

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


Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, BorizzK сказал:

adler14k да я какт об этом не думал да же

Вот https://yadi.sk/d/f6-in3uC4hTyMQ

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

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


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

adler14k Скачал

Не запускался пока в include в путь не добавил $CurrentDir:\\ тк он в последних версиях это поменяли

запускаю

по Y админменю нет

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


Ссылка на сообщение
Поделиться на других сайтах
49 минут назад, BorizzK сказал:

adler14k Скачал

Не запускался пока в include в путь не добавил $CurrentDir:\\ тк он в последних версиях это поменяли

запускаю

по Y админменю нет

В батнике миссии -filepatching нужно было дописать 

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


Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, BorizzK сказал:

adler14k Ага
Потом заметил

Пасип

На здоровье)

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

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

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