Many creators are running into the Battlefield 6 ForceRevive AI endless loop bug in Portal, where AI Support soldiers keep trying to revive a nonexistent “ghost mandown soldier object.”
This happens when ForceRevive is set to trigger automatically on the OnManDown event, causing the game to create a lingering downed-player object even after the revive completes.
The AI then locks into an infinite revive attempt for the rest of the round, breaking immersion and ruining Portal logic flow.
This issue is especially frustrating because it only happens when mixing ForceRevive with automated logic blocks, not during normal gameplay, making it tricky to diagnose.

Quick Fix
Add a condition that checks if the player is actually down before ForceRevive runs, or disable AI revive logic for the session to prevent looping.
Fix 1 – Add a Player.IsDown Check Before Triggering ForceRevive
The core of the ForceRevive AI endless loop bug is that ForceRevive fires even when no true downed target exists. Adding this validation prevents the script from activating when the player is already revived.
With this check, the AI no longer sees a phantom object to revive.
Portal logic becomes far more stable with this simple condition.
Steps:
- Add condition: IF Player.IsDown = TRUE
- THEN → ForceRevive
- ELSE → Do nothing
How it helps: Stops ForceRevive from spawning ghost revive targets.
Fix 2 – Turn Off AI Auto-Revive for Support Units
AI Support automatically tries to revive any downed object they detect, including ghost objects created by ForceRevive. By disabling their revive behavior, you prevent looping.
The ForceRevive script handles revives, not the AI.
This greatly reduces the bug frequency.
Steps:
- Portal Editor → AI Settings
- Disable “Support Revive Behavior”
- Save & reload session
How it helps: Stops AI from chasing invalid revive targets indefinitely.

Fix 3 – Add a Short Delay Before Running ForceRevive
Instant ForceRevive sometimes fires before the engine removes the original downed object, generating a duplicate ghost. A brief delay fixes this.
This gives the game time to clear the state.
The AI won’t detect the ghost body afterward.
Steps:
- Add 0.3–1.0 second delay
- THEN trigger ForceRevive
How it helps: Prevents overlapping revive states that confuse the AI.
Fix 4 – Clear Mandown Object References After Reviving
When Battlefield 6 ForceRevive AI endless loop occurs, the ghost object sticks around because the reference isn’t cleared. Removing that reference kills the loop instantly.
This helps ensure no leftover revive targets exist in the logic system.
You can treat it like cleaning up debris.
Steps:
- After ForceRevive → Set MandownObject = NULL
- Save and reload mode
How it helps: Removes the invisible body AI keeps trying to revive.
Fix 5 – Replace ForceRevive With Heal or Teleport Logic
ForceRevive interacts heavily with Portal’s downed-state system. Using HealPlayer(100%) or teleporting the player avoids this system completely.
This prevents ghost mandown mechanics entirely.
Your game mode still keeps players in action.
Steps:
- OnManDown → Heal Player to full
- Or → Teleport Player to safe zone
How it helps: Removes the need for ForceRevive and its ghost object creation.
Fix 6 – Limit ForceRevive to Once Per Life
Running ForceRevive multiple times before a respawn increases the chance of creating ghost objects. Limiting it fixes most looping scenarios.
After one revive, the system locks until the player dies naturally.
This ensures cleaner logic flow.
Steps:
- Create variable: CanRevive = TRUE
- If CanRevive = TRUE → ForceRevive → Set CanRevive = FALSE
- Reset on respawn
How it helps: Prevents repeated triggers that cause lingering revive entities.
Fix 7 – Use Player.IsAlive State to Reset AI Behavior
The loop continues because AI thinks the player is still down. Adding a post-revive alive check forces the engine to clear revive behaviors.
This method is simple and very effective.
It resets AI Support behavior instantly.
Steps:
- After ForceRevive
- IF Player.IsAlive = TRUE → Clear revive flags
How it helps: Tells AI the revive is complete so it stops looping.
Fix 8 – Move Logic Into a Custom Event Instead of OnManDown
OnManDown triggers too quickly, causing default and custom revive behaviors to collide. Using a custom event reduces interference.
This gives you more control over timing.
It prevents ForceRevive from auto-firing at bad moments.
Steps:
- Create new event “ReviveTrigger”
- Start it manually via conditional checks
How it helps: Eliminates revive conflicts caused by OnManDown firing instantly.
Fix 9 – Remove AI Roles That Include Medical Behavior
Some AI loadouts include hidden revive logic even if you disable Support abilities. Removing these roles avoids unexpected behavior.
You can still keep them as combat AI.
It declutters the revive logic path.
Steps:
- In AI Setup → Remove Support roles
- Assign Assault or Engineer instead
How it helps: Stops AI from searching for revive targets they shouldn’t detect.
Fix 10 – Rebuild Your Portal Rule Set to Remove Invisible Logic Conflicts
Portal scripts sometimes keep hidden states after multiple edits. Rebuilding from scratch cleans up corrupted logic, duplicate triggers, and stray revive lines.
It’s a fresh start without hidden conflicts.
This helps when the AI loop persists even after fixes.
Steps:
- Export or screenshot your logic
- Rebuild from a clean file
- Re-test ForceRevive
How it helps: Removes invisible logic loops that cause the endless revive bug.
Fix 11 – Disable “Auto-Engage Downed Players” in AI Behavior
Some AI templates include internal revive engagement logic that overrides Portal rules. This hidden behavior often triggers the Battlefield 6 ForceRevive AI endless loop bug because AI keeps scanning for downed entities even after revival. Disabling this option prevents them from tracking phantom revive targets.
This reduces revive spam and stops AI from locking into a broken revive pattern.
It also makes scripted revives cleaner and more predictable.
Steps:
- Portal Editor → AI Behavior
- Turn off Auto-Engage Downed Players
- Reload the session
How it helps: Removes the automatic revive detection that gets stuck on ghost mandown objects.
Fix 12 – Delay the Clearing of OnManDown Events
Sometimes the OnManDown event fires before the player fully transitions into downed state, creating inconsistent revival logic. Delaying event clearing helps stop the Battlefield 6 ForceRevive AI endless loop bug by ensuring state changes resolve properly.
This gives the engine time to clean up temporary revive references.
It also reduces data races between ForceRevive and normal revive logic.
Steps:
- Add a 1-second timer after OnManDown
- Delay cleanup actions
- Then continue the script
How it helps: Prevents incomplete mandown states that cause ghost revive loops.
Fix 13 – Switch to “Conditional Respawn” Instead of ForceRevive
Using conditional respawn removes the mandown state entirely. This eliminates the root cause of the Battlefield 6 ForceRevive AI endless loop bug, since no AI tries to revive a player who never enters the downed state.
This workaround is extremely reliable for fast-paced modes.
It also prevents revive-related glitches in large-scale Portal scripts.
Steps:
- OnManDown → Respawn Player
- Skip ForceRevive entirely
How it helps: Removes mandown mechanics so no ghost revive targets can exist.
Fix 14 – Add a Timeout System for AI Revival Attempts
AI sometimes gets stuck trying to revive the same invisible target. A timeout system resets their revive behavior after a set time and stops the Battlefield 6 ForceRevive AI endless loop bug from repeating.
This helps especially when multiple AI supports exist.
Timeouts ensure AI eventually give up and resume combat.
Steps:
- Create variable “ReviveTimer”
- If timer > X seconds → Cancel revive → Reset AI state
How it helps: Forces AI to stop looping actions on ghost objects.
Fix 15 – Disable All Revive Animations for AI
AI revive animations sometimes bug out and attach to incorrect objects. Fully disabling revive animations removes the AI’s ability to interact with downed entities, stopping the Battlefield 6 ForceRevive AI endless loop bug instantly.
This is ideal for arcade-style or instant-respawn modes.
It improves stability and reduces CPU load.
Steps:
- AI Behavior → Disable Revive Animation
- Save & reload
How it helps: Prevents animation-driven loops that target invisible bodies.
Fix 16 – Use a Global Flag to Track “Revived Player” States
Tracking revival using a global flag ensures that once a player has been force revived, AI cannot attempt to revive them again. This bypasses the Battlefield 6 ForceRevive AI endless loop bug entirely.
It adds a layer of logic that clearly defines revive eligibility.
The flag makes your script more predictable and modular.
Steps:
- Global Flag: “PlayerForceRevived = TRUE”
- If TRUE → AI Revive = Disabled
How it helps: Ensures revive logic runs only once and never loops endlessly.
Fix 17 – Introduce a Null Check Before Each AI Revive Attempt
AI often tries to revive null objects left over from ForceRevive. Adding a null check prevents the Battlefield 6 ForceRevive AI endless loop bug by stopping AI from interacting with fake references.
This small safeguard is extremely effective.
It ensures only valid entities are targeted.
Steps:
- IF Target != NULL
- THEN allow revive
- ELSE stop action
How it helps: Blocks AI from targeting invisible ghost bodies.
Fix 18 – Separate Human and AI Revival Logic
Mixing human and AI revive systems sometimes causes logic overlap. Splitting them into completely separate rule groups prevents the engine from confusing revive targets, solving the Battlefield 6 ForceRevive AI endless loop bug.
Humans get ForceRevive; AI gets normal revive logic.
This prevents cross-triggered revive events.
Steps:
- Group 1: Human players only → ForceRevive
- Group 2: AI only → Standard revive behavior
How it helps: Prevents logic conflicts that generate endless revive loops.
Fix 19 – Force the “Mandown” Object to Despawn Immediately
Instead of clearing variables, you can force the mandown object itself to despawn upon player revival. This makes the Battlefield 6 ForceRevive AI endless loop bug impossible because the AI never detects a reviveable body.
This solution works even with complex revive logic.
It’s especially useful in large AI armies.
Steps:
- After revival → Delete MandownObject
- Trigger AI behavior refresh
How it helps: Removes the physical object causing the AI loop.
Fix 20 – Reduce the Number of Support AI in Your Mode
More support AI means more revive attempts. With too many, even one ghost object causes huge revive spam. Reducing support AI lessens the severity of the Battlefield 6 ForceRevive AI endless loop bug.
Fewer AI means fewer repeated checks.
The chance of a revive loop forming drops significantly.
Steps:
- AI Setup → Reduce Support units
- Increase Assault or Scout instead
How it helps: Lowers revive logic spam so loops rarely occur.
Why are AI stuck reviving endlessly in Battlefield 6 Portal mode?
AI getting stuck reviving endlessly in Battlefield 6 Portal mode is caused by a logic conflict between the game’s revive behavior and Portal’s custom scripting layer. When an AI soldier enters the “revive state,” the AI brain expects the target to be an active downed entity. But if the target’s state has already been reset, despawned, or removed by a rule, the AI does not recognize the change.
Instead of abandoning the revive, the AI loops the animation forever, thinking the revive is still valid.
This happens most often in modes with:
- Fast respawns
- Custom death rules
- Team-swapping
- Instant revive modifiers
- AI-heavy lobbies
The Frostbite AI “Medic Behavior Tree” isn’t designed for situations where a revive target disappears mid-action. Because of that, the AI keeps trying to revive a soldier who no longer exists.
Is ForceRevive bugged in Battlefield 6 Portal scripting?
ForceRevive is partially bugged in Battlefield 6 Portal, depending on when and how you fire it. If ForceRevive runs during the same frame or shortly after an OnManDown event, it interrupts the internal AI combat script. The AI’s revive handler then believes the revive is still pending and continues checking the state repeatedly.
The main issue is timing:
- ForceRevive triggers too early = AI doesn’t update state
- AI enters revive behavior = revive target is already alive
- Portal scripting overrides Frostbite states too quickly
This creates a “limbo state” where the soldier is alive, but the AI logic still thinks he’s down.
The result is a looping revive animation — the AI tries to complete an action the engine already resolved.
Updating ForceRevive to run on a slight delay often prevents this.
What causes AI medics to loop revives infinitely in Portal?
AI medics loop revive animations infinitely due to state desync between Portal scripting and Frostbite’s AI Behavior Tree. When an AI medic begins a revive, the engine expects the downed soldier to stay in the reviveable state. But Portal scripts often:
- Auto-respawn the player
- Swap the soldier’s team
- Delete the player’s ragdoll
- Teleport the entity
- Apply ForceRevive too early
- Override health values mid-animation
Any of these actions break the revive event chain.
The AI, however, never receives a cancellation signal. Because of that, the revive handler remains active and loops the revive animation forever as the AI repeatedly checks a nonexistent target.
This is why you see AI reviving thin air, reviving dirt, or crouching over an empty spot.
Why do AI try to revive a ghost soldier after death in Battlefield 6?
AI try to revive a “ghost soldier” when the death state is removed before the revive state finishes. If the ragdoll despawns too early or if the soldier’s body transitions instantly into a respawn state, the AI still thinks a corpse exists at that location.
Common causes:
- Fast respawn timers
- Custom death handling rules
- Scripted teleportation on death
- Entity cleanup rules that delete bodies instantly
- Behavior override events that fire too quickly
Because the corpse is gone but the AI revive flag is still active, the AI continues attempting to revive something that is no longer there. This creates the ghost revive loop where medics kneel and revive endlessly at an empty spot.
Does the OnManDown event break AI logic in Portal?
Yes — OnManDown can break AI logic if it fires multiple events or interacts too closely with ForceRevive, auto-respawn, or scripted death replacement. When OnManDown triggers, the AI marks the target as “reviveable.” But if a Portal script immediately revives, respawns, or deletes the soldier, the AI’s state machine never updates.
This leads to:
- Missing stop-revive signals
- Partial revive states
- AI frozen in “revive target” logic
- Infinite revive animation cycles
OnManDown is extremely powerful but fragile when combined with other rules.
The fix is usually delaying your revive/respawn scripting by 0.1–0.25 seconds so the AI receives the proper cleanup signal before the revive override happens.
How to fix the ForceRevive endless AI loop bug in Battlefield 6 Portal?
To fix the ForceRevive endless AI revive loop in Battlefield 6 Portal, you must delay the revive action so the Frostbite AI state machine can finish updating the target’s downed state before your script overrides it. The loop occurs because ForceRevive executes instantly, while the AI behavior tree still thinks the soldier is down and “reviveable.”
Best fix:
- Add a 0.1–0.3 second delay after OnManDown before calling ForceRevive
- After reviving, issue a ForceMove / ClearBehavior command to reset the AI’s animation state
- Ensure the ragdoll isn’t deleted too early by other rules
- Avoid forcing revive during body cleanup or teleport events
This workaround lets the revive animation and AI state cleanly reset, preventing revive looping on empty ground.
Can you prevent ghost soldier objects from spawning in Portal rulesets?
Yes — you can reduce or fully prevent ghost soldier entities by adjusting how your rules handle death, respawn timing, and ragdoll cleanup. Ghost bodies appear when the corpse is deleted too quickly or replaced by a script, leaving the AI with an outdated “interaction point.”
To prevent ghost entities:
- Disable instant ragdoll deletion
- Add a DoOnce or TeamCheck before revive logic
- Delay any teleport or respawn actions until after the revive logic completes
- Ensure no rules prematurely clean up death objects
If the body persists long enough for the AI to process the state transition, the ghost revive bugs almost completely disappear.
Is there a workaround to make AI stop reviving dead entities?
Yes — you can force AI to abandon a revive using conditional checks or behavior resets. The AI loops because its revive flag stays active, but you can break the loop manually.
Working methods:
- Add a condition: If target health > 0 → Cancel revive
- Add a rule that checks: If entity despawned → Reset AI behavior
- Use ClearAIBehavior or ForceMove(targetPosition) to snap AI out of revive mode
- Disable revive logic temporarily after a ForceRevive to avoid overlapping events
Some creators use a simple cooldown timer: once an AI tries to revive once, it cannot attempt again for several seconds—this prevents spam behavior.
This doesn’t fix the engine-level bug but it does stabilize gameplay.
Does disabling AI revives or adding condition checks fix the loop?
Yes — disabling AI revive logic or adding layered conditions is the most reliable way to stop the endless revive loop. Portal’s AI revive behavior is tied to default Frostbite AI trees that don’t understand overwritten states. If you modify revive logic too aggressively, the AI becomes confused.
Effective condition checks:
- Only allow revive if the target’s death state is active
- Ensure the target is not already being revived
- Check that the soldier has not respawned or swapped teams
- Add a distance check to prevent revive spam across the map
If revive behavior continues to break your script, the nuclear option is disabling revive logic entirely for AI medics — many Portal creators use this for stability.
Has EA or Ripple Effect acknowledged this scripting issue yet?
Yes — Ripple Effect has indirectly acknowledged Portal AI revive issues through patch notes and developer comments dating back to early Battlefield Portal updates. While they haven’t posted a dedicated statement for the Battlefield 6 version yet, previous documentation confirms that revive logic can desync when Portal scripts interfere with Frostbite’s native AI behavior tree.
Community managers have noted that:
- ForceRevive timing is unreliable
- OnManDown events can fire too early or too often
- AI medics can enter “stuck loops” if the revive state isn’t fully cleared
Ripple Effect historically fixes Portal logic bugs in batches, so an AI revive patch is likely coming — but not officially scheduled.
Final Thought
The Battlefield 6 ForceRevive AI endless loop bug happens because the downed-player system and ForceRevive logic collide, creating a ghost revive object that AI tries to revive forever. By adding state checks, timing delays, role changes, or replacing ForceRevive entirely, the looping can be stopped quickly and cleanly.
