Skip to content

Releases: cao-awa/Conium

Conium 1.0.0-alpha10 (1.21.4)

27 Mar 10:41
8aac9dd
Compare
Choose a tag to compare
Pre-release

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 (1.21.4)

09 Feb 17:22
3a747c2
Compare
Choose a tag to compare
Pre-release

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 (1.21.4)

02 Feb 21:29
9470200
Compare
Choose a tag to compare
Pre-release

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)

17 Dec 22:25
Compare
Choose a tag to compare
Pre-release

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

Conium 1.0.0-alpha7 (1.21.4)

16 Dec 22:04
Compare
Choose a tag to compare
Pre-release

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 reified type in declarations (code style).
Add character banner in logging.
Add documents and in code comments.
Performance optimizations.

Conium 1.0.0-alpha6 (1.21.3)

28 Nov 12:22
Compare
Choose a tag to compare
Pre-release

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)

16 Nov 09:29
Compare
Choose a tag to compare
Pre-release

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)

14 Nov 17:41
Compare
Choose a tag to compare
Pre-release

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)

08 Nov 12:36
Compare
Choose a tag to compare
Pre-release

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)

04 Nov 16:52
Compare
Choose a tag to compare
Pre-release

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.