UPDATE:
If you are running in Tomcat 10+ you will either need a servlet filter or a web server/proxy to set the following headers:
Cross-Origin-Opener-Policy same-origin;
Cross-Origin-Embedder-Policy require-corp;
Yes, that is correct. I've set up Cloudflare Pages to set those headers in the case of the agi.sierra.games website. The SharedArrayBuffer won't work without them.
Build / deployment instructions would help the README. If I get it going, I'll send a PR.
When I wrote the README for agile-gdx, I was focusing more on the users of the agi.sierra.games website itself rather than on building and installing it on a different site. I do need to add a section that covers the latter.
I'm currently working on a similar project for emulating an old 8-bit home computer from the 80s called the Oric (I'm not sure if it is known much in the USA but it was a thing in the UK and parts of Europe). I used exactly the same approach for this emulator (called JOric) as I did for AGILE, in fact I copied some of the code from AGILE to get it working on the web, so it uses the same approach to using SharedArrayBuffers to share data between the browser UI thread and the background web worker. In this case, I did add a section to the README that covered setting up those HTTP header fields:
https://github.com/lanceewing/joric?tab=readme-ov-file#running-on-your-own-local-web-serverI'm planning to add a section like that to the agile-gdx README as well, in fact I've added a lot of additional features to this JOric emulator that I think would be useful for agile-gdx, such as loading a game from a url via a request parameter, and drag and drop, and generally lots of usability improvements, particularly with the game selection pages. I do plan to copy those improvements back to agile-gdx at some point.