How do you prevent IFDB's Play On-line button to Z-code games hosted on itch.io?

True, but you can’t do that unless you are the author of the game or you seek the author’s permission. Authors may not want to do that, as they lose all the benefits of the itch.io analytics, where you can see the referring pages, how often the page has been viewed and how often the game has been downloaded.

2 Likes

So is the exact specification you’re looking for that:
-IFDB links to the itch page
-No “play online” button appears
-IFDB specifies that the link is Z-code and uses a z-code icon?

I imagine this would require doubling the number of dropdown options on the edit page (like “playable z-code” vs “z-code that needs work”) or adding a check mark that indicates playable or not.

But the current system is accurate here; you are linking to an html page, not an actual z-code file, and the type of game is already indicated in the system tag on the page and can be specified further in the details section of the link.

6 Likes

Exactly.

I can link to the html page, but then the game itself looks like an html file (which it isn’t) and IFDB still says it’s playable online (which it isn’t).

If I was to provide both a link to the page with the Z-code file and a link to the html page (which are actually the same link), that seems to work. I’ve done this for a few of my own games that are playable online. Maybe that is a good compromise. IFDB will still lie to you and say it’s playable online, but at least it won’t try to load the Z-code file in iplayif.

3 Likes

I tried the above solution on one of my own games (Submarine Sabotage). It was a bit fiddly to get it right, but see what you think before I start applying this fix to other games where the Play On-line link is broken.

You’ll note that the Play On-line button and its tooltip are still wrong, but at least you can see that it’s a downloadable Z-code game at a glance and the Play On-line button doesn’t spit the dummy.

3 Likes

What about, in the “download note” section, adding a note that says something like “Z-code file may be downloaded from [link]”?

2 Likes

Don’t forget that some games on itch.io have to be purchased before they can be downloaded and can’t be played online. @zarf’s own Hadean Lands is an example of that, but the link to itch.io is not mentioned on IFDB.

2 Likes

Sure, but HL on Itch is a downloadable app! You don’t have to know what an interpreter is after you buy it.

3 Likes

Rereading, it looks like you want the Z-code icon, and I guess my idea above wouldn’t give the Z-code icon–it would give you no icon at all.

And this solution

would give you the icon with the piece of paper with the globe on it, which I guess is the HTML icon. (But I think you could still put a note under it saying what it is: a download page for the Z-code file.)

Still, it seems to me that–given the way it’s currently set up–either of these options would be better than saying something’s playable online when it isn’t, because that’s actually saying something that’s not accurate.

3 Likes

If you can accept a minor inaccuracy, tell IFDB that the file compression is ZIP. Then you can still see that it is a z-code file but the Play Online button disappears.

1 Like

I’ve been poking around on IFDB to see how other Inform 6 games have treated the issues in the download box. The one thing that really stands out is the lack of consistency.

As the vast majority of Inform 6 games are old games, they are mostly stored on ifarchive, so the Play On-line link works fine.

There are quite a few games that are hosted on a personal web site and they also work fine. However, Play On-line links to more recent games hosted on places like Google Drive, database-driven web sites, blogs, borogove and itch.io are mostly broken. I get the impression that IFDB has not been updated to account for modern-day methods of hosting. I would have thought that if the file name does not end in a recognised Z-code extension (z3, z5, z8, zblorb et al), then the database would not attempt to play it online. But what would I know?

I also noticed a few broken links, inconsistencies in how links are worded and so on. The one thing that really surprised me was that you could say that a game was in a zip file, when it actually wasn’t to bypass some of these issues and that a game inside a zip file could be found and played by iplayif. That’s actually clever.

1 Like

Note that zipped games can only be played online when they are in the IF Archive because the IF Archive has this “unboxing service”.

1 Like

Thanks. That explains some of the funny URLs that I saw.

1 Like

Hosting on GitHub works with IFDBs play-online.

2 Likes

Yes, providing you give a link to the z-code file. There was one Play On-line link that didn’t work because it linked to the GitHub project for both the source code and the z-code file.

1 Like

This would be a reasonable criteria to have, because Parchment won’t load a file with the wrong extension anyway.

Posted it as a suggestion: Only show the play online button when a URL has a valid file extension · Issue #380 · iftechfoundation/ifdb-suggestion-tracker · GitHub

3 Likes

I’m extremely confused about what we’re talking about here. I suspect that the solution here is just more documentation.

Brian there identifies three things, which I’ll number:

  1. IFDB links to the itch page
  2. No “Play Online” button appears
  3. IFDB specifies that the link is Z-code and uses a Z-code icon

#1 and #2 can be trivially done. You’ve done it yourself on Submarine Sabotage at least today as of version 13. And the way to do it is exactly what Nils said:

The “Download” box for Submarine Sabotage now looks like this:

The only thing it’s missing is #3, a Z-code icon, but I don’t understand why you’d want that in this case. To my eye, Submarine Sabotage is correctly configured, and IFDB is (now) doing the right thing.

The key thing to understand is that IFDB’s “Edit link” page is about the link itself. https://warrigal.itch.io/submarine-sabotage isn’t a link to a .z3 file; it’s a link to a page where you can download a .z3 file. (I sometime call this an “indirect” download link, as opposed to a “direct” download link, where you click it, and your browser immediately starts downloading the file.)

Thus, there are three kinds of web links we’re interested in:

  1. Directly downloadable: This applies to any game on ifarchive.org, but also any game where the author’s website makes the game file directly available, e.g. Github links like https://github.com/daelsepara/over-blood-dark-sea/releases/download/2022072901/bloodsea.z5. In those cases, we should check the “playable game” box, and set the file type to Z-Code (or Gblorb, or whatever the file type actually is). Directly downloadable games will enable the “Play On-line” button. No games on itch.io are directly downloadable.
  2. Playable on the author’s web page: Games where the author released the game with an embedded website (e.g. using Inform 7’s “release with a website” feature). For example, After the Accident. If you visit https://amanda-walker.itch.io/after-the-accident, you can play the game right there on itch.io. In that case, the link should have the “playable game” box checked, and the file type should be HTML. The icon has a globe document, overlaid with a chess pawn, to indicate that this is an HTML game, not just an HTML page. This will enable the “Play On-line” button.
  3. Indirectly downloadable but not playable online: Games like Submarine Sabotage, where you can’t play the game on itch.io, but instead you have to download the Z3/Z5 file from itch.io. In that case, the link should not have the “playable game” box checked, and, again, the file type should be HTML. If this is the only link to the game, the game will not have a “Play On-line” button.

I claim that any link to itch.io should have file type “HTML,” and never file type “Z-code,” even if that’s what, ultimately, itch.io will provide.

IFDB will always have to wrestle with old 404 links (“broken” links). But you’ve also noticed that many links to web pages are misconfigured, e.g. we’ve set metadata on them claiming that they’re “Z-code,” when, in fact, they’re just indirect download links.

That’s unsurprising, because everything I’ve said here is confusing and almost entirely undocumented!

And that’s not even considering ZIP files! For ZIP files, you’re supposed to check the “playable game” box, but then type in the path to the game file inside the ZIP. (And if you don’t type the path to the game file exactly right, the Play On-line button will be enabled but broken.) Oh, and if the ZIP file happens to be hosted on ifarchive.org, then the Play On-line button will appear, but if the ZIP is hosted on another website like Github, it won’t. :exploding_head:

I don’t have a very clear idea of how to make this clearer to end users. I think I can write out a long documentation page on IFDB explaining how it all works… and maybe that’s all I can do?

4 Likes

When you edit a game, there is a link called “link policy”. In addition you could have a big button (so people notice it) saying Link Recommandations. Here you can read about the intended use.

However, I think it is fine if there is some user freedom. For instance, my game Grandma’s Flying Saucer is an Adrift 5 game but not very playable with the WebRunner for some reason, so I have uploaded it as a zip-file so the Play Online button won’t appear.

Further more, I link three times to the same Frankendrift release page, one time per platform so we get the right icons. I believe that players are often looking at the icons instead of trying to read all the text. So to me it makes sense that Garry prefers to have a z-code icon even though the link only takes you closer to the download link on itch. If this requires that the file is incorrectly set to be a zip-file, I don’t think it is a big problem. So overall, I think IFDB works pretty well.

1 Like

I’ve filed a PR on this.

When it merges, the “Edit Link” dialog will tell you whether the link will trigger a “Play On-line” button or not, and, if not, explain why not, with reasons like these:

  • The “playable game file” option is not checked
  • the “File Type” is blank
  • We don’t have a way to play $WEIRD_FORMAT game files online (we can only do HTML, Z-Code, Glulx, TADS, Hugo, and ADRIFT, including ZIP files containing those formats)
  • We can only play ZIP files online when they’re hosted on ifarchive.org
  • The “Main File” is blank (when compression is enabled)
5 Likes

It’s live now on ifdb.org.

3 Likes

Does this help? https://intfiction.org/t/a-script-to-create-ifdb-pages-for-itch-io-games/57461?u=someone2