Spatterlight 1.2.7

Let’s not derail the thread, please.

I get the feeling that there is something they don’t want to talk about.

My conspiracy theory is something like this: They rolled out this experimental (opt-in) update which turned out to have serious bugs, and some people lost important files and had to be paid off. Now they won’t let any more people update, and they’re hoping that those that already did, and are not among those already paid to keep quiet, won’t notice the problems or ask for their money back.

EDIT: Another conspiracy theory is that they won’t let people use the File Provider version in jurisdictions where they don’t deem their EULA is enforceable, such as the EU, and that they don’t want to talk about that.

It’s almost certainly snavig that’s the difference between the IF Archive graphics blorb and the zblorb.

Snavig performs a few operations on existing Blorb files. First and foremost it was developed as a way to add BPal chunks (see Blorb.md) to Blorb files so that the adaptive palettes of Zork Zero and Arthur can be used with Glk-based interpreters. Such Blorb files are backward compatible: they contain all information in the original Blorb plus the BPal chunk.

I tried installing Google Drive Desktop, but so far I have been unable to reproduce the issue.

What’s interesting here is that the first image is making use of Blorb’s adaptive palette (see the compass rose), but that shouldn’t be happening with a “normal” Blorb, i.e. one without a BPal chunk. Are you certain the Blorb being loaded does not contain a BPal chunk?

Neither of the Blorbs linked in the comment have a BPal chunk, so I’d expect both to look wrong in terms of the palette. Which at first glance makes me suspect you have a BPal Blorb being loaded; when I use the one you linked and rename it, the palette is wrong, i.e. it looks like the second image.

1 Like

Right, if I switch off the Wi-Fi and try to play a game file from the Goole Drive folder, I do get a spinning beachball. That is not ideal. The game will run as soon as the internet connection is back, though. It is also not quite the same as the reported issue.

(As an aside, Lectrote will behave just the same: beachball until the connection is back. Gargoyle handles it a little better, just throws up a blank window named “Unknown” until the connection is back on, no beachballing.)

I suppose it won’t come as a surprise to most users that the files in their cloud storage folder are unavailable when the internet is down, although you might expect programs to handle it a little more gracefully. It is worse if something like this happens when you have explicitly set your files to be available offline, as @sue has done in this case.

A new test build is ready here:
https://github.com/angstsmurf/spatterlight/releases/download/v1.2.9b/Spatterlight.zip

This tries to work around the erratic file access to the CloudStorage directory by opening a file dialog and asking the user for explicit permission whenever a file can’t be read. Hopefully this won’t happen too often.

Also, most file access should now happen on a background thread, so no more beachballing when the internet connection is down. After a couple of seconds, a dialog will open, where the user can cancel the loading of the game.

This also fixes autorestoring quote boxes, which was busted.

No improvements to the z6 games yet, unfortunately.

1 Like

It’s, like, totally fixed! Fer shure!

1 Like

That’s a relief! Here’s hoping it stays fixed.

1 Like

And now that it actually works, it’s now my go-to interpreter, though the Mac-only nature of it will keep me on Lectrote when I’m on my Chromebook. Thanks for making it!

2 Likes

Don’t hesitate to report any other issues you might find!

(Still thinking about the Andromeda Awakening / Apocalypse situation.)

What’s that situation? I couldn’t find the word Andromeda elsewhere in this topic.

-Wade

Yeah, sorry for being vague. It was a reference to this Github issue:
https://github.com/angstsmurf/spatterlight/issues/98

Spatterlight won’t let you have two games with the same IFID in its library at the same time, but will treat them as the same game. This isn’t a very good system which causes a lot of confusion.

I understand you’d want to fix it, but in this case, aren’t those games being naughty having the same IFID when they definitely are not the same game?

-Wade

Yes, it is almost certainly some kind of mistake. As noted by the IFWiki:

NOTE: Duplicating IFIDs for new projects is an error. See section “2.2.1. IFIDs for new projects” in The Treaty of Babel.

Maybe the game author could re-release one of them with a different IFID? (Although I understand there are other games with the same issue.)

Apart from different versions of the same game sharing an IFID (The Apple II and the ZX Spectrum versions of The Sorcerer of Claymorgue Castle are very different, but you can’t have both at the same time in the Spatterlight library) the only other example of note I can think of is the two versions of Zork I and Suspended which both have IFID ZCODE-5-------, which Spatterlight now can handle.

There are probably more out there that I’ve missed. As far as I know it happens by default if you create an entirely new game by modifying the Inform 7 project of an older one.

I made an official release with these fixes. Direct link to application:
https://github.com/angstsmurf/spatterlight/releases/download/v1.3/Spatterlight.zip

For the actual situation that triggered the problem, I found a workaround in the form of an older build of one of them that didn’t have an IFID in it (or a newer build with a different one; I haven’t investigated which), and now I have both games in my library. But it’s definitely a thing that can happen, especially with WIPs.

For that matter, A/B testing of versions of one’s own WIP is a definite needed use case – it’s completely unreasonable to expect an author to go get a different IFID for every single edit of their WIP.

I’m going to guess that in @Jamespking 's case, he started Andromeda Apocalypse by doing a ‘save as’ of a copy of Andromeda Awakening in I7 to edit. That would clone the IFID in the process.

I always found the Inform docs’ description of how unique IFIDs are generated and moved around to be bleary.

I think Marco could definitely do that. The question is, is he prepared to rise off his buttocks and do that? :wink: (Marco and I know each other well enough we can make some jokes at each others expense)

-Wade

1 Like