So I wasn't sure where to put this but there's a number of mechanics you can implement to almost any mod that I haven't seen on the vast majority of mods.
Overhead stabbing (2h)
What is overhead stabbing?
If you've played Napoleonic Wars, With Fire and Sword, or Viking Conquest you'll know you can stab in two directions with a spear. You can add this functionality to native as well as most if not all mods.
Modsys version
Overhead stabbing (1h)
This is a one handed version of the above, which means you can stab in two directions with a shield. Essential for a hoplite.
Modsys version
Crouching and pike bracing
Adds crouching functionality and fixes the normal animation issues you see with it as well as pike bracing, which if you've played With Fire and Sword or Napoleonic Wars you've seen. It's basically crouching with a weapon flagged as a pike, and if any cavalry rides into the pike they'll take huge damage. You can also kill the rider if you aim it right.
Modsys version
With Fire and Sword formation system
The WFAS formations elaborate on native's formations by adding some very useful extra functionality. The main advantage of these is that they can be used in scenes where advanced formations mods such as PBOD can't.
Module.ini options
These aren't displayed in most mods, but you can paste them in the module.ini for them and they should work on almost all of them as long as they're running on the latest version of warband.
Halfswording
Halfswording is generally using a sword as a much more close quarters weapon by using both hands on the weapon akin to a polearm. Here we're going to refer to it as using it as a short spear.
Modsys version
Mordhau
Mordhau is a technique in halfswording where you flip the sword over and use the pommel as a mace.
Modsys version
Thrust buffs
So natively thrusts are kinda crappy due to their slow speed. In Viking Conquest the animation speed was tweaked slightly so the attack ends up being that much faster, and much more effective.
Modsys version
Formation mod compatibility
So a big problem with formation mods is that most of them tend to be incompatible with the WFAS formations since both of these use F4 as a new menu. What you can do is rebind the menu key to another key in order to have both on with no overlap issue.
If anybody has any questions or needs help, post or PM me.
Overhead stabbing (2h)
What is overhead stabbing?
If you've played Napoleonic Wars, With Fire and Sword, or Viking Conquest you'll know you can stab in two directions with a spear. You can add this functionality to native as well as most if not all mods.
1. Download Notepad++
2. Open the actions.txt of the module you're playing with Notepad++
3. Cntrl f overswing_spear or just scroll down to line 965
4. Copy and paste this over lines 965-974:
ready_overswing_spear 1678835712 1679818762 1
0.350000 attacks_staff_thrust_overhead 6 21 7 0 0.0 0.0 0.0 0.0
release_overswing_spear 1678835712 2183135242 1
0.450000 attacks_staff_thrust_overhead 21 43 6 0 0.0 0.0 0.0 0.0
release_overswing_spear_continue 0 572522497 1
0.300000 attacks_staff_thrust_overhead 43 50 3 0 0.0 0.0 0.0 0.0
parried_overswing_spear 0 35651599 1
0.300000 attacks_staff_thrust_overhead 50 43 3 0 0.0 0.0 0.0 0.0
blocked_overswing_spear 0 35651599 1
0.300000 attacks_staff_thrust_overhead 50 43 3 0 0.0 0.0 0.0 0.0
Make sure all the lines match up nice and straight, if anything is offset the game might crash or the animation won't work.
5. Save and exit
6. Get Morgh's WB/WFAS editor
7. Open the item_kinds1.txt with Morgh's
8. Scroll down and find the weapon you're looking for
9. Uncheck the overswing_polearm flag (in the "Capabilities" column)
10. Scroll down to the bottom and check the overswing_spear flag
11. You may want to buff the pierce damage depending on the polearm, native thrust damages are kind of low
12. Update and save, then exit
13. Test to see if it works, if you've done it right it should
14. If you want to get rid of that blur effect, open up Morgh's again and scroll down to the bottom of the left column (the "Flags" column) then check the no_blur flag, update, save, exit.
2. Open the actions.txt of the module you're playing with Notepad++
3. Cntrl f overswing_spear or just scroll down to line 965
4. Copy and paste this over lines 965-974:
ready_overswing_spear 1678835712 1679818762 1
0.350000 attacks_staff_thrust_overhead 6 21 7 0 0.0 0.0 0.0 0.0
release_overswing_spear 1678835712 2183135242 1
0.450000 attacks_staff_thrust_overhead 21 43 6 0 0.0 0.0 0.0 0.0
release_overswing_spear_continue 0 572522497 1
0.300000 attacks_staff_thrust_overhead 43 50 3 0 0.0 0.0 0.0 0.0
parried_overswing_spear 0 35651599 1
0.300000 attacks_staff_thrust_overhead 50 43 3 0 0.0 0.0 0.0 0.0
blocked_overswing_spear 0 35651599 1
0.300000 attacks_staff_thrust_overhead 50 43 3 0 0.0 0.0 0.0 0.0
Make sure all the lines match up nice and straight, if anything is offset the game might crash or the animation won't work.
5. Save and exit
6. Get Morgh's WB/WFAS editor
7. Open the item_kinds1.txt with Morgh's
8. Scroll down and find the weapon you're looking for
9. Uncheck the overswing_polearm flag (in the "Capabilities" column)
10. Scroll down to the bottom and check the overswing_spear flag
11. You may want to buff the pierce damage depending on the polearm, native thrust damages are kind of low
12. Update and save, then exit
13. Test to see if it works, if you've done it right it should
14. If you want to get rid of that blur effect, open up Morgh's again and scroll down to the bottom of the left column (the "Flags" column) then check the no_blur flag, update, save, exit.
1. Download Notepad++
2. Open the module_animations of the module with Notepad++
3. Cntrl f overswing_spear
4. Copy and paste this over the overswing spear lines (on Native it should be lines 1829 to 1843):
["ready_overswing_spear", acf_overswing|acf_rot_vertical_bow|acf_anim_length(100), amf_priority_attack|amf_use_weapon_speed|amf_use_inertia|amf_keep|amf_client_owner_prediction,
[ready_durn, "attacks_staff_thrust_overhead", 6, 21, blend_in_ready],
],
["release_overswing_spear", acf_overswing|acf_rot_vertical_bow|acf_anim_length(100), amf_priority_attack|amf_use_weapon_speed|amf_play|amf_continue_to_next,
[0.45, "attacks_staff_thrust_overhead", 21, 43, blend_in_release],
],
["release_overswing_spear_continue", 0, amf_priority_continue|amf_use_weapon_speed|amf_play|amf_client_owner_prediction,
[0.3, "attacks_staff_thrust_overhead", 43, 50, arf_blend_in_2],
],
["parried_overswing_spear", 0, amf_priority_parried|amf_use_weapon_speed|amf_play,
[0.3, "attacks_staff_thrust_overhead", 50, 43, arf_blend_in_2],
],
["blocked_overswing_spear", 0, amf_priority_blocked|amf_use_weapon_speed|amf_play,
[0.3, "attacks_staff_thrust_overhead", 50, 43, arf_blend_in_2],
],
5. Save and exit
6. Head to your header_items.py file
7. You'll have to define some new combined flags which'll make adding these flags to weapons a lot easier, here's some I use:
itc_spear_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket|itcf_slashleft_polearm|itcf_slashright_polearm
itc_lance_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_great_lance_upstab = itc_greatlance|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_pike_upstab = itc_parry_polearm|itcf_force_64_bits|itcf_overswing_spear|itcf_thrust_polearm
These are used for their appropriate weapons (ie spears use the first, lances the second, greatlances that you can't block with the third, and two handed polearms that can upthrust the fourth).
8. Now open your module_items.py file.
9. Head down to the weapons you'll want to add this to, so probably any of the four listed above (spears, lances, greatlances, pikes).
10. You'll want to replace the redundant attack capabilities (ie itc_spear for spears since the new version has it included) with your new itc_ combination flag.
11. Depending on what weapons you're changing you might want to keep some item attack types so that's up to your discretion.
12. You may want to buff the pierce damage depending on the polearm, native thrust damages are kind of low.
13. Save, exit, and compile.
14. Test to see if it works, if you've done it right it should.
15. If you want to get rid of that blur effect, add the itp_no_blur capability to the item before the itc/itcf capabilities, update, save, exit.
2. Open the module_animations of the module with Notepad++
3. Cntrl f overswing_spear
4. Copy and paste this over the overswing spear lines (on Native it should be lines 1829 to 1843):
["ready_overswing_spear", acf_overswing|acf_rot_vertical_bow|acf_anim_length(100), amf_priority_attack|amf_use_weapon_speed|amf_use_inertia|amf_keep|amf_client_owner_prediction,
[ready_durn, "attacks_staff_thrust_overhead", 6, 21, blend_in_ready],
],
["release_overswing_spear", acf_overswing|acf_rot_vertical_bow|acf_anim_length(100), amf_priority_attack|amf_use_weapon_speed|amf_play|amf_continue_to_next,
[0.45, "attacks_staff_thrust_overhead", 21, 43, blend_in_release],
],
["release_overswing_spear_continue", 0, amf_priority_continue|amf_use_weapon_speed|amf_play|amf_client_owner_prediction,
[0.3, "attacks_staff_thrust_overhead", 43, 50, arf_blend_in_2],
],
["parried_overswing_spear", 0, amf_priority_parried|amf_use_weapon_speed|amf_play,
[0.3, "attacks_staff_thrust_overhead", 50, 43, arf_blend_in_2],
],
["blocked_overswing_spear", 0, amf_priority_blocked|amf_use_weapon_speed|amf_play,
[0.3, "attacks_staff_thrust_overhead", 50, 43, arf_blend_in_2],
],
5. Save and exit
6. Head to your header_items.py file
7. You'll have to define some new combined flags which'll make adding these flags to weapons a lot easier, here's some I use:
itc_spear_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket|itcf_slashleft_polearm|itcf_slashright_polearm
itc_lance_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_great_lance_upstab = itc_greatlance|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_pike_upstab = itc_parry_polearm|itcf_force_64_bits|itcf_overswing_spear|itcf_thrust_polearm
These are used for their appropriate weapons (ie spears use the first, lances the second, greatlances that you can't block with the third, and two handed polearms that can upthrust the fourth).
8. Now open your module_items.py file.
9. Head down to the weapons you'll want to add this to, so probably any of the four listed above (spears, lances, greatlances, pikes).
10. You'll want to replace the redundant attack capabilities (ie itc_spear for spears since the new version has it included) with your new itc_ combination flag.
11. Depending on what weapons you're changing you might want to keep some item attack types so that's up to your discretion.
12. You may want to buff the pierce damage depending on the polearm, native thrust damages are kind of low.
13. Save, exit, and compile.
14. Test to see if it works, if you've done it right it should.
15. If you want to get rid of that blur effect, add the itp_no_blur capability to the item before the itc/itcf capabilities, update, save, exit.
This is a one handed version of the above, which means you can stab in two directions with a shield. Essential for a hoplite.
1. You'll need to do the following above, due to the way the engine works it needs the overswing_spear flag as well as the one we'll be using in this, so do that first.
2. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
3. You should have Notepad++ by now, open your actions.txt with it
4. Cntrl f overswing_musket or just scroll down to line 977
5. Copy and paste this over lines 977-986:
ready_overswing_musket 1678835712 1679818762 1
0.500000 1h_spear_thrust_overhead 0 20 7 0 0.0 0.0 0.0 0.0
release_overswing_musket 1678835712 2183135242 1
0.450000 1h_spear_thrust_overhead 20 41 6 0 0.0 0.0 0.0 0.0
release_overswing_musket_continue 0 572522497 1
0.300000 1h_spear_thrust_overhead 41 52 3 0 0.0 0.0 0.0 0.0
parried_overswing_musket 0 35651599 1
0.900000 1h_spear_thrust_overhead 26 22 3 0 0.0 0.0 0.0 0.0
blocked_overswing_musket 0 35651599 1
0.600000 1h_spear_thrust_overhead 26 22 3 0 0.0 0.0 0.0 0.0
Make sure all the lines match up nice and straight, if anything is offset the game might crash or the animation won't work.
6. Save and exit
7. Open the item_kinds1.txt with Morgh's editor
8. Scroll down and find the weapon you're looking for
9. Remove the overswing_polearm flag (in the "Capabilities" column) and scroll down about halfway
10. Make sure the thrust_onehanded_lance and thrust_onehanded_lance_horseback flags are checked then scroll to the bottom
11. Check the overswing_spear (if you haven't already) AND the overswing_musket
12. Update, save, and exit.
13. Now you need to load the .brf file from the download link, so download that.
14. Put this file in your Resource folder in the module folder (ex. Modules/Native/Resource)
15. Open your module.ini
16. Cntrl f ani_low_walk
17. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
18. Save and exit, and test to see if it works.
2. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
3. You should have Notepad++ by now, open your actions.txt with it
4. Cntrl f overswing_musket or just scroll down to line 977
5. Copy and paste this over lines 977-986:
ready_overswing_musket 1678835712 1679818762 1
0.500000 1h_spear_thrust_overhead 0 20 7 0 0.0 0.0 0.0 0.0
release_overswing_musket 1678835712 2183135242 1
0.450000 1h_spear_thrust_overhead 20 41 6 0 0.0 0.0 0.0 0.0
release_overswing_musket_continue 0 572522497 1
0.300000 1h_spear_thrust_overhead 41 52 3 0 0.0 0.0 0.0 0.0
parried_overswing_musket 0 35651599 1
0.900000 1h_spear_thrust_overhead 26 22 3 0 0.0 0.0 0.0 0.0
blocked_overswing_musket 0 35651599 1
0.600000 1h_spear_thrust_overhead 26 22 3 0 0.0 0.0 0.0 0.0
Make sure all the lines match up nice and straight, if anything is offset the game might crash or the animation won't work.
6. Save and exit
7. Open the item_kinds1.txt with Morgh's editor
8. Scroll down and find the weapon you're looking for
9. Remove the overswing_polearm flag (in the "Capabilities" column) and scroll down about halfway
10. Make sure the thrust_onehanded_lance and thrust_onehanded_lance_horseback flags are checked then scroll to the bottom
11. Check the overswing_spear (if you haven't already) AND the overswing_musket
12. Update, save, and exit.
13. Now you need to load the .brf file from the download link, so download that.
14. Put this file in your Resource folder in the module folder (ex. Modules/Native/Resource)
15. Open your module.ini
16. Cntrl f ani_low_walk
17. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
18. Save and exit, and test to see if it works.
1. You'll need to do the following above, due to the way the engine works it needs the overswing_spear flag as well as the one we'll be using in this, so do that first.
2. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
3. You should have Notepad++ by now, open your module_animations.py with it
4. Cntrl f overswing_musket
5. Copy and paste this over the overswing_musket lines (in Native it's between lines 1847 and 1861:
["ready_overswing_musket", acf_rot_vertical_sword| acf_overswing, amf_priority_attack|amf_use_weapon_speed|amf_use_inertia|amf_keep|amf_client_owner_prediction|amf_rider_rot_thrust,
[ready_durn, "1h_spear_thrust_overhead", 0, 20, blend_in_ready],
],
["release_overswing_musket", acf_rot_vertical_sword|acf_overswing, amf_priority_attack|amf_use_weapon_speed|amf_play|amf_continue_to_next|amf_rider_rot_thrust,
[0.45, "1h_spear_thrust_overhead", 20, 41, blend_in_release],
],
["release_overswing_musket_continue", 0, amf_priority_continue|amf_use_weapon_speed|amf_play|amf_client_owner_prediction|amf_rider_rot_thrust,
[0.3, "1h_spear_thrust_overhead", 41, 52, arf_blend_in_2],
],
["parried_overswing_musket", 0, amf_priority_parried|amf_use_weapon_speed|amf_play,
[0.3, "1h_spear_thrust_overhead", 26, 22, blend_in_parry],
],
["blocked_overswing_musket", 0, amf_priority_blocked|amf_use_weapon_speed|amf_play,
[0.3, "1h_spear_thrust_overhead", 26, 22, blend_in_parry],
],
5. Save and exit
6. Head to your header_items.py file
7. You'll have to define some new combined flags which'll make adding these flags to weapons a lot easier, here's some I use:
itc_spear_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket|itcf_slashleft_polearm|itcf_slashright_polearm
itc_lance_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_great_lance_upstab = itc_greatlance|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_pike_upstab = itc_parry_polearm|itcf_force_64_bits|itcf_overswing_spear|itcf_thrust_polearm
These are used for their appropriate weapons (ie spears use the first, lances the second, greatlances that you can't block with the third, and two handed polearms that can upthrust the fourth).
8. Now open your module_items.py file.
9. Head down to the weapons you'll want to add this to, so probably any of the four listed above (spears, lances, greatlances, pikes).
10. You'll want to replace the redundant attack capabilities (ie itc_spear for spears since the new version has it included) with your new itc_ combination flag.
11. Depending on what weapons you're changing you might want to keep some item attack types so that's up to your discretion.
12. You may want to buff the pierce damage depending on the polearm, native thrust damages are kind of low.
13. Save, exit, and compile.
14. Test to see if it works, if you've done it right it should.
15. If you want to get rid of that blur effect, add the itp_no_blur capability to the item before the itc/itcf capabilities, update, save, exit.
16. Now you need to load the .brf file from the download link, so download that.
17. Put this file in your Resource folder in the module folder (ex. Modules/Native/Resource)
18. Open your module.ini
19. Cntrl f ani_low_walk
20. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
21. Save and exit, and test to see if it works.
2. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
3. You should have Notepad++ by now, open your module_animations.py with it
4. Cntrl f overswing_musket
5. Copy and paste this over the overswing_musket lines (in Native it's between lines 1847 and 1861:
["ready_overswing_musket", acf_rot_vertical_sword| acf_overswing, amf_priority_attack|amf_use_weapon_speed|amf_use_inertia|amf_keep|amf_client_owner_prediction|amf_rider_rot_thrust,
[ready_durn, "1h_spear_thrust_overhead", 0, 20, blend_in_ready],
],
["release_overswing_musket", acf_rot_vertical_sword|acf_overswing, amf_priority_attack|amf_use_weapon_speed|amf_play|amf_continue_to_next|amf_rider_rot_thrust,
[0.45, "1h_spear_thrust_overhead", 20, 41, blend_in_release],
],
["release_overswing_musket_continue", 0, amf_priority_continue|amf_use_weapon_speed|amf_play|amf_client_owner_prediction|amf_rider_rot_thrust,
[0.3, "1h_spear_thrust_overhead", 41, 52, arf_blend_in_2],
],
["parried_overswing_musket", 0, amf_priority_parried|amf_use_weapon_speed|amf_play,
[0.3, "1h_spear_thrust_overhead", 26, 22, blend_in_parry],
],
["blocked_overswing_musket", 0, amf_priority_blocked|amf_use_weapon_speed|amf_play,
[0.3, "1h_spear_thrust_overhead", 26, 22, blend_in_parry],
],
5. Save and exit
6. Head to your header_items.py file
7. You'll have to define some new combined flags which'll make adding these flags to weapons a lot easier, here's some I use:
itc_spear_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket|itcf_slashleft_polearm|itcf_slashright_polearm
itc_lance_upstab = itc_spear|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_great_lance_upstab = itc_greatlance|itcf_force_64_bits|itcf_overswing_spear|itcf_overswing_musket
itc_pike_upstab = itc_parry_polearm|itcf_force_64_bits|itcf_overswing_spear|itcf_thrust_polearm
These are used for their appropriate weapons (ie spears use the first, lances the second, greatlances that you can't block with the third, and two handed polearms that can upthrust the fourth).
8. Now open your module_items.py file.
9. Head down to the weapons you'll want to add this to, so probably any of the four listed above (spears, lances, greatlances, pikes).
10. You'll want to replace the redundant attack capabilities (ie itc_spear for spears since the new version has it included) with your new itc_ combination flag.
11. Depending on what weapons you're changing you might want to keep some item attack types so that's up to your discretion.
12. You may want to buff the pierce damage depending on the polearm, native thrust damages are kind of low.
13. Save, exit, and compile.
14. Test to see if it works, if you've done it right it should.
15. If you want to get rid of that blur effect, add the itp_no_blur capability to the item before the itc/itcf capabilities, update, save, exit.
16. Now you need to load the .brf file from the download link, so download that.
17. Put this file in your Resource folder in the module folder (ex. Modules/Native/Resource)
18. Open your module.ini
19. Cntrl f ani_low_walk
20. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
21. Save and exit, and test to see if it works.
Adds crouching functionality and fixes the normal animation issues you see with it as well as pike bracing, which if you've played With Fire and Sword or Napoleonic Wars you've seen. It's basically crouching with a weapon flagged as a pike, and if any cavalry rides into the pike they'll take huge damage. You can also kill the rider if you aim it right.
1. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
2. You should have Notepad++ by now, open your actions.txt with it
3. Cntrl f "crouch"
4. There will be multiple locations where animations have to be replaced, (change the search function from up to down on cntrl f) starting from first to last:
walk_forward_crouch 256 0 1
1.700000 low_walk 0 48 536870912 58726 0.0 0.0 0.0 0.0
stand_to_crouch 256 0 1
1.300000 crouch_down 0 50 2 0 0.000000 0.000000 0.000000 0.0
crouch_to_stand 256 0 1
1.000000 crouch_down 56 91 2 0 0.000000 0.000000 0.000000 0.0
--------------------------------------------------------------------
crouch_unarmed 0 16777216 1
11.000000 crouch_stand_man 0 315 1342177280 0 0.000000 0.000000 0.000000 0.250000
crouch_single 0 16777216 1
11.000000 crouch_stand_man 0 315 1342177280 0 0.000000 0.000000 0.000000 0.250000
crouch_greatsword 0 16777216 1
6.000000 crouch_greatsword_cstance 0 170 1342177280 0 0.000000 0.000000 0.000000 0.250000
crouch_staff 0 16777216 1
5.000000 crouch_staff_cstance 0 120 1342177280 0 0.000000 0.000000 0.000000 0.000000
crouch_crossbow 0 16777216 1
2.000000 staff_cstance 0 60 1342177280 0 0.000000 0.000000 0.000000 0.000000
crouch_ready_pistol 1679818752 606093322 1
0.300000 crouch_fire_pistol 1 12 7 0 0.0 0.0 0.0 0.0
crouch_release_pistol 1679818752 572538890 1
0.300000 crouch_fire_pistol 12 21 2 0 0.0 0.0 0.0 0.0
----------------------------------------------------------------------------------------------
crouch_pike 0 16777216 1
3.300000 crouch_staff_cstance_attack 0 100 1342177280 0 0.000000 0.000000 0.000000 0.000000
crouch_pike_recover 0 35651599 1
1.200000 crouch_staff_cstance_attack 105 137 4 0 0.000000 0.000000 0.000000 0.000000
Make sure all the lines match up nice and straight, if anything is offset the game might crash or the animation won't work.
5. Save and exit
6. Open your module.ini
7. Cntrl f ani_low_walk
8. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
9. Cntrl f can_crouch and change the value to 1
Alternatively, if it isn't in the module.ini then you can just add can_crouch = 1 to the bottom
10. Save and exit
11. To enable pike bracing, open Morgh's editor
12. Scroll down to find the weapon you're looking for
13. On the "Flags" column, scroll down to the bottom and enable the is_pike flag
14. Update, save, and exit.
15. Now test it in game, pike bracing works by equipping the pike and then crouching, if it's flagged as a pike the polearm will be pointing out forward rather than being held close to the characters chest
16. The UI prompt for crouch will say there's no string, but we'll fix that in the next part
2. You should have Notepad++ by now, open your actions.txt with it
3. Cntrl f "crouch"
4. There will be multiple locations where animations have to be replaced, (change the search function from up to down on cntrl f) starting from first to last:
walk_forward_crouch 256 0 1
1.700000 low_walk 0 48 536870912 58726 0.0 0.0 0.0 0.0
stand_to_crouch 256 0 1
1.300000 crouch_down 0 50 2 0 0.000000 0.000000 0.000000 0.0
crouch_to_stand 256 0 1
1.000000 crouch_down 56 91 2 0 0.000000 0.000000 0.000000 0.0
--------------------------------------------------------------------
crouch_unarmed 0 16777216 1
11.000000 crouch_stand_man 0 315 1342177280 0 0.000000 0.000000 0.000000 0.250000
crouch_single 0 16777216 1
11.000000 crouch_stand_man 0 315 1342177280 0 0.000000 0.000000 0.000000 0.250000
crouch_greatsword 0 16777216 1
6.000000 crouch_greatsword_cstance 0 170 1342177280 0 0.000000 0.000000 0.000000 0.250000
crouch_staff 0 16777216 1
5.000000 crouch_staff_cstance 0 120 1342177280 0 0.000000 0.000000 0.000000 0.000000
crouch_crossbow 0 16777216 1
2.000000 staff_cstance 0 60 1342177280 0 0.000000 0.000000 0.000000 0.000000
crouch_ready_pistol 1679818752 606093322 1
0.300000 crouch_fire_pistol 1 12 7 0 0.0 0.0 0.0 0.0
crouch_release_pistol 1679818752 572538890 1
0.300000 crouch_fire_pistol 12 21 2 0 0.0 0.0 0.0 0.0
----------------------------------------------------------------------------------------------
crouch_pike 0 16777216 1
3.300000 crouch_staff_cstance_attack 0 100 1342177280 0 0.000000 0.000000 0.000000 0.000000
crouch_pike_recover 0 35651599 1
1.200000 crouch_staff_cstance_attack 105 137 4 0 0.000000 0.000000 0.000000 0.000000
Make sure all the lines match up nice and straight, if anything is offset the game might crash or the animation won't work.
5. Save and exit
6. Open your module.ini
7. Cntrl f ani_low_walk
8. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
9. Cntrl f can_crouch and change the value to 1
Alternatively, if it isn't in the module.ini then you can just add can_crouch = 1 to the bottom
10. Save and exit
11. To enable pike bracing, open Morgh's editor
12. Scroll down to find the weapon you're looking for
13. On the "Flags" column, scroll down to the bottom and enable the is_pike flag
14. Update, save, and exit.
15. Now test it in game, pike bracing works by equipping the pike and then crouching, if it's flagged as a pike the polearm will be pointing out forward rather than being held close to the characters chest
16. The UI prompt for crouch will say there's no string, but we'll fix that in the next part
1. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
2. Unless you're modifying an older module, then you shouldn't need to edit the crouching animations at all. If you are, then just using an application like WinMerge with a 1.171 module_animations.py file and your module's animations.py file will highlight the differences.
3. Open your module.ini
4. Cntrl f ani_low_walk
5. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
6. Cntrl f can_crouch and change the value to 1
Alternatively, if it isn't in the module.ini then you can just add can_crouch = 1 to the bottom
7. Save and exit
8. Open your module_items.py file
9. Now you'll need to add the itp_is_pike property to your pike weapons (add this before itc/itcf capabilities on the item). Generally what you want to be a pike weapon is a two handed only polearm (or two handed weapon, depending on the weapon) that has decent reach and can thrust.
14. Save and exit, then compile.
15. Now test it in game, pike bracing works by equipping the pike and then crouching, if it's flagged as a pike the polearm will be pointing out forward rather than being held close to the characters chest.
2. Unless you're modifying an older module, then you shouldn't need to edit the crouching animations at all. If you are, then just using an application like WinMerge with a 1.171 module_animations.py file and your module's animations.py file will highlight the differences.
3. Open your module.ini
4. Cntrl f ani_low_walk
5. Delete the ani_low_walk and ani_crouch_down lines and replace them with:
load_mod_resource = mbg_pastebin_anims
6. Cntrl f can_crouch and change the value to 1
Alternatively, if it isn't in the module.ini then you can just add can_crouch = 1 to the bottom
7. Save and exit
8. Open your module_items.py file
9. Now you'll need to add the itp_is_pike property to your pike weapons (add this before itc/itcf capabilities on the item). Generally what you want to be a pike weapon is a two handed only polearm (or two handed weapon, depending on the weapon) that has decent reach and can thrust.
14. Save and exit, then compile.
15. Now test it in game, pike bracing works by equipping the pike and then crouching, if it's flagged as a pike the polearm will be pointing out forward rather than being held close to the characters chest.
The WFAS formations elaborate on native's formations by adding some very useful extra functionality. The main advantage of these is that they can be used in scenes where advanced formations mods such as PBOD can't.
1. Open the module.ini
2. Scroll to the bottom
3. Change use_advanced_formation = 0 to 1
Alternatively, if it isn't in the module.ini then you can just add use_advanced_formation = 1 to the bottom
4. Save and exit
5. Open the ui.csv file of the module (in Modules/whatever module/languages/en/ui.csv)
Alternatively, if the module has no ui.csv file you can just edit the one in MountBlade Warband/languages/en/ui.csv
6. Copy and paste this to the bottom:
ui_cut|Cutting
ui_pierce|Piercing
ui_blunt|Blunt
ui_use_melee_weapons_e_|%s, use melee weapons!
ui_use_ranged_weapons_e_|%s, use ranged weapons!
ui_order_button_use_melee_weapons|Use melee weapons
ui_order_button_use_ranged_weapons|Use ranged weapons
ui_order_button_weapon_usage_orders|Weapon usage orders
ui_fire_at_my_command_e_|%s, fire at my command!
ui_fire_now_e_|%s, fire!
ui_order_button_fire_at_my_command|Fire at my command
ui_order_button_fire_now|Fire
ui_order_form_1_row|Form 1 row
ui_order_form_2_row|Form 2 rows
ui_order_form_3_row|Form 3 rows
ui_order_form_4_row|Form 4 rows
ui_order_form_5_row|Form 5 rows
ui_form_1_row_e_|%s, form 1 row!
ui_form_2_row_e_|%s, form 2 rows!
ui_form_3_row_e_|%s, form 3 rows!
ui_form_4_row_e_|%s, form 4 rows!
ui_form_5_row_e_|%s, form 5 rows!
ui_order_7|Select Order 7
ui_order_8|Select Order 8
ui_all_fire_now_e_|%s, volley fire!
ui_left_fire_now_e_|%s, left flank volley fire!
ui_middle_fire_now_e_|%s, middle group volley fire!
ui_right_fire_now_e_|%s, right flank volley fire!
ui_order_button_all_fire_now|All volley fire
ui_order_button_left_fire_now|Left flank volley fire
ui_order_button_middle_fire_now|Middle group volley fire
ui_order_button_right_fire_now|Right flank volley fire
ui_crouch|Crouch
Leave a line break after crouch otherwise the string gets cut off
7. Save and test, you should now have extra formation functionality.
2. Scroll to the bottom
3. Change use_advanced_formation = 0 to 1
Alternatively, if it isn't in the module.ini then you can just add use_advanced_formation = 1 to the bottom
4. Save and exit
5. Open the ui.csv file of the module (in Modules/whatever module/languages/en/ui.csv)
Alternatively, if the module has no ui.csv file you can just edit the one in MountBlade Warband/languages/en/ui.csv
6. Copy and paste this to the bottom:
ui_cut|Cutting
ui_pierce|Piercing
ui_blunt|Blunt
ui_use_melee_weapons_e_|%s, use melee weapons!
ui_use_ranged_weapons_e_|%s, use ranged weapons!
ui_order_button_use_melee_weapons|Use melee weapons
ui_order_button_use_ranged_weapons|Use ranged weapons
ui_order_button_weapon_usage_orders|Weapon usage orders
ui_fire_at_my_command_e_|%s, fire at my command!
ui_fire_now_e_|%s, fire!
ui_order_button_fire_at_my_command|Fire at my command
ui_order_button_fire_now|Fire
ui_order_form_1_row|Form 1 row
ui_order_form_2_row|Form 2 rows
ui_order_form_3_row|Form 3 rows
ui_order_form_4_row|Form 4 rows
ui_order_form_5_row|Form 5 rows
ui_form_1_row_e_|%s, form 1 row!
ui_form_2_row_e_|%s, form 2 rows!
ui_form_3_row_e_|%s, form 3 rows!
ui_form_4_row_e_|%s, form 4 rows!
ui_form_5_row_e_|%s, form 5 rows!
ui_order_7|Select Order 7
ui_order_8|Select Order 8
ui_all_fire_now_e_|%s, volley fire!
ui_left_fire_now_e_|%s, left flank volley fire!
ui_middle_fire_now_e_|%s, middle group volley fire!
ui_right_fire_now_e_|%s, right flank volley fire!
ui_order_button_all_fire_now|All volley fire
ui_order_button_left_fire_now|Left flank volley fire
ui_order_button_middle_fire_now|Middle group volley fire
ui_order_button_right_fire_now|Right flank volley fire
ui_crouch|Crouch
Leave a line break after crouch otherwise the string gets cut off
7. Save and test, you should now have extra formation functionality.
These aren't displayed in most mods, but you can paste them in the module.ini for them and they should work on almost all of them as long as they're running on the latest version of warband.
#1.151 things
can_crouch = 0
can_objects_make_sound = 0
disable_zoom = 0
use_advanced_formation = 0
use_crossbow_as_firearm = 0
can_reload_while_moving = 0
can_run_faster_with_skills = 0
use_phased_reload = 0
horses_try_running_away = 0
horses_rear_with_attack = 1
lance_pike_effect_speed = 3.0
no_friendly_fire_for_bots = 0
can_adjust_camera_distance = 1
sync_ragdoll_effects = 0
has_forced_particles = 0
can_use_scene_props_in_single_player = 1
disable_attack_while_jumping = 0
disable_high_hdr = 0
has_accessories_for_female = 0
#1.168 things
operation_set_version = 1168 # to force new version of engine API
supports_directx_7 = 1
reduce_texture_loader_memory_usage = 1 # this should improve loading time by making it multithread
use_case_insensitive_mesh_searches = 0
use_texture_degration_cache = 1 #improve loading times but generate chache files.
use_scene_unloading = 1
auto_compute_party_radius = 1 #helps space, select if mod has large icons
disable_disband_on_terrain_type = 0
use_strict_pathfinding_for_ships = 0 #keeps ships at sea for sea-to-sea routes
disable_force_leaving_conversations = 1 #no TAB end in conversations.
shorter_pistol_aiming = 1 #add pistols to the exception just like in crossbow and muskets
apply_all_ammo_damage_modifiers = 1
maximum_number_of_notification_messages = 4 #msg in battle. Common 10
ai_decide_direction_according_to_damage = 1
far_plane_distance = 2000 #Default is 1250 cm
battle_size_min = 30 #minimum battle size for module
battle_size_max = 150 #maximum battle size for module
blood_multiplier = 6.0 #chief aumentado
consider_weapon_length_for_weapon_quality = 0 #weapon selection
use_bordered_shadow_sampler = 0
show_troop_upgrades_button = 0
You can individually copy and paste these if you wish.
can_crouch = 0
can_objects_make_sound = 0
disable_zoom = 0
use_advanced_formation = 0
use_crossbow_as_firearm = 0
can_reload_while_moving = 0
can_run_faster_with_skills = 0
use_phased_reload = 0
horses_try_running_away = 0
horses_rear_with_attack = 1
lance_pike_effect_speed = 3.0
no_friendly_fire_for_bots = 0
can_adjust_camera_distance = 1
sync_ragdoll_effects = 0
has_forced_particles = 0
can_use_scene_props_in_single_player = 1
disable_attack_while_jumping = 0
disable_high_hdr = 0
has_accessories_for_female = 0
#1.168 things
operation_set_version = 1168 # to force new version of engine API
supports_directx_7 = 1
reduce_texture_loader_memory_usage = 1 # this should improve loading time by making it multithread
use_case_insensitive_mesh_searches = 0
use_texture_degration_cache = 1 #improve loading times but generate chache files.
use_scene_unloading = 1
auto_compute_party_radius = 1 #helps space, select if mod has large icons
disable_disband_on_terrain_type = 0
use_strict_pathfinding_for_ships = 0 #keeps ships at sea for sea-to-sea routes
disable_force_leaving_conversations = 1 #no TAB end in conversations.
shorter_pistol_aiming = 1 #add pistols to the exception just like in crossbow and muskets
apply_all_ammo_damage_modifiers = 1
maximum_number_of_notification_messages = 4 #msg in battle. Common 10
ai_decide_direction_according_to_damage = 1
far_plane_distance = 2000 #Default is 1250 cm
battle_size_min = 30 #minimum battle size for module
battle_size_max = 150 #maximum battle size for module
blood_multiplier = 6.0 #chief aumentado
consider_weapon_length_for_weapon_quality = 0 #weapon selection
use_bordered_shadow_sampler = 0
show_troop_upgrades_button = 0
You can individually copy and paste these if you wish.
Halfswording is generally using a sword as a much more close quarters weapon by using both hands on the weapon akin to a polearm. Here we're going to refer to it as using it as a short spear.
1. Open your item_kinds1.txt
2. Paste this at the bottom (1h version):
itm_1h_halfsword Knightly_Sword_(Halfswordable) Knightly_Sword_(Halfswordable) 2 sword_medieval_d 0 sword_medieval_d_scabbard 3458764513820540928 2251800363204610 9223388564182532111 250 222228 2.250000 100 0 0 0 0 27648 95 0 95 0 278 27
0
0
itm_1h_halfsword_alt Knightly_Sword_(Melee) Knightly_Sword_(Melee) 2 sword_medieval_d 0 sword_medieval_d_scabbard 3458764513820540928 2251800094703620 9236601395388350720 0 222228 2.250000 100 0 0 0 0 27648 95 0 95 0 286 0
0
0
3. Paste this at the bottom (2h version):
itm_2h_halfsword Two_Handed_Sword_(Halfswordable) Two_Handed_Sword_(Halfswordable) 1 arena_sword_two_handed 0 2251800356913155 9223635924435337456 1000 156692 3.500000 100 0 0 0 12 46080 85 0 109 0 286 40
0
0
itm_2h_halfsword_alt Two_Handed_Sword_(Melee) Two_Handed_Sword_(Melee) 1 arena_sword_two_handed 0 2251799819976708 9236601365524906240 0 156692 3.500000 0 0 0 0 12 46080 90 0 109 0 291 0
0
0
Make sure the all the lines are correct, the game might crash otherwise.
You can change the names if you want, I just use them so they're easier to identify
4. Save and close
5. If you pasted these at the bottom then open the item_kinds1 with morgh's and it'll tell you it detected some new items. Click ok then save changes, morgh's will update the item count for you.
6. Test in game
How does this work?
Basically like those long axes in native, but the secondary mode is now thrust oriented.
2. Paste this at the bottom (1h version):
itm_1h_halfsword Knightly_Sword_(Halfswordable) Knightly_Sword_(Halfswordable) 2 sword_medieval_d 0 sword_medieval_d_scabbard 3458764513820540928 2251800363204610 9223388564182532111 250 222228 2.250000 100 0 0 0 0 27648 95 0 95 0 278 27
0
0
itm_1h_halfsword_alt Knightly_Sword_(Melee) Knightly_Sword_(Melee) 2 sword_medieval_d 0 sword_medieval_d_scabbard 3458764513820540928 2251800094703620 9236601395388350720 0 222228 2.250000 100 0 0 0 0 27648 95 0 95 0 286 0
0
0
3. Paste this at the bottom (2h version):
itm_2h_halfsword Two_Handed_Sword_(Halfswordable) Two_Handed_Sword_(Halfswordable) 1 arena_sword_two_handed 0 2251800356913155 9223635924435337456 1000 156692 3.500000 100 0 0 0 12 46080 85 0 109 0 286 40
0
0
itm_2h_halfsword_alt Two_Handed_Sword_(Melee) Two_Handed_Sword_(Melee) 1 arena_sword_two_handed 0 2251799819976708 9236601365524906240 0 156692 3.500000 0 0 0 0 12 46080 90 0 109 0 291 0
0
0
Make sure the all the lines are correct, the game might crash otherwise.
You can change the names if you want, I just use them so they're easier to identify
4. Save and close
5. If you pasted these at the bottom then open the item_kinds1 with morgh's and it'll tell you it detected some new items. Click ok then save changes, morgh's will update the item count for you.
6. Test in game
How does this work?
Basically like those long axes in native, but the secondary mode is now thrust oriented.
1. Open your module_items.py file
2. Paste these somewhere in the module_items file, as long as it's where the other items are it's fine:
["bastard_sword_b", "Swadian Longsword", [("bastard_sword_b",0),("bastard_sword_b_scabbard", ixmesh_carry)], itp_type_two_handed_wpn|itp_no_blur|itp_merchandise|itp_next_item_as_melee|itp_primary, itc_bastardsword|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 500 , weight(3)|difficulty(9)|spd_rtng(9 | weapon_length(105)|swing_damage(31 , cut) | thrust_damage(33 , pierce),imodbits_sword_high ],
["bastard_sword_b_alt", "Swadian Longsword", [("bastard_sword_b",0),("bastard_sword_b_scabbard", ixmesh_carry)], itp_type_polearm|itp_no_blur|itp_two_handed|itp_cant_use_on_horseback|itp_primary, itc_pike_upstab|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 500 , weight(3)|difficulty(9)|spd_rtng(9 | weapon_length(105)|swing_damage(0 , cut) | thrust_damage(35 , pierce),imodbits_sword_high ],
3. I've bolded the important flags, which are the flags necessary for this to work. Of course you can customize everything else to suit your needs, I just took this code from one of my mods. Remember that I defined itc_pike_upstab earlier, if you haven't done that make sure you read the earlier parts of this guide!
4. Save, exit, compile, test.
2. Paste these somewhere in the module_items file, as long as it's where the other items are it's fine:
["bastard_sword_b", "Swadian Longsword", [("bastard_sword_b",0),("bastard_sword_b_scabbard", ixmesh_carry)], itp_type_two_handed_wpn|itp_no_blur|itp_merchandise|itp_next_item_as_melee|itp_primary, itc_bastardsword|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 500 , weight(3)|difficulty(9)|spd_rtng(9 | weapon_length(105)|swing_damage(31 , cut) | thrust_damage(33 , pierce),imodbits_sword_high ],
["bastard_sword_b_alt", "Swadian Longsword", [("bastard_sword_b",0),("bastard_sword_b_scabbard", ixmesh_carry)], itp_type_polearm|itp_no_blur|itp_two_handed|itp_cant_use_on_horseback|itp_primary, itc_pike_upstab|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 500 , weight(3)|difficulty(9)|spd_rtng(9 | weapon_length(105)|swing_damage(0 , cut) | thrust_damage(35 , pierce),imodbits_sword_high ],
3. I've bolded the important flags, which are the flags necessary for this to work. Of course you can customize everything else to suit your needs, I just took this code from one of my mods. Remember that I defined itc_pike_upstab earlier, if you haven't done that make sure you read the earlier parts of this guide!
4. Save, exit, compile, test.
Mordhau is a technique in halfswording where you flip the sword over and use the pommel as a mace.
1. You'll need to download an animations file, which you can get here: http://www.mediafire.com/download/68azscba6a6b4kf/mbg_pastebin_anims.brf
2. Open your item_kinds1.txt
3. Paste this at the bottom (1h version):
itm_1h_mordhau Knightly_Arming_Sword_(Mordhau) Knightly_Arming_Sword_(Mordhau) 2 sword_medieval_d_long 0 sword_medieval_d_long_scabbard 3458764513820540928 2251800363204610 9223388564182532111 250 222228 2.250000 100 0 0 0 0 27648 95 0 102 0 281 30
0
0
itm_1h_mordhau_alt Knightly_Sword_(Melee) Knightly_Sword_(Melee) 2 sword_medieval_d_long 0 sword_medieval_d_long_scabbard 3458764513820540928 3377974879453188 9227594196133613312 0 222228 2.250000 100 0 0 0 0 27648 95 0 102 0 527 532
0
0
4. Paste this at the bottom (2h version):
itm_2h_mordhau Two_Handed_Sword_(Mordhau) Two_Handed_Sword 1 sword_two_handed_b 0 2286984729001987 9223635924435337456 1000 156692 3.500000 100 0 0 0 12 46080 85 0 109 0 286 40
0
0
itm_2h_mordhau_alt Two_Handed_Sword_(Melee) Two_Handed_Sword_(Melee) 1 sword_two_handed_b 0 3377699995254788 9227594166068842240 0 156692 3.500000 0 0 0 0 12 46080 90 0 109 0 532 537
0
0
Make sure the all the lines are correct, the game might crash otherwise.
You can change the names if you want, I just use them so they're easier to identify
5. Save and close
6. Open your actions.txt
7. Cntrl+f equip_bayonet
8. Copy and paste these over the equip and unequip musket lines:
equip_bayonet 0 184549446 1
0.300000 equip_musket 5 13 1 0 0.0 0.0 0.0 0.0
unequip_bayonet 0 184549446 1
0.300000 equip_musket 5 13 1 0 0.0 0.0 0.0 0.0
9. Save and close
10. If you pasted these at the bottom then open the item_kinds1 with morgh's and it'll tell you it detected some new items. Click ok then save changes, morgh's will update the item count for you.
11. Test in game
How does this work?
If you've played Napoleonic Wars or With Fire and Sword, when you use a non-bayonetted firearm as a melee weapon, the mesh flips over (via the offset_musket flag). This is just applying that same principle to melee weapons. The animation stuff is just there so there's an animation to show the character flips the weapon. It isn't necessary so you can take it off by removing the has_bayonet and cant_reload_while_moving flags.
2. Open your item_kinds1.txt
3. Paste this at the bottom (1h version):
itm_1h_mordhau Knightly_Arming_Sword_(Mordhau) Knightly_Arming_Sword_(Mordhau) 2 sword_medieval_d_long 0 sword_medieval_d_long_scabbard 3458764513820540928 2251800363204610 9223388564182532111 250 222228 2.250000 100 0 0 0 0 27648 95 0 102 0 281 30
0
0
itm_1h_mordhau_alt Knightly_Sword_(Melee) Knightly_Sword_(Melee) 2 sword_medieval_d_long 0 sword_medieval_d_long_scabbard 3458764513820540928 3377974879453188 9227594196133613312 0 222228 2.250000 100 0 0 0 0 27648 95 0 102 0 527 532
0
0
4. Paste this at the bottom (2h version):
itm_2h_mordhau Two_Handed_Sword_(Mordhau) Two_Handed_Sword 1 sword_two_handed_b 0 2286984729001987 9223635924435337456 1000 156692 3.500000 100 0 0 0 12 46080 85 0 109 0 286 40
0
0
itm_2h_mordhau_alt Two_Handed_Sword_(Melee) Two_Handed_Sword_(Melee) 1 sword_two_handed_b 0 3377699995254788 9227594166068842240 0 156692 3.500000 0 0 0 0 12 46080 90 0 109 0 532 537
0
0
Make sure the all the lines are correct, the game might crash otherwise.
You can change the names if you want, I just use them so they're easier to identify
5. Save and close
6. Open your actions.txt
7. Cntrl+f equip_bayonet
8. Copy and paste these over the equip and unequip musket lines:
equip_bayonet 0 184549446 1
0.300000 equip_musket 5 13 1 0 0.0 0.0 0.0 0.0
unequip_bayonet 0 184549446 1
0.300000 equip_musket 5 13 1 0 0.0 0.0 0.0 0.0
9. Save and close
10. If you pasted these at the bottom then open the item_kinds1 with morgh's and it'll tell you it detected some new items. Click ok then save changes, morgh's will update the item count for you.
11. Test in game
How does this work?
If you've played Napoleonic Wars or With Fire and Sword, when you use a non-bayonetted firearm as a melee weapon, the mesh flips over (via the offset_musket flag). This is just applying that same principle to melee weapons. The animation stuff is just there so there's an animation to show the character flips the weapon. It isn't necessary so you can take it off by removing the has_bayonet and cant_reload_while_moving flags.
1. Open your module_items.py file
2. Paste these somewhere in your items file, as long as they're between some items it'll be fine:
["sword_medieval_d_long", "Knightly Arming Sword", [("sword_medieval_d_long",0),("sword_medieval_d_long_scabbard", ixmesh_carry)], itp_type_one_handed_wpn|itp_no_blur|itp_merchandise|itp_next_item_as_melee|itp_primary, itc_longsword|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 425 , weight(2.5)|difficulty(0)|spd_rtng(9 | weapon_length(102)|swing_damage(29 , cut) | thrust_damage(31 , pierce),imodbits_sword ],
["sword_medieval_d_long_alt", "Knightly Arming Sword", [("sword_medieval_d_long",0),("sword_medieval_d_long_scabbard", ixmesh_carry)], itp_type_polearm|itp_no_blur|itp_two_handed|itp_unbalanced|itp_offset_musket|itp_cant_use_on_horseback|itp_primary, itc_staff|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 425 , weight(2.5)|difficulty(0)|spd_rtng(95) | weapon_length(102)|swing_damage(23 , blunt) | thrust_damage(25 , blunt),imodbits_sword ],
3. I've bolded the important flags, which are the flags necessary for this to work. Of course you can customize everything else to suit your needs, I just took this code from one of my mods.
4. You can also add the has_bayonet capability to have an animation between switching modes but it isn't necessary.
5. Save, exit, compile, and test.
2. Paste these somewhere in your items file, as long as they're between some items it'll be fine:
["sword_medieval_d_long", "Knightly Arming Sword", [("sword_medieval_d_long",0),("sword_medieval_d_long_scabbard", ixmesh_carry)], itp_type_one_handed_wpn|itp_no_blur|itp_merchandise|itp_next_item_as_melee|itp_primary, itc_longsword|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 425 , weight(2.5)|difficulty(0)|spd_rtng(9 | weapon_length(102)|swing_damage(29 , cut) | thrust_damage(31 , pierce),imodbits_sword ],
["sword_medieval_d_long_alt", "Knightly Arming Sword", [("sword_medieval_d_long",0),("sword_medieval_d_long_scabbard", ixmesh_carry)], itp_type_polearm|itp_no_blur|itp_two_handed|itp_unbalanced|itp_offset_musket|itp_cant_use_on_horseback|itp_primary, itc_staff|itcf_carry_sword_left_hip|itcf_show_holster_when_drawn, 425 , weight(2.5)|difficulty(0)|spd_rtng(95) | weapon_length(102)|swing_damage(23 , blunt) | thrust_damage(25 , blunt),imodbits_sword ],
3. I've bolded the important flags, which are the flags necessary for this to work. Of course you can customize everything else to suit your needs, I just took this code from one of my mods.
4. You can also add the has_bayonet capability to have an animation between switching modes but it isn't necessary.
5. Save, exit, compile, and test.
So natively thrusts are kinda crappy due to their slow speed. In Viking Conquest the animation speed was tweaked slightly so the attack ends up being that much faster, and much more effective.
1. Open your actions.txt
2. Cntrl+f release_thrust_onehanded
3. The code directly below it should start with 0.62, change this to 0.47
4. Cntrl+f release_thrust_onehanded_horseback
5. The code directly below it should start with 0.62, change this to 0.47
6. Cntrl+f release_thrust_onehanded_lance
7. The code directly below it should start with 0.62, change this to 0.47
8. Cntrl+f release_thrust_staff
9. The code directly below it should start with 0.60, change this to 0.45
10. Cntrl+f release_thrust_twohanded
11. The code directly below it should start with 0.61, change this to 0.46
12. Save and close
2. Cntrl+f release_thrust_onehanded
3. The code directly below it should start with 0.62, change this to 0.47
4. Cntrl+f release_thrust_onehanded_horseback
5. The code directly below it should start with 0.62, change this to 0.47
6. Cntrl+f release_thrust_onehanded_lance
7. The code directly below it should start with 0.62, change this to 0.47
8. Cntrl+f release_thrust_staff
9. The code directly below it should start with 0.60, change this to 0.45
10. Cntrl+f release_thrust_twohanded
11. The code directly below it should start with 0.61, change this to 0.46
12. Save and close
1. Open your module_animations.py file.
2. Cntrl+f release_thrust_onehanded
3. The code directly below it should start with 0.62, change this to 0.47
4. Cntrl+f release_thrust_onehanded_horseback
5. The code directly below it should start with 0.62, change this to 0.47
6. Cntrl+f release_thrust_onehanded_lance
7. The code directly below it should start with 0.62, change this to 0.47
8. Cntrl+f release_thrust_staff
9. The code directly below it should start with 0.60, change this to 0.45
10. Cntrl+f release_thrust_twohanded
11. The code directly below it should start with 0.61, change this to 0.46
12. Make sure you edited the actual code and not the commented out code!
13. Save and close
2. Cntrl+f release_thrust_onehanded
3. The code directly below it should start with 0.62, change this to 0.47
4. Cntrl+f release_thrust_onehanded_horseback
5. The code directly below it should start with 0.62, change this to 0.47
6. Cntrl+f release_thrust_onehanded_lance
7. The code directly below it should start with 0.62, change this to 0.47
8. Cntrl+f release_thrust_staff
9. The code directly below it should start with 0.60, change this to 0.45
10. Cntrl+f release_thrust_twohanded
11. The code directly below it should start with 0.61, change this to 0.46
12. Make sure you edited the actual code and not the commented out code!
13. Save and close
So a big problem with formation mods is that most of them tend to be incompatible with the WFAS formations since both of these use F4 as a new menu. What you can do is rebind the menu key to another key in order to have both on with no overlap issue.
1. Open your mission_templates.txt (make a backup too)
2. cntrl f mst_lead_charge and scroll down till you find a code block that looks like this:
What you're looking for is that vertical row of 23, 24, 25, 26, 27, 28, 65, and 66. You won't really see it as a row here but you will in Notepad++
3. Change the 26 to 51 and 66 to 67. This will rebind the formation menu (and ranks, they seem to be tied together) to F8 and the no division command to F9.
Why these keys?
Well F8 is never called upon even with WFAS commands on, and it's the only way I could get it to work well through text editing.
4. Depending on the mod, you'll most likely have to do this multiple times in the text file as some mods have these formations available in multiple scenes (like Viking Conquest) and others just have them available for battle scenes (like 1257). So just look for code blocks in that pattern and change accordingly.
5. Save and exit.
6. Open the quick_strings.txt (make a backup)
7. Search for one of the formation names (wedge, square, ranks etc)
8. Change the Complex formations/advanced formations string (the string that says what button to press to open the advanced formations menu) to F8 instead of F4 (make sure you do these in the second portion of the string, not the first portion)
9. Change both Ranks and No formation from F4 and F8 to F8 and F9 respectively
10. Cntrl x the Ranks line and erase the line break if it leaves one, then make a line break after square and before no formation and paste the whole ranks string there
11. Save and exit
12. Test it to make sure it all works properly
There's a few issues with this still, like on mods that let you memorize division placement F7 interferes with one of the WFAS commands, and when you select a troop division you get overlap from the WFAS weapon commands and the advanced formation menu, but since it's rebound it's only an aesthetic issue.
2. cntrl f mst_lead_charge and scroll down till you find a code block that looks like this:
0.000000 0.000000 0.000000 2 73 1 23 2147484654 0 20 2367 1 144115188075857087 4 0 2147483679 2 144115188075857081 23 2147483679 2 144115188075857081 24 2147483679 2 144115188075857081 25 2133 2 144115188075857081 23 2133 2 144115188075857084 0 2133 2 144115188075857082 0 5 0 31 2 144115188075857081 23 2133 2 144115188075857082 1 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 5 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 3 0
0.000000 0.000000 0.000000 2 73 1 24 2147484654 0 20 4 0 2147483679 2 144115188075857081 23 2147483679 2 144115188075857081 24 2147483679 2 144115188075857081 25 2133 2 144115188075857081 24 2133 2 144115188075857084 0 900 1 1513209474796486700 5 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 1 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 6 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 3 0
0.000000 0.000000 0.000000 2 73 1 25 2147484654 0 19 4 0 2147483679 2 144115188075857081 23 2147483679 2 144115188075857081 24 2147483679 2 144115188075857081 25 2133 2 144115188075857081 25 2133 2 144115188075857084 0 5 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 2 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 8 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 3 0
0.000000 0.000000 0.000000 2 73 1 26 2147484654 0 34 4 0 31 2 144115188075857081 0 31 2 144115188075857100 0 2133 2 144115188075857081 26 900 1 1513209474796486700 5 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 11 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 7 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 2 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 73 1 27 2147484654 0 25 4 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 14 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 3 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 73 1 28 2147484654 0 22 4 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 4 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 4 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 71 1 65 2147484654 0 51 4 0 31 2 144115188075857081 24 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 194 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 2120 3 1224979098644774913 200 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 2120 3 1224979098644774913 203 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 2120 3 1224979098644774913 209 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 1710 2 1 144115188075857085 4 0 1 4 936748722493063769 38 144115188075857086 9 2147483679 2 72057594037927936 0 1 3 936748722493063761 1 38 3 0 1794 3 34 144115188075857086 1224979098644774912 717 3 39 1 34 726 2 1224979098644774914 39 2120 3 1224979098644774913 218 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 727 2 1224979098644774914 39 2120 3 1224979098644774913 227 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 2120 3 1224979098644774913 185 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 1 3 936748722493063759 1 1224979098644774914 2120 3 72057594037927936 1224979098644774912 1 1106 1 1585267068834414968 3 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 5 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 71 1 66 2147484654 0 21 4 0 31 2 144115188075857081 24 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 218 1224979098644774912 502 3 432345564227567629 1224979098644774913 0 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 185 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 1 3 936748722493063759 1 1224979098644774914 2120 3 72057594037927936 1224979098644774912 1 1106 1 1585267068834414969 3 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 2 936748722493063760 2 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 73 1 24 2147484654 0 20 4 0 2147483679 2 144115188075857081 23 2147483679 2 144115188075857081 24 2147483679 2 144115188075857081 25 2133 2 144115188075857081 24 2133 2 144115188075857084 0 900 1 1513209474796486700 5 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 1 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 6 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 3 0
0.000000 0.000000 0.000000 2 73 1 25 2147484654 0 19 4 0 2147483679 2 144115188075857081 23 2147483679 2 144115188075857081 24 2147483679 2 144115188075857081 25 2133 2 144115188075857081 25 2133 2 144115188075857084 0 5 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 2 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 8 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 3 0
0.000000 0.000000 0.000000 2 73 1 26 2147484654 0 34 4 0 31 2 144115188075857081 0 31 2 144115188075857100 0 2133 2 144115188075857081 26 900 1 1513209474796486700 5 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 11 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 7 5 0 31 2 144115188075857081 25 2133 2 144115188075857081 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 2 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 73 1 27 2147484654 0 25 4 0 31 2 144115188075857081 23 2133 2 144115188075857081 0 1 2 936748722493063760 14 5 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 3 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 73 1 28 2147484654 0 22 4 0 31 2 144115188075857081 24 2133 2 144115188075857081 0 902 1 0 1 2 936748722493063760 4 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 4 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 71 1 65 2147484654 0 51 4 0 31 2 144115188075857081 24 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 194 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 2120 3 1224979098644774913 200 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 2120 3 1224979098644774913 203 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 2120 3 1224979098644774913 209 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 1710 2 1 144115188075857085 4 0 1 4 936748722493063769 38 144115188075857086 9 2147483679 2 72057594037927936 0 1 3 936748722493063761 1 38 3 0 1794 3 34 144115188075857086 1224979098644774912 717 3 39 1 34 726 2 1224979098644774914 39 2120 3 1224979098644774913 218 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 727 2 1224979098644774914 39 2120 3 1224979098644774913 227 1224979098644774912 502 3 432345564227567629 1224979098644774913 1224979098644774914 2120 3 1224979098644774913 185 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 1 3 936748722493063759 1 1224979098644774914 2120 3 72057594037927936 1224979098644774912 1 1106 1 1585267068834414968 3 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 1 936748722493063739 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 293 1224979098644774912 509 3 144115188075857086 1224979098644774913 -1 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 221 1224979098644774912 509 3 144115188075857086 1224979098644774913 1 1 4 936748722493063758 1224979098644774912 5 1 3 0 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
0.000000 0.000000 0.000000 2 71 1 66 2147484654 0 21 4 0 31 2 144115188075857081 24 6 3 1224979098644774912 0 9 1775 2 144115188075857086 1224979098644774912 2120 3 1224979098644774913 218 1224979098644774912 502 3 432345564227567629 1224979098644774913 0 2120 3 1224979098644774913 14 1224979098644774912 569 3 144115188075857086 1224979098644774913 1 2120 3 1224979098644774913 185 1224979098644774912 529 3 1224979098644774914 144115188075857086 1224979098644774913 1 3 936748722493063759 1 1224979098644774914 2120 3 72057594037927936 1224979098644774912 1 1106 1 1585267068834414969 3 0 5 0 31 2 144115188075857081 26 2133 2 144115188075857081 0 1 2 936748722493063760 2 31 2 144115188075857084 1 900 1 1513209474796486700 3 0
3. Change the 26 to 51 and 66 to 67. This will rebind the formation menu (and ranks, they seem to be tied together) to F8 and the no division command to F9.
Why these keys?
Well F8 is never called upon even with WFAS commands on, and it's the only way I could get it to work well through text editing.
4. Depending on the mod, you'll most likely have to do this multiple times in the text file as some mods have these formations available in multiple scenes (like Viking Conquest) and others just have them available for battle scenes (like 1257). So just look for code blocks in that pattern and change accordingly.
5. Save and exit.
6. Open the quick_strings.txt (make a backup)
7. Search for one of the formation names (wedge, square, ranks etc)
8. Change the Complex formations/advanced formations string (the string that says what button to press to open the advanced formations menu) to F8 instead of F4 (make sure you do these in the second portion of the string, not the first portion)
9. Change both Ranks and No formation from F4 and F8 to F8 and F9 respectively
10. Cntrl x the Ranks line and erase the line break if it leaves one, then make a line break after square and before no formation and paste the whole ranks string there
11. Save and exit
12. Test it to make sure it all works properly
There's a few issues with this still, like on mods that let you memorize division placement F7 interferes with one of the WFAS commands, and when you select a troop division you get overlap from the WFAS weapon commands and the advanced formation menu, but since it's rebound it's only an aesthetic issue.
If anybody has any questions or needs help, post or PM me.