Ares Armory - Adding Custom Weapons
Guide for creating and integrating custom weapons into Ares Armory
Tool: Anchor Point Calculator
Open the Anchor Point Calculator (web tool)
Upload each weapon part image (PNG, JPG, GIF)
Click Place Anchor Mode to drop anchors on every merge point
Toggle Set Merge Pair, then click matching anchors on different parts
Rearrange parts with Drag, use Bring to Front / Send to Back for layering
Click Calculate Anchor Info and download
myweapon-anchors.json
What this does: Defines exact pixel coordinates where weapon parts snap together during assembly.
Step 2: Build Your .js Configuration
Tool: Config Manager
Open the Config Manager (web tool)
Click Load Template → Empty Template
Paste your anchor JSON into the
parts: []sectionComplete the Workbench Data section:
Click Validate to check for errors
Click Export Configuration → save as
myweapon.js
Step 3: Deploy Client-Side Files
Copy your weapon config:
Register the weapon in the config loader:
Open
weaponGame/html/workbenchconf.jsAdd your weapon path to the
weaponConfigPathsarray:
Ensure your HTML loads the script (usually automatic if added to
weaponConfigPaths)
Step 4: Update Server Configuration
File: config.lua
Add Weapon Definition
Under Config.Weapons, add your weapon:
Add Materials (Parts) Definitions
Under Config.Materials, define each weapon part:
Add Items to Inventory System
Don't forget to add the weapon parts to your inventory system (see main installation guide for ox_inventory, QB-Core, or ESX examples).
Step 5: Generate Blueprint Images
Tool: Blueprint Converter
Open the Blueprint Converter (web tool)
Upload your part PNGs or paste your blueprint config
Download the generated blueprint-style PNGs
Place them in
weaponGame/html/assets/[yourweapon]/Ensure filenames match exactly what you specified in
workbenchData.parts[].image
Example structure:
Example Reference
For a complete working example, refer to the AK-47 implementation:
Client config:
weaponGame/html/guns/ak47.jsServer config:
config.lua→Config.Weapons['ak47']Materials:
config.lua→Config.Materials['ak47part1']through['ak47part4']Assets:
weaponGame/html/assets/ak47/
Testing Your Custom Weapon
Restart your server after making all configuration changes
Test the crafting table - your weapon should appear in the list (if you meet level requirements)
Verify parts appear in the crafting menu with correct costs
Test assembly - parts should snap together visually at your defined anchor points
Confirm XP awards are working correctly
Troubleshooting
Weapon doesn't appear
Check jsConfig matches between .js file and Config.Weapons
Parts don't snap together
Verify anchor coordinates in your .js config
Images not loading
Check file paths in workbenchData.parts[].image
Can't craft parts
Ensure items are added to your inventory system
Wrong weapon spawns
Verify model in Config.Weapons matches GTA weapon name
Important Notes
Internal IDs (
namein workbenchData) must be unique across all weaponsPart item names must match exactly between client
.jsand serverconfig.luaImage paths are relative to
weaponGame/html/Weapon models must be valid GTA V weapon spawn names
Anchor data must be precise for smooth part assembly visuals
Your custom weapon is now ready! It will appear in-game with full assembly mechanics, crafting requirements, and blueprint visuals.
Last updated
Was this helpful?

