<plugin>
 <tag>weap</tag>
 <struct>
  <name>Main</name>
  <size>0</size>
  <value>
   <type>reflexive</type>
   <offset>0x4F0</offset>
   <name>Clip</name>
  </value>
  <value>
   <type>reflexive</type>
   <offset>0x4FC</offset>
   <name>Projectile</name>
  </value>
  <value>
   <type>short</type>
   <offset>0x3DA</offset>
   <name>Zoom Levels</name>
   <info>Number of zoom settings</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x3DC</offset>
   <name>Minimum Zoom</name>
   <info>Lowest Zoom Setting</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x3E0</offset>
   <name>Maximum Zoom</name>
   <info>Highest Zoom Setting</info>
  </value>
 </struct>
 <struct>
  <name>Clip</name>
  <size>112</size>
  <value>
   <type>short</type>
   <offset>0x006</offset>
   <name>Starting Ammo</name>
   <info>Ammo the weapon will start with</info>
  </value>
  <value>
   <type>short</type>
   <offset>0x008</offset>
   <name>Maximum Ammo</name>
   <info>Maximum ammo the weapon can hold</info>
  </value>
  <value>
   <type>short</type>
   <offset>0x00A</offset>
   <name>Clip Size</name>
   <info>Amount of ammo in each clip</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x014</offset>
   <name>Reload Time</name>
   <info>Time taken to reload a clip</info>
  </value>
  <value>
   <type>short</type>
   <offset>0x018</offset>
   <name>Shots Reloaded</name>
   <info>Ammo added with each reload (should equal clip size)</info>
  </value>
 </struct>
 <struct>
  <name>Projectile</name>
  <size>276</size>
  <value>
   <type>bitmask32</type>
   <offset>0x00</offset>
   <name>Flags</name>
   <bitmask>
    <bit>26</bit>
    <name>Drop Trigger Lock</name>
    <info>Weapon will continue firing when dropped</info>
   </bitmask>
   <bitmask>
    <bit>28</bit>
    <name>Trigger Lock</name>
    <info>Trigger is pressed once to start firing, and pressed again to stop</info>
   </bitmask>
   <bitmask>
    <bit>29</bit>
    <name>Single Fire</name>
    <info>Trigger needs to be pressed again for each shot</info>
   </bitmask>
  </value>
  <value>
   <type>float</type>
   <offset>0x04</offset>
   <name>Minimum ROF</name>
   <info>Minimum projectiles per second fired</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x08</offset>
   <name>Maximum ROF</name>
   <info>Maximum projectiles per second fired</info>
  </value>
  <value>
   <type>short</type>
   <offset>0x22</offset>
   <name>Ammo per Shot</name>
   <info>Ammo lost with each shot</info>
  </value>
  <value>
   <type>short</type>
   <offset>0x26</offset>
   <name>Tracers</name>
   <info>Projectiles fired between each tracer</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x48</offset>
   <name>Charge Time</name>
   <info>Time required to achieve full charge</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x48</offset>
   <name>Overload time</name>
   <info>If charge is held this long, weapon will overload</info>
  </value>
  <value>
   <type>short</type>
   <offset>0x6E</offset>
   <name>Projectiles Fired</name>
   <info>Number of projectiles launched with each shot</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x7C</offset>
   <name>Minimum Spread</name>
   <info>Minimum distance from the center projectiles will travel</info>
  </value>
  <value>
   <type>float</type>
   <offset>0x80</offset>
   <name>Maximum Spread</name>
   <info>Maximum distance from the center projectiles will travel</info>
  </value>
  <value>
   <type>reference</type>
   <offset>0x94</offset>
   <name>Projectile</name>
   <info>Projectile fired by this weapon</info>
  </value>
 </struct>
</plugin>