# Weapon Customization

## **Getting Started**

* Open your Weapon Blueprint
* Click on **Class Defaults**
* All settings will appear in the **Details Panel**

> **Only modify values under the “Customizable” categories**\
> **(these are designed to be safe and user-friendly)**

<div align="left"><figure><img src="/files/l9esIAMRN3lhnSrZm2Mx" alt="" width="209"><figcaption></figcaption></figure></div>

***

## **1. Trigger Button – Customizable**

* **Min Rotation** → Trigger idle rotation
* **Max Rotation** → Trigger pressed rotation
* **Trigger Press Anim Seq** → Animation when pressed

<figure><img src="/files/6GDQC84hoj2zGk9rkukD" alt=""><figcaption></figcaption></figure>

***

## **2. SFX – Customizable**

Assign all weapon sounds (use SoundCue assets.You can use your own sound effects.

* Slide Cocked
* Dry Fire
* Shot
* Slide Release
* Empty Trigger
* Silencer Shot
* Slide Release Cue

<figure><img src="/files/nuZq0nqnrytavhVoVUUC" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/V20hm5xG4YIAldTH5QnD" alt=""><figcaption></figcaption></figure>

***

## **3. Handle / Slider – Customizable**

Controls reload feel and slider behavior.

* **Min / Max Distance** → Travel range
* **Offset to Play Release Sound** → Pull distance to trigger release sound
* **Distance to Get Bullet** → Pull distance to chamber round
* **Smoke Activation Distance** → Distance to trigger smoke
* **Snap Speed Multiplier** → Return speed
* **Inverse Movement** → Fix reversed motion
* **Slider Move** → Enable if weapon has slider
* **Slider Min / Max Distance** → Slider limits
* **Play Smoke on Slide Open** → Smoke after opening
* **Force Return Handle / Slider on Release** → When released, the Handle / Slider automatically returns to the **Min** position.
* **Release Handle / Slider on Hit** → When the Handle / Slider is hit, it instantly moves to the **Min** position. ( *Applicable only if **Force Return Handle / Slider on Release** is true )*

<div align="left"><figure><img src="/files/jMvzNCknEWAroOtyedny" alt=""><figcaption></figcaption></figure></div>

### **Interactive Behavior (Important Flow)**

*⚠️ Slider Backward Once Mag is Empty* → *Handle Lock Once Mag is Empty* →**Charging Handle Locked Distance ------***These three are linked toghther. Below is detailed Explaination.*

Instead of memorizing, think of it as a **3-step system**:

{% stepper %}
{% step %}

#### **Last Bullet Fired**

Enable → *Move Slider Backward Once Mag is Empty*\
→ Slider locks back automatically
{% endstep %}

{% step %}

#### **Lock Behavior**

Enable → *Handle Lock Once Mag is Empty*\
→ Prevents manual movement
{% endstep %}

{% step %}

#### **Release Action**

Press **X / A**\
→ Slider snaps forward\
→ New bullet chambered
{% endstep %}

{% step %}

#### **Fine Tune**

**Charging Handle Locked Distance** → small movement while locked
{% endstep %}
{% endstepper %}

***

## **4. Weapon Type – Customizable**

* **Weapon Type** → Select weapon category

<div align="left"><figure><img src="/files/cC5yFUHTMH5lasjdYHt4" alt=""><figcaption></figcaption></figure></div>

***

## **5. Magazine – Customizable**

* **Attachable Magazine** → Assign magazine Blueprint ( We will setup that later 😉)

<div align="left"><figure><img src="/files/EqErDiHBcKMr3CvPqJAq" alt=""><figcaption></figcaption></figure></div>

***

## **6. Sockets – Customizable**

* **Magazine Socket**
* **Silencer Socket**
* **Ejector Socket Name**

We will setup Sockets in Next Section. For now keep name as given image.)

<div align="left"><figure><img src="/files/fwLLAzAKEaL3wSAEgZkZ" alt=""><figcaption></figcaption></figure></div>

***

## **7. VFX – Customizable**

* **Bullet Projectile** → (e.g. BP\_ImpactProjectile)
* **Slide Round Ejection VFX**
* **Bullet Casing Ejection VFX**
* **Ejector Smoke VFX**
* **Slide Open Smoke VFX**

We will setup **NS\_CasingBulletEjectionVFX**  & **SlideRoundEjectionVFX** in upcoming section,\
\
**Stay Hard , Stay Focused 💪.**

<figure><img src="/files/W73fcVP9gAH8dsYEEYCm" alt=""><figcaption></figcaption></figure>

***

## **8. Haptics – Customizable**

* Assign controller haptic feedback

<figure><img src="/files/51WZNNSx5PLCnsurYK48" alt=""><figcaption></figcaption></figure>

***

## **9. Fire Mode – Customizable**

* **Active Fire Mode** → Default mode
* **Available Fire Modes** → Add supported modes

<div align="left"><figure><img src="/files/nfuFcDRDXpNi7ExNnifC" alt=""><figcaption></figcaption></figure></div>

#### **Selector Rotation**

* Safe / Single / Semi / Burst / Full Auto

<figure><img src="/files/JkMKcKolCZaCOPKG63jK" alt=""><figcaption></figcaption></figure>

#### **Timing**

* **Auto Fire Rate** → 8–12 recommended
* **Burst Count** → Bullet to fire on burst &#x20;
* **Burst Rate** → 5–8 recommended
* **Burst Cooldown**

<div align="left"><figure><img src="/files/wh15YbKYas17Ajr8prj3" alt=""><figcaption></figcaption></figure></div>

***

## **10. Recoil & Damage – Customizable**

* **Single Grip Distance / Rotation**
* **Dual Grip Distance / Rotation** *(rotation may vary – WIP)*

<div align="left"><figure><img src="/files/o0QXdTrWHo9pE8fdiWmU" alt=""><figcaption></figcaption></figure></div>

***

## **11. Shotgun – Customizable (Shotgun Only)**

#### **Shell Loading**

* **Max Shell Capacity** → Total shells the shotgun can hold
* **Shell Insertion Speed** → How fast shells are inserted
* **Load Threshold Distance** → Distance required to register shell insert
* **Shell Socket Name** → Socket where shells attach internally ( We will setup Socket in next Section. For now keep name as below image )

<figure><img src="/files/HFlnaAM2DBw1Am1JDblW" alt=""><figcaption></figcaption></figure>

#### **Advanced Loading**

* **Direct Chamber Load** →\
  Enable to insert shell directly into chamber when open\
  \&#xNAN;*(fast reload / “John Wick” style)*

<div align="left"><figure><img src="/files/NeybuKRIM0c15ymCbUQM" alt=""><figcaption></figcaption></figure></div>

***

## **12. Firing Spread System**

Choose how pellets spread when firing:

### **Option A — Random Spread (Realistic)**

* **Random Fire Bullet Count** → Number of pellets per shot
* **Random Spread Max Angle** → Maximum spread range

→ Best for natural, unpredictable shotgun feel

<figure><img src="/files/i5STSALZVIDFas2EAZph" alt=""><figcaption></figcaption></figure>

### **Option B — Fixed Spread (Controlled)**

* Enable **Fixed Spread**
* Add values in **Fixed Spread Array** (Rotation values per pellet)

→ Best for consistent patterns\
→ Keep values small (**0 – 5**) for clean results

<figure><img src="/files/7w6d8KbEOU1fyVPmr5Rd" alt=""><figcaption></figcaption></figure>

### **Pump / Slider Behavior**

* **Use Secondary Grip as Slider** →\
  Enables pump-action using front grip (common in shotguns)

→ If enabled:

* No need for **SlideGrabCollision**
* Reload is driven by **Secondary Grip movement**

<div align="left"><figure><img src="/files/SEnST8QN7M8xjcsHt4z1" alt=""><figcaption></figcaption></figure></div>

***

## **13. Silencer – Customizable**

* **Attachable Silencer** → Assign silencer Blueprint  ( We will setup that later 😉)
* **Attachment Speed** → Attachment Speed

<figure><img src="/files/6NICKz0kEKI4GCdS8ei5" alt=""><figcaption></figcaption></figure>

***

## **14. Scope – Customizable**

* **Attachable Scope** → Assign Scope Blueprints  ( We will setup that later 😉)

<figure><img src="/files/KnwE5pVGYIzdNjq4ovMs" alt=""><figcaption></figcaption></figure>

***

## **16. Inventory – Customizable**

* **Rotation Inside Inventory** → Rotation when placed in inventory
* **Scale inside Inventory** →  Scale when placed in inventory

<figure><img src="/files/oWpc0Y7tbX4BWomg01o5" alt=""><figcaption></figcaption></figure>

***

## **17. Handle Rotation– Customizable**

* **Rotate Handle** → Enable this if the Handle should rotate while moving, such as a sniper bolt or SMG charging handle.
* **Start Rotation Offset / End Rotation Offset** → Defines the Handle movement range where rotation begins and ends. Values are based between the Handle’s **Min** and **Max** positions.
* **Start Rotation Angle / End Rotation Angle** → Defines the rotation angle applied at the **Start Rotation Offset** and **End Rotation** positions.

<div align="left"><figure><img src="/files/VnCDEgSe3csLyo4XfJ1W" alt=""><figcaption></figcaption></figure></div>

***

## **18. Additional – Customizable**

* **Extra Rotation on Ejection VFX** → Apply Required Offset to fix Rotation issues
* **Extra Rotation On Casing Ejection VFX** →  Apply Required Offset to fix Rotation issues

<figure><img src="/files/3XTgrpRtNriCLMjDHxwR" alt=""><figcaption></figcaption></figure>

***

## **16. Simulate – Customizable**

* **Simulate On Drop**
  * True → Physics enabled
  * False → Static

<div align="left"><figure><img src="/files/UCmkRCb10QgUrhknF8t6" alt=""><figcaption></figcaption></figure></div>

***

## **Result**

All weapon behavior is now fully modular and adjustable from one panel.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://voxel-vision.gitbook.io/advanced-vr-template/add-your-own-weapon/integrations-3.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
