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
DrTauren

Ускоряем время в игре (меняем длительность дня\ночи)

Recommended Posts

4 часа ночи, а я гайды перевожу. До чего дожили?  :laugh: 

Короче этот скрипт позволит вам управлять игровым временем. То есть вы сможете ускорить день, ночь и т.д. Очень полезная вещь, знаю что многие искали.

Изначальная длительность времён суток в скрипте:
День: 60 минут
Рассвет\закат: 36 минут
Ночь: 24 минуты

 

Инструкция:
1)
В папке миссии делаем папку custom и создаём там файл time_control.sqf в который вставляем этот код:

donn_sleep = 0.2;
donn_multi = 2;
drn_fnc_DynamicWeather_SetWeatherLocal = {};
0 setOvercast 0;
0 setFog 0.05;

if (!isDedicated) then {
    "cad_pvar_server_date" addPublicVariableEventHandler {(_this select 1) call donn_setdate;};
    donn_setdate = {
        private ["_dateSer","_dateCli","_date_diff"];
        donn_speed = _this select 1;
        0 setOvercast 0;
        _dateSer = dateToNumber (_this select 0);
        _dateCli = dateToNumber date;
        _date_diff = (_dateSer-_dateCli)*12*31*24;
        if (abs _date_diff > 5/60) then {setDate (_this select 0);};
    };
};

[] spawn { //LAST CHANGE WAS IN THIS SPAWN
    private ["_tm","_tmLen"];
    _tm = diag_tickTime;
    waitUntil {!isNil "donn_speed"};
    while {true} do {
        sleep donn_sleep;
        _tmLen = diag_TickTime - _tm;
        _tm = _tm + _tmLen;
        skipTime ((_tmLen*(donn_speed*donn_multi-1))/3600);
    };
};

if (!isDedicated) then {
    [] spawn {
        for "_x" from 1 to 10 do {
            "infiSTAR_SetDate" addPublicVariableEventHandler {};
            "PVDZE_plr_SetDate" addPublicVariableEventHandler {};
            cad_pvar_send_owner = player;
            publicVariableServer "cad_pvar_send_owner";
            sleep 0.5;
        };
    };
};

2) Открываем init.sqf и ищем эти строки:

//Start Dynamic Weather
execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

и заменяем их на эти:

//Start Dynamic Weather
//execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

3) Всё в этом же файле добавляем в самый низ это:

call compile preprocessFileLineNumbers "custom\time_control.sqf";

4) В dayz_server.pbo находим файл server_functions.sqf и в самый конец добавляем:

initialSend = false;
donn_server_timeSync = server_timeSync;
server_timeSync = {if (!initialSend) then {[] call donn_server_timeSync;}; initialSend = true;};
[] spawn {
    waitUntil {initialSend};
    while {true} do {
        _dayTime = dayTime;
        //========================TIME FUNCTION============================
        if (_dayTime >= 8 && _dayTime <= 16) then {donn_speed = 4.000;};
        if (_dayTime > 4 && _dayTime < 8) then {donn_speed = 6.666;};
        if (_dayTime > 16 && _dayTime < 20) then {donn_speed = 6.666;};
        if (_dayTime <= 4 || _dayTime >= 20) then {donn_speed = 10.000;};
        //=================================================================
        cad_pvar_server_date = [date, donn_speed];
        publicVariable "cad_pvar_server_date";
        sleep 30;
    };
};
"cad_pvar_send_owner" addPublicVariableEventHandler {
    cad_pvar_server_date = [date, donn_speed];
    owner (_this select 1) publicVariableClient "cad_pvar_server_date";
};


Фикс фильтров BattlEye:
Открываем publicvariable.txt, ищем строку, начинающуюся с 5 "" и в конец вставляем это: (да, вместе с пробелом вначале!!)

!"cad_pvar_s"

Share this post


Link to post
Share on other sites



можно и с родным DynamicWeatherEffects.sqf

при смене времени меняется и погода это может вызвать падение фпс (люди еще и на ноутах умудряются в эпоч играть)

 

нужно удалить две строки 

 

 

0 setOvercast 0;
0 setFog 0.05;

 

Share this post


Link to post
Share on other sites

можно и с родным DynamicWeatherEffects.sqf

при смене времени меняется и погода это может вызвать падение фпс (люди еще и на ноутах умудряются в эпоч играть)

 

нужно удалить две строки 

 

 

0 setOvercast 0;

0 setFog 0.05;

 

:D а если у людей нету компа?) + ноут если нормальный на максимальных 70 -80 фпс

Share this post


Link to post
Share on other sites

 

можно и с родным DynamicWeatherEffects.sqf

 

А в чем будет разница, между его полным отключением и удалением тех двух строк?

Share this post


Link to post
Share on other sites

И еще вопрос - где редактировать длительность?

Допустим сделать день 130 минут, сумерки\рассвет 20 минут и ночь 90 минут

Share this post


Link to post
Share on other sites

И еще вопрос - где редактировать длительность?

Допустим сделать день 130 минут, сумерки\рассвет 20 минут и ночь 90 минут

http://s-platoon.ru/index.php?/topic/1331-gaid-smena-dnia-i-nochi/

 

вот тут табличка есть :whistling:

Share this post


Link to post
Share on other sites

Действительно. ФПС просел со стабильных 60 до нестабильных 30-40.

Пичалька.

Убрал срикпт.

Share this post


Link to post
Share on other sites

Да,фпс садит ровно наполовину....(((

Share this post


Link to post
Share on other sites

а как задать своё время дня и ночи? ссылка с табличкой не рабочая

Share this post


Link to post
Share on other sites

Два вопроса... В папке инит у меня нет данных строк:
 

//Start Dynamic Weather

execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

 

куда тогда вставить это?

 

//Start Dynamic Weather

//execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

И вопрос второй...

В Бтлай вставить нужно:

!"cad_pvar_s"

в строчку какую из?)

 

//new
5 "" !"PVDZE_" !"norrn" !"usec" !="remExField" !="remExFP" !="drn_AskServerDynamicWeatherEventArgs" !="norrinRAlie" !="BIS_effects_gepv" !="dayzPlayerLogin" !="dayzPlayerLogin2" !"PVAHR_" !="PVAH_AdminReq" !="PVAH_WriteLogReq" !="currentInvites" !="PVDZE_queryGarageVehicle" !="PVDZE_storeVehicle" !="PVDZE_spawnVehicle" !="currentInvites" !"cad_pvar_s" !="axeLampObjects" !="dayzHeliEvac" !="HCrequest_spawnRCV" !="HCsignalRCV" !="HCsignal" !="HClist" !="HCdo_spawn" !="HCrequest_spawn" !="clothesTaken" !="owner_B1" !="owner_B2" !="owner_B3" !="owner_H1" !="owner_H2" !="owner_H3" !="owner_SG" !="owner_LG" !="owner_KING" !="owner_SH" !="OriginsLockUnlock" !="Detain" !="PVDZ_ply_Arrst"
5 "norrn" !="norrnRACarUp" !="norrnRAPicUp" !="norrnRaDrag" !="norrnR180" !="norrnRalie" !="norrnRLact" !="norrnRALW" !="norrnRDead"
5 "usec" !="usecMorphine" !="usecBandage" !="usecBleed"
5 "PVDZE_" !"PVDZE_player" !="PVDZE_send" !="PVDZE_log_lockUnlock" !="PVDZE_Server_Simulation" !="PVDZE_veh_Update" !="PVDZE_plr_GutBody" !="PVDZE_plr_GutBodyZ" !="PVDZE_veh_Lock" !="PVDZE_plr_DeathB" !="PVDZE_maintainArea" !="PVDZE_obj_Publish" !="PVDZE_obj_Swap" !="PVDZE_plr_Save" !="PVDZE_obj_Delete" !="PVDZE_obj_Trade" !="PVDZE_veh_Publish2" !="PVDZE_zed_Spawn" !="PVDZE_plr_Died" !="PVDZE_plr_TradeMenu" !="PVDZE_veh_Upgrade" !="PVDZE_atp" !="PVDZE_plr_Login" !="PVDZE_plr_Login2" !="PVDZE_plr_LoginRecord" !="PVDZE_plr_DeathBResult" !="PVDZE_veh_SFix" !="PVDZE_plr_Hit" !="PVDZE_plr_HitV" !="PVDZE_veh_SFuel" !="PVDZE_plr_HideBody" !="PVDZE_plr_Morph" !="PVDZE_veh_Publish" !="PVDZE_plr_Characters" !="PVDZE_lockVault" !="PVDZE_obj_setlocalVars" !="PVDZE_obj_getlocalVars" !="PVDZE_EvacChopperFieldsUpdate" !="PVDZE_bank_Save" !="PVDZE_account_Doublecheck" !="PVDZE_veh_Colour"
5 "PVAHR_" !"PVAHR_0_"
1 "PVAH"
5 "remExFP" !="\"remExFP\" = \[,,\"per\",\"execVM\",\"ca\\Modules\\Functions\\init.sqf\"\]" !"\[,,\"per\",\"execVM\",\"ca\\Modules\\Functions\\init.sqf\"\]"
5="player"
5="server"
5 "fnc_plyrHit"
5 "AntiHack"
1 "Delete"

Edited by Goldbery (see edit history)

Share this post


Link to post
Share on other sites

Короче //Start Dynamic Weather

//execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

кинул в самый низ в Init, а в Бтлай ничего не вписывал. все работает)

Share this post


Link to post
Share on other sites

Короче //Start Dynamic Weather

//execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

кинул в самый низ в Init, а в Бтлай ничего не вписывал. все работает)

у тебя строчки закомментированы.... их можно не вставлять...

Share this post


Link to post
Share on other sites

Други, подскажите в чем беда? 1.0.6.1

РПТ.

donn_server_timeSync = server_timeSync;
server_timeSync = {if (>
13:53:54   Error position: <server_timeSync;
server_timeSync = {if (>
13:53:54   Error Undefined variable in expression: server_timesync
13:53:54 File z\addons\dayz_server\init\server_functions.sqf, line 272
13:53:55 BIKE: loading version 2.8.2 ...

server_functions.sqf   270-294

/* 1484-uskoryaem-vremya-v-igre-menyaem-dlitelnost-dnyanochi
initialSend = false;
donn_server_timeSync = server_timeSync;
server_timeSync = {if (!initialSend) then {[] call donn_server_timeSync;}; initialSend = true;};
[] spawn {
    waitUntil {initialSend};
    while {true} do {
        _dayTime = dayTime;
        //========================TIME FUNCTION============================
        if (_dayTime >= 8 && _dayTime <= 16) then {donn_speed = 4.000;};
        if (_dayTime > 4 && _dayTime < 8) then {donn_speed = 6.666;};
        if (_dayTime > 16 && _dayTime < 20) then {donn_speed = 6.666;};
        if (_dayTime <= 4 || _dayTime >= 20) then {donn_speed = 10.000;};
        //=================================================================
        cad_pvar_server_date = [date, donn_speed];
        publicVariable "cad_pvar_server_date";
        sleep 30;
    };
};
"cad_pvar_send_owner" addPublicVariableEventHandler {
    cad_pvar_server_date = [date, donn_speed];
    owner (_this select 1) publicVariableClient "cad_pvar_server_date";
};

*/1484-uskoryaem-vremya-v-igre-menyaem-dlitelnost-dnyanochi

 

Edited by Plut (see edit history)

Share this post


Link to post
Share on other sites

Plut неизвестная переменная server_timesync

Share this post


Link to post
Share on other sites
4 часа назад, Loker сказал:

Plut неизвестная переменная server_timesync

)))) спс, бро!   Пожалуй буду предметней в вопросах. 

Почему она неизвестная, если в гайде про нее ни слова?

Как ее добавить или адаптировать под 1.0.6.1 ? 

Share this post


Link to post
Share on other sites

Plut  Потому, что в 106 переменная "server_timesync" заменена на "sched_sync". Попробуй просто Search & Replace в редакторе.

Ещё в time_control.sqf заменить PVDZE_plr_SetDate --> dayzSetDate.

Edited by W0LF (see edit history)

Share this post


Link to post
Share on other sites
17 часов назад, W0LF сказал:

Plut  Потому, что в 106 переменная "server_timesync" заменена на "sched_sync". Попробуй просто Search & Replace в редакторе.

Ещё в time_control.sqf заменить PVDZE_plr_SetDate --> dayzSetDate.

 

За переменную спасибо. Сразу не додумался в лог изменений посмотреть. Но все же проблема не ушла. Подскажите ? 

11:15:36 Error in expression <ialSend = false;
donn_server_timeSync = sched_sync;
sched_sync = {if (!initialSe>
11:15:36   Error position: <sched_sync;
sched_sync = {if (!initialSe>
11:15:36   Error Undefined variable in expression: sched_sync
11:15:36 File z\addons\dayz_server\init\server_functions.sqf, line 272

 

Share this post


Link to post
Share on other sites

Если интересно, то попробовал исправить следующем образом, объявив переменную server_timeSync чуть выше. 

/* // 1484-uskoryaem-vremya-v-igre-menyaem-dlitelnost-dnyanochi

server_timeSync = {
    //Send request
    private ["_hour","_minute","_date","_key","_result","_outcome"];
    _key = "CHILD:307:";
    _result = _key call server_hiveReadWrite;
    _outcome = _result select 0;
    if(_outcome == "PASS") then {
        _date = _result select 1; 
       
        if(dayz_fullMoonNights) then {
            _hour = _date select 3;
            _minute = _date select 4;
            //Force full moon nights
            _date = [2013,8,3,_hour,_minute];
        };

        setDate _date;
        PVDZ_plr_SetDate = _date;
        publicVariable "PVDZ_plr_SetDate";
        diag_log ("TIME SYNC: Local Time set to " + str(_date));  
    };
};

initialSend = false;
donn_server_timeSync = server_timeSync;
server_timeSync = {if (!initialSend) then {[] call donn_server_timeSync;}; initialSend = true;};
[] spawn {
    waitUntil {initialSend};
    while {true} do {
        _dayTime = dayTime;
        //========================TIME FUNCTION============================
        if (_dayTime >= 8 && _dayTime <= 16) then {donn_speed = 4.000;};
        if (_dayTime > 4 && _dayTime < 8) then {donn_speed = 6.666;};
        if (_dayTime > 16 && _dayTime < 20) then {donn_speed = 6.666;};
        if (_dayTime <= 4 || _dayTime >= 20) then {donn_speed = 10.000;};
        //=================================================================
        cad_pvar_server_date = [date, donn_speed];
        publicVariable "cad_pvar_server_date";
        sleep 30;
    };
};
"cad_pvar_send_owner" addPublicVariableEventHandler {
    cad_pvar_server_date = [date, donn_speed];
    owner (_this select 1) publicVariableClient "cad_pvar_server_date";
};


//1484-uskoryaem-vremya-v-igre-menyaem-dlitelnost-dnyanochi */

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

Share this post


Link to post
Share on other sites

Сделайте рабочий гайд плиз на 1061:smile:

Share this post


Link to post
Share on other sites

сервер вылетает с ошибкой Include file z\addons\dayz_server\system\mission_check.sql not foung при заходе на него

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 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 SPIRT
      В общем после недавнего обновления BattleEye стало выкидывать из игры с ошибкой BattleEye типа вам нужно перезагрузить игру. Хочу поделиться тем что помогло мне . Сразу говорю винда у меня пиратская .Итак начнем .
      1.Отключаемся от интернета.
      2.Вырубаем антивирус полностью.
      3.Заходим в Панель управления -- Администрирование -- Службы -- ищем Защита программного обеспечения --- останавливаем ее.
      4.Дальше идем по адресу диск С Windows -- System32  там надо найти два файла C7483456-A289-439d-8115-601632D005A0  перед этими цифрами могут стоять еще цифры но это не важно , удаляем их.
      5. Обратно запускаем Защита программного обеспечения. В правом нижнем углу появится надпись  что ваша Windows не является лицензионной.
      6. Перезагружаем комп - и активируем нашу винду, я активировал программой Windows 7 Loader . 
       
      У меня процесс сошел с мертвой точки со второй активации  , но согласитесь это лучше чем переустанавливать Windows 7 или переходить с любимой системы на 10 винду . Кому поможет ставим +  врепу. 
       
      PS в параметрах папок и поиска не забываем выставить  показывать скрытые файлы и папки !
       
    • By Krycyk
      Пытаюсь запустить Тавиану из контента Dayz Origins 1.8.3 на сервере Epoch 1.0.6.2. 
      Карта загружается нормально. Но есть одно большое но. А именно непонятное белое гигантское клетчатое строение которое отображается при определенных углах обзора. В каждом городе и даже за его пределами. Определить где у этой штуки центр или что-то подобное я не могу. Никто не сталкивался с подобным? В логах сервера нет ни одного конфликтного аддона со зданиями.
       

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

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

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
  • 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.