Missions/Victory Conditions

From Total War Modding
Revision as of 11:47, 5 March 2022 by Wolfy (talk | contribs)

Originally written by Wolfy.

WORK IN PROGRESS

Mission Types

Each one of the missions has to have a type associated. This type defines not only the kind of condition that has to be achieved or the default associated text, but also the structure that objective has to have in order to be loaded. However, they are not properly defiened anywhere and the best way to discover new ones is to reverse engineer them by manually testing new possibilities or by looking for new keys in past or future victory_objectives.txt files.

Again, the complete list is not available anywhere and this is the best collection available. It includes data extracted since Medieval II and includes all main games and sagas until Three Kingdoms. The list will be expanded further, if possible, once Warhammer III Assembly Kit is out. In any case, it is important to note that a lot of modders associate the objective keys to the table MISSION_TYPES, but this is not true. Not all possible types are listed in that table and not all keys in that table work as valid mission types.

List of known mission types
key description
AT_LEAST_X_RELIGION_IN_ALL_PROVINCES
AT_LEAST_X_RELIGION_IN_PROVINCES Ensure a minimum of X religion/corruption in the given list of provinces.
ATTAIN_FACTION_PROGRESSION_LEVEL Become an Emperor or something idk.
ASSASSINATE_CHARACTER Kill one character, agent or lord, in particular.
ASSASSINATE_X_CHARACTERS Kill a number of characters. You can specify some rules, like their culture.
CONSTRUCT_N_BUILDINGS_FROM Construct N buildings from a given pool.
CONSTRUCT_N_OF_A_BUILDING Construct the same building N times.
CONSTRUCT_N_OF_A_BUILDING_CHAIN Construct a building for the same building chain N times.
CONTROL_N_PORTS_INCLUDING Control a given number of portuary regions. You can specify which ones, although you do not need to specify all of them. Military alliances/vassals' possessions count.
CONTROL_N_PROVINCES_INCLUDING Control a given number of provinces. You can specify which ones, although you do not need to specify all of them. Military alliances/vassals' possessions count.
CONTROL_N_REGIONS_INCLUDING Control a given number of regions. You can specify which ones, although you do not need to specify all of them. Military alliances/vassals' possessions count.
CONTROL_N_REGIONS_FROM Control a given number of regions from a given pool.
DEFEAT_N_ARMIES_OF_FACTION Defeat in battle a given faction X times.
DESTROY_ALL_WORLD_LEADERS I do not remember bruh. Guess deprecated/historical.
DESTROY_FACTION Completely wipe a given list of factions. Confederation can be allowed with a flag.
DONT_LOSE_REGION Never used but seems quite lineal.
EARN_X_AMOUNT_FROM_BUILDING_WEALTH At the start of your turn, your building income should be bigger than X. Although it may be wrong and be based on the historical earnings, not sure.
EARN_X_AMOUNT_FROM_RAIDING Earn X amount from raiding during all the campaign. It is accumulative.
ERADICATE_FACTION I do not know the difference between this one and DESTROY_FACTION. Use the latter just in case.
FIGHT_SET_PIECE_BATTLE Fight a given battle. A battle for an object or a final campaign battle, for example.
HAVE_AT_LEAST_X_MONEY Get money. Like a lot. Being “a lot” X.
HAVE_AT_LEAST_X_OF_A_POOLED_RESOURCE Accumulate a pooled resource. It counts global pooled resources but I do not know if it counts military- or region-bound pooled resources introduced in WH3.
HAVE_DIPLOMATIC_RELATIONSHIP Seems obvious but I am not sure how much you can twerk it.
HAVE_RESOURCES Have access to resources like Gold or Horses.
HAVE_N_AGENTS_OF_TYPE Deploy X agents. Not sure if it works with lords.
HOLD_ENTIRETY_OF_N_PROVINCES_INCLUDING I do not know the difference between this one and CONTROL_N_PROVINCES_INCLUDING, although it may be based on not considering your military alliances/vassals territory. I do not recommend using it.
INCOME_AT_LEAST_X At the start of your turn, get an income of at least X.
LOOT_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING Loot or sack a given set of settlements. It is a pain in the ass because if you occupy or raze, it does not count. Usually better to use RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING.
MAINTAIN_N_CLIENT_STATES Not sure. It is old stuff from historical games. Maybe vassals.
MAINTAIN_TRADE_WITH_N_FACTIONS Kinda lineal. Trade with X partners.
MEET_ALL_OTHER_OBJECTIVES_WITHIN_X_TURNS You get X turns to complete all other objectives. Otherwise you lose.
MP_COMPETITIVE Used for multiplayer head-to-head. Basically accepts everything.
NO_MORE_THAN_X_RELIGION_IN_ALL_PROVINCES Prevent more than X religion/corruption in the given list of provinces.
OWN_A_PORT_ADJOINING_SEA_REGIONS_INCLUDING Never worked with sea regions directly, so may be tricky, but seems quite lineal.
OWN_AT_LEAST_ONE_SOURCE_OF_EACH_RESOURCE Own at least one source of each resource like Gold or Horses. Not sure if you need to control the area or also build the building (Is there a non redundant way of saying this?).
OWN_N_NAVAL_UNITS Not working anymore. Sad. BRING NAVAL COMBAT BACK.
OWN_N_PROVINCES_WITH_CULTURAL_DOMINANCE I believe it only works on old historical games because Cultural Dominance is not a thing anymore. Not sure tho.
OWN_N_REGIONS_INCLUDING No idea about the difference between this one and CONTROL_N_REGIONS_INCLUDING. Use the latter.
OWN_N_UNITS Own a total of X units in all your armies.
PERFORM_RITUAL Perform a ritual. Note that there are a lot of rituals not only related to the Vortex campaign, like offering meat to the maw or performing a Clan Eshin scheme.
RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING Raze or sack a given set of settlements. It is a pain in the ass because if you occupy the settlement, it does not count. You do not really have to specify a list of settlements tho, it can be just a number.
RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_RELIGION Like the key above, but targeting a religion in particular.
REACH_SPECIFIED_DATE Reach a specific date/year. Not really useful in Warhamemer. In fact I am not even sure if it is possible.
RESEARCH_N_TECHS_OF_TYPE_X When I was young, we had multiple research lines based on different aspects, like economy and military. That is not happening anymore and there is a lot of multiculturality. So, no types anymore. You can use it to research X techs without forcing a type.
SCRIPTED A script. Whatever you want.
SUBJUGATE_FACTIONS As far as I know, vassalize factions. I may be wrong.
TRADE_INCOME_AT_LEAST_X At the start of your turn, have a trading income of at least X.
VASSALS_OWN_BUILDINGS Make your vassals own buildings. Useful for shitty campaigns like Nakai.

Usage

Every mission type has a particular usage and, sadly, it is not documented anywhere. So this should work as your reliable source. Note that some things may change or be disabled from game to game.

AT_LEAST_X_RELIGION_IN_ALL_PROVINCES

Ensure a minimum of X religion/corruption around all the map.

Keys

  • total: integer, 1
  • religion: <religion_key>, 1

Works on (Confirmed): Attila

Does not work on: WH3

AT_LEAST_X_RELIGION_IN_PROVINCES

Keys

  • total: integer, 1
  • religion: <religion_key>, 1
  • province: <province_key>, 1..N

Works on (Confirmed): Attila, WH2

Does not work on: WH3

ATTAIN_FACTION_PROGRESSION_LEVEL

TO BE ANALYZED / NEVER USED

ASSASSINATE_CHARACTER

TO BE ANALYZED / NEVER USED

ASSASSINATE_X_CHARACTERS

Keys

  • total: integer, 1
  • subculture: <subculture_key>, 0..1

Works on (Confirmed): WH2

BECOME_WORLD_LEADER

TO BE ANALYZED / NEVER USED

CAPTURE_X_BATTLE_CAPTIVES

Keys

  • total: integer, 1

Works on (Confirmed): WH2

COMPLETE_N_MISSIONS_OF_CATEGORY

Keys

  • total: integer, 1
  • event_category: <event_category>, 1..N

Works on (Confirmed): WH2

CONSTRUCT_BUILDING

TO BE ANALYZED / NEVER USED

CONSTRUCT_N_BUILDINGS_INCLUDING

Keys

  • total: integer, 1
  • building_level: <building_level>, 1..N
  • faction: <faction_key>, 1

Works on (Confirmed): Attila, WH2, WH3

CONSTRUCT_N_BUILDINGS_FROM

Keys

  • total: integer, 1
  • building_level: <building_level>, 1..N
  • faction: <faction_key>, 1

Works on (Confirmed): Attila, WH2

CONSTRUCT_N_OF_A_BUILDING

Keys

  • total: integer, 1
  • building_level: <building_level>, 1
  • faction: <faction_key>, 1

Works on (Confirmed): Attila, WH2

CONSTRUCT_N_OF_A_BUILDING_CHAIN

TO BE ANALYZED / NEVER USED

CONTROL_N_PORTS_INCLUDING

TO BE ANALYZED / NEVER USED

NOTE: I assume CONTROL_N_PORTS_FROM should exist too

CONTROL_N_PROVINCES_INCLUDING

Keys

  • total: integer, 1
  • province: <province_key>, 0..N

Works on (Confirmed): Attila, WH2, WH3

NOTE: I assume CONTROL_N_PROVINCES_FROM should exist too

CONTROL_N_REGIONS_INCLUDING

Keys

  • total: integer, 1
  • region: <region_key>, 0..N

Works on (Confirmed): Attila, WH2

CONTROL_N_REGIONS_FROM

Keys

  • total: integer, 1
  • region: <region_key>, 0..N

Works on (Confirmed): WH2

DEFEAT_N_ARMIES_OF_FACTION

Keys

  • total: integer, 1
  • faction: <faction_key>, 0..1

Works on (Confirmed): WH2

DESTROY_ALL_WORLD_LEADERS

TO BE ANALYZED / NEVER USED

DESTROY_FACTION

Keys

  • faction: <faction_key>, 1..N
  • confederation_valid 0..1

Works on (Confirmed): Attila, WH2, WH3

DONT_LOSE_REGION

TO BE ANALYZED / NEVER USED

EARN_X_AMOUNT_FROM_BUILDING_WEALTH

Keys

  • total: integer, 1

Works on (Confirmed): Attila

EARN_X_AMOUNT_FROM_RAIDING

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2

ERADICATE_FACTION

TO BE ANALYZED / NEVER USED

FIGHT_SET_PIECE_BATTLE

Keys

  • set_piece_battle: <set_piece_battle_key>, 1

Works on (Confirmed): WH2

HAVE_AT_LEAST_X_MONEY

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2, WH3

HAVE_AT_LEAST_X_OF_A_POOLED_RESOURCE

Keys

  • total: integer, 1
  • pooled_resource: <pooled_resource_key>, 1

Works on (Confirmed): WH2, WH3

HAVE_DIPLOMATIC_RELATIONSHIP

TO BE ANALYZED / NEVER USED

HAVE_RESOURCES

Keys

  • resource: <resource_key>, 1..N

Works on (Confirmed): WH2

HAVE_N_AGENTS_OF_TYPE

Keys

  • total: integer, 1
  • agent_subtype: <agent_subtype_key>, 1

Works on (Confirmed): Attila, WH2

HOLD_ENTIRETY_OF_N_PROVINCES_INCLUDING

TO BE ANALYZED / NEVER USED

INCOME_AT_LEAST_X

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2

LOOT_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING

Keys

  • total: integer, 1
  • region: <region_key>, 0..N

Works on (Confirmed): Attila, WH2

MAINTAIN_N_CLIENT_STATES

Keys

  • total: integer, 1

Works on (Confirmed): Attila

MAINTAIN_TRADE_WITH_N_FACTIONS

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2, WH3

MEET_ALL_OTHER_OBJECTIVES_WITHIN_X_TURNS

Keys

  • total: integer, 1

Works on (Confirmed): WH2

MP_COMPETITIVE

TO BE ANALYZED / NEVER USED

NO_MORE_THAN_X_RELIGION_IN_ALL_PROVINCES

Keys

  • total: integer, 1
  • religion: <religion_key>, 1
  • province: <province_key>, 1..N

Works on (Confirmed): Attila

Does not work on: WH3

OWN_A_PORT_ADJOINING_SEA_REGIONS_INCLUDING

TBD

OWN_AT_LEAST_ONE_SOURCE_OF_EACH_RESOURCE

TBD

OWN_N_NAVAL_UNITS

TBD

OWN_N_PROVINCES_WITH_CULTURAL_DOMINANCE

TBD

OWN_N_REGIONS_INCLUDING

TBD

OWN_N_UNITS

TBD

PERFORM_RITUAL

TBD

RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING

TBD

RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_RELIGION

TBD

REACH_SPECIFIED_DATE

TBD

RESEARCH_N_TECHS_OF_TYPE_X

TBD

SCRIPTED

TBD

SUBJUGATE_FACTIONS

TBD

TRADE_INCOME_AT_LEAST_X

TBD

VASSALS_OWN_BUILDINGS

TBD