# Blueprints

**Blueprints**

<figure><img src="https://867544918-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNqzVFz58t0jKjSlq4LTZ%2Fuploads%2FsNwAOCYqauAkamw5Z6Ea%2FEHCv2Docs_CoreBlueprints.png?alt=media&#x26;token=e1cbe2ec-3e3c-416b-ab90-65f62a6f9c09" alt=""><figcaption><p>Core Blueprints</p></figcaption></figure>

These five blueprints make up the core:

* **BP\_HitscanAbstraction**
  * If you want to see what "BPC\_Hitscan" expects from any owner, this is the main example blueprint actor.
  * Is used for efficient development.&#x20;

* **BPC\_Hitscan**
  * The Main Blueprint of the whole system.
  * Reusable Blueprint Component that can be attached to any Blueprint Actor.
  * Used in BP\_ExampleWeapon, BP\_Drone and BP\_Turret and BP\_Turret\_DoubleBarrel.

* **BPI\_Hitscan**
  * The Interface any actor has to implement in order for BPC\_Hitscan to function properly.
    * Any Actor decides on his own how it realizes provided functions.
  * Main Communication setup between owner and component.

* **DT\_Hitscan**

  * Used in 'ApplyPointDamage' inside owning actors.

  <figure><img src="https://867544918-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNqzVFz58t0jKjSlq4LTZ%2Fuploads%2Fp3R88sDb5is7hofzGv5Z%2Fimage.png?alt=media&#x26;token=366dc96e-a0de-4054-9c94-f74b487c2430" alt=""><figcaption><p>Damage Type Usage</p></figcaption></figure>

  * Main reason was to enable you to have different Damage Impulses for each weapon.![](https://867544918-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNqzVFz58t0jKjSlq4LTZ%2Fuploads%2FG8uCIMNFakGQaZPyIMYk%2Fimage.png?alt=media\&token=42b190ef-246f-415e-9bda-63a5b3c4cb36)

* **PDA\_HitscanDefinition**
  * Data Asset that stores configuration variables. Its main goal is to let you set up hitscans differently for each weapon.
  * For example DA\_Hitscan\_Pistol, DA\_Hitscan\_Shotgun, DA\_Hitscan\_Turret etc.&#x20;
