EntityJS
With EntityJS, server owners and pack makers register custom entities, set their attributes and spawn rules, and attach AI through KubeJS scripts.
What it does
Custom entities are defined in JavaScript. A script can register a new entity, set its health, speed and damage, change the behavior of existing entities through an entity modification event, and control where and how often they spawn. Spellcasting behavior can be attached to any mob through the goal event, or a fully custom spellcaster can be built with its own spell set.
EntityJS depends on KubeJS and Geckolib, and both must be installed beside it. Animation support is provided through LioLib, a fork of Geckolib 4 that backports fixes to 1.19.2, which Geckolib itself no longer supports. The mod runs on Fabric, Forge and NeoForge, and it is released under the GNU General Public License v3.0 only, so the code is open source. Client and server both need it. Files cover 1.19.2, 1.20.1, 1.21 and 1.21.1, with the latest Fabric and Forge build at 0.7.5 for 1.20.1 and the latest NeoForge build at 1.5.2 for 1.21.1.
Key features
Dynamic entity registry
Custom entities are registered from scripts, with their attributes and behaviors defined in code.
Entity modification
An entity modification event changes the methods of existing entities without replacing them.
Animation support
Entities can play smooth animations, provided through LioLib on every supported version.
Spawn control
Spawn conditions, rates and locations are specified for each custom entity.
Attribute and AI control
Health, speed, damage and other attributes can be tuned, and a broad set of AI behaviors is available to scripts.
Gallery
Compatibility
Latest build for each game version and loader.
Only full game releases are shown. This mod publishes no snapshot builds.
Requirements
Dependencies declared by the latest file for each loader.
Required by 2 mods
Use cases
Scripted pack mobs
Pack makers can add mobs with their own stats, spawn rules and behaviors without writing a Java mod.
Spellcasting enemies
The goal event lets any mob cast spells, which suits boss fights and modded encounters.
Who it’s for: Pack makers and server owners who want to script entities in KubeJS rather than build a separate mod.
How it compares
KubeJS Iron's Spells is a Forge and NeoForge addon for 1.19.2 – 1.21.1, released under the MIT License and open source. KubeJS Offline targets 1.18.2 – 1.21.1 for Fabric, Forge and NeoForge, is not open source and is licensed as All rights reserved. Entity Tweaks Configuration is server-side only and open source under the MIT License, covering 1.19.2 – 26.2 on all three loaders.
| Mod | Loaders | Game versions | Environment | Updated |
|---|---|---|---|---|
| EntityJS | Fabric, Forge and NeoForge | 1.19.2 – 1.21.1 | Client and server | 2026-09-30 |
| KubeJS Iron's Spells | Forge and NeoForge | 1.19.2 – 1.21.1 | Client and server | 2026-03-15 |
| KubeJS Offline | Fabric, Forge and NeoForge | 1.18.2 – 1.21.1 | Client or server, optional | 2026-07-04 |
| Entity Tweaks Configuration | Fabric, Forge and NeoForge | 1.19.2 – 26.2 | Server-side only | 2026-06-27 |
Questions
Which loader should be used with EntityJS?
Does EntityJS need Geckolib?
Does the server need EntityJS?
In the catalog
EntityJS is one of 3,514 Library mods on ModsFinder, and one of 2,348 Library mods for Fabric. 32,366 mods support Minecraft 1.21.1.
More from Notenoughmail
Similar mods
What the author says
Dynamic Entity Registry: Easily register custom entities and define their attributes and behaviors using JavaScript. Entity Modification: Modify existing entity methods with the entity modification event for further customization.
Official listing
- Modrinth page
- modrinth.com/mod/entityjs
- Owner
- Notenoughmail
- Published
- 2024-01-27
- Updated on Modrinth
- 2026-09-30
- Facts verified
- 2026-10-15
