See also the changelog of the main JavaScript library (https://github.com/vorple/vorple/CHANGES). Release 4.0.1 (2022-06-26) Release 4.0.0 (2022-05-11) =========================================== No changes to the Inform 6 libraries. Release 3.2.8 (2022-04-25) =========================================== Tooltips -------- - Fixed timed tooltips throwing an error in the browser console if their target element didn't exist Release 3.2.7 (2022-04-11) =========================================== No changes to the Inform 6 libraries. Release 3.2.6 (2022-02-16) =========================================== Status Line ----------- - Fixed full-width status line not being inserted to the correct place Vorple ------ - Fixed the "place an element called ... at the top level" phrase doing nothing Release 3.2.5 (2021-02-22) Release 3.2.4 (2021-02-14) Release 3.2.3 (2020-09-03) =========================================== No changes to the Inform 6 libraries. Release 3.2.2 (2019-11-19) =========================================== Multimedia ---------- - BREAKING CHANGE: resource_paths option in the main HTML file now needs a leading slash (/) at the end of the paths (e.g. "image/" instead of "image".) The HTML file that's included with Vorple has been updated but anyone upgrading an existing project must replace or edit their HTML file. - Added compatibility with the new Borogove online editor Release 3.2.1 (2019-11-17) =========================================== - Removed references to the GLK_NULL constant which makes the library directly compatible with the latest version of the Inform standard library (6.12.3) - Fixed issues with Unicode input and other Glulx-level methods that caused crashes mainly with the Russian Inform library (#26) Release 3.2.0 (2019-09-14) =========================================== Vorple ------ - Modified the Wikipedia script in The Sum of Human Knowledge example to make use of Wikipedia's new extracts feature, which returns a clean summary of the article (inform7 #14) - Fixed Unicode escaping for JS strings (#22) Release 3.1 =========================================== Vorple ------ - Added the Status Line extension. - BREAKING CHANGE: Evaluated JavaScript code must now explicitly return a value from the expression, otherwise no return value is available in Inform. (Any time you used the VorpleWhatXXWasReturned routines, you need to add 'return' in the JS command that was supposed to return your valeu.) Previously the value of the last expression was automatically returned. See the Vorple extension documentation for details. - BREAKING CHANGE: For performance reasons the interpreter now writes the type of the evaluated JavaScript expression to a file for Inform to pick up, instead of having the Inform extension deduce the type from the value. This means that, to get the type, you need to use VorpleWhatTypeWasReturned(), and not VorpleWhatType(text). - Added the Vorple interface update rulebook as a mechanism for state-based user interface updating, specifically for keeping the UI in sync after undo and restore. - Fixed the display bug for Unicode (non-ASCII) characters sent through JavaScript; for instance the tooltips can now have accented characters in them. - Added the constant VORPLE_NO_REPLACES to be able to avoid replacements of routines of the Inform library. Thus, the author can avoid potential conflicts in case his own source code also replaces these routines. - Removed dependence on Roger Firth's JustEnoughGlulx extension -- the 'bp_output_stream()' routine is now implemented in vorple.h. This avoids potential conflicts in case the author uses Glulx entry points. - Added a stub "MyVorplePrompt" to define a routine displaying the prompt, instead of having to change directly the grammar file (which was the only method that worked before). - Refactored the compare_string function, which can now compare two arrays when previously it required the second argument to be a string. - VorpleEscape now (correctly) escapes double quotes too. - Uniformed (to a large extent) code tabulation criteria. - Fixed a bug with prompt handling - now the code checks if the prompt has changed before updating the value, instead of overwriting at every turn. - Added title of a notification to the fallback. - The LookRoutine stub is not used anymore Element manipulation ------ - Moving elements is now working (and uses the right jQuery methods). Modal windows ------ - BREAKING CHANGE: Due to how the modal windows block Inform from continuing with the turn, having an Inform function to close modals doesn't really have any practical use. The VorpleCloseModalWindows function is therefore removed from the extension. - Added the possibility to pause the game or not after displaying a modal window. Multimedia ------ - Fixed a bug for the fallback to when trying to display an image with no alternate description. - Added an "always from the start" modifier to "start music" phrase, which forces the file to start playing from the beginning even if the same track is already playing. - When starting a playlist, if a track that's present in the playlist is already playing at that moment, the track will not be stopped and the playlist will now continue from that place instead of from the beginning, unless the "always from the start" modifier is provided. - Fixed the Serinette example. Notifications ------ - Fallback in non-Vorple interpreters now includes the notification title (#8) Release 3.0 =========== - Moved to the new Glulx-only interpreter model - Added the Command Prompt Control, Element Manipulation and Status Line extensions Vorple ------ - Removed the concept of queueing JavaScript code, because the new interpreter doesn't have the same limitations queueing used to solve - Removed the special rulebook that was designed to let the interpreter pass control commands to the game before the "when play begins" rulebook, because the new model doesn't need to communicate through line input anymore - Similarly, because communication through line input isn't a central concept of the system, triggering line input from I7 has been moved from the core extension to a new Vorple Command Prompt Control extension - Added a Vorple interface setup rulebook that also runs before the "when play begins" rulebook but is guaranteed to run only once per web page load and is meant for initializing the user interface, e.g. event handlers - Passing JavaScript to the interpreter doesn't use output streams in the new system so JavaScript can't mess up line breaks in normal output anymore - Restarting the game doesn't pop up a custom restart prompt because the new interpreter can handle native restart correctly - Removed the transient text description from the documentation, since the interpreter doesn't provide it by default anymore - Removed turn type marking from the core extension - "display (text) in element (text)" is now "display text (text) in element called (text)" and for consistency with other phrases "display (text) in all (text) elements" is now "display text (text) in all elements called (text)" - Added the phrase "set output focus to ..." which will cause further output to continue in the named element - Added phrases to find the number of elements and testing for the existence of elements - Tweaked the Sum of Human Knowledge example's Wikipedia script to return meaningful results more often - Removed an extra line break in the banner after Vorple credits when there's more text added after it Hyperlinks ---------- - Fixed a bug that caused linked text to be displayed twice in non-Vorple interpreters - Removed the option to suppress story output when making links that trigger parser commands because it's not the recommended way to pass information to I7 anymore - Added an option to name the links for referring to them in the future - Added links that execute JavaScript code - Added phrases to disable links - For consistency, the default classes that are applied to the link elements are now called "vorple-weblink", "vorple-commandlink" and "vorple-jslink" Multimedia ---------- - Removed the YouTube video feature - Added playlist features - Added phrases for checking if audio is playing and retrieving the file name of the currently playing music - "Sounds" are now called more specifically "sound effects" - For consistency, the "display image" phrase now puts the image in an existing element. Creating new images (the old behavior) is done with a "place image" phrase, consistent with the core extension's element creation phrases. - When displaying images, they must be accompanied by a description for screen readers and non-Vorple interpreters - When adding custom classes to the images, they're added after the default class "vorple-image" - Added a note to documentation about the possibility of using images from other URLs Notifications ------------- - Notifications are split into two separate extensions: "pure" notifications (short messages that disappear after a while) stay in this one, and more complex dialogs are moved to the new Vorple Modal Windows extension. - Changed the notification JavaScript library to Toastr (http://codeseven.github.io/toastr/) - Four different notification types (info, success, warning, and error), provided by Toastr, are now supported - Notifications can now have titles - Custom positioning is removed. Notifications are shown in the location that's defined in CSS. Positioning is responsive, i.e. they're shown top right except in mobile view where they're shown as a top bar. - The phrase to show the notification is changed to be consistent with other extensions ("display a notification reading...") - Added an option to define how long the notification is displayed Screen Effects -------------- - The extension is now designed to work together with Basic Screen Effects by Emily Short instead of as a complete replacement. As such Basic Screen Effects is now automatically included with Vorple Screen Effects. - The phrase that creates centered text no longer has an option to print the text in fixed letter spacing. A note has been added in the documentation instructing how to apply any styling to the centered text block. - The extension now extends Standard Rules' "boxed quotation" feature so that in the Vorple interpreter the boxed quotation is placed inside a blockquote element - Renamed the right-align phrase to right align - Vorple style values are now allowed to consist of more than one word and they may contain uppercase characters. When applying styles to an element, the style value is converted to lowercase and spaces are replaced with dashes. - Because the values can have more than one word, basic style values include the word "font" to avoid namespace clashes, e.g. the "cursive" value is now "cursive font" and so on - Similarly color styles are now called " letters" and " background" - Removed the transient font style (fading out content at the start of next turn) because the interpreter doesn't provide the feature anymore - Added more color styles. The basic set now covers the full 16-color EGA palette, which is what the Haven interpreter provides out of the box. - Added phrases to change elements' text and background colors to arbitrary values, including setting the alpha channel (opacity) - Removed the "end all styles" phrase which would also close all currently open non-style elements - Removed the "default letters" phrase which would have the same issues as "end all styles" and as an analogue to the equivalent Z-machine phrase isn't necessary anymore - Glulx doesn't support text colors the same way that Z-machine did, so there are no non-Vorple fallbacks for text and background colors anymore - Related to the removal of the color fallbacks, removed the individual "say letters/background" phrases that existed for two reasons: firstly, they replaced the equivalent Z-machine phrases from Basic Screen Effects, and secondly they were more readable than the one-word color styles. The Z-machine phrases aren't used anymore and color styles are now more naturally named so they don't have any reason to exist anymore. - Renamed the phrase to change the styles of the entire page to "apply (vorple style) to the entire page" which can be used to apply any style to the interpreter window - Added helper phrases for making header and list elements Tooltips -------- - Syntax for adding mouseover tooltips to existing elements changed to "attach" instead of "display" to more accurately reflect the fact that the tooltip isn't displayed immediately - Syntax for displaying tooltips immediately is changed from "... element" to "element called ..." for consistency with other extensions - Removed the option to pass tooltip delay in milliseconds - Added an option to pass the duration for how long manually triggered tooltips are shown, in addition to an "indefinitely" option to never automatically hide the tooltip - Added phrases to hide tooltips - Tooltips are no longer attached to all future elements automatically if they match the classname of previously attached tooltips. In other words, when attaching tooltips to all elements, the "all" refers only to currently existing elements. - When creating text with tooltip attached with "place text ... with tooltip" the element can be named - Fixed example "How To II" so that it won't suppress parser messages - Fixed wrong phrases in the documentation Release 2.5 (2014-05-07) ======================== - Updated to work with the new I7 release - Changed the author's name from "The Vorple Project" to "Juhana Leinonen" to conform with Inform 7 extension guidelines, added "Vorple" in front of extension names, renamed "Hypertext" to "Hyperlinks" and "Core" to just "Vorple" - Added the "Vorple Screen Effects" extension - Added and fixed examples across the board Vorple ------ - Separate checks for new Z-machine 1.2 streams and caching Vorple availability (closes #1 in main repo) - Removed the Undo Output Control which is now unneeded - Reworked the creation and placing content to HTML tags completely. The only allowed phrases are now "place an ["element"] element [called "name"] [reading "text"]", "display "text" in the element "name"" and "display "text" in all "name" elements". The "display "text" in the element "name"" phrase affects only the last available element. - Changed "eval" to "execute JavaScript command/code" and "queue code" to "queue JavaScript command/code" - Moved transient text to the Screen Effects extension - Added phrases to issue commands directly to the parser Hyperlinks ---------- - Added a missing full stop at the end of first line which prevented the extension from installing correctly - Added an option for external links to open in the same window - Renamed the phrases to match the new phrasing in the main extension - Leaving out the links' text content will default to the link target Multimedia ---------- - Replaced documentation about including resources with the current version Tooltips -------- - Added the missing "Z-machine only" directive - Renamed the say phrase to match the main extension's new phrases - By default tooltips are shown only on the last matching element - Phrases to create tooltips that are activated on mouseover - The delay for showing the tooltip can be supplied, and the default delay is dropped from 3 seconds to nothing.