Here are some scenes and scripts helpers that are made specifically to be used with the other main scenes (Core_Prefabs) such as Projectiles, VFX, and scripts. U.R.S.T are made to be completely flexible which means even those scenes or scripts can be customized or edited easily. Some of them might require more knowledge of Godot and GDscript.
💡 Note: Never edit the nodes within .tscn file or scripts inside the 📁 Core folder. If you must edit a node, it is highly recommned to right-click the .tscn, choose New Inherited Scene and edit that scene instead.
The RetroProjectile.tscn scene is the foundation for anything that flies through the air. Keep in mind that you don't need to manually configure the speed or damage on the projectile itself (except for the Life Time which can be edited in the inspector), the RetroWeapon resource automatically passes all those stats to the projectile the moment it is fired (spawned). The following is a list of what the projectile system do:
RetroProjectile.tscn uses continuous Raycast detection to ensure a bullet never passes through a wall or enemy, no matter how fast it travels.Drop Gravity to the projectile, realistic arc. You might as well use it for sniper rifles.Lifetime (in seconds) in the inspector. If the projectile flies off into the sky and misses everything, it will automatically delete itself so your game's memory doesn't get cluttered.RetroProjectile Inspector, you will find an Explosion Scene slot. This was mainly made for explosive upgrades when you tick explosive_projectiles in the RetroWeapon resource. However, you can utilize this option for other projectile behaviour:
Explosion Scene. For example, you can make a New Inherited Scene from RetroProjectile.tscn and attach a scene that burst many small grenades into Explosion Scene slot, and you will have a unique and special weapon that fire a single projectile which then spawn many small grenade.
The RocketProjectile.tscn is an inherited scene from RetroProjectile.tscn. It aims to be an example of how to make unique and different projectiles behaviour using the Universal Projectile RetroProjectile.tscn. The scene already has the explosive upgrade configured and particle trails enabled. It will spawn an explosion as soon as the projectile collide, dealing Area of Effect (AOE) damage and trigger a camera shake. You can duplicate this scene (RocketProjectile.tscn) to quickly make for an example a plasma bombs or magic fireballs.
The RetroImpact.tscn a visual feedback for hitscan weapons. The template automatically handles spawning impact VFX (sparks particles and bullet holde decals) whenever a bullet hits a solid wall or floor. This scene do two major things:
Sound Melee Hit. If it hits something else, it plays Sound Melee Wall. Keep in mind that this is handled by RetroWeapon resource and not within this scene.