Verified integration recipe
Connect Argus to an Existing Combat AI
Use the verified IArgusGuardReactions seam to let Argus own detection while your existing Unity component owns attacks, animation, IK, and combat decisions.
Best for: Existing enemy controllers, combat brains, animation systems, and visual scripting adaptersThe connection pattern
- Keep your combat controller on the same guard prefab.
- Implement IArgusGuardReactions on a small bridge component beside ArgusGuard.
- Enable the combat controller on OnEnterCombat and disable it on OnExitCombat.
- Use the other callbacks for barks, animation triggers, search presentation, or mission logic.
Minimal adapter
existing-combat-ai.csCopy into your game assembly
using UnityEngine;
using Argus.Actors;
public sealed class ExistingCombatBridge : MonoBehaviour, IArgusGuardReactions
{
[SerializeField] private Behaviour combatController;
private void Awake()
{
if (combatController != null) combatController.enabled = false;
}
public void OnEnterCombat()
{
if (combatController != null) combatController.enabled = true;
}
public void OnExitCombat()
{
if (combatController != null) combatController.enabled = false;
}
public void OnAlerted() { }
public void OnReachedLastKnown() { }
public void OnStartedSearching() { }
public void OnReturnedToPatrol() { }
} Why this seam stays stable
ArgusGuard discovers IArgusGuardReactions components on the same GameObject and invokes them alongside its inspector UnityEvents. There is no package edit and no hard reference from Argus to your controller.
If your project does not use ArgusGuard, subscribe directly to StealthAgent.LadderChanged or FsmStateChanged. The observer contract stays the same: Argus publishes what the enemy knows, and your code chooses the reaction.