Prototype/TransportBeltConnectable: Difference between revisions
 speed description about number format (fixed point number)  | 
				m →Mandatory properties:  added in-game speed which is a little more obvious  | 
				||
| Line 21: | Line 21: | ||
The raw value is expressed as the number of tiles traveled by each item on the belt per tick, relative to the belt's maximum density - e.g. <code>x items/second ÷ (4 items/lane × 2 lanes/belt × 60 ticks/second) = <speed> belts/tick</code> where a "belt" is the size of one tile. See [[Transport_belts/Physics]] for more details.  | The raw value is expressed as the number of tiles traveled by each item on the belt per tick, relative to the belt's maximum density - e.g. <code>x items/second ÷ (4 items/lane × 2 lanes/belt × 60 ticks/second) = <speed> belts/tick</code> where a "belt" is the size of one tile. See [[Transport_belts/Physics]] for more details.  | ||
Must be a positive non-infinite number. The number is a fixed point number with 8 bits reserved for decimal precision, meaning the smallest value step is 1/2^8 = 0.00390625.  | Must be a positive non-infinite number. The number is a fixed point number with 8 bits reserved for decimal precision, meaning the smallest value step is 1/2^8 = 0.00390625. In terms of speed, all speeds are multiples of 1.875 items / s, even though the entity tooltip may show a different rate.  | ||
== Optional properties ==  | == Optional properties ==  | ||
Revision as of 00:55, 2 March 2023
Template:Prototype parent Abstract class that anything that is a belt or can connect to belts uses.
Extensions
- Prototype/LinkedBelt linked-belt
 - Prototype/Loader1x1 loader-1x1
 - Prototype/Loader1x2 loader
 - Prototype/Splitter splitter
 - Prototype/TransportBelt transport-belt
 - Prototype/UndergroundBelt underground-belt
 
Mandatory properties
This prototype inherits all the properties from Prototype/EntityWithOwner.
Template:Prototype property
The speed of the belt (since 0.17): speed × 480 = x Items/second
The raw value is expressed as the number of tiles traveled by each item on the belt per tick, relative to the belt's maximum density - e.g. x items/second ÷ (4 items/lane × 2 lanes/belt × 60 ticks/second) = <speed> belts/tick where a "belt" is the size of one tile. See Transport_belts/Physics for more details.
Must be a positive non-infinite number. The number is a fixed point number with 8 bits reserved for decimal precision, meaning the smallest value step is 1/2^8 = 0.00390625. In terms of speed, all speeds are multiples of 1.875 items / s, even though the entity tooltip may show a different rate.
Optional properties
Template:Prototype property Either this, or all of the properties below this one have to be present.
Table with the following properties:
- animation_set - RotatedAnimation - Mandatory.
 - east_index - uint8 - Optional. - Default: 1
 - west_index - uint8 - Optional. - Default: 2
 - north_index - uint8 - Optional. - Default: 3
 - south_index - uint8 - Optional. - Default: 4
 - starting_south_index - uint8 - Optional. - Default: 13
 - ending_south_index - uint8 - Optional. - Default: 14
 - starting_west_index - uint8 - Optional. - Default: 15
 - ending_west_index - uint8 - Optional. - Default: 16
 - starting_north_index - uint8 - Optional. - Default: 17
 - ending_north_index - uint8 - Optional. - Default: 18
 - starting_east_index - uint8 - Optional. - Default: 19
 - ending_east_index - uint8 - Optional. - Default: 20
 - ending_patch - Sprite4Way - Optional.
 - ends_with_stopper - bool - Optional. - Default: false
 
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Mandatory if belt_animation_set is not present.
Template:Prototype property
Always optional. Only read if belt_animation_set is not present.
Mandatory values
Transport belt connectables have additional requirements for the properties inherited from Prototype/Entity:
- Transport belt connectable entities must collide with "transport-belt-layer".
 - Transport belt connectable entities must have collision mask that collides with itself.
 - Transport belt connectable entities cannot have collision mask that collides only with tiles (must collide with entities in some way).
 - Transport belt connectable entities must have collision box of an appropriate minimal size, they should occupy more than half of every tile the entity covers.
 - Transport belt connectable entities cannot have the "placeable-off-grid" flag specified.