07th-mod / 07th-mod/higurashi-assembly

[All Chapters][Rare] Script compilation fails with "Fatal error in gc: GetThreadContext failed" error (only translations still compile scripts)

Aperta
#145 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C#
Stelle
12
Fork
12
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## Background

When we first made the mod, we occasionally encountered users who couldn't compile scripts for various reasons (for example, game crashes or freezes during script compilation). But when we sent them already compiled scripts, their game would work normally.

To fix this, for the main English mod, we distribute pre-compiled scripts, the player never even sees the "script compilation". This is the same as how the base game works. The compiled scripts are generated automatically as part of the build process.

However, translators don't necessarily have this setup automatically and/or don't manually include the pre-compiled scripts. So they will still occasionally get script compilation errors.

## Error reported recently: "Fatal Error in gc: GetThreadContext Failed":

One error we have seen ...maybe two or three times is below (which I saw today) is the "Fatal Error in gc: GetThreadContext Failed":

Eventually I sent them the compiled scripts and it fixed the problem.

## Solutions

This is a very rare error, so most likely it isn't worth fixing. However, if it were to be fixed:

1. Tell all the translators to either manually include compiled scripts, or I can give them my github actions build script to do it automatically (I think I made a program to compile scripts, which doesn't require a copy of the game). Also, create a script (run manually?) which scans through all the translations and sees which ones are missing compiled scripts.
2. This method seems too difficult - On our end, have some way to automatically compile scripts for translations and include them in the installer. The main difficulty is that how we have it setup, the translators can update their mod at any time, and we don't have an easy way to see if it was updated/update it in synchronous. So I wouldn't do this method.

Image

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Esamina il processo di compilazione degli script esistente nel sistema di build, probabilmente in GitHub Actions o uno strumento personalizzato. Comprendi come vengono generati gli script precompilati per la mod principale. Indaga sull'errore 'Fatal error in gc: GetThreadContext failed', che potrebbe essere specifico dell'ambiente. Determina come automatizzare l'inclusione degli script compilati per le traduzioni, possibilmente modificando lo script di build o creando uno scanner per gli script compilati mancanti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
build-system
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
40/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.