RPG HUD: Targeting Assistant
Below, I have listed some of the many pages that will be included in the targeting assistant package. As you read, keep in mind that all of these settings update and persist during run-time. So modifying target settings while you play will be completely convenient. When using the package, you will be able to toggle off continuous updates - which is strongly encouraged when building to avoid useless computation in the background.
Something else I would like to mention before you read on... You will notice at the bottom of some of the windows (Pull data from...) followed by a popup selection. This is extremely useful for saving settings data for each of your projects and having a starting point when beginning new projects. At run-time, you will be able to change where you pull data from and ALL of your settings will be updated to give you a quick look at how your game will look with different styles. As I come closer to releasing the package, you will be able to witness this extremely useful feature in a video.
The general settings offer 10-15 extra settings that function independently of the target types. These mostly dictate when and how the HUDs enter the view - but will also cover hotkeys, scan options, and the maximum number of selectable targets.
You can modify text components linked to your targets. The system supports target names, clans (guilds or other affiliations), and level text. Within the editor, you can modify font, alignment, color, and size.
You can modify up to four stat bars for your target HUDs: Health, Energy, Attack, and XP. For each bar, you may specify a background foreground sprite. Each sprite's color can be modified independently as well. Finally, you will be able to specify the fill method. This means your stat bars can be linear or curved! Yay!
You can use sprite sheets for your stat bars instead of the conventional fill methods. You specify the name of the sprite sheet you want to use and the targeting assistant will automatically bring them in and give each image a percentage value. Basically, the percentage settings let you modify when an image in your sprite sheet should be used.
You can modify the transforms of all of your HUD elements from the editor. You will see in this image two rows of buttons. The first row specifies the element you want to manipulate. The second row lets you elect to modify positioning, rotation, and scale of each element.
Similar to the transform settings, the visibility window allows you to modify each element on your HUD. Here, you will modify settings that dictate when your HUD elements show up. For instance, you may always want your target's name to show. So you would check 'if not selected' and 'if selected' to ensure the name text is always active. There will also be settings for visibility that allow certain HUD elements to only be active in combat - such as an energy bar or attack bar.
Your are not limited to Friendly, Neutral or Enemy target types in this system. You are free to create as many target types for each of your targets in your game. Keep in mind that each custom target type will have a relative (which IS connected to Friendly, Neural, or Enemy target types). This linking will determine how your 2D HUDs are grouped on the camera's canvas. After creating your custom target, you will be free to modify all of its settings just like any other target.
You can create custom target types - where one of the default (Friendly, Neutral, Enemy) targets are linked as a relative. The custom target will still have complete control over its own settings, but may be as similar or different as you like. This would be useful for bosses or other special targets. The relative only serves two real purposes; to copy settings from the relative to the new custom target to ease the process of making a ton of changes, and to have the cursor recognize the custom target.
In this window, you will be able to easily drag the cursor you want to be active when hovering over certain target types. For custom target types, the cursor will consider relative target types.
You will certainly not be restricted to my character models. In fact, the system only has one requirement for your character - that it has a prefab. When you drag your prefab into the Target Prefab field, it will be confirmed with a check mark, along with the other fields that follow. It is here that you determine if your target will have a particular layer to be recognized on, a specific target type, a ground projection, a 3D HUD, or a 2D HUD, or all of the above!
After applying the necessary components to your target through the Setup Window, you will be prompted to initialize the positioning of your 3D HUD (if you choose to use one) and the size of your target's projection (if you choose to use one). When you finish, your target's prefab is applied to all of the prefab counterparts already located in your game.
This image represents the entry settings for 2D HUDs linked to your targets. The rest of the 2D HUD target settings will be nearly identical to the 3D HUD target settings. You will still be able to modify Text, Stat Bars, and Transforms independently of the 3D HUD counterparts. These entry settings will allow you to decide where the root position is, how the HUDs reveal themselves, and how to be scaled relative to your target resolution. These settings are based on each target type; meaning your friendly targets may be showing up in one corner of your screen while your enemy targets show up in another corner.