Adds new blocks, improve data generation.
Content changes
- Add smooth stone stairs.
- Fixed the mirror's broken model.
- Added log slabs.
- Adjusted item groups for some items.
Internal changes
- Ensure that the texture generator cache works properly.
- Removed data generation classes from final builds.
- Scary method.
- Fixed language file merging during data generation.
- Properly copy images during the texture generation process.
Adds a custom model.
Content changes
- Added the Crystal Curl item model.
- Added the Ditty Dime item.
- Added dyed amethyst shards.
- All dyed amethyst clusters and buds must be harvested with silk touch.
- Dyed amethyst clusters broken without silk touch now drop shards.
- Added Parkson Inc. Company-Issued Hard hat.
- Added Blowout Microphone model.
- Added Blowout Trophies.
- Added Pet Rock.
Essentially a rewrite of v1.*, adding/updating heaps of documentation and refactoring the entire codebase.
Internal changes
- All code is now within
dev.jaxydog.astral
, instead ofdev.jaxydog
. - Updated access widener entries.
- Fixed some possible crashes.
- Updated dependency versions.
- Updated mod entrypoints.
- Added
isInitialized
methods for each environment. - Verified that each entrypoint is only initialized once.
- Added
- Updated registration system.
- Move
Generated
intoRegistered
. - Rename multiple usages of
dataGen
into variants ofgenerator
. - Rename
getRegistryIdPath
togetRegistryPath
. - Rename
register
toregisterCommon
. - Moved all registered maps into
dev.jaxydog.register
- Streamlined
RegisteredMap
implementation. - Added the
RegistrationPriority
annotation, which allows for complete control over the order in which fields are registered.
- Move
- Updated item content structure.
- New
LoreHolder
interface. - New
BowlItem
class. - Move
BottleItem
,Colored
, andCustomized
intodev.jaxydog.astral.content.item
. - Rename all
Custom*Item
classes (excluding theCustom
interface itself) toAstral*Item
. - The
Customized
interface'sgetCustomModelData
method now returns anOptional
. - Item groups have been moved to
dev.jaxydog.astral.content.item.group
. - Item groups have been renamed from
Custom*ItemGroup
toAstral*ItemGroup
. - All item classes have been slightly refactored.
- Rewrote the entire
Sprayable
interface into the newSprayed
interface. - Instances of
Sprayable
have undergone major refactors. - Renamed cloud armor to cloudy armor.
- New
- Updated block content structure.
- Rename all
Custom*Block
classes toAstral*Block
. - Move
Colored
intodev.jaxydog.astral.content.block
. - Renamed "Dyeable" amethyst to "Dyed" amethyst.
- Simplify dyed amethyst colorization.
- Rename all
- Updated sound content structure.
- Added
SoundContext
record class.
- Added
- Vastly improved color and image manipulation support.
- Refactored
ColorUtil
into a newutility.color
package. Rgb
now stores its components as bytes.- Created a new
Rgba
class for transparency support. - Created new Mapper classes for storing color manipulation methods as lambdas / records.
- Created
ColorHelper
, which is based off of the oldColorUtil
class.
- Refactored
- Slightly refactored the mob challenge system.
- Renamed the utility interface to
ChallengeHelper
.
- Renamed the utility interface to
- Updated power content structure.
- Removed deprecated powers.
- Updated data structure.
- Renamed some fields and methods within the
MoonPhase
data type. - Moved custom classes into the
custom
package. - Added support for automatically registered data loaders.
- Refactored currency implementation to better match other implementations within the mod.
- Renamed some fields and methods within the
- Updated effect content structure.
- Updated sound content structure.
- Updated trinkets content structure.
- Updated powers content structure.
- Cleaned up and documented all mixins.
Content changes
- Updated contribution guidelines.
- Spray bottle block interactions now retain block state where able.
- Challenge scaling distance calculations now ignore height differences.
- Cobbled sandstone is now mineable with a pickaxe.
- Add some custom models for lore.
- Fixed a bug that allowed players to receive chocolate milk from red mooshrooms.
- Fixed a bug that caused sugar cane to be bone-mealed into a cactus block.
- Added recipes for multiple lore items.
- Add Nix's ears.
Content changes
- Added cobbled sandstone.
- Crafted using sandstone within a stone-cutter.
- Added placeholder models. (Thank you, Sol!)
- Added Luma's antennae.
- Added August's anti-death protocol.
- Removed appy sauce.
- Added custom lantern models. (Thank you again, Sol!)
- Added Luma's lantern (
glowstone_dust
). - Added Uriel's lantern (
netherite_ingot
).
- Added Luma's lantern (
- Darkened brown amethyst slightly.
- Updated dependencies.
- Fabric loader 0.15.7
- Fabric API 0.92.0
- Pehkui 3.8.0
- Trinkets 3.7.2
Internal changes
- Added support for status effects.
- Improved support for potions.
- Made sprayable items more generic.
- Adjusted the range for sound pitches from
0.5-2.0
to0.01-255.0
- Refactored and cleaned up the currency system implementation.
- Reorganized custom power file locations.
- Deprecated
astral:scale
. - Improved color manipulation support.
- Reimplemented data generation structures.
- Added support for texture and language file generation.
- Refactor dyeable amethyst implementation.
- Improve item group support.
- Added recipe for shroomlight.
- Added recipe for gilded blackstone.
- Major internal refactoring.
- Removed unused command support.
- Removed unused entity support.
- Several classes relocated.
- Duplicate logic condensed into interfaces.
- Mixin accessors converted into injected interfaces.
Content changes
- Added the sinister effect, as well as corresponding potions.
- Added chocolate & strawberry milk (thank you, Ice :]).
- Added a pink cow variant (it's where pink milk comes from).
- Added spray potions.
- Added a recipe for crafting shroomlight.
- The
playsound
command now supports any pitch from0.01-255.0
- Added the
astral:ticking_cooldown
andastral:action_on_key
powers. - Added the
astral:unobstructed_block_in_radius
power. - Added the
astral:modify_scale
power, intended to replaceastral:scale
. - The
astral:advancements
power is now added to all players globally. - Added dyeable amethyst buds and budding amethyst.
- Added two new item groups.
- Added block and item tags.
astral:budding_amethysts
astral:large_amethyst_buds
astral:medium_amethyst_buds
astral:small_amethyst_buds
- Added several new lore items for Star, textures courtesy of the one and only StarMoney.
- Values stored within a
DyeableMap
are now registered in color order rather than enum ordinal order. - Many, many things are now documented! See our new documentation page.
Internal changes
- Increased Fabric loader version to 0.15.5
- Increased Fabric API version to 0.91.0
- Increased Fabric-Loom version to 1.5-SNAPSHOT
- Increased Gradle version to 8.5
- Added dependency to the Trinkets mod.
- Cleaned up most mixins. Notable changes include:
- Drastically improved
SonicBoomTaskMixin
. - Improved
RamImpactTaskMixin
. - Improved
PufferfishEntityMixin
.
- Drastically improved
- Dolphins now have challenge scaling applied.
- Access-widened the SoundEvent class to allow extension.
- Added
CustomSoundEvents
. - Created the
SprayableEntity
interface.- Implemented for
CatEntity
. - Implemented for
FoxEntity
.
- Implemented for
Content changes
- Added a new cosmetic helmet slot.
- Added
astral:spray_bottle
, which allows a player or dispenser to modify blocks or cause behaviors in entities.- Crafted using 5 glass blocks, 1 iron ingot, 1 piston, and 1 iron nugget.
- Has 48 uses before becoming emptied. Using a water source block or filled cauldron refills the bottle.
- Using any oxidizable block will progress its oxidation stage once.
- Using any campfire will put it out.
- Using any fire block will extinguish it.
- Using any farmland block will saturate it.
- Using any sponge will moisten it.
- Using any entity that implements the
SprayableEntity
interface will scare it. - Using any burning entity will extinguish it.
- Added a
astral:action_on_spray
Origins power.- Can be prioritized over other
action_on_spray
powers by increasing thepriority
field to be above zero. - Supports an
item_action
anditem_condition
- Supports a
bientity_action
andbientity_condition
- Supports a
block_action
andblock_condition
- Can be prioritized over other
Internal changes
- Improved how colors are handled and transitioned.
- Improved support for data generation.
- Overhauled content registration.
- Package has been moved out of
utility
. Registerable
has been renamed toRegistered
.Registerable.Main
has been renamed toCommon
.Registerable::getRawId
has been renamed togetIdPath
.ContentContainer
has been renamed toContentRegistrar
.Skip
has been renamed toIgnoreRegistration
.Registerable.Env
has been renamed and moved toRegistrationEnvironment
.- Removed data generation from the auto-registration system.
- Reimplemented and simplified the field registration method.
- Updated all pre-existing
Registerable
classes to implement the new interface.
- Package has been moved out of
- Dyed amethyst blocks and clusters now retain their
DyeColor
information. - Added the NBT tag
ForceChallengeScaling
that force-enables mob challenge scaling for an entity.
Content changes
- Added items for St4rM0N3Y's lore (Featuring sprites by the all/any themselves).
- Added
astral:rotten_chorus_fruit
- Added
astral:living_sculk
- Added
astral:pig_card
- Added
astral:appy_sauce
- Added
astral:void_essence
- Added