Factorio.com|Forums|Wiki|Mod Portal|API Docs Prototype|Runtime|Auxiliary

# Factorio Prototype Docs Version 2.0.7

## SmokeSource :: struct

Definition of the smoke of an entity.

## Properties

- default
- sorted

name | :: TrivialSmokeID |
frequency | :: float | Number of smokes generated per entity animation cycle (or per tick for some entities). [...]
Number of smokes generated per entity animation cycle (or per tick for some entities). [...]
offset optional | :: float | Offsets animation cycle, to move at which points of the cycle the smoke gets emitted.
Offsets animation cycle, to move at which points of the cycle the smoke gets emitted.
position optional | :: Vector | Positional offset of smoke source relative to owner entity position. [...]
Positional offset of smoke source relative to owner entity position. [...]
has_8_directions optional | :: bool |
north_position optional | :: Vector |
north_east_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
east_position optional | :: Vector |
south_east_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
south_position optional | :: Vector |
south_west_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
west_position optional | :: Vector |
north_west_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
deviation optional | :: Vector |
starting_frame optional | :: uint16 |
starting_frame_deviation optional | :: uint16 |
height optional | :: float |
height_deviation optional | :: float |
starting_vertical_speed optional | :: float |
starting_vertical_speed_deviation optional | :: float |
vertical_speed_slowdown optional | :: float | A value between `0` and `1`.
A value between `0` and `1`.

frequency | :: float | Number of smokes generated per entity animation cycle (or per tick for some entities). [...]
Number of smokes generated per entity animation cycle (or per tick for some entities). [...]
name | :: TrivialSmokeID |
deviation optional | :: Vector |
east_position optional | :: Vector |
has_8_directions optional | :: bool |
height optional | :: float |
height_deviation optional | :: float |
north_east_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
north_position optional | :: Vector |
north_west_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
offset optional | :: float | Offsets animation cycle, to move at which points of the cycle the smoke gets emitted.
Offsets animation cycle, to move at which points of the cycle the smoke gets emitted.
position optional | :: Vector | Positional offset of smoke source relative to owner entity position. [...]
Positional offset of smoke source relative to owner entity position. [...]
south_east_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
south_position optional | :: Vector |
south_west_position optional | :: Vector | Only loaded if `has_8_directions` is `true`.
Only loaded if `has_8_directions` is `true`.
starting_frame optional | :: uint16 |
starting_frame_deviation optional | :: uint16 |
starting_vertical_speed optional | :: float |
starting_vertical_speed_deviation optional | :: float |
vertical_speed_slowdown optional | :: float | A value between `0` and `1`.
A value between `0` and `1`.
west_position optional | :: Vector |

## Properties

### name :: TrivialSmokeID

### frequency :: float

Number of smokes generated per entity animation cycle (or per tick for some entities). Can't be negative or infinite.

### offset :: float optional

Default: `0`

Offsets animation cycle, to move at which points of the cycle the smoke gets emitted.

### position :: Vector optional

Positional offset of smoke source relative to owner entity position. The vector is rotated by orientation of the entity.

If any of `north_position`, `north_east_position`, `east_position`, `south_east_position`, `south_position`, `south_west_position`, `west_position`, `north_west_position` is defined, `position` is used only as default value for directional positions. Orientation of the owner entity will be rounded to 4 or 8 directions and one of the directional positions will be used as the offset instead of `position`.

### has_8_directions :: bool optional

Default: `false`

### north_position :: Vector optional

Default: Value of `position`

### north_east_position :: Vector optional

Default: Value of `position` rotated north-east

Only loaded if `has_8_directions` is `true`.

### east_position :: Vector optional

Default: Value of `position` rotated east

### south_east_position :: Vector optional

Default: Value of `position` rotated south-east

Only loaded if `has_8_directions` is `true`.

### south_position :: Vector optional

Default: Value of `position` rotated south

### south_west_position :: Vector optional

Default: Value of `position` rotated south-west

Only loaded if `has_8_directions` is `true`.

### west_position :: Vector optional

Default: Value of `position` rotated west

### north_west_position :: Vector optional

Default: Value of `position` rotated north-west

Only loaded if `has_8_directions` is `true`.

### deviation :: Vector optional

### starting_frame :: uint16 optional

Default: `0`

### starting_frame_deviation :: uint16 optional

Default: `0`

### height :: float optional

Default: `0`

### height_deviation :: float optional

Default: `0`

### starting_vertical_speed :: float optional

Default: `0`

### starting_vertical_speed_deviation :: float optional

Default: `0`

### vertical_speed_slowdown :: float optional

Default: `0.965`

A value between `0` and `1`.

Type used in

- BurnerEnergySource::smoke
- CharacterArmorAnimation::smoke_in_air
- FireFlamePrototype::smoke
- FluidEnergySource::smoke
- FluidStreamPrototype::smoke_sources
- GeneratorPrototype::smoke
- ParticleSourcePrototype::smoke
- ProjectilePrototype::smoke