I created this plugin to provide convenient and powerful entity manipulation APIs for MCreator developers. Although I rarely use MCreator to create mods anymore, I still want to help those who continue using MCreator and struggle with entity-related operations.
This plugin integrates Epic Core API as a dependency and provides several entity manipulation procedure blocks that would otherwise be difficult or impossible to implement in vanilla MCreator.
Procedure Blocks
- Force Kill Entity - Set health to 0, trigger die(), drop loot, grant advancements, and remove the entity (death messages are not sent)
<Entity> - Force Set Health - Modify entity health through multi-phase process: vanilla fields, smart field scanning, and bytecode reverse tracking
<Entity> <Health> - Force Revive - Clear the entity's death flag and reset deathTime using VarHandle
<Entity> - Set Force Invulnerable - Enable/disable invulnerability with automatic health locking (locks health when enabled, unlocks when disabled)
<Entity> <Boolean> - Force Remove Entity - Deep cleanup including AI, boss bars, riding relationships, and all server/client containers
<Entity> - Lock Health - Lock health via bytecode hook (getHealth() returns locked value) and tick-based reset
<Entity> <Value> - Unlock Health - Remove health lock, allowing getHealth() to return actual health
<Entity> - Is Health Locked - Check if entity health is locked
<Entity> - Get Locked Health Value - Get the locked health value, or 0 if not locked
<Entity> - Force Get Health - Read real health directly from DATA_HEALTH_ID using VarHandle, bypassing custom implementations
<Entity> - Is Force Invulnerable - Check ECA invulnerability state via EntityData
<Entity> - Force Teleport - Directly modify position fields using VarHandle with automatic client sync
<Entity> <X> <Y> <Z> - Cleanup Boss Bar - Scan entity instance fields and remove all ServerBossEvent instances
<Entity> - Enable AllReturn
<Entity>⚠️ [DANGER] - Requires config enabled. Transform all boolean/void methods in the entity's mod package - Disable AllReturn - Turn off AllReturn and clear all transformation targets
- Is AllReturn Enabled - Check if AllReturn is active
- Set Global AllReturn
<Boolean>⚠️ [DANGER] - Requires config enabled. Enable/disable global AllReturn mode affecting ALL mods' boolean/void methods - Memory Remove Entity
<Entity>⚠️ [DANGER] - Requires config enabled. Remove entity via LWJGL internal channel - Add Health Whitelist Keyword - Add a keyword to health whitelist. Fields containing this keyword will be modified during health changes
<Keyword> - Remove Health Whitelist Keyword - Remove a keyword from health whitelist
<Keyword> - Add Health Blacklist Keyword - Add a keyword to health blacklist. Fields containing this keyword will be skipped during health changes
<Keyword> - Remove Health Blacklist Keyword - Remove a keyword from health blacklist
<Keyword> - Add Spawn Ban - Ban an entity type from spawning in the current dimension for specified time
<EntityType> <Seconds> - Is Spawn Banned - Check if an entity type is banned from spawning
<EntityType> - Get Spawn Ban Time - Get the remaining time (seconds) for an entity type's spawn ban
<EntityType> - Clear Spawn Ban - Clear the spawn ban for a specific entity type
<EntityType> - Clear All Spawn Bans - Clear all spawn bans in the current dimension
- Add Protected Package - Add a package prefix to the whitelist. Classes in protected packages will not be affected by AllReturn
<PackagePrefix> - Remove Protected Package - Remove a package prefix from the whitelist. Built-in protections cannot be removed
<PackagePrefix> - Is Package Protected - Check if a class name is protected by the whitelist
<ClassName>
All procedure blocks are located in the "Epic Core API" category (purple) in the procedure editor.
Requirements
- MCreator 2024.4
- Minecraft Forge 1.20.1
- Epic Core API Dev JAR (for development)
- Epic Core API Mod (runtime dependency for players)
Installation for Developers
Step 1: Download the Dev Version
Download from Epic Core API Releaseseca-1.20.1-forge-1.0.8-fix-dev.jar
Important: You must use the Dev version during development, otherwise you will encounter Mixin obfuscation issues when running the workspace.
Step 2: Install the Dev JAR
Place the dev jar file in:
<user home>/.mcreator/lib/eca-1.20.1-forge-1.0.8-fix-dev.jar
Locations:
- Windows:
C:\Users\<YourName>\.mcreator\lib\ - macOS/Linux:
~/.mcreator/lib/
Create the folder if it doesn't exist.lib
Step 3: Install the Plugin
- Download the plugin ZIP file from releases
-
Place it in:
<user home>/.mcreator/plugins/ - Restart MCreator
Step 4: Enable Java Plugins
- Open MCreator preferences (File → Preferences)
- Go to the "Plugins" section
- Enable "Java Plugins" option
- Restart MCreator if prompted
Step 5: Configure Your Workspace
- Open or create a workspace (Forge 1.20.1)
- Go to Workspace → Workspace settings → External APIs
- Check "Epic Core API" in the external dependencies list
- Click Save and regenerate code
- Wait for Gradle to sync
Step 6: Use the Procedure Blocks
- Create a new procedure
- In the procedure editor, find the "Epic Core API" category (purple color)
- Drag and drop the blocks you need
For Players
All mods created with this plugin require Epic Core API as a mandatory dependency.
Players must download and install the Epic Core API mod from CurseForge to use any mods built with this plugin.
Links
- Epic Core API Mod: https://www.curseforge.com/minecraft/mc-mods/epic-core-api
- Source Code: https://github.com/CJiangqiu/EpicCoreAPI
- Dev Releases: https://github.com/CJiangqiu/EpicCoreAPI/releases
I modified some settings to make it usable in 2025.3.