Missions/Victory Conditions

From Total War Modding
Revision as of 03:01, 23 September 2022 by Wolfy (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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.

Known Mission Types and 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

Description: 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

Ensure a minimum of X religion/corruption in the given list of 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

Description: Become an Emperor or something idk.

TO BE ANALYZED / NEVER USED

ASSASSINATE_CHARACTER

Description: Kill one character, agent or lord, in particular.

TO BE ANALYZED / NEVER USED

ASSASSINATE_X_CHARACTERS

Description: Kill a number of characters. You can specify some rules, like their culture.

Keys

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

Works on (Confirmed): WH2

BECOME_WORLD_LEADER

Description: TBD

TO BE ANALYZED / NEVER USED

CAPTURE_X_BATTLE_CAPTIVES

Description: TBD

Keys

  • total: integer, 1

Works on (Confirmed): WH2

COMPLETE_N_MISSIONS_OF_CATEGORY

Description: TBD

Keys

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

Works on (Confirmed): WH2

CONSTRUCT_BUILDING

Description: TBD

TO BE ANALYZED / NEVER USED

Works on (Confirmed): Attila, WH2, WH3

CONSTRUCT_N_BUILDINGS_FROM

Description: Construct N buildings from a given pool.

Keys

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

Works on (Confirmed): Attila, WH2

CONSTRUCT_N_BUILDINGS_INCLUDING

Description: TBD

Keys

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

CONSTRUCT_N_OF_A_BUILDING

Description: Construct the same building N times.

Keys

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

Works on (Confirmed): Attila, WH2

CONSTRUCT_N_OF_A_BUILDING_CHAIN

Description: Construct a building for the same building chain N times.

TO BE ANALYZED / NEVER USED

CONTROL_N_PORTS_INCLUDING

Description: 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.

Keys

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

CONTROL_N_PROVINCES_INCLUDING

Description: 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.

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

Description: 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.

Keys

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

Works on (Confirmed): Attila, WH2

CONTROL_N_REGIONS_FROM

Description: Control a given number of regions from a given pool.

Keys

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

Works on (Confirmed): WH2

DEFEAT_N_ARMIES_OF_FACTION

Description: Defeat in battle a given faction X times.

Keys

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

Works on (Confirmed): WH2

DESTROY_ALL_WORLD_LEADERS

Description: I do not remember bruh. Guess deprecated/historical.

TO BE ANALYZED / NEVER USED

DESTROY_FACTION

Description: Completely wipe a given list of factions. Confederation can be allowed with a flag.

Keys

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

Works on (Confirmed): Attila, WH2, WH3 Doesn't accept overridden text

DONT_LOSE_REGION

Description: Never used but seems quite lineal.

TO BE ANALYZED / NEVER USED

EARN_X_AMOUNT_FROM_BUILDING_WEALTH

Description: 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.

Keys

  • total: integer, 1

Works on (Confirmed): Attila

EARN_X_AMOUNT_FROM_RAIDING

Description: Earn X amount from raiding during all the campaign. It is accumulative.

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2

ERADICATE_FACTION

Description: I do not know the difference between this one and DESTROY_FACTION. Use the latter just in case.

TO BE ANALYZED / NEVER USED

FIGHT_SET_PIECE_BATTLE

Description: Fight a given battle. A battle for an object or a final campaign battle, for example.

Keys

  • set_piece_battle: <set_piece_battle_key>, 1

Works on (Confirmed): WH2

HAVE_AT_LEAST_X_MONEY

Description: Get money. Like a lot. Being “a lot” X.

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2, WH3

HAVE_AT_LEAST_X_OF_A_POOLED_RESOURCE

Description: 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.

Keys

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

Works on (Confirmed): WH2, WH3

HAVE_DIPLOMATIC_RELATIONSHIP

Description: Seems obvious but I am not sure how much you can tweak it.

TO BE ANALYZED / NEVER USED

HAVE_RESOURCES

Description: Have access to resources like Gold or Horses.

Keys

  • resource: <resource_key>, 1..N

Works on (Confirmed): WH2

HAVE_N_AGENTS_OF_TYPE

Description: Deploy X agents. Not sure if it works with lords.

Keys

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

Works on (Confirmed): Attila, WH2

HOLD_ENTIRETY_OF_N_PROVINCES_INCLUDING

Description: 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.

TO BE ANALYZED / NEVER USED

INCOME_AT_LEAST_X

Description: At the start of your turn, get an income of at least X.

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2

LOOT_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING

Description: 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.

Keys

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

Works on (Confirmed): Attila, WH2

MAINTAIN_N_CLIENT_STATES

Description: Not sure. It is old stuff from historical games. Maybe vassals.

Keys

  • total: integer, 1

Works on (Confirmed): Attila

MAINTAIN_N_ALLIANCES

Description: Have a minimum number of alliances. You can not specify with who.

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH3

MAINTAIN_TRADE_WITH_N_FACTIONS

Description: Kinda lineal. Trade with X partners.

Keys

  • total: integer, 1

Works on (Confirmed): Attila, WH2, WH3

MAKE_ALLIANCE

Description: Be allied with a given faction.

Keys

  • faction: <faction_key>, 1

Works on (Confirmed): Attila, WH3

MEET_ALL_OTHER_OBJECTIVES_WITHIN_X_TURNS

Description: You get X turns to complete all other objectives. Otherwise you lose.

Keys

  • total: integer, 1

Works on (Confirmed): WH2

MP_COMPETITIVE

Description: Used for multiplayer head-to-head. Basically accepts everything.

TO BE ANALYZED / NEVER USED

NO_MORE_THAN_X_RELIGION_IN_ALL_PROVINCES

Description: Prevent more than X religion/corruption in the given list of 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

Description: Never worked with sea regions directly, so may be tricky, but seems quite linear.

TBD

OWN_AT_LEAST_ONE_SOURCE_OF_EACH_RESOURCE

Description: 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?).

TBD

OWN_N_NAVAL_UNITS

Description: Not working anymore. Sad. BRING NAVAL COMBAT BACK.

TBD

OWN_N_PROVINCES_WITH_CULTURAL_DOMINANCE

Description: I believe it only works on old historical games because Cultural Dominance is not a thing anymore. Not sure tho.

TBD

OWN_N_REGIONS_INCLUDING

Description: No idea about the difference between this one and CONTROL_N_REGIONS_INCLUDING. Use the latter.

TBD

OWN_N_UNITS

Description: Own a total of X units in all your armies.

Keys

  • total: integer, 1

Doesn't accept overridden text

PERFORM_RITUAL

Description: 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.

TBD

RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_INCLUDING

Description: 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.

Keys

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

Doesn't accept overridden text

RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_RELIGION

Description: Like the key above, but targeting a religion in particular.

TBD

REACH_SPECIFIED_DATE

Description: Reach a specific date/year. Not really useful in Warhamemer. In fact I am not even sure if it is possible.

TBD

RESEARCH_N_TECHS_OF_TYPE_X

Description: 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.

TBD

SCRIPTED

Description: A script. Whatever you want.

TBD

SUBJUGATE_FACTIONS

Description: As far as I know, vassalize factions. I may be wrong.

TBD

TRADE_INCOME_AT_LEAST_X

Description: At the start of your turn, have a trading income of at least X.

TBD

VASSALS_OWN_BUILDINGS

Description: Make your vassals own buildings. Useful for shitty campaigns like Nakai.

TBD