ABC is a toolkit which allows you to easily add weapons and create abilities from melee attacks to magic spells with no coding required. ABC also comes with a wide variety of combat related functionality. Asset Store[ ](http:// Ability & Combat Toolkit | Game Toolkits | Unity Asset Store) “ABC gives you the power to make any ability you dream of a reality.”
https://www.youtube.com/watch?v=g4dWbfPvoBs With simplicity in mind ABC has been designed to implement easily into your existing or new games using only 2 components. One which is used to setup and controls features like activating abilities. The other to interact with ABC - for example to take damage from an attack.
With over 50 ability effects and a multitude of options and functionality you can get creative and further increase the potential of your games. Add an unlimited number of effects from inflicting damage and buffing stats to moving objects.
Unless a flurry of attacks in a combo, have an ability bounce around targets, detonate a bomb with a click of a button, setup for FPS and have the player switch through guns to fire, create pick-ups which provide buffs, setup an ability to fly to the sky and then come crashing down on your target, setup a barrier which throws any enemies away that touches it, activate an unlimited number of projectiles at once. The possibilities are endless!
ABC doesn’t stop with just creating Abilities for your games - it also has a whole host of combat related functionality including AI, Health & Mana Management, Target & Auto Target System, Stat Creation, Interactive toolbars and much more.
As an extra ABC also comes with free graphics, characters, animations, audio sounds and icons and premade weapons, abilities and effects. ABC also comes with a very easy to use character creator which can get characters combat ready in just a few clicks
Contact
For any queries, feedback or suggestions for future features then please feel free to post in this thread or get in contact by sending an email to: DiceLockStudio@gmail.com
Version Changes #### v2.0 #### **** Character Creator & Global Weapons/Abilities/Effects ****
Added a character creator portal to quickly setup players, enemies and friendly npcs
Added global weapons, abilities and effects. Adding global elements to entities will now show a (*), changing the global element will have the change applied to any entity the global element is added on.
Added preset global weapons, abilities and effects
**** Demo ****
A new demo has been created
**** New Functionality ****
Added AI Rule Cooldown which will trigger a cooldown after use between a random min and max value. Whilst on cooldown the rule can’t be used.
Added functionality to randomise GUI effect text and increase size depending on effect potency
Added functionality to only apply travel duration if originator activating the ability has a set tag
Added an interval value to ability On-Stay collision to better time how often an ability applies effects
Ability End Graphics can now be set to use effect graphics
Improvements made to Animation Runner clips so they now transition and blend more smoothly
Added functionality to convert all tags set for abilities and other functionality , i.e ‘Target’ tags can be converted to ‘Enemy’ during play
Added fold out to hit animations and allowed for more then 1 animation clip to be added to one hit reaction
Added Push On Axis effect
Added SetStatValue effect
When AI is enabled, setting to disable triggers now disables idle switch, weapon switch, target confirm,
reload, block, parry triggers etc
AI Navigation, Tags can now be set which will make the entity switch to idle mode if that tag is being navigated too, for example a friendly putting his weapon away to follow the player
Default indicators are now added on new ability creation
Added functionality to apply game type modifications to ability
Added functionality to scale ability, effect and end graphics via a value
Added an option to delay hit animations
Added functionality to declare at what % of the initiation animation the ability & collider will appear in game. i.e fire graphic will always appear 60% way through the animation clip
Added functionality to speed up or slow down an attack or ability activation through a slider
Added functionality to detach initiation graphic from parent for better weapon trail effects
Miss chance now makes the entiy rotate to another direction to current target when doing melee attacks
Added functionality to shake camera on initiation
**** Bug Fixes ****
Bug Fix: Fixed a bug where applying a stat adjustment effect multiple times would not revert back to correct base state after effect wears off
Bug Fix: Fixed a bug where minus interval adjustment on abiliteis was not correctly applied
Bug Fix: Fixed a bug where effects would not work on some OS culture settings
Bug Fix: Hit Animations will now correctly play when entity attack is interrupted
Bug Fix: weapon override animations now correctly applies to AI Navigation
Bug Fix: ABC Animation Runner can now be used with no animations in the Animator
Bug Fix: Dragging items onto the editor will always save and no longer revert back to the previous value
Bug Fix: Disable Movement Component used by ABC now correctly blocks AI Navigation for a small duration
#### v1.6 ####
**** Abilities new Functionality/Amendments ****
Abilities can now be set their own graphic indicator when using ‘Ability Before Target’ for example in MOBA/Top Down games where an ability is selected before a target/world position/mouse direction.
World Indicators show the area of effect the ability will impact
Range indicator circles can be used to show the range the ability can be casted in
Mouse indicators can show the direction the ability will be fired in on mouse click
Default indicators can be added by pressing the default icon next to each setting.
Initiation Speed Percentage has been added with effects to modify this. Speed up your attack rate/animations or slow it down with abilities
Melee attacks, selected target (with always travel on) and forward target projectiles now allows you to select additional rotate behaviours when no target selected for examples, rotate to camera center, mouse direction, current direction. Allows for top down game styles where attacks follow the mouse.
Starting Position ‘On Self Tag’ will now prioritise equipped weapons over unequipped weapons with the same tag
Abilities can now be assigned tags to easily filter and group them in the inspect ability list
Performance improvements have been made to abilities with ‘OnStay’ set as their ability collision type.
Ability collision details have been added to the diagnostic log
**** Impact Juice new Functionality/Amendments ****
StopHit on impact settings have been added
Allows for stop hit/lag to be added on attack collisions to add more juice to your games
Will for a duration set stop the movement of the attacker/enemy to effect for a bigger hit
Added a delay setting to freeze time on impact setting
Added a impact setting to shake the entity hit on impact, will make the object jitter for more hit juice
Added an impact setting to change colour on impact for more hit juice, this can also be applied from an ability effect.
**** Animations new Functionality/Amendments ****
Animation Clips used with ABC’s animation runner now blend between for a more smoother animation experience
Avatar Mask setting for ABC’s animation runner has now been added to every animation, easily drag in an avatar mask to only have the animation run on for example the top half of the character
Animation override setting has been added to weapons, this allows you to override the idle/walk/run/jump animations with a animation clip. Setup just one idle/run animations in the Animator and have these clips setup in the Animator overriden with a new clip depending on the weapon equipped. Allows less setup to be made in the Animator.
Crosshair Override Animation added to weapons, useful for FPS/TPS. Allows for a different animation to play when the player is focusing/aiming. The global crosshair override animation can still be set if you don’t want an animation per weapon.
**** Weapons new Functionality/Amendments ****
Setting added to disable all abilities attached to other weapons when equipping a weapon, allows for you to disable all abilities attached to other weapons leaving abilities like spells to always be enabled.
Added a show/hide gameobject list to weapons, any gameobjects in this like will be enabled when the weapon is equipped and disabled when unequipped, useful to add any UI in here that relates to each weapon.
Added a button to automatically create weapon pickup objects for weapons, simply click this button and a new gameobject/prefab will be put into your scene which can be used to pick up weapons by your characters.
**** AI new Functionality/Amendments ****
Improved AI so it handles ability combo’s better
Added more then one tag to AI Navigation, this can be set to follow the tags in order or randomly. By using the ordering you can set for friendly NPCs to follow your character until an enemy is near in which it will then navigate towards it to attack if tag order looks like following: enemy > player
Improved AI targeting so potential targets are ordered by closest range and made it so AI rules check the current AI Navigation target first before the other potential targets, i.e who the AI has focus on
if an AI is using Line of Sight (i.e enemies won’t know your there until they see you) they will now become alerted if hit before they see your character.
**** Misc new Functionality/Amendments ****
Adding a new UI Icon will now automatically create an icon button in game already linked, simply move this icon in your scene or modify it as you wish.
The current Tab/Settings selected now persists and will now reset when managers are opened
Manager windows have been changed to tab type to allow for you to add more then one manager into the same window
Pressing the button to convert a soft target to a target whilst already targetting an entity will now untarget them, i.e press space bar to target and press again to untarget.
**** Bug Fixes ****
Bug Fix: Raycast abilities could not be activated on self, this has now been fixed
Bug Fix: Red text would show on buttons when deleting an effect until the game is next played
Bug Fix: Example camera demo script no longer collides with abilities, camera will also now stop rotating when in ability before target mode to allow the player to easily select the target or world position to activate the ability on
Bug Fix: Fixed a bug where applying travel duration would cause an error
Bug Fix: Face Target required will no longer error on melee attacks
Bug Fix: AI Navigation Animation Runner will now not run more smoothly
Bug Fix: Hit that stop movement will now stop any AI Navigation Destination Behaviours (Walking round character etc)
Bug Fix: Weapon Drop/Pickup now handles better when the drop/pickup duration is set to 0
Bug Fix: UI Icons can now handle when the gameobject has an image component and not a raw image component
Bug Fix: Fixed a bug where you was unable to target select the player
#### v1.5 ####
Added weapon Blocking & Parrying to ABC
Weapons can now block attacks, mitigating or reducing damage
Parrying can be triggered to prevent an incoming attack. If done at the right time a counter attack can be activated
Added Emerald AI Integration
Updated Editor Colours For Dark Theme
Added a setting to configure for a specific hit animation to activate when an ability hits another entity
If a specific animation doesn’t exist then an additional setting can be flagged to play a random animation instead
Added an option to only activate preparing animation if entity is moving towards target.
Allowing for entities to walk to target during preparation before attacking but if already close no walking animation will activate
Combo triggers have been added to ABC, configure for an ability to only activate after a series of inputs have been entered by the player
Example A + A + B will trigger a special attack
Added an effect setting which when ticked will only add and activate the effect if the effect was applied from an ability splash
Added a new AI Rule to equip a weapon
Added a new AI Rule to weapon block
Added a new setting to modify game speed on initiation and on collision
Updated target selection so it is more accurate in busy scenes
Added layer masking setting to target select
Added new GC actions
Enable/Disable Weapon
Enable/Disable Ability
Refactor of ABC_IEntity to easily allow for methods and properties to be overriden
Can override with your own functions and integrations, further releases will then not overwrite
Cleaned up warnings that appear on first download
ABC Can now become a child prefab
Allows for Abilities/Weapons in ABC to be a child prefab, this prefab can be added to as many objects as you want.
Doing so you can create a central ability system which allows for changes to the prefab to be applied to many objects.
Improved performance for better FPS across the system
Improved Camera Shaking for a more smooth and satisfying shake
Added AI Navigation to the core system
Entities can now wander and run to target.
Once target is reached they can be setup to rotate around or move back and fourth giving more life to the AI
Health/Mana now shows when soft target is applied
ABC Pool will now persist across scenes
When an entity has no health they will now be untargettable
When an entity has no health they will no longer be able to activate abilities or navigate using AI functionality
Improved effect on hit position so it now accurately plays the effect in the correct position in relation to the entities bones
Added a setting to stop movement and ability activation when switching weapons
Added a setting which will attach the ability to the entity on hit until the abilities duration is up
Allows for sticky bomb abilities
Allows for arrows to stay attached to the entity when hit
Bug Fix: Fixed a bug where game would not build correctly
Bug Fix: Effect graphic default duration will now be 2 instead of 0
Bug Fix: Fixed a bug where values would reset on ABC Game Creator Actions
Bug Fix: Fixed a bug where re-enabling an entity would not correctly setup weapons
Bug Fix: Enable/Disable integration buttons will now correctly show if the integration is enabled or disabled
Bug Fix: Fixed a bug where group filtering would show abilities attached to the group when they were not assigned
Bug Fix: Bullet time no longer reduces FPS
Bug Fix: Fixed a bug where gravity and travel delay would not reset when the abillity is next activated
Bug Fix: Fixed a bug where game would projectile would not correctly ignore entity collision
Bug Fix: Changing object name in the editor will now correct update the name in the reference variable (stopping any saving/loading bugs)
#### v1.4 ####
New Weapon Functionality
Configure for your characters to equip/unequip weapons
Link abilities/attacks to weapons to become enabled when the weapon is equipped, linking abilities with weapons (sword attacks can be used when sword equipped etc)
Linked groups with weapons so when a group/weapon is enabled/equipped the weapon/group can be equipped/enabled
Display in UI which weapon is equipped
Weapons can have ammo/reloading which abilities can consume. Once out of ammo abilities will not activate until reloaded or more ammo is picked up
Added enable/equip weapon effects applied by abilities
Added adjust weapon ammo effects applied by abilities
Functionality included to drop/pick up weapons (weapon pick ups can also be imported so if one character drops a weapon another character can pick it up without having it already setup in their ABC settings)
Ammo also updates on weapon pickup/drop
Weapon swap functionality allows for you to cycle through weapons using mouse scroll/keys
Added an Icon Type which when pressed will equip a weapon
Added a filter dropdown to the ability list section, allowing you to see and configure abilities which are linked to weapons/groups
Updated Demos to use new weapon functionality for reference
Updated Save/Load functionality to include new weapon functionality
Updated Animation functionality to allow animations to run on weapons if chosen too
Added Toggle Gravity effects which can be applied by abilities
Added a setting which will allow for abilities to ignore any prepare time adjustments added by effects (if ‘slow’ effect increase time to activate abilities, if this setting is set it won’t affect that ability)
Added a setting to set a max amount of times an effect can duplicate on an entity (if set to do damage every x amount of seconds this setting can cap how many times it will be applied)
Added functionality which allows for entities to miss the target when activating ability projectiles/raycasts. A miss chance can be set i.e miss the target 20% of the time. The miss chance can also be adjusted by ability effects (blind spell etc). Abilities can also be set to never miss ignoring the miss chance setting.
Improved the ability preparing/progress bar so it now more accurately fills letting the player know how long is left to prepare/cast the ability.
The ABC_IEntity class is now partial allowing you to override the methods to easier integrate with your projects which won’t get overwritten on new updates
Added functionality to move the entity to target when preparing or initiating an ability/attack allowing you to make attacks where the character jumps to the target before striking
Improved ID’s of all weapons/abilities/groups etc to allow for that instance to always have a unique ID, allows for easier setup and integration with effects if the weapon/ability is moved to another character.
Bug Fix: Boomerang functionality now correctly returns the ability back to it’s starting position
Bug Fix: AI now correctly detects which effects are on potential targets when running through conditions to activate abilities
Bug Fix: Fixed a bug where on stay collision was not correctly picked up
Bug Fix: Fixed a bug where the interrupt current animation tickbox on hit reactions could not be selected
Bug Fix: Improved copy of abilities/weapons/groups to ensure no data is not copied over correctly
Improved object moving physics from effects (push etc)
Bug Fix: Fixed a bug where always travel did not apply to additional starting position abilities
Bug Fix: Restrict movement from activating attacks will no longer overlap if another ability has started before the restrict movement ends
Bug Fix: Stopped -adjust health from attacks from healing entity if the entities defence was higher then the damage done
Improved adjust ability interval so it accurately increases or decreases the interval before another attack can be activated after the current one initiates
Bug Fix: Fixed a bug where swapped icon would not be correctly placed when loading from a save
Bug Fix: Fixed a bug where images would not load correct when game save is loaded
Bug Fix: Graphic log duration will now default to 5 when starting new (was previously 0)
#### v1.3 ####
Added functionality to randomise the potential targets which are retrieved when the AI system decides who to use abilities on
to use abilities on
Bug Fix: Fixed an issue where the camera shake would not revert camera back to the correct position
Added the new ABC Animation Runner system which allows you to select animation clips which will play without using Unity’s Animator. This means you do not have to set up anything in the Animator to play animations relating to ABC. This will further increase the potential of ABC integrating with other assets.
#### v1.2 ####
Bug Fix: Scroll abilities with persistent positions now setup correctly if character started game in idle mode
Added Zoom-In functionality to third person additional script
Bug Fix: ABC can now correctly select targets when Game Creator event system is being used
ABC now integrates with Game Creator Asset created by Catsoft Studios. The following integration functionality has been added:
Activate Abilities from a Game Creator Action
Adjust Game Creator Stats/Attributes
Link with Game Creator Health/Mana Attributes
Add and Remove Game Creator Status Effects
Trigger Game Creator Actions/Conditions from Ability Collisions
Functionality has been added to allow for you to set additional starting positions for an ability - An extra Ability object will be created for each Additional Starting Position - The object is an additional duplicate of the normal Ability object and will operate in the same way - This functionality can be used for example to have 2 fireballs fire from both hands or for melee attacks to have each fist apply damage.
A duration setting has been added for Stop Movement on both Preparing and Initiation - You can now choose to stop movement for a set duration when preparing and initiating. If 0 is defined for the duration then the movement will start again automatically as soon as the preparing/initiating animation has finished
#### v1.1 ####
Added lock on to third person additional script
Added functionality to save/load the game through the new ABC_SaveManager component
Fixed a bug where the editor would not allow you to select all animator types from the dropdown
Added Ability Activation/Activation Completion Event Calls which allows other scripts to subscribe to ABC and be notified when an ability activates or has completed activating.
IMPORTANT: Due to the new ABC Save/Load functionality all Unity DataTypes (GameObject, Texture, Image etc) has had to go through a rework so they could be referenced persistently. This allows for the new ABC save/load system to correctly load game data. Due to this any previously set values will be reset once v1.1 is downloaded.
It is recommend that you do not download this update on projects which have already started unless you do not mind resetting some of the values in ABC like the ability graphics.
I have been asked if I can create a Discord channel for all things ABC as another avenue for anyone to get in contact so they can provide feedback, suggest roadmap ideas, showcase what they have created, get support and generally have a nice chit-chat.
I have just created the channel which I will be improving bit by bit over the next coming weeks - for now come in get comfortable and lets talk all things ability and combat
I’ve been toying with the idea of creating a (old school)-fallout-like, magic-wielding Rabbit-Royale RPG, whatever that may be. In any case, I think your asset would be perfect for that
I am working on Biotopia 3D, which is a open world sandbox RPG.
One of my main Problems is that that my enemies and animals are still stupid.
I am interested in a voucher!
My usecase would be:
A script or a prefab where I can set a type like Monster, Carnivore or hermivore. A player property.
Monsters attack the player always, carnivores if you are too close or directly in their view, hermivores just wander and run away if too close.
Monsters also attack hermivores sometimes, carnivores attack hermivores sometimes.
A public property for energy, endurance and mana. Possibility to just wander around, follow Player (or hermivore etc), run away from player or monster etc. Maybe patrol etc.
And this in a randomly created world with colliders. Maybe waypoints optional, I do not need them. Maybe some navigation id optional, for me it would only be interesing if it worked in a random environment, too. Avoiding obstacles etc.
May can set lists of animations for standing, attacking, walking running.
Fit to the ground for animals. etcetc. If I get a voucher and these kind of things are of any interest, I can write more about it and help with testing and Feedback.
Just been checking out your YouTube videos, looks like you have definitely been working hard on the project. With AI in ABC you can set it up so entities only attack other entities on certain conditions so this is something I feel you will definitely benefit with from reading your description. Good luck for the voucher giveaway
Doesn’t look like you have been slacking, its really impressive what I saw. The smallest of progress bit by bit is often the best way to finish a project so you don’t burn out! Good luck for the voucher giveaway.
This is amazing, i’d love to see some more melee and archer type combat. I am in the process of putting together a 1 man MMORPG. This would be an amazing asset to add to my project
Thanks Simpuhl, I will try and put together some more melee and archer type examples in future. ABC is quite flexible so there shouldn’t be any reason why you can’t create almost any type of melee or archer type combat you want!
If you have any attacks in mind and not sure if they can be created in ABC then post here and I will let you know if it’s possible