OSP Musket Era 3D Art Flintlock Firearms

Users who are viewing this thread

The point of the BRF (Blender Resource File) is to neatly group all resources (meshes and their textures associated with materials). Simply use load_mod_resouce = flintlock_weapons and you should be done.
 
Code:
load_mod_resource = flintlock_weapons
is placed at the end of my module.ini file. The flintlock_weapons.brf file is in the mod's resource folder, yet still, the discussed firearms are not in the marketplaces. Odd. :???:
 
In that case there are no resource errors. Vendors do not stock all items by default - open up module_triggers and update the weaponsmith's restocking code:
Code:
...
(troop_add_merchandise_with_faction,":cur_merchant", ":cur_faction",itp_type_bolts,2),
#add these three lines
(troop_add_merchandise_with_faction,":cur_merchant", ":cur_faction",itp_type_musket,1),
(troop_add_merchandise_with_faction,":cur_merchant", ":cur_faction",itp_type_pistol,1),
(troop_add_merchandise_with_faction,":cur_merchant", ":cur_faction",itp_type_bullets,1),
(troop_ensure_inventory_space,":cur_merchant",merchant_inventory_space),
...
 
Someone help! I'm new to modding, and I'm trying to implement this OSP into my mod.

My Module System is up-to-date and working. The export_dir is set to my TESTMOD folder in my Steam's Mount&Blade Warband Modules folder. I've deleted conversation.txt and ran build_module.bat, and it finishes without error.

The flintlock_weapons.brf is placed in TESTMOD's Resource folder, and the textures included in the download are all in TESTMOD's texture folder. I placed the line "load_mod_resource = flintlock_weapons" in module.ini, right before the "load_resource = materials_face_gen". wp_display_firearms is also set to 1 in module.ini. I even copied the item codes under RANGED in module_items.py. After doing so, I ran build_module.bat, and it applied my changes. But when I went to play the game (SP), I waited several in-game days and checked multiple shops -- still, I couldn't find these weapons.

I believe it's a problem with the item codes I pasted in module_items.py, so here's where I pasted the item codes...

Code:
#RANGED


#TODO:
["darts",         "Darts", [("dart_b",0),("dart_b_bag", ixmesh_carry)], itp_type_thrown |itp_merchandise|itp_primary ,itcf_throw_javelin|itcf_carry_quiver_right_vertical|itcf_show_holster_when_drawn, 
155 , weight(4)|difficulty(1)|spd_rtng(95) | shoot_speed(28) | thrust_damage(22 ,  pierce)|max_ammo(7)|weapon_length(32),imodbits_thrown ],
["war_darts",         "War Darts", [("dart_a",0),("dart_a_bag", ixmesh_carry)], itp_type_thrown |itp_merchandise|itp_primary ,itcf_throw_javelin|itcf_carry_quiver_back|itcf_show_holster_when_drawn, 
285 , weight(5)|difficulty(1)|spd_rtng(93) | shoot_speed(27) | thrust_damage(25 ,  pierce)|max_ammo(7)|weapon_length(45),imodbits_thrown ],

["javelin",         "Javelins", [("javelin",0),("javelins_quiver_new", ixmesh_carry)], itp_type_thrown |itp_merchandise|itp_primary|itp_next_item_as_melee ,itcf_throw_javelin|itcf_carry_quiver_back|itcf_show_holster_when_drawn, 
300, weight(4)|difficulty(1)|spd_rtng(91) | shoot_speed(25) | thrust_damage(34 ,  pierce)|max_ammo(5)|weapon_length(75),imodbits_thrown ],
["javelin_melee",         "Javelin", [("javelin",0)], itp_type_polearm|itp_primary|itp_wooden_parry , itc_staff, 
300, weight(1)|difficulty(0)|spd_rtng(95) |swing_damage(12, cut)| thrust_damage(14,  pierce)|weapon_length(75),imodbits_polearm ],

["throwing_spears",         "Throwing Spears", [("jarid_new_b",0),("jarid_new_b_bag", ixmesh_carry)], itp_type_thrown |itp_merchandise|itp_primary|itp_next_item_as_melee ,itcf_throw_javelin|itcf_carry_quiver_back|itcf_show_holster_when_drawn, 
525 , weight(3)|difficulty(2)|spd_rtng(87) | shoot_speed(22) | thrust_damage(44 ,  pierce)|max_ammo(4)|weapon_length(65),imodbits_thrown ],
["throwing_spear_melee",         "Throwing Spear", [("jarid_new_b",0),("javelins_quiver", ixmesh_carry)],itp_type_polearm|itp_primary|itp_wooden_parry , itc_staff, 
525 , weight(1)|difficulty(1)|spd_rtng(91) | swing_damage(18, cut) | thrust_damage(23 ,  pierce)|weapon_length(75),imodbits_thrown ],

["jarid",         "Jarids", [("jarid_new",0),("jarid_quiver", ixmesh_carry)], itp_type_thrown |itp_merchandise|itp_primary|itp_next_item_as_melee ,itcf_throw_javelin|itcf_carry_quiver_back|itcf_show_holster_when_drawn, 
560 , weight(2.75)|difficulty(2)|spd_rtng(89) | shoot_speed(24) | thrust_damage(45 ,  pierce)|max_ammo(4)|weapon_length(65),imodbits_thrown ],
["jarid_melee",         "Jarid", [("jarid_new",0),("jarid_quiver", ixmesh_carry)], itp_type_polearm|itp_primary|itp_wooden_parry , itc_staff,
560 , weight(1)|difficulty(2)|spd_rtng(93) | swing_damage(16, cut) | thrust_damage(20 ,  pierce)|weapon_length(65),imodbits_thrown ],

["flintlock_pistol_1", "Flintlock Pistol", [("flintlock_pistol_1",0)], itp_type_pistol |itp_merchandise|itp_primary ,itcf_shoot_pistol|itcf_reload_pistol, 230 , weight(1.5)|difficulty(0)|spd_rtng(55) | shoot_speed(160) | thrust_damage(100 ,pierce)|max_ammo(1)|accuracy(65),imodbits_none,
 [(ti_on_weapon_attack, [(play_sound,"snd_pistol_shot"),(position_move_x, pos1,27),(position_move_y, pos1,36),(particle_system_burst, "psys_pistol_smoke", pos1, 15)])]],

["flintlock_rifle", "Flintlock Rifle",[("flintlock_rifle_1",0)],itp_type_musket|itp_merchandise|itp_cant_reload_on_horseback|itp_primary|itp_next_item_as_melee|itp_two_handed, itcf_reload_musket|itcf_carry_spear|itcf_shoot_musket, 230 , weight(1.5)|abundance(90)|difficulty(0)|spd_rtng(38) | shoot_speed(160) | thrust_damage(160 ,pierce)|max_ammo(1)|accuracy(99),imodbits_none,
[(ti_on_weapon_attack, [(play_sound,"snd_pistol_shot"),(position_move_x, pos1,0),(position_move_y, pos1,139),(particle_system_burst, "psys_pistol_smoke", pos1, 15)])]],

["arquebus", "Arquebus",[("arquebus",0)],itp_type_musket|itp_merchandise|itp_cant_reload_on_horseback|itp_primary|itp_next_item_as_melee|itp_two_handed, itcf_reload_musket|itcf_carry_spear|itcf_shoot_musket, 230 , weight(1.5)|abundance(90)|difficulty(0)|spd_rtng(38) | shoot_speed(160) | thrust_damage(160 ,pierce)|max_ammo(1)|accuracy(99),imodbits_none,
[(ti_on_weapon_attack, [(play_sound,"snd_pistol_shot"),(position_move_x, pos1,0),(position_move_y, pos1,100),(particle_system_burst, "psys_pistol_smoke", pos1, 15)])]],
["blunderbus", "Blunderbus",[("blunderbus",0)],itp_type_musket|itp_merchandise|itp_cant_reload_on_horseback|itp_primary|itp_next_item_as_melee|itp_two_handed, itcf_reload_musket|itcf_carry_spear|itcf_shoot_musket, 230 , weight(1.5)|abundance(90)|difficulty(0)|spd_rtng(38) | shoot_speed(160) | thrust_damage(160 ,pierce)|max_ammo(1)|accuracy(99),imodbits_none,
[(ti_on_weapon_attack, [(play_sound,"snd_pistol_shot"),(position_move_x, pos1,0),(position_move_y, pos1,72),(particle_system_burst, "psys_pistol_smoke", pos1, 15)])]],
["matchlock_2", "Matchlock Rifle",[("matchlock_2",0)],itp_type_musket|itp_merchandise|itp_cant_reload_on_horseback|itp_primary|itp_next_item_as_melee|itp_two_handed, itcf_reload_musket|itcf_carry_spear|itcf_shoot_musket, 230 , weight(1.5)|abundance(90)|difficulty(0)|spd_rtng(38) | shoot_speed(160) | thrust_damage(160 ,pierce)|max_ammo(1)|accuracy(99),imodbits_none,
[(ti_on_weapon_attack, [(play_sound,"snd_pistol_shot"),(position_move_x, pos1,0),(position_move_y, pos1,112),(particle_system_burst, "psys_pistol_smoke", pos1, 15)])]],
["matchlock_1", "Matchlock Rifle",[("matchlock_1",0)],itp_type_musket|itp_merchandise|itp_cant_reload_on_horseback|itp_primary|itp_next_item_as_melee|itp_two_handed, itcf_reload_musket|itcf_carry_spear|itcf_shoot_musket, 230 , weight(1.5)|abundance(90)|difficulty(0)|spd_rtng(38) | shoot_speed(160) | thrust_damage(160 ,pierce)|max_ammo(1)|accuracy(99),imodbits_none,

Any informative reply to what I did wrong/why the items don't appear in-game would be appreciated. Thanks in advance.

 
if you are using wb 1.143, you should check script_refresh_center_weaponsmiths
if you are using wb 1.134, you should check module_triggers for the trigger that refreshes the weaponsmiths
you must add this in both:
Code:
(troop_add_merchandise_with_faction, ":cur_merchant", ":cur_faction", itp_type_pistol, 2),
(troop_add_merchandise_with_faction, ":cur_merchant", ":cur_faction", itp_type_musket, 2),
(troop_add_merchandise_with_faction, ":cur_merchant", ":cur_faction", itp_type_bullets, 2),
and change the 2 with the number of each you want.
 
Is there any way to do this (make the merchants stock firearms) without the module system?  Like by just editing a text file (I added more horse mods, for instance, by editing text files by hand)?  I've added guns myself, but they don't show up in stores despite being merchandise. 
As I understand it, the module system will over-write any text-file changes I've made to files (like the horse and item additions I added manually to the .txt)
Also I'm using 1.52 patch... I think the module system hasn't been updated for that yet. :wink:
 
troop_add_merchandise_with_faction = 1513 4
:cur_merchant = whatever number you had in script_refresh_center_weaponsmiths
:cur_faction = ditto
itp_type_pistol = 10, musket = 11, ammo = 12
:value = number of each type of merchandise you want
So basically copy three lines, change a few numbers, and increase the number of lines by 3.
 
yeah I figured it out... now I just have to get the pistol shot sound working. Or... er, I guess they have silencers. :wink:
 
I have used this OSP pack and also made the firearms usable (switching with "X" like the javelins) as meele weapons (clubs) when you are out of ammo or you doesn't have the time to reload. The single problem is that you can't reverse your musket to hit with the buttstock and you have to hit with the barrel instead. Big thanx to xenoargh for his help!
 
I'm pretty new to modding and there are a few things that just won't succeed.

When i try to open the pack in OpenBRF i get the models, but they aren't textured. OpenBRF can find the textures though but when i try to look at the textures there is nothing to be seen. Not sure if this is my fault or something went wrong downloading?

Also, the item codes are very different from the normal items codes i see. Should i manually change them or whats the best way to fix that?
 
Back
Top Bottom