6.3 KiB
6.3 KiB
0.30 - 2025.11.27
Documentation for 0.30
Table of contents:
Added
- audio recording
- in-memory filesystems
:blockplacement (generator)on_block_present,on_block_removedevents- debugging server
rotateandoriginvcm modifiers (rotation)- custom audio streams in lua (audio.PCMStream class)
- add I16view, I32view, U16view, I32view lua classes
- libraries:
- compression
- audio.input
- editing atlas textures feature
- add non_reset_packs argument to app.reset_content
- freeze debug panel values on cursor unlock
- project:content content source
- project start application script
- uinode.exists property
onrightclickuinode event- frameless window mode
- settings:
display.adaptive-menu-fpsexperimental flaggraphics.soft-lighting
- command-line arguments:
--tpscommand line argument for headless mode--dbg-servercommand line argument
- added error callback argument to network.tcp_connect
- go back in menu on Escape pressed
- publish
hud.exchange-slotelement - add
istoplevelargument to input.add_callback - engine pause mode (debugging)
- rebuild mip-maps on texture reload
- documentation:
- documented player.set_camera and related
- documented
on_hud_renderevent - update app library docs
- updated content-packs docs (added full pack structure)
Changes
- optimization:
- fixed major chunks loading performance issue
- reduced headless mode chunks memory consumption
- vecn functions optimization is not experimental now
- pass pack environment to menu page script
- canvas element autoresize
- disable mouse camera control if non-standard camera used
- events without prefix are forbidden now
- player.* functions now throw exception in headless mode if player id not specified
Functions
- app.create_memory_device
- app.focus
- app.get_content_sources
- app.open_url
- app.set_content_sources
- app.start_debug_instance
- assets.to_canvas
- audio.get_all_input_devices_names
- audio.get_input_info
- audio.input.fetch
- audio.input.request_open
- canvas:add
- canvas:encode
- canvas:get_data
- canvas:mul
- canvas:rect
- canvas:sub
- canvas:unbind_texture
- Canvas.decode
- compression.decode
- compression.encode
- debug.get_pack_by_frame
- file.create_memory_device
- gui.ask
- gui.set_syntax_styles
- gui.show_message
- hud.is_open
- input.get_mouse_delta
- network.find_free_port
- PCMStream:create_sound
- PCMStream:feed
- PCMStream:share
- player.get_all
- player.get_all_in_radius
- player.get_dir
- player.get_interaction_distance
- player.get_nearest
- player.set_interaction_distance
- socket:is_nodelay
- socket:recv_async
- socket:set_nodelay
- string.escape_xml
- textbox:indexByPos
- textbox:lineY
- utf8.escape_xml
Fixes
- fix: "Bytearray expected, got function"
- fix zero frames texture animation fatal error
- fix non-local players interpolation and head direction
- fix std::bad_alloc caused by corrupted regions
- fix 'align' ui property reading
- fix incorrect textbox horizontal scroll
- fix: wrong environment used in modules imported by require(...)
- fix: some container attributes not available in panel
- fix generation.load_fragment
- fix: byteutil.unpack 'b' is equivalent of 'B'
- fix: missing yaml null literals
- fix yaml array parsing
- fix mouse click textbox caret set
- fix wrapped textbox selection render
- fix broken dependencies management
- fix assets.parse_model with 'xml' format
- fix correct line generation algorithm and bounds calculation
- fix enable per-variant custom model caching
- fix: stream stops and dies on underflow
- fix Schedule:set_timeout
- fix major chunks loading performance issue
- fix: undo/redo also available when textbox is not editable
- fix player library docs
- fix: root node id overriding
- fix extended block placement across chunk borders
- fix modelviewer fbo creation