2 issues with Release: (Figures don't show & "empty" gblorb)

I make some IF mini-games for practice, but I seem to have two problems with releasing:

  1. I open the .gblorb file with Zoom (on a Mac) and it only shows the cover image and then nothing. Here is an example of one of my .gblorb files.

  2. One game displays figures, but the figures do not show on the browser (Quixe). Are the figures supposed to exist in the Release folder as files? They do not appear when I press “Release.” Should I copy them manually? (In this post, it says that they are embedded in the gblorb. How about the browser-interpreter version?)

As to the first issue, the Blorb file opens fine with Windows Glulxe so it’s most likely that the problem lies with Zoom. Zoom hasn’t been updated in a very long time and has quite a few known bugs.

Good to know… Does anyone know of an up-to-date alternative for Mac?

EDIT: Cool, I downloaded Spatterlight and I can actually play my games, figures and all.

The issue remains, though, re Quixe and display of images (figures).

See https://github.com/erkyrath/quixe/wiki/Quixe-Graphics-Support, in particular the blorbtool.py command near the bottom:

python blorbtool.py GAME.materials/Release/GAME.gblorb giload GAME.materials/Release/interpreter interpreter As far as I know, there is currently no simpler way to make Quixe display images.

Oh. Long pause.

Perhaps it may seem more complicated than it is.

Download blorbtool.py from here: https://github.com/erkyrath/glk-dev and place it in the game directory.

After compiling, you navigate to the game directory in Terminal and type (or paste) that line, with GAME replaced by the name of the game. If the name contains spaces, you will need to insert quotation marks.

Example for Counterfeit Monkey:

python blorbtool.py "Counterfeit Monkey.materials/Release/Counterfeit Monkey.gblorb" giload "Counterfeit Monkey.materials/Release/interpreter" interpreter

Hey, thanks! I actually managed to get it to work, thanks to you!

Re: Mac interpreters,

Lectrote is very up-to-date and with graphics. No sound though.

github.com/erkyrath/lectrote/releases

Gargoyle has graphics and sound, but you have to change a config file to change preferences. (I forget whether this linked build has Retina support. If that’s important to you, there may be an alt build somewhere that does):

github.com/erkyrath/garglk/releases

It’s inadvisable to use Zoom now. It is verifiably buggy in its out-of-dateness.

-Wade

Hi everyone,

sorry, I am new to Inform7 and I have the same issue with displaying images on browser. I still don’t get how to use blorbtool.py. Can someone help me?
By the way, I use Windows, whether this is relevant.

  1. Download and install Python 3.
  2. Download the blorbtool.py and put it in your Inform 7 Projects folder.
  3. Write a .cmd or .bat file containing a line like in Petter’s post, adjusting the path names to suit (it assumes that you’ve put the blorbtool.py and the .bat file in the parent directory of your projects). Note that you have to make a separate bat file for each project with graphics since it needs to include the project folder names.
  4. Whenever you click the Release button, immediately follow up by running the bat file for that project.
2 Likes

Many thanks for your reply.

I managed to run the script from the Terminal and it prints the line ‘Wrote Quixe-compatible data to directory “Release/interpreter”’. In fact I can find my picture on this path renamed as “pict-3”. Still, when I open plat.html on browser I can only see [Picture number 3 here].

Have a look in the Your Story.materials/release/interpreter folder for a file called resourcemap.js and open it up in your text editor of choice.

If it’s missing or almost empty, then something went wrong with running the script; check that all your paths were correct, especially the one after giload – your materials folder name needs to go there too if you installed the script where I suggested.

If it has lots of image names etc in there, then running the script worked, and the problem is likely on the browser end. Try pressing Ctrl-F5 to encourage it to reload more of the files. Try clearing cache. That sort of thing.

So sorry to bother again, but I can see the list of figures on resourcemap.js in the usual scheme:
{
“image”: INT,
“url”: URL
“width”: INT,
“height”: INT
}

I tried with Ctrl-F5 and clearing cache in different browsers, still no success. I really don’t know how I am wrong.

If there’s only one of them, that means the file didn’t get updated. (Or your story file only has cover art and not anything else, but I assume that’s not the case.)

Most likely they were written to some other directory because you used the wrong path in your script, as I said before.

If you want some more specific help than that, you’d need to post exactly what you have in your batch file right now, and what folder you have it in. (You can change the names for privacy reasons but try to do it consistently otherwise it’d hide the problem.)

Ok, here is my batch file:

@echo off
title blorbtool
python blorbtool.py “Release/dasg.gblorb” giload “Release/interpreter” interpreter
Pause

Which I put directly in my folder dasg.materials along with blorbtool.py. When I run it my figure is added to dasg.materials/Release/interpreter where I can also find resourcemap.js which reads:

/* resourcemap.js generated by blorbtool.py */
StaticImageInfo = {
1: {
“image”: 1,
“url”: “interpreter\pict-1.jpeg”,
“width”: 680,
“height”: 680
}
,
3: {
“image”: 3,
“url”: “interpreter\pict-3.png”,
“width”: 186,
“height”: 122
}
};

Where pict-1 is a default sort of cover art from Inform7 which I did not add myself and is permanently displayed on the left of the screen (I can see that on browser). From Inform7 I required picture 3 to be displayed when the game begins, but I cannot see it on browser.

Well, that looks correct. (I assume that the image is displaying ok inside Inform’s built-in interpreter? If not, you have a different problem.)

If you’re using Chrome, try right-click, Inspect, go to Network, tick “disable cache”, then reload (without closing the inspector window first). If using another browser there’s probably something very similar. I know Chrome in particular likes to very aggressively cache and doesn’t always reload things when you tell it to without this.

Otherwise, open up your play.html in a text editor and make sure the following lines exist near the top (there’s other stuff that should be around them, though, so it won’t look exactly like this):

One of the script includes just after including quixe.min.js:

<script src="interpreter/resourcemap.js" type="text/javascript"></script>

Further down:

game_options = {
image_info_map: 'StaticImageInfo',  // image data is here, not in blorb

Ok, it seems play.html does not include those lines. I tried adding them manually. Perhaps I should copy what I posted before from resourcemap.js also under game_options ? Btw, this is the main part of my play.html:

 <link rel="stylesheet" href="interpreter/glkote.css" type="text/css">
<link rel="stylesheet" href="interpreter/dialog.css" type="text/css">
<script src="interpreter/glkote.min.js" type="text/javascript"></script>
<script src="interpreter/quixe.min.js" type="text/javascript"></script>

<script type="text/javascript">
game_options = {
use_query_story: false,
set_page_title: false,
inspacing: 0,     // gap between windows
outspacing: 0     // gap between windows and edge of gameport
};
</script>

<script src="interpreter/dasg.gblorb.js" type="text/javascript"></script>

No, don’t copy anything from inside resourcemap.js into the play.html, that’s what the script line is for.

But any changes to play.html are temporary anyway, it gets completely overwritten whenever you click the Release button. It’s odd that you don’t have those lines though, are you using Inform 7 6M62 or do you have an older version?

Either way, you can also try installing a newer version of Quixe – this should also fix your play.html generation. First download this and then unzip it to Documents\Inform\Templates (such that you now have a Quixe folder inside the Templates folder, which in turn contains a bunch of files, not an extra subfolder). Now try clicking the Release button again, and then finally run the blorbtool script once more.

1 Like

GREAT! It finally worked. I was probably using an older version of quixe in my Templates folder. Also, it worked besides I am using Inform7 6L38.

Thank you very much Gavin. You have been very kind.

Yeah, 6L38 probably bundles an older version of Quixe from before it included image support – that was first added in the version included in 6M62, I think. In theory the next I7 version would have run blorbtool for you automatically, but that’s when we stopped getting releases due to the internal redesigning work.