Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

First-Install detection and global.dat replacement

Abierto
#242 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
45/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
python, shell
Área
cli, tooling

Línea de trabajo

El issue describe un script de Python multiplataforma para detectar instalaciones iniciales de juegos y reemplazar archivos global.dat. Comience examinando los archivos por lotes de Windows existentes en el repositorio para comprender la lógica actual. Revise el archivo MGHelper.cs vinculado para ver cómo Unity accede a las rutas de guardado. Para cada plataforma (Windows, Mac sin DRM, Linux sin DRM, Steam), implemente la detección de rutas y la lógica de respaldo/copia de archivos como se especifica. Las pruebas requerirán simular diferentes estados de instalación.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

I wonder if we should try one suggestion I gave a long time ago, that was supplying our own configuration file during installation. Might be useful at least for the console arcs

For windows
  • when any higurashi game is installed, check the %appdata%\Mangagamer\higurashi04 folder (where the last part changes for each game)
    • if there exists a global.dat.backup file, then this is a re-install/upgrade. Take no action
    • if there is no global.dat.backup file, rename the old global.dat to global.dat.backup and copy in the desired global.dat
For DRM Free mac:

same as above, but use path:

DRM Free Mac version saves to ~/Library/Application Support/unity.MangaGamer.Higurashi When They Cry - Ch.4 Himatsubushi/ but I'd feel better about reading the CFBundleIdentifier from the Info.plist to get that last directory's name. You can use defaults read <full path to Info.plist> CFBundleIdentifier to get this.

For DRM Free Linux:

same as above, but use path:

DRM Free Linux version saves to ~/.config/unity3d/MangaGamer/<full game name> though I don't remember the exact capitalization used for the full game name

For steam linux/mac:

For steam, I would guess Linux will be the same (it's based off a file in the game assets) but for the Mac one, since it sounds like they name the main application bundle differently, the may have changed the bundle identifier too. If someone with the mac steam version could upload the Info.plist files from some of their games (located at gamename.app/Contents/Info.plist) that would be helpful.

Actual code used in the game to access save files

https://github.com/07th-mod/higurashi-assembly/blob/tsumi-mg/Assets.Scripts.Core/MGHelper.cs#L181 idealpersona - "I think the Application class is Unity, so you may have to replace those references with new code according to their docs"


I'm writing this up for when/if we make a cross-platform python script. For now will jsut be implemented by modifying our existing windows only batch files.

NOTE to any other developers: feel free to edit this comment if some of the information is wrong.

Lenguaje dominante
JavaScript
Estrellas
214
Forks
12
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de 07th-mod/python-patcher

Todos los issues de 07th-mod/python-patcher

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.