Gear Core

Quick rating

Gear Core

No reviews yet

Library mod for the creation of equipment modifiers that can apply entity attributes or track a variety of events like taking damage, killing mobs, and more.

No Theme
No Genre
QoL & Tweaks
API/Library
Mod Loaders
Fabric
Quilt
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Where It Runs
Client and Server

Must be installed on both the client and the server.

About

Project Details

Type
Mod
License
MIT License
Latest Version
gear_core-0.3.8+1.20.1.jar
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

About

Description

Gear Core Heading Banner

New as of 0.3.0, Gear Sets!

Create custom gear set bonuses via datapack! Create RPG set bonuses for any combination of items, the sets can have tiers, custom formatting, and can be applied to virtually any item! Tooltips for your set bonuses appear automatically in the relevant sets, and there is even EMI support for displaying all of the sets, their items, and the bonus descriptions!

Gear sets support Attributes, including custom attributes, and Equipment Modifiers. Currently only attributes can be added strictly via datapack, modifiers have to be created in code before being referenced in a gear set. Somewhere in my "want to do" list is datapack-based equipment mods, so stay tuned!

Here is an example Gear Set from Imbued Gear. All of the bonuses are active in this picutre: Example Gear Set Tooltip

And here is the JSON used to create it. Soon I'll have documentation of the format in wiki.

{
  "name": "set.imbued_gear.lich_kings",
  "active_formatting": [
    "GREEN",
    "BOLD"
  ],
  "items": {
    "tag": "imbued_gear:lich_kings_gear"
  },
  "bonuses": {
    "2": {
        "name":"lich_kings_amplifier",
        "attribute": "amethyst_core:spell_amplifier",
        "amount": "2.0",
        "operation": "ADDITION"
    },
    "4": {
      "name":"lich_kings_duration",
      "attribute": "amethyst_core:spell_duration",
      "amount": "0.15",
      "operation": "MULTIPLY_TOTAL"
    },
    "5": "imbued_gear:horde_master"
  }
}

Equipment Modifiers

Library mod that facilitates the creation of equipment modifiers that can apply standard Minecraft entity attributes or track a variety of events like taking damage, killing mobs, mining blocks, and more. These modifiers aren't affected by grindstones, enchanting tables, or other Minecraft features. These modifiers use the Fzzy Core modifier framework; as such they can be arranged into lineages that pass from one to the next rather than simply stacking numerically.

iXATO6K.png U7qHdp4.png cf27a9e31c423f6b3d0d02a644a395f05508f678.png

Current Item Support and Example

Gear Core has built-in modification support for ArmorItem, ToolItem, BowItem, CrossBowItem, ShieldItem, TridentItem, and Trinket, but provides a framework (with the help of Fzzy Core) for making any other type of item modifiable.

Example of Equipment Modifiers in action via Gearifiers:

https://i.imgur.com/aPJanNb.png

Modification Features of an Equipment Modifier

Equipment modifiers can affect the following aspects of equipment:

Attribute Modifiers

Standard Minecraft Attributes can be attached to equipment modifiers. These attributes stack on top of whatever innate attributes the gear has and on top of other modifications.

Durability Modifier

The durability of the gear can be modified using a Fzzy Core PerLvlI instance, which allows for flat changes to durability or percentage changes (or both!).

Post Hit Events

Post-hit event consumers can be added to an Equipment Modifier. These consumers are fired on the postHit method of ItemStack, allowing implementations to perform actions after a player has hit something.

Post Mine Events

Similar to the post-hit events, consumers can also be added for postMine, which fires after a player has successfully broken a block.

On Use Events

Add activated abilities to items! These events fire on the use method, like any right click action. The events only fire if the items innate use isn't successful.

Incoming Damage Modification and Event

Damage modification functions can be attached to equipment modifiers, both allowing for event code upon a player getting damaged, and for damage modification (reduction by 10% of all magic damage, for example).

Mob Kill Events

An event that fires when a player kills a mob, similar structure to all the other events, implementations pass a special consumer to the Modifier for it to process.

Other Modifiers

Other types of modifiers can be attached to equipment modifiers, with a ModifierProcessor available so an implementation can decide what to do with them.

Modifier Rolling System

Gear Core provides a modifier randomization system for adding of random modifiers to certain gear. Check out Gearifiers for a thorough example of this system in action. The short story of how this system works:

Modifier Targets

Gear Core adds EquipmentModifierTargets. These work is a similar manner to EnchantmentTarget in Minecraft, but they are an extendable class rather than an enum. When the modifier rolling system is picking modifiers, it will only pick modifiers from the proper targets.

Weight

Like loot and other things in Minecraft, modifiers can be provided with a weight. This weight works exactly as you'd expect.. every modifier who matches up to the target is put into a pool X times based on it's weight, and the total pool is used for random modifier rolls.

Rarity

Modifiers can be given a rarity. This is an enum that defines the formatting of the modifier on the item tooltip, with the different rarities providing different colors (and some bold)

Rarity Format
Legendary Gold, Bold
Epic Light Purple
Rare Aqua
Uncommon Dark Green
Common Gray
Bad Dark Red
Really Bad Dark Red, Bold

Toll

Each modifier takes a certain toll on the rolling pool. The pool starts with a certain amount of toll it can spend, with each modifier added spending it's toll out of that pool until there isn't enough left for the next roll to succeed. The default toll is 5, with a default pool of about 5.75 on average.

Providing different tolls allows for fine tuning of selection probability.

Persistence and Availability for Rolling

A modifier can be created to be persistent, which prevents it from being removed on a reroll. This might be used for "innate" modifiers or for "cursed" modifiers.

Modifiers can also be marked as unavailable for random selection. This might be used, again, for "innate" modifiers that aren't part of a random chance system but are simply provided with every instance of the item.

Bisect Hosting Banner

Gear Core Heading Banner

Bisect Hosting Banner

New as of 0.3.0, Gear Sets!

Create custom gear set bonuses via datapack! Create RPG set bonuses for any combination of items, the sets can have tiers, custom formatting, and can be applied to virtually any item! Tooltips for your set bonuses appear automatically in the relevant sets, and there is even EMI support for displaying all of the sets, their items, and the bonus descriptions!

Gear sets support Attributes, including custom attributes, and Equipment Modifiers. Currently only attributes can be added strictly via datapack, modifiers have to be created in code before being referenced in a gear set. Somewhere in my "want to do" list is datapack-based equipment mods, so stay tuned!

Here is an example Gear Set from Imbued Gear. All of the bonuses are active in this picutre: Example Gear Set Tooltip

And here is the JSON used to create it. Soon I'll have documentation of the format in wiki.

{
  "name": "set.imbued_gear.lich_kings",
  "active_formatting": [
    "GREEN",
    "BOLD"
  ],
  "items": {
    "tag": "imbued_gear:lich_kings_gear"
  },
  "bonuses": {
    "2": {
        "name":"lich_kings_amplifier",
        "attribute": "amethyst_core:spell_amplifier",
        "amount": "2.0",
        "operation": "ADDITION"
    },
    "4": {
      "name":"lich_kings_duration",
      "attribute": "amethyst_core:spell_duration",
      "amount": "0.15",
      "operation": "MULTIPLY_TOTAL"
    },
    "5": "imbued_gear:horde_master"
  }
}

Equipment Modifiers

Library mod that facilitates the creation of equipment modifiers that can apply standard Minecraft entity attributes or track a variety of events like taking damage, killing mobs, mining blocks, and more. These modifiers aren't affected by grindstones, enchanting tables, or other Minecraft features. These modifiers use the Fzzy Core modifier framework; as such they can be arranged into lineages that pass from one to the next rather than simply stacking numerically.

iXATO6K.png U7qHdp4.png cf27a9e31c423f6b3d0d02a644a395f05508f678.png

Current Item Support and Example

Gear Core has built-in modification support for ArmorItem, ToolItem, BowItem, CrossBowItem, ShieldItem, TridentItem, and Trinket, but provides a framework (with the help of Fzzy Core) for making any other type of item modifiable.

Example of Equipment Modifiers in action via Gearifiers:

https://i.imgur.com/aPJanNb.png

Modification Features of an Equipment Modifier

Equipment modifiers can affect the following aspects of equipment:

Attribute Modifiers

Standard Minecraft Attributes can be attached to equipment modifiers. These attributes stack on top of whatever innate attributes the gear has and on top of other modifications.

Durability Modifier

The durability of the gear can be modified using a Fzzy Core PerLvlI instance, which allows for flat changes to durability or percentage changes (or both!).

Post Hit Events

Post-hit event consumers can be added to an Equipment Modifier. These consumers are fired on the postHit method of ItemStack, allowing implementations to perform actions after a player has hit something.

Post Mine Events

Similar to the post-hit events, consumers can also be added for postMine, which fires after a player has successfully broken a block.

On Use Events

Add activated abilities to items! These events fire on the use method, like any right click action. The events only fire if the items innate use isn't successful.

Incoming Damage Modification and Event

Damage modification functions can be attached to equipment modifiers, both allowing for event code upon a player getting damaged, and for damage modification (reduction by 10% of all magic damage, for example).

Mob Kill Events

An event that fires when a player kills a mob, similar structure to all the other events, implementations pass a special consumer to the Modifier for it to process.

Other Modifiers

Other types of modifiers can be attached to equipment modifiers, with a ModifierProcessor available so an implementation can decide what to do with them.

Modifier Rolling System

Gear Core provides a modifier randomization system for adding of random modifiers to certain gear. Check out Gearifiers for a thorough example of this system in action. The short story of how this system works:

Modifier Targets

Gear Core adds EquipmentModifierTargets. These work is a similar manner to EnchantmentTarget in Minecraft, but they are an extendable class rather than an enum. When the modifier rolling system is picking modifiers, it will only pick modifiers from the proper targets.

Weight

Like loot and other things in Minecraft, modifiers can be provided with a weight. This weight works exactly as you'd expect.. every modifier who matches up to the target is put into a pool X times based on it's weight, and the total pool is used for random modifier rolls.

Rarity

Modifiers can be given a rarity. This is an enum that defines the formatting of the modifier on the item tooltip, with the different rarities providing different colors (and some bold)

Rarity Format
Legendary Gold, Bold
Epic Light Purple
Rare Aqua
Uncommon Dark Green
Common Gray
Bad Dark Red
Really Bad Dark Red, Bold

Toll

Each modifier takes a certain toll on the rolling pool. The pool starts with a certain amount of toll it can spend, with each modifier added spending it's toll out of that pool until there isn't enough left for the next roll to succeed. The default toll is 5, with a default pool of about 5.75 on average.

Providing different tolls allows for fine tuning of selection probability.

Persistence and Availability for Rolling

A modifier can be created to be persistent, which prevents it from being removed on a reroll. This might be used for "innate" modifiers or for "cursed" modifiers.

Modifiers can also be marked as unavailable for random selection. This might be used, again, for "innate" modifiers that aren't part of a random chance system but are simply provided with every instance of the item.

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

2.9m
Total Downloads
CurseForge
2.5m
Modrinth
~400,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works