Glimmr extensions by Erik Temple - Requesting assistance

I necromanced an old topic by replying to it. After some reflection, it’d be better to post this as a new topic instead due to the age of the original topic (11 years).

I (perhaps unwisely) used the topic as a jumping point to toy with graphical extensions for i7.

I quickly ran into troubles.

After going down the rabbit hole of extension installations (Report on Translation: Failed. Please install this, now this, now this…) I finally stopped receiving errors asking for additional mentioned extensions only to have a shopping list of complaints about the contents of those very extensions. Including both the code I tried using as well as the Failure report from i7. I suspect I’m somehow pulling old extensions that no longer play nice with the current version of i7, but I could certainly be wrong.

I would deeply appreciate some assistance here.

Thanks.

Include the Basic Screen Effects by Emily Short.
Include the Glulx Entry Points by Emily Short.
Include the Glimmr Canvas-Based Drawing by Erik Temple.

Figure of intro is the file “intro.jpg”.
Figure of both is the file "both.gif".
Figure of allsun is the file “allsun.png”.
Figure of nosun is the file “nosun.png”.

The graphics-window is a graphics g-window spawned by the main-window. The position is g-placeabove. The measurement is 200. The back-colour is g-dark-grey.

The graphics-canvas is a g-canvas. The associated canvas of the graphics-window is the graphics-canvas. The background image of the graphics-canvas is Figure of intro.

To depict (f - a figure-name):
change the background image of the graphics-canvas to f;
follow the window-drawing rules for the graphics-window.

When play begins:
open up the graphics-window;
depict Figure of intro;
say “мне крышка…”;
wait for any key;
clear the screen;
depict Figure of both;
continue the action.
Failure Report

(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)

In Chapter 1 - Basic definitions, Section 1 - Defining a fixed point number in the extension Fixed Point Maths by Michael Callaghan:

Problem. In the sentence ‘-999999.9999 specifies a real number with parts whole and fractional’ , it looks as if you intend to give a new meaning to expressions like ‘-999999.9999’, but this is already something I recognise - specifying a real number - so a more distinctive specification must be chosen.

See the manual: 15.9 > 15.9. Multiple notations


In Section 2 - Constants for precision in the extension Fixed Point Maths by Michael Callaghan:

Problem. Before reading ‘Pi is 3.1416’ , I already knew that ‘Pi’ is a real number and ‘3.1416’ likewise: so they are specific values, and saying that they are equal will not make it so.


In Part - Element Definition, Chapter - Concealing elements, Section - Revealing elements for debugging (not for release) in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. The sentence ‘A g-element is publically-named’ seems to tell me that ‘g-element’ and ‘publically-named’ have to be the same, but it looks odd to me. ‘g-element’ is something generic - not something definite; but ‘publically-named’ is (presumably) something specific. So it’s as if you’d written ‘A room is the Sydney Opera House’. (Which room, exactly? You see the trouble.)


In Part - Sprites, Chapter - The primitive base class in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. You wrote ‘A primitive has a glulx color value called the tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).

See the manual: 4.8 > 4.8. New value properties


In Section - Stroked rectangle primitive in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. You wrote ‘A stroked rectangle primitive has a glulx color value called the background tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).


In Chapter - Bitmap base class in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. You wrote ‘A bitmap has a glulx color value called the tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).


Problem. You wrote ‘A bitmap has a glulx color value called the background tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).


In Chapter - Rendered strings, Section - Rendered string base class in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. You wrote ‘A rendered string has a glulx color value called the tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).


Problem. You wrote ‘A rendered string has a glulx color value called the background tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).


In Chapter - Image-map base class in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. You wrote ‘An image-map has a glulx color value called the background tint’ , but ‘glulx color value’ is not the name of a kind of value which I know (such as ‘number’ or ‘text’).


In Part - Debugging commands for image-maps, Chapter - Graphlink preview in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. The sentence ‘The graphlink preview color is a glulx color value variable’ appears to say two things are the same - I am reading ‘graphlink preview color’ and ‘glulx color value variable’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Laurel is Hardy’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Blue-Ridge Mountains is a lighted room’ says that something called Blue-Ridge Mountains exists and that it is a ‘room’, which is a kind I know about, combined with a property called ‘lighted’ which I also know about.


Problem. The sentence ‘The graphlink preview color is usually g-Light-Grey’ appears to say two things are the same - I am reading ‘graphlink preview color’ and ‘g-Light-Grey’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Laurel is Hardy’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Blue-Ridge Mountains is a lighted room’ says that something called Blue-Ridge Mountains exists and that it is a ‘room’, which is a kind I know about, combined with a property called ‘lighted’ which I also know about.


In the main source text:

Problem. The sentence ‘The back-colour is g-dark-grey’ appears to say two things are the same - I am reading ‘back-colour’ and ‘g-dark-grey’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Laurel is Hardy’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Blue-Ridge Mountains is a lighted room’ says that something called Blue-Ridge Mountains exists and that it is a ‘room’, which is a kind I know about, combined with a property called ‘lighted’ which I also know about.

Problems occurring in translation prevented the game from being properly created. (Correct the source text to remove these problems and click on Go once again.)

Did you download the extensions from this GitHub repository?
If not, try that first, it’s the most up-to-date source of I7 extensions.

1 Like

Thank you for responding.

I started with this. Everything else was prompted from there. Guessing I need to start over. Is the code that I used even relevant anymore?

I think I started with the GitHub, but I didn’t understand how to download the *.i7x or even a .txt file from here for example:

So, I just went looking elsewhere.

So, I copied and pasted the version 4 of glimmr canvas-based drawing into notepad and saved as a text file, and then successfully installed it as an extension, replacing the other version of glimmr canvas-based drawing. On hitting Go, I still get a failure, but with fewer problems:

New Failure Report

(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)

In Chapter 1 - Basic definitions, Section 1 - Defining a fixed point number in the extension Fixed Point Maths by Michael Callaghan:

Problem. In the sentence ‘-999999.9999 specifies a real number with parts whole and fractional’ , it looks as if you intend to give a new meaning to expressions like ‘-999999.9999’, but this is already something I recognise - specifying a real number - so a more distinctive specification must be chosen.

See the manual: 15.9 > 15.9. Multiple notations


In Section 2 - Constants for precision in the extension Fixed Point Maths by Michael Callaghan:

Problem. Before reading ‘Pi is 3.1416’ , I already knew that ‘Pi’ is a real number and ‘3.1416’ likewise: so they are specific values, and saying that they are equal will not make it so.


In Part - Preliminaries, Chapter - Inclusions in the extension Glimmr Canvas-Based Drawing by Erik Temple:

Problem. The sentence ‘Divisor is a real number that varies’ seems to tell me that ‘Divisor’, which has already been declared as a number, is instead a real number - but that would be a contradiction.


In the main source text:

Problem. The sentence ‘The back-colour is g-dark-grey’ appears to say two things are the same - I am reading ‘back-colour’ and ‘g-dark-grey’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘St Peter is St Paul’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Pearly Gates is a lighted room’ says that something called Pearly Gates exists and that it is a ‘room’, which is a kind I know about, combined with a property called ‘lighted’ which I also know about.

Problems occurring in translation prevented the game from being properly created. (Correct the source text to remove these problems and click on Go once again.)

The Github repository you shared with me doesn’t seem to have a Fixed Point Maths in the Michael Callaghan folder (I even installed Questions by Michael Callaghan out of desperation, lol). Also, there still seems to be bits of both the new glimmr extension and the code that I used that made i7 unhappy.

I don’t believe Glimmr has been updated for more recent versions of Inform. I don’t know if this would help, but perhaps downgrading to whichever I7 version was active when Glimmr was released might be a possibility to make the utilities operational?

2 Likes

The most recent version of Glimmr Canva-Based Drawing by Erik Temple was uploaded to that github repository in June of 2016, but according to the downloads page for Inform 7, the most recent version (7.9.3 build 6M62) was released in December of 2015.

Was the version of Glimmr uploaded in June of 2016 already out-of-date for the most up-to-date version of Inform 7 out at the time?

Edited to add: Speaking of that upload (and seeing that you’re around right now), I believe it was @Dannii who uploaded that most recent version, yes?

Edited to add x2: Anyway, there’s no easy way to roll back i7, right? I’d have to uninstall and reinstall an earlier version. If I try this, do you have a particular i7 version you’d suggest trying?

Alright, I deleted i7 and installed the 7.8.5 (build 6G60) version (2010 should be old enough, no?) and managed to get rid of all my failures except one:

In Part - Windows, Chapter - The spawning relation in the extension Flexible Windows by Jon Ingold:

Problem. You wrote ‘The verb to spawn implies the containment relation’ : but new verbs can’t be defined with infinitive alone, and should have all parts supplied: for instance, ‘The verb to sport (he sports, they sport, he sported, it is sported, he is sporting) …’

I downloaded the most recent version (v15) of Flexible windows as well.

This is the specific chapter of Flexible Windows that i7 doesn’t like:

Chapter - The spawning relation

[ The most efficient relations use the object tree. Inform will only use the object tree for a few built in relations however, so we piggy back on to the containment relation. ]
The verb to spawn implies the containment relation.

The verb to be ancestral to implies the enclosure relation.
The verb to be descended from implies the reversed enclosure relation.

Any other suggestions, or should I just ditch glimmr and try something else?

Edited to add:

Okay, so I simply took a chainsaw to the whole chapter and chopped it. It wasn’t working anyway, so what the hell. It then prompted me to download 3 more extensions from @Dannii and also update glulx text effects by Emily Short, which I did. Now I’m left with this and I’m starting to feel like I’m bailing out a sinking boat with a thimble:

In Chapter - Specifying styles, Section - The Table of User Styles definition in the extension Glulx Text Effects by Emily Short :

Problem. Brackets are only allowed in table column names when giving the kind of value which will be stored in the column. So ‘poems (indexed text)’ is legal, but not ‘poems (chiefly lyrical)’.

Problem. Brackets are only allowed in table column names when giving the kind of value which will be stored in the column. So ‘poems (indexed text)’ is legal, but not ‘poems (chiefly lyrical)’.

Problem. Brackets are only allowed in table column names when giving the kind of value which will be stored in the column. So ‘poems (indexed text)’ is legal, but not ‘poems (chiefly lyrical)’.

Problem. Brackets are only allowed in table column names when giving the kind of value which will be stored in the column. So ‘poems (indexed text)’ is legal, but not ‘poems (chiefly lyrical)’.

I have a Glimmr project which works with 6M62, let me check if I made any modifications to make it compile.

1 Like

Looks like I haven’t made any modifications.
Glimmr is made of multiple extensions, is it possible you didn’t copy all of them from GitHub?

The easiest way to download extensions from there is to click Code (green button) > Download ZIP.
It provides you with a ZIP of the whole repository.

1 Like

Thank you.

Alright, I just downloaded the whole repository and I’m going to install each and every extension there just to be absolutely sure.

Please hold, I’ll be back.

If you want to go back to an old version of I7, you should use old extensions too. Github does store the histories, but I’m not sure exactly what point in time you’d want.

I haven’t used Glimmr in many years and have no specific advice sorry.

These days people mostly use Vorple instead.

1 Like

Looking at my extension smoketest, these compile under 6M62:

  • Glimmr Canvas Animation by Erik Temple Version 2/160627
  • Glimmr Canvas-Based Drawing by Erik Temple Version 4/160626
  • Glimmr Drawing Commands by Erik Temple Version 3/160626
  • Glimmr Graphic Hyperlinks by Erik Temple Version 2/160628

And these don’t.

  • Glimmr Animation Fader - Black by Erik Temple Version 1/111030
  • Glimmr Automap by Erik Temple Version 3/111022
  • Glimmr Automap Tileset by Erik Temple Version 1/111022
  • Glimmr Bitmap Font by Erik Temple Version 2/101030
  • Glimmr Debugging Console by Erik Temple Version 1/111022
  • Glimmr Form Fields by Erik Temple Version 1/110103
  • Glimmr Image Font by Erik Temple Version 2/101030
  • Glimmr Simple Graphics Window by Erik Temple Version 1/111022

i.e., the ones that have been updated subsequent to 6M62 compile.

1 Like

Thank you @Dannii and @Zed , I just got done installing all the extensions when I saw your posts and realized I still had 7.8.5 build 6G60 installed. :man_facepalming:

As a result, I still got the following error:

In Part - Windows, Chapter - The spawning relation in the extension Flexible Windows by Jon Ingold :

Problem. You wrote ‘The verb to spawn implies the containment relation’ [](source:C:\Users\pc_user\Documents\Inform\Extensions\jon ingold\flexible windows.i7x#line90): but new verbs can’t be defined with infinitive alone, and should have all parts supplied: for instance, ‘The verb to sport (he sports, they sport, he sported, it is sported, he is sporting) …’

I will need to reinstall again and then try again. I will try to the extensions @Zed suggested.

Thank you both for the help. I will update with more later, but I think I’ll call it a night at this point.

OK, I have a minimal working example with 6M62 (drawing rectangles).
Here’s a ZIP with the extensions included (in the .materials directory).

glimmr demo.zip (1.7 MB)

1 Like

I got it compiling, too, looks like this is the complete collection it took…

 Dannii Willis / Alternative Startup Rules version 1/140516 *
 Dannii Willis / Glk Events version 2/200807 *
 Dannii Willis / Glk Object Recovery version 1/171025 *
 Dannii Willis / Glulx Definitions version 1/160919 *
   Emily Short / Glulx Entry Points version 10/200602 *
   Emily Short / Glulx Text Effects version 5/150123 *
   Erik Temple / Glimmr Canvas-Based Drawing version 4/160626
   Erik Temple / Glimmr Drawing Commands version 3/160626
 Graham Nelson / English Language version 1 *
 Graham Nelson / Standard Rules version 3/120430
    Jon Ingold / Flexible Windows version 15/220202 *

[I used my Supecredits extension to make that, then edited the list to remove Text Loops and 6M62 Patches, which it depends on )

2 Likes

Alright, I’ve reinstalled i7 for the second time (6M62) and installed the extensions listed between the two of you (@CrocMiam & @Zed ) and I got it to compile without any issues with the extensions (thank you sooooo much!!!). :tada: :tada: :heart:

However, my code is still jenky:

Code

Include the Basic Screen Effects by Emily Short.
Include the Glulx Entry Points by Emily Short.
Include the Glimmr Canvas-Based Drawing by Erik Temple.

Figure of intro is the file “intro.jpg”.
Figure of both is the file “both.gif”.
Figure of allsun is the file “allsun.png”.
Figure of nosun is the file “nosun.png”.

The graphics-window is a graphics g-window. The position is g-placeabove. The measurement is 200.

The graphics-canvas is a g-canvas. The associated canvas of the graphics-window is the graphics-canvas. The background image of the graphics-canvas is Figure of intro.

To depict (f - a figure-name):
change the background image of the graphics-canvas to f;
follow the window-drawing rules for the graphics-window.

When play begins:
open up the graphics-window;
depict Figure of intro;
say “мне крышка…”;
wait for any key;
clear the screen;
depict Figure of both;
continue the action.

This is the Failure report:

Failure Report

(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)

Problem. You wrote ‘change the background image of the graphics-canvas to f’ : but this is a phrase which I don’t recognise, possibly because it is one you meant to define but never got round to, or because the wording is wrong (see the Phrasebook section of the Index to check). Alternatively, it may be that the text immediately previous to this was a definition whose ending, normally a full stop, is missing?

Problem. In the sentence ‘follow the window-drawing rules for the graphics-window’ , I was expecting to read a values based rule producing values, but instead found some text that I couldn’t understand - ‘window-drawing rules’.

I was trying to match one of these phrases:

  1. follow (window-drawing rules - values based rule producing values) for (graphics-window - value)

  2. follow (window-drawing rules for the graphics-window - rule)

  3. follow (window-drawing rules for the graphics-window - nothing based rule)

I recognised:

graphics-window = a graphics g-window

But I didn’t recognise ‘window-drawing rules’ or ‘window-drawing rules for the graphics-window’.

Problems occurring in translation prevented the game from being properly created. (Correct the source text to remove these problems and click on Go once again.)

Almost there, but not quite. I’m sorry for the hassle, but I’m fairly sure I can play coroner and figure out what does what and how it all works together once I can get a version working in the first place. What do I have screwed up in my code?

(I’ll go over the canvas-based drawing extension documentation in the meantime.)

You are using old code.

  • follow the window-drawing rules for the graphics-window is now refresh the graphics-window;
  • change the background image of the graphics-canvas to f is now now the background image of the graphics-canvas is f

continue the action. makes no sense in a When play begins rule, there’s no action to continue.

1 Like

Forgive my hijack, but I am so relieved to see that someone else had problems with this, too. I just coded my way around using an extension to display my images as room descriptions.

1 Like

Understood; I’ve made the changes you’ve pointed out and the code compiles now! :tada: :tada:

Which is fantastic!

However, it does not actually work. :disappointed_relieved: :disappointed_relieved:

I get the written message, “мне крышка…” at the game opening, but none of the actual images. I even released it and ran it in Gargoyle to confirm the images are definitely not appearing.

So, I dug into the documentation. I’ve already realized the *.gif was a no-go, and swapped it with a *.png for now. I verified that I placed and named the photo files properly. Still no go. I’m continuing to tinker with it and will update with working code if I figure it out.

Forgive me if I don’t share your enthusiasm, lol. :unamused:

Thank you (and everyone else) for your help! Much appreciated!

"Working" Code as it sits if anyone still feels generous; if not, completely understandable.

Include the Basic Screen Effects by Emily Short.
Include the Glulx Entry Points by Emily Short.
Include the Glimmr Canvas-Based Drawing by Erik Temple.

Figure of intro is the file “intro.jpg”.
Figure of both is the file “both.png”.
Figure of allsun is the file “allsun.png”.
Figure of nosun is the file “nosun.png”.

The graphics-window is a graphics g-window.

The position is g-placeabove.

The measurement is 200.

The graphics-canvas is a g-canvas.

The associated canvas of the graphics-window is the graphics-canvas.

The background image of the graphics-canvas is Figure of intro.

The associated canvas of a g-element is the graphics-canvas.

To depict (f - a figure-name):
now the background image of the graphics-canvas is f;
refresh the graphics-window;

When play begins:
open up the graphics-window;
depict Figure of intro;
say “мне крышка…”;
wait for any key;
clear the screen;
depict Figure of both.

I want to have a go (as I’ve got my own project running Glimmr successfully in 6M62) but I’d like to request you zip up all the extensions required for this demo and attach them, first. Otherwise there’s a very high chance my versions and yours won’t match. And I don’t want to put more versions in my library.

-Wade

1 Like