
Welcome to Amethyst Core, a library mod focused on building magically-themed mods! It currently powers *[Amethyst Imbuement](https://www.curseforge.com/minecraft/mc-mods/amethyst-imbuement)* and other upcoming mods in that family. While being magically themed, this library has a lot of other functionality too!
See the **[wiki](https://github.com/fzzyhmstrs/ac/wiki/Amethyst-Core-Home)** for more details, as well as the KDoc within the source.
[](https://bisecthosting.com/fzzyhmstrs)
There is a lot you can do with Amethyst Core, including but not limited to:
* Implementing your own Modifier System; a parallel alternative to _Minecraft's_ Enchantment system
* Creating extensions for _Amethyst Imbuement_
* Creating distinct magic mods that have compatibility with _Amethyst Imbuement_
* Implementing a consistent and auto-syncing configuration system
* Building a magical wand with any number of abilities
* Building modular _Trinkets_
* Easily registering custom item models a la the Trident
* Registering to a ticking Event Registry
* Building and registering additions to loot tables easily
* Spawn particles that track the player and visually appear where desired on the player's screen
* Register persistent effects that you want to trigger over time without needing to track the effect within custom ticking code
And much more!
## Modifiers
The [Modifier Framework](https://github.com/fzzyhmstrs/ac/wiki/Modifier-Framework) is a flexible and extensible system designed as a parallel to the vanilla Enchanting system. Modifiers aim to solve two of the biggest problems I found with Enchanting: They are easily removable, and they do not internalize their functionality (besides a couple damage methods). Enchantments are also more boring than they could be, displaying their tier with a simple number. Modifiers aim to fix all of those issues!
* Modifiers are designed to be permanent, acting more like affixes. Grindstones can't remove them, for example.
* Modifiers internalize their functions, and can be called as one unit rather than piecemeal.
* Modifiers act via a "family tree" that allow for flavorful tiers. Think of a sword going from "Rusty" to "Shiny" to "Gleaming" etc.
_The library comes with builtin helper method for displaying modifiers_

See the wiki link above for more details on these features. Once implemented, a Modifier system can do just about anything. _Amethyst Cores_ built-in `AugmentModifier` does things from affecting mana cost and cooldown, to changing spell damage or range, to even triggering advanced effects like afflicting every mob in a 12 block radius around the caster with Wither upon any successful spell cast.
Modifers can be as simple as a container for passing vanilla `AttributeModifiers`, or much more complex than the `AugmentModifier` described above. They could even be used purely for flavor, if desired!
## Magic Mod Utilities
_Amethyst Core_ contains everything you need to develop a magic-themed mod in the style of _Amethyst Imbuement_. The library, however, does not include any crafting or progression systems. This is up to you! YOu can either follow along exactly how _Amethyst Imbuement_ does, with imbuing recipes, and tiered augments in scepters, or craft your own unique systems. Blood rituals maybe? Nature-themed magic? Sky's the limit.
#### Scepters
A framework for building a wide array of _Amethyst Imbuement_ style Scepters is included, from the most barebone `AbstractScepterItem` you can take almost any direction, to a `DefaultScepterItem` that is almost fully implemented for creating an _Amethyst Imbuement_ compatible Scepter(s) of your own.
#### Augments
Build enhanced enchantments either for use with Scepters, or for adding to trinkets and equipment. Utilities for advanced functionality like passive ticking effects, effects on equip, etc.
#### Trinkets
Utilities for building _Trinket_ compatible items that can utilize the Augment system. As seen in _Amethyst Imbuement_, this allows for modular trinkets and items that aren't limited to predefined benefits.
#### Mana-based Items
Interfaces and utilities for developing an item that uses "mana" instead of durability. Items won't break at minimum durability, they can be easily "healed" and there is a Helper for auto-healing (mana regeneration). Items can also be checked to see if a certain action is possible with the current mana in the item.
## And Much More!
Look through the wiki and source code documentation for all that _Amethyst Core_ has to offer!