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

Add basic file integrity check to DLL

Aberta
#137 0 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
C#
Estrelas
12
Forks
12
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

Sometimes we have issues where the game is not installed properly, for various reasons:

- Files missing or wrong UI file for manual install
- Steam/GOG etc. updates the game files
- Even other issues like the files being OK, but the path being too long for Windows so they don't load correctly

It would be possible to automatically detect some of these issues, for example:

- Wrong UI file - not sure if there is an easy way to completely check this. You can check the unity version from the file data, but for variants with the same unity version, you'd probably need a checksum to check which version is which.
- Steam/GOG etc. updates the game files or files not accessible - provide a list of checksums and important game files, always checked at startup (like what Umineko Project does). And a full list of files which requires the user to press a button to run a more detailed check.
- Of course, if the DLL itself gets overwritten then we can't run these checks in-engine anymore, but perhaps there's a trick where we can make the unmodded game show an error message if the DLL is overwritten, by providing a file which is not normally there.

It would be quite a bit of effort to organize this to be done for all files, but for just some important files it may be worthwhile.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

A issue menciona a adição de verificações de integridade de arquivos a uma DLL para um jogo. Comece examinando o código DLL existente para entender como o jogo carrega os arquivos e onde as verificações de inicialização poderiam ser inseridas. Procure por lógica existente de manipulação de arquivos ou de checksum. Determine quais 'arquivos importantes do jogo' listar e como calcular/armazenar os checksums. Uma implementação completa requer a compreensão da estrutura de arquivos do jogo e possivelmente a integração com a detecção de atualizações do Steam/GOG.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Domínio
game-dev
Tipo de issue
Funcionalidade
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.