• 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!

Not a Bug Get Arrows BY Being Shot

Grey Roger

Sea Dog
Staff member
Administrator
Storm Modder
You can get arrows for free just by letting a hostile Indian shoot at you for a while. xD
 
Last edited by a moderator:
You must do. I've got two officers each of which has 1 arrow in their inventory, and I didn't give it to them. In another game I gave a looted bow and some arrows to Two Dogs (of all my officers, he seemed the most appropriate to use it), and next time I got into a boarding action there were sounds that he was using them. Looting some dead enemy crew turned up some arrows. The crew weren't Indians and had no bows or arrows of their own. ;)
 
You must do. I've got two officers each of which has 1 arrow in their inventory, and I didn't give it to them. In another game I gave a looted bow and some arrows to Two Dogs (of all my officers, he seemed the most appropriate to use it), and next time I got into a boarding action there were sounds that he was using them. Looting some dead enemy crew turned up some arrows. The crew weren't Indians and had no bows or arrows of their own. ;)
Interesting.

@Jack Rackham, does that sound intentional?
 
The only thing I can think of is that the arrow is a blade and maybe is treated like that
by the game. A looted arrow without a bow is of course meaningless.
 
Definitely Auto Loot would give you an Arrow if you kill an enemy who has one equipped.
But according to @Grey Roger, enemy crew got arrows too but "Two Dogs" did not die, so it must be something different.
 
That's how I got most of my arrows - by looting the same Indians who "donated" their bows during the "Ardent" quest formerly known as "Inca Temple". Then I gave some arrows, plus a bow, to my Indian companion, who duly put them to good use, which is why several enemy crew ended up in possession of an arrow or two.

Conversely, in another game in which I haven't been anywhere near a temple occupied by Indians (because it's the "Assassin" storyline and the only temple you visit is occupied by the French), a couple of my officers have acquired an arrow each. These must have come from some Akellani Indians who occasionally show up in random night time jungle scenes because they can't have come from anywhere else.

I suspect the idea is that after you've shot an arrow into someone and then subsequently finished them off, you can pull your arrow back out of the body and use it on someone else, this being one of the intended advantages over firearms whose ammo is permanently used up. It also means you get to do what I did with my character in a paper-and-dice RPG ages ago - having been hit by an arrow, the character pulled it out and shot it back at its original owner. If he'd survived, we could have had a game of arrow tennis. Which is what I envisage happening when I'm shooting arrows at an Indian who is shooting arrows at me and neither of us is running out of ammo. xD
 
Relevant code seems to be in PROGRAM\Loc_ai\LAi_events.c:
Code:
             if(!CheckAttribute(weapon, "flaming") || weapon.flaming != 1)
             {
               if(!bAllies(enemy) && rand(100) > 50)
               {
                 ar = GetCharacterItem(enemy, "bladearrows");

                 if(IsEquipCharacterByItem(enemy, "quiver") && ar < 12)
                 {
                   TakeNItems(enemy,"bladearrows", 1);
                 }
                 else
                 {
                   if(ar < 3) TakeNItems(enemy,"bladearrows", 1);
                 }
               }
             }
And:
Code:
           if(!CheckAttribute(weapon, "flaming") || weapon.flaming != 1)
           {
             if(bAllies(enemy) && rand(100) > 50)
             {
               ar = GetCharacterItem(enemy, "bladearrows");

               if(IsEquipCharacterByItem(enemy, "quiver") && ar < 12)
               {
                 TakeNItems(enemy,"bladearrows", 1);
               }
               else
               {
                 if(ar < 3) TakeNItems(enemy,"bladearrows", 1);
               }
             }
           }
This is where the character being shot GETS an arrow for being shot.
Looks like this is intentional with a 50% chance of it occurring.

One thing I notice is that the first section has "!bAllies" while the second section has "bAllies" instead.

So at least this explains it. Hopefully @Jack Rackham can confirm his intention with these sections of code.
And should we indeed keep it as-is or tweak it a bit?
 
One thing I notice is that the first section has "!bAllies" while the second section has "bAllies" instead.
Yes, but the first block is for Mainchar + officers, the second for NPC:s.
 
Not quite sure but it looks like avoiding giving arrows if firing at someone in your own group.
 
Not quite sure but it looks like avoiding giving arrows if firing at someone in your own group.
What do you intend it to do?
Should NPCs who get fired on get arrows? And how about characters in the player group? What reason would there be for treating them differently?
 
Yes. So you can loot them later when you have killed.
So does there then need to be a difference between NPCs and player party? Might as well treat them all the same, no?

This does mean that @Grey Roger's observation remains: You can get arrows by being shot, but with only a 50% chance.
I think there is nothing necessarily wrong with that, as long as it is intentional.
 
So does there then need to be a difference between NPCs and player party? Might as well treat them all the same, no?
As I said I think the idea was NOT to give arrows to the own party. Else there's no difference in the code.

Yes it's intentional!
 
I thought Allies were the guys on my side only?
Yes, they are. So if you don't want the player and officers to get arrows BY being shot, then you have to exclude them with !bAllies .
That is what you were saying, right? Or am I still misunderstanding...? :unsure
 
I want any enemy to get (50% chance) arrows when being shot at. And I think that's how it works right now.
Officers and mainchar from NPC:s and NPC:s the other way around. So I don't see any problem here. :shrug
 
Back
Top