Mount & Blade
Help us shape the future of the Vortex mod manager by taking our survey
0 of 0

File information

Last updated

Original upload

Created by

This username has already been taken

Uploaded by

theusernameisalready

Virus scan

Safe to use

About this mod

This resource pack contains Native shields modified to use the tableau system in order to display banners. These include the various heater/kite/Norman shields in older versions, and I have also taken the liberty of generating normal maps and re-enabling specular for existing shields. Also included is a bonus Pavise shield that wasn't used i

Permissions and credits
This resource pack contains Native shields modified to use the tableau system in order to display banners. These include the various heater/kite/Norman shields in older versions, and I have also taken the liberty of generating normal maps and re-enabling specular for existing shields. Also included is a bonus Pavise shield that wasn't used in Native.
I am well aware that the alpha channel isn't exactly the greatest, and neither is the positioning of the banner (it's functional). The material settings are guestimates based on Native items and could use some tweaking.

There are no text files, only source code to be used at your own discretion
To install, do the usual and then change load_resource = shields to load_mod_resource. Add in code and compile.
module_items

["shield_heater_c", "Leather Covered Heater Shield", [("shield_heater_c",0)], itp_merchandise|itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 277 , weight(2.75)|hit_points(310)|body_armor(12)|spd_rtng(80)|shield_width(30)|shield_height(51),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_heater_c", ":agent_no", ":troop_no")])]],
["shield_heater_d", "Heater Shield", [("shield_heater_d",0)], itp_merchandise|itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 477 , weight(3.25)|hit_points(510)|body_armor(14)|spd_rtng(80)|shield_width(31)|shield_height(52),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_heater_d", ":agent_no", ":troop_no")])]],

["shield_kite_g", "Kite Shield", [("shield_kite_g",0)], itp_merchandise|itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(36)|shield_height(72),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_kite_g", ":agent_no", ":troop_no")])]],
["shield_kite_h", "Battle Shield", [("shield_kite_h",0)], itp_merchandise|itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(35)|shield_height(75),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_kite_h", ":agent_no", ":troop_no")])]],
["shield_kite_i", "Banded Kite Shield", [("shield_kite_i",0)], itp_merchandise|itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(36)|shield_height(70),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_kite_i", ":agent_no", ":troop_no")])]],
["shield_kite_k", "Studded Kite Shield", [("shield_kite_k",0)], itp_merchandise|itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(36)|shield_height(70),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_kite_k", ":agent_no", ":troop_no")])]],

["norman_shield_1","Kite Shield", [("norman_shield_a",0)], itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(35)|shield_height(70),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_norman_1", ":agent_no", ":troop_no")])]],
["norman_shield_2","Kite Shield", [("norman_shield_b",0)], itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(35)|shield_height(70),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_norman_2", ":agent_no", ":troop_no")])]],
["norman_shield_3","Kite Shield", [("norman_shield_c",0)], itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(35)|shield_height(70),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_norman_3", ":agent_no", ":troop_no")])]],
["norman_shield_4","Kite Shield", [("norman_shield_d",0)], itp_type_shield|itp_wooden_parry, itcf_carry_kite_shield, 118 , weight(2.5)|hit_points(480)|body_armor(1)|spd_rtng(82)|shield_width(35)|shield_height(70),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_shield_norman_4", ":agent_no", ":troop_no")])]],

["practice_board_shield", "Practice Board Shield",[("tableau_shield_pavise" ,0)], itp_type_shield|itp_cant_use_on_horseback, itcf_carry_board_shield,
370 , weight(5)|hit_points(550)|body_armor(10)|spd_rtng(78)|shield_width(45)|shield_height(100),imodbits_shield,
[(ti_on_init_item, [(store_trigger_param_1, ":agent_no"),(store_trigger_param_2, ":troop_no"),(call_script, "script_shield_item_set_banner", "tableau_pavise_shield_3", ":agent_no", ":troop_no")])]],


module_tableau_meshes

("shield_heater_c", 0, "shields_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),
(set_fixed_point_multiplier, 100),
(init_position, pos1),
(position_set_x, pos1, 9),
(position_set_y, pos1, 111),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 40, 0),
(init_position, pos1),

(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_old", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),
]),

("shield_heater_d", 0, "shields_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),
(set_fixed_point_multiplier, 100),
(init_position, pos1),
(position_set_x, pos1, -41),
(position_set_y, pos1, 27),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 40, 0),
(init_position, pos1),

(position_set_z, pos1, 10),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_old", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),
]),

("shield_kite_g", 0, "shields_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),
(position_set_x, pos1, 42),
(position_set_y, pos1, 42),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 42, 0),
(init_position, pos1),
(position_set_z, pos1, 10),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_old", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),
]),


("shield_kite_h", 0, "shields_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),
(init_position, pos1),
(position_set_x, pos1, 6),
(position_set_y, pos1, 60),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 45, 0),
(init_position, pos1),
(position_set_z, pos1, 10),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_old", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),
]),


("shield_kite_i", 0, "shields_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),
(position_set_x, pos1, 70),
(position_set_y, pos1, -20),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 50, 0),
(init_position, pos1),
(position_set_z, pos1, 10),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_old", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),
]),

("shield_kite_k", 0, "shields_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),
(position_set_x, pos1, 78),
(position_set_y, pos1, -60),
(cur_tableau_add_mesh, ":banner_mesh", pos1, -50, 0),
(init_position, pos1),
(position_set_z, pos1, 10),

(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_old", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),

]),

("shield_norman_4", 0, "shields_b_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),

(position_set_x, pos1, -15),
(position_set_y, pos1, -65),
(cur_tableau_add_mesh, ":banner_mesh", pos1, -55, 0),
(init_position, pos1),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_norman", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),

]),

("shield_norman_3", 0, "shields_b_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),

(position_set_x, pos1, -60),
(position_set_y, pos1, -60),
(cur_tableau_add_mesh, ":banner_mesh", pos1, -60, 0),
(init_position, pos1),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_norman", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),

]),

("shield_norman_2", 0, "shields_b_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),

(position_set_x, pos1, -36),
(position_set_y, pos1, 100),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 50, 0),
(init_position, pos1),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_norman", pos1, 0, 0),

(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),

]),

("shield_norman_1", 0, "shields_b_old", 1024, 1024, 0, 0, 0, 0,
[
(store_script_param, ":banner_mesh", 1),

(set_fixed_point_multiplier, 100),

(init_position, pos1),
(position_set_x, pos1, -77),
(position_set_y, pos1, 111),
(cur_tableau_add_mesh, ":banner_mesh", pos1, 60, 0),
(init_position, pos1),
(cur_tableau_add_mesh, "mesh_tableau_mesh_shield_norman", pos1, 0, 0),
(cur_tableau_set_camera_parameters, 0, 200, 200, 0, 100000),

]),

Due to character length restrictions, I can't post changes to existing shields. Modify sample_shield_matte to whatever new material that was included in the BRF.

module_meshes

("tableau_mesh_shield_old",0, "tableau_mesh_shield_old", 0, 0, 0, 0, 0, 0, 5, 5, 5),
("tableau_mesh_shield_norman",0, "tableau_mesh_shield_bold", 0, 0, 0, 0, 0, 0, 5, 5, 5),
("tableau_mesh_shield_pavise_3", 0, "tableau_mesh_shield_pavise_3", 0, 0, 0, 0, 0, 0, 10, 10, 10),