Skip to content

DemandLoad

Defers loading a type's artwork until something first needs to draw it.

Structure shape

Specification — Structure shape
Applies to
BuildingType
File
art.ini
Section
[<Image ID>]Image ID: Image= value; ObjectType ID when omitted
Value
boolean
When omitted
no

A structure’s shape is fetched from the archives twice while the rules are read: once under its Image ID, before this setting has been read at all, and once afterwards under the main-shape basename. Only the second fetch is skipped. A structure whose two names agree — the ordinary case — is therefore already holding its artwork by the time the flag is consulted, and setting it changes nothing about when the shape is loaded. Deferral takes effect only where the first name resolves to no file.

Where it does take effect, the shape is read from disk the first time something asks to draw a structure of the type, and is then held for the rest of the session. A type nothing ever draws allocates nothing, and a structure whose shape cannot be found is not drawn at all.

The construction animation is a separate setting, DemandLoadBuildup. The deploying, door, under-door, bib and Z-shape overlay artwork is fetched with the rules whatever this is set to.

Animation shape

Specification — Animation shape
Applies to
AnimType
File
art.ini
Section
[<ObjectType ID>]
Value
boolean
When omitted
no

The flag is read after the animation’s shape has already been fetched from the archives under its Image ID, so an animation whose artwork is present is holding it before the setting is consulted and nothing is deferred. What the flag then skips is the later work: the shape is not fetched again when the theater is set up, and the theater’s own copy is not fetched again when a saved game is restored — though the restore does re-attach the archive’s copy, which puts the release below back in reach.

An animation that reaches a draw with no shape reads one from disk at that moment, and the frame count and loop end the type left unset are taken from it then rather than at load time. The name built for that read is the Image ID if the animation has one and the AnimType ID otherwise, with a .SHP extension; a Theater=yes animation instead uses the AnimType ID with the theater’s own extension, dropping the Image ID, and a NewTheater=yes one has the built name rewritten for the theater.

On a Theater=yes or NewTheater=yes animation the shape the type is holding is released as the theater is set up rather than replaced. It is released with the type as well, and on a FreeAfterPlaying=yes animation as soon as the animation finishes playing — the only combination that gives artwork back during a match.

Overlay shape

Specification — Overlay shape
Applies to
OverlayType
File
art.ini
Section
[<Image ID>]Image ID: Image= value; ObjectType ID when omitted
Value
boolean
When omitted
no

The flag is read after the overlay’s shape has already been fetched from the archives under its Image ID, so an overlay whose artwork is present is holding it before the setting is consulted. What the flag then skips is the later work: the shape is not fetched again as the theater is set up, and the theater-named copy is not fetched again when a saved game is restored — though the restore does re-attach the archive’s copy, which puts the release below back in reach. An overlay that reaches a draw with no shape reads one from disk at that moment and holds it for the rest of the session.