Download

Trying to create a new bow that takes existing ammo types

Hi all,

I am working on my first mod and am a little confused on something. I am working on creating a new bow, but I want it to be able to take the existing stone arrows as opposed to only taking a completely brand new type of arrow. The only way I can see to do this is to make a new version of the stone arrow (Blueprint’/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItemAmmo_ArrowStone.PrimalItemAmmo_ArrowStone’) that has the additional entries for the classes it can be dragged onto. I would then have two different stone arrows that could be created in my game. I also see that I could just outright replace the old stone arrow engram with this new one, but that doesn’t seem as clean. Is there anything built in here that I can take advantage of to make existing stone arrows work with my new bow?

Thanks a lot for any help on this!

Im not sure but did you try to create a child of the Stone arrow Engram?

Afaik this will use the original data of the stone Arrow and you can add your Bow to it.

I did start with a child of that engram and put it into my mod folder. Is this the right way to do it? How would the game know to use my child arrow engram? Does it automatically pull in changed fields from the child object? What I’ve done for now is replace the entry for stone arrow to my new one in the mod folder’s primalgamedata or whatever the file is called.

If you make your new bow and take every BP that you need to make it and copy them as a child you should be able to use the normal stone arrow without having to remake new ammo.

Yes, that works. I am having a slightly different problem now, however. I have made child classes for PrimalItem_WeaponBow and WeapBow (I want to modify the damage). I have set the weapon template in my child version of PrimalItem_WeaponBow to be the child version of WeapBow. This doesn’t seem to work though, because any modifications I make to my child WeapBow aren’t happening in-game. I looked at the stone arrow and it has these entries for ‘Ammo Support Drag Onto Weapon Item Weapon Templates’, and I think that the entry there of WeapBow is making it so my child version doesn’t get used. Any ideas on that? Hopefully this makes sense!

The Ammo Support Drag Onto Weapon Item Weapon Templates also has another option I forget the name right beside them, telling which item to craft/spawn and replace your weapon with as soon as you drag an ammo onto it.

So using in game ammo, and deciding to change how in game ammo works, are 2 completely different trains of thought. The ammo itself should actually tell your new custom bow, to revert to the stock standard Vanilla bow through their preferences. But the ADK also has the same ammo drag preferences inside the weapons as well, I would hazard a guess that it is simply an inheritance situation though. But as the ammo will tell your NEW bow it’s the OLD bow. Using the OLD ammo, is a self defeating cycle.

So because the ammo controls which item gets created when it gets dragged onto something, the only way I can make a new bow that does more damage is by making an entirely new stone arrow? This is actually what I’ve done, but it seemed like there should be a better way. I’m not entirely sure I understand what you mean by this comment: “But the ADK also has the same ammo drag preferences inside the weapons as well, I would hazard a guess that it is simply an inheritance situation though.” I’ve seen that the weapon has a template associated with it, but I haven’t seen any ammo drag preferences. Is this what you are talking about? Thanks!