This datapack adds sensible improvements and quality-of-life to the Trident to make it a viable melee and ranged weapon adjacent to the Sword.
Requires: Minecraft 1.21.x +
The changes are intended to be as fairly balanced as possible. For balance issues and bugs, please open an issue here on Github.
For more detail, see Features and for unfinished work see TODO!
Simply download the archive from Releases, create a new folder named improved-tridents within the datapacks folder, and extract the downloaded archive into that improved-tridents folder.
If downloading from Modrinth:
- use the Modrinth app to install it
- or you may download the archive, create a new folder named
improved-tridentswithin thedatapacksfolder, and extract the downloaded archive into thatimproved-tridentsfolder.
Important note: If you have an old version and are NOT using the Modrinth App, be sure to delete the entire folder (improved-tridents folder) from datapacks before installing!
Recipe: 3 Prismatic Shards + 2 Breeze Rods
A single trident smelts into 1 Breeze Rod
Tridents enchanted with Loyalty always return from the Void (pretty nice for the End)
4. Enchantments (see TODO for the unfinished stuff)
- Looting - mobs to drop more items and increases the chances of rare drops
- Loyalty - has 30% faster recall-to-hand when thrown
- Fire Aspect - melee attack sets attacked targets on fire
- Knockback - increases melee knockback
- Piercing1 - arrows / projectiles to pass through entities
- Impaling1 2 - deal extra damage to all wet mobs (in water/rain/waterlogged blocks) and aquatic mobs
- BIG THANK YOU to Special_TT for this feature!
- Special_TT opened an issue permitting me to use his [VET]Vanilla Enchantment Tweaker datapack as reference for this implementation!
- Sharpness2 - increases melee and ranged/thrown damage
- Smite2 - increases damage to undead mobs (Bogged, Drowned, Husk, Phantom, Skeleton, Wither, Wither Skeleton, Zoglin, Zombie, Zombie Villager, Zombified Piglin)
- Bane of Arthropods2 - increases damage to arthropod mobs (spiders, cave spiders, bees, silverfish, and endermites)
1 Piercing may not be applied with Impaling
2 Only ONE of these enchantments (Impaling / Sharpness / Smite/ Bane of Arthropods) may be applied
Provides the following enchantments with the same vanilla weights as Sword / crossbow enchants:
- Trident returns to inventory slot it was thrown from
- dev note: tag the trident when thrown, save slot value, then run an if command to check if the tag exists and send it to that slot / offhand
- Enchantments
- Piercing1 - arrows / projectiles to pass through entities
-
Repairable Tridents - use breeze rod(s) to add durabilityCannot add recipes to Anvil :(
-
Combat Tests update(unreleased experimental snapshot in 2019/2020 - official wiki link):Not possible to change item base stats globally - functionality does not exist for datapacks :(
The enchantment changes might be doable though!
- Data Pack
- Tag
- Purpose: group different game elements together (also called registry tags)
- Path:
data/<namespace>/tags/function/<name>.json...- not limited to
function... can useblock,itemetc ...
- not limited to
- Loot table
- Path:
data/<namespace>/loot_table/<name>.json - "Vanilla loot tables are grouped into categories with some tables being in subfolders of those"
- Ie. - the file for zombies would go in:
<data pack name>/data/minecraft/loot_table/entities/zombie.json. This makes every zombie in that world use the datapack's loot table rather than the default zombie loot table.
- Ie. - the file for zombies would go in:
- Path:
- Loot context
- Purpose: set of parameters available to loot tables, predicates, item modifiers, and number providers. Used to determine if a given loot table or predicate is valid to that use case, allowing this check to be done when the data pack is loaded, rather than at runtime
- Item modifier
- Purpose: apply modifications to item stacks, such as adjusting the stack size or adding enchantments
- Path:
data/<namespace>/item_modifier/<name>.json
- Attribute->Modifiers
- Purpose: values that determine certain properties of mobs, armor stands, and players. Attributes also have modifiers that adjust the strength of their effects
- Predicates (requirements)
- Purpose: check conditions within the world
- Enchantments definitions
- Path:
data/<namespace>/enchantment - Example Implementation: https://assets.mcasset.cloud/1.21.4/data/minecraft/enchantment/looting.json
- Path:
- Recipes - shaped crafting
- Path:
data/<namespace>/recipe
- Path:
- Function (Java Edition)
- Path:
data/<namespace>/function - Path->Tag:
data/namespace/tags/function/load.json|tick.json - Commands
- Path:
| Name | Value |
|---|---|
| Base Damage (melee) | 9 ![]() |
| Base Damage (range) | 8 ![]() |
| Attack Range | 3 blocks |
| Base Durability | 250 |
| Attack speed (melee) | 1.1 |
| Attack speed (range, Loyalty III) | 30 blocks/s return time |
Enchants - wiki link
** Loyalty and Channeling are incompatable with Riptide
Impaling (damage/level) - wiki link
Only affects all aquatic mobs




