• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Fixed Custom Quest Musket

SO is the sound working for everyone? Should we do more on this or can we say its fixed?
The only reason the sound wasn't working is because one of the guns had its sound set for "" (aka. nothing).
But that is fixed now.

Has anyone been able to get the Long Rifle with Telescope yet without using console? And does its functionality work properly as per Beta 3.4 RC 1?
@Jack Rackham added several new versions and I adapted his and @Levis' code a fair bit to make it both work together. I think.
Would be good if that were to be checked on, though.

Additionally, we'll need to find out if it works properly in @Bartomeu o Portugues' quest now.
 
I did found the book and gun in the crypt. Haven't checked the telescope yet. Will do that later.
 
Had to use cheat to get the holy cross, found the book without cheat. Are the cross added to the game now,
and where to find it?
 
Had to use cheat to get the holy cross, found the book without cheat. Are the cross added to the game now,
and where to find it?
The code has been changed to look for the regular +1 Luck ones.
If you go into the Maltese Knight Abbey from the main church entrance, you'll loot one from every corpse.
 
A question about the telescope. It has no model now. Do you need one when when placing it?
If so just let me know and I'll fix one.
 
A question about the telescope. It has no model now. Do you need one when when placing it?
If so just let me know and I'll fix one.
You mean to allow picking it up? It does actually work, you just don't see it.
In fact, I didn't see the actual Long Rifle either and that one does have a model.

You are probably more knowledgeable on placing visible random items than I am.
It would be nice if you could indeed see them lying on the ground. :yes
 
It would be nice if you could indeed see them lying on the ground. :yes
If that don't work we have to make something else: looting an enemy or placing the items in a chest.

Where in that Abbey are they placed. I can take a look.
 
Where in that Abbey are they placed. I can take a look.
Search for "LongRifle" in PROGRAM\Locations\ccclocations.c .
A Quest Reload to Location should send you straight there. I wouldn't mind that being improved on a bit further. :cheeky
 
This is technically "Solved", but I'll leave it as "Fix in Progress" because Jack Rackham may still want to adjust the scene where you find the Long Rifle. :doff
 
@Levis, what is the LAi_SetFightMode false line here for again?
Code:
  //Levis -->
   // Only do this if PLAYER shoots using shotgun mode and only if there are no bullets left
   if(IsMainCharacter(attack) && globalSGMode && 1 > LAi_GetCharacterChargeCur(attack))
   {
     int GetSwordReady = 2;
     string weaponID = GetCharacterEquipByGroup(attack,GUN_ITEM_TYPE);
     if(HasSubStr(weaponID, "LongRifle") && weaponID != "LongRifle_BT")   weaponID = "LongRifle"; // Exception to regular Long Rifle case
     switch(weaponID)
     {
       case "LongRifle_BT": GetSwordReady = -1; break;   // Quest Rifle with Telescope can reload in 1 second and uses no ammo
       case "pistol10"  : GetSwordReady =  0; break;   // Pump Shotgun  can reload in 1 second
       case "LongRifle"  : GetSwordReady =  1; break;   // Regular Long Rifles should not get your blade out
     }
     if(GetSwordReady == 0)
     {
       if(ENABLE_AMMOMOD)                               // Check if any ammo left
       {
         if(!CheckCharacterItem(attack, "gunpowder"))   GetSwordReady = 2;
         if(!CheckCharacterItem(attack, "pistolgrapes"))   GetSwordReady = 2;
       }
     }
     if(GetSwordReady >  0)   globalSGMode = false;           // Drop from shotgun mode
     if(GetSwordReady >  1)
     {
       LAi_QuestDelay("get_sword_ready", 1.0);   // Get your sword again
     }
     else
     {
       LAi_SetFightMode(attack, false);
     }
   }
   //Levis <--
I think it should be removed like this:
Code:
  //Levis -->
   // Only do this if PLAYER shoots using shotgun mode and only if there are no bullets left
   if(IsMainCharacter(attack) && globalSGMode && 1 > LAi_GetCharacterChargeCur(attack))
   {
     int GetSwordReady = 2;
     string weaponID = GetCharacterEquipByGroup(attack,GUN_ITEM_TYPE);
     if(HasSubStr(weaponID, "LongRifle") && weaponID != "LongRifle_BT")   weaponID = "LongRifle"; // Exception to regular Long Rifle case
     switch(weaponID)
     {
       case "LongRifle_BT": GetSwordReady = -1; break;   // Quest Rifle with Telescope can reload in 1 second and uses no ammo
       case "pistol10"  : GetSwordReady =  0; break;   // Pump Shotgun  can reload in 1 second
       case "LongRifle"  : GetSwordReady =  1; break;   // Regular Long Rifles should not get your blade out
     }
     if(GetSwordReady == 0)
     {
       if(ENABLE_AMMOMOD)                               // Check if any ammo left
       {
         if(!CheckCharacterItem(attack, "gunpowder"))   GetSwordReady = 2;
         if(!CheckCharacterItem(attack, "pistolgrapes"))   GetSwordReady = 2;
       }
     }
     if(GetSwordReady >  0)   globalSGMode = false;           // Drop from shotgun mode
     if(GetSwordReady >  1)
     {
       LAi_QuestDelay("get_sword_ready", 1.0);   // Get your sword again
     }
     else
     {
       LAi_SetFightMode(attack, false);
     }
   }
   //Levis <--
I think it should be removed altogether.
 
Like how?
I dont think there has to be any LAi_SetFightMode there. they should be in the quest entrys (which should be set to event if we want to do it nice)
 
This section should be deleted:
Code:
  else
  {
  LAi_SetFightMode(attack, false);
  }
Otherwise for the "LongRifle_BT" you have to wait for fightmode to be disabled after every shot, which makes it a bit sluggish.

The ENABLE_AMMOMOD section is only for the Pump Shotgun and has not been coded for flexibility.
Ideally it should take into account the shot type of the gun, how many shots it needs to be loaded and how much ammo you have left.
 
Well the fightmode has to be set to false when equiping the rifle. And when unequiping it has to be set to true, that way it works best.
I think it should work, just check if the fightmode is actually set to disable when equiping this one.
 
It seems to be OK. When you draw your sword, you still go onto fightmode but also swap into Shotgun Mode straight away.
Then when you exit fightmode, you also drop out of shotgun mode. You basically can not fight with your sword while you have the "LongRifle_BT" equipped.
 
the fightmode has to be disabled when going to shotgun so it can be eneabled when you get out. when it stays enabled it wont work...
 
What won't work? I tested earlier today and didn't notice any troubles. What am I missing?
Only weird thing is that you may see a transparent sword through your smoke. :facepalm
 
that and try to fight after it. you have the sword in your hand but it wont do anything untill you sheeted it and drawn it again. Or my other stuff must have fixed that.
The reason those things are called in a quest things with a small delay is cause the game needed a small delay for it to actually work.
 
The idea with the special quest "LongRifle_BT" is that you only ever use that to shoot. You don't fence with it.
Your sword does sheeth when you put the gun away, so you don't end up with a fake sword waving in the air. :no
 
On second thought, better like this:
Code:
  //Levis -->
   // Only do this if PLAYER shoots using shotgun mode and only if there are no bullets left
   if(IsMainCharacter(attack) && globalSGMode && 1 > LAi_GetCharacterChargeCur(attack))
   {
     int GetSwordReady = 2;
     string weaponID = GetCharacterEquipByGroup(attack,GUN_ITEM_TYPE);
     if(HasSubStr(weaponID, "LongRifle") && weaponID != "LongRifle_BT")   weaponID = "LongRifle"; // Exception to regular Long Rifle case
     switch(weaponID)
     {
       case "LongRifle_BT": GetSwordReady = -1; break;   // Quest Rifle with Telescope can reload in 1 second and uses no ammo
       case "pistol10"  : GetSwordReady =  0; break;   // Pump Shotgun  can reload in 1 second
       case "LongRifle"  : GetSwordReady =  1; break;   // Regular Long Rifles should not get your blade out
     }
     if(GetSwordReady == 0)
     {
       if(ENABLE_AMMOMOD)                               // Check if any ammo left
       {
         if(!CheckCharacterItem(attack, "gunpowder"))   GetSwordReady = 2;
         if(!CheckCharacterItem(attack, "pistolgrapes"))   GetSwordReady = 2;
       }
     }
     if(GetSwordReady >  0)
     {
       globalSGMode = false;                             // Drop from shotgun mode
       if(GetSwordReady >  1)
       {
         LAi_QuestDelay("get_sword_ready", 1.0);                   // Get your sword again
       }
       else
       {
         LAi_SetFightMode(attack, false);
       }
     }
   }
   //Levis <--
 
Back
Top