I’ve hashed out a rough version of the Time Dilation Targeting (TDT) system found in a lot of AAA titles in recent years.
Update 1: Basic Targetting
Update 2: Component Targeting and Quick Fire Hitscan Implementation
Update 3: Customizable line of sight culling, UI, and hit calculations with some simple camera effects
Update 4: Skeletal body part targeting, outlining, hit detection and calculation
Update 5: Youtube video showing a massive number of components and commands executed in order.
I have the framework in place to continue building on it, but I want to see if there is interest from the community for a marketplace asset (I don’t usually do FPS myself, so it’s not much use to my games).
It’s being built as a Component BP, the goal being to open a FPS template project, add this component, and bind the appropriate controls (Enter TDT, switch targets, queue attack, cancel TDT, etc) and have a functioning system (ease of start up is a big goal here). All code is being done in blueprint currently, and will continue to be so everyone can implement their own logic to expand and personalize it with UI, sounds, cinematic cameras, etc.
I am looking at three examples in particular: Red Dead Revolver, Fallout, and Call of Juarez for examples to be supported through options. These three all implement the system with a decent amount of variety: manual targeting, auto targeting, time dilated, no time dilated, limb targeting, calculated hits, etc.
Manual/Automatic targeting is already supported, as well as calculations on whether or not the actor being shot at should be hit, through both hitscan (line traces) and mathematical calculations (Fallout).
These systems are obviously very game-specific as far as how they are set up, so I am wondering if anyone would be interested in such a system and what kind of systems you’d like to see able to be replicated with the component add-on.
Currently ONLY targeting first person pawns, but I’d be interested to see the interest level for third person camera implementation.
Any feedback is appreciated, but remember this is still very early