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

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

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

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

    Там вы можете продать или купить
    Всё что касается игровых серверов

Вопрос

:geek: Опять я со своими глупыми вопросами...

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

Вопрос вдогонку: возможно ли сделать, чтобы огороды не обнулялись при рестарте, а сохранялись в БД, как постройки и палатки?

Где вообще параметры времени выращивания искать?

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


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

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

  • 0

VIRrusR 
Что бы огурцы твои не пропадали в файл types.xml добавь это

    <type name="GardenPlot">
        <lifetime>3888000</lifetime>
        <flags count_in_cargo="0" count_in_hoarder="0" count_in_map="1" count_in_player="0" crafted="1" deloot="0"/>
    </type>

Стоять будет также как и палатки 

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


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


  • 0

adler14k ,спасибо! Но это увеличение "времени жизни" огорода. А нужно изменить время созревания урожая. Кстати, в чём измеряется liftime? Секунды, миллисекунды, минуты?..

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


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

123new , благодарю. Насколько я понимаю, если "время жизни" объекта превышает время до рестарта, то он сохраняется? Просто хочу быть уверен на 100%.

И кто-нибудь, пожалуйста, подскажите какие параметры в каких файлах отвечают за время роста с/х культур?

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

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


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

scripts\4_world\entities\gardenbase\plantbase.c

 

    int     m_DeleteDryPlantTime;             // For how long in seconds can an unwatered plant exist before it disappears
    int     m_SpoiledRemoveTime;            // For how long in seconds a spoiled plant will exist
    int     m_FullMaturityTime;                // How much time needs plant to be full grown in seconds
    int     m_SpoilAfterFullMaturityTime;    // How long in seconds it takes for plant to be spoiled after it is full grown
    int     m_StateChangeTime;                // For how long in seconds will plant stay in one state before its going to next state

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


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

bergaut , огромнейшее спасибо! Я уж думал, что никто не подскажет - всех больше пулемёты интересуют, знаете ли...:smile: 

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


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

VIRrusR А нас рпшников интересует другое))) Как скрипт сделаешь отпиши пжплста, тоже на вооружение возьму.

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


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

bergaut ,извиняюсь за задержку с ответом - был лишен возможности писать сообщения...

Сразу предупреждаю, что я не разбираюсь в программировании и просто потихоньку пытаюсь отследить логику скриптов с помощью здравого смысла и переводчика Google, благо, что БИСовы дети используют в именах классов, функций и переменных читаемые английские слова, в основном. 

Так что  за то, что всё понял правильно ручаться не могу...

 

Итак, собственно настройки времени роста с/х культур задаются именно там, где Вы и указывали: scripts\4_world\entities\gardenbase\plantbase.c

Скрипт на самом деле необычно простой. Собственно, "печка" от которой всё пляшет:

float divided = (float) ((60 * 5) + Math.RandomInt(0, 60 * 1)) / fertility;
		m_FullMaturityTime = divided;
		
		divided = (float)((60 * 30) + Math.RandomInt(0, 60 * 30)) * fertility;
		m_SpoilAfterFullMaturityTime = divided;

m_FullMaturityTime  -время полного созревания растения. Определяется значением переменной "divided". Если отбросить всякие "рандомизаторы-модификаторы", то это 60х5=300 (секунд), т.е. пять минут. Очевидно, что "60" - это задание единиц измерения, в нашем случае это минута, а "5" - количество этих самых минут, требующихся для полного созревания урожая. Меняя второй множитель, определяем длительность созревания для основной последовательности (вскопал, удобрил, посеял, полил), хоть неделю!

 

m_SpoilAfterFullMaturityTime  -время, требующееся для "загнивания" неубранного урожая. Параметр тем более важный, чем большую длительность созревания Вы устанавливаете - из-за того, что есть ещё всякие модификаторы, вносящие отклонения по времени созревания. У меня отклонения от заданного времени созревания достигали двадцати процентов! Это мало значимо, если у Вас задано время созревания, скажем, час - отклонение может составить минут 10...12, а по умолчанию урожай "сгниёт" только через пол часа, т.е. есть запас времени на "жатву". Но если Вы настраиваете время созревания на, скажем, сутки? 1440/5=288, т.е. почти 5 часов! Неслабо?.. Поэтому следует настроить задержку "гниения" на период, перекрывающий возможные отклонения по срокам созревания урожая с запасом, скажем часов на 6...6,5.

 

Подчеркну, что скрипт работает в абсолютном времени ,т.е. хоть у Вас на сервере serverTimeAcceleration=1, хоть 12, по умолчанию, урожай созревает за пять минут, а портится - за пол часа.

 

P.S. Следует учитывать также, что если Вы хотите значительно увеличить время созревания посевов, то нужно увеличить "время жизни" самого огорода в файле types.xml ,оно должно быть больше времени созревания урожая и времени задержки гниения вместе взятых.

 

P.P.S. В скрипте ещё куча "модификаторов" - погода, отклонения от полной последовательности (не полил или не удобрил) и т.д. и т.п. Я в это не лез и не полезу, ибо не интересно, да и, насколько я понимаю, не особо на что влияет.

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

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


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

Подскажите пожалуйста , где найти этот файл scripts\4_world\entities\gardenbase\plantbase.c  или хотя бы путь к нему , я перерыл все , но без результатов

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


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

violets444 C:\Program Files (x86)\Steam\steamapps\common\DayZServer\dta .....файл scripts.pbo который надо распаковать ,а после изменения-запОковать.

 

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


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

violets444 C:\Program Files (x86)\Steam\steamapps\common\DayZServer\dta .....файл scripts.pbo который надо распаковать ,а после изменения-запОковать.

 

Я правильно понимаю, если я внесу изменения в scripts.pbo и обратно запакую его , то мне нужно будет произвести какие то манипуляции с файлом ключа scripts.pbo.dayz.bisign  ?!

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


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

Я правильно понимаю, если я внесу изменения в scripts.pbo и обратно запакую его , то мне нужно будет произвести какие то манипуляции с файлом ключа scripts.pbo.dayz.bisign  ?!

это зависит от того как сервер настроен.
можно сделать так:
1. распаковываем scripts.pbo и получаем папку scripts

2. папку scripts перемещаем в корень сервера

3. В параметры запуска сервера добавляем -FilePatching

и ругаться не будет. и запаковывать в пбо назад не надо.

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


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

violets444 в рараметр запуска сервера добавить      -filepatching

 scripts.pbo можно не паковать а его содержимое поместить в папку scripts в корневой папке сервера

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

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


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

violets444 я кстати тож планировал это все сделать, но время роста установить сутки

 

Вот только как на это повлияет рестарт

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


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

violets444 я кстати тож планировал это все сделать, но время роста установить сутки

 

Вот только как на это повлияет рестарт

Надо увеличить время жизни грядки и увеличить время на процесс гниения, чтобы время на процесс роста вписывалось в эти диапазоны

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


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

 А сейчас это так же работает? 

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

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


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

 А сейчас это так же работает? 

работает но при условии отключения параметра verifysignatures=0; так как разработчики игры чето сломали.

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


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

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

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

Гость
Ответить на вопрос...

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

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

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

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

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

Загрузка...

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