Types/WorkingSound

From Official Factorio Wiki
Revision as of 10:42, 21 September 2023 by BilkaBot (talk | contribs) (Updated styling of prototype doc migration note)
Jump to navigation Jump to search

The prototype docs have moved to a new website with an improved format. This documentation page can now be found here: https://lua-api.factorio.com/latest/types/WorkingSound.html

This wiki page is no longer updated and will be removed at some point in the future, so please update your browser bookmarks or other links that sent you here. If you'd like to contribute to the new docs, you can leave your feedback on the forums.


Basics

This type is used to produce sound from in-game entities when they are working/idle.

Mandatory properties

sound

Type: Types/Sound

The sound to be played when the entity is working. If sound is not present, the entire WorkingSound is loaded as a Types/Sound.

Optional properties

apparent_volume

Type: Types/float

Default: 1

max_sounds_per_type

Type: Types/uint8

match_progress_to_activity

Type: Types/bool

Default: false

match_volume_to_activity

Type: Types/bool

Default: false

match_speed_to_activity

Type: Types/bool

Default: false

persistent

Type: Types/bool

Default: false

use_doppler_shift

Type: Types/bool

Default: true

audible_distance_modifier

Type: Types/double

Default: 1

Modifies how far a sound can be heard. Can only be 1 or lower, has to be a positive number.

probability

Type: Types/double

Default: 1

Modifies how often the sound is played. Example:

probability = 1 / (3 * 60) -- average pause between the sound is 3 seconds

fade_in_ticks

Type: Types/uint32

Default: 0

Can't be used when match_progress_to_activity is true.

fade_out_ticks

Type: Types/uint32

Default: 0

Can't be used when match_progress_to_activity is true.

idle_sound

Type: Types/Sound

The sound to be played when the entity is idle. Might not work with all entities that use working_sound.

activate_sound

Type: Types/Sound

Might not work with all entities that use working_sound.

deactivate_sound

Type: Types/Sound

Might not work with all entities that use working_sound.

Example

Refinery:

working_sound =
 {
  sound = { filename = "__base__/sound/oil-refinery.ogg" },
  idle_sound = { filename = "__base__/sound/idle1.ogg", volume = 0.6 },
  apparent_volume = 2.5,
 },

Roboport:

working_sound =
    {
      sound = { filename = "__base__/sound/roboport-working.ogg", volume = 0.6 },
      max_sounds_per_type = 3,
      audible_distance_modifier = 0.5,
      probability = 1 / (5 * 60) -- average pause between the sound is 5 seconds
    },