Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
Conium

Conium

Conium is a datapack and script framework for modern Minecraft, it provides very diverse features without Java coding, Conium lets you complete your mods only using datapacks.

520
8
Library
Optimization

Compatibility

Minecraft: Java Edition

Platforms

Fabric

Supported environments

Client and server

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source Join Discord server

Creators

cao-awa
cao-awa Author
ryan100c
ryan100c Contributor

Details

Licensed GPL-3.0-only
Published 7 months ago
Updated 3 months ago
DescriptionGalleryChangelogVersions

Conium 1.0.0-alpha10

by cao-awa on Mar 27, 2025
Download

Conium event

  1. Renamed events, remove suffixes 'event' in the events list.
  2. Move more event trigger to intermediary.
  3. Add 'attachPreparation' in event context, used to pre-vary raw inputted args.
  4. Add dynamic register APIs for item, block and entity.
  5. Add more minecraft class import.
  6. Clear all event subscribes on reloading data packet

New event support

Add events support:

  1. ITEM_USE
  2. ITEM_USED
  3. RECEIVE_CHUNK
  4. RECEIVED_CHUNK

Bedrock event

  1. Add 'dimension' field to bedrock entity. (Entity#dimension)
  2. Use 'runCommand' to execute 'runCommandAsync' method. (Entity.runCommandAsync)
  3. Let bedrock entity can use raycast to get a block hit. (Entity.getBlockFromViewDirection)
  4. Make bedrock world(dimension) able to create the explosions. (Dimension.createExplosion)
  5. Renamed 'BedrockWorld' to correctly name 'BedrockDimension' to prevent ambiguity.

New event support

Add event support:

  1. itemUseBeforeEvent
  2. itemUseAfterEvent

Configuration

Add config file config/conium.json used to toggle conium features, currently toggleable: enable_debug and enable_bedrock_script.

Conium 1.0.0-alpha9

by cao-awa on Feb 9, 2025
Download

Conium script

  1. Use static delegate and extend function to make minecraft methods and members remap to the meaningful name.
  2. Update fluxia version to '1.1.4-fix3'.

Bedrock script APIs

  1. Add unsubscribe method in bedrock event.
  2. Supported to after event of itemUseOn.
  3. Upgrade structuring-translator version.
  4. Let bedrock script APIs can cancel cascade events in before events.
  5. Add bedrock script APIs facade type reference.

Performance optimization

Use kotlin package indexes to import classes to script context.

Bug fixes

  1. Fix bug of unable to load bedrock APIs in typescript.
  2. Fix bug of always trigger fire extinguishing event and extinguished event when entity in rain.

Conium 1.0.0-alpha8

by cao-awa on Feb 2, 2025
Download

Conium script

Event types

Add events support:

  1. ENTITY_TRY_SLEEP
  2. ENTITY_SLEEP
  3. ENTITY_WAKE_UP
  4. ENTITY_WAKED_UP
  5. ENTITY_ON_FIRE
  6. ENTITY_EXTINGUISH_FIRE
  7. ENTITY_EXTINGUISHED_FIRE
  8. ENTITY_SPRINT
  9. ENTITY_SPRINTING
  10. ENTITY_STOP_SPRINT
  11. RANDOM
  12. SERVER_RANDOM

Event args

Add event args:

  1. C_BLOCK_ENTITY

Event contexts

Now can use method 'preRequestNr' and 'requestNr' to replace 'preRequest' and 'request' to request the event context without returning a boolean value.

Data driven

Supported block templates:

  1. 'emits_redstone_power'
  2. 'emits_strong_redstone_power'
  3. 'emits_weak_redstone_power'
  4. 'enable_block_entity'
  5. 'data'
  6. 'block_entity_presets'

Supported item templates:

  1. 'ignite'
  2. 'clear_ignite'

Block entity

Supported load block entities from data driven, defined data using block template 'data' and could dynamic change values in game running by scripts.

Bug fixes

  1. Fix bug of unable to use Minecraft classes
  2. Fix bug of some useful classes not import in common init script.

Others

  1. Add hitokoto in console log
  2. Optimization performances
  3. Update libraries version
  4. Add discord server in modmenu.
  5. Replaced homepage to modrinth.

Conium 1.0.0-alpha7-fix (1.21.4)

by cao-awa on Dec 17, 2024
Download

Fix bug of fluxia not loaded in '1.0.0-alpha7'.

Conium 1.0.0-alpha7 (1.21.4)

by cao-awa on Dec 16, 2024
Download

Conium script

Event types

Add events support:

  1. 'ITEM_USE_ON_ENTITY'
  2. 'ITEM_USED_ON_ENTITY'
  3. 'ITEM_USAGE_TICK'
  4. 'ITEM_USAGE_TICKING'
  5. 'ITEM_INVENTORY_TICK'
  6. 'ITEM_INVENTORY_TICKED'
  7. 'ITEM_STACK_CLICK'
  8. 'ITEM_STACK_CLICKED'

Event args

Add event args:

  1. 'CURSOR_STACK'
  2. 'CLICK_TYPE'
  3. 'SLOT'
  4. 'SLOT_NUMBER'
  5. 'SELECT_STATUS'

Event context

Modified ways to attach forever events, incoming a event type to ConiumEvent constructor and auto attach events, don't attach events manually since this version.

Interaction

In conium '1.0.0-alpha6' will input wrong identity when data-driven interactions, fixed in this version.

Bedrock script

Fluxia can translate for loop and while loop now.

Add type 'Set' for javascript stdlib supporting, must specify a reified argument type otherwise cannot be eval.

Data driven

Add item templates:

  1. 'force_mining_speed'

Versions

Update to minecraft version '1.21.4'. Update to kotlin version '2.1.0'.

Bug fixes

Fix bug of crash client when client player interaction to synchronized data in '1.0.0-alpha6'.

Others

Add character banner in logging. Performance optimizations.

Conium 1.0.0-alpha6 (1.21.3)

by cao-awa on Nov 28, 2024
Download

Conium script

Event types

Add events support:

  1. 'BREAKING_BLOCK'
  2. 'BROKEN_BLOCK'
  3. 'ENTITY_DAMAGE'
  4. 'ENTITY_DAMAGED'
  5. 'ENTITY_DIE'
  6. 'ENTITY_DEAD'.
  7. 'ENTITY_TICK'
  8. 'ENTITY_TICKED'
  9. 'ITEM_USED_ON_BLOCK'
  10. 'SERVER_TICK_TAIL'
  11. 'FLUID_SCHEDULE_TICK'
  12. 'FLUID_SCHEDULE_TICKED'
  13. 'BLOCK_SCHEDULE_TICK'
  14. 'BLOCK_SCHEDULE_TICKED'
  15. 'SHULKER_BOX_OPENING'
  16. 'SHULKER_BOX_OPENED'
  17. 'SHULKER_BOX_CLOSING'
  18. 'SHULKER_BOX_CLOSED'
  19. 'CHEST_OPENING'
  20. 'CHEST_OPENED'
  21. 'CHEST_CLOSING'
  22. 'CHEST_CLOSED'
  23. 'TRAPPED_CHEST_OPENING'
  24. 'TRAPPED_CHEST_OPENED'
  25. 'TRAPPED_CHEST_CLOSING'
  26. 'TRAPPED_CHEST_CLOSED'

Event context

  1. The 'identity' of event context that input to 'arising' and 'presaging' have actual type now.
  2. Add more dynamic args transformer and more arg types
  3. Add method 'preRequest' in 'ConiumEventContextBuilder', used to make 'presage' trigger.
  4. Methods 'request' in 'ConiumEventContextBuilder' can input two lambdas now, first is 'arise', seconds is 'presage'.
  5. Add 'target' and 'targetTo' method in 'ConiumEventContext' used to filter the identity to trigger context.

Data driven interactions

See the samples, the 'glint' key in data define and interaction.kts script.

This sample let an item change glint status in hand, when player is creative mode, use the item on block will make this item be glint, otherwise then be not glint.

Data driven

Supported block templates:

  1. 'piston_behavior'
  2. 'walk_velocity'
  3. 'jump_velocity'
  4. 'movement_velocity'
  5. 'replaceable'
  6. 'instrument'
  7. 'path_find_through'

Networking

Add networking supports, the server can synchronize registry to client now, but only items, blocks and entities can be synchronized.

Others

Performance optimizations.

Conium 1.0.0-alpha5-fix1 (1.21.3)

by cao-awa on Nov 16, 2024
Download

Script

Fix bug of null pointer exception when requesting event context (cause by mistake method name 'arising', should be 'arise').

Fix bug of all events failures when no contexts registered.

Other

  1. Optimized performances.
  2. Updated dependencies versions.

Planning

Same as before.

Conium 1.0.0-alpha5 (1.21.3)

by cao-awa on Nov 14, 2024
Download

Notice

This version has been founds some severe bugs in script running, use newer version!

Data driven

Entity

Add model support, see the sample.

For bedrock schema is currently only parsable, not completed in loading.

Script

Add events:

  1. 'PLACE_BLOCK'
  2. 'PLACED_BLOCK'
  3. 'USE_BLOCK'
  4. 'USED_BLOCK'

Dynamic args can get any value from transforming others values now.

For example, even if the event context input has only present 'ItemPlacementContext', if you want get 'ServerWorld':

request(
    PLACE_BLOCK,
    SERVER_WORLD
).arising { _, world ->
    // Actions here.
    true
}

you can also get other any value where the transform is supported, even the value are not directly push to context.

Other

  1. Optimized performances.

Planning

More entity components and Molang, script APIs, first is conium schame entity components and script APIs.

Conium 1.0.0-alpha4 (1.21.3)

by cao-awa on Nov 8, 2024
Download

Data driven

Block

Add supported to these components:

  1. 'minecraft:collision_box'

For bedrock schema and corresponding conium schema templates:

  1. 'collision_box'

Entity

Add basic entity supports, can create an entity and set the collision box (dimension) and pushable:

  1. 'minecraft:collision_box'
  2. 'minecraft:pushable'

For bedrock schema and corresponding conium schema templates:

  1. 'dimension'
  2. 'pushable'

The entity supported 'component_groups' but not be switchable now.

Other

  1. Optimized performances.

Planning

More entity components and Molang, script APIs, first is conium schame entity components and script APIs, delaying the bedrock schama entity components.

Conium 1.0.0-alpha3 (1.21.3)

by cao-awa on Nov 4, 2024
Download

Data driven

Block

Add supported to these components:

  1. 'minecraft:destructible_by_explosion'
  2. 'minecraft:destructible_by_mining'
  3. 'minecraft:light_emission'
  4. 'minecraft:map_color' (Not completed)

For bedrock schema and corresponding conium schema templates:

  1. 'explosion_resistance'
  2. 'mining_time'
  3. 'luminance'
  4. 'map_color' (Not completed)

Other

  1. Optimized performances.
  2. Fix bug of shapeless recipe unable to load in '1.0.0-alpha2'

Planning

Entity components and Molang, first is entity components.

Conium 1.0.0-alpha2 (1.21.3)

by cao-awa on Nov 2, 2024
Download

Data driven

Item

Add supported to these components:

  1. 'minecraft:fuel'
  2. 'minecraft:glint'
  3. 'minecraft:wearable'

For bedrock schema and corresponding conium schema templates:

  1. 'fuel'
  2. 'glint'
  3. 'armor'

Recipe

Add supported to 'minecraft:recipe_furnace'

Conium 1.0.0-alpha1 (1.21.3)

by cao-awa on Nov 1, 2024
Download

Basic datapack and scripts supports by Conium framework.

Data driven supported

Item

Current supported item components:

  1. 'minecraft:damage'
  2. 'minecraft:durability'
  3. 'minecraft:can_destroy_in_creative'
  4. 'minecraft:max_stack_size'
  5. 'minecraft:food'
  6. 'minecraft:rarity'
  7. 'minecraft:use_animation'

For bedrock schema and corresponding conium schema templates:

  1. 'minecraft:damage', 'minecraft:durability' is in 'tool', named as 'attack_damage', 'durability'
  2. 'can_destroy_in_creative'
  3. 'max_count'
  4. 'food'
  5. 'rarity'
  6. 'use_action'

The 'using_converts_to' in bedrock food component is moved to 'convert_to' in 'consumable'.

a full sample

{
  "minecraft:item": {
    "description": {
      "identifier": "awa:bedrock"
    },
    "components": {
      "minecraft:damage": 100,
      "minecraft:durability": {
        "max_durability": 50
      },
      "minecraft:can_destroy_in_creative": {
        "value": true
      },
      "minecraft:max_stack_size": {
        "value": 64
      },
      "minecraft:food": {
        "can_always_eat": false,
        "nutrition": 10,
        "saturation_modifier": 1.0,
        "using_converts_to": "bowl"
      },
      "minecraft:rarity": "uncommon",
      "minecraft:use_animation": {
        "value": "eat"
      }
    }
  }
}

Recipe

Current supported recipe:

  1. 'minecraft:recipe_shaped'
  2. 'minecraft:recipe_shapeless'

recipes are current not supported 'unlock' yet now.

a full sample:

{
  "minecraft:recipe_shaped": {
    "description": {
      "identifier": "awa:test_recipe"
    },
    "group": "wood",
    "pattern": [
      "###",
      " # "
    ],
    "key": {
      "#": {
        "item": "minecraft:bedrock"
      }
    },
    "result": {
      "item": "minecraft:grass_block"
    }
  }
}

Others

See github home README.

Modrinth is open source.

feat/theseus/tauri-v2@c5403db

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.