"Async" Parchment update: live on iplayif.com (Jan 2025)

Huh, Safari continuing to be difficult it seems. I wonder if it could be that the sounds in Kerkerkruip only start after a timer? Does anyone know or any other Glulx games that have autoplaying music?

Transparent beeps at startup.

Maybe this one? Light My Way Home

1 Like

Iā€™m trying the Safari options on Browserstack, and itā€™s pretty inconsistent:

macOS Safari version Kerkerkruip Transparent
Sequoia 18.0 Sometimes Yes
Sonoma 17.3 Sometimes Yes
Ventura 16.5 Usually Yes
Monterey 15.6 No No

Even more concerningly, sometimes after you press play it doesnā€™t finish loading. But I never saw anything in the JS console. Iā€™m not sure how much of this might be the Browserstack system being quirky.

1 Like

On Chrome 128.0.6613.138; macOS 10.15 (Catalina)

Kerkerkruip with autoplay:

  • (1st time) music plays automatically after selecting ā€œnoā€ to screenreader
  • (subsequent loads) plays only after turning off music and turning it back on

without:

  • music plays automatically after clicking the ā€œplayā€ button
1 Like

In my testing on Sequoia (15.1.1, Safari 18.1.1) Transparent always works as intended, but Kerkerkruip never does. This seems like some kind of Safari bug that should be reported to Apple.

EDIT: It also seems likely that the long delay until Kerkerkruip starts playing music has something to do with it.

1 Like

Yeah I bet itā€™s that because the music only plays after 100 timer events that it thinks the music is no longer caused by the player clicking. Itā€™s like how an ad shouldnā€™t be able to play music just because you interact with another part of the page.

Would it make sense for the interpreter to play a small quiet ā€œfeepā€ when the player hits the start button? To prime the sound system for later game audio.

1 Like

I have seen others on the net write about that strategy. I can try it for sure, but on the other hand Iā€™m not sure it would help if the reason the sounds arenā€™t playing is that Kerkerkruipā€™s music is too disconnected from the play button. I could also try moving the creation of the AudioContext until after the play button is pressed.

Wouldnā€™t it help in that exact situation, since pressing the play button causes the first audio to sound?

I tried simply moving when the AudioContext is created until after the play button, and itā€™s now working in Sonoma and Sequoia!

macOS Safari version Kerkerkruip Transparent
Sequoia 18.0 Yes Yes
Sonoma 17.3 Yes Yes
Ventura 16.5 Usually Yes
Monterey 15.6 No No

How in commonly used is Monterey now? The stats I can find say everyone uses Catalina, oh yeah thereā€™s a note saying future versions just say theyā€™re Catalina, so thatā€™s not much help for us. What Iā€™m asking is should I bother trying the priming approach, or is this good enough?

1 Like

Well I tried some simple priming, and it sometimes now works in Monterey! (Though weirdly Transparent still doesnā€™t?) In Browserstack on Monterey it doesnā€™t always work, but also sometimes it doesnā€™t start at all, or the animation is super choppy or freezes. If anyone has a real device still on Monterey Iā€™d be interested in hearing how it goes, but I think Iā€™ll call it here. Priming is definitely the way to go, and it seems to work consistently from Ventura onwards now.

macOS Safari version Kerkerkruip Transparent
Sequoia 18.0 Yes Yes
Sonoma 17.3 Yes Yes
Ventura 16.5 Yes Yes
Monterey 15.6 Sometimes No
2 Likes

I donā€™t have a way to test Monterey right now, but I have a machine running macOS Big Sur 11.7.10 and Safari 16.3. For what it is worth, none of the games make any sound on that machine, except that the Kerkerkruip music starts playing if I switch it off and on again.

At least that tells us things used to be worse.

Hmm. So Big Sur is the version before Monterey, but your Safari is newer than Browserstackā€™s Safari on Monterey. I donā€™t know which would matter more, but Iā€™d expect itā€™s probably the Safari version. Does 16.3 vs 16.5 really make the difference?

Does it at least work on your Sequoia machine? For an issue like this where weā€™re dealing with hidden heuristics without even any kind of errors to detect (just function calls that have no effect) I think Iā€™m satisfied with fixing it for the newest couple of versions.

Yes, on the Sequoia machine everything works as it should now.

I wouldnā€™t bet on that the Safari version matters more than the OS. I really donā€™t know anything about this, but it is entirely possible that Safari is using system-specific Webkit libraries on macOS.

Safari updates with MacOS. Itā€™s not a separate update.

2 Likes

Iā€™ve merged the testing branch into master, and so these updates are now live on iplayif.com! Hello sound support, goodbye Quixe and ZVM (for the moment at least.)

Iā€™ve also uploaded the Inform 7 and single file distributions to the releases page.

Note that audio is not yet ready in the Inform 7 template.

4 Likes