Kore Releases
Browse all Kore releases, release notes, and version history, automatically fetched from GitHub.
Changelogs focus on what changed between two minor Minecraft releases. If there were no changes in-between, you may see a short or empty entry.
Changelogs
Showing 37 out of 201 releases
2.13.1-26.2
Welcome to Kore 26.2!
Kore 26.2 is the cycle where the library stopped being JVM-only, and where most of the data-driven DSL got a serious retype.
It started on the tail of 26.1 with a Kotlin 2.4 upgrade and a multiplatform port, then turned into a long pass over worldgen and predicates: scoped builders everywhere, vanilla names everywhere, and a lot of fields fixed to actually match the JSON the game reads. On top of that, the new 26.2 content landed as it came: sulfur cubes, speleothems, geysers, and the usual batch of item component changes.
This cycle is also the most breaking one in a while. Nearly every rename here exists because the old API let you write something the game refuses, or because a global function polluted autocomplete in places it had no business being. The migration is mostly mechanical, and the examples below show the before and after.
What's new?
The big stuff this cycle was:
- Multiplatform Support:
kore,oop,helpersandbindingsnow target JVM and JS (browser + Node.js) at the same coordinates, powered by a pure-KotlinZipReader/ZipWriterand aPlatformIOabstraction (OPFS in the browser).org.jomlandkotlin-reflectare gone as dependencies. - Kotlin 2.4: no more
-Xcontext-parameterscompiler argument, andjava.util.UUIDis replaced by the stable multiplatformkotlin.uuid.Uuid. - Worldgen: density functions, surface rules, carvers, processor lists, template pools, structures, block predicates, state providers, vertical anchors and height providers all moved to scoped builders, so autocomplete only offers what is valid in each context. New Providers and Carvers pages came with it.
- Predicates: every sub-predicate now carries its vanilla
*Predicatename, serialization is checked againstvanilla-mcdoc, item sub-predicates moved to the component matchers, and score holders became a sealedScoreProvider. - 26.2 content:
sulfur_cube_archetypewith explosion, contact damage, knockback and sounds, thespeleothemrename, geyser particles, thesequence,template,weighted_random_selectorandrandom_patchconfigured features, and theinterval_selectdensity function.
Code examples
Here is what the biggest 26.2 changes look like in practice.
Multiplatform datapacks
Scoped worldgen builders
Configured features, carvers and surface rules are built inside their own scope instead of loose global functions, so autocomplete only offers what is valid where you are.
World presets keyed by dimension id
Dimensions are keyed by their id instead of their type, so two dimensions can share a type, and generator builders set generator themselves.
Sulfur cubes
Migration notes
Every rename in this cycle, with the code to change on your side.
UUID becomes Uuid
The stable kotlin.uuid.Uuid is idiomatic, simpler, and multiplatform. If you only use the uuid() helpers, nothing changes.
item(...) becomes items(...) on item predicates
The builder takes several items and matches any of them, so the plural fits. Loot table entries keep their own item(...), which drops a single item.
Sub-predicates take their vanilla name
Each one is named after the vanilla type it produces, so a name found in the wiki maps to the Kore one, and the global functions stop clashing with other builders of the same name. The loot context enum EntityType became EntityTarget to stop clashing with the EntityTypes registry.
timeCheck requires its clock
Vanilla needs a clock to know which time to read, so it moved from a trailing nullable argument to the mandatory first one.
valueCheck requires its range
A value_check without a range never matches anything, so the range is mandatory. An IntRange overload comes with it, since the game clamps both bounds to an integer anyway.
Score holders are now a sealed ScoreProvider
Two nullable parameters let you pass both or neither and get invalid JSON, so the holder is a sealed type now: contextScore for a loot context entity, fixedScore for a name.
providersRange(...) becomes intRange(...)
Both built the same bound, so they are merged under intRange, which covers floats, providers, ClosedFloatingPointRange and IntRange.
Number providers only resolve inside their scopes
constant, uniform and the others now extend IntProviderScope/FloatProviderScope, so they only show up where a provider is accepted, and the int and float versions stop being ambiguous. weightedList gets a shorter syntax at the same time.
HeightConstant becomes VerticalAnchor
Vertical anchors and height providers are scoped too, so they only appear where a height is expected.
equippable takes a generated EquipmentAssets entry
The asset id was typed as ModelArgument, so any model name compiled. EquipmentAssets is generated from the vanilla list instead.
Dripstone becomes speleothem
Vanilla renamed the features in 26.2, and they gained base_block, pointed_block and replaceable_blocks.
Removed, with no replacement
weird_scaled_sampler and the noise_gradient surface rule are gone from vanilla, so they are gone from Kore. noise_threshold gained an optional 3D evaluation and covers most of what noise_gradient was used for.
New builders worth knowing
Changelog
Documentation
docs(commands): Clarify and expand the command docs.1d1e597docs(components): Revise thecomponentsguide to update examples, clarify predicates, and link the component matchers table.9d3cf51docs(contributing): Update the architecture guide withGeneratedSealedSerializerusage and KSP-based serializer factory details.b5cf883docs(generation): Add short KDoc to the generation module's key entry points.f8b527adocs(home): Add community project links and thejumprentry to the README list.e6b41aa5aaf9c4docs(oop): Improve the item, scoreboard, and team documentation.708af24docs(vfx-engine): Enhance theVfxEnginedocumentation with detailed explanations on shapes, coordinate spaces, and offsets.035c1b9docs(website): Update the guide content, clarify Kore usage and migration paths, add a version matrix to the Home page.0af799bdocs(worldgen): Add a dedicated Carvers page and move the carver sections out of the Biomes page.d2f3cf1docs(worldgen): Document theIntProviderScope/FloatProviderScopebuilder receivers on the Providers page, fix the staleprovidersRange/binomialsnippets in Item Modifiers and Loot Tables.6aec34bdocs(worldgen): Restructure the worldgen pages around a single end-to-end example, extract the shared providers to their own page, and condense the environment attribute reference into tables.6aa1827docs(worldgen): Rewrite the Noise & Terrain page as a full density function, noise router, and surface rule reference.38558aedocs(worldgen): Rewrite the Structures processor list and template pool sections with the scoped element builders.c403250ba6c643
New Features
feat(arguments): AddtoStringWithDecimalfor consistent decimal point formatting, update the positional, rotational, and vector conversions.03158e9feat(bindings): Add theDatapackUploadAPI for exploring and importing datapack ZIPs in-memory, with cross-platform tests.7dc0800feat(bindings): EnhanceparseReferenceto support dotted GitHub repo names.a3f00b4feat(commands): Addteam modify <team> color resetthroughcolorReset.f6c6bc5feat(datapack): IntroducefolderNameto decouple output folder names from namespaces, add tests for the folder, jar, and zip modes.8497d8bfeat(enchantments): Add thegeyser,geyser_base,geyser_plume, andgeyser_poofparticle options with unit tests.ccea6c1feat(entity-predicates): Introduce type-specificEntitySubPredicatesubclasses (CubeMob,FishingHook,Lightning,Player,Raider,Sheep) and anEntityTypeSpecificScopeto group them.987b370feat(execute): Changerun's block toFunction.() -> Unit, allowingif/forcontrol flow inside it.abc4a5cfeat(fabric): AddResourceConditionwithfabricLoadConditions, implement condition-based JSON generation.10543f8feat(generation): Add aDatapackFolderRegistrygenerator producing a datapack-folder-to-Argument-type map from the existing generator definitions.75bf9a9feat(generation): Add a pure-KotlinZipReaderandInflatefor cross-platform ZIP handling, unify the unzip logic withcommonUnzipToTempDir.2cad91afeat(generation): Generate theEnchantmentProvidersandEquipmentAssetsenums, retypeequippablearoundEquipmentAssetArgument.c2c2bc5feat(generation): Introduce platform-agnostic I/O withPlatformIO, OPFS browser support, and a pure-KotlinZipWriter, unifying file operations across JVM, JS, and browser.05e7b6afeat(helpers): Add a minimal in-house port oforg.joml(Matrix4f,Matrix3f,AxisAngle4f,Quaternionf,Vector3f,JomlMath) for display transformation math.0265cd6feat(item-components): Add theSulfurCubeContentComponent, with tests and documentation.8afcac3feat(selector-arguments): AddfromStringto parse selectors back from text, with deserialization logic and advanced selector support.6feb45ffeat(sulfur-cube-archetype): Add thesulfur_cube_archetypedata-driven registry with attribute modifiers and buoyancy.b2e9a3dfeat(sulfur-cube-archetype): ReplaceexplosionFusewith structuredexplosion,contactDamage, and knockback powers, then add hit and push sound settings withpushSoundCooldownandpushSoundImpulseThreshold.03233a142a9fbbdf98bdffeat(test-environments): Add thedifficultytest environment with unit tests.961bbe7feat(vfx-engine): Add coordinate space support todrawShape, enhanceVfxShapewithpositionTypeandorigin.2a5a916feat(worldgen): Accept a block ID or list of IDs, in addition to a tag, for the geode, root system, vegetation patch, dimension type infiniburn, and protected blocks replaceable fields.7349b97feat(worldgen): Add thesequenceandtemplateconfigured feature types.53eb47efeat(worldgen): Add theweighted_random_selectorconfigured feature, pluslevelTestDistanceandmaxLevelDeviationonroot_system.bf4163cf9fdad8feat(worldgen): Add theinterval_selectdensity function and thematching_biomesblock predicate, removeweird_scaled_sampler, make themultiface_growthblock and the treebelow_trunk_providermandatory.af33acffeat(worldgen): Add optional 3D evaluation tonoise_thresholdand remove the obsoletenoise_gradientsurface rule.d25fd01feat(worldgen): IntroduceIntProviderScope/FloatProviderScopeas builder receivers across placed features, configured features, dimension types, enchantment providers, carvers, and processors, and add therandom_patchconfigured feature.779217cfeat(worldgen): Enhance theLakeconfiguration with thecanPlaceFeature,canReplaceWithAirOrFluid, andcanReplaceWithBarrierblock predicates.dccef30feat(worldgen): Rename thedripstone_cluster/pointed_dripstoneconfigured features tospeleothem_cluster/speleothem, add thebase_block/pointed_block/replaceable_blocksfields, and addreplaceable_blockstolarge_dripstone.9a56efe
Bug Fixes
fix(bindings): Fix the illegal interface property initializers and unsafe identifiers left in the Resources and Tags generators.53d8836fix(chat-components): Simplify the serialization logic forextrafields and enhance the JSON/NBT handling in chat components.0aee14b34d72bb400f99ffix(commands-execute): Correct thetargetArglogic to handleUUIDArgumentequality with a self-check, and optimize the selector argument handling.59c6ecafix(components): Add the missingsaddleequipment slot.b5df734fix(datapack): Setpack_formatto an integer only and fix its default value.b613e04fix(enchantments): Write the providers toenchantment_providerinstead oftrades, and allow any file name and sub-folder.7d649e9fix(helpers): RewritefromAxisAngleto usesin/costrigonometric calculations instead of instantiating aQuaternionf.c25bcdffix(item-components): Changefood'snutritionfield fromFloattoInt, makeuse_cooldown'scooldown_groupoptional, and remove the invalidcontact_cooldown_ticksfield fromkinetic_weapon.d47a49221751921de41eafix(item-components): Renameattack_range'smin_range/max_rangetomin_reach/max_reach,blocks_attacks'sdisable_soundtodisabled_sound, andfirework_explosion'shas_flickertohas_twinkle.f6ef4da26bf1b2415971bfix(item-components): Serialize theSulfurCubeContentComponentas an inlined item id instead of a nested object.65db924fix(item-predicates): Add support for partial and negated components, enhanceclearPredicate, and simplify thesetPartialandnegatelogic.3e7804dfix(pack): Fix thepackFormatwarning wrongly reported as outside themin_format/max_formatrange when it shares their major version.b458689fix(predicates): Rename the mob effectambiantfield toambient, and write theperiodic_tickandtype_specific/cube_mobsub-predicate keys vanilla expects.9a20f9bf3b3204fix(serializers): Serialize and deserialize half-open bounds inFloatRangeOrFloatJsonSerializerinstead of throwing.2e273bffix(worldgen): Fix thenoiseandsplinedensity functions and thestone_depthsurface type to match the vanilla JSON, make the noise settings tests exhaustive.d09d92ffix(worldgen): Rename the misspelled biome spawner categories toambient,axolotls, andwaterAmbient, and add the missingmiscone.626e421c4946a4fix(worldgen): Replace the ocean ruintypefield bybiomeTemp, and default the jigsawsizeto1instead of the out-of-range0.635cc660e9bd53fix(worldgen): Return aConfiguredStructureArgumentfrom every configured structure builder so structure sets accept them.fab9d5c
Performance improvements
perf(arguments): Scope theArgumentinterface classpath scan to the arguments packages and parallelize theClass.forNamelookups.00bfcdeperf(datapack): Cache thejsonEncoderinstead of rebuilding aJsonconfig on every access.7441a97perf(item-components): Encode component values directly instead of round-tripping through aJsonElement/NbtTagtree, and skip the redundant encode-to-element pass inComponentsScope.asJson/asNbt.de3a95ef69791c
Refactors
refactor(uuid)!: Replacejava.util.UUIDwithkotlin.uuid.Uuidacross modules, updating the related methods and constructors.refactor(components): Move the item sub-predicates tocomponents/matchersasDataComponentPredicateandEnchantmentPredicate, renameitem(...)toitems(...), and add the missingvillager/variantmatcher.72b3a6brefactor(density-functions): Add thedensityFunctionsbuilder with per-type block syntax, fix thesnakeCaseacronym and digit boundaries.dfe5c62refactor(enchantments): Share the effect builders through scopes, fix theexplode,play_sound, andcrossbow_charging_soundscodecs, and complete the effect components.9a2be54refactor(predicates): Rename the sub-predicates to their vanilla*Predicatenames, fix their serialization againstvanilla-mcdoc, and requireclockontimeCheck.111e1a1refactor(predicates): Split the score targets into aScoreProvidersealed type, require ranges onvalueCheck, and add theIntRangeoverload.1674e14refactor(trade-sets): EnhanceTradeSetwith new builder methods for trade amounts and sequences, with tests for empty and single trades.892f75erefactor(worldgen): Scope the configured carver builders toConfiguredCarversScope, add the missingnether_cavetype, fix the vanilla defaults and the flat biomecarverslist.f68c443refactor(worldgen): Scope the surface rule builders toSurfaceRulesScope, replaceentry()withstate/empty, and collapse the single-rule conditions.1068a96refactor(worldgen): Scope the processor list builders toProcessorsScope, fix theblackstone_replacename and the vanilla defaults.0ddc09crefactor(worldgen): Scope the template pool builders toPoolEntriesScopeandPoolElementsScope, fix the vanilla defaults, and add thelegacySingleliquid settings.87c932crefactor(worldgen): Scope the block predicate, block state provider, and rule test builders, replaceoffsetwith a per-predicateoffset { }, addunobstructedandtargets { }on the ore-like features, and fix thenoise_threshold_provider,randomized_int_state_provider, andtag_matchnaming.43d05a9cf5c3c8872ab1crefactor(worldgen): RenameHeightConstanttoVerticalAnchor, scope the anchor and height provider builders, and document them with tests.e5ebca4refactor(worldgen): Key the world preset dimensions by their id instead of their type, make every dimension generator builder setgenerator, remove the obsoletenaturaldimension type field, and add alayers { }builder for the superflat settings.e8ca92c41c83f799f997ebed0900refactor(worldgen): Replace the list-based amplitude and octave methods with a unifiedamplitudes(...).2de880crefactor(worldgen): Retype the structures builder around aStructuresScope, fix the mineshaft, shipwreck, spawn override, and generation step keys, and document every type with tests.6a0795f
Full changelog: https://github.com/Ayfri/Kore/compare/v2.6.1-26.1..v2.13.1-26.2-rc-2
2.8.0-26.1.2
Big one this release: Kore was JVM-only until now. kore, oop, helpers and bindings are all Kotlin Multiplatform (JVM + JS, browser and Node.js), at the same coordinates. Full writeup here: Multiplatform Support.
That's powered by new pure-Kotlin ZipReader/ZipWriter + PlatformIO (OPFS in the browser), a hand-rolled codegen model replacing KotlinPoet in bindings, and KSP-generated serializers replacing reflection everywhere. Two dependencies gone as a result: org.joml (re-ported by hand, see below) and kotlin-reflect.
A few smaller additions too:
Plus a minimal in-house org.joml port (Matrix4f, Matrix3f, AxisAngle4f, Quaternionf, Vector3f, JomlMath) for display transforms, one less dependency, and fabricLoadConditions/ResourceCondition for condition-based Fabric resources. Less libraries: faster and simplified Kore usage.
Documentation
docs(contributing): Update architecture guide withGeneratedSealedSerializerusage and KSP-based serializer factory details.b5cf883
New Features
feat(arguments): AddtoStringWithDecimalfor consistent decimal point formatting, update positional, rotational, and vector conversions.03158e9feat(bindings): AddDatapackUploadAPI for exploring and importing datapack ZIPs in-memory, implement cross-platform tests.7dc0800feat(bindings): EnhanceparseReferenceto support dotted GitHub repo names, update tests to verify functionality.a3f00b4feat(datapack): IntroducefolderNameto decouple output folder names from namespaces, add tests for folder, jar, and zip modes, and update documentation for creating datapacks.8497d8b#246feat(execute): Changerun's block toFunction.() -> Unit, allowingif/forcontrol flow.abc4a5c#243feat(fabric): AddResourceConditionwithfabricLoadConditions, implement condition-based JSON generation.10543f8feat(generation): Add DatapackFolderRegistry generator producing a datapack-folder-to-Argument-type map from existing generator definitions.75bf9a9#246feat(generation): Add pure-KotlinZipReader,Inflatefor cross-platform ZIP handling, unify unzip logic withcommonUnzipToTempDir.2cad91afeat(generation): Introduce platform-agnostic I/O abstractions withPlatformIO, implement OPFS browser support, addZipWriterfor pure-Kotlin ZIP generation, and unify file operations across JVM, JS, and browser.05e7b6afeat(helpers): Add minimal port oforg.jomlclasses includingMatrix4f,Matrix3f,AxisAngle4f,Quaternionf,Vector3f, andJomlMathfor display transformation math.0265cd6feat(selector-arguments): AddfromStringto parse selector arguments, implement deserialization logic, enhance test cases, and support advanced selector parsing.6feb45f
Bug Fixes
fix(datapack): Setpack_formatto integer only and fix default value.b613e04#245fix(helpers): RewritefromAxisAngleto use trigonometric calculations withsinandcos, replacingQuaternionfinstantiation, and adjust imports inQuaternion.c25bcdf
Full changelog: https://github.com/Ayfri/Kore/compare/v2.7.0-26.1.2..v2.8.0-26.1.2
2.7.0-26.1.2
This release updates Kore to Kotlin 2.4.0, which is great news because you don't need the -Xcontext-parameters compiler argument anymore ! I also migrated the UUIDArgument to use the new stable Uuid API from Kotlin instead of UUID from Java, this is because the API is more idiomatic to Kotlin and simpler and multiplatform.
If you're using the uuid() functions you probably don't need to change anything, else the migration is very easy:
Documentation
docs(components): Revisecomponentsguide to update examples, clarify predicates, and link component matchers table.9d3cf51docs(generation): Add short KDoc to the generation module's key entry points.f8b527a
Refactors
refactor(uuid)!: Replacejava.util.UUIDwithkotlin.uuid.Uuidacross modules, update related methods and constructors accordingly.
Full changelog: https://github.com/Ayfri/Kore/compare/v2.6.2-26.1.2..v2.7.0-26.1.2
2.6.2-26.1.2
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v2.6.2-26.1.1..v2.6.2-26.1.2
2.6.2-26.1.1
Bug Fixes
fix(chat-components): Simplify serialization logic forextrafields and enhance JSON/NBT handling in chat components.0aee14b34d72bb400f99f
Full changelog: https://github.com/Ayfri/Kore/compare/v2.6.1-26.1.1-rc-1..v2.6.2-26.1.1
2.6.1-26.1
Welcome to Kore 26.1!
Kore 26.1 was a pretty long cycle.
It started with some groundwork on the late 1.21.11 side, then turned into a proper push for the new 26.1 data-driven systems. World clocks, timelines, villager trades, better time utilities, more worldgen coverage, and nicer OOP handles for displays and mannequins all landed here.
A lot of this cycle was also just polish, in the good way. There are plenty of docs, tests, serializer cleanups, and small API fixes in here because 26.1 added a lot of surface area, and I wanted Kore's DSL around it to feel nice instead of just technically complete.
What's new?
The big stuff this cycle was:
- World Clocks and the expanded Time DSL let you create custom clocks, timelines, time markers, clock-aware predicates, and
time.of(clock)command flows. - Villager Trades introduce fully data-driven
villager_tradeandtrade_setgenerators, with item modifiers, predicates, and reusable trade pools. - Worldgen Features grew a lot during 26.1: more vanilla configured features, better block state providers, new height and number providers, and stronger test coverage for generated JSON.
- Display Entities and Mannequins gained cleaner OOP entity handles, making it easier to summon, target, move, and manage generated entities from Kotlin.
A lot of the later releases were quieter, but they still mattered. Most of that work went into tightening serialization, filling API gaps, and expanding docs and test coverage for worldgen, predicates, commands, and helpers.
Code examples
Here are a few examples of what the biggest 26.1 additions look like in practice.
World clocks, timelines, and commands
Villager trades and trade sets
This one defines a custom trade and groups it into a level-based trade set, which is exactly the kind of data-driven economy flow 26.1 made possible.
Expanded worldgen DSL
Worldgen got a lot more expressive in 26.1, with richer configured features, state providers, and placement helpers.
OOP handles for generated entities
Helpers and OOP utilities also became easier to compose, especially when you want a generated display or mannequin to turn into a strongly-typed handle you can reuse later.
Changelog
Documentation
docs(advanced): ExtendKnown_Issues.mdwith detailed limitations and workarounds for Kore.51f7ab3docs(ai): Update README and Home.md to includeKore-SkillAI skills pack link.0cde2afdocs(bindings): UpdateBindings.mdwith new setup steps and example improvements.d0028c5docs(commands): Add KDoc to all commands.e5bf892docs(commands): Fix wrong syntaxes in commands examples.16ba50bdocs(concepts): AddSelectors.mdwith comprehensive overview on building Minecraft target selectors in Kore, including typed builders, filtering capabilities, and score-based conditions.2d44932docs(concepts): AddTimedocumentation for ticks, seconds, and days, usage examples, arithmetic, conversions, and command integration.9b2c569docs(contributing): AddArguments.mdandCookbook.mdfor contributors. Introduction to Kore's argument system, practical datapack patterns, including setup functions, logic reuse, custom items, delayed actions, and more.150a54480bc008docs(getting-started): Add link to "Learn X in Y Minutes - Kotlin" for a quick syntax refresher.8b8750bdocs(getting-started): Expand Kotlin basics section, add explanations forval/var, functions, and extension functions, include quick learning resources links.9ac611cdocs(guide): RevampGetting_Started.mdto provide a more comprehensive guide, emphasizing iterative development, modular project structure, and practical tips.ddbcb78docs(guides): Add advanced migration guide from Datapacks to Kore.5c22ebadocs(guides): Enhance configuration guide with detailed explanations.8a3862fdocs(helpers): UpdateDisplay_EntitiesandMannequinsdocs with OOP entity handles, code examples, and enhanced functionality descriptions.48fac17docs(markdown): Standardize links and hyphenation in documentation, fix inconsistent Markdown syntax, and improve clarity in examples and descriptions.c5df568docs(nbt): Add complete documentation about NBTs.5a7592ddocs(number-providers): Add KDoc to all number providers, update documentation.8ff7ba5docs(pages): Add copy button for markdown content and load sources.ec2d4c12ec7dcfdocs(villager-trades): AddVillager Tradesdocumentation, update related pages with references to trade gating, item modifiers, and enchantments.68f02d9docs(world-clock): Add theWorld Clocksguide, updateTimelinesto reference clocks and time markers, improve examples, and align the docs with snapshot 26.1 changes.f3436b5docs(worldgen): Add documentation forFloatProvidertypes with descriptions, examples, and usage scenarios in feature configuration.2b1991edocs(worldgen): DocumentIntProvidertypes with descriptions, examples, and usage scenarios in feature configuration.aeb9e5fdocs(worldgen): ExpandFeatures.mdwith new vanilla feature types, no-config objects, modifiers, and height providers. Add examples, update descriptions, and fix typos.676cc22
New Features
feat(arguments): IntroduceMOB.INVENTORY, replacing the oldPIGLINandVILLAGERslots.aba3d82feat(advancement): Add the player-interact-with-entity trigger.69cd1befeat(bindings): Add support for customizable HTTP request payload and headers, update related tests and documentation.eefe605feat(bindings): Enhance the GitHub function with API key authentication details, add tests and docs.00f7dcffeat(chat-components): Add thefallbackproperty toObjectTextComponentand its subcomponents, update builders, tests, and docs.30b7b80feat(commands): Add the firstswingcommand support withSwingHandand unit tests.e8bc54ffeat(commands): AddplaceJigsawoverload withJigsawArgument, enhanceplaceTemplatewithintegrityandTemplateMirror, and improve KDoc forplacefunctions.f885b8ffeat(commands): Expand/timewithofsubcommands for clocks, addpause,resume, new queries and setters, update docs and tests.09fc73ffeat(commands): Expandswingwith main-hand usage andtargetssupport, update tests.f4ff4f4feat(commands): UpdatelocatePointOfInterestto usePointOfInterestTypeOrTagArgument, add KDoc comments tolocatefunctions.8a223fd513a6d7d4a906efeat(data-driven): AddTradeSetandVillagerTradegenerators with builder functions, integrate them intoDataPack.2d035aec6f034b94590e7feat(datapack): AddpathandiconPathutility functions, removing the need for thekotlinx.iolibrary in simple projects.8556f71feat(entities): Add OOP entity handles for displays and mannequins, with selector-based targeting, UUID-based identity, and enhanced functionality.f22d89bfeat(entities): AddtoEntityandentityfactory methods forEntityType, update docs with usage examples, and extend tests to validate the new flow.7e92bf3feat(environment-attributes): AddambientLightColor,blockLightTint, andnightVisionColorwith tests and documentation.fa73f7afeat(item-components): Add theAdditionalTradeCostcomponent with tests and documentation.79af872feat(item-modifiers): AddincludeAdditionalCostComponenttoenchantRandomlyandenchantWithLevels, update tests and documentation.c6f7022feat(item-modifiers): AddsetRandomDyesandsetRandomPotion, update documentation and item modifier functionality.55e6daefeat(item-slot): Add the piglin item slot.37a10b7feat(nbt-utils): Add more builders for NBT lists.fbe3973feat(oop): Add a more customizableItemStack.summon.91d4be2feat(pig-sound-variants): Add theeatSoundproperty toPigSoundVariant, update docs and tests.d96d2a4feat(predicates): Add theenvironmentAttributefunction andEnvironmentAttributeNumberProvider.2e0c84efeat(predicates): AddenvironmentAttributeCheckcondition and overloads, update docs and tests.654d184feat(predicates): AddPlayerFoodPredicatewithlevelandsaturation, update tests and documentation.09db797feat(predicates): Add theclockparameter toTimeCheck, update overloads, and coverclockplusperiodcombinations in tests.7f1df0dfeat(predicates): Add thesumnumber provider, update documentation and tests.a4fc50efeat(predicates): Add utilityx,y,zsetter functions toPosition.40995b2feat(test-environments): Add thetimelineAttributesenvironment, update docs and tests for timeline-driven mechanics.5c6e0a6feat(test-environments): ReplaceTimeOfDaywithClockTimeEnvironment, add aclockparameter, update tests and docs for clock-based time environments.7b722edfeat(time-command): Add theratefunction to control day-night cycle speed, update tests and docs accordingly.346ad90feat(timelines): Add support fortimeMarkersin timelines, introduceTimeMarkerArgumentandTimelineMarker, update tests to cover marker usage and clock-aware flows.ea7bbeffeat(vec3): EnhanceVec3andPosNumberwith serialization support and docs.f68a73cfeat(website-styles): AddscrollMarginTopto thehtmlelement for better scrolling behavior.7cfd313feat(wolf-sound-variants): Add support for age-specific wolf sounds withadultSoundsandbabySounds, update tests and docs.c1c40b8feat(worldclock): Add theWorldClockclass andworldClockfunction, with tests for creation and registration.77bd8a8feat(worldgen): AdddefaultClocktoDimensionType, update tests and docs forWorldClockintegration.0af46d7feat(worldgen): Add theendSpikefactory function, update docs.b55db8dfeat(worldgen): Add extensiveconfiguredFeaturetest coverage for many vanilla feature types, includingbamboo,basaltColumns,dripstoneCluster,geode, and more.53df549feat(worldgen): AddFloatProviderfactory functions with aliases for disambiguation, plus full unit test coverage for all supported float provider types.a1ea226feat(worldgen): AddTrapezoidIntProviderand thetrapezoidfactory function, updatefunctions.ktordering.16dab69
Bug Fixes
fix(advancement): Add the missingfromAdvancementRoute, improve KDoc.bf07d93fix(bindings): Correct the cache directory path ingetCacheDirfor consistency.48bde8dfix(bossbar): Add the missingsetNameoverload with a text component and improve KDoc.15b8767fix(commands): Add the missingentityliteral toteleportoverloads, improve KDoc.318f75efix(commands): Add the missing fill options for the fill command.c76866efix(commands): Add the missingsetsub-literal forstyleinwaypoint modify, refine KDoc forWaypointModifyand related functions.c0a7fa2fix(commands): Fix manyclonegrammar issues, add missing modes and sub-literals, improve KDoc.9ed7482fix(commands): ReplacesequenceIdwithRandomSequenceArgument, improverandomcommand KDoc.5eb7557fix(components): ReplaceInlinableListwithListinProvidesBannerPatterns, addPatternListSerializer, and updateprovidesBannerPatternshelpers.3515467fix(data): Add missing support for string-based data commands, including append, insert, merge, and prepend operations.e041065fix(docs): Update test commands in contributing documentation for consistency.32feda0fix(helpers): Fix the double namespace issue, broken self-recursion, and max-hit dedup in raycast.933743bfix(item): Correct the argument order intoItemArgument.669152cfix(playsound): ReplaceSoundArgumentwithSoundEventArgumentinplaySound.4ae24e5fix(stopwatch): Update thescaleparameter to use a float type.84edfb0fix(time): UpdateTime.toString()to usetoStringTruncatedIfRound, extendTitleCommandtests.5b7969bfix(vec): Fix the double truncation logic, add more tests, and repair the raycast test.b3e3618fix(worldgen): Add therandomSelectorfactory function and DSL, update docs.25114ccfix(worldgen): SimplifyFeaturesserialization logic, replaceInlinableListSerializerwithListSerializer, and preserve positional order with empty lists.ebde9c9
Refactors
refactor(item-components): Update components to support multiple IDs or tags forprovidesBannerPatterns,blocksAttacks, anddamageResistant.945596brefactor(item-modifiers): EnhancesetInstrumentto support a single ID, a tag, or multiple IDs and tags, update related docs and tests.d3d82afrefactor(number-providers): Remove the custom serializer fromScoreTargetNumberProvider, simplify the implementation.e7d0d5arefactor(worldgen): Add DSL improvements forRuleBasedBlockStateProvider, enhance rule configurability, update related tests and docs.7af02b8refactor(worldgen): Enhance theAlterGroundtree decorator DSL, add builder block support, update tests and usage.c87b7e3refactor(worldgen): RemoveFlower,NoBonemealFlower, andRandomPatchconfigurations, update documentation to reflect the change.f16ae73refactor(worldgen): RenameRuleBasedBlockStateProvidertoRuleBasedStateProvider, update usages, tests, and docs accordingly.aef0afbrefactor(worldgen): ReplaceRuleBasedBlockStateProviderwithBlockStateProvideracross tree configurations, update the relevant docs and test cases.fa1f987
Full changelog: https://github.com/Ayfri/Kore/compare/v2.0.2-1.21.11..v2.6.1-26.1-rc-3
2.0.3-1.21.11
Another small release with many improvements to the documentation, a few small fixes, a missing advancement trigger, and improvements to NBTs with even its own documentation page.
Documentation
docs(advanced): ExtendKnown_Issues.mdwith detailed limitations and workarounds for Kore.51f7ab3docs(ai): Update README and Home.md to includeKore-SkillAI skills pack link.0cde2afdocs(getting-started): Add link to "Learn X in Y Minutes - Kotlin" for quick syntax refresher.8b8750bdocs(getting-started): Expand Kotlin basics section, add explanations forval/var, functions, and extension functions, include quick learning resources links.9ac611cdocs(guide): RevampGetting_Started.mdto provide a more comprehensive guide, emphasizing iterative development, modular project structure, and practical tips.ddbcb78docs(guides): Add advanced migration guide from Datapacks to Kore.5c22ebadocs(guides): Enhance configuration guide with detailed explanations.8a3862fdocs(nbt): Add complete documentation about NBTs.5a7592ddocs(pages): Add copy button for markdown content and load sources.ec2d4c12ec7dcf
New Features
feat(advancement): Add player interact with entity trigger69cd1befeat(nbt-utils): Add more builders for Nbt Lists.fbe3973feat(oop): Add a more customizable ItemStack.summon.91d4be2feat(vec3): Enhance Vec3 and PosNumber with serialization support and docs.f68a73c
Bug Fixes
fix(data): Add missing data ... string commands support, append, insert, merge, and prepend operations.e041065
Refactors
Full changelog: https://github.com/Ayfri/Kore/compare/v2.0.2-1.21.11..v2.0.3-1.21.11
2.0.2-1.21.11
Small but big release, adding a lot of missing KDoc on commands, new documentation for Selectors, Arguments Internals for contributors and a Cookbook with common patterns you would want to know.
I've also fixed many small issues with rarely used commands. Point Of Interest enum generation and argument support for locate poi command, new way to configure Bindings Github API Key and url parameters.
Documentation
docs(bindings): UpdateBindings.mdwith new setup steps and example improvements.d0028c5docs(commands): Add KDoc to all commands.e5bf892docs(commands): Fix wrong syntaxes in commands examples.16ba50bdocs(concepts): AddSelectors.mdwith comprehensive overview on building Minecraft target selectors in Kore, including typed builders, filtering capabilities, and score-based conditions.2d44932docs(contributing): AddArguments.mdandCookbook.mdfor contributors. Introduction to Kore's argument system, practical datapack patterns, including setup functions, logic reuse, custom items, delayed actions, and more.150a54480bc008
New Features
feat(bindings): Add support for customizable HTTP request payload and headers, update related tests and documentation.eefe605feat(bindings): Enhance GitHub function with API key authentication details, add tests and docs.00f7dcffeat(commands): AddplaceJigsawoverload withJigsawArgument, enhanceplaceTemplatewithintegrityandTemplateMirror, and improve KDoc forplacefunctions.f885b8ffeat(commands): UpdatelocatePointOfInterestto usePointOfInterestTypeOrTagArgument, add KDoc comments tolocatefunctions.8a223fd513a6d7 d4a906efeat(predicates): Add utilityx,y,zsetter functions toPosition.40995b2
Bug Fixes
fix(advancement): Add missingfromAdvancementRoute, improve KDoc.bf07d93fix(bindings): Correct cache directory path ingetCacheDirfunction for consistency.48bde8dfix(bossbar): Add missingsetNamewith text component and improve KDoc.15b8767fix(commands): Addsetsub-literal forstyleinwaypoint modify, refine KDoc forWaypointModifyand related functions.c0a7fa2fix(commands): Add missingentityliteral toteleportoverloads, improve KDoc.318f75efix(commands): Add missing fill options for fill command.c76866efix(commands): Fix manyclonecommand grammar issues, add missing modes and sub-literals, improve KDoc.9ed7482fix(commands): ReplacesequenceIdwithRandomSequenceArgument, improverandomcommand KDoc.5eb7557fix(docs): Update test commands in contributing documentation for consistency.32feda0fix(item): Correct argument order intoItemArgumentmethod.669152c#216fix(playsound): Replace SoundArgument with SoundEventArgument in playSound command.4ae24e5fix(stopwatch): Update scale parameter to use float type.84edfb0
Full changelog: https://github.com/Ayfri/Kore/compare/v2.0.1-1.21.11..v2.0.2-1.21.11
2.0.1-1.21.11
Small fix to execute if block and a lot of new documentation on how to contribute to Kore!
Documentation
docs(commands): Add KDoc to all execute and execute condition functions.6773147docs(contributing): Add comprehensive contributor guides on architecture, workflow, CI/CD, and generator creation.50d926cdocs(contributing): Revise guidelines for contribution, link to detailed docs for architecture, workflow, and CI/CD, and update README and website with clearer contribution instructions.1fbb46adocs(home): Fix error in example code.8ea2d2e
Bug Fixes
fix(execute): Add missingexecute if blockwith BlockTag argument.993bf55
Full changelog: https://github.com/Ayfri/Kore/compare/v2.0.0-1.21.11..v2.0.1-1.21.11
2.0.0-1.21.11
Welcome to Kore 2.0!
Kore 2.0 is here! This release contains so many changes, improvements, and new features that it deserved a major version bump. From a completely revamped build system to powerful new OOP utilities and helpers, this is the biggest update Kore has ever seen.
What's new?
The new Helpers module provides a rich set of utilities for common datapack patterns:
- Math engine - vector math, area utilities, and floating-point formatting helpers for
Vec2,Vec3,Position, andRotation. - Raycasts - easily create block and entity raycasts with configurable step size, max distance, and hit callbacks.
- State delegates - Kotlin property delegates backed by scoreboards.
- Text utilities - selectors, text components, and formatting helpers.
- MiniMessageRenderer, MarkdownRenderer, and ANSIRenderer - advanced text formatting renderers.
- VFX & Particles - high-level particle helpers for visual effects.
Also, the prior Helpers have been moved to the
helpersmodule, such as Display Entities, Inventory Manager, Mannequins, Scheduler, and ScoreboardManager. See also Scoreboard Math.
The OOP module brings object-oriented abstractions on top of Minecraft commands:
- Boss Bars - create and manage boss bars with team integration.
- Entity management -
EntityCommandsfor fluent entity manipulation. - Events - event-driven architecture for datapack logic.
- Game State Machine -
GameStateandGameStateManagerfor managing game phases and transitions. - Spawners - configurable entity spawner utilities.
- Timers & Cooldowns - schedule delayed or repeating actions with
TimerandCooldownAPIs.
Code examples
Here are a few examples of what you can build with the biggest additions in Kore 2.0.
Helpers
This first example combines the math helpers with a raycast to measure a path and react to blocks or entities hit along the way.
And this one uses the particle helpers to turn an impact point into a small visual burst.
This one shows how state delegates let you read and write scoreboard-backed values like regular Kotlin properties.
OOP
Here, a boss bar and a timer are wired together so players see the bar appear and initialize automatically when the intro starts.
This last example shows the event system forwarding a player join into the current game state, which keeps phase-specific logic nicely encapsulated.
And here a spawner is paired with a cooldown to keep waves under control without scattering timing logic everywhere.
Changelog
CI/CD
- Add
ci.ymlworkflow for automated tests.2720e85 - Add
publish-snapshot.ymlworkflow for snapshot builds, update docs with snapshot setup instructions, and enhance build logic for snapshot versioning.b93e1df
Documentation
- Update bindings documentation for namespace remapping and normalization.
5c066da- @e-psi-lon - Add scoreboard comparison examples for
equalTo,notEqualTo, and related helpers. Extend documentation with Kotlin DSL mappings to generated commands.a516ef1 - Add new documentation for helpers module (renderers, raycasts, math, particles, state delegates).
941fa47 - Enhance Helpers and OOP documentation with new workflows, API examples, expanded Events, Display Entities, Raycasts, and scheduling sections.
e6d986d - Update module descriptions, installation guides, and examples for bindings, helpers, and oop modules.
4c59c0b - Add OOP documentation for cooldowns, timers, game state machine, boss bars, events, entities, and spawners.
761d7ec89bb48933747c3
New Features
- State: Add score-based comparison functions,
runIf,runWhile, andrepeatScorehelpers. EnhanceScoreboardDelegatewithasExecuteScoreandscoreboardEntityintegration.fd63024 - State: Replace
repeatScorewithrepeat, update iteration handling, enhance documentation, and adjust tests and examples.ce4a0ef - Bindings: Add support for per-namespace renaming.
e9ded19- @e-psi-lon - Bindings: Use XDG-compliant caching and prefer
PathoverFile.67e8f76- @e-psi-lon - Maths: Add utility functions for truncation and formatting in
Position,Rotation,Time,Vec2, andVec3, improvetoStringmethods and type-specific property access.fb0be06 - Maths: Add delegate-based math helpers, improve trigonometric functions, enhance
sqrtinitialization, and update tests and documentation.c16b0e79 - OOP: Add OOP wrappers for entity management, game state transitions, timers, spawners, and boss bars.
d677d20a8b3ba946f9de7
Bug Fixes
- Bindings: Normalize namespace object name.
a1b167a- @e-psi-lon - Commands: Add missing
literal("under")argument tospreadPlayerscommand.c7cdcfa - Arguments: Fix unintended cast of
Doublecoordinates toInt(e.g.0.0→0), replacestrwithtoStringTruncatedIfRoundfor correct entity positioning.c28b4ba08a37ef- #213 - Files: Fix
createTempDirectoryactually not creating the temporary directory, add more utilities toPath, and update docs and tests.0c95069
Refactors
- Arguments: Add
Argumentparsing and deserialization logic, enhanceBlockArgumentserializer, and introduce proxy creation for arguments.6353257bedbedc - Bindings: Add
@Suppress("DEPRECATION")for deprecated properties, update code generators to useCodeBlockfor pack metadata, remove infix remapping function.449b021b6c500ac9c5f78- @e-psi-lon - Bindings: Use native cache directory for macOS and Windows.
a68df12- @e-psi-lon - Build: Remove
buildSrc, migrate build logic tobuild-logicdirectory, introducekotlin-dslplugin, define version catalogs, configure repositories, and addkotest-conventionsfor shared test configuration.f0aab38601b748d30d43f788d574 - Core: Remove unnecessary
@OptInannotations, fix typos, improve validation for path commonality check.4a44232 - Generation: Add merging logic for
load.json/tick.jsontags, improve path normalization, fix duplicate archive entries, and simplifymodfunction parameters.7d938be865947d - Helpers & OOP: Migrate helpers from
oopto dedicatedhelpersmodule, addAreautilities, enhanceGameState/GameStateManager, improve entities, timers, teams, and standardize indentation to tabs.ace2f012efe90853cef64fd2326d - Scoreboard: Replace
fn.data/fn.scoreboardwith direct calls, updatecopyDataFrom/copyTologic.b948855 - Serialization: Improve deserialization logic, simplify serializers by leveraging
EnumStringSerializer, enhance NBT/JSON compatibility.1785d7a20677eb - Utils: Simplify
dateFormatscalculations, optimize imports inMarkdownRenderer, simplifyparentElementtype usage.3c168b9
Thanks to @e-psi-lon for his contributions!
Full changelog: https://github.com/Ayfri/Kore/compare/v1.42.1-1.21.11..v2.0.0-1.21.11
1.42.1-1.21.11
Small release to fix the default datapacks containing features field, also simplify the usage of pack formats and add more KDoc. I've also revamped a bit the tool I use to generate changelogs.
Documentation
docs(datapack): UpdateCreating A Datapackguide, improveminFormat/maxFormatexamples, add legacy format handling andoverlaysDSL usage documentation.79a34d7
Bug Fixes
fix(datapack): Makefeaturesoptional.13d9bd8
Refactors
refactor(colors): AddColorSerializerdeserialization for hex and named colors.32f7e7arefactor(pack): Updatepack.mcmetahandling, add DSL foroverlays, improve serialization for legacy fields, and clarify deprecation warnings.fbf7e5drefactor(worldgen): SimplifyFeaturesserialization logic, addInlinableListSerializer, optimizetoListandfromListconversion methods.b3c5d96
Full changelog: https://github.com/Ayfri/Kore/compare/v1.42.0-1.21.11..v1.42.1-1.21.11
1.42.0-1.21.11
A release to fix many small issues with advancements/item-modifiers/loot-tables/predicates/structures/test-instances, also some simplifications of serializers. It contains some small breaking changes so that's why the version bump.
Changelog
feat(maths): AddtoArrayandfromArrayconversion forVec3f, add deserialization support. 97a589cfeat(worldgen-structures): AddTerrain AdaptationandPool Aliasesdocumentation, enhance pool alias logic with weighted entries in tests. 6309c34fix(advancements): RenameAvoidVibrationstoAvoidVibration. 7c09253fix(docs): UpdateAdvancements.mdandTriggers.md, addbrewedPotion. EnhanceItem_Modifiers.mdwith new examples, correct inconsistencies. 5626439fix(item-modifiers): Add@SerializabletoSetBookCover. b9a2cc4fix(item-modifiers): Fix serialization ofApplyBonusitem modifier. e3a867ffix(item-modifiers): RemoveUUIDArgument, addidproperty inAttributeModifier. 3d51818fix(item-modifiers): RenamepotiontoidinSetPotion. dff1c54fix(item-modifiers): ReplacenbtwithtaginSetCustomDataand write as inline nbt, add helper tosetBannerPattern. c820f1ffix(loot-tables): RenamenametovalueinLootTable. 58b6d3efix(predicates): AddLightclass to replacelightfield inLocation. 64cdfa4fix(predicates): RenameEnchantmentint provider toEnchantmentLevel, update related functions. 6289eaefix(predicates): RenameEntityScoretoEntityScores. f46733afix(predicates): ReplaceBlockwithLocationinsteppingOn. 784e0d3fix(predicates): Set default value ofentityinEntityPropertiestoEntityType.THIS. 76d8717fix(test-instances): ReplaceFunctionArgumentwithStringfor function references, align logic and documentation with new GameTest framework. 7f3514afix(test-instances): ReplaceFunctionwithFunctionArgument, removeFunctionDSLBuilder. 41fda93fix(worldgen-structures): Update pool alias logic, introduce weighted entries. 309b9ferefactor(advancements): Replace criteria serialization logic withInlineSerializer, adjust trigger classes to removenameproperty. 82f6727refactor(advancements): Set default lambda value forrecipeUnlockedandrecipeCraftedcriteria. 4eb7e7frefactor(item-modifiers): AdjustSourceenum values, rename parameters incopyCustomData, add helper methods forMutableList<CopyNbtOperation>. 11f9481refactor(predicates): SimplifyFluidsub predicate usage. a4657b7
Full changelog: https://github.com/Ayfri/Kore/compare/v1.41.3-1.21.11..v1.42.0-1.21.11
1.41.3-1.21.11
Small release to fix a pretty important bug.
Changelog
docs(website): UpdateKore Templatelinks to reflect new GitHub repository. 15e05b0fix(arguments): Fix serialization ofIntRangeOrIntwith only min or max. 79b9c8d b8e3b2a
Full changelog: https://github.com/Ayfri/Kore/compare/v1.41.2-1.21.11..v1.41.3-1.21.11
1.41.2-1.21.11
Small fixes and improved predicates/pack usages.
Changelog
feat(pack): AddsupportedFormatsDSL, implement range and min-max validation, and add corresponding tests. 15d08f0feat(predicates): AddmatchToolfunction withItemArgumentsupport, enable multi-item condition handling. 60363c2feat(predicates): Extendenchantmentsto supportEnchantmentOrTagArgumentwith optional levels. 0ba6dd5feat(utils): AddextractBaseMinecraftVersion, implementcompareMinecraftVersions, update version filtering logic. 46be380fix(loot-tables): Fixalternativesbeing mis-spelled and simplify usage. 177b236
Full changelog: https://github.com/Ayfri/Kore/compare/v1.41.1-1.21.11..v1.41.2-1.21.11
1.41.1-1.21.11
Massive update covering the snapshot cycle. Major additions to Worldgen, Environment control, and Combat components. Also a complete revamp of the documentation pages/architecture and to the updates page.
Changelog
Worldgen & Environment
feat(timelines): Introduced the Timelines System for data-driven environment animations (keyframes, easing).feat(environment): Added fine-grained control forcloudColor,fogStart/End,waterFog,skybox, andCardinalLight.feat(worldgen): AddedBlendToGraymodifier andActivityregistry generator.
Combat & Components
feat(components): Added Weapon Components:KineticWeapon,PiercingWeapon, andDamageType.feat(components): AddedAttackRangeComponentwithmax/minCreativeReach.feat(components): AddedinteractVibrations,minimumAttackCharge, andswingAnimation.
Datapack Utilities
feat(commands): Addedworldborder(add/set/warning) andstopwatchcommands.feat(functions): EnhanceaddLineto support multiline strings, add test cases. 9775e08feat(loot-tables): AddedSlotsentries (contents, empty, filtered, group, limit-slots) and fixed dynamic names.feat(predicates): AddedmatchTool(multi-item support),isFallFlying, andisInWater.feat(enchantments): AddedApplyImpulse,postPiercingAttack, andapplyExhaustion.
Core & Docs
docs: Massive documentation overhaul (Worldgen, Tags, Trims, variants) +llms.txtsupport.refactor: Migrated to Vanniktech Maven Publish (lighter & faster builds).
Full changelog: https://github.com/Ayfri/Kore/compare/v1.37.0-1.21.10..v1.41.1-1.21.11
1.37.0-1.21.10
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.37.0-1.21.10-rc1..v1.37.0-1.21.10
1.37.0-1.21.9
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.37.0-1.21.9-rc1..v1.37.0-1.21.9
1.33.2-1.21.8
Somes fixes, update to KNbt, new documentation and missing interfaces/generated things. Also, I'm currently working on something bigger and very interesting for Kore!
Changelog
chore(dependencies): Update knbt version from 0.11.8 to 0.11.9. c01183cdocs(macro): Add example for TeleportMacros and clarify limitations. 387be86docs(publishing): Add guide for publishing datapacks using GitHub Actions. 98d7e5efeat(generation): Add missing worldgen tags interfaces parents. 1a0e39efeat(generation): Addpainting_assetto additional arguments and updatetagsParentsforPaintingAssetArgument. d095f93feat(tags): Add missing common tags functions. d597df3fix(advancements): Change background type toModelArgumentinAdvancementDisplay. c76b6b1fix(execute): Fixexecute if itemssyntax missing source literal name. 0202e87 #175fix(generation): MoveDEFAULT_DATAPACK_FORMATtoDataPack.Companionfor easier use. 7a9c0adfix(painting): ChangeassetIdtype toPaintingAssetArgumentinPaintingVariant. e3aff11, 966a085
Full changelog: https://github.com/Ayfri/Kore/compare/v1.33.1-1.21.8..v1.33.2-1.21.8
1.33.1-1.21.8
No changes at all since 1.21.7.
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.33.1-1.21.8-rc1..v1.33.1-1.21.8
1.33.1-1.21.7
No real change since 1.21.6.
Changes: https://github.com/Ayfri/Kore/compare/v1.33.1-1.21.6..v1.33.1-1.21.7
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.33.1-1.21.7-rc2..v1.33.1-1.21.7
1.33.1-1.21.6
The big new "small" release is finally out! I took a long time because life is life, and you can get pretty busy at some times, but now Kore is back and updating quickly!
See the new 1.21.6 changes from Minecraft themselves: https://www.minecraft.net/en-us/article/minecraft-java-edition-1-21-6
Changelog
- No changes were required since 1.21.6-rc1.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.28.0-1.21.5..v1.33.1-1.21.6
1.28.0-1.21.5
Finally, 1.21.5 is here! Check for previous releases for the full list of changes.
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.28.0-1.21.5-rc2..v1.28.0-1.21.5
Changelog since 1.21.4: https://github.com/Ayfri/Kore/compare/v1.23.0-1.21.4..v1.28.0-1.21.5
1.24.0-1.21.4
Small release containing one bug fix! But I also updated Kore to 2.1.0, this changes the process of creating projects because you have to ignore one warning, sadly that's the best way I found for the current state of Kore. We're waiting on the context parameters feature to release to remove these flags, but currently the KEEP is still in construction.
You'll now have to add this flag to freeCompilerArgs list : "-Xsuppress-warning=CONTEXT_RECEIVERS_DEPRECATED" Example
Note that I've also updated Kore-Template.
Changelog
chore(build): Update compiler arguments for context receivers. 192f9c1chore(dependencies): Updatejetbrains-composeto version 1.7.3, updatekobwebto version 0.20.0, and upgradekotlin.versionto 2.1.0. 18f75fb a33baf6fix(scoreboard): UpdateasStringmethod to usecamelCase, add tests for some scoreboard criterion. #135 c6ed581feat(string-utils): AddcamelCasefunction to convert strings to camel case. f033e3b
Full changelog: https://github.com/Ayfri/Kore/compare/v1.23.0-1.21.4..v1.24.0-1.21.4
1.23.0-1.21.4
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/1.23.0-1.21.4..HEAD
1.21.3-1.21.3
Fixes a small bug, and increase the version of Kore making it aligned with Minecraft again, lul
Changelog
fix(chat-components): Fix chat components serialization in escaped JSON contexts. #123 0577198refactor(advancements): Do not serialize empty conditions of triggers. decf34c
Full changelog: https://github.com/Ayfri/Kore/compare/v1.21.2-1.21.3..v1.21.3-1.21.3
1.21.2-1.21.3
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.21.2-1.21.2..v1.21.2-1.21.3
1.21.2-1.21.2
So this is it, 1.21.2 for 1.21.2, for explanation I started Kore at 1.0 on Minecraft 1.20, but by pure chance we stepped on a version where both Kore and Minecraft are in version 1.21.2 :')
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.21.2-1.21.2-rc2..v1.21.2-1.21.2
1.17.0-1.21.1
Another release with a big new feature : jar file generation. You can now create datapacks that can be used as mods for fabric, forge, neoforge and quilt mod-loaders ! Check out the documentation on this new feature here : https://github.com/Ayfri/Kore/wiki/creating-a-datapack#jar-generation The next release should be focused on updating Kore to 1.21.2 👌
Changelog
feat(creating-datapacks): Add NeoForge neoforge.mods.toml generation. f1f21e1 5f7f90cfeat(creating-datapacks): Add Quilt quild.mod.json generation. 44b75afeat(creating-datapacks): Add forge mods.toml generation. 796a595feat(creating-datapacks): Add jar generation and fabric mod generation. 3f60647feat(generators): Generate minecraft version. c75f6ccfix(neoforge): Fix NeoForge dependency type value should be lowercase.refactor(datapacks): Streamline datapack generation from different mode into one unique, fix tags not merging when generating a zip, simplify generation. 22eb17b
Full changelog: https://github.com/Ayfri/Kore/compare/v1.16.0-1.21.1..v1.17.0-1.21.1
1.16.0-1.21.1
This release introduces a big new feature very cool for datapack developers: Being able to merge datapacks together, even with external datapacks or zip files. Check out the documentation on this new feature here. Let me know if this feature has any bugs or missing features!
Changelog
feat(chat-components): Introduce deserialization of chat components for Json. f105bd4feat(datapacks): Add generations options, add merging with other packs option, add tests. d01296dfeat(pack-mcmeta): Introduce deserialization ofSupportedFormats, add useful functions for comparing versions, addtoString. 39d53e3feat(tags): Introduce deserialization of Tags. 33a5b51
Full changelog: https://github.com/Ayfri/Kore/compare/v1.15.1-1.21.1..v1.16.0-1.21.1
1.15.1-1.21.1
Fixes a bug related to tag generation folder when setting the tag of a function using the setTag function, also updates unit tests about functions generation for checking if all files are correctly generated and are at the correct location.
[!IMPORTANT] I will in a future release rename the
setTagfunction toaddToTagbecause a function in Minecraft can be linked to multiple tags.
Changelog
fix(functions): Fix generated tag folder forsetTagmethod of functions, update tests for functions generation files locations. #102 0efd2da
Full changelog: https://github.com/Ayfri/Kore/compare/v1.15.0-1.21.1..v1.15.1-1.21.1
1.15.0-1.21.1
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.15.0-1.21..v1.15.0-1.21.1
1.15.0-1.21
Kore is finally entirely compatible with 1.21, with a lot of fixes (even from features of prior versions, which is great for the project).
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.15.0-1.21-rc1..v1.15.0-1.21
1.10.1-1.20.6
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.10.1-1.20.6-rc1..v1.10.1-1.20.6
1.10.1-1.20.5
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.10.1-1.20.5-rc3..v1.10.1-1.20.5
1.1.0-1.20.4
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.1.0-1.20.4-rc1..v1.1.0-1.20.4
1.1.0-1.20.3
Changelog
- No changes were required.
Full changelog: https://github.com/Ayfri/Kore/compare/v1.1.0-1.20.3-rc1..v1.1.0-1.20.3
1.0.0-1.20.2 First release !
Kore Library v1.0.0 Released! 🎉
I'm excited to announce the first stable release of the Kore library! After months of development and testing, Kore v1.0.0 is now available.
Get started now with the documentation and the example.
Your feedback and contributions are welcome! Feel free to open issues or pull requests on the GitHub repository.
Happy datapacking! ⛏️
