mirror of
https://github.com/ganelson/inform.git
synced 2024-07-16 22:14:23 +03:00
163 lines
9.4 KiB
Plaintext
163 lines
9.4 KiB
Plaintext
4B91 (10 November 2006)
|
|
|
|
(Windows only) Images now appear in the game tab when running a Glulx game,
|
|
rather than the place holder "[Image n]" text. (This brings the Windows
|
|
application into line with the OS X one.)
|
|
(Windows only) The right-click menu for the source tab now includes a sub-menu
|
|
to change the size of the text.
|
|
(Windows only) Ctrl-Delete and Ctrl-Backspace in the source tab no longer
|
|
confuse the undo logic.
|
|
(Windows only) The cursor arrow keys now work in the game tab.
|
|
(Windows only) The toolbar should no longer appear corrupted on 24-bit displays.
|
|
(Windows only) When running Glulx games in the game tab, the
|
|
stylehint_Proportional flag is now respected.
|
|
(Windows only) When running Glulx games in the game tab, glk_window_clear()
|
|
now works.
|
|
On both the Mac OS X and Windows applications, documentation searches now
|
|
cover the examples as well as the main text, and search results are
|
|
more clearly displayed.
|
|
The Glulx story file format is fully supported by Inform for textual works,
|
|
and we have therefore documented it as a choice available for designers:
|
|
see section 2.13, now retitled "Limits and the Settings panel".
|
|
The commonest source of problems with Glulx to date has been to do with
|
|
screen effects such as coloured text and menus, and in particular to
|
|
do with the extension "Basic Screen Effects", which works only for the
|
|
Z-machine formats. Because of this, and because we expect that people
|
|
will want to write other extensions providing unusual effects, two
|
|
new features have been added:
|
|
- An extension can describe itself, in its top line declaration, to
|
|
be for a limited range of story file formats. This is displayed in
|
|
the "Installed Extensions" documentation chapter, and an attempt to
|
|
use an extension with a story file format which does not match will
|
|
produce an explanatory problem message.
|
|
- Individual headings can specify that they contain material to be
|
|
used only with certain story file formats. This allows extensions, in
|
|
particular, to provide different implementations of the same idea -
|
|
for instance, a Glulx version and a Z-machine version - so that the
|
|
user will get the same behaviour whatever the current project Settings.
|
|
See the new section 21.6: "Extensions and story file formats".
|
|
The use of illustrations is now officially supported. This was implemented
|
|
in 3Z95 but documented only in the change log; for this build a new
|
|
chapter on illustrations, Chapter 19, has now been added to the
|
|
documentation.
|
|
The "Release along with an existing story file" option has been improved,
|
|
and is now fully documented for the first time: see the new section
|
|
20.15, "Republishing existing works of IF". This enables Inform 6
|
|
users, or those with old games compiled using Informs 1 to 6, to
|
|
repackage them with cover art and bibliographic data for modern
|
|
interpreters such as Zoom, Spatterlight or Windows Frotz.
|
|
"When play ends" rules are now run when play ends "in victory"; previously,
|
|
they were run on every other outcome but not this one. This is a change
|
|
in the design rather than a bug fix, so it may cause existing source
|
|
text to change its behaviour: if you are using "when play ends" rules
|
|
in a work in progress, you may want to test to see if victory is still
|
|
presented as you would wish it.
|
|
If a scene is created with a name such as "Grand Finale", one can now
|
|
write rules for "When the Grand Finale begins: ...", etc., equivalently
|
|
to "When Grand Finale begins: ...". (This is in effect a bug fix, since
|
|
the same text would previously have created a spurious rule called
|
|
'Grand Finale begins' which was never invoked, rather mysteriously.)
|
|
The syntax "otherwise if" (or "else if") is now allowed. This divides up
|
|
an "if ... begin; ...; end if", for instance as follows:
|
|
if the player is in the Garden
|
|
begin;
|
|
say "The wind rustles the long grass.";
|
|
otherwise if the player is in the Gazebo;
|
|
say "The wind catches at the canvas roof of the Gazebo.";
|
|
end if.
|
|
There can be any number of "otherwise if"s within an "if... end if".
|
|
(Note the lack of a "begin" at the end of each "otherwise if" - the "if"
|
|
is all one block of phrases.)
|
|
This new syntax is somewhat experimental, so will be documented in the
|
|
next build rather than this one.
|
|
Problem messages have been added for use of '[if ...]' inside an existing
|
|
'[if ...]', and for '[otherwise]' or '[end if]' used with no matching
|
|
'[if ...]'.
|
|
Extensions:
|
|
Basic Screen Effects revised to compile correctly under both Glulx and
|
|
Z-machine; documentation updated; version number advanced to 3. (Thanks
|
|
to Eric Eve for his contributions.)
|
|
Plurality revised to include additional management for pronoun behavior
|
|
(providing wrappers for Inform 6's MANUAL PRONOUNS constant and the
|
|
PronounNotice() routine), and to print "you" when the item described is
|
|
the player, in it/them phrases; documentation updated; version number
|
|
advanced to 2.
|
|
Punctuation Removal revised to indicate that it is for the Z-machine only.
|
|
Examples:
|
|
"Garibaldi" altered to reflect that colored lettering can be used only
|
|
under the Z-machine.
|
|
"Scooby" reworded slightly to avoid a conflict with the new "otherwise if".
|
|
The limit on the size of a single I6 code inclusion, previously 10K, has
|
|
been substantially raised (to 200K): this for the benefit of one or
|
|
two complex extensions needing to incorporate very long hand-coded
|
|
I6 routines.
|
|
Problem message added for actions applying to two non-object values at once,
|
|
and bug fixed which (sometimes) caused this to generate a spurious
|
|
problem message on the wrong action.
|
|
Problem message added for "...an X with L", where L is a literal value
|
|
such as a number, rather than the previous internal error.
|
|
Problem message added for "X is a value that varies", which doesn't say
|
|
what kind of value it is, rather than the previous internal error.
|
|
Problem message added for relations created between kinds of value with
|
|
an infinite range, in those cases where this is forbidden because
|
|
the run-time storage needed would be impracticable.
|
|
Problem message added for compiled descriptions which contain local variables
|
|
(which will no longer exist when these descriptions need to be used:
|
|
this resulted in enigmatic "subtype of oversized local" internal errors).
|
|
Problem message added for calling a variable simply "variable", as in
|
|
"The favourite son is a variable."
|
|
Bug fixed in which I7 could sometimes crash on being asked to place rule A
|
|
after or before rule B in rulebook R, when B is not in fact in R: an
|
|
explanatory problem message has been added to respond to this.
|
|
Bug fixed in which a room could not be called simply "Void".
|
|
Bug fixed in which boxed quotations would sometimes produce array lookup
|
|
errors. (A bug introduced only in 3V01: apologies.)
|
|
Bug fixed in which text containing an "[if ...]" and then an "[otherwise]"
|
|
but no "[end if]" and finally a substitution containing an ambiguity
|
|
not soluble at compile time would sometimes generate I6 code missing
|
|
a label definition, causing I6 to reject the output of I7.
|
|
Bug fixed in which number variables initialised to negative numbers would
|
|
be created with the wrong value.
|
|
Bug fixed in which attempts to match a snippet against a non-topic would
|
|
crash the virtual machine: they now produce a new run-time problem.
|
|
Bug fixed in which reaching inside rules affected removing differently from
|
|
taking.
|
|
Bug fixed in which RELATIONS testing command gives incorrect output for
|
|
some object-to-value relationships.
|
|
Bug fixed in which actions applying to two values, and using the word "with"
|
|
in their names, were not always possible to categorise as named actions.
|
|
Bug fixed whereby "(with nouns reversed)" did not work when applied to actions
|
|
whose names consisted of a single word.
|
|
Bug fixed to do with "P of the X of Y", e.g., "price of the bag of sweets",
|
|
being misread.
|
|
Bug fixed whereby "let Name be Value" would sometimes create Name with the
|
|
wrong kind of value (e.g. a time instead of an object) in cases where
|
|
the Value part was susceptible to multiple interpretations.
|
|
Bug fixed causing a value consisting of the lone word "entry" to cause an
|
|
internal error.
|
|
Bug fixed whereby setting a description for generic player-characters would
|
|
cause I6 to fail to compile I7's output.
|
|
Bug fixed whereby a test scenario specifying that the player must be "in the
|
|
Holding Cell", etc., would crash due to misreading "holding" as the
|
|
start of a requirement about what is being held; also, if a capital H is
|
|
used for Holding, then this ambiguity no longer arises.
|
|
Bug fixed in which the problem message for an object whose name is purely
|
|
textual would be followed by a spurious internal error.
|
|
Bug fixed in which a wrongly phrased condition followed by a "try ..."
|
|
would sometimes produce an internal error as well as the intended
|
|
problem message.
|
|
Bug fixed in which an "accidental clash of names" problem would similarly
|
|
sometimes cause an internal error as well.
|
|
Bug fixed in which, once again, a problem reported in a "let X be Y" phrase
|
|
might also lead to a bogus internal error later.
|
|
Bug fixed in which 'Definition:' at the end of the source, with no definition,
|
|
would crash Inform.
|
|
Bug fixed in which a nameless new phrase, defined by just 'To:', would
|
|
cause an internal error.
|
|
Bug fixed causing a close quotation mark to be omitted when quoting an
|
|
incorrect "Understand..." sentence in certain problem messages.
|
|
Bug fixed in which definitions wrongly referring to properties would cause
|
|
the right problem message to be reported, but on the wrong sentence.
|
|
Bug fixed in which I6 library (as included in 3Z95) failed to compile for
|
|
purely I6 projects.
|