- Unreal Solo Game Developer
- Posts
- USGD #007 - Homing Projectiles Everywere!
USGD #007 - Homing Projectiles Everywere!
UNREAL SOLO GAME DEVELOPER
Read Time: 6 minutes
Projectiles without Projectile Movement Component?
For my project I created a custom projectiles plugin to be as versatile as possible.
It is always useful to debug display both the HITBOX radius as well as the PHYSICAL COLLISION radius.
That way it's easy to spot issues if things go wrong.
#UnrealEngine#gamedev#indiegamedev
— Quod Soler (@QuodSoler)
6:29 PM • Aug 1, 2023
These are not really projectiles, but modular “effects areas” that can do tons of things via composition.
This is the setup for the projectiles shown in the previous video:

How the modular system works
The system is composed of different modules ( Startup, Update, Destroy, Hit, Timeout…. ).
Modules are UObjects and those fit inside the module slots.
So in t his case, I use a Destroy module on the OnHit slot, so when a hit happens, the projectile is destroyed.
In the update I have both a Projectile and Homing module, so that is why the projectiles move and are homing towards the character.
As each module is an UObject, this can be extended easily and new modules can be created with their own properties. This is the current set of properties of the Projectile module:

The good thing of doing it like this is that the plugin can have it’s own base modules and then each project is able to implement it’s own modules for its needs.
If the default projectile module is not enough for a project, that project can implement its own custom projectile module and use that instead.
Working with plugins in Unreal makes keeping code modular easy. If you don’t know how to create a plugin you can check this article to get you started:
If you are interested in more things related to my projects or behind the scenes on how I do things let me know and I will try to create more content about it.
🎓 GameDev Knowledge Videos 🎓
If you are trying to create powerful hits, this video may help you achieve just that:
( I actually have started to learn REAPER to create sounds for my game, we’ll see how that goes )
And as always if you have any doubt don't hesitate to contact me.
See you next Saturday! 🐱