Tenterhook is currently in the alpha stage. This means there's a good chance you'll encounter bugs, incomplete features, and/or outdated documentation. Features are being added, refactored and optimized on a regular basis. Beta is expected in late 2018.
0.43.3.0 (September 16 2018)
- Improved app list UX in the Studio Lobby.
0.43.2.0 (September 16 2018)
- Improved editing of scene dimensions in Studio. When a background image is used the scene dimensions will be locked to the size of the image. When an image is NOT used, scene dimensions can be explicitly set. In either case, the scene will be scaled to fit the viewport vertically and scroll horizontally if needed.
0.43.1.1 (September 16 2018)
- Added an optional "EndState" parameter to the "WalkTo" action. Useful in cases where you want a character to face a certain direction after completing a scripted walk, rather than having to add a second "SetCharacterState" action.
- Added ability to download the manifest.json file from the Studio Asset Library, to be used in Android projects.
- Reduced the size of the downloaded manifest with a few serialization optimizations.
0.43.0.1 (September 9 2018)
- Increased the size and duration of the output window/text.
0.43.0.0 (September 4 2018)
0.42.0.0 (August 30 2018)
- Feature: added a new "ToggleTrigger" action. Useful when triggers should be conditionally enforced, e.g. locked doors and boundaries.
0.41.0.0 (August 28 2018)
- Feature: added a new "TransferInventory" action. Useful when characters need to drastically change their appearance yet preserve their inventory.
0.40.0.0 (August 22 2018)
- Feature: added a new "HasItemWithFlag" test. Handy in situations where you want to check if a character has any item with a particular flag.
- Feature: a conversation leaf can now pass an optional script parameter to a script that it executes.
0.39.0.0 (August 21 2018)
Upgraded to .NET Core 2.1.
0.38.0.0 (August 13 2018)
- Feature: Notifications can now include an image from the asset library's "UI" folder in addition to (or instead of) text.
0.37.0.0 (August 8 2018)
- Triggers now have an "Is Targetable" property that determine whether their Display Name is shown during a mouseover/click event. Regardless of whether a trigger is targetable, it will be activated whenever a character enters its designated area.
0.36.0.0 (August 3 2018)
- Various bug fixes involving triggers and commands.
- Reverting the "sticky command" feature from 0.35.0.0, at least for now. It will be re-introduced in the future as a user-configurable setting.
0.35.0.0 (July 29 2018)
- When you select a command (e.g. "Examine" or "Use") it will now stay activated until it is clicked again, at which point it will reset to the default "Walk to" command. This is different from the previous behavior, where every time a command was executed the dashboard would reset to "Walk to" automatically. This change should mitigate the risk of carpal tunnel, especially when players want to quickly examine many parts of a scene.
0.34.0.0 (July 27 2018)An overhaul of the web-based UI! A quick summary of the changes:
- Scenes always scale to fill as much of the screen as possible (in both Studio and Play mode).
- The dashboard is docked at the bottom and the "accordion" has been removed.
- A new Dashboard button opens the Options dialog for load/save game, About info, etc.
0.33.0.0 (July 10 2018)
- Updated scene scrolling algorithm (scroll threshold is no longer a setting). If scrolling is enabled, the scene will scroll when the character is within [1/4 viewport width] pixels of the left/right edge.
- Various bug fixes.
0.32.0.0 (July 9 2018)
- Feature: the default notification sound can now be customized in Studio -> Application Settings.
0.31.0.0 (July 9 2018)
- Feature: Commands are now associated with (and represented by) an icon/image instead of a text label.
0.30.0.0 (July 2 2018)
- Bug fix: Fixed issue with Studio Lobby where New App wasn't launching template picker.
- Bug fix: Fixed issue with Conversation Editor where the "(any)" option for Active Character was breaking conversations.
0.29.0.0 (June 26 2018)
- Each entry in the Development Blog now has its own page.
0.28.0.0 (June 18 2018)
- In the Animation editor, the Repeat property has been replaced by a Loop (boolean) property, which will determine whether the animation loops indefinitely. For characters, the "walk" and "talk" animations will always loop.
0.27.0.0 (June 11 2018)
- Upgraded to Angular 6 and it was quite painful.
0.26.0.0 (June 11 2018)
- Bug fix: the "Start" button is no longer shown in Studio mode.
- Feature: triggers are now eligible targets in Scenario Editor.
0.25.0.0 (May 19 2018)
- Prompting user to click "Start" if the browser requires user interaction prior to auto-playing sounds.
0.24.0.0 (May 19 2018)
- Fixed bug in Scenario Editor. TypeScript improvements in core/studio modules.
0.23.0.0 (May 10 2018)
- Various improvements and bug fixes in preparation for upcoming features and samples.
0.22.0.0 (November 24 2017)
- The platform has been upgraded to Angular 5 (CLI).
0.21.0.0 (September 24 2017)
- The platform has been upgraded to Angular 4 (CLI) and ASP.NET Core 2.
0.20.0.0 (June 3 2017)
- Feature: Scripts now have an End Actions collection. Any actions that are added to this collection will be executed after all of the script's tests have been fully processed. This feature can be used to "chain" multiple complex scripts by including a RunScript action in the End Actions collection.
0.19.0.0 (May 29 2017)
- Feature: Storyboards now support two types of easing on Move animations: Linear and Swing. Linear easing produces a constant rate of movement between the current and destination coordinates, whereas Swing starts slowly, gradually speeds up, and ends slowly.
0.18.0.0 (May 21 2017)
- Feature: the Scale to Fit Window option (Global->Application Settings) enables an application to fill a browser window without spilling out of view in any direction. By default this setting is unchecked, meaning the application will occupy a fixed area regardless of the size of the window. Note: this setting is currently only available in Play mode, Studio/Preview mode will not apply the scale.
0.17.0.0 (May 14 2017)
- Feature: the new HourBetween and MinuteBetween tests enable scripts to evaluate the user's local time. This could be used for all sorts of scenarios, like changing a scene based on the time of day.
0.16.0.0 (May 11 2017)
- Feature: the new ToggleVisualsByFlag action shows/hides all scene visuals with the specified flag.
- Feature: the new SendMail action sends mail to the app creator. No other recipients can receive mail via this action.
0.15.0.0 (April 16 2017)
- Feature: there are now two audio channels, one for general sounds and one for background music. The volume of each channel can be controlled in the Dashboard.
0.14.0.0 (March 28 2017)
- Upgraded to Angular 4.0
0.13.0.0 (March 12 2017)
- Feature: the Global menu has a new Variables section which supports the creation of numeric and string variables. Variable values can be set at runtime via the SetNumericVariable and SetStringVariable actions. Variable values can be checked at runtime via the VariableEquals test.
0.12.1.0 (March 5 2017)
- Bug fix: New Game now properly resets the baseline manifest when a game is already in progress.
0.12.0.0 (March 4 2017)
- Feature: all visual types can now be rotated.
- Feature: added an "IFrame" visual type that supports embedded content such as YouTube videos.
0.11.1.0 (February 27 2017)
- Bug fix: if a spritesheet is uploaded to Asset Library while CharacterEditor is open, CharacterEditor will show the new sheet in its lists.
- Bug fix: when a spritesheet is unassigned from a character, any of its animations using that spritesheet will revert to using the (active) spritesheet.
- Bug fix: Scene Graph should now auto-adjust its dimensions when the current scene background is changed.
0.11.0.0 (February 26 2017)
- Feature: Added support for the OpenURL action. Tenterhook will attempt to open the URL in a new tab/window automatically; if the attempt is blocked, the user will be prompted to click on the URL to spawn the tab/window.