Tags
Creators
Details
Licensed GPL-3.0-only
Created 4 years ago
Updated last month
All versions
2.5-mc26.2
Release
2.5-mc26.22 months ago 476
Uploaded by
Compatibility
Minecraft: Java Edition
26.2
Platform
Fabric
Supported environments
Client and server
Required content
Any compatible version
Changes
- Removed the
permanentfield fromFireData. - Revamped
FireTypes to be much more flexible. Their new data structure and functionality is as follows:source_settings:fire_source_blocks: A block's ID, a list of block IDs, or a Block Tag defining which blocks use this Fire Type. (i.e, Fire, Campfire, Torch.)supporting_blocks: A block's ID, a list of block IDs, or a Block Tag defining which blocks support this Fire Type on top of them.
damage_settings:damage: The amount of damage to inflict while burning.vulnerable_damageThe amount of damage to inflict while an entity who is vulnerable to this Fire Type is burning.vulnerable_entity_types: An entity type ID, a list of entity type IDs, or an Entity Type Tag defining which entity types are vulnerable to this Fire Type.damage_immune_entity_types: An entity type ID, a list of entity type IDs, or an Entity Type Tag defining which entity types are immune to damage from this Fire Type.
spread_settings:spreads_from_zombie_attack: Whether this Fire Type can be spread to the victim of a burning Zombie's attack.spreads_from_ignite_enchantments: Whether this Fire Type can be spread to the victim of an attack of a burning entity using an enchantment that ignites entities.replaceable_by_other_fire_types: Whether this Fire Type can be replaced by another Fire Type while burning.always_apply_to_entity_types: An entity type ID, a list of entity type IDs, or an Entity Type Tag defining which entity types will always use this Fire Type while burning.cannot_apply_to_entity_types: An entity type ID, a list of entity type IDs, or an Entity Type Tag defining which entity types cannot use this Fire Type.
textures:texture_0: The first texture to use for this Fire Type.texture_1: The second texture to use for this Fire Type, also used for the first-person burning overlay.
particle_settings:smoke_particle: TheParticleOptionsto use for this Fire Type's smoke.large_smoke_particle: TheParticleOptionsto use for this Fire Type's large smoke.smoke_config_predicate: AConfigPredicate, optionally used to dictate whethersmoke_particleandlarge_smoke_particlecan be used.campfire_cosy_smoke_particle: TheParticleOptionsto use for this Fire Type's campfire cosy smoke.campfire_signal_smoke_particle: TheParticleOptionsto use for this Fire Type's campfire signal smoke.campfire_smoke_config_predicate: AConfigPredicate, optionally used to dictate whethercampfire_cosy_smoke_particleandcampfire_signal_smoke_particlecan be used.lava_particle: TheParticleOptionsto use for this Fire Type's lava particle (Used for campfires.)lava_config_predicate: AConfigPredicate, optionally used to dictate whetherlava_config_predicatecan be used.
config_predicate: AConfigPredicate, optionally used to dictate whether this Fire Type can be used.
- Removed the built-in
frozenlib:soul_fireFireType. - Added a builder for Fire Types to make their creation much simpler.
- Added the
FireEventsclass, containing the following Events:SELECT_FIRE_TYPE- Is triggered when an Entity is catching on fire and the FireType is being selected.
- Is used to modify the FireType to be set.
AFTER_FIRE_TYPE_SET- Is triggered after the FireType is set on an Entity.
ON_ENTITY_BURN_TICK- Is triggered each time an Entity is burnt from a fire lingering on them.
SELECT_FIRE_BLOCK_STATE- Is triggered when a Fire block is selecting which BlockState to place as.
- Is used to modify the BlockState to be set.
- Added
ClipGroups.- Clip Groups define a list of blocks that crosshair clipping can pass through, while inside one of their blocks.
- For example, while inside Wilder Wild's Mesoglea, Mesoglea blocks are no longer selected and you can attack entities and place/break blocks as normal.
- Added the
frozenlib:clip_groupdynamic registry.- Each Clip Group simply contains a block's ID, a list of block IDs, or a Block Tag.
- Clip Groups define a list of blocks that crosshair clipping can pass through, while inside one of their blocks.
- Added the
WaterLikeBlockinterface.- Is used to create blocks that have water-like properties, such as Wilder Wild's Mesoglea.
- Can optionally support Bubble Columns.
- Provides different particles and a fog color to use in place of Water's.
- Added the
frozenlib:water_like_typedynamic registry.- Provides a block's ID, a list of block IDs, or a Block Tag that list the blocks within a specific Water-Like Type.
- Provies swimming, splashing, enter, exit, and ambient loop sounds to use for the Water-Like Type.
- Added
ConfigPredicates!- Provides a way to utilize config from a data-driven context.
- These are modeled after Mojang's
BlockPredicates, aiming to be easy to utilize in Data Packs. - Multiple predicate types are available, including:
any_of: Returnstrueif any of the containedConfigPredicatesreturnedtrue.all_of: Returnstrueif all the containedConfigPredicatesreturnedtrue.all_match: Returnstrueif all the containedConfigPredicatesreturned the same value.not: Returnstrueif the containedConfigPredicatereturnsfalse.exists: Returnstrueif the aConfigEntrywith the providedIDexists.true: Always returnstrue.- The primary five predicate types are as follows:
equal_to: Returnstrueif theConfigEntry's value matches thetargetvalue.greater_than: Returnstrueif theConfigEntry's value is greater than thetargetvalue.greater_than_or_equal_to: Returnstrueif theConfigEntry's value is greater than or equal to thetargetvalue.less_than: Returnstrueif theConfigEntry's value is less than thetargetvalue.less_than_or_equal_to: Returnstrueif theConfigEntry's value is less than or equal to thetargetvalue.- These all share the same two fields:
entry: The targetConfigEntry'sID.target: The value the targetConfigEntry's value is being compared with.
- Can be used as a
BlockPredicatevia theasBlockPredicatemethod. - Can be used as a
PlacementFiltervia theasPlacementFiltermethod. - Can be used as a
LootItemConditionvia theasLootConditionmethod. - Can be used as a
ConditionSourcevia theasConditionSourcemethod.
- Added the
ConfigSelectorConfigured Feature, configured withConfigSelectorFeatureConfiguration:config_predicate: TheConfigPredicateto use.feature_if_true: ThePlacedFeatureto be placed ifconfig_predicatereturns true.feature_if_false: ThePlacedFeatureto be placed ifconfig_predicatereturns false.
- Refactored and renamed many worldgen-related classes to be more consistent with Vanilla.
ColumnWithDiskFeatureConfigurationnow uses twoBlockStateProviders instead of aBlockStateand Block Tag.- Renamed the
block_state_providerfield toblock_stateand thestop_when_encountering_unreplaceable_blockfield tostop_at_unreplaceable_blockinColumnFeatureConfiguration. - Removed
FrozenLibGrassColorModifiers, as this functionality is redundant thanks to Enum Extensions in Fabric Loader 0.19+. - Block Sound Type Overwrites have been removed, and replaced with a newer version that utilizes Dynamic Registries.
- We understand this may upset some players, but the Resource Pack functionality would cause sound type desyncs between the server and client.
- The new system will allow players to accomplish the same results, but via Data Pack!
- Added the
SoundTypeOverride, containing the following fields:blocks: A block's ID, a list of block IDs, or a Block Tag that thesound_typeapplies to.sound_type: TheSoundTypeto be used.volume: The volume to use.pitch: The pitch to use.break_sound: The break sound to use.step_sound: The step sound to use.place_sound: The place sound to use.hit_sound: The hit sound to use.fall_sound: The fall sound to use. Notice a pattern?
config_predicate: An optional field, supplying aConfigPredicatethat determines whether the override can be used.
- Added the
frozenlib_sound_type_overrideDynamic Registry. - The
frozenlib_config reloadCommand now provides completion suggestions and requires Game Master permissions to use. - Added the
frozenlib_config_clientCommand, allowing clients to use config commands locally without affecting the server. - Renamed
FrozenClothConfigtoFrozenLibClothConfigGuiHelper. - Added multiple new helper methods to
FrozenLibClothConfigGuiHelper. - Renamed
PlayerStructureStatustoStructureStatus. - Revamped the way
StructureStatuses are handled and sent to the client.- These now rely on Fabric's
Attachmentsystem, ultimately leading to the removal of custom networking & mixins related to syncing them. - Added a debug text entry option to display current statuses.
- These now rely on Fabric's
- Revamped Structure-based Music.
StructureMusicis now serializable and its contents have changed, containing the following fields:structures: A structure's ID or a list of structure IDs thatmusicwill play within.background_music: TheBackgroundMusicto play.must_be_inside_piece: Whether the Player must be located inside aStructurePieceformusicto play.config_predicate: An optional field, supplying aConfigPredicatethat determines whether the music can be played.
- Added the
frozenlib:structure_musicDynamic Registry.
- Added the
frozenlib:controlled_noteParticle Type, which takes an Integer as a parameter to use for the particle's color. - Added colored variants of Smoke and Campfire Smoke Particles, using
ColoredSmokeParticleOptions.- These particles will start off with a tint, and fade back into their Vanilla coloration.
- Removed the
frozenlib:biome_tag_condition_sourceandfrozenlib:optimized_biome_tag_condition_sourceSurface RuleConditionSources, as they are redundant. - Added
SulfurCubeUtilAndEvents, containing the following events:ON_INTERACTON_ARCHETYPE_DATA_REMOVEON_ARCHETYPE_APPLYON_POWER_CHANGEDON_PUSH_SOUND_PLAYEDON_PUSHON_HITON_SQUISH
- Added the
AbstractBlockLikeMob, used to create Mobs that render like Blocks and rotate as they move.- Based upon 26w14a's implementation.
- Renders using the model of the provided
BlockStateit is given.
- Added the
NoOpModel, in cases aLivingEntityRendereris required but noModelis wanted. - Revamped Spotting Icons.
- Refactored all classes into the
entitypackage. - Spotting Icons now render as part of the game's HUD.
- Removed the
frozenlib:spotting_icon_predicateRegistry. - Removed
SpottingIconPredicates. - Spotting Icons now use Fabric's Data Attachment system, using the
SpottingIconsclass.- This class contains methods to add, remove, and check a predicate against its Spotting Icons.
- An Entity can now have multiple Spotting Icons at once.
- Spotting Icons a much more flexible fading system.
- A custom start and end value can now be defined.
- Fades can be used for both the Icon's scale and transparency.
- Refactored all classes into the
- Migrated server texture packets to use Fabric's packet splitter.
- Revamped FrozenLib Cape implementation.
- Migrated to Fabric's Data Attachment system and Render State Data Keys.
- Fixed a bug that caused a Player's FrozenLib Cape to not sync to clients when joining a server.
- Revamped Screen Shake implementation.
- Migrated to Fabric's Data Attachment system and Fabric's Level Tick Event instead of using separate mixins.
- Screen Shakes can now have a "minimum distance", which will override the calculated distance to the Screen Shake if it is lower than this.
- Added a
Builderfor Screen Shakes. - Screen Shakes no longer have separate implementation for Levels and Entities, now being universal and easy to use for both.
- Updated the
frozenlib screenshakecommand and its feedback.
- Revamped Wind implementation.
- Migrated to Fabric's Data Attachment system.
ClientWindManagerhas been removed andWindManageris now used on both the server and client.- Removed the ability and config option to use Wind on the client without a server that has Wind.
WindManagerExtensions now use a registry instead of a list.WindDisturbances have been completely revamped, using Fabric's Data Attachment system and allowing for the creation of customWindDisturbanceTypesfor more dynamic usage.
- Revamped Moving Sound Manager implementation.
- Migrated to Fabric's Data Attachment system.
MovingSoundTypes can now be registered to FrozenLib's newfrozenlib:moving_sound_typeRegistry.- Each
MovingSoundTypehandles the ticking (and optionally removal) of each sound per-entity, similar to the original sound managers. - Thanks to these changes, multiple mixins and duplicate implementations have been removed.
- Added the
frozenlib:moving_sound_managerDynamic Registry. - Removed the Warden Spawn Tracker config option, as the command can now be enabled in Vanilla via launch arguments.
- Refactored the
lootpackage into theitempackage. - Refactored the
recipepackage into theitempackage.
Optional dependencies
Any compatible version
Any compatible version
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:9KawNmQc:qlCv9K4l"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:9KawNmQc:qlCv9K4l"
}
