curiousdannii / parchment

The Interactive Fiction web app
https://iplayif.com
MIT License
421 stars 60 forks source link

zcode2js.html error: This is not a Z-Code file #76

Closed dfabulich closed 2 years ago

dfabulich commented 2 years ago

Today it occurred to me to try to reproduce a bug on iplayif.com in the current latest Parchment checked in to github, but I was unable to do so, attempting to follow the instructions described here: https://intfiction.org/t/new-parchment-for-inform-7-template-now-with-quixe-and-stylehints/46160

Specifically, I went to https://iplayif.com/tools/zcode2js.html and submitted the file I got from https://ifarchive.org/if-archive/games/zcode/Bronze.zblorb to generate a file bronze.zblorb.js. I saved it in the Parchment directory, mounted it in a web server, and opened index.html. I saw a red error message at the top of the screen, "Error: This is not a Z-Code file" and an error in the Chrome Dev Tools console:

Error: This is not a Z-Code file
    at e.start (zvm.js:1)
    at Object.w [as accept] (main.js:1)
    at _e (main.js:1)
    at Object.init (main.js:1)
    at Object.init (main.js:1)
    at Object.start (main.js:1)
    at HTMLDocument.launch (main.js:1)

Is this my fault somehow? (If so, would you kindly add some testing instructions to the README for this repository, explaining what it was I was supposed to have done?)

(FWIW, I was kinda able to workaround this by using the checked in parchment-for-inform7.zip, but that zip hasn't been updated since April, so it's not really a test of the current version of Parchment. But I wasn't able to workaround the problem by checking out the last-known commit for parchment-for-inform7.zip, https://github.com/curiousdannii/parchment/tree/e6c7206d5dd6d9ae34e07a3e94b5e498e818f26b)

curiousdannii commented 2 years ago

Sorry, that tool should probably be considered depreciated. The recommended tool to use now is ifsitegen.py:

https://intfiction.org/t/ifsitegen-py/50576

dfabulich commented 2 years ago

Could you provide more detail? Just running ifsitegen.py won't test the current latest Parchment code in my local git repository, right? (It looks like it tries to autodetect an Inform installation, which is exactly what I don't want.)

dfabulich commented 2 years ago

I figured it out. Parchment no longer requires a pre-generated .js file; it wants a .zblorb directly.

curiousdannii commented 2 years ago

ifsitegen wants a folder or zip with a Inform 7 template structure. So the simplest way is to just use it with parchment-for-inform7.zip. Which I've just updated for you too, forgot it last time.

Oh, and yeah, the non Inform 7 version doesn't have support for JSified files yet. That's on the list (#72).

curiousdannii commented 2 years ago

zcode2js.html has now been deleted. I don't think I'll fix it and put it back, as I'd like to just encourage people to use ifsitegen instead.