Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
dimquea

Время загрузки миссиии

Сразу после рестарта сервера очень долго загружается миссия.

Кусок лога для примера:

 

10:57:51 Player dimquea connecting.
10:57:51 Mission DayZ Epoch Chernarus read from directory.
10:57:55 Roles assigned.
10:57:55 Reading mission ...
10:58:20 Mission read.
10:59:19 Game started.

 

всё это время либо сижу в лобби с пустой полосой загрузки, либо кидает в брифинг.

и только после этого прогружается миссия (полоса загрузки в игре) и начинается загрузка.

 

если ещё какие то логи нужны, скажите прикрпелю.

Edited by dimquea (see edit history)

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

ну первый запуск всегда немного долгий. Брифинг, старт базы, старт миссии. Это нормально.

Share this post


Link to post
Share on other sites



  • 0

Эм. И в итоге зайти на сервер ты не можешь как я понял? У меня так именно пишется когда в итоге не сможешь в игру зайти, т.к. подключения к базе данных нет. Перепроверь настройки и параметры касательно базы данных.

Share this post


Link to post
Share on other sites
  • 0

Эм. И в итоге зайти на сервер ты не можешь как я понял? У меня так именно пишется когда в итоге не сможешь в игру зайти, т.к. подключения к базе данных нет. Перепроверь настройки и параметры касательно базы данных.

нет. в итоге к игре подключается. где то через минуту после Game started начинается чтение из базы и и дальнейшая загрузка.

тоесть суммарно где то 3,5 - 4 минуты уходит на подключение самого первого игрока. потом максимум минута требуется для подлючения.

Share this post


Link to post
Share on other sites
  • 0

ну первый запуск всегда немного долгий. Брифинг, старт базы, старт миссии. Это нормально.

то есть это нормально? дело ещё в том, что изза этого BEC кикает некоторых за долгое сидение в лобби.

Share this post


Link to post
Share on other sites
  • 0

Так настрой время бека на 10 минут, в чём проблема?

Share this post


Link to post
Share on other sites
  • 0

ещё много зависит от компа. был слабый, тоже самое было.

Share this post


Link to post
Share on other sites
  • 0

ещё много зависит от компа. был слабый, тоже самое было.

ну тут он вряд ли что-то поделать сможет, так что опустим.

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
      Собираюсь заняться этим вопросом
      На форуме тем не нашел
      Может кто решал этот вопрос?
      А то как-то 3 бревна неестественно быстро выгорают, минут за 5. Хотелось бы сделать минут 30 хотя бы...
    • By BorizzK
      Автор: Виталий Мизев
       
      Для начала в папке профиля сервера которая указана в параметре запуска сервера -profile=
      создаем 2 файла
      pointPlayerPVP.lst - координаты спавна нового персонажа в формате vector
      playersSetUID.ini - Steam UID игроков | номер комплекта стартового лута для выбора
       
      Пример формата файла pointPlayerPVP.lst
      6010.40 0 7742.71
      6386.92 0 7945.12
      6478.50 0 7874.77
      6044.73 0 7699.81
       
      Пример формата playersSetUID.ini - STEAMUID|номер
      76531195156927007|1
      76561838156127001|2

       
      Игроку с Steam UID 6531195156927007 будет выдат комплект 1, 76561838156127001 комплект 2, если в файле UID нет, то рандомно из остальных комплектов
       
      В файле init.c
       
      в теле класса: class CustomMission: MissionServer
       
      сначала обьявим массивы
       
      ref array<string> m_pointPlayerPVP = new array<string>;;
      ref map<string, int> m_playersSetUID = new map<string, int>;
       
      это массивы глобальны в классе и могут использоваться во всех функциях класса
       
      в теле override void OnInit() (выполняется при запуске сервера)
       
      Чтение координат спавна из файла в массив m_pointPlayerPVP
      string line_content; FileHandle file = OpenFile("$profile:pointPlayerPVP.lst", FileMode.READ); Print("::: OpenFile : pointPlayerPVP.lst : $profile"); if (file != 0) { while ( FGets( file, line_content ) > 0 ) { m_pointPlayerPVP.Insert( line_content); } CloseFile(file); } m_pointPlayerPVP.Debug();  
      Чтение Steam UID и номера из файла в массив m_playersSetUID
      array<string> strFileParam; file = OpenFile("$profile:playersSetUID.ini", FileMode.READ); Print("::: OpenFile : playersSetUID.ini : $profile"); if (file != 0) { while ( FGets( file, line_content ) > 0 ) { strFileParam = new array<string>; line_content.Split( "|", strFileParam ); m_playersSetUID.Insert(strFileParam.Get(0), strFileParam.Get(1).ToInt()); } CloseFile(file); }  
      Далее
      При создании НОВОГО обьекта игрока
       
      сначала ему задаются координаты рандомно выбираясь из массива m_pointPlayerPVP
      см как идет работа с этим массивом
      override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName) { Entity playerEnt; if (m_pointPlayerPVP.Count()>0) { Print (m_pointPlayerPVP.Count()); int maxNum = m_pointPlayerPVP.Count(); int numPoint = Math.RandomInt(0, maxNum - 1); pos = m_pointPlayerPVP.Get(numPoint).ToVector(); } playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player Class.CastTo(m_player, playerEnt); GetGame().SelectPlayer(identity, m_player); return m_player; }  
      Затем при создании стартового комплекта лута комплект выдается в зависимости от наличия в файле UID и номера после | (комплекта) (в данном случае для номера 1 набор собран (см case :1) , для остальных ничего)
      override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { //По умолчанию номер комплекта выбирается рандомно int numSet = Math.RandomInt(2,6); /// 1 - Админ сет, 2-6 сеты для всех пока пусты EntityAI itemEnt; ItemBase itemBs; //Это тут на всякий случай //Получаем UID //PlayerIdentity p_identity = player.GetIdentity(); //p_identity.GetName(); // Получим имя игрока //p_identity.GetPlainId(); // UID в нашем знакомом виде 7656119********** //p_identity.GetId(); // получим UID в не знакомом виде Ue7dyagee34********* //p_identity.GetPlayerId(); // получим порядковый номер объекта типа игрок PlayerIdentity p_identity = player.GetIdentity(); string p_name = p_identity.GetName(); int p_id = p_identity.GetPlayerId(); if( p_identity ) { string uid_pl = p_identity.GetPlainId(); if (m_playersSetUID.Contains(uid_pl)) { numSet = m_playersSetUID.Get(uid_pl); } } itemEnt = player.GetInventory().CreateInInventory("Rag"); itemBs = ItemBase.Cast(itemEnt); itemBs.SetQuantity(4); SetRandomHealth(itemEnt); itemEnt = player.GetInventory().CreateInInventory("RoadFlare"); itemBs = ItemBase.Cast(itemEnt); switch( numSet ) //Раздаем лут { case 1: //ADMIN { player.RemoveAllItems(); player.GetInventory().CreateInInventory("CoyoteBag_Green"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("TTSKOPants"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("TTsKOJacket_Camo"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("CombatBoots_Black"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("CombatKnife"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("FNX45"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("Mag_AKM_30Rnd"); itemBs = ItemBase.Cast(itemEnt); player.GetInventory().CreateInInventory("Mag_AKM_30Rnd"); itemBs = ItemBase.Cast(itemEnt); itemEnt = player.GetInventory().CreateInInventory( "akm" ); itemEnt.GetInventory().CreateAttachment( "PSO11Optic" ); itemEnt.GetInventory().CreateAttachment( "AK_WoodBttstck" ); itemEnt.GetInventory().CreateAttachment( "AK_WoodHndgrd" ); itemEnt.GetInventory().CreateAttachment( "AK_Suppressor" ); itemEnt = player.GetInventory().CreateInInventory("Rag"); itemBs = ItemBase.Cast(itemEnt); itemBs.SetQuantity(4); itemEnt = player.GetInventory().CreateInInventory("RoadFlare"); itemBs = ItemBase.Cast(itemEnt); player.SetHealth("","",1000); //ТЕСТ //SetAllowDamage НЕ РАБОТАЕТ ДЛЯ ОНЛАЙНА - БОГЕМЦЫ ВЫКЛЮЧИЛИ //Тут обсуждение - https://forums.dayz.com/topic/240028-pve-server-disable-pvp-damage/ //Есть идея насчет доработки кода обрабатывающего нанесение урона player.SetAllowDamage(false); break; } case 2: { break; } case 3: { break; } case 4: { break; } case 5: { break; } case 6: { break; } } } Вот как-то так
       
      На основе этого можно построить свою более развитую систему, например загружая координаты для кастомного спавн лута,  расстановки зданий и тп
       
       
    • By 123new
      В данной теме напишу простенький гайд о том, как самому добавить/изменить время существования трупа умершего игрока на своем собственном сервере DayZ.
       
      Гайд пригодится тем, кто сам делает свою сборку сервера, либо по каким-то причинам пользуется не моей сборкой сервера (где это уже сделано), а чьей-либо еще. Обращаю ваше внимание на тот факт, что часть файлов, описанных в гайде, у вас могут уже быть вынесены в другое место или названы несколько иначе (это зависит от сборки сервера, которую вы используете, например, в сборке dankdayz вся mpmissions вынесена в отдельный файл в addons сервера), гайд основывается на чистых серверных файлах игры и отталкивается от них.
      Гайд сделан для версий игры с серверной частью 0.60-0.62, но может быть совместим и с другими версиями игры, если файлы серверной части игры не поменяли своего текущего месторасположения и содержания. Гайд составлен по версии серверных файлов игры 0.62 чистой "девственной" и не правленой никем версии игры.
      Напоминаю заранее, в моих серверных файлах версий 0.60, 0.61 и 0.62 из моих гайдов на данном форуме это уже сделано и делать это не нужно!!!
       
      Данный гайд с данной темы будет дополнением к гайду из темы
      И подразумевает, что данный гайд был вами уже выполнен, процедура event_playerKilled уже обозначена и вынесена в файл event_playerKilled.sqf, а сам файл существует у вас в папке по такому пути: "Mpmissions\{папка с активной "MpMissions}\scripts\events\event_playerKilled.sqf"
      Также, он потребует наличия файла event_playerKilled.sqf, вынесенного в MpMissions вами из Addons сервера игры и активированного на вашем сервере.
      Если такого файла или папок у вас нет, смотрите выше указанную тему о том, как его вынести!
       
      Нам понадобятся:
      1. Notepad++ https://notepad-plus-plus.org/download/
      2. Ваши серверные файлы игры с вынесенным в "Mpmissions" файлом "event_playerKilled.sqf"
       
      И так, приступим.
      1. Открываем в Notepad++ фаш файл "event_playerKilled.sqf". У меня он находится по пути: "Mpmissions\{папка с активной "MpMissions}\scripts\events\event_playerKilled.sqf"
      2. В конце файла находим
      dbDestroyCharacter [_uid, _agent]; или
      dbDestroyCharacter _agent; или
      deletevehicle _agent; и удаляем ее, либо комментируем ее символом "//", так чтобы получилось вот так, например:
      //dbDestroyCharacter [_uid, _agent]; 3. На место найденной строки добавляем код:
      null = [_agent, DZ_TIME_DELETE_DEAD_PLAYER,_uid ] spawn { private["_agent","_uid","_time_dead_player_delete"]; _agent = (_this select 0); _time_dead_player_delete = (_this select 1); _uid = (_this select 2); sleep _time_dead_player_delete; deletevehicle _agent; diag_log format ["Dead agent %1 player with UID %3 is deleted in timestamp %2!",_agent, time,_uid]; }; 4. Открываем вашу "Mpmissions", далее папку с активной "MpMissions", и открываем файл "init.sqf" в Notepad++. Добавляем в любом месте файла (лучше всего в начале или после после "simulWeatherSync;") следующее:
      DZ_TIME_DELETE_DEAD_PLAYER = 300; // Время в секундах до удаления трупов мертвых игроков. Где 300 - 5 минут в секундах
    • By DrTauren
      Этот скрипт добавит туман в ночное время. Тот же самый что когда-то добавляли на серверах Arma2. 
      Он появляется вокруг игроков и машин при условии что игрок сидит внутри.
       
      Инструкция:
      1) Создаём файл ground_fog.sqf со следующим содержимым:
      // Ground Fog - TorturedChunk - Kaysi - mmmyum @ OpenDayZ.net //Modify By CNSU waitUntil {!isNull player};                                                                                                                                                                                                                                                                                                                                                                                      doofog = { private ["_obj","_pos","_fog1","_fog2","_fog3","_inVehicle"];         _inVehicle = (vehicle player != player);           if (_inVehicle) then {             _obj = (vehicle player);         } else {             _obj = player;         };           _pos = position _obj;           _fog1 = "#particlesource" createVehicleLocal _pos;         _fog1 setParticleParams [         ["\A3\Data_F\ParticleEffects\Universal\universal.p3d" , 16, 12, 13, 0], "", "Billboard", 1, 10,             [0, 0, -6], [0, 0, 0], 1, 1.275, 1, 0,             [7,6], [[1, 1, 1, 0], [1, 1, 1, 0.04], [1, 1, 1, 0]], [1000], 1, 0, "", "", _obj         ];         _fog1 setParticleRandom [3, [55, 55, 0.2], [0, 0, -0.1], 2, 0.45, [0, 0, 0, 0.1], 0, 0];         _fog1 setParticleCircle [0.001, [0, 0, -0.12]];         _fog1 setDropInterval 0.01;           _fog2 = "#particlesource" createVehicleLocal _pos;         _fog2 setParticleParams [         ["\A3\Data_F\ParticleEffects\Universal\universal.p3d" , 16, 12, 13, 0], "", "Billboard", 1, 10,             [0, 0, -6], [0, 0, 0], 1, 1.275, 1, 0,             [7,6], [[1, 1, 1, 0], [1, 1, 1, 0.04], [1, 1, 1, 0]], [1000], 1, 0, "", "", _obj         ];         _fog2 setParticleRandom [3, [55, 55, 0.2], [0, 0, -0.1], 2, 0.45, [0, 0, 0, 0.1], 0, 0];         _fog2 setParticleCircle [0.001, [0, 0, -0.12]];         _fog2 setDropInterval 0.01;           _fog3 = "#particlesource" createVehicleLocal _pos;         _fog3 setParticleParams [         ["\A3\Data_F\ParticleEffects\Universal\universal.p3d" , 16, 12, 13, 0], "", "Billboard", 1, 10,             [0, 0, -6], [0, 0, 0], 1, 1.275, 1, 0,             [7,6], [[1, 1, 1, 0], [1, 1, 1, 0.04], [1, 1, 1, 0]], [1000], 1, 0, "", "", _obj         ];         _fog3 setParticleRandom [3, [55, 55, 0.2], [0, 0, -0.1], 2, 0.45, [0, 0, 0, 0.1], 0, 0];         _fog3 setParticleCircle [0.001, [0, 0, -0.12]];         _fog3 setDropInterval 0.01;           _this setVariable ["playerfog", floor time + 5];           sleep 120;           deleteVehicle _fog1;         deleteVehicle _fog2;         deleteVehicle _fog3;     }; [] spawn {     while {true} do {         if(daytime < 7 || daytime > 19) then {             if (player getVariable ["playerfog", -1] < time) then {                 player setVariable ["playerfog", floor time + 5];                 player spawn doofog;                 sleep 120;             };         };     }; }; 2) Сохраняем его в любое место в папке вашей миссии. Например в корневую папку миссии
      3) Открываем файл init.sqf и добавляем эту строку:
      _GF = [] execVM "ground_fog.sqf";  
  • Our picks

×
×
  • 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.