Obsolete extensions

I’m gearing up to update my extensions for the new build, but I wonder if there are some I should give up on. The first one I was going to tackle was Conditional Backdrops, but I see that there have been some changes to how backdrops are handled:

I haven’t explored in detail, but if a backdrop’s position can now be changed to any arbitrary description, the extension is now much less useful (although perhaps not 100% useless). Does anyone have details about this?

If there is not one already, it might be helpful to create a list of now-redundant extensions.

Plurality’s functionality is now built-in, so that’s gone. Fixed-Point Maths and Floating Point Mathematics. Default Messages and its relatives. Verbal Conjugation.

I think my Flexible Action Requirements extension might not be needed either, at least for the things I was using it for.

Mentioned In Room Descriptions is also now built-in.

Custom Library Messages, built-in.

Default Messages, built-in.

Missing Parser Errors is now built-in, though I don’t remember if I ever released that or not.

Repeat Through a Rulebook will likely not be technically possible any longer.

Original Parser is obsolete, though if someone wants to stick the new Responses system into it so it will compile again I can send you the half-translated work.

So I’m still working with 6G60, but Mike, I don’t see how that changelog would mean that Conditional Backdrops is obsolete. It doesn’t mean you can move backdrops to any arbitrary description of rooms, just “everywhere” and “nowhere.” (You can move backdrops to “everywhere” in 6G60 already, and as the log says they’re the only things that can be everywhere.)

Ron, as you said Original Parser is obsolete, but in case you want to rework it: did you ever see this bug with getting run-time errors when inserting a disambiguation response into the original command?

In both 6G60 and 6L02 you can move a backdrop to any description of rooms.

Just a quick note, and I’m hoping this is the right place for it. (It’s been almost a year and a half since my last post.)

I’m updating my basic Inform template, and Stephen Granade’s “Extended Banner” (v.5) extension will compile, but then displays this toward the end of the compiled example.

Thanks in advance for your help!

Basic Template 2

[** Programming error: tried to print (string) on something not a string **]
by Jay Goemmer


“Basic Template 2” by Jay Goemmer

Include Extended Banner by Stephen Granade.

Rule for printing the banner text:
say “[bold type][story title][roman type][line break][extended story headline][if story author is not blank] by [story author][end if][line break][line break][italic type]Italics here.[roman type]
[line break][line break]Release [release number] / Serial number [story serial number] / Inform 7 build [I7 version number][line break][line break]” instead.

The story headline is “^An Interactive Example”.
The story genre is “Science Fiction”.
The story description is “A.”
The story creation year is 2012.
The release number is 0.

Use American dialect.

Include Basic Screen Effects by Emily Short.

When play begins: [This displays the introduction before the title.]
clear the screen;
say “[line break][line break]Introductory text.[paragraph break]”;
say “[bracket]MORE[close bracket]”;
wait for any key;
clear the screen;
[Displaying quotations, 5.12., Basic Screen Effects 1.3]
display the boxed quotation
"Quote something witty here.

–Some famous person (Born-Died)";
show the current quotation;
say “[bracket]MORE[close bracket]”;
wait for any key;
clear the screen;
say “[line break]”.

[Centering the status line, courtesy E.S. ]

Rule for constructing the status line:
center “[location]” at row 1;
rule succeeds.

Testing Lab is a room. The printed name is “Testing Lab”.

Achievements Extension by Mikael Segercrantz needs to be updated as well.

To print I7 text values from I6 code, you used to write (I6 code):

print (string) x;

This has changed to

print (TEXT_TY_Say) x;

It looks like that change must be made in Extended Banner. That may not be all, of course.

I did, Matt, but documenting someone else’s parser (that I still believe needs a rewrite) isn’t at the top of my list of priorities. I just got married last week, and now am preparing to move apartments.

I haven’t even installed the new Inform yet, just the pre-release I was given just so I could quickly modernize the more popular of my extensions. (Or the ones that expose some of Glulx/Glk’s new features.) And though I realize that extension is also popular, though maybe not for inclusion in actual games, the responses system necessitates a lot of rework. It currently doesn’t compile.

Congratulations, Ron! I definitely see why that’s low on the priorities list.

Just curious, mostly; if I ever want to adapt my parser hack to the new parser it’d probably be more efficient for me to learn I6 than to try to I7ize the new parser.

Congratulations Ron!

I can’t remember the details now. I thought you could move a backdrop to a description of rooms but you could only make it “everywhere” if it started out that way. And I think part of the reason for Conditional Backdrops was a bug in the way backdrops were moved. But it sounds like it would still be useful.

There may well have been a bug; I don’t remember either.

I made that change to the extension, but got the standard “Translating the Source - Failed” error message:

"The application ran your source text through the Inform 7 compiler, as usual, and it found no problems translating the source. Something must have gone wrong all the same, because the second stage of the process - using the Inform 6 compiler to turn this translated source into a viable story file - turned up errors. This should not happen. The errors are written out on the Progress tab, but will only make sense to experienced Inform 6 users (if even to them).


If you are using Inform 6 inclusions, these are the most likely culprits. You might be using these without realising it if you are including an extension which contains Inform 6 inclusions in order to work its magic: so if the problem only seems to occur when a particular extension is in use, then that is probably what is at fault, and you should contact the extension’s author directly."

So obviously the solution isn’t quite as simple as just changing that single line of code. :wink:

Thanks as always, zarf! :slight_smile:


Thank you both. Maggie & I are very happy to have found one another.