promotional bannermobile promotional banner

Ember Ward

Safe Zones around Campfires! - Healing for you and your passive mobs, prevent hostile mobs from getting close, soul campfire does more damage and heal faster!
Full Health Stops Regen Effect

Full Health Stops Regen Effect

Entering Safe Zone

Entering Safe Zone

Leaving Safe Zone

Leaving Safe Zone

Healing Campfire

Healing Campfire

Description


 

Ember Ward

Turn every campfire into a working sanctuary.

Ember Ward is a script-based Bedrock add-on that gives campfires real defensive and supportive behavior. When a player or villager stands near a lit campfire, the campfire wakes up: it heals living allies, banishes hostile mobs by teleporting them away, and sets nearby threats on fire. Soul campfires push the same mechanics further, with longer reach, faster healing, and added damage. Stop carrying campfires as decoration. Use them as a tactical tool.

This is a fresh Bedrock implementation. Nothing is ported, no assets reused. The scripts are written against the official Minecraft Script API (@minecraft/server 1.16.0).


What It Does

When a campfire is lit and a player or villager is within the activation zone, the campfire becomes active. Active campfires apply layered effects to nearby entities:

  • Inner ring (teleport zone): hostile mobs that enter are teleported out radially, slightly elevated, with random angular jitter to avoid stacking. If the teleport destination falls inside another active ring, the mob is teleported again in a new random direction, up to 6 iterations per event, until it lands outside every active ring.
  • Outer ring (burn zone): hostile mobs that stay in this band are set on fire continuously while present. Soul campfires also apply +1 HP/second of direct damage on top of the fire, bypassing fire-immune mob resistances.
  • Heal zone: players, villagers, and passive mobs inside this zone receive direct health regeneration applied through the entity's health component. Healing stops the instant the entity leaves the zone — there is no lingering effect.

Campfires that are extinguished or that have no nearby player/villager remain dormant and consume no processing.


Mechanics Tables

Regular Campfire (minecraft:campfire)

Mechanic Value
Burn radius 20 blocks
Teleport radius (inner) 12 blocks
Heal radius 16 blocks
HUD perception band 16 → 22 blocks
Heal rate 0.5 HP/second
Extra damage None

 

Soul Campfire (minecraft:soul_campfire)

Mechanic Value
Burn radius 24 blocks
Teleport radius (inner) 18 blocks
Heal radius 20 blocks
HUD perception band 20 → 26 blocks
Heal rate 1.0 HP/second (×2)
Extra damage +1 HP/second direct (×2 total damage with fire)

 


Hostile Mob Coverage

Ember Ward detects hostile entities through two layers, which means rare hostiles that other simple addons miss are still covered:

Family-based detection (covers most vanilla and modded hostiles): monster, undead, illager, pillager, ravager, hoglin, piglin, zoglin, warden, vex, ghast, blaze, slime, shulker, phantom, wither, ender_dragon.

Explicit typeId override (safety list for mobs that don't expose the expected families in Bedrock): Warden, Ravager, Piglin Brute, Hoglin, Zoglin, Vex, Shulker, Phantom, Ghast, Blaze, Silverfish, Endermite, Guardian, Elder Guardian, Wither, Ender Dragon, Slime, Magma Cube, Creeper, Spider, Cave Spider.

Fire-immune handling: Wardens, Blazes, Ghasts, Magma Cubes, Wither variants, Zombified Piglins, Striders, and the Ender Dragon receive the soul campfire's extra damage through a non-fire damage cause so resistances do not absorb it.

A simple typeId cache means the per-tick cost stays flat regardless of mob variety on screen.


HUD

On-screen messages use the game's native font and color codes. No icons, no persistent banners.

  • Entering the heal radius: a transient green message appears in the action bar.
  • Leaving past the heal radius + 6 blocks: a transient red message appears.
  • Walking the border of the heal radius does not spam messages thanks to hysteresis between the heal radius and the perception band.

Messages are fully localized.


Languages

The pack ships with translations for:

  • English (en_US)
  • Spanish — Latin America (es_MX)
  • Spanish — Spain (es_ES)
  • Portuguese — Brazil (pt_BR)

Translation keys are provided through the included resource pack. Clients automatically receive messages in their game language. Clients running other languages fall back to English. New languages can be added by dropping a <code>.lang file into the resource pack and listing the code in languages.json.


Performance Design

  • Inactive campfires (no player or villager within heal radius + 6) are skipped entirely each tick.
  • Hostility classification is cached per type ID, so each species is evaluated once.
  • The main loop runs at 2 Hz; the damage loop at 1 Hz. Per-entity work is constant.
  • Discovery of existing campfires is reactive (on hostile spawn) and passive (around players every 10 seconds), so worlds with already-placed campfires do not require placing them again.

Comfortable upper bound: around 50 simultaneously active campfires per dimension.


Requirements

  • Minecraft Bedrock Edition 1.21.50 or later
  • "Beta APIs" experiment enabled on the world (Tested in Survival mode without Beta APIs and works just fine, but choose at your own discretion).
  • Achievements are disabled on worlds that use beta APIs — this is a vanilla limitation, not specific to this pack
  • API target: @minecraft/server 1.16.0

Installation

Ember Ward is distributed as a single .mcaddon file containing both a Behavior Pack and a Resource Pack. Both must be active for the localized messages to display correctly.

  1. Download the .mcaddon file.
  2. Open it on your device — Minecraft will import both packs automatically.
  3. On the world you want to use it on:
    • Open Behavior Packs, activate Ember Ward.
    • Open Resource Packs, activate Ember Ward.
  4. In the world's Experiments menu, enable Beta APIs
  5. Launch the world. The console will print [Ember Ward vX.X] loaded on first load.

If on-screen messages display as raw keys like ember_ward.entering, the resource pack is not active. Re-check step 3.


Customization

All tuning lives at the top of scripts/main.js inside the CAMPFIRES and GLOBAL objects. Edit numbers, save, reload the world.

Common adjustments documented in the in-file comments:

  • Change heal rate per campfire type
  • Change ring radii
  • Add custom hostile mob type IDs
  • Adjust teleport step distance, jitter, or iteration cap
  • Change which entities count as "guardians" (the entities that wake a campfire)
  • Change action bar text by editing the .lang files in the resource pack

Known Limitations

Transparency matters more than a polished sales pitch, so:

  • Persistence is not stored between sessions. Active campfires are rediscovered when players move near them after a server restart.
  • Campfires in unloaded chunks do not act.
  • Mobs that are already on fire from an external source (a flame arrow, for instance) may have their fire duration shortened to 1 second while inside the burn ring. This is a side effect of the refresh-decay model used to make effects stop instantly when the mob leaves the radius.
  • Action bar messages use the game's native fade timing, so the "leaving" message appears briefly even if you re-enter quickly. This is intentional.

What Ember Ward Is Not

  • It does not change campfire crafting, recipes, or visuals.
  • It does not add new items, blocks, or recipes.
  • It does not prevent hostile spawning at the engine level — Bedrock does not expose a real pre-spawn cancel hook. Instead, hostiles that spawn inside a campfire's protected area are immediately set on fire or teleported out, which is effectively equivalent for gameplay.
  • It does not require, conflict with, or interact with any specific other add-on by default. Custom modded hostiles may need their type IDs added to the hostile override list.

Compatibility

Tested against Bedrock 1.21.50 through current builds. Works on:

  • Single-player worlds
  • Local LAN worlds
  • Dedicated Bedrock servers running script API (BDS)
  • Realms (subject to whether Realms supports beta APIs in your version)

Multiplayer-safe: each player gets independent HUD state.


Feedback and Bug Reports

If you spot a bug, find a hostile mob that is not being handled, or have a suggestion (custom radii, additional languages, etc.), please leave a comment on the CurseForge project page so it can be tracked.

When reporting, please include:

  • Bedrock version
  • Whether you have other add-ons active
  • The type ID of the mob involved if relevant
  • A short description of what you expected versus what happened

Credits and Inspiration

Ember Ward draws inspiration from two well-known Java Edition mods that explored similar ideas in their own way: "No Hostiles Around Campfire" and "Healing Campfires" by Serilium.
Both are great examples of single-feature mods that change how a player thinks about a vanilla block. Ember Ward is not a port of either project — Bedrock and Java are different engines with entirely different APIs — and shares no code, assets, or content with them. The original authors' work simply showed that campfires could mean more than warmth and food. Credit where credit is due.


License

You are free to use this add-on in your worlds, servers, and content creation (videos, streams, etc.). Redistribution, re-uploads to other platforms, or modified forks require attribution to the original project page on CurseForge.

 

The Ember Ward Team

profile avatar
  • 1
    Projects
  • 7
    Downloads
Donate