Total War: WARHAMMER

Total War: WARHAMMER

Faction Unlocker Submod - Vampires, Chaos, Norsca, Beastmen
Crynsos  [developer] Feb 9, 2017 @ 9:10am
Modder Information: Customizable Faction Leaders & Settlements
Since the start of February 2017, this mod now has a new form of support for other modders, which is aimed at being able to fully customize any of the immortal faction leaders and any of the unique Lords and Heroes which I added, such as Karak Azul's Runelord Thorek Ironbrow and Mousillon's Wight King Krell.

Every faction leader, legendary heroes, legendary lords and every settlement now have unique units and settlement chains assigned to them which equal what is available in vanilla but can be fully customized to your heart's content.



Characters (Heroes & Lords)
The most important tables in relation to editing these legendary heroes and lords are:
agent_subtypes - Assigns the core data and unit to the character embedded in the startpos. The startpos also embeds the type of main_unit that a character has assigned to it, so modifying that in this table will do nothing, you will have to edit the unit data directly instead.
land_units - Defines the main stats of a unit such as the weapon and armor and more.
main_units - Builds upon land_units and defines secondary unit information such as unit caps, costs, voiceover data and more.
campaign_character_art_sets - Links the agent_subtype together with the unit's model and textures (variants). Other tables that are related to this are campaign_character_art_sets, agent_uniforms, unit_variants and variants.
units_custom_battle_mounts - Defines what mounted unit a character converts into by equipping a mount.
ancillaries_included_agent_subtypes / ancillaries_included_subcultures / faction_agent_permitted_subtypes - Enables items, followers or mounts for agents, factions and their subcultures.
ui_unit_bullet_point_unit_overrides - Adds "Bullet Points" such as "Damage Dealer", "Anti-Large" or "Armoured" to a unit's description box and is purely decorative.
campaign_map_attrition_unit_immunities
character_skill_***
land_units_to_unit_abilities



So every one of these custom characters now has all of the above tables assigned to them mainly based on their agent_subtype, land_unit or main_unit, which is named like "wh_main_<Subculture Tag>_cha_<Character Name>", so for example "wh_main_vmp_cha_krell" or "wh_main_dwf_cha_thorek_ironbrow".

Most things can be edited by editing all of the above tables, all of them should be labeled "custom_characters" in my mod. I worked with mainly existing data, so of course if you want to create something like custom items or mounts, then you will need to edit additional tables, but these new default characters are based on default lord data and refer back to the original character data as much as possible.

To create a new character I recommend creating the necessary tables in the above order.



Settlements
Slot Templates are split into three parts:
Primary slot templates are for main settlement buildings.
Secondary slot templates are for all other buildings, such as military, defense, infrastructure and so on. Ports are handled as separate slot templates.

The database structure for assigning buildings to specific regions / settlements is:
regions >> slot_templates >> building_superchains >> building_chains >> building_levels >> building_culture_variants


All settlements that did not already have fully unique slot templates were given new ones to be fully editable. This means that all settlement building slot templates can now be found as "wh_main_<primary/secondary>_<Province Name>_<Settlement Name>", so for example "wh_main_primary_eastern_oblast_praag", "wh_main_secondary_lyonesse_mousillon"
or "wh_main_primary_zhufbar_zhufbar".

Settlements that can not be found in my slot template list already exist in the vanilla database with names such as "wh_main_special_carroburg_primary" or "wh_main_special_kislev_secondary" and can be edited in the same way as my custom slot templates.


So if you want to add a custom building that can only be built in a certain location (like for example the Great Slayer Shrine of Karak Kadrin or the Nuln Gunnery School), then you would create a custom building, assign its levels to a new building_chain, assign this to a building_superchain and assign it to the exact location via adding that superchain to the correct slot_template in slot_template_to_building_superchain_junctions.

If you want to remove or replace a building chain entirely, blank out the slot template and superchain columns in slot_template_to_building_superchain_junctions and create a new ID that is well above all currently used IDs to add your own. This will ensure compatibility with other mods trying to do a similar thing to the same settlement.



If you need help with implementing new mods based on this guide, feel free to post here with questions.
Last edited by Crynsos; Feb 12, 2017 @ 11:14am
< >
Showing 1-15 of 71 comments
☸𝕵𝖔☸ Feb 11, 2017 @ 12:22pm 
Epic news...it will make unique rosters for every faction possible right? cant wait for this, this is great! Nice job Sir !
Crynsos  [developer] Feb 11, 2017 @ 12:24pm 
Well faction-unique unit rosters or building trees were already possible to some degree, but this clearly extends the possibilities of customization in a lot of ways.
Tankbuster Feb 12, 2017 @ 3:16am 
Hey Crynsos, do you have any idea on how to separate provinces like in this mod?

http://steamcommunity.com/sharedfiles/filedetails/?id=834994489
Crynsos  [developer] Feb 12, 2017 @ 4:42am 
It's not a particulary difficult thing to do as you only need to edit a handful of tables, but it requires a startpos and is not something that I intend to include into my mods.
Tankbuster Feb 12, 2017 @ 4:53am 
Just curious. Can you tell me what tables to modify?
Crynsos  [developer] Feb 12, 2017 @ 4:57am 
Download the mod you linked and take a look at it, also look at start_pos tables that are region or province related and see if they have columns that seem important.

However also mind that this mod also includes the 10 slot capital modification and creates some entirely new provinces to move regions into, so it may be more complex than what you are looking for.

Finally, remember that doing something like this kills any kind of compatibility with several other mods, such as my Faction Unlockers.
Tankbuster Feb 12, 2017 @ 5:04am 
yes, I understand that editing the start_pos makes mods incompatible with other startpos mods. I know how the 10slot capital modification mod works because the developer of the mod mentioned what table he modded.

I tried changing the region_to_provinces_junctions tables but it did nothing.

I was just curious to see if you had done something similar because you are much better at handling the startpos.esf than I am.
Crynsos  [developer] Feb 12, 2017 @ 5:08am 
Yes, as I said, you will need to export that from the assembly kit and build a new startpos with it, that along should probably be enough to just move a settlement from one province to another.
Tankbuster Feb 12, 2017 @ 5:17am 
alright. thanks.
☸𝕵𝖔☸ Feb 12, 2017 @ 6:52am 
So I'm not a huge expert modder, but I took a look and, if I get it right, I can create for example:

lets say for averheim, a new stable building chain/superchain etc etc...then use the same stable ID in the slot_template_to_building_superchain_jonctions_tables to actually replace the vanilla stable chain for either or both regions of Averheim.So that this new stable is unique to those regions and actually field non vanilla units...right?

Can I remove a building chain in a certain region by duplicating another ID so that a region no longer have access to lets say squigs building chain?
Cataph Feb 12, 2017 @ 7:08am 
Precisely.

What I am thinking, however, in terms of compatibility with another mod that may happen to do the same thing, is to reuse the original ID for something harmless, best thing would be to create an empty superchain (if you used any other existing superchain for this, it will eventually cause visual glitches when going occupation mode).

This way the vanilla stables will disappear. Then, your custom superchain with its custom ID will appear in its place, together with anything else someone may be doing at the same time. Otherwise, just like you're overriding the vanilla chain, another custom one would be overriding yours.
Tankbuster Feb 12, 2017 @ 8:41am 
Man I just started porting over my mod and...wow, that is a lot of work :steamsad:
☸𝕵𝖔☸ Feb 12, 2017 @ 10:43am 
@Cataph

Ok...sorry I just dont seem to get how does that empty superchain will not end up as an empty building chain in the game? Or can the ID be used to something else like a unit garrison and the like? was that what you meant by something harmless !? What would be the best methode to make a vanilla ID ''asleep''?
Cataph Feb 12, 2017 @ 10:54am 
Y'know, it doesn't really matter. It was probably a good way to prevent your superchain to be overridden by another modder's but if that is a risk you're probably doing the exact same thing and having two superchains that do that (e.g., two temples of taal in talabheim) is useless.
So never mind. Just use that original ID.

For the sake of conversation, though, an empty superchain shouldn't even appear. But I'm not 100% sure now. Two identical superchains on different IDs however show up as the same superchain but mirrored, which is however harmless because only one can be built.
Last edited by Cataph; Feb 12, 2017 @ 10:56am
Crynsos  [developer] Feb 12, 2017 @ 11:09am 
The cleanest way is simply to nullify the existing IDs that you want to remove by blanking out the slot template and superchain column and then picking a new ID of your own choice that is well out of the usual range of used IDs to add your own buildings instead.
Last edited by Crynsos; Feb 12, 2017 @ 11:10am
< >
Showing 1-15 of 71 comments
Per page: 1530 50