Here comes another release. I sense a lot of fixes and a bunch of new scripting functions in this one!
If you’re wondering why there are so many releases lately, it’s because @Matthtz and I are working on the prototype for Project Waffle and we’re improving CraftStudio on the way! (Also, @ThomasFrick is working on some pretty amazing graphics)
Client Changes
- Fixed a massive memory leak in scenes which led to crashes
- Added /projectguid chat command to get the project’s globally-unique ID (which also happens to be the name of the folder it is stored in)
- It’s no longer possible to insert line breaks in edit boxes and the maximum chat message length has been set to 500 characters
- Improved Lua error reporting to avoid obscure “Error in .NET user-code” messages
- Models
- Fixed pivot offset not being applied when reparenting a block
- Fixed transform fields not updating when switching from the Animation to the Build pane in models
- Model animations
- Fixed bug in orientation composition order when adding creating an orientation keyframe
- Fixed the animation preview pane’s minimum size to avoid garbling the interface
- Script editor
- The current line’s indentation is now carried over to the next line when hitting Return
- Tab and Shift+Tab allow indenting / undenting one or more lines at once
- Disabled line numbers in script previews
- Tabs are now correctly converted to spaces when pasted (instead of displaying as “?”)
- Miscellaneous fixes
- Fixed linked assets names in game object components not updating live
- Fixed focus issues in popups
- Fixed a master server-related crash when reconnecting
- Fixed a ray-casting bug with maps using tiles with a size different of 16
- It’s now possible to use Ctrl as a key for camera controls again
Runtime Changes
- Script API
- Added GameObject:GetChildren which returns a list of all the direct children of a game object
- Added GameObject:GetScriptedBehavior. It returns the scripted behavior component with the specified script name (if there is one on the specified game object)
- Added GameObject:SendMessage which allows calling a method on all scripted behaviors
- Added ModelRenderer:IsAnimationPlaying which returns exactly that it says on the tin
- Fixed Vector3.Transform
Server Changes
- Fixed a crash when a client requests data for a non-existent asset
- Fixed duplication of tile sets not working and leading to crashes
