Entries Tagged 'New Releases' ↓

New 2014 build of Inform now out

Build 6L02, the first new release of Inform in three years, is now available fromĀ http://www.inform7.com.

This release is a major reform of a now-mature language which is widely used, and it has been over three years in the making. It has the following main objectives: to clarify and better enforce the syntax of the language (which is now formally documented); to have much greater linguistic flexibility, enabling stories to be written in any person and tense, and paving the way for translation to non-English languages; to remove phrases and features which have been deprecated for some years; to remove procedural rules, which were little used or understood and incurred a significant speed cost at run-time, in favour of simpler ways to substitute rule behaviour; to remove assumptions about the kind of narrative being written (i.e., that Inform is always making a “game” which is “won” or “lost” and has a “score”); to reform the rules handling “blocked” actions, such as listening; to redesign the Index, the in-application documentation, and the extensions index; to reform the handling of text, unifying “text” and “indexed text”, and improving their performance; to introduce a simple but powerful system of “responses” allowing authors to change stock replies in the Standard Rules and other extensions, including third-party ones (and also to make it easy to translate these to non-English languages); and to implement full floating-point arithmetic in numerical kinds of value, at least on the Glulx virtual machine.

This will be a disruptive release. Existing source texts which use deprecated features will no longer work, and the improved syntax checking means that Inform will catch problems it previously missed. It should also be noted that the run-time implementation is different in numerous ways: story files are a little larger but will run a little faster. We believe that almost all Inform projects will be able to migrate to the new system with reasonable ease – for example, “Bronze”, a large story written in the very early days of Inform 7, took about an hour’s work to adapt. Nevertheless, authors of large existing Inform projects may want to be cautious in their approach to what is, we stress once again, an across-the-board reform of the language.

This release also refines the user interface for the Inform application. As in Inform 7′s earliest days, new features are being piloted on Mac OS X, but will make their way to Windows and Linux soon – Toby Nelson, David Kinder and Philip Chimento are all working on these refinements. Search facilities are improved, but the big new feature is the Public Library, which automatically matches the user’s collection of extensions against those on the Inform website, and allows the user to download or update them singly or en masse at the click of a button. There are no user accounts, no passwords; no data is held about Inform users at the server; and everything is free.

The existence of the Public Library will, we hope, be good news for extension writers – it will now be much easier to get your extensions out to users. We’ve always had a set of community standards for extensions, and Mark Musante, the Inform project’s extensions librarian, has put in a good deal of work in recent years to look after all this. We now want to go further with that. The Inform website holds hundreds of extensions going back several years, but some of those are out of date, and many will contain deprecated phrases now removed from the language. So the rule is that the Public Library will contain only those extensions from the website which comply with the guidelines and which work properly on the 2014 Inform – we don’t want new users, especially, to download obsolete code. Firstly, extensions should always use Responses to reply to the player’s commands: this will make them more flexible and easier to translate to natural languages other than English. (At present German IF authors, say, have to “fork” extensions in order to translate them, and we want to avoid the need for that.) Secondly, these responses should where appropriate use adaptive text substitutions so that they will work in any person and tense, and will correctly cope with plural or proper nouns in all situations. An extension which does all this is called “adaptive”. As from this build, all built-in extensions are adaptive, and we hope for quite a rapid takeup from third-party extension writers, too, since there is much to be gained and the changes are quite simple to make. Since adaptive versions of extensions will be incompatible with older builds of Inform, we are making arrangements to keep old non-adaptive versions of extensions online at the Inform website (just as older released builds are always available for download): those won’t be on the Public Library, but they’ll still be available for direct download just as they are now.

Note that a number of existing extensions to provide adaptive text facilities, such as Plurality by Emily Short, will now be redundant. But our build is indebted to this early work, particularly by Aaron Reed and David Fisher.

This new version was basically finalised on 30 April 2014, Inform’s 21st birthday, but has taken a few days to get ready for distribution. It incorporates over 500 bug fixes, and there was a brief period (yesterday) when the Core Inform project on the bug tracker made it all the way down to 0 unresolved issues, though I see that this is back up to 4 today. For a fuller account of what’s new, including an itemised list of bug fixes, see the change log, which is also now available in EPUB form (as is the documentation in general).

Enormous thanks to the very many people who’ve helped this work along, and especially to Emily Short, Andrew Plotkin, Toby Nelson, David Kinder, Philip Chimento, Andrew Hunter, Adam Thornton, Erik Temple, Eric Eve, Dannii Willis, Ron Newcomb, Juhana Leinonen, Jesse McGrew, Mark Musante and Justin de Vesine.

Inform 6G60

…is now available for Mac, with builds for other platforms to follow.

The chief change of note is the extensive revision to the World Index. Mapping is now considerably more robust and offers more authorial control over presentation; several Uservoice requests about indexing were fulfilled at the same time.

A fuller description (with pictures!) is available here.

Other minor changes may be found in the change log.

Inform 6F95

Inform 6F95 is now available for the Mac, with other builds to follow.

This maintenance release fixes every core Inform issue logged on the Inform bug tracker up to today, which means that it resolves around 180 issues; this change log lists most of them, but omits a few which were simple corrections of typos, and of course doesn’t list the small number of issues closed as being misunderstandings. Though there are no significant new features, two additional resources have been added to the core Inform distribution: Andrew Plotkin’s Quixe interpreter, allowing Glulx story files to be released as playable websites (something up to now allowed only for Z-machine story files); and Eric Eve’s extension “Epistemology”, which joins the built-in set for the first time.

6E72 now for Windows, Linux CLI

6E72 for Windows and Linux CLI are now available from the download page.

6E72 on Mac OS 10.4 and 10.5

Unfortunately, there appears to be an issue in the IDE under pre-10.6 versions of the Mac OS, such that Inform refuses to run the compiled game in the IDE or to release it properly. This appears to be intermittent and has a workaround (closing a newly-made project and opening it again) under 10.5; in one case on a PPC for 10.4, the workaround does not work.

For more background on this issue, see these Mantis reports: 1 2. When an updated version of the Mac OS IDE becomes available, we will announce the replacement here.

6E72 Maintenance Release

The Mac OS X version of Inform release 6E72 is now available, to be followed by versions for other platforms. This version offers no new features, but fixes a number of bugs from the 6E59 release that were deemed critical or serious. (Some bugs considered mild or cosmetic remain.)

The change log lists the bugs fixed, and more detail about them can be found at the bug tracking site.

6E59: Phrasebook Index

screen-shot-2010-06-16-at-111153-pm

One substantial change to Inform release 6E59 is the improvement to the Phrasebook tab of the index. The new version has been substantially redesigned so that each phrase expands to a detailed description of syntax, linked to an equivalent portion of the manual.

This is a partial attempt to address the ongoing desire for better reference documentation in Inform 7.

For the time being, we have not updated the plain text “syntax document” that accompanies Inform to account for the syntax of 6E59. One reason for that is time — it would need some hours of work to be brought in line with the new build, and the document maintainer is over-extended — but the other reason is that we are hoping to discover whether the Phrasebook can usefully take over some of the work that the syntax document has done in the past. Obviously, it won’t handle everything — the syntax document addresses assertions as well as phrases, and assertion formats are not discussed in the Phrasebook. On the other hand, the Phrasebook is automatically generated, reliably thorough, and directly linked into the documentation — features the syntax document can’t copy. So we are hoping to move towards improving Inform’s indexing and documentation, rather than continuing to produce syntax documents indefinitely.

Suggestions concerning this — the usefulness of the Phrasebook, and any other elements that might be needed — can helpfully go on the uservoice forum.

6E59: Generalized scene rulebooks

The change log mentions very briefly:

Up to now, every scene has had a “when S begins” and “when S ends” rulebook,
but there has been no way to express rules generalising about scenes. We
can now write, e.g.:

A scene can be bright or dim. A scene is usually dim. Dawn is a bright scene.

When a scene which is bright ends: say “So passes the bright [scene being changed].”

When a recurring scene begins: say “Groundhog Day!”

In addition, text defined in quotes after a scene definition becomes part of the scene description, and is printed automatically when the scene begins.

The new example Entrevaux shows how these features might be used for a scene-centric rather than location-centric kind of programming.

6E59: “end the game” vs. “end the story”

The new build discourages the use of several old phrases; of these, perhaps the most common is the set “end the game in victory”, “end the game in death”, and “end the game saying…”. Almost every project will have contained at least one of these phrases.

Instead, Inform now prefers

end the story
end the story finally
end the story saying (text)
end the story finally saying (text)

There are two reasons behind this change.

One is to move away from the terminology of “game”: not everything produced by Inform these days is a game.

The other is to deal with an inconsistency in the old system. The previous phrasing structure meant “end the game saying ‘…’” could only be used to describe what Inform thought of as “losing” endings. This corresponds to a structure from Inform 6, where there could be only one victory message, but any number of exotic death messages.

The distinction between winning and losing has been replaced by a distinction between “final” and “non-final” endings. This makes a difference only to what is printed by the “Table of Final Question Options”: it is possible to specify some options to be printed only if we have reached a final ending — for instance if there is spoilery information we would like to show the player only after we know he has seen everything the story has to offer.

For more about the options at the end of the story, see the Recipe Book on Out of World Actions and Effects > Ending the story.

6E59: Code 10 issues for Windows resolved

The issue that had been causing a Code 10 error for some large Windows projects has now been resolved. If you are encountering this problem, please redownload and install Windows from the downloads page.

The fixed build has no other changes and is otherwise still in line with the Mac and Linux builds.