I am trying to get a project up and running in 6M62 that compiled successfully in the past on 6L38. I had to install several extensions, and I’m not sure I’ve got all the right versions. (I don’t remember having to install so many extensions last time, but maybe I’ve just forgotten?) The version of Glk Events that’s installed is Version 2/200807. The error I am now getting is this:
Report on Translation: Failed
Produced by Inform 7 (build 6M62)
(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)
In Chapter - Basic event handling, Section - Event result variables in the extension Glk Events by Dannii Willis:
Problem. The sentence ‘The glk event type is a g-event variable’ appears to say two things are the same - I am reading ‘glk event type’ and ‘g-event variable’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘John is Paul’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Abbey Road is a lighted room’ says that something called Abbey Road 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 Section - The glulx input handling rules in the extension Glk Events by Dannii Willis:
Problem. The sentence ‘The glulx input handling rules are a g-event based rulebook’ appears to say two things are the same - I am reading ‘glulx input handling rules’ and ‘g-event based rulebook’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘John is Paul’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Abbey Road is a lighted room’ says that something called Abbey Road 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.)
When I run a working version of the old project (compiled in 6L38) and type “version,” Glk Events is not on the list, but neither is another extension that I am pretty sure I used (which I’m guessing doesn’t appear because it is included by another extension?) So, I don’t know if Glk Events was used before or not.
Let me check my WIP. I’ve been through a similar thing and I’m using 6M62, so I might be able to get some pointers. I definitely have strong memories of Flexible Windows being the fundament. As in, it was the fussiest to get going, but once it was going, other things fell into place.
version 1/140516 of Alternative Startup Rules by Dannii Willis.
version 10/160919 of Glulx Entry Points by Emily Short.
version 5/140516 of Glulx Text Effects by Emily Short.
try putting those four together for starters. If they still cause trouble in your real project, perhaps put them together in a blank project just to verify that it can boot.
Glk Events should run fine just by itself in 6M62.
I suspect the issue might be an incompatible version of Glulx Entry Points (as Glk Events was extracted from it). The latest version of GEP for 6M62 is 10/200602.
That seems a pretty safe way to check. I mean, on the Mac, sometimes I have issues where if I’m fiddling with extensions, duping and renaming them within the same folder, the program can keep referencing the original file it built form. I solve this by relaunches / taking the dupe totally out of the original folder, etc, and eventually it works. But if Inform itself is telling you it’s pointing at the files you want it pointing at, I expect they’re the right ones.
Has anything changed since you said ‘And right now, this project will not compile:’. What compile error were you getting on that compile? Or what error are you getting now? We may need to do more to try to replicate the problem.
"testing" by me
Include Glk Events by Dannii Willis.
Lab is a room.
I get this:
Report on Translation: Failed
Produced by Inform 7 (build 6M62)
(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)
In Chapter - Basic event handling, Section - Event result variables in the extension Glk Events by Dannii Willis:
Problem. The sentence ‘The glk event type is a g-event variable’ appears to say two things are the same - I am reading ‘glk event type’ and ‘g-event 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.
In Section - The glulx input handling rules in the extension Glk Events by Dannii Willis:
Problem. The sentence ‘The glulx input handling rules are a g-event based rulebook’ appears to say two things are the same - I am reading ‘glulx input handling rules’ and ‘g-event based rulebook’ 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.)
When I try to compile the original project, I get this:
Report on Translation: Failed
Produced by Inform 7 (build 6M62)
(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)
In Chapter - Basic event handling, Section - Event result variables in the extension Glk Events by Dannii Willis:
Problem. The sentence ‘The glk event type is a g-event variable’ appears to say two things are the same - I am reading ‘glk event type’ and ‘g-event variable’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Adams is Jefferson’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Virginia is a lighted room’ says that something called Virginia 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 Section - The glulx input handling rules in the extension Glk Events by Dannii Willis:
Problem. The sentence ‘The glulx input handling rules are a g-event based rulebook’ appears to say two things are the same - I am reading ‘glulx input handling rules’ and ‘g-event based rulebook’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Adams is Jefferson’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Virginia is a lighted room’ says that something called Virginia 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.)
Since then I think I also tried the version of Glulx Entry Points that you said you were using, 10/160919. (This was after trying the version that Dannii linked to.)
I think the other version numbers line up with the versions you mentioned.
I might try sending you my copies of Glk Events and its two dependencies, and then you can see if your “testing” project can boot with those. I just have to change their names back to normal first. I can guarantee the name was all I changed – extensions whose names but not contents I changed I call ‘raw’ in my WIP.
One last thing - does the project itself have an extensions folder? Could there be any mismatch between versions of extensions in that folder? Because they will take precedence over any in the general Inform installation.
OK, now I have tried pasting the contents of the Glk Events extension into a new story, like this:
"testing glk events" by me
"A low level event handling system"
Use authorial modesty.
Include version 1/160919 of Glulx Definitions by Dannii Willis.
Chapter - Basic event handling
Section - Event result variables
Include (-
Global GE_Event_Struct_type;
Global GE_Event_Struct_win;
Global GE_Event_Struct_val1;
Global GE_Event_Struct_val2;
-) before "Glulx.i6t".
The glk event type is a g-event variable.
The glk event type variable translates into I6 as "GE_Event_Struct_type".
The glk event window ref is a number variable.
The glk event window ref variable translates into I6 as "GE_Event_Struct_win".
The glk event value 1 is a number variable.
The glk event value 1 variable translates into I6 as "GE_Event_Struct_val1".
The glk event value 2 is a number variable.
The glk event value 2 variable translates into I6 as "GE_Event_Struct_val2".
Section - The glulx input handling rules
The glulx input handling rules are a g-event based rulebook.
Section - Intercepting glk_select()
[ Rather than implementing HandleGlkEvent() as GEP did, we will intercept glk_select(). This allows us to intercept events before the Inform 7 template starts processing them. ]
Include (-
Replace glk_select;
-) before "Glulx.i6t".
Include (-
! Replacement function from Glk Events by Dannii Willis
[ glk_select event_struct;
! Call the real glk_select
@push event_struct;
@glk 192 1 0;
! Copy values to our variables
GE_Event_Struct_type = event_struct-->0;
GE_Event_Struct_win = event_struct-->1;
GE_Event_Struct_val1 = event_struct-->2;
GE_Event_Struct_val2 = event_struct-->3;
! Run the glulx input handling rules (but disable rules debugging because it crashes if keyboard input events are pending)
@push debug_rules; @push say__p; @push say__pc;
debug_rules = false; ClearParagraphing(1);
FollowRulebook( (+ the glulx input handling rules +), GE_Event_Struct_type, true );
@pull say__pc; @pull say__p; @pull debug_rules;
! Copy back to the original event structure
event_struct-->0 = GE_Event_Struct_type;
event_struct-->1 = GE_Event_Struct_win;
event_struct-->2 = GE_Event_Struct_val1;
event_struct-->3 = GE_Event_Struct_val2;
return 0;
];
-) after "Infglk" in "Glulx.i6t".
And I get this error:
Report on Translation: Failed
Produced by Inform 7 (build 6M62)
(Each time Go or Replay is clicked, Inform tries to translate the source text into a working story, and updates this report.)
In Chapter - Basic event handling, Section - Event result variables:
Problem. The sentence ‘The glk event type is a g-event variable’ appears to say two things are the same - I am reading ‘glk event type’ and ‘g-event variable’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Tarzan is Jane’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Treehouse is a lighted room’ says that something called Treehouse 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 Section - The glulx input handling rules:
Problem. The sentence ‘The glulx input handling rules are a g-event based rulebook’ appears to say two things are the same - I am reading ‘glulx input handling rules’ and ‘g-event based rulebook’ as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that ‘Tarzan is Jane’. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance ‘Treehouse is a lighted room’ says that something called Treehouse 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.)
Alternative Startup Rules.i7x (6.2 KB) Glk Events.i7x (2.2 KB) Glulx Definitions.i7x (7.1 KB)
Try these three in your “testing”. In the project’s materials folder, put them in:
Extensions/Dannii Willis , creating those folders if necessaary (hopefully you don’t have to create the materials folder)
-Wade
Alright! Well, I hope you can build forward from here. It seems like one of your extensions might have been the wrong version, or the IDE wasn’t drawing on one from where you thought it was. I guess we don’t know. But putting them in the project’s own extensions folder is a good way to make sure it’s pulling on the right files.