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 "Variable positions"

From Dwarf Fortress Wiki
Jump to navigation Jump to search
Line 903: Line 903:
 
Some religious entities, which are considered "child"-entities of civilizations (no religious entity which was not a "child" of a civ entity has been found so far), also have variable positions.
 
Some religious entities, which are considered "child"-entities of civilizations (no religious entity which was not a "child" of a civ entity has been found so far), also have variable positions.
 
If a religious entity rules a site (always monastery?), then the only variable position (of that entity) seems to be the CUSTOM_LAW_MAKER and the name of the position seems to be always "abbot".
 
If a religious entity rules a site (always monastery?), then the only variable position (of that entity) seems to be the CUSTOM_LAW_MAKER and the name of the position seems to be always "abbot".
Otherwise the variable positions PRIEST, HIGH_PRIEST and HIGHEST_PRIEST can be created for that religious entity, where any such entity, if it has a position, will always have the PRIEST as position. Afterwards, the position HIGH_PRIEST can be created and at last - after the HIGH_PRIEST was created - the HIGHEST_PRIEST can be created. The names of these position are randomly created (more about the name generation is currently out-of-scope, ie. why a PRIEST might be called "sacred squid", "holy burial", "sacred rumor", "holy lemon" or "sacred paper" is out-of-scope at least for this wiki-article). No temple is needed in an associated site for a religious entity (not ruling from an monastery) to create a priest, high priest or highest priest position.
+
Otherwise the variable positions PRIEST, HIGH_PRIEST and HIGHEST_PRIEST can be created for that religious entity, where any such entity, if it has a position, will always have the PRIEST as position. Afterwards, the position HIGH_PRIEST can be created and at last - after the HIGH_PRIEST was created - the HIGHEST_PRIEST can be created. The names of these position are randomly created (more about the name generation is currently out-of-scope, ie. why a PRIEST might be called "sacred squid", "holy burial", "sacred rumor", "holy lemon" or "sacred paper" is out-of-scope at least for this wiki-article). No temple is needed in an associated site for a religious entity (not ruling from a monastery) to create a priest, high priest or highest priest position.
  
An overview over the positions of religous entities is given in the following table:
+
An overview on the positions of religious entities is given in the following table:
  
 
{|class="sortable wikitable" style="text-align:center;"
 
{|class="sortable wikitable" style="text-align:center;"

Revision as of 18:02, 11 February 2026


This page documents the variable positions that entities create when neccesary. This is - in vanilla - the case for human and goblin civilizations, but also for merchants' guilds, mercenary groups, religious groups and criminals.

Introduction

Initially none of the positions marked as variable do exist for an entity. The positions will only exist for a given entity, if they are either created during world-gen, world activities(?) or by memory hacking or scripting (ie. with Lua). Ie. in vanilla all human civilizations have at the beginning of the world-generation no positions at all, neither on the site nor civ level, as all positions of the vanilla human civs are marked as variable (variable positions: all). When a variable (civ level) position is created, the position is only created for that civilization (entity) and not for any other entities of the same type. Ie. the creation of a law-giver for one human civ does not create law-givers for other human civs.

Also presumably all site-level positions for each entity are created on a per site basis, meaning the creation of a site ruler for one site (of a civ) does not also create the site ruler positions for any other site (of that civ).

The existence of a variable position does not mean that the position will also be filled by a historical figure. But during world-gen the creation of a position will usually be followed up with the position being filled. Ie. the human historical figure who forced the creation of a law-giver position, will usually become the first law-giver.

For the succession rules of a variable position (after the position has been initially filled by a historical figure), presumably, the same rules as for non-variable positions apply.

(Disclaimer: The following only applies during world-gen and normal world activities. Scripting and memory hacking can circumvent the normal limitations, but with currently unknown results).

For civ level entities, if the law-giving position is a variable position, the law-giving position does not (seem to) have any further requirements to be created (ie. no other position being already created). Ie. this position can be created by force (or popular support etc.) by any historical figure of that civ. But for all other variable (civ-level) positions the law-giving position must exist as usually the historical figure, who is the law-giver, does create the other variable positions (for various reason).

Something similar is probably the case for site level positions. Ie. if the ruler of a site is a variable position, that position needs to be created, before any other site-level variable positions can be created. And the site ruler can afterwards create other variable positions for that site. It is not yet clear if a site level ruling position can be created before a civ level ruling (law-giving) position is created (or exists). This also means that it should be possible, via memory-hacking or scripting, to create (and fill) the variable site level positions (for a player site), at least after the civ level law-giving position has been created (and the law-giving position has been filled), so that a human player site gets the maximum possible human site level positions (with the normal appointment rules for the succession/reappointment of the positions), without having to edit the raw files (as outlined in the human civ page), prior to creating a world, to make the variable positions of human civilisations to "static" ones.

Presumably for guilds (Merchant Guild and others), mercenary groups, religious orders (and criminals) also a "leader" position needs to be created by a historical figure, before other variable positions for that entity can be created.

General Info

So far, no restrictions on allowed_class or allowed_creature have been found and also the rejected_creature and rejected_class entries are always empty. Squad_size has so far been empty, except for CUSTOM_LAW_MAKER and CUSTOM_LAW_MAKER_2 where the squad_size was 20. Also most other entries (of entity_position entry under "own") not mentioned below have standard values (ie. are empty).

If the naming of a variable position is also variable, then the name has usually two parts and at least one part of the name has a few different possibilities defined (although one part might allow for an empty string, ie. name is only "chamberlain", whereas another possible name would be "high chamberlain"). For some positions that are ie. "high", "chief" and "head" for the first part (of a site variable position) or it might be "harvest" and "grain" (the later used for the official with the food supply responsibility). For some positions the list for the second part contains at least the words "administrator", "official" and "commissioner". But some variable positions have static names (fixed, possibly hardcoded and thus only ie. by raw-editing - or similiar editing after world-gen - changeable in-game displayed position names). Also in the variable naming-case a different subset of parts might be used for site government and civ government positions (ie. "royal" being reserved for civ government positions). The defined possibilities for the first and second part might be hardcoded or be defined somewhere in the raw files (investigation needed).

Variable Civilization Government Positions

CUSTOM_OFFICIAL_1

So far, two different names have been found, but in contrast to the other variable (CUSTOM_OFFICIAL) positions so far, the responsibilities are not fixed. The names are "Chancellor" and "Keeper of the Seal". The responsibilities of the "Keeper of the Seal" were receive_diplomats, make_introductions and make_topic_agreements. The Chancellor additionally had espionage as responsibility.

Shared values: Standard_official_flags, standard color entry, precedence: 20; number: 1, max mandates: 2; max demands: 3 best_appointment_precedence: 30001

CUSTOM_OFFICIAL_2 (Justiciar)

Name found so far: chief justiciar. responsibilities: law_enforcement, collect_taxes precedence: 60 ; number: 1; max mandates: 2; max demands: 3; best_appointment_precedence: 30001

CUSTOM_OFFICIAL_3 (Treasurer)

Names found so far: chief/head/high treasurer. As CUSTOM_OFFICIAL_3 of a site government (only difference: appointed by position 0 of the civ).

CUSTOM_OFFICIAL_4 (Advisor)

Names found so far: chief/head advisor, chief/head/high/royal counselor. As CUSTOM_OFFICIAL_4 of a site government (only difference: appointed by position 0 of the civ).

CUSTOM_OFFICIAL_5 (Chamberlain)

Names found so far: Chamberlain, head/high chamberlain. As CUSTOM_OFFICIAL_5 of a site government (only difference: appointed by position 0 of the civ).

CUSTOM_OFFICIAL_6 (Master of Beasts)

Name always: Master of Beasts. As CUSTOM_OFFICIAL_6 of a site government (only difference: appointed by position 0 of the civ).

CUSTOM_OFFICIAL_7 (Cup-bearer)

Name found so far: chief cup-bearer. Responsibilities: manage_leader_household_food, manage_leader_household_drinks Standard_official_flags, standard color entry, precedence: 300; number: 1; no demands/mandates; best_appointment_precedence: 30001

CUSTOM_OFFICIAL_8 (Doctor)

Name found so far: head doctor. Responsibilities: health_management Standard_official_flags, standard color entry, precedence: 310; number: 1; no demands/mandates; best_appointment_precedence: 30001

CUSTOM_OFFICIAL_9 (Executioner)

Names found so far: royal/head/high/chief executioner. Otherwise as CUSTOM_OFFICIAL_9 of a site government (only difference: appointed by position 0 of the civ).

CUSTOM_OFFICIAL_10 (Chef)

Name found so far: high chef. Responsibilities: PREPARE_LEADER_MEALS Standard_official_flags, standard color entry, precedence: 330; number: 1; no demands/mandates; best_appointment_precedence: 30001

CUSTOM_OFFICIAL_11 (Housekeeper)

Names found so far: royal/chief/head/high housekeeper. Otherwise as CUSTOM_OFFICIAL_11 of a site government (only difference: appointed by position 0 of the civ).

CUSTOM_MILITARY_STRATEGY (Marshall)

Name found so far: Marshall. responsibilities: military strategy standard color entry. precedence: 50; number: 1; max mandates: 2; max demands: 3; best_appointment_precedence: 30001 Flags (additionally to standard_official_flags): flashes, brag_on_kill, chat_worthy, kill_quest, account_exempt, punishment_exemption, quest_giver, special_burial.

Variable Site Government Positions

If all positions of a civ (and with that of a site government) are variable, then the CUSTOM_LAW_MAKER position for the site government needs to be created (in world-gen), before other positions (of the possible positions) can be created. The initial CUSTOM_LAW_MAKER positions is normally not appointed by the law-giver of the civilization and in thtat case the historical figure occupying it is called "lord" (if male) and "lady" (if female). Only in the rare cases, where the CUSTOM_LAW_MAKER was appointed by the law-giver of the civ, the CUSTOM_LAW_MAKER is called "baron" instead (and no CUSTOM_LAW_MAKER_2 position will be created later on). If a law-giver of the civilization exists, then the lord of a site (leader of a site government) can be replaced by a CUSTOM_LAW_MAKER_2. The law-giver of the civilization appoints the CUSTOM_LAW_MAKER_2. The CUSTOM_LAW_MAKER_2 is (at least in case of the so far checked human civ) always called baron (if male) or baronness (if female). If a CUSTOM_LAW_MAKER_2 position has been created the flag "active" (of the original CUSTOM_LAW_MAKER position) is set to false and the flag "has_been_replaced" is set to true. The position of the CUSTOM_LAW_MAKER is always the next_position_id of the civ (either at the time of creation of the CUSTOM_LAW_MAKER position for the site or the time of creation of the site government). The creation of a variable position (for a site government) always increments the next_position_id by 1 (and also increases next_assignment_id by 1, which is always on creation of an entity with all variable positions and thus no positions existing on creation of the entity initialized to 0).

Regardless of whether a lord/lady has been upgraded to a baron/baroness other variable positions (both CUSTOM_OFFICIALS_i and CUSTOM_MARKET_OFFICIALS_i, where i stands for a non-zero natural number) can be created in any order. These other positions are then always appointed by the lord (or baron) of the site. In case the position has been created before a lord has been upgraded to a baron the appointed_by and appointed_by_civ (in the position definition) refer to the position of the lord (and are not updated to point to the CUSTOM_LAW_MAKER_2 position, when it gets created). In case the positions are created after a lord has been elevated to a baron the appointed_by and appointed_by_civ (in the position definition) refer to the position of the baron.

NOTE (further research needed): It seems as if CUSTOM_MARKET_OFFICIAL_I can only be created if the site (ruled by the site government) has a market (abstract_building_marketst). It is not clear whether an additional prerequisite for the upgrading to the CUSTOM_LAW_MAKER_2 exists, ie. if the ruled site does need to have a keep (abstract_building_keepst). Furthermore so far it seems that only CUSTOM_OFFICIAL_I can be created for a site, if the civ has also (already) created the CUSTOM_OFFICIAL_I position.

Note: The historical figure currently holding the position of a CUSTOM_LAW_MAKER (or CUSTOM_LAW_MAKER_2) of a site government has (often/usually) under histfig_site_links an entry of the type histfig_site_link_seat_of_powerst (which points to the site belonging to the site government, ie. "site" has the id of the site and "entity" has the id of the entity as values).


(Note: the following subsections might need moving into a wiki table). So far the following CUSTOM_OFFICIAL_i and CUSTOM_MARKET_OFFICIAL_i (for site governments) have been found (except for the position_id, appointed_by, appointed_by_civ and name entries the values for CUSTOM_OFFICIAL_i are usually the same for civ positions and site government positions):

CUSTOM_OFFICIAL_1 (Chancellor/Keeper of the Seal)

The name is variable. Both Chancellor and Keeper of the Seal are used, with a possible additional word from the list "high", "head" and "chief" as prefix, ie. "high chancellor" or "chief keeper of the seal". Only responsibility is espionage, the additional responsibilities of the Chancellor/Keeper of the Seal are lost (ie. still performed by the Lord/Baron of the site and not outsourced to the chancellor). The rest is as the CUSTOM_OFFICIAL_1 of the civ.

CUSTOM_OFFICIAL_2 (Justiciar)

The name is "justiciar", allthough an additional word as prefix has so far only been found on the civ level, it can be assumed that "high", "head" and "chief" are possible prefix words. Difference to CUSTOM_OFFICIAL_2 on the civ level (except for the standard differences): Only responsibility: Collect taxes. Meaning law enforcement is still performed by the CUSTOM_LAW_MAKER (CUSTOM_LAW_MAKER_2) of the site government.

CUSTOM_OFFICIAL_3 (treasurer)

The name is variable. Always the word "treasurer" is used, with "high", "chief" or "head" as prefix. The other entries of the CUSTOM_OFFICIAL_3 are fixed (except the position_id, appointed_by and appointed_by_civ entries - see above). The responsibilities are trade and accounting. precedence: 70; number: 1; mandates (max): 1; demands (max): 2; best_appointment_precedence: 30001 (disclaimer: needs verification, whether this is only the case for the specific world or a general hard-coded value). standard custom official flags, which means: "duty_bound", "has_responsibilities", "do_not_cull", "has_met_pop_req", "color", "menial_work_exemption", "has_received_positions", "active" and "has_met_market_req" set to true. standard color entry, which means 0: 5, 1: 0 and 2: 1 (number before the ":" is the index and the number after the ":" is the actual value).

CUSTOM_OFFICIAL_4 (advisor)

The name is variable. The second part of the name is either "counselor" or "advisor". The first part is one of "chief", "head" and "high". The other entries of the CUSTOM_OFFICIAL_4 are fixed (except the position_id, appointed_by and appointed_by_civ entries - see above). The responsibilites is advise_leaders. precedence: 55; number: 1; mandates (max): 1; demands (max): 2; best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_OFFICIAL_5 (Chamberlain)

The name is variable. Always the word "Chamberlain" is used, either without prefix or one of the words "chief", "head" and "high" as prefix. Responsibility: Oversee_leader_household precedence: 80; number: 1; demand (max): 1 best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_OFFICIAL_6 (Master of beasts)

The name is fixed: "master of beasts" (no "beast tamer" or any other names as alternative). The responsibilities are manage_animals and tame_exotics. Again the entries, except position_id and appointed_by and appointed_by_civ entries, are fixed. precedence: 90; number: 1; mandates (max): 0; demands (max): 1; best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_OFFICIAL_7 (Butler/Cup-bearer)

The name is variable. The second part of the name is either "butler" or "cup-bearer". The first part is any of "high", "head" and "chief". Rest as the civ case.

CUSTOM_OFFICIAL_8 (Doctor)

The name is variable. Always the word "doctor" is used, with either no prefix or with one of "high", "head" and "chief". Rest as the civ case.

CUSTOM_OFFICIAL_9 (Executioner)

The name is variable. Always the word "executioner" is used, with either "chief", "head" or "head" as prefix. The other entries are fixed (except for the usual exceptions). The responsibilities are, unsurprisingly, executions. precedence: 320; number: 1; no mandates or demands best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_OFFICIAL_10 (Chef)

The name is variable. Always the word "chef" is used, with either "chief", "head" or "head" as prefix. Rest as the civ case.

CUSTOM_OFFICIAL_11 (Housekeeper)

The name is variable. Always the word "housekeeper" is used, with either "chief", "head" or "head" as prefix. The other entries are fixed (except for the usual exceptions). Responsibility: Cleaning ("MANAGE_LEADER_HOUSEHOLD_CLEANLINESS"). precedence: 340; number: 1; no mandates or demands best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_MARKET_OFFICIAL_2 (Food Administrator)

The name is variable. The name seems to be generated by "grain" or "harvest" as first word and one of the words of "commissioner", "caretaker", "official" and "administrator" as second word, ie. harvest caretaker. Responsibility: food_supply precedence: 450; number: 1; demand (max): 1 best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_MARKET_OFFICIAL_3 ((Unneeded) Fire Safety)

The name is variable. The first word of the name seems to be always "fire" and the second word seems to be one of "administrator", "official" and "commissioner", allthough not found also "caretaker" might belong to the list (allthough fire caretaker might sound strange). Responsibility: fire_safety precedence: 475; number: 1; no mandates or demands best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_MARKET_OFFICIAL_4 (Judge)

The name is variable, allthough either judge or magistrate seems to be used as name. precedence: 350, number: 1, standard_color_entry, standard_official_flags, responsibility: judge demand (max): 1 best_appointment_precedence: 30001

CUSTOM_MARKET_OFFICIAL_5 ((Unneeded) Building Commissioners)

The name is variable. First word of name is "building" and second word one of administrator, official, commissioner and caretaker. Responsibilities: building_safety and construction_permits. precedence: 460; number: 1; demand (max): 1 best_appointment_precedence: 30001 standard custom official flags and standard color entry.

CUSTOM_MARKET_OFFICIAL_6 (Road Caretaker)

The name is variable. First word of name is "road" and the second word one of "administrator", "commissioner", "caretaker" (and possible "official"). Responsibility: maintain_roads, maintain_bridges and surprisingly maintain_tunnels. precedence: 375; number: 1; demand (max): 1 best_appointment_precedence: 30001 standard custom official flags and standard color entry.

Religious Entities

PRIEST: elected, duty_bound, has_responsibilities, chat_worthy, do_not_cull, is_leader, is_diplomat, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, active, has_met_market_req responsibility: religion number: -1 precedence: 200, no mandates/demands best_appointment_precedence: 30001 color entry is variable, ie. (0,0,1), (1,0,1) or (7,0,1), but color entry is the same for all positions of that religious entity.

HIGH_PRIEST: is_law_maker, elected, duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, is_diplomat, exported_in_legends, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, special_burial, has_met_market_req, active responsibilities: law_making, receive_diplomats, make_topic_agreements, religion number: -1 precedence: 50, mandates (max): 2, demands (max): 3 best_appointment_precedence: 30001 color entry is variable (see PRIEST)

HIGHEST_PRIEST: is_law_maker, elected, duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, is_diplomat, exported_in_legends, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, special_burial, has_met_market_req, active responsibilities: law_making, receive_diplomats, make_topic_agreements, religion number: 1 precedence: 1, mandates (max). 3, demand (max): 5 best_appointment_precedence: 30001

Nomadic Entities (Bandits)

Nomadic entities are usually some kind of bandit groups. The only position they seem to be able to get is the CUSTOM_BANDIT_LEADER, with such illustrous names as Boss, Captain, Chief, Chieftain, Commander, Leader, Master, Overlord, Ringleader or Warlord (and possibly even some more). The CUSTOM_BANDIT_LEADER always has a squad_size of 20 and a precedence of 55. Also no succession is defined. The flags, which are set to true are: is_law_maker, elected, duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver and has_met_market_req (and usually also active). Responsibilities are law_making, law_enforcement, receive_diplomats, make_introductions, make_peace_agreements, make_topic_agreements, military_goals and military_strategy. Also the standard color entry is used. And the bandit leader has max mandates 1 and max demands 2. And as always the best_appointment_precedence is 30001. The squad members are always named soldiers (and not bandits).

Values for CUSTOM_BANDIT_LEADER are the same as for the entity of type 7 (outcast).

Outcast (Bandits, entity type 7)

Possible positions are CUSTOM_BANDIT_LEADER, CUSTOM_OUTCAST_LT, CUSTOM_OUTCAST_FACTOR. The name of the bandit leaders are the same (and possibly also the other variable values) as for the the bandit leader of nomadic groups. The CUSTOM_OUTCAST_LT seems to be always called lieutenant and the custom_outcast_factor seems to be always called representative. (Allthough the sample size is kinda low).

CUSTOM_BANDIT_LEADER is_law_maker, elected, duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, menial_work_exemption, punishment_exemption, has_received_positions, active, quest_giver, has_met_market_req squad_size: 20 precedence: 55 number: 1 responsibilities: law_making, law_giving, receive_diplomats, make_introductions, make_peace_agreements, make_topic_agreements, military_goals, military_strategy mandate_max: 1; demand_max: 2; default_color_entry best_appointment_precedence: 30001

CUSTOM_OUTCAST_LT duty_bound, has_responsibilities, do_not_cull, is_leader, has_met_pop_req, menial_work_exemption, has_received_positions, has_met_market_req, active. responsibilities: attack_enemies, patrol_territory number -1 precedence: 160, mandate (max): 0, demand (max) 1, default_color_entry appointed by CUSTOM_BANDIT_LEADER (same entity). best_appointment_precedence 30001

CUSTOM_OUTCAST_FACTOR duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, has_met_market_req, active. responsibilities: trade, accounting number: -1, precedence: 70, mandate (max): 0, demand (max) 1, default_color_entry appointed by CUSTOM_BANDIT_LEADER (same entity). best_appointment_precedence 30001

Guilds (Entity type 10)

The positions of guild entities are CUSTOM_GUILD_LEADER, CUSTOM_GUILD_ALDERPERSON, CUSTOM_GUILD_STEWARD, CUSTOM_GUILD_CLERK. It seems that after (or with) the creation of a guild the above positions are always created. Possible names for the clerk positions are Clerk, Bookkeeper and Recordkeeper. Possible names for the steward position are steward and treasurer. The guild leader is called doyen or dean. And the alderperson position is always called alderperson.

CUSTOM_GUILD_LEADER is_law_maker, elected, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, has_met_market_req, active. number: 1 precedence: 50, mandate (max): 1, demand (max): 2, default_color_entry Responsibilities: law_making, law_enforcement, receive_diplomats, make_introductions, make_peace_agreements, make_topic_agreements, military_goals, military_strategy. best_appointment_precedence 30001

CUSTOM_GUILD_ALDERPERSON elected, duty_bound, has_responsibilities, do_not_cull, is_leader, has_met_pop_req, menial_work_exemption, has_received_positions, has_met_market_req, active number: 1 precedence: 150, mandate (max): 0, demand (max) 1, default_color_entry responsibilities: meet_workers, manage_production best_appointment_precedence 30001

CUSTOM_GUILD_STEWARD elected, duty_bound, has_responsibilities, do_not_cull, is_leader, has_met_pop_req, menial_work_exemption, has_received_positions, has_met_market_req, active responsibilities: trade number: 1 precedence: 160, mandate (max): 0, demand (max) 1, default_color_entry best_appointment_precedence 30001

CUSTOM_GUILD_CLERK elected, duty_bound, has_responsibilities, do_not_cull, is_leader, has_met_pop_req, menial_work_exemption, has_received_positions, has_met_market_req, active responsibilities: accounting number: 1 precedence: 170, mandate (max): 0, demand (max) 1, default_color_entry best_appointment_precedence 30001

Mercenaries (Entity Type 6)

The only position of military entities (mercenary groups) seems to be the CUSTOM_MERCENARY_LEADER, who can ie. be called Leader or General.

CUSTOM_MERCENARY_LEADER is_law_maker, elected, duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, has_met_pop_req, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, has_met_market_req, active. precedence: 50, mandate (max): 1, demand (max): 2, default_color_entry no succession defined Responsibilities: law_making, law_enforcement, receive_diplomats, make_introductions, make_peace_agreements, make_topic_agreements, military_goals, military_strategy. best_appointment_precedence 30001

Merchants (Entity Type 9)

Positions found so far: CUSTOM_COMPANY_LEADER (called ie. head or master) and CUSTOM_COMPANY_FACTOR (called ie. agent or factor).

CUSTOM_COMPANY_LEADER is_law_maker, duty_bound, succession_by_heir, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, has_met_market_req, active. precedence: 50, mandate (max): 1, demand (max): 2, default_color_entry Responsibilities: law_making, law_enforcement, receive_diplomats, make_introductions, make_peace_agreements, make_topic_agreements, military_goals, military_strategy. best_appointment_precedence 30001

CUSTOM_COMPANY_FACTOR duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver, has_met_market_req, active. precedence: 200, mandate (max): 0, demand (max): 1, default_color_entry Responsibilities: trade, accounting number: -1 appointed by CUSTOM_COMPANY_LEADER (same entity). best_appointment_precedence 30001

Other not mentioned entities

The other entities like performance troupes (entity type 8) and migrating groups (entity type 3) do not seem to have positions. Instances of the entity type 2 (called VesselCrew according to dfhack) were so far not found.

Sources to process

See spoiler-sections of those posts.

Civilizations

If all positions of a civ are variable, then the CUSTOM_LAW_MAKER position needs to be created (in world-gen), before other positions (of the possible positions) can be created. After the creation (and filling) of the law-maker positions, the other variable positions (both CUSTOM_OFFICIALS_i and CUSTOM_MARKET_OFFICIALS_i, where i stands for a non-zero natural number) can be created in any order. These other positions are then always appointed by the law-maker of the civ. The law-maker position itself uses succession by heir.

In contrast to e.g the positions of the dwarven civilizations, where the site nobility positions (eg. baron, duke) do get added to the own position list (vector) of the civilization, the CUSTOM_LAW_MAKER (and CUSTOM_LAW_MAKER_2) positions (of a site government) are not added to the own position list (at least for civs with all variable positions). The "own" positions list (of the civ entity) only exclusively contains the variable positions of the civ, which are all created by the civ, and no positions which are the "ruler" of a site (even if the variable site position was appointed by the law maker of the civ). Also the "site" positions list is empty (or at least no entries were found so far).

The following table gives an overview over the different possible rulers of a human or goblin civilization.

Position Name succession type Responsibilities Demands Mandates Precedence is diplomat human goblin
CUSTOM_LAW_MAKER master none law making, military goals, military strategy 3 2 1 no no yes
CUSTOM_LAW_MAKER master none law making, military goals, 3 2 1 yes no yes


CUSTOM_LAW_MAKER law-giver by heir law making, make peace agreements, military goals, military strategy 3 2 1 no yes no
CUSTOM_LAW_MAKER law-giver by heir law making, make peace agreements, military goals 3 2 1 yes yes no

Note that the ruler (law-giver or master) is not a diplomat, if and only if the ruler has the military strategy responsibility. Also note that the master of a goblin civilization does not have peace agreements as responsibilities.

The following table gives an overview of the possible non-ruling civ-level positions:

Position Name Responsibilities Demands Mandates Precedence Number Flags11 Flags22 Color human goblin
CUSTOM_OFFICIAL_1 (royal/high/head/chief) "keeper of the seal"/chancellor receive diplomats, make introductionsa and make topic agreements; optional: espionage 3 2 20 1 yes no (5,0,1) yes yes
CUSTOM_OFFICIAL_2 (royal/chief/head/high) justiciar law enforcement, collect taxes 3 2 60 1 yes no (5,0,1) yes no
CUSTOM_OFFICIAL_3 royal/chief/high/head treasurer trade, accounting 2 1 70 1 yes no (5,0,1) yes no
CUSTOM_OFFICIAL_4 royal/chief/high/head advisor/counselor advise leaders 2 1 55 1 yes no (5,0,1) yes yes
CUSTOM_OFFICIAL_5 (royal/chief/high/head) chamberlain oversee leader houshold 1 0 80 1 yes no (5,0,1) yes yes
CUSTOM_OFFICIAL_6 master of beasts tame exotics, manage animals 1 0 90 1 yes no (5,0,1) yes yes
CUSTOM_OFFICIAL_7 royal/chief/head/high butler/cup-bearer manage leader houshold food and drinks 0 0 300 1 yes no (5,0,1) yes no
CUSTOM_OFFICIAL_8 royal/chief/high/head doctor health management 0 0 310 1 yes no (5,0,1) yes no
CUSTOM_OFFICIAL_9 royal/head/high/chief executioner executions 0 0 320 1 yes no (5,0,1) yes yes
CUSTOM_OFFICIAL_10 royal/chief/high/head chef prepare leader meals 0 0 330 1 yes no (5,0,1) yes no
CUSTOM_OFFICIAL_11 royal/chief/head/high housekeeper manage leader houshold cleanliness 0 0 340 1 yes no (5,0,1) yes no


CUSTOM_MILITARY_STRATEGY general/(field) marshal / constable military strategy 3 2 50 1 yes yes (5,0,1) yes yes
CUSTOM_MILITARY_GOALS war leader military goals, optional: military strategy 3 2 45 1 yes yes (5,0,1) yes no

Note: 1) These are the standard official flags: duty_bound, has_responsibilities, do_not_cull, has_met_pop_req, color, menial_work_exemption, has_received_positions and has_met_market_req. 2) These are the following additional flags: flashes, brag_on_kill, chat_worthy, kill_quest, account_exempt, punishment_exemption, quest_giver andspecial_burial.

In the above table the responsibility "espionage" of the CUSTOM_OFFICIAL_1 is optional. Only if the CUSTOM_OFFICIAL_1 is created with the "espionage" responsibility such officials can also be created for the site governments (as all other responsibility are already performed by the standard custom site ruler). Also, the columns "human" and "goblin" dictate whether human and/or goblin civilizations can have the positions.

Site Governments

The following table gives an overview of the non-ruler variable positions of a site government.

Position Name Responsibilities Demands Mandates Precedence Number Color human goblin
CUSTOM_MARKET_OFFICIAL_1 ? maintain sewers ? ? ? 1 (5,0,1) yes no
CUSTOM_MARKET_OFFICIAL_2 grain/harvest official/administrator/caretaker/commissioner food supply 1 0 450 1 (5,0,1) yes no
CUSTOM_MARKET_OFFICIAL_3 fire administrator/official/commissioner fire safety 0 0 475 1 (5,0,1) yes no
CUSTOM_MARKET_OFFICIAL_4 judge/magistrate judge 1 0 350 1 (5,0,1) yes no
CUSTOM_MARKET_OFFICIAL_5 building caretaker/administrator/official/commissioner construction permits, building safety 1 0 460 1 (5,0,1) yes no
CUSTOM_MARKET_OFFICIAL_6 fire administrator/official/commissioner maintain roads, bridges and tunnels 1 0 375 1 (5,0,1) yes no
CUSTOM_OFFICIAL_1 (high/head/chief) "keeper of the seal"/chancellor espionage 3 2 20 1 (5,0,1) yes yes?
CUSTOM_OFFICIAL_2 (chief/head/high) justiciar collect taxes 3 2 60 1 (5,0,1) yes no
CUSTOM_OFFICIAL_3 chief/high/head treasurer trade, accounting 2 1 70 1 (5,0,1) yes no
CUSTOM_OFFICIAL_4 chief/high/head advisor/counselor advise leaders 2 1 55 1 (5,0,1) yes yes?
CUSTOM_OFFICIAL_5 (chief/high/head) chamberlain oversee leader houshold 1 0 80 1 (5,0,1) yes yes?
CUSTOM_OFFICIAL_6 master of beasts tame exotics, manage animals 1 0 90 1 (5,0,1) yes yes?
CUSTOM_OFFICIAL_7 chief/head/high butler/cup-bearer manage leader houshold food and drinks 0 0 300 1 (5,0,1) yes no
CUSTOM_OFFICIAL_8 chief/high/head doctor health management 0 0 310 1 (5,0,1) yes no
CUSTOM_OFFICIAL_9 head/high/chief executioner executions 0 0 320 1 (5,0,1) yes yes?
CUSTOM_OFFICIAL_10 chief/high/head chef prepare leader meals 0 0 330 1 (5,0,1) yes no
CUSTOM_OFFICIAL_11 chief/head/high housekeeper manage leader houshold cleanliness 0 0 340 1 (5,0,1) yes no

In the above table the columns "human" and "goblin" donate, whether a site government of a human civilization or of a goblin civilization can have that position (or at least, if the position was encountered so far). Also the custom officials (CUSTOM_OFFICIAL_1 etc.), in contrast to market officials (CUSTOM_MARKET_OFFICIAL_1 etc.), seem to only be generated, if a) the parent civ did generate the position and b) the official has a responsibility that the site-ruler does not have.

In addtion to the above table the "best_appointment_precedence" is 30001. Also the following flags are set (true) for all officials, regardless, of whether belonging to a human or goblin site government: duty_bound, has_responsibilities, do_not_cull, has_met_pop_req, color, menial_work_exemption, has_received_positions and has_met_market_req.

Additionally the position entry usually has the flag active set and the flag is_replaced is false, otherwise the position would no longer be active (and might have been replaced).

Bandits

Bandits use the entity types 4 and 7, which are nomadic groups (type 4) and outcasts (type 7).

The following table gives an overview over the possible variable positions used by bandits (some further info on bandit leaders is below the table).

Position Name appointment type Responsibilities squad size Demands Mandates Precedence Number add. flags1 rules from location entity type
CUSTOM_BANDIT_LEADER Boss, Captain, Chief, Chieftain, Commander, Leader, Master, Overlord, Ringleader or Warlord law making, law enforcement, receive diplomats, make introduction, make peace agreements, make topic agreements, military strategy and military goals elected 20 2 1 55 1 yes no nomadic, outcast
CUSTOM_BANDIT_LEADER2 Boss, Captain, Chief, Chieftain, Commander, Leader, Master, Overlord, Ringleader or Warlord law making, law enforcement, receive diplomats, make introduction, make peace agreements, make topic agreements, military strategy and military goals elected 20 2 1 10 1 yes no nomadic
CUSTOM_OUTCAST_LT lieutenant patrol territory, attack enemies appointed by bandit leader 0 1 0 160 -1 no no outcast
CUSTOM_OUTCAST_FACTOR representative trade and accounting appointed by bandit leader 0 1 0 70 -1 yes (except is_law_maker) yes outcast

Notes: 1): Additional flags are: is_law_maker, flashes, brag_on_kill, chat_worthy, kill_quest, account_exempt and quest_giver 2): Only difference to the other CUSTOM_BANDIT_LEADER is the increased precedence of 10, encountered in 11 of 148 bandit leaders (148 of 175 nomadic groups had leaders). The reason is of yet unknown, except that the CUSTOM_BANDIT_LEADER is also used by the goblin civilization (and some site governments, without an entity link to a parent civ, had a nomadic group with a custom bandit leader as a child entity).

Further note the common flags of these positions are: duty_bound, has_responsibilities, do_not_cull, is_leader, has_met_pop_req, menial_work_exemption, has_received_positions and has_met_market_req.

The entity type in the above table refers to the (as displayed by dfhack's gm-editor, when viewing an entity).

Additionally the bandit leader (CUSTOM_BANDIT_LEADER) always has a squad size of 20 and the squad members are refered to as "bandits".

Religious Entities

Some religious entities, which are considered "child"-entities of civilizations (no religious entity which was not a "child" of a civ entity has been found so far), also have variable positions. If a religious entity rules a site (always monastery?), then the only variable position (of that entity) seems to be the CUSTOM_LAW_MAKER and the name of the position seems to be always "abbot". Otherwise the variable positions PRIEST, HIGH_PRIEST and HIGHEST_PRIEST can be created for that religious entity, where any such entity, if it has a position, will always have the PRIEST as position. Afterwards, the position HIGH_PRIEST can be created and at last - after the HIGH_PRIEST was created - the HIGHEST_PRIEST can be created. The names of these position are randomly created (more about the name generation is currently out-of-scope, ie. why a PRIEST might be called "sacred squid", "holy burial", "sacred rumor", "holy lemon" or "sacred paper" is out-of-scope at least for this wiki-article). No temple is needed in an associated site for a religious entity (not ruling from a monastery) to create a priest, high priest or highest priest position.

An overview on the positions of religious entities is given in the following table:

Position name prefix name appointment type5 Responsibilities Precedence Demands Mandates number missing common flags1 additional flags2
CUSTOM_LAW_MAKER3 abbot heir law making, law enforcement, receive diplomats, make introductions, make peace agreements, make topic agreements, military strategy, military goals 100 3 2 1 is_diplomat all
PRIEST holy or sacred random4 elected religion 200 0 0 -1 none no
HIGH_PRIEST high, first or exalted random4 elected law_making, receive diplomats and make topic agreements 50 3 2 -1 none all (except determines_coin_design)
HIGHEST_PRIEST absolute or most sacred/high/exalted random4 elected law_making, receive diplomats and make topic agreements 1 5 3 1 none all (except determines_coin_design)


Notes: 1): The common flags are: duty_bound, has_responsibilities, chat_worty, do_not_cull, is_leader, is_diplomat, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions and has_met_market_req. So if one of the flags is mentioned in a column, then the position does not have that flag.

2): The additional flags (in this case) are: is_law_maker, flashes, brag_on_kill, kill_quest, exported_in_legends, account_exempt, quest_giver, special_burial.

3): Is always the only position for that religious entity. And so far any such entity, which was found, always governed/ruled a monastary.

4): The name is one of the possible "name prefix" for the position written before a completly random word, which may or may not depend on the religious spheres/domains worshipped by that religion.

5): The appointment/succession type is actually determined by flags, ie. elected and succession_by_heir. One of the flags is also true for these positions (but not explictly mentioned in the common/additional flags).


Additional notes: The PRIEST, HIGH_PRIEST and HIGHEST_PRIEST have a variable color entry, but the color-flag (of the position entry) is false, so it is unclear, whether currently the color entry has any effect.

Mercenary Group

All mercenary entities will have at least one position (the CUSTOM_MERCENARY_LEADER). The only other possible position is the CUSTOM_MERCENARY_TREASURER.

Basic information about both positions are found in the table below (and the explanations below the table).

Position Name appointment type Responsibilities Precedence Demands Mandates number imp. flags1
CUSTOM_MERCENARY_LEADER usually "warlord", "leader", "general" or "overlord" but very unusual names are possible (see below table) elected law making, law enforcement, receive diplomats, make introductions, make peace agreements, make topic agreements, military strategy, military goals 50 2 1 1 yes
CUSTOM_MERCENARY_TREASURER treasurer elected trade and accounting 160 1 0 1 no

Notes: 1): The imp. flags are flashes, brag_on_kill, chat_worthy, punishment_exemption, kill_quest and quest giver.

Both positions also have the is_leader flag and the following flags: duty_bound, has_responsibilities, has_met_pop_req, menial_work_exemption, has_received_positions and has_met_market_req.

For the mercenary leader also illustrous names such as lord twinkle, lord duty, lord savant, maze commander or secret commander can be created. In these cases the name seems to be generated by either adding a random word after the word lord or adding a random word before commander.

Guilds

All guilds will always have all four of the variable positions mentioned in this section. Note that "merchant guilds" are merchant companies and an entirely separate entity.

The following table gives an overview of the four guild positions.

Position Name appointment type Responsibilities precedence demands mandates number add. flags1
CUSTOM_GUILD_LEADER dean/doyen law making, law enforcement, receive diplomats, make introductions, make peace agreements, make topic agreements, military strategy, military goals elected 50 2 1 1 yes
CUSTOM_GUILD_ALDERPERSON alderperson meet workers, manage production elected 150 1 0 1 no
CUSTOM_GUILD_STEWARD steward or treasurer trade elected 160 1 0 1 no
CUSTOM_GUILD_CLERK clerk, bookkeeper, recordkeeper accounting elected 170 1 0 1 no

Notes: 1): The additional flags are: is_law_maker, flashes, brag_on_kill; chat_worthy, do_not_cull, kill_quest, account_exempt, rules_from_location, punishment_exemption and quest_giver.

All positions have the following flags in common: duty_bound, has_responsibilities, do_not_cull, is_leader, has_met_pop_req, menial_work_exemption, has_received_positions, has_met_market_positions.

Merchant Company

Every merchant company will have a leader (CUSTOM_COMPANY_LEADER). Furthermore a merchant company can have a CUSTOM_COMPANY_FACTOR, to which an unlimited number of history figures can be assigned to (ie. a company can have multiple governors).

An overview of both positions is given by the following table:

Position name appointment type Responsibilities Precedence Demands Mandates number additional flag
CUSTOM_COMPANY_LEADER master or head elected or succession by heir law making, law enforcement, receive diplomats, make introductions, make peace agreements, make topic agreements, military goals, military strategy 50 2 1 1 is_law_maker
CUSTOM_COMPANY_FACTOR agent, factor, administrator or governor appointed by company leader trade and accounting 200 1 0 -1 none

Both positions have the following flags in common: duty_bound, has_responsibilities, flashes, brag_on_kill, chat_worthy, do_not_cull, kill_quest, is_leader, account_exempt, has_met_pop_req, rules_from_location, menial_work_exemption, punishment_exemption, has_received_positions, quest_giver and has_met_market_req.

Also note that in contrast to many other variable positions (of different entities) for the CUSTOM_COMPANY_LEADER both an election based appointment (or succession) and an succesion by heir is possible, but each merchant company will only have an elected leader or a leader (with inheritance).

Raw tokens

The tokens that manage the creation of positions are SITE_VARIABLE_POSITIONS and VARIABLE_POSITIONS.

SITE_VARIABLE_POSITIONS allows for the creation of lords, hearthpersons, and bosses, and [VARIABLE_POSITIONS] allows creation of Law-makers.

Generated positions

The following positions can be created. Note: these should be sorted among the different group types.

  • CUSTOM_LAW_MAKER
  • CUSTOM_LAW_MAKER_2
  • CUSTOM_OUTCAST_LT
  • CUSTOM_OUTCAST_FACTOR
  • CUSTOM_COMPANY_LEADER
  • CUSTOM_COMPANY_FACTOR
  • CUSTOM_MERCENARY_LEADER
  • CUSTOM_MERCENARY_TREASURER
  • CUSTOM_BANDIT_LEADER
  • CUSTOM_MARKET_OFFICIAL_#
  • CUSTOM_OFFICIAL_#
  • CUSTOM_MILITARY_STRATEGY
  • CUSTOM_MILITARY_GOALS
  • HIGHEST_PRIEST
  • HIGH_PRIEST
  • CUSTOM_GUILD_LEADER
  • CUSTOM_GUILD_STEWARD
  • CUSTOM_GUILD_CLERK
  • CUSTOM_GUILD_ALDERPERSON
  • WORSHIP_HF

The following names can be seen given to those positions. Note: these should be sorted among the different positions.

  • lord
  • hearthperson
  • factor
  • agent
  • governor
  • lieutenant
  • representative
  • head
  • chieftain
  • warlord
  • ringleader
  • cup-bearer
  • butler
  • master of beasts
  • sewer
  • housekeeper
  • chef
  • executioner
  • chancellor
  • chief
  • chamberlain
  • captain
  • chief / chieftess
  • constable
  • royal
  • advisor
  • counselor
  • justiciar
  • keeper of the seal
  • law-giver
  • baron
  • marshal
  • war leader
  • most high priest
  • absolute X
  • most exalted X
  • most high X
  • most holy X
  • most sacred X
  • treasurer
  • recordkeeper
  • clerk
  • bookkeeper
  • doyen / doyenne
  • dean
  • steward
  • alderperson
  • X administrator
  • X official (like grain official)
  • X officials
  • X commissioner
  • X commissioners
  • X caretakers
  • judge
  • justices
  • magistrate
  • abbot