# 0.24 - 2024.11.07 [Documentation](https://github.com/MihailRis/VoxelEngine-Cpp/tree/release-0.24/doc/en/main-page.md) for 0.24 Table of contents: - [Added](#added) - [Functions](#functions) - [Changes](#changes) - [Fixes](#fixes) ## Added - particles - VEC3 models support - handhold item display - rules - events: - on_block_broken (documented) - on_block_placed (documented) - on_block_interact - libraries: - gfx.particles - utf8 - rules - bindings: - player.destroy - player.fast_interaction - water overlay - block models from OBJ or VEC3 - bicubic heightmaps interpolation method - unicode escapes support - fragments placements - console commands: - time.daycycle - fragment.place - rule.list - rule.set - text field 'subconsumer' - shader uniforms: - u_lightDir to main shader - u_dayTime to skybox shader - block properties: - overlay-texture - model-name - item properties: - model-name - 'Open content folder' buttons - 'Background framerate limit' setting ### Functions - core.open_folder - world.get_generator - world.is_open - item.placing_block - item.model_name - item.emission - entities.get_hitbox - utf8.tobytes - utf8.tostring - utf8.length - utf8.codepoint - utf8.encode - utf8.sub - utf8.upper - utf8.lower - file.read_combined_object - fragment:place - rules.create - rules.listen - rules.unlisten - rules.get - rules.set - rules.reset - input.set_enabled - hud._is_content_access - hud._set_content_access - hud._set_debug_cheats - gfx.particles.emit - gfx.particles.stop - gfx.particles.get_origin - gfx.particles.set_origin - assets.load_texture Documented: - file.read_combined_list - file.list - file.list_all_res - input.is_active - table.copy - table.count_pairs - table.random - table.has - table.index - table.remove_value - table.tostring - string.explode - string.split - string.pattern_safe - string.formatted_time - string.replace - string.trim - string.trim_left - string.trim_right - string.starts_with - string.ends_with - math.clamp - math.rand - is_array - parse_path - timeit - sleep ## Changes - major skybox optimization - chunks-renderer optimization - libspng replaced with libpng on Windows - console commands: - blocks.fill - fragment.save - added 'def' to core.get_setting_info tables - water texture ## Fixes - [fix fatal error on editing texbox not having any consumer](https://github.com/MihailRis/VoxelEngine-Cpp/commit/22fa082fc6299ffa3196d62c67e01b849c35b8eb) - [fix commands boolean type support](https://github.com/MihailRis/VoxelEngine-Cpp/commit/a50cb109c8e3ca0f7a591bf126f07aee36c962e6) - [fix potential null dereferences on incorrect block.* functions use](https://github.com/MihailRis/VoxelEngine-Cpp/commit/961773c9f9745c15eb8d697c1538ac8e21f24da3) - [fix: draw-group not copied](https://github.com/MihailRis/VoxelEngine-Cpp/commit/dc8bad2af67e70b0b2346f516028e5795f597737) - [fix: generator-providing pack may be removed](https://github.com/MihailRis/VoxelEngine-Cpp/commit/6f2f365278eb1866c773890471b7269a5ef45305) - [fix colision check on block place](https://github.com/MihailRis/VoxelEngine-Cpp/commit/726ee8ad703bc57530b881450b8839aaec6b97c9) - [fix collision detection bug](https://github.com/MihailRis/VoxelEngine-Cpp/commit/7fcc34ba4cf14097dfda26054b028c5e8771d26c) - [fix: blocks lighting bug fix](https://github.com/MihailRis/VoxelEngine-Cpp/commit/9d3e872f88de2648f8c0f2e4611b30f5ce8999cf) - [fix: inaccurate framerate limit on Windows](https://github.com/MihailRis/VoxelEngine-Cpp/commit/3f531bbf98da5ad751dce1220c5c5fdf35f86c92) - [fix block.get_hitbox again](https://github.com/MihailRis/VoxelEngine-Cpp/commit/edad594101e5808ccf14e0edefedbe87cb8f983b) - [fix string.replace](https://github.com/MihailRis/VoxelEngine-Cpp/commit/44fd5416a9a110a12f8b3f2d369e5638055b306e)