ServerBlockTicking/ru: Difference between revisions

From Vintage Story Wiki
(Created page with "== Блокировка тика ==")
(Created page with "{{Navbox/modding/ru|Vintage Story}}")
 
(5 intermediate revisions by the same user not shown)
Line 10: Line 10:
{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! Block
! Блокировать
! Behavior
! Поведение
! Condition
! Условие
! Probability
! Вероятность
|-
|-
| [[Soil]]
| [[Soil/ru|Почва]]
| Grows by 1 stage
| Растет на 1 этап
| If grass is surrounding it. Can be 1 block above or 1 block below.
| Если его окружает трава. Может быть на 1 блок выше или на 1 блок ниже.
| 1.0
| 1.0
|-
|-
| [[Farming#crops|Crops]]
| [[Farming/ru|Культуры]]
| Grows by 1 stage and cycles back to 1 when fully grown
| Растет на 1 стадию и возвращается к 1, когда полностью вырастет
| Has to be placed during world gen
| Должен быть размещен во время генерации мира
| 0.05
| 0.05
|-
|-
| [[Lava]]
| [[Lava/ru|Лава]]
| Burns combustible items nearby
| Сжигает горючие предметы поблизости
| 3 block radius around the air directly above lava. 4 block radius above that. 3 blocks above that. Lava is 1200 degrees. The block temperature
| Радиус 3 блока вокруг воздуха прямо над лавой. 4 радиуса блока выше этого. на 3 квартала выше. Лава 1200 градусов. Температура блока
drops by 100 degrees for each meter away from lava. If the block's burn temperature is lower than the temperature at that block position then the
падает на 100 градусов на каждый метр расстояния от лавы. Если температура горения блока ниже, чем температура в этом блоке, то
block will burn when lava is ticked.  
блок будет гореть, когда лава отмечена галочкой.  
| 1.0
| 1.0
|}
|}


== How long does it take ==
== Сколько времени это займет ==
Since blocks tick at random it's not entirely deterministic how long it will take for a block to receive a tick. However, here is some information to predict about when it should tick.  
Поскольку блоки тикают случайным образом, не совсем ясно, сколько времени потребуется блоку, чтобы получить тик. Тем не менее, вот некоторая информация, чтобы предсказать, когда он должен тикать.  


Every 50ms the server ticks chunks around the player. By default this is a 3 chunk radius including the chunk the player is currently standing in. That means each chunk ticks 20 times per second. Each tick loop, 16 blocks will be ticked. There are 32,768 blocks in a chunk. So that means there is a probability of 16/32768=0.00048828125 of ticking each time or 1/2048. So it will take on average 2048 tick loops for a particular block to tick. Blocks are ticked 20 times per second so it will take on average 2048/20=102.4 seconds for a block to tick.  
Каждые 50 мс сервер отмечает чанки вокруг игрока. По умолчанию это радиус из 3 фрагментов, включая фрагмент, в котором в данный момент находится игрок. Это означает, что каждый фрагмент тикает 20 раз в секунду. В каждом тиковом цикле будут отмечены 16 блоков. В чанке 32 768 блоков. Таким образом, это означает, что существует вероятность 16/32768 = 0,00048828125 тиков каждый раз или 1/2048. Таким образом, для тикания конкретного блока потребуется в среднем 2048 тиковых циклов. Блоки тикают 20 раз в секунду, поэтому для тика блока потребуется в среднем 2048/20 = 102,4 секунды.  


== Configuration ==
== Конфигурация ==
You can change the rate at which the server ticks by editing values in the serverconfig.json file.  
Вы можете изменить скорость, с которой сервер тикает, отредактировав значения в файле serverconfig.json.  


{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! Property
! Свойство
! Controls
! Элементы управления
! Default
! По умолчанию
|-
|-
| RandomTickDistance
| RandomTickDistance
| How many chunks around the player to tick
| Скольким чанкам вокруг игрока поставить галочку
| 3
| 3
|-
|-
| RandomTickSamples
| RandomTickSamples
| The number of blocks to tick each loop
| Количество блоков для галочки в каждом цикле
| 16
| 16
|-
|-
| RandomTickInterval
| RandomTickInterval
| How often the tick loop runs in milliseconds
| Как часто выполняется тиковый цикл в миллисекундах
| 50
| 50
|-
|-
| MaxRandomTicks
| MaxRandomTicks
| Max queued ticks to process each loop. You shouldn't ever need to touch this
| Максимальное количество тиков в очереди для обработки каждого цикла. Вам никогда не нужно прикасаться к этому
| 10000
| 10000
|}
|}
== Commands ==
== Команды ==
You can tick a block via the /tickblock command. For example, to tick the block you are standing on you can run the following:
Вы можете отметить блок с помощью команды /tickblock. Например, чтобы отметить блок, на котором вы стоите, вы можете запустить следующее:
/tickblock ~0 ~-1 ~0
/tickblock ~0 ~-1 ~0


{{Navbox/modding|Vintage Story}}
{{Navbox/modding/ru|Vintage Story}}

Latest revision as of 06:55, 21 February 2022

Other languages:

Эта страница проверялась в последний раз для версии Vintage Story 1.15.


Общее

По умолчанию сервер случайным образом проверяет блоки по всему миру каждые 50 мс. Отмечает радиус фрагмента вокруг игрока. Для каждого фрагмента случайным образом выбираются 16 блоков. У каждого блока спрашивают, хочет ли он получить игровой тик. Если он говорит «да», то местоположение блока будет поставлено в очередь для отметки. Каждый блок решает, что происходит, когда он получает тик, и это различно для каждого блока. Большинство блоков не получают тики. Ниже приведено краткое описание каждого блока, который получает тики, и того, что они делают.

Это не следует путать с общей частотой тиков сервера 33,33 мс.

Блокировка тика

Блокировать Поведение Условие Вероятность
Почва Растет на 1 этап Если его окружает трава. Может быть на 1 блок выше или на 1 блок ниже. 1.0
Культуры Растет на 1 стадию и возвращается к 1, когда полностью вырастет Должен быть размещен во время генерации мира 0.05
Лава Сжигает горючие предметы поблизости Радиус 3 блока вокруг воздуха прямо над лавой. 4 радиуса блока выше этого. на 3 квартала выше. Лава 1200 градусов. Температура блока

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

1.0

Сколько времени это займет

Поскольку блоки тикают случайным образом, не совсем ясно, сколько времени потребуется блоку, чтобы получить тик. Тем не менее, вот некоторая информация, чтобы предсказать, когда он должен тикать.

Каждые 50 мс сервер отмечает чанки вокруг игрока. По умолчанию это радиус из 3 фрагментов, включая фрагмент, в котором в данный момент находится игрок. Это означает, что каждый фрагмент тикает 20 раз в секунду. В каждом тиковом цикле будут отмечены 16 блоков. В чанке 32 768 блоков. Таким образом, это означает, что существует вероятность 16/32768 = 0,00048828125 тиков каждый раз или 1/2048. Таким образом, для тикания конкретного блока потребуется в среднем 2048 тиковых циклов. Блоки тикают 20 раз в секунду, поэтому для тика блока потребуется в среднем 2048/20 = 102,4 секунды.

Конфигурация

Вы можете изменить скорость, с которой сервер тикает, отредактировав значения в файле serverconfig.json.

Свойство Элементы управления По умолчанию
RandomTickDistance Скольким чанкам вокруг игрока поставить галочку 3
RandomTickSamples Количество блоков для галочки в каждом цикле 16
RandomTickInterval Как часто выполняется тиковый цикл в миллисекундах 50
MaxRandomTicks Максимальное количество тиков в очереди для обработки каждого цикла. Вам никогда не нужно прикасаться к этому 10000

Команды

Вы можете отметить блок с помощью команды /tickblock. Например, чтобы отметить блок, на котором вы стоите, вы можете запустить следующее: /tickblock ~0 ~-1 ~0

Icon Sign.png

Wondering where some links have gone?
The modding navbox is going through some changes! Check out Navigation Box Updates for more info and help finding specific pages.

Modding
Modding Introduction Getting Started Пакет тем
Content Modding Content Mods Developing a Content Mod Basic Tutorials Intermediate Tutorials Advanced Tutorials Content Mod Concepts
Code Modding Code Mods Setting up your Development Environment
Property Overview ItemEntityBlockBlock BehaviorsBlock ClassesBlock EntitiesBlock Entity BehaviorsWorld properties
Workflows & Infrastructure Modding Efficiency TipsMod-engine compatibilityMod ExtensibilityVS Engine
Additional Resources Community Resources Modding API Updates Programming Languages List of server commandsList of client commandsClient startup parametersServer startup parameters
Example ModsAPI DocsGitHub Repository