Toribash 5.60 alpha
Author: indiefoldcreator
Date:
Wed, 05 Jul 2023
Game: Toribash
This is the first public alpha version of the next major Toribash 5.60 update
This alpha is primarily targeted at scripters and replaymakers to give a heads-up on what's to come as it introduces some breaking changes to some Toribash Lua functionality and the new replay data protocol.
To switch to this build, choose "alpha" in the Betas tab in Toribash properties from your Steam Library.
What's new in Toribash 5.60:
Lua replay manipulation updates
All player or environment changes (position, rotation, velocity, etc) triggered with Lua are now properly stored in replay files. See the list of all new functions below.
Documentation with EmmyLua annotations
We know Toribash has been notorious for its lack of documentation when it comes to game-specific Lua functionality. With 5.60 we're adding documentation for all existing Toribash functions as well as for built-in classes like UIElement or PlayerInfo.
EmmyLua is available as an extension for VSCode or IntelliJ IDEA.
Current alpha version does not have the final documentation yet and will receive further updates closer to stable release.
Texture atlas support
You can now load a single master texture and render its specific parts. This will be especially useful if you need to draw a lot of textures which will normally get capped by max texture limit.
All Lua hooks are now executed in a predetermined order
In past, when you attach multiple callbacks to the same Lua event you couldn't predict which order they'll be executed in. This has been revised in 5.60 and now hooks will always execute in the same order as they've been added.
Raycasting functionality in Lua
You can now create raycastable bodies and shoot rays with Lua. That is cool.
Lua bodies will exist in their own space and will not collide with any other objects.
Other updates
- Screenshots are now saved as PNG files instead of BMP
- Vastly improved obj loading performance
- utf8 library support for Lua
- Blood particles now collide with static environment
- Blood particles no longer get generated from player collisions with static environment by default (requires hardness > 0)
- New UITween class (toriui/uitween.lua) that can be used for time-accurate animations
List of all new Lua functions:
set_obj_linear_vel()
set_obj_angular_vel()
get_joint_state_name()
get_color_rgba()
get_clipboard_text()
generate_texture_gradient()
create_raycast_body()
destroy_raycast_body()
shoot_ray()
shoot_camera_ray()
add_chat_history()
generate_font()
players_accept_input()
get_body_bruise()
get_joint_bruise()
List of all deprecated Lua functions:
download_ranking_toplist()
download_ranking_trends()
get_qi_reset_info()
set_gameover_limit()
draw_chat_input()
get_num_blood_particles()
set_decal()
get_payment_mode()
set_payment_mode()
get_beginner()
open_post_tutorial_menu()
close_post_tutorial_menu()
set_post_tutorial_alpha()
market_call()
move_replay()
sopen_replay()
end_tutorial()
open_upmenu()
Write your comment!