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

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

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

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

    Там вы можете продать или купить
    Всё что касается игровых серверов
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=


 

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

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


Ссылка на сообщение
Поделиться на других сайтах
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 нужно было дописать 

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


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

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

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