curiousdannii / parchment

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

The meteor, the stone and illegal objects #125

Closed namekuseijin closed 2 years ago

namekuseijin commented 2 years ago

I'm seeing lots of issues with illegal object references in old games like The Meteor, the Stone and a long glass of Sherbet. You can test easily by "x amilia, x book, ask her about book". Asking her about elephants works fine, asking about hat triggers the error too...

I'm pretty sure I've encountered same error in a couple other oldies...

curiousdannii commented 2 years ago

It is broken in Bocfel/Gargoyle too.

Discussion of the bugs here: https://intfiction.org/t/the-meteor-the-stone-and-a-long-glass-of-sherbet-bugs/14138

I'm not completely opposed to making ZVM more accommodating of buggy games, but it doesn't seem like this sort of error is particularly common. So for now it's not going on my list of things to do.

namekuseijin commented 2 years ago

weird. you conceivably could ask characters about anything, not just objects in games, and the old games certainly wouldn't simply crash... even worse in parchment as it now saves to cookies and you need to clean it to get it to restart.

I've been seeing lots of illegal object references and weird numbers in descriptions of game objects in older games that I'm pretty sure weren't there in these games in the past. I'll keep up a file for such occurrences for later report.

If this behavior is also in gargoyle, perhaps it goes a long way in the past. I'll later try in some historic frotz in dosbox or something...

Em ter, 26 de abr de 2022 02:24, Dannii Willis @.***> escreveu:

It is broken in Bocfel/Gargoyle too. Are you sure it isn't the game that's at fault?

— Reply to this email directly, view it on GitHub https://github.com/curiousdannii/parchment/issues/125#issuecomment-1109357855, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHVQEWYK4VTKTZSIREXTNC3VG54Z3ANCNFSM5UIF7BMA . You are receiving this because you authored the thread.Message ID: @.***>

curiousdannii commented 2 years ago

Modern Frotz should probably also be okay. If it's only some of the early Inform games then that's not too many. Though I've tried Curses in Parchment and never run into an error like this...

If it turns out to be a more common issue then I'll definitely consider again about how I could make ZVM be more accommodating.

Adding a force restart button is #85. In the meantime you can add &do_vm_autosave to the URL to force restart. Far from ideal, but it does work at least.

namekuseijin commented 2 years ago

Man, did you just did something to the code? It is fixed.

But, I did something here. I got to chrome mobile configs and deleted all cookies for iplayif. And besides that, I went into cookie configurations and explicitly made it so that anonymous browsing disabled cookies (why it's on by default is beside reason)

Purging all cookies is the only way to make this work, because if the game crashes, it won't load anymore while the cookie is there.

Anyway, it now works as intended, whatever you ask Amilia, it goes the standard message "What Amilia doesn't know could fill an entire book."

so I fear it's related to game state in the cookies... the workaround is to disable it, but then you have no way of playing long games. I vastly enjoyed more the old of saving to URL...

Em ter, 26 de abr de 2022 08:43, Dannii Willis @.***> escreveu:

Modern Frotz should probably also be okay. If it's only some of the early Inform games then that's not too many. Though I've tried Curses in Parchment and never run into an error like this...

If it turns out to be a more common issue then I'll definitely consider again about how I could make ZVM be more accommodating.

— Reply to this email directly, view it on GitHub https://github.com/curiousdannii/parchment/issues/125#issuecomment-1109693638, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHVQEW5VEZEHEENWMUH3LZ3VG7JGFANCNFSM5UIF7BMA . You are receiving this because you authored the thread.Message ID: @.***>

namekuseijin commented 2 years ago

After deleting the cookies, I also just tried in regular, non-anonymous browsing mode and it worked fine too. I asked her about Trump and just the regular message, no crashes...

For what it's worth, yesterday I went through the trouble of installing the full JavaScript stack to try to debug this (even without understanding much about the z-machine) and I went stepping through the chrome debugger and it seems to crash right in zvm runtime.js, function get_parent for obj parameter set to 65535...

Em ter, 26 de abr de 2022 09:23, namekuseijin @.***> escreveu:

Man, did you just did something to the code? It is fixed.

But, I did something here. I got to chrome mobile configs and deleted all cookies for iplayif. And besides that, I went into cookie configurations and explicitly made it so that anonymous browsing disabled cookies (why it's on by default is beside reason)

Purging all cookies is the only way to make this work, because if the game crashes, it won't load anymore while the cookie is there.

Anyway, it now works as intended, whatever you ask Amilia, it goes the standard message "What Amilia doesn't know could fill an entire book."

so I fear it's related to game state in the cookies... the workaround is to disable it, but then you have no way of playing long games. I vastly enjoyed more the old of saving to URL...

Em ter, 26 de abr de 2022 08:43, Dannii Willis @.***> escreveu:

Modern Frotz should probably also be okay. If it's only some of the early Inform games then that's not too many. Though I've tried Curses in Parchment and never run into an error like this...

If it turns out to be a more common issue then I'll definitely consider again about how I could make ZVM be more accommodating.

— Reply to this email directly, view it on GitHub https://github.com/curiousdannii/parchment/issues/125#issuecomment-1109693638, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHVQEW5VEZEHEENWMUH3LZ3VG7JGFANCNFSM5UIF7BMA . You are receiving this because you authored the thread.Message ID: @.***>

curiousdannii commented 2 years ago

That matches what the forum topic says, that it's trying to do things to object number -1.

dfabulich commented 2 years ago

To be clear, I was never able to repro the issue on Spatterlight 0.9.4 with x amilia. x book. ask her about book, but I do repro it in Gargoyle 2022.1, and I still repro it in Parchment with https://iplayif.com/?story=https%3A%2F%2Fifarchive.org%2Fif-archive%2Fgames%2Fzcode%2Fsherbet.z5 in an incognito window.

namekuseijin commented 2 years ago

clean all your cookies and Web storage for that site and try again. The issue has not come back to me even right now...

Em qua, 27 de abr de 2022 13:35, Dan Fabulich @.***> escreveu:

To be clear, I was never able to repro the issue on Spatterlight 0.9.4 with x amilia. x book. ask her about book, but I do repro it in Gargoyle 2022.1, and I still repro it in Parchment with https://iplayif.com/?story=https%3A%2F%2Fifarchive.org%2Fif-archive%2Fgames%2Fzcode%2Fsherbet.z5 in an incognito window.

— Reply to this email directly, view it on GitHub https://github.com/curiousdannii/parchment/issues/125#issuecomment-1111214771, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHVQEW3YPYNFD7UBPBJN6GLVHFUEBANCNFSM5UIF7BMA . You are receiving this because you authored the thread.Message ID: @.***>