Avorion Script API Documentation

PlanStyle

Based on a style, a craft plan can be generated. Generation happens in several stages, one after another, which all have their own amount of volume and blocks available (configured in PlanGeneratorStage). In each stage, several parts are selected and then added to the plan, depending on the rules set in the parts and the style. Usually not the entire volume is used up, and the plan will be scaled so that it fits the given volume.

function PlanStyle()

Returns

A new instance of PlanStyle

property int... additionalFeatures
Array-style table: Collection of features that are additionally added for all stages of the style. Can be overridden by forbidden features of stages.
property bool balanceForShip
If set, the generator will try to balance for flight aspects (use for ships, but not for stations).
property int... forbiddenFeatures
Array-style table: Collection of features that are forbidden for all stages of the style. Can be overridden by required features of stages.
property string name
The name of the style. Mainly for aesthetic or debugging purposes.
property int... requiredFeatures
Array-style table: Collection of features that are required for all stages of the style. Can be overridden by forbidden features of stages.
property bool scaleRecommendation
This is a recommendation whether or not plans generated from this style should be scaled to the desired volume. This is only a recommendation, when generating plans, this setting can be overridden.
property string seed
The seed of the style. Will be used when initializing the style, to make it deterministic.
property var settings
A table of settings that will be passed to parts generated from this style. See partexample.lua for more info on this. Settings of stages will be integrated into this table, while trying to override as little as possible (ie. sub-tables will be integrated into subtables). Example settings: {size = vec3(2, 2, 2), scale = 0.8, factionSeed = "abc", colors = {base = {r = 0.75, g = 0.75, b = 0.75}, dark = {r = 0.25, g = 0.25, b = 0.25}}}

function var addStage(PlanGenerationStage stage)

Adds a new stage to the style.

Returns

nothing

function var clearStages()

Removes all stages from the style.

Returns

nothing

function var initialize()

Initializes the style. This selects which parts will be used, based on the seed, making the style deterministic. This should be the last operation on a style. Style should not be modified after this. Doing so results in undefined behavior.

Returns

nothing

function var setStage(int index, PlanGenerationStage stage)

Replaces a stage in the style.

Returns

nothing

Overview
Home Functions Search
Search:

This is the official documentation for the scripting API of Avorion. This documentation is automatically generated and not necessarily complete. Depending on the context in which functions exist, some documentation such as descriptions, return values or variable names or types may be missing.

Work in Progress. Documentation of Avorion Version: 2.5.7 c8e4beec84f7