
全面战争:战锤II





大家好! Steam春季特卖现已开启!从今天起到3月26日,多款《全面战争》系列作品将迎来最高80%的折扣,让你焕新游戏体验。 特卖将于3月26日上午10点(太平洋时间)/下午6点(格林威治标准时间)结束。 ——全面战争团队 Instagram Discord Bluesky
本指南适用于那些希望快速获取《全面战争:战锤2》成就,但没有时间或意愿游玩所有派系的玩家。(需要拥有游戏的所有DLC) 存档文件夹在哪里?Windows路径:C: Users Name AppData Roaming The Creative Assembly Warhammer2 save_games 或 %APPDATA% The Creative Assembly Warhammer II save_games Windows路径:C: Users Name AppData Roaming The Creative Assembly Warhammer2 save_games 或 %APPDATA% The Creative Assembly Warhammer II save_games 如何操作? 您只需将我的文件夹中的文件移动到您的存档文件夹中。 如果有任何成就未立即解锁,请再跳过几个回合。你只需将文件移动到你的存档文件夹中。如果有成就未立即解锁,尝试多跳过几个回合。已完成派系列表:所有通关均在极高难度下完成,足以获取成就。派系包括:帕克索的幽灵、哈格·格雷夫、溺亡者、卡勒多骑士、帝国(瑞克领)、纳迦隆德(所有建筑)、艾瑞尔的使者、铁手远征军、腾达的战群(传奇难度)、高等精灵。艾查恩(所有建筑) 艾辛氏族 伊察 尼赫喀拉流亡者(完成亡者教派) 混沌勇士 赫姆崔(传奇) 吸血鬼伯爵领(占领米拉利亚诺) 更新后的溺水者(歌剧剧院成就) 漫游者/诺斯卡(占领莫德海姆) 纳迦什信徒 所有战役均在极难难度下完成——这足以解锁成就。痘疫傀儡 哈格·格拉夫 溺水者 卡勒多骑士 帝国(瑞克领) 纳伽隆德(所有建筑) 艾瑞儿的使者 铁眉远征军 泰纳达尔战群(传奇) 伊泰恩高等精灵(所有建筑) 艾辛氏族 伊扎克 尼赫喀拉流亡者(已完成亡者教派) 混沌勇士 古墓王(传奇) 吸血鬼伯爵(占领米拉格连诺) 翻新溺水者(成就) 流浪者/诺斯卡(占领莫德海姆) 纳加什信徒所需模组: 创建存档时出现了严重错误,且无法修复。为避免因缺少必要模组导致游戏崩溃,请暂时安装以下少量模组。注意事项 几乎在每个存档中,你都需要进行最终战斗,或者像帝国阵营那样,占领遗迹以获取成就。 ⚠️ 重要提示:如果你加载由模组创建的存档时未启用模组,存档可能会损坏,即使重新启用模组也无法正常运行。 请始终使用与创建存档时相同的模组。在几乎每一个存档中,你都需要要么进行最终战斗,要么像帝国势力那样占领遗迹来解锁成就。 【重要提示】:如果加载由模组创建的存档时未启用那些模组,存档可能会损坏并无法使用,即使之后重新启用模组也可能无法恢复。请始终使用创建存档时启用的相同模组。
This guide is meant to walk prospective modders through creating a new unit in TWW2 using RPFM, assuming little to no knowledge of modding. Preface & Tools PrefaceThe basics of creating new units are fairly easy and fast, but alien for someone just starting modding. While there are already a few unit creation guides out there (including Sebidee's, which I will link below) there are often issues with them being out of date or (imo) laid out confusingly, and I have a few other guides I'd like to do that build off of this, custom lords and skills and such, so I figured I'd start out the series with a simple unit creation guide. ToolsYou will only really NEED one tool - Rusted Pack File Manager[github.com], hereafter referred to as RPFM. It's basically a better and actively updated version of the classic Pack File Manager (PFM) with a lot of useful tools like dependency checkers and MyMod functionality that I mostly won't go heavily into here. The one thing I will stress is to use the Diagnostics Tool heavily; if it isn't already on, View->Toggle Diagnostics Window. Also make sure that your Total War Warhammer game is correctly linked in Packfile->Preferences, as well as that going to Game Selected and ensuring it's set to Warhammer 2. Diagnostics tool will catch most simple errors for you. You will need to generate a dependencies cache file (special stuff->warhammer 2-> Generate Dependencies Cache), which requires the TWW2 assembly kit to be installed. I also suggest having two instances of RPFM open at once when modding, one opening the Data file to compare with vanilla tables and one for your mod. I usually keep a notepad file open as well with just the unit key so I can copy-paste it easily. As one final note - you don't HAVE to follow the exact order I did this guide in. Many things can be done in any order, though you will often run into red dependencies temporarily if you do stuff in a weird order. I tried to lay everything out in the way I found most natural and easy to do, but if you find you REALLY like doing main_units before land_units... suit yaself. Cheat Sheet While I will go down the list and explain what to do with each, I'm going to share my shortform list of tables and content for unit creation; once you get comfortable with unit modding you'll generally only need this rather than the full guide. If this is your first time modding though, I highly recommend going through the guide part by part so you don't miss important information, like which of these is a table, which is an image, which is a mesh, what the hell is a loc file, etc. Basic Tables land_units main_units ui_unit_bullet_point_unit_overrides unit_description_short_texts unit_set_to_unit_junctions units_to_groupings_military_permissions Visual Stuff variants unit_variants variantmeshdefinitions unit icon Utility Tables units_custom_battle_permissions cdir_military_generator_unit_qualities culture_to_battle_animation building_units_allowed Localization land_units.loc unit_description_short_texts.loc Initial Setup and Naming Conventions First things first, we're going to create a new packfile (Ctrl-N). This gives us a blank pack with no tables or name. If this is your first mod, I would suggest saving it now, NOT in the data folder, with a simple name. There are a lot of different naming conventions out there; some people like prefacing their stuff with their username, some just name everything after the mod's name, whatever. Ideally you do want it to be unique so it doesn't run into incompatibility issues (don't name it mod.pack lmao). Note that you can muck with mod order by adding characters to the start, it's common to see packs with ! or !!!!! at the start to ensure they load first. I would not recommend doing this unless you know exactly what you're doing, it's more of a tool for startpos mods and other major overhauls that really want to be loaded first; for most purposes something basic will do just fine. While you may not find this works for you, I personally use the same key as much as possible throughout unit creation - if I name a land unit crys_skinwolves, you had damn well better believe the unit variant will be named crys_skinwolves, the main unit will be called that, etc etc. I just find it helps keep things simple, especially when you get into creating agents (lords/heroes) and start needing to attach campaign art and skill sets and all that jazz, and it's just REALLY nice to just have to copy-paste "chs_styrbjorn" instead of remembering 20 different things. Adding Tables There are two ways to go about adding tables to your mod, both perfectly valid. Right clicking on the packfile->add->add from packfile->navigate to Steam steamapps common Total War WARHAMMER II data->open data.pack->open the DB folder->doubleclick on the tables you want to add, then delete all entries in the table and rename it Right clicking on the packfile->create->create DB and fill it out For simple DB editing purposes, the latter is infinitely faster, easier, and simpler, with the added benefit of letting you name the table and not having to clean it out. However, it is good to know the former because for some purposes, like variants, you will need to use that approach, though for them you would generally go to variants.pack or variants_2.pack instead of data.pack. If you do add a db table the first way for whatever reason, an easy way to clean it out is to use Special Stuff->Warhammer 2->Optimize Packfile. land_units For now, let's just create a new table. The bottom box lets you filter results; type in "land_units", then open the dropdown list - there's only 4 tables there; "land_units" is the one you care about. Add it and name it whatever you like, the game doesn't care as long as it doesn't clash with vanilla table names or other mod tables. Now rightclick and select "add row", and... oh jesus lord what the hell are all these things?! Fret not, you don't actually have to know all of them! This is where having a second window of RPFM open in the data version of the table is useful. Just copy the row from the closest vanilla unit to get us started. At the bottom right is a dropdown menu to change what to filter by; change to "key" and then type in the unit name you want to copy from, which may take a few tries depending on CA's weird naming conventions. In general, only type in 1 word, like "champions" instead of messing around trying to figure out how CA decided to name Marauder Champions with Great Weapons (wh_dlc08_nor_inf_marauder_champions_1 as it happens). Some important notes; Key is incredibly important - it should be unique and not shared with any mod or vanilla unit. I recommend NOT using CA conventions, keep it simple; if you're making Chaos Fimir then chs_fimir is a decent start, though for compatibility you may want to add more text, say crys_chs_fimir. Whatever you use, save it now and keep it handy somewhere else, you'll be copy-pasting that key a lot in this guide. When in doubt, just use the entry from the closest vanilla unit. Good rule of thumb. You don't have to know what the heck dr2_hydra is, but if the vanilla war hydra uses it as an animation, your budget hydra probably should too. "Man Entity" references the battle_entities table, which controls unit speed, mass, resistance to knockback, etc. Many vanilla entities are shared between many units; if you want to mess around I'd suggest making custom entities. Primary Melee/Missile weapons are fairly self explanatory in what they do; making new melee weapons is almost trivially easy, new missile weapons take some extra tables for projectile stuff but isn't that hard either. New attribute Groups have to be defined in unit_attribute_groups and attached to actual attributes in unit_attributes_to_groups. Note that you have to either reference vanilla armor/shield values or define new ones in their respective tables - you can't just fill in wh2_main_leather_88 and expect it to work. Damage mod [whatever] is the unit's resistance to that type of damage. Flame can be negative, the rest can't as far as I can tell. main_units Similar to how you added the land_units table, do the same for main_units and copy the closest vanilla unit over. As a general rule of thumb, the Main Units table is more focused on out of battle stuff - unit costs, caps in campaign or multiplayer, additional building requirements, etc. Change the "unit" field to your personal key, ideally the same one you used for your land unit. Additional Building Requirement is used if you want the player to have a secondary building to make the unit, and is left blank otherwise. References the building_levels table if needed. Campaign Cap is -1 for most units, but can be limited as desired if you only want a faction to be able to make, say, 6 Steam Tanks total Land Unit is a direct reference to the land_units table entry you just filled out, make sure you have your unit's key there. Unique Index is deprecated - it doesn't actually HAVE to be unique. I'd still suggest getting in the habit of making it unique since almost every other table with IDs does require them to be unique. Ui Unit Group Land/Naval can be customized if you make a new one in UI Unit Groupings, but using vanilla ones is much easier starting off. ui_unit_bullet_point_overrides Despite having an utterly terrifying name, this is just the table that assigns those little green/red text lines on the unit card. Note that these DO NOT HAVE ANY MECHANICAL EFFECT, they're solely visual, but you still want to make them as accurate as possible since they're the #1 way you can communicate to users what your unit actually does. You can make custom ones as well but again, that gets into loc editing and if this is your first unit it's probably easiest just to copy and paste from the closest vanilla unit. unit_description_short_texts Super simple table, just put your unit's key (chs_fimir or whatever) here. This is the stuff that occasionally pops up in events when you recruit a unit, just flavor text. unit_set_to_unit_junctions Ah, unit sets, love of my life. Much maligned and little understood, unit sets are a huge part of how your unit interacts with campaign mechanics; they define what technology, lord skills, faction effects, etc. work on them. If you're just making, say, tier 4 Empire Halberdiers you can just copy the same unit set junctions from the empire version; new units may take a little more work and especially if you have custom skills targeting specifically them you may need to define some additional unit sets (explained below) as well. Kinda as usual, Unit Record references the main_units key. As usual, this is ezpz if you just use the same key for everything LOL. Unit Set can be a bit confusing at times, but as a loose rule of thumb, there are some main types of groups to look out for; Oftentimes there's a faction_all set, ex. chs_all, that is used for some factionwide effects Some techs and skills may involve unique sets, like empire_infantry or chs_manticores. Try to match up against vanilla units as relevant. The format varies by faction, but most units will be in a set of 2-4 units with a name vaguely similar to wh2_dlc11_emp_spearmen_swordsmen_flagellants_halberdiers or something along those lines. That's for the basic red line skill that buffs those unit types. If you put your new unit in that set, they will benefit from those redline buffs. Similarly, there's usually a set with "vet" somewhere in the name, ex. wh2_dlc11_chs_vets_chariots_chaos_knights_dragon_ogres_warhounds_manticore. That is for the rank 7+ locked skills. You can generally ignore caste, category, and class, and unless you WANT to exclude a unit from a set, leave "exclude" unchecked too. As a general rule of thumb, most vanilla units are in 4-6 unit sets. Note that if you make a custom unit set (using the unit_sets table), you can replicate the vanilla rank 7+ groups by checking "use unit EXP level range" and defining the inclusive range, say from 7-9 or 4-9 or whatever. Otherwise leave that unchecked. units_to_groupings_military_permissions This table is quite simple and basically just tells the game "yes, this is a Chaos unit and should be accessible to factions using the Chaos military group". You'll need other tables to actually recruit the unit in campaign for example, this is just a prerequisite. Variants This table is pretty simple; aside from starting to attach variants together (more on that soon) it also lets you scale your units up or down as desired. "Scale" lets you change the side of non-mounted entities as desired, while "Scale Variation" is how much randomization there is within a unit, often 0.05 in vanilla so not everyone is exactly the same height. Note that the actual physical height of the unit, for purposes of being hit by artillery etc, is defined in battle_entities, NOT here, this is just visual. Tech folder can be left blank in almost all situations - it's only needed if you're making a custom mount which is A. complex as hell and B. WAY out of the scope of this guide. unit_variants This table just links units to variants, cards, etc. I just use the same key for every column to keep things simple. variantmeshdefinitions This is where things get tricky. So the basic idea is that you are going to import a variantmeshdefinition from one of the variants.pack files in the actual data folder, then rename it for your unit and customize what's in it. While we usually use create -> create db, in this case we usually want to use add -> add from packfile and rip off something from variants.pack or variants_2.pack, maybe campaign_variants/campaign_variants_2. They're pretty scattered, it may take some looking around. The complexity of this depends a lot on the unit and how many moving parts there are, but as some general commentary; Any given variantmeshdefinition is divided into multiple slots, usually stuff like "body" and "head" and "weapon 1". If a given slot has multiple variant meshes inside it, the game will randomly pick one for each model of the unit. Five entries - five possible visuals for that slot. On lower graphics settings the game only cares about the first three, so keep that in mind. Weapons have a very specific set of hooks that must be done correctly. As a simple version; Dual wielders define their weapons in slots 2 and 5 individually Two-handed weapons go in slot 1 Shields go in the shield slot, huge surprise Units with multiple weapon types (ex. Marauder Hunters, Darkshards, etc) vary WILDLY in where each weapon is and should generally be referenced from vanilla Beyond that, different models have very different setups - for example a vanilla variantmeshdefinition may or may not have a randomized head slot or just the one. You can mess around and do some seriously cool stuff but be aware that a lot of stuff is built specifically for one model or animation and can be hard to muck with. As usual, just copy-pasting from a vanilla unit's definition is a safe start. I already mentioned this above, but to repeat, make sure to rename the file to fit whatever you set up in the variants db table so the game knows to link this definition to your unit. Unit Icon Unit icons are the visuals on the bottom bar of campaign map or in battle. You can find vanilla ones in data.pack -> ui/units/icons. Yours should follow the same structure. Depending on what your unit is, you can just steal an existing vanilla one wholesale (ex. if you're giving Fimir to the Warriors of Chaos), or edit it to look a bit different, or use an entirely new image. The only real rules here are that it should be 60x130 and NOT use any copyrighted material from other people that isn't warhammer related. Some people are wizards with art and can customize an existing icon in photoshop/gimp to look amazing, others of us are dain bramaged and stuck taking ingame screenshots of the unit then doing some basic editing to focus on the unit and get them down to 60x130, then using "add->add file" to get that icon into the correct folder layout. While creating custom lords is out of the scope of this guide and will be focused on later in the series, I will note that they actually store their icon in a different place, specifically ui/portraits/units. units_custom_battle_permissions This is a completely optional table but one that is very useful for testing units quickly. Overall it's generally very self explanatory, just define the faction(s) that can get this unit and link the unit key. If you're making a custom lord, you may have to fill out some of the columns on the right; note that 'General Portrait' should be the full path rather than just the name, ex. "UI/Portraits/Portholes/chs_saenathra.png". Otherwise ignore this paragraph. cdir_military_generator_unit_qualities This table is required for the AI to recruit your unit - just rip off a similar vanilla unit. What this table actually does beyond that is the subject of much debate, and until CA clarifies it for sure we may not know for sure. culture_to_battle_animation This table is only necessary if you're using a cross culture animation - for example, a Wood Elf animation for a Norscan unit. Some factions share cultures with similar ones (ex. Norsca and Chaos don't need to worry about this, the Norscan Berserker animation will work fine on a custom Chosen unit) but if you're trying to give Bretonnians a War Hydra unit, you will need to use this. The "Man Animation" column in land_units is the animation you'll want to put here. building_units_allowed This table allows your unit to be recruited in campaign, using the cost and recruit time values designated in main_units. Pretty self explanatory overall, just note that you need a unique string of numbers for the Key and that EACH level of a building needs a separate entry. For example, if you want to add your new custom Empire Swordsmen to all levels of the Chaos Warrior building (why????), you have the unit key, ex. "emp_my_awesome_swordsmen", and have three entries for "wh_main_horde_chaos_warriors_1" "wh_main_horde_chaos_warriors_2" "wh_main_horde_chaos_warriors_3" that each attach to your swordsmen. If you don't do this and only define it at say, "wh_main_horde_chaos_warriors_1", then while the chaos warrior building is at rank 1 you'll be able to recruit your new unit there, but as soon as it upgrades to 2 or 3 you'll permanently lose access to recruiting your unit. land_units_to_unit_abilites "But Crysbore, you spelled the table wrong!" I ♥♥♥♥♥♥♥ wish I did dude, nope, that's the official CA name for the table, didn't even notice 'til Bastilean pointed it out to me. Thankfully aside from spelling this is another simple and easy table - you just link your land unit (you DO remember your key, right?) to a unit ability - you can either compare across in the vanilla version of this table for a common one (ex. Frenzy) or check unit_abilities if you want to add another ability. .loc Files You could load up your mod now and see the unit ingame, assuming you didn't muck anything up, but you'll quickly notice there's a problem - the unit's name, description, and (if you made any) ui unit groupings etc. are all blank! That's because you need localization files, which can be found in the "local_en" file in the data folder. You add them the same way you do a normal table, importing from that file and purging the unclean entries, and same as with DB you'll want a second instance of RPFM open to compare. land_units.loc This may look ugly at first, but is very easy to setup thankfully! So the first important thing to know is that your Key will ALWAYS start the same way: "land_units_onscreen_name_". Then you append your unit's key. So if your unit is "crys_naked_skinwolves", you end up with a key that looks like "land_units_onscreen_name_crys_naked_skinwolves". Kinda long and intimidating but whatever. For the Text column, just put in the name you want to show up. "Unarmored Skinwolves" or whatever. unit_description_short_texts.loc You remember about 80,000 years ago when we added that one super small table about unit descriptions? This is where you write the actual description. Same as with the last .loc, you preface your unit key with "unit_description_short_texts_text_" I don't think there's TECHNICALLY any length cap, I've seen some seriously gnarly long descriptions, but for practical reasons I'd suggest keeping it concise. Other Loc Files Unless you went crazy with customizing stuff you won't need any extra loc files for a generic unit, but if you're like me and can't stop with the verbal diarrhea, you may need to add more, like "ui_unit_groupings.loc" if you made a new UI group for your unit to add extra flavor text to them. Troubleshooting First thing you always do: after making sure that your preferences are set up correctly, look for red boxes! It's almost always the reason the game crashes or the unit doesn't work right, and even as an experienced modder you can still make dumbass mistakes and leave the "shield" column blank instead of "none". Speaking from experience on that one. .loc files will almost never cause a crash (apparently there are a few edge cases with some tables) but in general, mucking up loc files will only lead to invisible text rather than crashes. Variants USUALLY only make your unit invisible instead of crashing but it depends on what you mucked up there - be sure that you named the variantmeshdefinition correctly for example. Balancing This is on many levels a deeply subjective and heavily mod reliant subject so I won't tell you what you have to do here, but as a few loose rules of thumb; I highly recommend using vanilla reference points for most numbers - if your unit is just a set of Fimir with, idk, shields, then price them around other Fimir, maybe a bit higher if they have all better stats, or similar if they have tradeoffs. Similar to the above - tradeoffs are fun! If your unit has incredibly powerful offense, making them squishy or short ranged can make up for it. If you're making 80 speed Irondrakes riding boars, strip off most of their armor. Maybe your new custom Hellcannon hits harder but fires slower. AP damage is a weird subject that not even CA seems to know exactly what to do with, given that they've been slowly buffing a number of duelist characters to have a much more AP heavy profile. As a general rule of thumb, if the unit doesn't have a good reason to be AP heavy, don't make them too AP heavy by default; almost all weapons have a healthy balance of AP or not, 99 ap damage and 1 normal can be a fun gimmick but if all your units look like that and have no downsides, they're probably OP. Balance is friggin' hard, and you shouldn't feel bad if you aren't sure about it initially! I'm by no means an expert myself, just try testing stuff and see how it feels in practice. Some ideas work out great, others don't. Closing Notes This is my first TWW2 guide and I am under no illusions about myself being a flawless master of my craft - I am sure there are parts of this guide that will be confusing for newcomers where I accidentally used unnecessary lingo or forgot to explain what the heck to do. Please, let me know! Nicely if possible, I would greatly appreciate that part, but I am eager to improve the guide and constructive criticism is greatly appreciated. If you are interested in how to turn a unit into a lord/hero, this follow-up guide covers that! Cross-Faction Units and Clones (Optional) NOTE: this is a more conversational but complex section, not required for creating a new unit. Just something that has come up for me a number of times when modding so I figured I'd discuss it. ------ While the above steps are accurate for creating a new unit, there may be times in your modding career you don't actually need to do every single step here. For example, let's say you want to make Fimir recruitable by the Empire, or give the Lizardmen access to Empire artillery, or maybe you want to get even fancier with your mods - say you have a script that lets the Empire access Saurus Warriors if they make a Military Alliance with a Lizardman faction, but you only want them to get 4 Saurus Warriors instead of infinite, and you don't want to edit the base Saurus Warriors unit, AND you want the unit stats to stay compatible with Radious or SFO or whatever. How do? Well, let's go with the easiest version - we'll just let the Lizardmen recruit Mortars. As we discussed earlier in the guide, units_to_groupings_military_permissions is the obvious table to allow the Lizardmen to even see them, and building_units_allowed defines where they can be recruited from - just those two tables will generally work as long as the unit doesn't have an additional building requirement. If you want them to get buffed by Lizardman redline skills, you can use unit_set_to_unit_junctions to sort that out, same as we talked about earlier. ------ Now let's get a little more complex. What if the unit has an Additional Building Requirement in main_units that we don't want to deal with? What if you want to only unlock 4 Saurus Warriors for the Empire, but you want it to be more-or-less compatible with overhauls that touch on stats? We can do this fairly simply with a main_unit clone, which is about 30% of the work of creating a new unit. The basic idea is that you copy the vanilla main_unit you want, changing the key to your own, but leave the link to the vanilla land unit - that ensures that if SFO is on, your ported Saurus Warriors will still have that mod's crazy stats. They won't have the increased upkeep SFO is known for, but eh, if you care that much make a SFO version. But you can change important aspects of the main_unit, like building reqs, upkeep, and unit cap as desired WITHOUT borking the original. In general, you'll probably need most or all 7 of these tables main_units ui_unit_bullet_point_unit_overrides unit_set_to_unit_junctions units_to_groupings_military_permissions cdir_military_generator_unit_qualities culture_to_battle_animation building_units_allowed Since variants, unit cards, etc. are linked to the land_unit key, you can just ignore them here - they'll use the vanilla ones. units_to_exclusive_faction_permissions_tables (optional) You won't need this table for most units, but it can be useful if you want to lock a unit to a specific faction instead of a military group. If so, DO NOT add the unit to the units_to_groupings_military_permissions_tables table, that one 'beats' this table; ONLY add the unit to this table. Ingame, only the faction(s) you use here will be able to recruit the unit. In vanilla, I think it's only used for RoR permissions; faction units are generally handled by script/special stuff (ex. Markus's imperial supply units) or unique buildings (ex. Wurrzag and savage orcs). But if you just want to add a unit to a single faction, this is definitely easier than a whole new building chain. Credits and Links I cannot in good faith fail to link Sebidee's Complete Guide to Warhammer Unit Modding[www.twcenter.net], which is what got me into unit modding in the first place. It goes into a lot of detail on many things, and the dude is clearly VASTLY more skilled at the fancy pants art side of things than I am. I did not copy anything from it, but at the same time I feel that credit where credit is due. I highly, highly, HIGHLY recommend the C&C Modding Discord[discord.gg]; there are a lot of very knowledgeable modders there who have helped me out greatly over time, and the community as a whole is pretty great. Modding tech 1-4 channels are where you ask questions, they don't always get answered, especially if it's about extra complex or poorly known stuff like startpos modding and the few people who are super knowledgeable about that aren't around, but in general it's helped me a ton. I linked it above, but Rusted Pack File Manager[github.com] is incredibly valuable to all modding I do and I cannot recommend it highly enough, especially over the aging PFM that older guides often recommend. Nothing against PFM, it has its uses, but in general RPFM is just better on almost every level.






This guide is primarily aimed at newer modders who aren't sure where to start making changes they have envisioned, but may be helpful for focused modders looking to branch into new skills. It will not go into extreme detail on answers, but will offer overviews and link to the relevant guide when possible for more information. ---Modding 101--- Getting started - Tools RPFMAlmost all modern modding is done via the Rusted Packfile Manager, usually referred to as RPFM, which can be acquired here[github.com]. The next few sections of this guide cover most of the basics of RPFM, while Aidenpons from the TWW2 Modding Discord is working on a much more in detail RPFM guide, to my knowledge it's not hosted online anywhere and must be downloaded, the most up to date download I know of is here[cdn.discordapp.com] If you aren't already familiar with RPFM, some important notes and features; Be sure to do the initial setup, linking it to the correct game and game folder. Also set the default game to your preferred option by opening preferences (ctrl+p) and selecting TWW2 from the dropdown menu near the bottom right. Diagnostics Tool allows you to instantly catch most errors in mods, especially broken keys in db tables which are the cause of most crashes when modding. You can enable or disable it view View->Toggle Diagnostics Window. You will also want to download the Total War Warhammer 2 Assembly Kit, then go back to RPFM, and from the menu up top, select Special Stuff -> Warhammer 2 -> Generate Dependencies Cache, which will help diagnostics tool understand almost every table far better. MyMod functionality is incredibly useful and powerful, allowing you to select a folder of choice to back mods up in (I use Microsoft OneDrive for instant online backups) and use the "Install" and "Uninstall" options to instantly copy mods from that folder into the data folder for testing, or remove them if needed. You can toggle the global search window, either via hotkey (default Ctrl+Shift+F) or from the top menu just select View -> Toggle Global Search Window option. You may wish to target the search better by untoggling 'all' and refocusing it on DB for faster searches. PFMPlease note that while some older guides recommend Pack File Manager, or PFM, it is NOT recommended in the modern era. It is missing many of RPFM's features, is not actively updated to add more features on a regular basis like RPFM is, and has a number of crash/deletion bugs that RPFM generally avoids. Assembly KitSome modding, specifically startpos crap, requires the Total War Warhammer 2 Assembly Kit, CA's official modding tools, which are split up into Dave (database/startpos editing), Terry (map editing), and Bob (exporting into a packfile). You generally do not want to USE asskit more than absolutely necessary, it's far worse than RPFM in many regards, like speed, reliability, and compatibility - and even when you do use it you'll still need to use RPFM to clean out the packfile it generates of all the unnecessary garbage it spews out. However, unfortunately there is no other alternative for startpos modding, which is how you add new playable factions, change settlement slot templates for landmarks etc, and increase the number of slots in settlements (ex. making every major capital have 9 slots). Asskit can be downloaded directly from steam, in the "tools" section of the library. Notepad++When making large-scale db or loc edits, ex. when messing around with character skills, it can be helpful to have a way to mass rename large numbers of things. For example, if you want to copy all of Mannfred's redline/blueline skills to a new custom Vampire lord, copying Mannfred's red/blue entries into Notepad++, selecting Mannfred's node set, hitting ctrl+h, and replacing it with your new lord's node set key (do NOT toggle 'in selection) will in a few clicks replace 20+ cells, and then you can do the same for the node keys, replacing wh_main_skill_node_vmp_mannfred_battle with say, crys_ushoran_battle, turning wh_main_skill_node_vmp_mannfred_battle_05 into crys_ushoran_battle_05. You won't actually NEED this for many kinds of modding, but it can be very helpful and efficient when messing around with skill nodes, skill locks, etc in particular, and if you end up doing any scripting Notepad++ is a solid option as well. Getting Stated - The Basics At its most basic, modding in TWW2 generally involves using your mod's packfile to overwrite vanilla table entries to change vanilla data, or add your own entries to create new units, skills, etc. in addition to vanilla stuff. In most cases, this will involve viewing vanilla values from data.pack, then copying them to your own mod's pack and changing/adding as needed. You DO NOT edit data.pack itself, to be sure we're clear here. For example, if you want to add a new effect to the Dark Elf confederation penalty bundle, you'd find the bundle's key (wh2_main_bundle_confederation_def), create your effect_bundles_to_effects_junctions table, and attach a new effect to that bundle's key (say, idk, replenishment). If you want to CHANGE the existing effects, in most cases you use the same effect at the same scope, but with a different value. In this case, maybe you don' like the -40 relations penalty, so you use wh2_main_faction_diplomacy_penalty_dark_elves_confederation, scope faction_to_faction_own, but change the value to -2 instead of -8. Some tables work in a manner that makes them very difficult or impossible to overwrite without data coring the entire table, which absolutely obliterates compatibility with other mods and should be avoided like Nurgle's plague unless ABSOLUTELY necessary. Other tables, like effect bundles, things can be overwritten but not easily removed. In those cases it's generally better to just overwrite a vanilla value with 0 and deal with some wasted space on screen rather than worry about getting everything looking perfect. If you data core effect_bundles_to_effect_junctions without a REALLY good reason and a clear warning on your mod page, I hate you. Creating a Mod Ok, so, you have RPFM open, and you want to make a new mod. There are two main ways to do this; New Packfile with ctrl+n (or from the dropdown Packfile menu), or New Mymod, from the MyMod dropdown. I STRONGLY suggest using MyMods, as mentioned earlier they are extremely powerful. You can name the mod whatever, but remember to use underscores instead of spaces and keep it simple. And be sure to have the correct game selected! Adding Tables There are two ways to go about adding tables to your mod, both perfectly valid. Right clicking on the packfile icon->add->add from packfile->navigate to Steam steamapps common Total War WARHAMMER II data->open data.pack->open the DB folder->doubleclick on the tables you want to add, then delete all entries in the table and rename it Ctrl+d or right clicking on the packfile->create->create DB and fill it out For simple DB editing purposes, the latter is infinitely faster, easier, and simpler, with the added benefit of letting you name the table and not having to clean it out. However, it is good to know the former because for some purposes, like variants, you will need to use that approach, though for them you would generally go to variants.pack or variants_2.pack instead of data.pack. If you do add a db table the first way for whatever reason, an easy way to clean it out is to use Special Stuff->Warhammer 2->Optimize Packfile. Don't forget to rename the table! leaving it as data__ is called data coring, making your table COMPLETELY replace the vanilla one, and will destroy compatibility and probably cause crashes. The name doesn't have to be unique within the pack (you can name everything malekith_bacon), but should be unique compared to other mods (so maybe crys_malekith_bacon). Learning How To Learn Below I will include many of the questions I've seen asked often, but you can actually just figure them out for yourself pretty easily in most cases by perusing CA packs, either opening data.pack from the data folder, or you can 'open all CA packfiles' instead. In general, if you understand what effects, skills, and abilities are and how they connect, you'll be able to make sense of other stuff much more easily, since much of the game plays into one of those three, whether it be buildings with effects or effects that grant abilities to units. You can also use the aforementioned global search in RPFM (or asskit) to find info on something - for example, if you want to change the High Elf confederation penalties, global search "confed" or "confederation" and it won't take too much skimming to see that effect_bundles_to_effect_junctions is a place to edit those per-race. Using the tree view on the left, if you want to learn more about abilities, or what all tables cover that, you can type in a one-word query, or even a part of a word, to get all tables with that text in their name - to use abilities for an example again, searching for "ability" or "abilities" will miss some, so just searching "abilit" will catch both. Some things can be ass to search for, but in general this can help a lot. Or maybe you just want to see how the Poison phase works, search "poison" and you'll see all the ways it can be applied to units/lords/etc via effects, but further down the list you'll also it has entries in special_ability_phases_tables and special_ability_phase_stat_effects_tables to work with. Note that column headers can be moused over and will often (not always) have a short description of what the column does; if that columns links to a key somewhere else, mousing over the header will generally tell you exactly which table it's drawing the key from. --------- You can use these kinds of techniques in this guide as well, and in fact I highly recommend it! Ctrl+f for "spell" or "ability" to get to that section quickly, and I've tried to use some of the more common attributes, mentions of magic/fire damage, etc. to make them easier to find even if you don't actually know what an ability is or what Stalker is. Uploading a Mod Actually uploading your mod is quite simple, but not very well explained in the launcher imo, so let's go over that real quick. Da Roolz; Your mod's packfile should be in the data folder, which you can reach at any time in RPFM via game selected->open game's data folder. A .png image file in the data folder, with the exact same name as your mod's packfile. Ex. if your mod is named crys_nude_malekith.pack, this png should be crys_nude_malekith.png. The .png should be roughly square-ish, and not too big, sub-1mb for safety, ideally The exact dimensions of the image aren't that important, most modders use ~250-500 width/height. Just don't try to use something 5000x5000 and be surprised when it doesn't work. You can't change the packfile's name for an uploaded mod. You CAN change the display name and description on the Steam page anytime. So pick a packfile name you like, and is relatively informative, but don't worry about capitalization and underscores and stuff. Assuming you have everything set up right, you then open the vanilla game launcher, click on Mod Manager, find your mod in the list, and click on the little folder icon. Follow the basic instructions and agreements from there. ---FAQs--- Faction Bonuses Faction bonuses, like Kroq'Gar's 10% upkeep reduction, are defined in effect_bundles_to_effects_junctions_tables - in most cases you can just look for the one that has your desired lord's name. If you aren't familiar with creating, editing, or changing value and scope on effects, refer to my effects guide. Note that frontend_faction_effect_junctions_tables is solely visual, but changes the displayed faction effects in faction select, so you'll want to edit that too for visual consistency. Lord Bonuses Those built-in 'traits" lords have, like how Tactician gives leadership aura range and effect or Mazdamundi reduces Temple Guard upkeep, are actually not traits at all, but known internally as Background Skills. As a result, they can be edited or added to in the character_skill_level_to_effects_junctions_tables table. If you're looking to add entirely new background skills, you may wish to read through the skills guide to learn how to create skills; if you instead are just looking to buff Mazdamundi's background skill, the effects guide goes into effects in much more detail. How do I add Poison or Magic Attacks? Ok, first off, let's make a clear distinction between Contact Phases like Poison, Sundered Armor, or Madness of Khaine, and toggles like Magical Attacks or Flaming Attacks. A unit can have any combination of Magical Attacks or Flaming Attacks simultaneously, but can only ever have one active phase - phases replace each other, so you can replace Poison with a better poison, but not have poison AND better poison. Note that this is true even if a unit has a built in phase, ex. if you had a Witch Elf in Khalida's army, she would lose her Madness of Khaine contact effect and gain Poison instead. That said, if you want to innately add a phase to a unit's melee attacks, use the melee_weapons_tables table, specifically the "Contact Phase" column. This will add the phase to every instance of that unit forever, great if you want all Empire Swordsmen to Discourage anyone they attack, not so great if you only want to add that contact phase to swordsmen in Karl Franz's army. If you want an effect to grant Poison to every unit in the scope, ex. lord's army or factionwide (please don't do this), effect_bonus_value_special_ability_phase_record_junctions_tables does the job. In vanilla, this is usually used with scope character_to_character_own (for a lord, or scrap upgrade) or general_to_force_own, like Helman's Blight. Unfortunately you cannot add a melee phase to a unit set directly via effects - If you really want to add Discourage to Empire Swordsmen, you'll have to use a passive ability that imbues the unit with a permanent phase, and in that phase's 'Imbue Contact" column, fill in the desired negative phase, in this case wh_dlc06_unit_contact_discouraged, then use unit_set_unit_ability_junctions_tables and effect_bonus_value_unit_set_unit_ability_junctions_tables to tie the ability and unit set together to an effect that you can then finally, put onto Franz's skill with scope general_to_force_own. Yes it sucks, but such is life. Ranged weapons work similarly and cannot directly have a phase added, HOWEVER, they do have another option: you can switch out missile weapons for units via effects, using unit_missile_weapon_junctions_tables and effect_bonus_value_missile_weapon_junctions_tables. Note that this calls for the main_unit key and does not include unit sets, but you can have multiple rows, so you add as many units as desired. Melee Weapons As with many things in modding, there are multiple ways to edit or affect these depending on exactly what you want to accomplish. If you want to edit every single Chaos Spawn in the game to have better AP damage, the easiest way to do it is to go to land_units and find the Warriors of Chaos's Chaos Spawn entry (wh_main_chs_mon_chaos_spawn), then find the Melee Weapon column entry (wh_main_chs_claws_chaos_spawn), and copy-paste that somewhere else, like notepad. Now we go to melee_weapons_tables and enter that key, which shows us their weapon's stats that we can lift to our mod and edit as we please, for example changing it from 118 normal and 42 AP damage to 12/140 respectively. You can also add a bonus vs infantry or large here (vs cav doesn't work), give them splash attacks (which is limited by animation), make their attacks magical or flaming, etc. Most are pretty self-explanatory, First Strike and Bonus vs. Cavalry are deprecated but the rest generally do what they say they do. If you instead want to give Sarthorael a skill that grants +10 Bonus vs Infantry to Chaos Spawn, you would instead use effects - create a custom skill if needed, then make a custom effect, target the chaos spawn unit set, and go from there. Ranged Weapons This is a very similar process to melee units, with the main difference that you'd use projectiles_tables to edit all Ratling Gunners instead of melee_weapons_tables, and that there's a middleman; land_units links to missile_weapons which links to projectiles_tables. Projectiles are much more complicated in general than melee weapons unfortunately, and have MANY options to tweak. Some of the major ones you may use; Damage can be changed via the Damage and AP damage columns Range can be changed via the Effective Range column Accuracy can be tweaked many ways; a higher Marksmanship Bonus improves accuracy, smaller Calibration Area improves accuracy, less spread helps, increasing Calibration Range closer to Effective Range makes the unit accurate up to their listed range, etc. You can also the unit's increase Accuracy in land_units Muzzle Velocity alters the projectile's speed Explosion Type allows the projectile to spawn an explosion, which can simply deal damage in an area (ex. Mortars) or spawn shrapnel (ex. ROR Ushabti Greatbows). Note that while projectiles are subject to friendly fire, explosions have an option to disable friendly fire, like the Blessed Trebuchets! Projectile Number allows you to do shotgun-esque bursts of multiple simultaneously-spawned projectiles. Think Reaper Bolt Throwers on spreadshot mode. Note that without a high enough Spread value, all those projectiles will overlap, you may have to experiment to find a spread value that works well for what you're trying to do. Burst Size and Shots per Volley allow you to do stuff like Irondrake flamethrowers or Ratling Gunner volleys, but be aware that these are HEAVILY animation dependent and volleys especially are very unlikely to function correctly unless the animation is already built to support a volley of that exact size and duration. Using effects to buff ranged weapons works the same way here, but note that some aspects of projectiles, like explosion damage or accuracy, can only be changed via ability phases, so similar to how we used a 'carrier' ability to give Empire Swordsmen the Discouraged contact effect, we can use a carrier ability to give Hellcannons a different contact phase, or we could use a missile weapon swap to give Warp Lightning Cannons in Ikit's army a different projectile that moves much faster and deals more damage. Note that ammunition is set in land_units, not here! Abilities First off, let's clarify the terminology a bit. A spell from the Lore of Fire, an active ability like Foe Seeker, and a passive like Regeneration are all actually abilities. They can be built into a unit directly, or added via an effect. My abilities guide goes into more detail on the subject. Attributes Stalk, Vanguard, Perfect Vigor, Unbreakable, Wallbreaker, Strider, Causes Terror, and the like are all Attributes, which can be built into a unit permanently, or added by campaign effects. If you want to build an attribute directly into every instance of a unit, you can attach a custom Attribute Group (containing your desired attributes) to the unit's land_units entry, which will give it to every unit of that type gamewide. To do this, create a new key in unit_attributes_groups_tables, add the attributes you want to that key in unit_attributes_to_groups_junctions_tables, then just call that key in land_units table's attribute group column. If you want a technology or skill to grant an attribute to a certain gorup of units, like a skill giving Perfect Vigor to Greatswords in Franz's army, that's best done via unit_set_unit_attribute_junctions_tables and effect_bonus_value_unit_set_unit_attribute_junctions_tables. If you just want to give Settra the "Unbreakable" attribute via his innate, or give everything in an army Stalk regardless of what unit it is, effect_bonus_value_unit_attribute_junctions_tables is faster and easier. Skills Skills, specifically known in db as Character Skills, allow a lord to grant themselves, their army, or their faction bonuses as they level up. They come in many varieties, from the 'normal' redline and blueline skills to sets unique to specific lords like Settra or Tyrion, as well as what many people know as traits, actually called Background Skills, the passive bonus that most lords offer, like Knowledgeable or Tactician or Infernal Dominance. In general, a skill works by linking to effects to actually boost your army or whatever, but some skills, like the Dark Elf Name of Power skills or how most legendary lords have skills for their special items, can activate dilemmas or grant ancillaries instead. Skills are actually quite easy to make thankfully, though it takes several tables to do. This guide covers the basics of skill creation, but depending on what you're doing you may need a more in depth understanding of effects from this guide, or if working with Names of Power possibly dilemmas from this guide. Creating a New Unit While not overly difficult, this is a fairly involved subject so I will simply link to my unit creation guide. Creating a New Lord Lords are two parts of a whole - a unit, which you can find more about here, and an agent, which I cover in much more detail here. To make anything beyond a bare-bones lord, you will also need to work with their skill tree, and most lords have unique items or mounts, called Ancillaries, more info on that here. Please be aware that making a fully functional Legendary Lord with a unique skill tree, abilities, army buffs, mounts, items, etc. can be an enormous amount of work and at times very frustrating. It is however, EXTREMELY rewarding to complete! Creating a Playable Faction Unfortunately, here we come to the necessity of Assembly Kit - the only way to make a new playable faction is with startpos. This is a problem for many reasons, but the biggest one is that for something as complex as a new faction, with asskit's atrocious error handling and bob's long compile times, means that you have to get most/all of it right for any of it to work at all. So... you know. Just fair warning. It's probably gonna be a frustrating experience. Regardless, I do have a guide for it here. Working with Phases Adding something like Poison, Sundering, or Flammable is a bit weird, but fairly easy. Just editing them is trivially easy. You define the phase's key and basic info in special_ability_phases_tables, which you'll worry about MOSTLY used for heals/damage over time but can also freeze vigor, leadership, imbue flaming or magical (or another phase!), etc. Most of them are pretty self explanatory, but for Fatigue Change Ratio note that -1 is a full vigor refresh (ex. Regrowth) while a 1 completely empties vigor (ex. Muster of Malevolents or Dark Conduit). special_ability_phase_attribute_effects_tables lets you add attributes to the phase, like Stalk or Rampage. special_ability_phase_stat_effects_tables lets you pick what stats to add or multiply. There are a few bonus value IDs here that CANNOT normally be affected by effects, like accuracy, explosion damage, and splash attack power, and a number that you can edit in weird ways; want an armor mult instead of an add? Phases can do that, good luck doing that with effects! If you're using an ability to apply the phase (say, Lore of Beast's Flock of Doom spell, or the Norscan passive Berserk, you'll need to use special_ability_to_special_ability_phase_junctions_tables to attach them together. Note that most abilities only need one line, using Order 1. However, there are a few abilities, like the aforementioned Norscan Berserk, that may have multiple phase entries with different orders - if you look that one up, you'll see that berserk_i is order 1, then leads into berserk_ii in order 2, then eventually gets to berserk_iii in order 3. Also, please remember that a weapon can only have ONE phase at a time - if a unit naturally inflicts Poison, and you give it Armor Sundering via an effect, it will permanently lose poison attacks. Phase responsibly! --- Icon is easy to miss and kinda frustrating. Unlike abilities, skills, etc., there's no table to tell the game where to look for an icon for your phase. Instead, you have to add a new icon (which can just be a renamed vanilla icon) down the ui/battle ui/ability_icons folder tree, with the exact same name as your phase (+.png). Ex. if your phase is named my_damaging_poison, that icon had better be named exactly my_damaging_poison.png or you'll just get a white box ingame. Unlocking a Faction There are several ways to unlock a faction that already exists, depending on your preferences and goals. First off is to follow the guide in the last section, skipping stuff that already exists. This allows you to customize every aspect of the faction as desired, including setting up a 'proper' built-in legendary lord leader instead of messing around with scripts, but means your mod is not compatible with most startpos mods on the workshop. I think Crynsos's faction unlocker guide is still accurate as well? Alternatively, you can build off of Mixu's Unlocker, and its unlocked submod here. This has pros and cons; much of the hard work is done for you, all you have to do is mess around with db tables, and anything compatible with Mixu's unlocker will be compatible with yours, but you're making yourself reliant on someone else's mod. It's a good mix of easy and powerful though, and generally recommended since Mixu updates very consistently and quickly after DLC. Finally, you have the option of using Crynsos' Faction Unlocker, which makes pretty much every vanilla faction and some new ones playable immediately, so you can just edit them with your own mod. Once again you're putting yourself at the mercy of someone else's mod, but with a minimum of work on your end, in return for the unlocker often being outdated. It also makes more changes to vanilla gameplay and campaign balance than Mixu's. Making a New Mount Mounts are part of a class of objects called ancillaries. I go into them in more detail in this guide. Creating/Editing Items Items, like Settra's Blade of Ptra or that stupid double barrelled cannon that keeps dropping for factions that can't use it, are ancillaries like mounts, though thankfully much simpler and easier to edit for the most part. This guide covers the basics. Technology Tree Tech modding works very similarly to skill modding in many ways, but with its own caveats. It's not too hard in general though. In this case, I'm actually going to link to Aexrael's excellent guide[tw-modding.com] since he covers it in detail. Buildings What you're trying to do will... significantly alter the amount of work you need to do here. Simple changes, like adding an upkeep reduction to a building or giving +1 Khemrian Warsphinx cap to a landmark, are very easy with the building_effects_junction table. Most of a building's numbers (cost, build time, etc) are handled in building_levels instead. For more information on unlocking unit recruitment from a building, details on how weird building scopes can get, editing availability, changing how the AI handles it, or creating your own building from scratch, I have a fairly in depth guide that covers all that and more besides. Faction Colors You can change a faction's general color scheme in faction_uniform_colours_tables. Tweaking or Submodding Other Mods If you just want to edit something minor about someone else's mod for personal use only, you can just open their packfile in RPFM and edit it as desired. Simple, easy, and if you know how to mod it's almost impossible to screw up. If the modder has been MIA for a while and the mod is broken, it's pretty common to upload the fixed version as a separate mod, linking back to the original mod. Taking and reuploading an active modder's work is the reason baby jesus cries; modders put A LOT of work into what they do, it's no exaggeration to say some mods are in the hundreds or even thousands of hours of work from a single person by now. That said, submods exist for a reason if you want to offer an edited version of a mod, it's generally accepted to upload a submod, which requires the original mod but changes some aspects of it. Maybe you want to reduce upkeep for some SFO units, or let people build 3 of a given unit instead of 1. On a purely personal level I would recommend you not word it as "dumbasses can't balance so I'll do it for them" but in general most modders won't actually care if you want to upload an easymode/hardmode submod for their mod. That said, especially for smaller scale/more personal mods that DO reply to everything, it's generally polite to ask permission unless they explicitly allow it. Cataph has an EXCELLENT guide for submodding, which is linked here[tw-modding.com], I strongly recommend reading it in its entirety before doing anything else.





如何轻松获取《血腥》的所有等级 简介 大家都知道这个实用特性。它能为你的领主提供额外的最大生命值,每提升一级就会增加,最高可达20%。然而,关于如何获得这个特性存在很多误解,在谷歌上搜索“how to get the bloody trait”得到的结果……并不是很好。本指南将为你展示获取它的最简单方法。 你需要准备: 1. 一个你不拥有的小型定居点 2. 一个基本上能独自击败整个驻军的领主,以及一支由一级垃圾单位组成的军队 3. 第二个领主,只要领主本身就行 操作步骤: 第一步是消灭定居点的驻军并洗劫该定居点。这会让下一步变得容易很多。务必选择小型定居点,这样就没有城墙。别占领或摧毁定居点,傻瓜。 接下来你需要将整支军队转移给另一位领主,只留下1个单位的弱小炮灰士兵。我来解释一下: 社区中存在一个常见的误解,部分源于“血腥”这一描述。即“在多场战斗中遭受大量伤亡”。这导致很多人认为需要带20个单位参战并全部歼灭之类的。事实并非如此。该描述的实际含义是“你的军队遭受了高比例的伤亡”。 所以,基本上如果你有1位领主和1个120人的僵尸单位,且所有僵尸都阵亡了,这就算是遭受了大量伤亡。我不知道确切的数字,但我很确定大概是你总军队的75%左右。你要做的是攻击小型聚落,让你的垃圾部队去送死,然后让领主进去清理所有敌方单位并赢得战斗。这样做三次就能获得第一个等级。再做三次,这个特性就会升到满级。现在,10个区域内所有火辣的拉弥亚美女都会为你倾倒。



Here we discuss how to edit or create custom character skills. -----Setup----- As with basically every guide I write, we will be using Rusted Pack File Manager[github.com] as much as possible. Since this guide builds off of unit creation and lord creation, I will not be explaining the usage of RPFM in detail and will assume you understand the basics of adding tables, creating packfiles, etc. Note that unlike the last two guides, you DON'T need to, and shouldn't necessarily fill out every table mentioned here for everything. Skills, items, and effects all link together regularly but in general you use different skills to grant items than you do to grant effects, and ancillaries can grant effects instead of skills, so it's up to you to scope exactly which tables you need - I just tell you what they do and how. Skills Overview First, let's discuss the basics of how skills actually work Every lord and hero has a character skill node set, which lets you connect skill nodes to the character. Character Skills are defined as their own 'thing', then attached to nodes which are the fancy buttons you see ingame. Skills can be attached to either effects (stats, abilities, etc) or ancillaries (items, mounts, banners, etc). Character Skill Nodes can be organized in a variety of ways, such as which row they are in, which other nodes are required and how many of them, organized in sets, made mutually exclusive, and other things. Essentially, the process of adding a custom skill to a lord involves making the skill, telling the game what the skill DOES, adding the skill to the lord's node set, and then telling the game where the skill should be in the set and what requirements or special mechanics it has, if any. It's not THAT complicated once you wrap your head around it, I promise, but can be a little obtuse starting off. character_skills This is the first and perhaps most important table since huge chunks of it are fundamental to how it functions at all. Key is the same as it always is - unique and important - whatever you call it, you'll be copy pasting this a lot later so make sure to save it. Image Path is crucially important, this is what will show up ingame. Compare to vanilla to decide which to use, in general if the skill buffs in battle stats then the name will have "battle_" in it, campaign focused stuff will be "campaign_", self-buffs usually have "character_" in the name, etc. If you're making a new lord trait, look for "innate" in the vanilla "key" section, or "trait" in the image path section. Localized Name and Description are irrelevant, you'll fill them out properly in loc later. Unlocked at Rank doesn't actually matter, another table actually defines the unlock level. Is Background Skill is very important - the starting 'traits' lords and heroes start off with are all actually just background skills, and have nothing to do with actual Traits, which are something else entirely. Don't turn this on for 'normal' skills, only if you want it as a lord/hero's default effects. Background Weighting is (surprise!) only used for background skills. Higher numbers are more likely. If you're adding a new generic background skill, like Knowledgeable and Tactician, Weight 1 will generally do the trick, but if you want your skill to show up more often you can go all the way up to 9999 for near guaranteed spawn. For legendary lord/hero background skills, it doesn't REALLY matter if it's the only one, vanilla usually uses weight 5 for those though. The rest of the table is generally irrelevant. Influence cost is a high elf thing. character_skill_level_details This table exists pretty much entirely to limit what level(s) the skill is available at. Most of the fields are rarely or never used. Level is the level of the skill, not character level. Usually just 1 (once you unlock a skill, all levels of it can be bought immediately) but some skills may have different character level requirements for each level of the skill; if so, you will need to define multiple rows for skill levels 1, 2, etc. Unlocked at Rank references the character level requirement. Notice that it starts at 0 not 1; rank 9 is actually level 10 ingame for example. Otherwise very simple. character_skill_nodes This table is the alpha and the omega of skill trees - and needs some explanation before I start. Visually speaking, the window people see ingame is defined in terms of up to 7 Indents and any number of Tiers. Indents are numbered from 0 to 6 going from top to bottom, while Tiers go from 0 to infinity from left to right. Note that the game autopopulates all of this; if you use Tier 5051 for a skill when the highest vanilla tier in that indent is 12, there won't be 5000+ empty spaces, it'll just show up directly to the right of the next highest tier skill as if it was tier 13 - but if someone else mods in a skill at tier 13, your skill will just show up to the right of it. So for compatibility purposes, higher tiers are usually better. Only indents 0 through 5 are actually visible in the window, 6 is an invisible indent used for background skills, dummies that grant spells, etc. The window will expand rightward to fit in extra tiers, though I'm sure there's a cap. Now, let's go through this... Key is actually not used as much as keys usually are; this mostly just exists for node link and organization purposes. But it's still important! Try to name them clearly, it makes node links a LOT less obnoxious to do. Character Skill Key is where you link the actual Character Skill. This is also where you link a lord or hero's innate 'trait' (actually a background skill as we discussed earlier). Character Skill Node Set Key attaches this node to the character's node set - I told you we'd need it eventually a guide ago! Indent was discussed in detail earlier. All skills with the same Indent will be in the same row. Remember that Indent 6 is not visible ingame! Tier MUST BE UNIQUE IN THAT INDENT - if two skills both have Indent 2 and Tier 2, one will not appear ingame! You can have the same Tier in different Indents, though; one skill at Indent 0 Tier 0 will coexist fine with a skill at Indent 1 Tier 0. Points on Creation is mostly used for legendary lord innate background skills and for dummy skills that give access to spells. 'Normal' skills start with 0 points invested. Required Num Parents is where you define how many points the player needs to put into skill(s) to satisfy the conditions laid out in character_skill_node_links. 0 for most skills but be careful how you fill this one out. character_skill_node_links You know how in vanilla, you usually have to waste 1 skill point in the leadership skill to unlock the rest of the basic red line abilities, then ~6 points in them to unlock Rally, then that unlocks the rank 7 buffs? That's all done here. Child and Parent keys link two skills together; if you have four rows that say skills 2, 3, 4, and 5 all require rank 1, the game will realize "ok, the player needs to put points in skill 1 before they can get any of the others." How MANY points you need is defined elsewhere, this just tells the game there's a link. Link Type is the... type... of link... yeah. There are two that you'll be using; REQUIRED means that the child key requires the parent key. SUBSET_REQUIRED means that any parent keys in this set count for unlocking the child. To use our above example, that crappy leadership skill (Skill 1) is a Required Parent for all 6 of the initial red line skills - you can't get any of them without knowing it. Meanwhile, those 6 skills are all SUBSET_REQUIRED Parents of the child Rally skill (Skill 8), while the leadership skill isn't - the game only cares that you know the leadership skill to unlock skills 2-7, and then it turns around and only cares that you put points into skills 2-7 to unlock skill 8, Rally. If my explanation didn't help, just go look at the vanilla entries, it'll make sense pretty fast. character_skill_nodes_skill_locks_tables Nice simple table. Rarely used, but fun to play with. The first column asks for a character skill node key, while the second column just asks for a character skill key. Note that you will need one row for each part of the relationship - in other words, if two skills are supposed to be mutually exclusive, you'll need two rows. If you have six mutually exclusive skills, you'll need five entries for EACH skill node, for a total of 30 rows. Needless to say this climbs very rapidly, and it's easy to forget, so it's usually best to keep mutually exclusive skills to sets of 2. character_skill_level_to_effects_junctions This table links skills to effects. What are effects you may ask? I... strongly suggest reading my effects guide. Seriously though, the short version is that effects tell the game WHAT to do and how; this table on the other hand tells you how much to do with the effect. I'll go through it in parts. Character Skill Key is - well, the key I told you to save earlier. Effect Key I will go into a GREAT amount of detail on later, but there are a ton of useful vanilla effects that you can filter by and use for many simple purposes. If your new skill is just supposed to add +500% hp to your lord, wh_main_effect_character_stat_mod_unit_health is a vanilla effect that will do that no questions asked. Want melee attack instead? wh_main_effect_character_stat_mod_melee_attack. Want to add melee attack to Norscan warhounds? wh_dlc08_effect_skill_melee_attack_increase_warhounds. We'll get into scope very soon, don't worry... Level is the skill level; you need to define each effect at each skill level you want it available at. For example, if you have a 2 level skill, and it gives melee attack to the character, you'll have two different rows, each with the same skill name and effect, but one will be level 1 and the other will be level 2. Effect Scope is quite frankly obnoxiously complex and you will probably bork it up at least once while modding if you try ANYTHING fancy. My #1 piece of advice is to blatantly rip off the closest vanilla thing - you don't have to UNDERSTAND what faction_to_faction_own_provincewide is, but if a vanilla skill uses it in a certain way... yea. I'll list some of the most commonly useful scopes here. character_to_character_own is used for self-buffs and unlocking abilities/attributes for the lord/hero learning this skill alone. general_to_force_own is used for buffs that apply to the entire army or segments of the army based on the effect - if the effect is attached to a unit set, only those units will get the effect's.... effects, otherwise your entire army will. character_to_force_own_unseen is mostly used for Winds of Magic buffs general_to_force_enemy_regionwide applies to all enemies in the region, used mostly for reducing enemy WoM or morale. There are MANY others but most are used in other contexts, those are the big 4 for character skills. Value is very straightforward - what is the value of the effect? If you're boosting Melee Attack, 5 means +5 melee attack. If your effect is a % boost, 5 here means 5%. Mostly self explanatory, I'll go A LOT more into detail on effect shenanigans later. ------ One final note - for most skills you will want to add an extra row using the effect wh_main_effect_agent_action_success_chance_enemy_skill. Most vanilla skills have this effect attached; it is why higher level lords/heroes are typically more resistant to enemy agent actions. There is a similar but opposite effect called wh_main_effect_agent_action_success_chance_skill which only needs to be used for agent skills that increases action success chance. Both effects use the scope character_to_character_own and typically have the same value (albeit negative) as the skill level, ex. a skill with two levels will have -1 at level 1 and -2 at level 2. You do not NEED to do this for a functional skill, however I suggest getting into the habit of doing so. It's a good habit to get into and I feel it shows that you care enough about your mod to not halfass skills. character_skill_level_to_ancillaries_junctions Thankfully we're back to another easy table. I'll touch a lot more on ancillaries later, but to briefly summarize; items, mounts, and banners are all ancillaries. character_skills_to_quest_ancillaries Similar to last table this one is just a basic link. I believe this table is only necessary for actual items, like weapons and talismans; mounts can skip this table. DO NOT check the "enable quest for prefix" field unless you're actually doing a quest battle. Way way way way waaaaaaaaay easier to just give the item for learning the skill. character_skills.loc Two different prefixes, name and description as usual. character_skills_localised_name_ character_skills_localised_description_ character_skill_utilization_hints_junctions_tables The AI by default seems to just pick skills out of a ♥♥♥♥♥♥♥♥ hat, so if you want them to prioritize your skill this is the table to do it with. It's... fairly self explanatory. You have your five default dropdown options with clear names - USEFUL_ALWAYS obviously makes the AI prioritize it, USELESS_ALWAYS is the opposite. Far as I can tell, this works on a multiplier system - USEFUL_ALWAYS is defined as 100x multiplier in cai_personalities_character_skill_selection_policies_skill_utilization_hints_junctions_tables so... obviously the AI will prioritize it. USELESS_ALWAYS is 0.1, so 10% of the chance of picking it. You can define your own using character_skill_utilization_hints_tables and cai_personalities_character_skill_selection_policies_skill_utilization_hints_junctions_tables if you really dislike the vanilla ones for whatever reason. I personally find this extremely useful when adding skills that may not be instabuy but are useful, however USEFUL_ALWAYS is a great tool for getting chains started. Synergy happens in the next table. cai_character_skill_synergies_tables Another CAI table, yay! This one is super simple and easy for once, it just helps the AI understand that two skills are good together. It's surprisingly poorly used in vanilla, which is probably why the AI picks such a ridiculous clusterfraggle of skills, but one of the few good vanilla uses is that if a caster learns Earth Blood, they should try to pick up Life Bloom as well. This gives you options in trying to make the AI work with your skills intelligently - you can also use USEFUL_ALWAYS for each skill in a lord unique chain to make sure they always get them, or use this table to nudge them into picking certain combinations of spells together without messing with their base weighting. Or maybe you're adding combat doctrines, and a skill that focuses on bonuses to infantry might go well with the redline skill for infantry for that faction - you probably don't want to edit the vanilla redline skill's value, so just use a synergy to help nudge them in the right direction! Note that as with many CAI deals, you can create your own by using the definition table (in this case, cai_character_skill_synergy_levels_tables) and setting a custom value. Vanilla only has a single option available, "medium" which is a 1.5x boost, but maybe you want to make a custom "high" that is 2.0, or "GET_THIS_YOU_STUPID_WANNABE_SKYNET" which is 100 to really drive home the synergy. Example - Buffing Specific Units So in this series of guides I've talked a lot about all the things you can do, but now let's try a practical example - we want to give Karl Franz a custom skill that grants 10 armor and 5 Melee Defense to Halberdiers. As an important caveat, you can do this is any order - I will just suggest the order that I would do it in to minimize how many red boxes you see along the way. EffectsFirst of all, we make the effects and ensure there's a functional unit set. The effects are easy; create one for armor and one for melee defense, ripping off similar vanilla effects. We then skip on over to unit_set_to_unit_junctions to look up vanilla unit sets; search Unit Record by Halber - oh hey we can already see there's an "emp_halberds" set, copy that and search by unit set... ah hell, that includes the halberd wielding demigryph knights. So do you want to buff them too? If so, we can just use this set. Otherwise, if you ONLY want Halberdiers to get the buff, we make a custom set in unit_sets, ex. emp_halberdiers and then go back to junctions and ONLY add the unit record wh_main_emp_inf_halberdiers to our new unit set. BUT WAIT, THERE'S MORE! Now we need to attach the effects to actual stats - which, as we discussed earlier in the guide, is done in effect_bonus_value_ids_unit_sets for this particular example. As usual you'll shamelessly plagiarize similar vanilla effects to find the Bonus Value IDs you're looking for; searching effects for "armour" (♥♥♥♥♥♥♥ Britbongs) will reveal that the necessary ID for armor is armour_mod and doing the same with melee stats reveals melee_defence_mod for MD. So we create two new rows in our mod's version of the table, and attach the effects we made two paragraphs ago to the bonus value IDs we just found, and then put the relevant unit set on the right - either emp_halberds or emp_halberdiers depending on your decision above. SkillsWell, now we have the effects, but no way to apply them, and even if we did they wouldn't have any text. So let's take care of the first bit - applying them. As we discussed earlier in the guide, first we make the skill in character_skills, and add an entry in character_skill_level_details for the level requirement. We then move to character_skill_level_to_effects_junctions where we add three rows, each level 1 - two for the effects we made in the last section, with scope general_to_force_own, and in the third row we use the vanilla effect wh_main_effect_agent_action_success_chance_enemy_skill (scope: character_to_character_own), set to -1, which means that learning that skill makes it slightly harder for enemy agents to cuck us - vanilla skills do this and it's a good habit to get into. Then we put the actual values of the effects on the far right (again, 10 for the armor one, 5 for the MD one). If your skill is gonna have two levels, repeat these steps with three new rows each set to level 2 and higher values for the effects. Maybe you want 20 armor and 10 MD when maxed. Whatever. You do you fam. Unfortunately the skill isn't actually ATTACHED to anyone, so now we have to go to character_skill_nodes. First off we need to figure out what the heck Karl Franz's character skill node set even is, so filter by that and look for some variation of his name; thankfully his, wh_main_skill_node_set_emp_karl_franz includes both halves of his name - some lords don't! Balthasar Gelt, for example, is wh_main_skill_node_set_emp_balthasar and searching by "gelt" will bring up nothing. Now that we know what Franz's skill node set is, we can look over it and see how it's laid out. Army buffing unique skills are usually in indent 1, and we see that indent 1 tier 0-5 are all taken by vanilla skills. So you can either go for Indent 1 Tier 6, or if you're concerned another mod will overwrite it, you can go for tier 128 or some BS number. If you're making generic skills, for the love of god, use a high number for compatibility, but lord unique skills are generally fine at low numbers. Anyways. For the sake of this guide, we'll just use Indent 6. So here, we're gonna use the key of the character_skills entry we made earlier for the character_skill key, whatever we want for this table's key (I'd use wh_dlc08_skill_emp_lord_unique_karl_6 personally), make sure it's attached to Franz's character skill node set, and doublecheck to make sure it looks similar to his existing skills. If you want to test the skill, you can put points into it at creation so you can go ingame and check, but be sure to remove them when you release the mod. LocsOk, the skill works now, but if you test it you'll see it doesn't have jack for text. Woops. Let's fix that. You're gonna want to create/import a couple loc files, nothing too much. Rename them when you create/import them so they don't overwrite vanilla ones. character_skills.loc effects.loc character_skills is easy to fill out; just append the skill name after the last underscore for each of the two rows you need character_skills_localised_name_ character_skills_localised_description_ So say your skill is named karl_franz_halberdiers, your keys will look like character_skills_localised_name_karl_franz_halberdiers character_skills_localised_description_karl_franz_halberdiers Fill out the flavor text however you want, but try to spellcheck it for everyone's sake. Effects are pretty easy; you only need one row for each of the two effects we made, in this format effects_description_ So say the first effect is emp_halberdier_armor, we're looking at effects_description_emp_halberdier_armor As we discussed above, you'll be looking to fill out the text field with something like; Armor: %+n for Halberdiers You can fluff it up a bit if you want, but something along those lines. Repeat for the MD effect, and you should be good to go! Example - Adding Skills To Lords (Beginner) Since End Times is the pinnacle of literature, we're gonna go nice and simple here and give Karl Franz the skill that grants the spell Urannon's Thunderbolt, which is totally lore friendly to him being the Incarnate of Heaven or w/e that plot point was. As you'll know from reading the character skill nodes section of the guide, we first need to find Karl's nodeset to add anything to him. How you do so is up to you; my default solution is to change the filter to "Character Skill Node Set Key" and type in "karl." Sometimes that won't work due to weird naming, ex. you may have to search for 'franz' instead. In this case though, it's nice and simple, wh_main_skill_node_set_emp_karl_franz Next, we need to know the skill key to use. Again, you can do this a few ways, like looking in character_skills_tables, but for simplicity I'd just change the filter to Character Skill Key and search for part of the spell's name, like "urann" or "thunder" or "thunderbolt" if you aren't sure how to spell Urannon. Whatever the case, it shouldn't be too hard to find the skill key... but wait, there's two of them? wh_main_skill_all_magic_heavens_05_urannons_thunderbolt and wh2_main_skill_all_magic_heavens_05_urannons_thunderbolt_lord? You can look at the differences in character_skill_level_to_effects_junctions_tables, but for the sake of the guide I'll just say that the lord version is what we're looking for; lord version usually only takes 2 skill points, hero version takes 3. So we're going with wh2_main_skill_all_magic_heavens_05_urannons_thunderbolt_lord Now, we need to figure out what indent and tier is free on Karl. Make sure you're looking at Karl's nodes (filtering by node set key) and then click on the Indent column to sort the table by it; you can see all of his indent 0 skills in order, all of his indent 1 skills... etc etc. Indent 3 looks pretty open, and most spells are in tier 2 or 3 anyways, so let's use indent 3. Since there are no other skills to worry about in that indent, you can use tier 0 if you want, or a higher number for compatibility with other mods that add skills to his indent 3. The Key doesn't really matter for this example so name it whatever you want; I would personally go for something simple, like karl_franz_magic_1 or crys_karl_thunderbolt, doesn't matter, just something unique and unlikely to be incompatible with someone else's mod. Add all that to your mod, make sure "Visible in UI" is ticked on, and you're good! Example - Adding a Skill Tree (Advanced) Let's say you want to add the full Lore of Death to Volkmar (????), or maybe you want to add a set of unique skills to your custom lord. Whatever the goal is, this is different from the previous section in that if you want your various skills to link to each other, either mutually exclusive or requiring previous ones, you'll need to worry about skill node links or locks. First off, we'll repeat the steps of the last section. You'll want to know the skill node set name of the lord/hero you're working with, as well as each of the skill keys you want in the chain. For the sake of this example, I'm just gonna use Volkmar and the vanilla Lore of Death, because irony is delicious. Again, we need to decide what indent and tier to put the spells in. Skimming his vanilla entries, it looks like all of indent 3 is open, so you could start with Indent 3 Tier 0. For mod compatibility, I'd suggest starting higher, like tier 60 or 100, but for this guide I'm going to assume you're lazy and will just start from tier 0. Our initial goal is to just get all of the skills there. The easiest way to do this specific example is just to copy the list of skills off of someone else with the Lore of Death, say, Arkhan. Indent 3 Tier 0 goes to Spirit Leech, Indent 3 Tier 1 goes to Spirit Leeching, so on and so forth. Remember that you need to use unique Keys for the column on the left - keep it simple, for this example something like volkmar_death_magic_0, volkmar_death_magic_1, etc. Or volkmar_death_0. Whatever. Assuming you did everything right, the skills will all show up in game, unattached to anything, with no level or previous skill requirements. You may want to test just to see. All that link stuff, as mentioned earlier in the guide, is mostly handled in character_skill_node_links_tables. You can look at how Arkhan is set up; his initial skill 0 is the Parent of a Required relationship with the next 4 skills in the tree, and skills 1-4 are all Parents of a Subset Required relationship with skill 5 (evasion). If you go back to character skill nodes, you'll notice that skill 5 has a 4 in the "Required Num Parents" column, and as we just saw, skills 1-4 are all 'parents' of skill 5. Note that there is no required num parents for skills 1-4, just the basic link. Thus, just putting a point in Spirit Leech unlocks all four skills, but you need to put 4 points between those skills in order to unlock Evasion. This pattern repeats in the section bit of the tree; 6-9 are all children of 5, and 10 is the child of 6-9, with 10 again requiring 4 skill points in the previous four. Note that Arkhan also has a 'dummy' lore ability - that is used to give him the Spirit Leech and Aspect of the Dreadknight spells he starts off with. If you want to LOCK two mutually exclusive skills, this can be done independently in the character_skill_nodes_skill_locks_tables table. Note carefully that the first column asks for a character skill node key, while the second requires a character skill key, NOT a character skill node key. Keep in mind you'll need an entry here for each side; if you want Fate of Bjuna and Purple Sun to be mutually exclusive, you'll need to have each of them lock the other out. The Next Step Yes, I'm shilling another guide, deal with it. Seriously though, character skills, abilities/phases, effects, and ancillaries are definitely linked heavily to each other, but I wanted to split them up into separate guides for readability. Hence, we have abilities and phases guide! If you want to make custom(ish) spells, tinker with existing ones, or just give your dude a buff that grants him 50 million MA forever, check it out! ...Please don't do that last one tho. This Effects guide covers our handy dandy little effects in much more detail, though I gave a pretty good overview in character skills to effects. This Ancillaries guide covers how to make custom items, followers, mounts, etc.














