Veiledning for IT
Matematik i Måneby kjører i nettleseren uten installasjon og uten innlogging. Fungerer spillet ikke på skolens datamaskiner, skyldes det nesten alltid en sentral innstilling. Spillets feilskjerm viser en linje som begynner med Til IT:, og en lenke til riktig avsnitt her.
Kort fortalt må maaneby.dk få lov til å:
- bruke JavaScript JIT i Chrome:
JavaScriptJitAllowedForSites=[*.]maaneby.dk(WebAssembly) - hente alle filer under
https://maaneby.dk/uendret (nettfilter) - tegne med WebGL2, altså med maskinvareakselerasjon slått på (WebGL)
- lagre lokale data, hvis spillet skal kunne lagres (lagring)
WebAssembly er slått av
Feilskjermen sier Til IT: WebAssembly: slået fra (slått av). Spillets motor er
WebAssembly, og Chrome slår av WebAssembly når JavaScript JIT er blokkert. Det gjør policyen
DefaultJavaScriptJitSetting med verdien 2 (Do not allow any site to run
JavaScript JIT), som noen kommuner bruker som herding. Edge og telefoner fungerer som
regel, fordi policyen bare er satt for Chrome.
Løsningen er et unntak for nettstedet, slik at resten av herdingen blir stående:
JavaScriptJitAllowedForSites med verdien [*.]maaneby.dk. Google
håndhever unntaket per nettsted, så nettopp denne formen dekker både maaneby.dk og
www.maaneby.dk.
Google Admin-konsollen (Chromebooks og administrert Chrome)
- Logg inn i Google Admin-konsollen med en administratorkonto.
- Gå til Menu > Devices > Chrome > Settings. Siden User & browser settings åpnes.
- Velg organisasjonsenheten med elevenes kontoer i sidepanelet.
- Finn JavaScript JIT i gruppen Content (eller søk etter det).
- La standardvalget stå, og legg til
[*.]maaneby.dki listen over nettadresser som kan kjøre JavaScript JIT. - Klikk Save. Ifølge Google slår det som regel inn i løpet av noen minutter, men det kan ta opptil 24 timer.
Menynavnene er fra Googles engelske veiledning og kan stå på norsk i deres konsoll.
Windows: gruppepolicy
- Installer Chromes ADMX-maler (fra Google Chrome Bundle) hvis de ikke allerede finnes.
- Åpne Computer Configuration > Administrative Templates > Google > Google Chrome > Content settings.
- Åpne Allow JavaScript to use JIT on these sites, velg Enabled, klikk Show, og legg til
[*.]maaneby.dk.
Intune
Importer Chromes ADMX-filer (først google.admx, så chrome.admx) under
Devices > Configuration profiles > Import ADMX, opprett en profil av typen
Templates > Imported Administrative templates, og sett samme innstilling som
ovenfor. Google beskriver fremgangsmåten trinn for trinn (se kildene nederst).
Registeret
Policyen er en liste. Hver verdi er en streng (REG_SZ) med et løpenummer som navn:
HKLM\SOFTWARE\Policies\Google\Chrome\JavaScriptJitAllowedForSites
1 REG_SZ [*.]maaneby.dk
Som kommando (bruk neste ledige nummer hvis 1 allerede er i bruk):
reg add "HKLM\SOFTWARE\Policies\Google\Chrome\JavaScriptJitAllowedForSites" /v 1 /t REG_SZ /d "[*.]maaneby.dk" /f
Sjekk at det virker
Åpne chrome://policy på en elev-PC, klikk Reload policies, og se at
JavaScriptJitAllowedForSites står med [*.]maaneby.dk. Åpne deretter
maaneby.dk/no/spil/ i en ny fane.
Edge
Edge har de samme to policyene, hvis Edge også er låst:
JavaScriptJitAllowedForSites under Administrative Templates > Microsoft Edge >
Content settings, i registeret under
HKLM\SOFTWARE\Policies\Microsoft\Edge\JavaScriptJitAllowedForSites. Bruker dere
Edges forbedrede sikkerhetsmodus (EnhanceSecurityMode), så legg også til
maaneby.dk i EnhanceSecurityModeBypassListDomains.
Et nettfilter blokkerer spillets filer
Feilskjermen nevner en fil, for eksempel Til IT: main.dcr: HTTP 403,
(blokeret eller offline) (blokkert eller frakoblet) eller ikke en film.
Det siste betyr at filteret har svart med sin egen side i stedet for filen. Tillat:
| Adresse | Innhold | Content-Type |
|---|---|---|
https://maaneby.dk/ | Hele nettstedet. www.maaneby.dk sender bare videre hit. | |
/game/** | Selve spillet, som /no/spil/ viser i en iframe | |
/game/matematik-i-maaneby/*.dcr | Spillets 19 Director-filmer, opptil 22 MB per fil | application/octet-stream |
/game/polyfill-dist/*.wasm | Motoren (7,7 MB) og fire små utvidelser | application/wasm |
/game/polyfill-dist/*.js, /game/host/*.js, /game/fixes/*.js | Skript | application/javascript |
/game/sw.js | Service worker som lagrer filmene til neste gang (se lagring) | application/javascript |
Filene må komme fram uendret: ikke erstattet av en advarselsside, ikke avkortet og med
typen application/wasm beholdt på .wasm. Skanner en proxy store filer,
kan de første filmene ta lang tid. Spillet henter ingenting fra andre adresser. Nettleseren
kan sende Cloudflares egne nettverksfeilrapporter til a.nel.cloudflare.com; dem
trenger dere ikke tillate.
WebGL2 eller maskinvareakselerasjon er slått av
Feilskjermen sier Til IT: WebGL2: .... Spillet tegnes med WebGL2. Uten det kan
det bare kjøre svært sakte, og noen skjermer tegnes feil. Sjekk:
-
HardwareAccelerationModeEnabledmå ikke være satt til false (Windows, Mac, Linux). Den krever omstart av nettleseren. -
Disable3DAPIsmå ikke være satt til true. I Admin-konsollen heter den 3D content i gruppen Content. -
Gamle grafikkdrivere kan få Chrome til selv å slå av WebGL.
chrome://gpuviser hvorfor.
Lokal lagring eller service worker er blokkert
Spillet lagrer i nettleseren på hver datamaskin (localStorage), og en service worker lagrer
de hentede filmene i nettleserens hurtigbuffer, så de ikke må hentes på nytt. Er lokale data
blokkert, for eksempel med DefaultCookiesSetting = 2 (Do not allow any site to set
local data), starter spillet likevel, men det kan ikke lagres til neste gang, og filmene
hentes på nytt hver gang. Tillat lokale data for nettstedet med
CookiesAllowedForUrls = [*.]maaneby.dk (i Admin-konsollen:
Cookies i gruppen Content, Allow cookies for URL patterns).
Slettes nettleserdata ved utlogging, forsvinner lagrede spill også.
Spillet stoppet under hentingen
Feilskjermen sier Til IT: tidsgrænse: ... (tidsgrense). Tittelskjermen kom ikke
innen ett minutt, og ingenting ble hentet. Det skyldes oftest et filter eller en proxy som
holder filene tilbake (se nettfilter), eller et svært belastet nett (se
båndbredde).
Båndbredde
- Før første klikk hentes omtrent 10 MB, hvorav 7,7 MB er motoren.
- En elev henter omtrent 70 MB fra start til og med den første oppgaven. Hver ny oppgave er en film på 6 til 22 MB.
- Filene ligger i nettleserens hurtigbuffer etterpå, så neste gang på samme maskin går det raskere.
Start gjerne spillet noen minutter før timen, og ikke på 25 maskiner i samme sekund. 25 elever samtidig er rundt 1,75 GB over skolens linje.
Personvern og sikkerhet
- Gratis, uten innlogging og uten reklame.
- Nettstedet samler ikke inn personopplysninger og har ingen sporing eller analyseverktøy.
- Lokalt lagres bare spillets egne lagrede spill og innstillinger (språk) i nettleseren, pluss de hentede filmene i nettleserens hurtigbuffer. Ingenting sendes tilbake til serveren.
- Nettstedet er statisk og driftes hos Cloudflare (Cloudflare Pages).
- Spillet er originalen fra 2005 og er tilgjengelig med tillatelse fra Bitfrost Interactive (om prosjektet).
Kontakt
Spørsmål fra IT: skriv til [email protected]. Send gjerne med linjen Til IT fra feilskjermen, et bilde går fint.
Kilder
- JavaScriptJitAllowedForSites og DefaultJavaScriptJitSetting (Chrome Enterprise)
- Set Chrome policies for users or browsers (Google, Admin-konsollen)
- Set Chrome browser policies on managed PCs (Google, gruppepolicy)
- Manage Chrome browser with Microsoft's Intune Import Administrative templates (Google)
- HardwareAccelerationModeEnabled, Disable3DAPIs, DefaultCookiesSetting, CookiesAllowedForUrls (Chrome Enterprise)
- JavaScriptJitAllowedForSites og EnhanceSecurityModeBypassListDomains (Microsoft Edge)