New room list menu
The updated room list is better in every way, both having nicer looks and providing easy access to more information about rooms!
See how it looks ►
It also has a much better "Create Room" menu that you can actually use now, isn't that amazing?
Create room preview ►
In addition to that, room list now shows several featured rooms with active players on top, more visibly separates official rooms from player-made ones, shows if the room is password protected so you don't have to guess and has more (and better working!) filters.
Lua replay hacking improvements & updated replay format
This one is for replaymakers - remember how you had to go around those weird bugs with Lua replay hacking working but also not always and then replays getting all glitchy and messed up and not nice at all?
This is no more! (unless you actually want to make your replay glitchy then sure you're welcome)
Along with a number of newly added Lua functions, with the help of Kris and Tom we've made replay hacking more straight forward with all your changes being properly stored in replay files, changes not getting randomly carried over to new fights and so on.
See what you can do with it ►
If you're interested in writing Lua scripts for replay hacking, make sure you check the list of changes below!
Toribash Lua scripting updates
Majority of Toribash scripting classes now have annotations with EmmyLua which should vastly improve your coding experience if you're using a compatible editor.
How it looks in action ►
All built-in Toribash functions are now properly documented and listed in system/system_defines.lua meta script which means you no longer need to wonder whether a function to do something exists or not - you can always look it up there and make use of autocompletion in your IDE when using it in your code!
More UI updates
More menus have received a facelift with 5.60, getting rounded corners and uniform design.
You'll notice the changes in moveable windows like Gamerules or MoveMemory, Replays menu and so on.
Updated MoveMemory ►
Other changes
Below goes a list of other new features, tweaks and bug fixes included in Toribash 5.60
News menu will now show notifications for unread news and events
Windows version now saves screenshots as PNG instead of BMP for easier sharing
Vastly improved 3D item loading performance
Blood particles will now collide with static environments
Collisions with static environment (e.g. walking on mod objects) will no longer generate blood particles by default
Replay and replay folders now support non-latin characters in their names
Added ability to invert camera axes in game settings
Added lower quality fluid blood option in graphics settings
Improved flame rendering performance
Improved UI rendering performance
Fixed bug with blood reflections not showing up
Fixed bug with DQ ring always being rendered at 100% opacity
Fixed bug with report post submission screen getting broken in some scenarios
Fixed bug with Toribash Discord server link in report post submission screen being broken
Fixed bug with camera getting stuck when looking up in freecam mode
Fixed bug with replay speed getting stuck at 0 in some scenarious
Fixed bug with special Toribash characters (!^%) not getting escaped in Login and Register screens
Fixed bug with item effects not being rendered in UI viewports
Fixed bug with Kiai sounds not playing on match start
Fixed bug with mod triggers not working on instagib bodyparts and when grabbing env objects
Fixed bug with menu resolution not updating after changing gui scale or game resolution
Toribash Lua scripting updates
In addition to replay hacking changes touched upon earlier, 5.60 introduces some other updates to Lua scripting:
Raycasting
Say you want to create a clickable object in 3D world. What you'd probably do earlier is get the 2D position of object's coordinates and then do some manual calculations and guesswork on whether your click position is still within object bounds on screen - which is not always easy on rotated cubes or capsules.
What you can do with Lua raycasting is create a raycastable body and then shoot rays to it to test it instead! This is essentially the same functionality as what Toribash uses for detecting joint clicks, now available through scripting.
System classes updates
Aside from getting EmmyLua annotations, majority of system classes have been majorly reworked, both to increase performance and match more modern scripts' code style.
While this means there are now new features to use in your scripts, some of old methods have been marked deprecated (and will be phased out in future Toribash releases) or had already been removed from public access.
One of the examples that we had come across during beta testing is that some third party scripts use TBMenu:displayTextField() method with manual setup instead of using the generic TBMenu:spawnTextField() method, which will throw an error in 5.60 as the former function has been moved to TBMenu internal helper class and is no longer exposed publicly. These issues, however, can be fixed pretty quickly in most cases, and migrating to the generic UI element spawner methods guarantees your scripts will be able to use any new features related to those elements in future automatically.
New Lua functions available with 5.60 ►
set_obj_linear_vel()
set_obj_angular_vel()
get_joint_state_name()
get_color_rgba()
get_clipboard_text()
generate_texture_gradient()
create_raycast_body()
set_raycast_body_pos()
set_raycast_body_sides()
set_raycast_body_rot()
set_raycast_body_rot_m()
destroy_raycast_body()
shoot_ray()
shoot_camera_ray()
add_chat_history()
generate_font()
players_accept_input()
get_body_bruise()
get_joint_bruise()
refresh_roomlist()
get_roomlist_num_rooms()
get_roomlist_room_info()
get_obj_color()
get_obj_shape()
toggle_game_pause()
is_game_paused()
get_shader_option()
set_shader_option()
Deprecated 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()
Last edited by sir; Jun 3, 2024 at 02:01 PM.
Reason: 5.68
This update adds a new color for November Battle Pass, fixes a bunch of bugs present in earlier releases and some other tweaks:
Global message pop-ups will no longer be displayed if you're currently in the broadcasted room to reduce visual clutter
Global message pop-ups will follow broadcasted room's Qi restrictions to make sure you don't get a pop-up for a room you can't join
Announcement messages (e.g. tourney winner announcement) will now stay displayed for longer instead of instantly getting overwritten by post-fight stats
Fixed bug with new chat tab spawning when you try to whisper a user in a new room while having a previous chat with them still open
Fixed potential crash on startup when attempting to open a Toribash mod file
Fixed bug with report submission status screen being impossible to close
Fixed some other minor bugs to improve overall UI stability
App Store version for iOS also features the following updates:
Chat will now automatically minimize on multiplayer room connect
Minimized chat will now play a sound when you receive a new message in an inactive tab
Fixed bug with chat becoming non-responsive after reaching max messages limit
Fixed issues with keyboard & mouse controls
Toribash 5.64 is available on Steam and App Store as an automatic update and as standalone downloads:
You can get neochrome mask as part of November Battle Pass premium rewards, we do not have plans to put it in store any time soon (if ever).
If by oni mask you mean this item, it's not going to be available in store.
Max number of unique mod turn frames increased to 128
Added proper support for opening mod / replay files with ToribashSP on macOS
Added drag-and-drop support for mod and replay files
UI dropdowns can now be quickly controlled with mouse scroll
Updated offers display in Market
Previous run's error log is now stored as stderr-prev.txt
Minor flame performance improvements
Removed legacy flame browser
Custom shader loading errors in mods and replays are no longer displayed in chat
Fixed bug with classic.tbm gamerules resetting to default when they shouldn't (e.g. in replays)
Fixed bug with potential unwanted gamerules updates triggered by game server (e.g. when changing turnframes or grip mode)
Fixed bug with legacy replays (pre 3.6) potentially getting gravity set to 0 resulting in choppy playback
Fixed bug with replays getting no author when saved during playback
Fixed bug with chat tabs remaining visible after opening chat with /opt hud 0
Fixed bug with WASD camera controls sometimes not working after replay saving
Fixed bug with UI popups getting overlayed by other UI elements in scrollable lists
Fixed crash in modmaker when attempting to open it while having classic loaded and no modmaker.tbm file existing
Fixed potential crash during Steam IAP finalization
+ various minor UI tweaks and fixes
New features available with Toribash Lua:
set_flame_setting() now supports an additional argument to select target playerid.
In addition to that, you can specify -1 to set settings for Lua-managed flames (max 10 available).
Added update_lua_flames() to trigger Lua managed flames physics update loop.
Added load_flame_texture(string path, int flameid) to load a custom texture for one of Lua-managed flames.
Added set_gameover(int gameover_type, int winnerid) to instantly end current game with the specified type.
Added GAMEOVER_TYPE global table that contains available gameover types for the function above.
Added Files.Exists(string path) method to Files class to quickly check if file exists on user's device and is available for reading.
elloo toribashers, I had few questions..
what's next for toribash? will it be abandoned in favor of toribash next or will there still be updates etc.
How can the two games coexist?