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

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

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

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

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

Таблица лидеров


Популярные публикации

Отображаются публикации с наибольшей репутацией на 02/06/19 в Сообщения

  1. 1 балл
    BorizzK

    Вопрос по классам, наследованию и тп

    В чем отличие MyPlayerBase: PlayerBase и MyPlayerBase extends PlayerBase или это одно и то же?
  2. 1 балл
    NoNameUltima

    Вопрос по классам, наследованию и тп

    BorizzK К чему доступ? Расширить можешь класс - добавить собственные функции\процедуры и т.п. вещи, т.е. не переписывая базу (а может и не имея доступ к классу - не имея возможность внести в базовый класс изменения), создать более расширенную версию.
  3. 1 балл
    123new

    Разбор построек только для владельца DayZSa

    Думаю да, если знать функцию, которая при создании постройки и при разборе ее используется на стороне сервера, то думаю сделать не сложно.
  4. 1 балл
    inQ4

    Комплект стартового лута и спавн по UID

    @BorizzK пытался установить по \ но возникали проблемы с override void OnInit() - мне пытались помочь исправить, не вышло.
  5. 1 балл
    inQ4

    Комплект стартового лута и спавн по UID

    Привет всем. Без лишней воды, перечитав много тем, задав очередной вопрос - бес толку все. Если быть конкретнее, может кто-то с последовательностью предоставить инструкцию по установке комплекта стартового лута и спавна по UID, например; survivor (1) - спавн в электро, свой лут. survivor (2) - спавн в черно, свой лут. survivor (3) - спавн в сз, свой лут. И так далее, что-бы можно было задать по UID для конкретного игрока место спавна и его лут.
  6. 1 балл
    paranoyk

    Спавн обьектов на карте.

    Для тех кто захочет что бы в установленом большом доте Land_Mil_Fortified_Nest_Big появился лут. В файле mapgrouppos.xml прописываем координаты дота - <group name="Land_Mil_Fortified_Nest_Big" pos="кор Х кор У кор Z" rpy="наклон уклон поворот" a="80.937752" /> (в принцыпе это всё далет оффлайнредактор по команде "сохранить") Изменить в файле mapgroupproto.xml точки спавна лута.(искал эксперементально,точность не обещаю,но убраны точно спавн на расстоянии 10! метров,бегемоты они такие...) <group name="Land_Mil_Fortified_Nest_Big"> <usage name="Military" /> <container name="lootFloor"> <category name="tools" /> <category name="containers" /> <category name="clothes" /> <point pos="3.099226 -0.781601 -3.058697" range="0.694336" height="1.735840" /> <point pos="-0.141551 -0.781601 2.699857" range="0.790718" height="1.843697" /> <point pos="-0.430143 -0.781601 -0.749264" range="0.813477" height="1.843697" /> <point pos="-1.069966 -0.781601 1.134208" range="0.878906" height="1.843697" /> <point pos="-0.423181 -0.781601 -3.129264" range="1.025635" height="1.843697" /> <point pos="-2.689733 -0.781601 -0.487340" range="1.199951" height="1.843697" /> </container> <container name="lootweapons"> <category name="weapons" /> <category name="explosives" /> <point pos="-0.549833 -0.781601 -1.117748" range="0.203125" height="0.507813" /> <point pos="-1.231738 -0.781601 -1.150765" range="0.203125" height="0.507813" /> <point pos="-1.266199 -0.781601 2.423568" range="0.203125" height="0.498535" /> <point pos="-0.545175 -0.781601 2.464106" range="0.203125" height="0.497345" /> <point pos="-2.913051 -0.781601 -0.016652" range="0.237500" height="0.593750" /> <point pos="-2.905605 -0.781601 0.886155" range="0.237500" height="0.591888" /> <point pos="1.501258 -0.781601 -0.690136" range="0.754395" height="1.843697" /> <point pos="1.132018 -0.781601 1.333661" range="1.078369" height="1.843697" /> <point pos="-2.987661 -0.781601 -2.893638" range="1.163574" height="1.843697" /> </container> </group> Походу понял что означает flags="32"-расположение на земле,даже под полом.
  7. 1 балл
    BorizzK

    Вайтлист / WhiteList

    Выкладываю доработанную версию Полный гайд завтра Кратко 1. Кладем куда надо 2. Подключаем через include в init.c или другом включенном в init.c файле Обязательно! вне класса! Пример #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\_MOD\\WhiteList\\Server_WhiteList_Class.c" //Server_WhiteList ref Server_WhiteList WhiteList = new Server_WhiteList(); 3. При старте сервера выполняем его инициализацию сделав вызов функции init из класса вайтлиста находим в init.c в классе миссии или если класс миссии вынесен из init.c функцию OnInit И вставляем туда вызов override void OnInit() { WhiteList.Init(); Добавляем в тело класса миссии переопределенную функцию override void InvokeOnConnect вот так override void InvokeOnConnect(PlayerBase player, PlayerIdentity identity) { super.InvokeOnConnect(player, identity); //Если игрок в черном списке или игрока нет в белом списке будет кик и функция вернет false if (!WhiteList.CheckWBListConnectAllow(player, identity)) { return; //IF KICK - RETURN } } Важно! Вызов super.InvokeOnConnect(player, identity); разместить до вызова функции вайтлиста иначе перс может лочится в базе Файлы вайтлиста whiteList.lst и блэклиста blackList.lst сохраняем в корне миссии в папке _CONF, но Вы можете изменить путь в самом скрипте вайт листа Формат - Steam UID (17цифр) вида 76561198156927001 в столбик если уид кривой-неверный он будет игнорится 76561198156927001 тут может быть комментарий 76561198156927001 76561198156927001 76561198156927001 те что в вайтлисте могут входить остальных кикнет те кого добавили в черный будут кикаться независимо от того есть ли они в вайтлисте если в папке _CONF лежит файл whitelistautoreload файл вайтлиста проверяется/перезагружается при каждом входе пользователя и можно не перегружая сервер изменять лист то же касается и блэклиста ( blacklistautoreload ) если файлы удалить будет использоваться список/параметры загруженные при старте сервера но автоперезагрузку всегда можно включить на лету создав эти файлы в папке отключить вайтлист ? удалите переименуйте whiteList.lst то же и блэклист включить обратно можно на лету, как и отключить создать whitelistautoreload и/или blacklistautoreload скрипт попытается прочитать вайтл/блэклист из файла, их не найдет и глобально отключит листы если листов нет и включит обратно если есть кроме прочего есть и дополнительные параметры, которые можно помещать в конфиг сервера и файлы вайт/блэклиста P.S. работа проверена - персы в 99% случаев не лочатся в базе понятно что вайтлист и блэклист можно использовать раздельно По доппараметрам расскажу завтра или чуть позже Server_WhiteList_Class.rar
  8. 1 балл
    123new

    Старт лут для отдельного игрока

    Я это уже объяснял в какой-то из тем по standalone в разделе помощи. Для конкретного игрока что именно? Позиция? лут? Тогда так, в самое начало инита дописываем функции: string GetPlayerSteam64ID(PlayerBase player) { string return_mess = ""; if (player) { PlayerIdentity p_identity = player.GetIdentity(); if (p_identity) { private string UID_P = p_identity.GetPlainId(); return_mess = UID_P; } } return return_mess; } bool Contain_in_list_uids(string uid_check, string uid_list) { bool return_zn = false; if (uid_list.Contains(uid_check)) { return_zn = true; } } Если нужно для позиции игрока, то: вместо pos="14749.70 0.0 13248.70"; вставляем: if(Contain_in_list_uids(identity.GetPlainId(), "765...")) { pos="14749.70 0.0 13248.70"; } где 765... это steam64id ваш Если по поводу лута, то if(Contain_in_list_uids(GetPlayerSteam64ID(player), "765...")) { //тут твой лут } где 765... это steam64id ваш, ну а внутри скобок сам лут на данного игрока. Вместо одного UID вместо 765... можно несколько указать, например так: "7654...,765333,76332..."
  9. 1 балл
    123new

    Старт лут для отдельного игрока

    в mpmissions\dayzOffline.chernarusplus\init.c есть блок override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string 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; } это спавн персонажа. перед строкой playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player добавляем pos="14749.70 0.0 13248.70"; и точка спавна готова Далее у нас имеется там же блок override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { /* player.RemoveAllItems(); EntityAI item = player.GetInventory().CreateInInventory(topsMissionArray.GetRandomElement()); EntityAI item2 = player.GetInventory().CreateInInventory(pantsArray.GetRandomElement()); EntityAI item3 = player.GetInventory().CreateInInventory(shoesArray.GetRandomElement()); */ 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); itemEnt = itemTop.GetInventory().CreateInInventory("RoadFlare"); SetRandomHealth(itemEnt); itemEnt = itemTop.GetInventory().CreateInInventory("StoneKnife"); SetRandomHealth(itemEnt); } rand = Math.RandomFloatInclusive(0.0, 1.0); if ( rand < 0.25 ) itemEnt = player.GetInventory().CreateInInventory("SodaCan_Cola"); else if ( rand > 0.75 ) itemEnt = player.GetInventory().CreateInInventory("SodaCan_Spite"); else itemEnt = player.GetInventory().CreateInInventory("SodaCan_Pipsi"); 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); } здесь itemTop = player.FindAttachmentBySlotName("Body"); if ( itemTop ) { itemEnt = itemTop.GetInventory().CreateInInventory("Rag"); if ( Class.CastTo(itemBs, itemEnt ) ) itemBs.SetQuantity(4); SetRandomHealth(itemEnt); itemEnt = itemTop.GetInventory().CreateInInventory("RoadFlare"); SetRandomHealth(itemEnt); itemEnt = itemTop.GetInventory().CreateInInventory("StoneKnife"); SetRandomHealth(itemEnt); } rand = Math.RandomFloatInclusive(0.0, 1.0); if ( rand < 0.25 ) itemEnt = player.GetInventory().CreateInInventory("SodaCan_Cola"); else if ( rand > 0.75 ) itemEnt = player.GetInventory().CreateInInventory("SodaCan_Spite"); else itemEnt = player.GetInventory().CreateInInventory("SodaCan_Pipsi"); 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); выдача стартового лута. Имеем ввиду, что на персонаже уже имеются вещи (штаны, футболка, кеды). Если хотим их убрать - используем player.RemoveAllItems(); ну а далее сочиняем так как вам надо
  10. 1 балл
    Abald Видимо что-то не так делали. Там 2 варианта их спавна, в ивентс и в тайпс, в обоих надо отключать. И не забывайте, что это xml файлы, и комментарии должны быть в форматах для xml.
×
×
  • Создать...

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

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

Поддержка