Weapons - MeridiusIX/Modular-Encounters-Systems GitHub Wiki

The Weapon System profile in RivalAI is used to manage how/when weapons should be activated when engaging targets. You can add a Weapon System profile to your Behavior profile by using the [WeaponSystem:ProfileSubtypeIdHere] tag. Below is an example of how these profiles are setup:

<?xml version="1.0"?>
<Definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<EntityComponents>

<EntityComponent xsi:type="MyObjectBuilder_InventoryComponentDefinition">
      <Id>
        <TypeId>Inventory</TypeId>
        <SubtypeId>Example-ProfileSubtypeIdHere</SubtypeId>
      </Id>
      <Description>

        [RivalAI Weapons]

        [UseStaticGuns:true]
        [UseTurrets:true]

        [MaxStaticWeaponRange:5000]
        [WeaponMaxAngleFromTarget:6]
        [WeaponMaxBaseDistanceTarget:20]

        [UseBarrageFire:false]
        [MaxFireRateForBarrageWeapons:200]

        [UseAmmoReplenish:true]
        [AmmoReplenishClipAmount:15]
        [MaxAmmoReplenishments:10]

      </Description>
    </EntityComponent>

  </EntityComponents>
</Definitions>

The following tags can be used in your Weapon System Profiles:

Tag:                                UseStaticGuns
Tag Format: [UseStaticGuns:Value]
Description: This tag specifies if an NPC grid should fire Static Weapons when engaging targets. Only works on behaviors that can rotate towards their target.
Allowed Values: true
false
Multiple Tag Allowed: No
Tag:                                UseTurrets
Tag Format: [UseTurrets:Value]
Description: This tag specifies if an NPC grid should manage turret weapons using extra features in RivalAI. This tag does NOT diable turrets (use MES to do that)
Allowed Values: true
false
Multiple Tag Allowed: No
Tag:                                MaxStaticWeaponRange
Tag Format: [MaxStaticWeaponRange:Value]
Description: Specifies the maximum distance from a target before an NPC can fire Static Weapons.
Allowed Values: Any number higher than 0
-1 is No Limit
Multiple Tag Allowed: No
Tag:                                WeaponMaxAngleFromTarget
Tag Format: [WeaponMaxAngleFromTarget:Value]
Description: Specifies the maximum angle from a target before an NPC can fire Static Weapons.
Allowed Values: Any number higher than 0
Multiple Tag Allowed: No
Tag:                                WeaponMaxBaseDistanceTarget
Tag Format: [WeaponMaxBaseDistanceTarget:Value]
Description: Specifies the maximum distance the end of the current shot trajectory can be from the intended target. Example: Imagine 2 lines from the gun, one going to the target, and another going the same distance, but in the forward direction of the gun. The distance between the 2 end points is what is checked and regulated by this tag.
Allowed Values: Any number higher than 0
Multiple Tag Allowed: No
Tag:                                UseBarrageFire
Tag Format: [UseBarrageFire:Value]
Description: This tag specifies static weapons should be fired sequentially, instead of all at once.
Allowed Values: true
false
Multiple Tag Allowed: No
Tag:                                MaxFireRateForBarrageWeapons
Tag Format: [MaxFireRateForBarrageWeapons:Value]
Description: Specifies the max fire rate of a weapon to be considered usable for barrage fire. This is used to allow weapons that have a higher fire rate (eg Gatling Guns) to fire constantly instead of in a barrage sequence.
Allowed Values: Any number higher than 0
Multiple Tag Allowed: No
Tag:                                UseAmmoReplenish
Tag Format: [UseAmmoReplenish:Value]
Description: This tag specifies if weapons should automatically be kept loaded (ie Infinite Ammo).
Allowed Values: true
false
Multiple Tag Allowed: No
Tag:                                AmmoReplenishClipAmount
Tag Format: [AmmoReplenishClipAmount:Value]
Description: This tag specifies how many Ammo Magazine Clips should be added to a weapon block when Ammo Replenish happens.
Allowed Values: Any Integer Greater Than 0
Multiple Tag Allowed: No
Tag:                                MaxAmmoReplenishments
Tag Format: [MaxAmmoReplenishments:Value]
Description: This tag specifies how many times Ammo Replenishment will run on a weapon block.
Allowed Values: Any Integer Greater Than 0
Multiple Tag Allowed: No
⚠️ **GitHub.com Fallback** ⚠️