Skip to content

Releases: casual-simulation/casualos

v3.1.12

02 Dec 18:54
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed an issue where it was not possible to tilt the mapPortal camera due to an incorrect default configuration.
  • Fixed an issue where it was not possible to handle errors that occurred during calls to os.getPublicRecordKey().

v3.1.11

28 Nov 21:01
Compare
Choose a tag to compare

πŸš€ Improvements

  • Improved the map portals (mapPortal and miniMapPortal) to support the portalZoomableMin and portalZoomableMax tags.
  • Enabled the multiline code editor to always be shown regardless of if the device is a mobile device or not.
  • Added the analytics.recordEvent(name, metadata?) function.
  • Added the @onKeyRepeat shout that is fired when a key is held down and "auto repeated".
  • Added support for some simple HTMLElement functions.
    • HTMLElement objects support the following functions:
      • focus()
      • click()
      • blur()
    • HTMLInputElement objects support the following functions:
      • select()
      • setRangeText()
      • setSelectionRange()
      • showPicker()
      • stepDown()
      • stepUp()
    • HTMLFormElement objects support the following functions:
      • reset()
      • submit()
    • HTMLMediaElement objects support the following functions:
      • fastSeek()
      • load()
      • pause()
      • play()
    • HTMLVideoElement objects support the following functions:
      • requestPictureInPicture()
  • Added support for the document.getElementById() function for custom apps.

πŸ› Bug Fixes

  • Fixed an issue where Vector2, Vector3, Rotation, and DateTime values would cause the shared space to emit an error if they were stored in a tag on a new bot while it was being processed by the space.
  • Fixed an issue where it was not possible to tap on codeButton bots on mobile devices.
  • Fixed @onKeyDown to only be emitted once when a key is starting to be held down and not continually while a key is held down.

v3.1.10

08 Nov 21:05
Compare
Choose a tag to compare

πŸš€ Improvements

  • Added the systemPortalPane tag to allow CasualOS to remember which pane the user is viewing in the systemPortal.
    • This also fixes issues with being unable to select the search pane.
    • Additionally, CasualOS will now remember the systemPortal search and pane state across browser reloads.
  • Updated the terms of service with consistent wording and with a section about using OLX Services.

πŸ› Bug Fixes

  • Fixed an issue where Vector2, Vector3, Rotation, and DateTime values would cause the shared space to emit an error if they were stored in a tag on a new bot while it was being processed by the space.

v3.1.9

04 Nov 22:00
Compare
Choose a tag to compare

πŸ’₯ Breaking Changes

  • os.createDebugger() now returns a promise that needs to be awaited instead of simply returning a debugger.
  • setTimeout() and setInterval() now throw an error if called without a handler function.

πŸš€ Improvements

  • Added the ability to pause scripts that are executed inside debuggers.
    • The os.createDebugger() API now supports an additional option parameter pausable, which when set to true will cause the debugger to execute every script inside a JavaScript interpreter.
    • The following functions have also been added to the debugger API:
      • onPause(handler) - Registers a handler function that will be called when the debugger pauses due to hitting a pause trigger (i.e. breakpoint).
      • setPauseTrigger(bot, tag, options) - Registers a pause trigger in a bot and tag that the debugger will pause at if it comes across the trigger while executing code. Returns an object that represents the pause trigger.
      • removePauseTrigger(trigger) - Removes the given pause trigger from the debugger.
      • enablePauseTrigger(trigger) - Enables the given pause trigger.
      • disablePauseTrigger(trigger) - Disables the given pause trigger.
      • listPauseTriggers() - Lists the pause triggers that have been set on the debugger.
      • listCommonPauseTriggers(bot, tag) - Lists common locations that pause triggers can be placed at for the given bot and tag.
      • resume(pause) - Tells the debugger to resume execution of the scripts.
    • See the documentation for more complete information and examples.
    • Additionally, check out the debugger-example appBundle.
  • Improved os.focusOn(bot, options) to support focusing tags in the systemPortal, sheetPortal, and tagPortal.
    • options now supports the following properties:
      • tag - The tag that should be focused. If specified, then the multi-line editor will be opened in a portal (the systemPortal by default) with the bot and tag focused.
      • space - The space of the tag that should be focused. (Optional)
      • lineNumber - The line number that should be focused. (Optional)
      • columnNumber - The column number that should be focused. (Optional)
      • startIndex - The index of the first character that should be auto-selected. (Optional)
      • endIndex - The index of the last character that should be auto-selected. (Optional)
      • portal - The portal that should be opened. Supports system, sheet, and tag for the systemPortal, sheetPortal, and tagPortal respectively.
  • Added the ability to specify a custom frame buffer scale factor for AR and VR sessions.
    • os.enableAR() and os.enableVR() now can take an options object with the following property:
      • frameBufferScaleFactor is the number of rendered pixels for each output pixel. As a result, numbers less than 1 increase rendering performance by rendering fewer pixels than are displayed and numbers greater than 1 decrease rendering performance by rendering more pixels than are displayed. Defaults to 1.
  • Improved animateTag() to use 0 as a default when toValue is a number, no fromValue is specified, and there is no current tag value (or the current tag value is not a number).
  • Improved the search panel in the systemPortal to include and highlight tag names that match the search query.
  • Added the ability to show the sheetPortal in the systemPortal.
    • A new option has been added to the systemPortal to represent the sheetPortal.
    • Selecting this option will open the sheetPortal to the current gridPortal dimension, or give the user the option to specify a dimension if no gridPortal is open.
    • Clicking on the sheetPortal button again will give the ability to set the sheetPortal dimension manually.

πŸ› Bug Fixes

  • Fixed an issue where updating Vector, Rotation, or DateTime tag values on newly created bots could cause trouble with synchronizing data.
  • Fixed an issue where switching between mouse and touch input methods was not possible.
  • Fixed an issue that caused dragging bots on the Meta Quest 2 in non-immersive mode to not work.
  • Fixed touch controls to correctly rotate the camera.

v3.1.8

27 Oct 06:58
Compare
Choose a tag to compare

πŸš€ Improvements

  • Added the meetPortalDisablePrivateMessages tag to the meetPortalBot to allow hiding the option to send a new private message to another participant in the meet portal.

v3.1.7

24 Oct 05:59
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed an issue where destroying a GLTF mesh and re-creating it could cause some textures to not load correctly.
  • Fixed an issue where updates to a newly created bot would be forgotten in some scenarios.

v3.1.6

05 Oct 19:05
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed an issue where creating too many GLTF mesh forms could crash Chrome-based web browser tabs.
  • Fixed an issue where creating a bot with a DateTime, Vector2, Vector3, or Rotation tag would crash the system.

v3.1.5

04 Oct 15:23
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed an issue where the login UI would be hidden behind the sheet and system portals if trying to login while one of them is open.

v3.1.4

03 Oct 20:20
Compare
Choose a tag to compare

πŸš€ Improvements

  • Enabled the "More" section in the Jitsi meet portal settings window.

πŸ› Bug Fixes

  • Fixed an issue where using os.focusOn() with rotation set to { x: 0, y: 0 } could trigger floating point rounding errors and cause the camera rotation to be temporarily incorrect.
  • Fixed an issue where @onRoomTrackUnsubsribed listeners would not be triggered for local video and audio tracks when leaving a room.

v3.1.3

27 Sep 21:37
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed an issue where @onMeetExited could be triggered multiple times when closing the meet portal.
  • Fixed an issue where rejecting and then re-performing a tag edit would cause the multiline editor to show the edit twice.
  • Fixed an issue where the multiline editor would incorrectly edit shared bots that had not been updated. This resulted in the tag edits being incorrectly added to the end of the tag value instead of where they were supposed to be.
  • Fixed an issue where meshes that were set on a bot and then quickly removed could be incorrectly displayed.
  • Fixed an issue where the documentation link from the multiline editor wouldn't auto-scroll to the correct tag.
  • Fixed an issue where using deleteTagText() and insertTagText() would cause the runtime to get confused during tag sync and incorrectly apply an edit multiple times.
  • Fixed an issue where deleteTagMaskText() and insertTagMaskText() did not work.