v50 Steam/Premium information for editors
  • v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
  • Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.

Difference between revisions of "Size"

From Dwarf Fortress Wiki
Jump to navigation Jump to search
(→‎Mechanics: corrected bar size)
m (→‎Mechanics: grammar)
Line 112: Line 112:
 
== Mechanics ==
 
== Mechanics ==
 
* '''Crafted items''': [[Item definition token]]s for [[industry|industry-crafted]] items are specific to various classes of items: for instance, [[ammo]] has its own [[ammo token|ammo definition tokens]], as does [[armor token|armor]], as do [[tool token|tool]]s, and so on. A {{tt|[SIZE]}} token is a field required in all of these definitions.
 
* '''Crafted items''': [[Item definition token]]s for [[industry|industry-crafted]] items are specific to various classes of items: for instance, [[ammo]] has its own [[ammo token|ammo definition tokens]], as does [[armor token|armor]], as do [[tool token|tool]]s, and so on. A {{tt|[SIZE]}} token is a field required in all of these definitions.
:* [[Bar]] lack a defined size token in the raws. They have a size of 6000 cm<sup>3</sup>, which is consistent with their weight and density, and 10 bars fitting inside a [[Storage|bin]]. The dimensionless unit of '150' products per bar, primarily of use for soap, suggests that each use of a bar of soap should diminish by 40cm<sup>3</sup> (i.e. 6000cm<sup>3</sup>/150). Whether this is true is currently untested.{{verify}}
+
:* [[Bar]] lacks a defined size token in the raws, but a bar has a size of 6000 cm<sup>3</sup>, which is consistent with their weight and density, and 10 bars fitting inside a [[Storage|bin]]. The dimensionless unit of '150' products per bar, primarily of use for soap, suggests that each use of a bar of soap should diminish by 40cm<sup>3</sup> (i.e. 6000cm<sup>3</sup>/150). Whether this is true is currently untested.{{verify}}
 
* '''Inorganic items''': [[Stone]]s, [[gem]]s, and [[ore]]s appear to have a default, hard-coded size that is applied to all items of that class; thus there is no direct [[inorganic material definition token]] for it.
 
* '''Inorganic items''': [[Stone]]s, [[gem]]s, and [[ore]]s appear to have a default, hard-coded size that is applied to all items of that class; thus there is no direct [[inorganic material definition token]] for it.
 
* '''Plants''': There is no size [[plant token]].
 
* '''Plants''': There is no size [[plant token]].

Revision as of 05:56, 2 December 2023

This article is about the current version of DF.
Note that some content may still need to be updated.

You may be looking for size of clothing, armor, the dimensions of a tile, or the list of creatures by size.

Size is a measure of how big a creature or item is, as volume in cubic centimeters[1], and called [BODY_SIZE] or [SIZE] in raw files.

Size has many important effects on the game, many through its direct effect on item weight, but as material properties go, its implementation is sometimes underwhelming - witness the incredible compression of matter, space, and time that is the QSP. When even multiple full grown dragons occupy a single square, size becomes a little difficult to contextualize. It doesn't help that a bronze colossus fits in a basic wooden cage (although, a fire man fits in it too).

Size directly affects such things as which weapons your dwarves can equip, butchering returns, storage limits, and combat effectiveness for both creatures and weapons.

Size is used to calculate an item's weight, along with the density of the underlying material(s):

Weight (in Γ) = Density (in kg/m3) * Size (in cm3) / 1,000,000 (cm3 in a m3)

Through weight, the size of an item has further ramifications in the game, such as hauling speed, pressure plate activation, impact momentum, weight restrictions, and so forth.

The weight of creatures is calculated from the densities and sizes of the layers of their body parts, which currently results in corpse weights that are about 1/3 heavier than expected.

Internally, all custom size numbers are rounded down to the nearest multiple of 10 - thus, if you define an item with [SIZE:15], it will actually behave as if you had specified [SIZE:10].

Bodysize

Creature-specific size is known internally as bodysize (from the [BODY_SIZE] token). When it comes to creatures, size is a rough stand-in for weight: standard flesh weighs one gram per cubic centimeter. However, in the infinite complexity of Dwarf Fortress, there are a number of other materials animals internalize (ivory, hair, horn, shell, etc.) which have their own densities, shifting a creature's actual weight relative to its size, sometimes significantly (elephant tusks weigh a lot). Bodysize also determines average butchering yields, (along with morphology) how much damage they can absorb, and (along with morphology and attack definition tokens) how much damage they can inflict in melee. On [HUMANOID] creatures, size also directly determines what kind of equipment a creature can wear: large, small, normal, or none at all.

The actual size of a creature is the result of four different effects, one basic and three that are highly variable. First and most basic is the average maintained across an individual species of creature. The second is the age of the creature: most creatures are not born anywhere near their maximum size, and instead must grow into it; some, like most species of snake, grow throughout their entire lifetime, and probably will not live long enough to reach it. The third is inheritance: version 0.31.1 introduced genetics, allowing creatures to inherit part of their size from the appearance, specifically the height and girth, of their parents. The last one is the creature's muscle mass, determined by it's strength attribute (a thin dwarf with ~44210 size will be ~64210 once they become unbelievably strong).

Actual creature sizes go from 1 (small insect vermin) to 200,000,000 (giant sperm whales, the largest creature in the game). See List of creatures by adult size for details. The average size set for a dwarf is 3,000, 15,000, and 60,000, the size of a baby, child and adult respectively.

Sample list of creature sizes

Name Size at birth Size at maturity Notes
Adder 15 150 Smallest (non-vermin) creature
Rabbit 50 500 Smallest domestic animal
Cat 500 5,000
Kobold 1,000 20,000
Dwarf 3,000 60,000
Giant tiercel peregrine 8,308 113,292 Smallest giant animal
Deer 14,000 140,000
Polar bear 40,000 400,000
Water buffalo 100,000 1,000,000 Largest domestic creature
Rhinoceros 300,000 3,000,000
Elephant 500,000 5,000,000 Largest natural land-based creature
Cave dragon 6,000 15,000,000 Largest cavernous creature
Sperm whale 500,000 25,000,000 Largest natural creature
Dragon 6,000 25,000,000 Largest megabeast
Giant elephant 4,000,000 40,000,000 Largest land-based creature
Giant sperm whale 4,000,000 150,000,000 Largest creature, period

Mechanics

  • Bar lacks a defined size token in the raws, but a bar has a size of 6000 cm3, which is consistent with their weight and density, and 10 bars fitting inside a bin. The dimensionless unit of '150' products per bar, primarily of use for soap, suggests that each use of a bar of soap should diminish by 40cm3 (i.e. 6000cm3/150). Whether this is true is currently untested.[Verify]
  • Inorganic items: Stones, gems, and ores appear to have a default, hard-coded size that is applied to all items of that class; thus there is no direct inorganic material definition token for it.
  • Plants: There is no size plant token.
  • Buildings: The [DIM:#:#] building token defines the by-tile size of a workshop or building.
  • Creatures: The creature token version of [SIZE] is the [BODY_SIZE:#:#:#] token, which accepts three variables. The first number is age in years; the second additional age is in days. The third number is its size in cm3. Multiple ages and multiple [BODY_SIZE] tokens are used to constrain a creature's age-based growth pattern and final size. Genetics is accounted for by a [BODY_APPEARANCE_MODIFIER] token tagged for LENGTH and/or HEIGHT. For instance, genetic variance in the anaconda is defined so: [BODY_APPEARANCE_MODIFIER:LENGTH:90:95:98:100:102:105:110]. Each interval value is genetically inherited, and each interval value has an equal chance of occurring; the numbers are the percentage of the base size a creature in the interval will be.

See also