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

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

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

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

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

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

В данной теме опубликую скриптик, который уже давно лежит на форуме в разделе помощи. Информация обновления для версии 1.0

 

Установка:

1. Открываем Mpmissions - dayzOffline.chernarusplus - init.c
2. В самом начале файла добавляем:

#include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\Correct_InGame_time.c" 

Находим блок функции

void main()

и перед закрывающей скобкой в конце этого блока '}' добавляем:

GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(Correct_InGame_time, 1000, true);   

где 1000 - 1 секунда
3. Создаем вручную файл с именем "Correct_InGame_time.c" и заполняем его следующим текстом:

static void Correct_InGame_time()
{
	private int year, month, day, hour, minute;
	GetGame().GetWorld().GetDate( year, month, day, hour, minute );
	
		if (hour < 7)
		{
			GetGame().GetWorld().SetDate(year, month, day, 7, 3);
		}
		if (hour >= 20)
		{
			GetGame().GetWorld().SetDate(year, month, (day + 1), 7, 3);
		}
}

4. Настраиваем файл как нам нужно. Т.е. как видим, с 7 утра и до 8 вечера время на сервере внутриигровое не трогается, при наступлении от 20:00 и до 7 утра у нес автопромотка на 7:03 утра идет.

 

Тупо, банально, дешево, но работает.

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


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





123new Тобиш ночи почти нету ? о_О ну там будет конечно часа 2 где то может 3 с 7 утра до 9 так получается!?

 

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


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

все понял разобрался протестил скрипт бомба!

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


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

кстати а как тут значение выставлять не понял что то.

serverNightTimeAcceleration=0;  // Дополнительное ускорение времени ночью (значения 0.1-64). Оно добавляет ускорение времени к serverTimeAcceleration.

Это если без скрипта ночь контролить и ускорить ее. 

И да почему то уже в 16:00 по МСК у меня со скриптом ночь... не понятно почему.. время выставлено системное. 

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


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

кстати а как тут значение выставлять не понял что то.

serverNightTimeAcceleration=0;  // Дополнительное ускорение времени ночью (значения 0.1-64). Оно добавляет ускорение времени к serverTimeAcceleration.

Это если без скрипта ночь контролить и ускорить ее. 

И да почему то уже в 16:00 по МСК у меня со скриптом ночь... не понятно почему.. время выставлено системное. 

ты уж определись что ты хочешь. если про serverNightTimeAcceleration, так не в этой ветке быть этому вопросу. Если про скрипт, то смотрите настройку скрипта

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


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

123new про парамет serverNightTimeAcceleration  время этого (значения 0.1-64)  просто в одном посте про два момента уточнил..

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

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


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

Ставите 7 утра и 14, после 14 ставится сразу 7 утра, прикольно, все работает нормально.

 

Вот если бы сделать еще чтоб ясная погода постоянно была, вообще было бы супер

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


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

Ставите 7 утра и 14, после 14 ставится сразу 7 утра, прикольно, все работает нормально.

 

Вот если бы сделать еще чтоб ясная погода постоянно была, вообще было бы супер

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

 

dayzserver\dta\scripts\3_Game\weather.c - редактируй и будет тебе счастье.

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

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


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

AntonivkA не надо советовать не подумав

как бы погода по умолчанию берется именно с weather.c, о чем написано в init.c

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

ну конечно можно в init.c отредактировать, после смены weather.MissionWeather(false); на true но это по выбору.

 

 

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

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


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

AntonivkA Хорошая погода ВСЕГДА делается так в init.c

 

	weather.GetOvercast().Set(0, 0, 0);
	weather.GetRain().Set(0, 0, 0);
	weather.GetFog().Set(0, 0, 0);

И не надо лазить в нативный класс погоды

 

Там вообще статика в основном

 

что в weather.c вообще правил?

 

функцию OnBeforeChange ?

 

 

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


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

Там вообще статика в основном

 

ошибаешься.

 

1 час назад, BorizzK сказал:

 


	weather.GetOvercast().Set(0, 0, 0);
	weather.GetRain().Set(0, 0, 0);
	weather.GetFog().Set(0, 0, 0);

 

вот это и будет статикой, если прописать в init.c

 

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

что в weather.c вообще правил?

почти все.

 

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

функцию OnBeforeChange ?

ее и время изменения.

плюс изменили и добавили некоторые условия.

 

 

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


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

AntonivkA А смысл?

Вы прям ее правили?

Не догадались создать modded class ?

 

Выше - цитата: еще чтоб ясная погода постоянно была

weather.GetOvercast().Set(0, 0, 0);

weather.GetRain().Set(0, 0, 0);

weather.GetFog().Set(0, 0, 0);

 

Оно именно это и делает

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

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


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

AntonivkA А смысл?

Вы прям ее правили?

Не догадались создать modded class ?

Смысл в разнообразии и отличной от разрабов логикой работы.

можно было создать, но пока так.

 

3 часа назад, BorizzK сказал:

Выше - цитата: еще чтоб ясная погода постоянно была

weather.GetOvercast().Set(0, 0, 0);

weather.GetRain().Set(0, 0, 0);

weather.GetFog().Set(0, 0, 0);

 

Оно именно это и делает

да я не спорю и не отрицаю.

я не подумал об init.c, когда направил человека ковырять weather.c, поскольку сам забил на параметры погоды в init.c и правлю в weather.c. но это никак не относится к высказыванию "не надо советовать не подумав", поскольку и тут и там добиваешься нужного результата.

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

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


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

Спасибо за погоду. Все работает.

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


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

сделал по гайду погоду но льют дожди и туман постоянно 
какую дату поставить кто подскажет?

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


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

ИМХО, скрипт погоды перемещн в другое место, для изменений нужно менять его....
Хотя бы в плане соотношения "хорошая-плохая" погода.

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


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

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

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

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

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

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

Войти

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

Войти сейчас

  • Похожие публикации

    • Автор: 123new
      В данной теме опубликую скриптик, который уже давно лежит на форуме в разделе помощи.
       
      Установка:
      1. Открываем Mpmissions - dayzOffline.chernarusplus - init.c
      2. В самом начале файла добавляем:
      #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\Correct_InGame_time.c" И после строки
      weather.SetWindFunctionParams(0, 0, 0); добавляем:
      GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(Correct_InGame_time, 1000, true); где 1000 - 1 секунда
      3. Создаем вручную файл с именем "Correct_InGame_time.c" и заполняем его следующим текстом:
      static void Correct_InGame_time() { private int year, month, day, hour, minute; GetGame().GetWorld().GetDate( year, month, day, hour, minute ); if (hour < 7) { GetGame().GetWorld().SetDate(year, month, day, 7, 3); } if (hour >= 20) { GetGame().GetWorld().SetDate(year, month, (day + 1), 7, 3); } } 4. Настраиваем файл как нам нужно. Т.е. как видим, с 7 утра и до 8 вечера время на сервере внутриигровое не трогается, при наступлении от 20:00 и до 7 утра у нес автопромотка на 7:03 утра идет.
       
      Тупо, банально, дешево, но работает.
    • Автор: Golf777
      Доброго времени суток, мне бы хотелось узнать,как сделать так,что бы день шел 3 часа,а ночь 1 час, но не устанавливая никаких скриптов дополнительно.
      Заранее спасибо!
  • Наш выбор

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

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

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