CraftStudio Client / Runtime 0.1.6.0, Server 0.1.5.0

Hey folks, here’s CraftStudio 0.1.6.0 (with Server 0.1.5.0)!

Many exciting improvements in this release, including new map block shapes, improved node reparenting, tons of fixes and lots of new scripting functions!

Client changes

  • Implemented new block shapes for maps: inverted stairs, corner slope, corner stairs and corner panes
  • Implemented basic support for global opacity in ModelRenderer and MapRenderer components. It doesn’t work well yet but it’s a start.
  • Reparenting model blocks and scene nodes now keep their position / orientation properly. No more jumping around!
  • Paint
    • When copying in bitmap compatibility mode, the background is now filled with magenta for easier removal
    • It’s now possible to move a selected part of the texture with the Move tool without first cutting / pasting it
    • Fixed a client-side transparency bug when pasting
  • Scripts
    • It’s now possible to indent a bunch of lines at once by selecting them and pressing Tab (Shift+Tab for unindenting is coming soon)
    • Fixed text wrapping bug in script editor
  • Miscellaneous bug fixes
    • Fixed the Animation tab’s model not updating properly sometimes
    • When a member’s account type is updated on connection, all connected members are now properly notified
    • The Blacklist / Remove / Approve buttons in the Members pane of the Administration tab are now properly hidden if they can’t be used
    • Fixed various popup-related bugs
    • Fixed spinning wheel displaying forever alone when previewing a map with no tile set
    • Fixed a crash when trying to create a model node before the model had been downloaded from the server
    • Fixed a rare crash when deleting or renaming scene nodes

Runtime changes

  • Bumped the Script API version to 2 because of Transform:Rotate and Transform:RotateLocal now using Quaternion.
  • Added ModelRenderer:SetModel, ModelRenderer:GetModel
  • Added MapRenderer:SetMap, MapRenderer:GetMap
  • Added MapRenderer:SetTileSet, MapRenderer:GetTileSet
  • Added SetOpacity and GetOpacity to ModelRenderer and MapRenderer
  • Math
    • Implemented Vector3.Dot, Vector3.Cross, Vector3:SqrLength(), Vector3 * Vector3, Vector3.Transform, Vector3.Distance and others functions (thanks @3DReMix for submitting most of those!)
    • Added Quaternion class (with a few useful methods, probably more to come)
  • Bug fixes
    • Fixed game object orientation composition order. Basically there was a bug in Transform:GetEulerAngles() which returned the wrong value. Now fixed. Yay!
    • Fixed camera lagging behind one frame when its transform is updated
    • Fixed CraftStudio.Instantiate crashing when called from Behavior:Awake()

Server changes

  • The bind address & port is now displayed when the server is starting
  • Added support for the new map block shapes