Modding:Конфигурация WorldGen
Эта страница проверялась в последний раз для версии Vintage Story 1.15.
== Рельеф ==
Формы рельефа определяют форму местности. Давайте посмотрим на существующую форму рельефа.
{
"code": "landforms",
"variants":
[
{
"code": "humongous mountain",
"comment": "humongous mountains with caverns in them",
"hexcolor": "#5BC184",
"weight": 2,
"useClimateMap": false,
"terrainOctaves": [0, 0, 0, 0, 1, 1, 1, 1, 0.6, 0.2],
"terrainOctaveThresholds": [0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0],
"terrainYKeyPositions": [0, 0.33, 0.37, 0.42, 0.43, 0.5, 0.6, 0.7, 0.9, 0.97, 1],
"terrainYKeyThresholds": [1, 1, 0.87, 0.84, 0.7, 0.94, 1, 1, 0.1, 0.05, 0]
},
]
}
В работе есть 2 системы, которые позволяют вам контролировать форму ландшафта — октавы и Y-пороги.
Октавы
Если вы знаете шум перлина, вы знаете, что это такое, но краткое объяснение низких октав даст вам очень гладкую местность, тогда как высокие октавы дадут вам пересеченную / хаотичную местность. Вы можете свободно смешивать матч между ними. Примеры:
terrainOctaves: [1, 0, 0, 0, 0, 0, 0, 0, 0, 0]
даст вам очень постепенно меняющийся ландшафтterrainOctaves: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1]
дало бы вам очень пересеченную и хаотичную местность
Пороги октавы
Они действуют как вычитатель октав. Это позволяет вам, например, создать плоскую местность с несколькими редкими неровностями, установив что-то вроде этого:
terrainOctaves: [1, 1, 1, 0, 0, 0, 1, 0, 0, 0],
terrainOctaveThresholds: [0, 0, 0, 0, 0, 0, 0.7, 0, 0, 0],
Это приводит к тому, что 7-я октава активна только 30% времени, так как большая ее часть вычитается.
Примечание. Количество октав всегда фиксировано и равно 10. Вы не можете настроить меньше или больше 10.
Y-пороги
Представьте, что у вас есть вид на гору сбоку, и вы можете сделать ее шире и тоньше на любой заданной высоте. Примерно так работает система y-порога. TerrainYKeyPositions — это относительные (0 = дно, 1 = вершина мира) координаты, а TerrainYKeyThresholds определяют, сколько процентов ландшафта должно быть сплошными блоками (0 = всегда твердый, 1 = всегда воздух), или, другими словами, его плотность. Мы также можем построить график этого:
В этом примере на максимальной высоте мира плотность равна 0, поэтому всегда будут воздушные блоки. Посередине у нас есть прыжок, где изменяется положение по оси Y, но не плотность, так что это создаст обрывы в горе. На нижнем конце происходит обратное. Y-позиция меняется очень мало, но ее плотность сильно увеличивается. Если это положение окажется на уровне моря, мы получим плоские пляжи. Положение Y на уровне моря по умолчанию равно 0,43. И ниже определенного y-положения плотность всегда равна 1. Если бы мы установили это значение на более низкое значение, мы получили бы очень глубокие озера.
Количество настраиваемых Y-порогов произвольно, вы можете использовать любое количество, просто убедитесь, что оба списка имеют одинаковое количество элементов. Однако не имеет смысла настраивать более 256 порогов для высоты мира в 256 блоков.
Вы можете построить такой график, используя новый инструмент генерации мира
Тестирование форм рельефа
Вы можете пробовать и ошибаться очень быстро, без необходимости перезапускать игру каждый раз, когда вы вносите изменения в landforms.json. <ол>
/wgen autogen 0
— отключает автоматическую генерацию фрагментов/wgen del 10
- удалить все фрагменты радиусом 10 фрагментов (Внимание: нельзя отменить!)/wgen regen 5
– перезагружает файл landforms.json, затем удаляет и создает заново все фрагменты с радиусом 5 фрагментов.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 | Item • Entity • Entity Behaviors • Block • Block Behaviors • Block Classes • Block Entities • Block Entity Behaviors • Collectible Behaviors • World properties |
Workflows & Infrastructure | Modding Efficiency Tips • Mod-engine compatibility • Mod Extensibility • VS Engine |
Additional Resources | Community Resources • Modding API Updates • Programming Languages • List of server commands • List of client commands • Client startup parameters • Server startup parameters Example Mods • API Docs • GitHub Repository |