Files
hascheevos2/hascheevos/README.pt_BR.md
T
2020-12-18 20:09:36 +00:00

5.4 KiB

hascheevos

Uma maneira de checar se sua ROM está boa para RetroAchievements.

instalação

  1. Dependências: jq, curl, unzip, gzip e p7zip-full. Em uma distribuição Linux típica você provavelmente já terá a maioria destes pacotes instalados e a única novidade será o jq (uma ferramenta para analisar dados JSON). Em um sistema baseado em Debian o comando abaixo deve instalar tudo que você precisa:
sudo apt-get install jq unzip gzip p7zip-full curl

Se você está usando outra distribuição (ou até mesmo Cygwin no Windows), o script ainda pode ser útil pra você. Apenas certifique-se de instalar os pacotes equivalentes.

  1. Vá para o diretório que você quer instalar a ferramento (se não tem certeza, o seu diretório home pode ser a escolha mais fácil):
cd # /path/to/the/chosen/directory
  1. Clone o repositório e vá para o diretório criado:
git clone --depth 1 https://github.com/meleu/hascheevos
cd hascheevos
  1. Compile o "cheevos hash calculator":
make

(sim, o comando está correto: apenas make e nada mais! Isto compila o src/cheevoshash.c e cria o executável bin/cheevoshash.)

  1. [OPCIONAL] Inclua o diretório da ferramento no seu PATH:
# adapte o caminho abaixo para a configuração do seu sistema.
# provavelmente você também vai querer colocar esse comando no final do seu ~/.bashrc
export PATH="$PATH:/path/to/hascheevos/bin"
  1. Feito! A ferramenta está pronta para ser usada!

como usar

A ferramenta deste repositório é o script hascheevos.sh. Execute-o com --help para ver as opções disponíveis.

Checando se uma ROM está OK para cheevos

Esta é a maneira mais simples de usar o script:

hascheevos.sh /path/to/the/ROM

Exemplo 1 - a ROM está OK para cheevos

$ hascheevos.sh /path/to/megadrive/Sonic\ the\ Hedgehog\ \(USA\,\ Europe\).zip 
Checking "/path/to/megadrive/Sonic the Hedgehog (USA, Europe).zip"...
--- hash:    2e912d4a3164b529bbe82295970169c6
--- game ID: 1
--- "/path/to/megadrive/Sonic the Hedgehog (USA, Europe).zip" HAS CHEEVOS!

Exemplo 2: não há cheevos para sua ROM

$ hascheevos.sh /path/to/nes/Qix\ \(USA\).zip 
Checking "/path/to/nes/Qix (USA).zip"...
--- hash:    40089153660f092b5cbb6e204efce1b7
--- game ID: 1892
--- "/path/to/nes/Qix (USA).zip" has no cheevos. :(

Copiar todas as ROMs que possuem cheevos para um diretório.

Se você tem uma grande coleção de ROMs e quer copiar apenas aquelas que possuem cheevos para um outro diretório, você pode usar a opção --copy-roms-to.

No exemplo abaixo nós copiaremos todas as roms que possuem cheevos de /path/to/megadrive/roms/ para folder/for/cheevos/with/roms/megadrive.

hascheevos.sh --copy-roms-to folder/for/cheevos/with/roms /path/to/megadrive/roms/*

Observações

  • se o diretório de destino não existir, ele será criado.

  • o script automaticamente cria um subdiretório abaixo do diretório passado como argumento para --copy-roms-to com o nome do console (megadrive, snes, etc.) da respectiva ROM. Exemplo: se você passar o diretório cheevos_roms, o script cria subdiretórios como cheevos_roms/megadrive ou cheevos_roms/nes, de acordo com o nome do console da ROM.

  • Não se preocupe com os arquivos que não são ROMs (como gamelist.xml ou .srm), o script ignora arquivos com extensões inválidas. ;-)

[APENAS PARA RETROPIE] Checar se cada ROM de um determinado console possui cheevos.

Observação: Este recurso só é utilizável em um sistema RetroPie.

No RetroPie as ROMs ficam localizadas em $HOME/RetroPie/roms/CONSOLE_NAME. Quando usando o script em um sistema RetroPie, você pode checar todas as ROMs de um determinado console usando a opção --system. Exemplo:

hascheevos.sh --system nes

Observação: Se você passar all para a opção --system, o script procurará no diretório de todos os sistemas suportados. A saber: megadrive, nes, snes, gb, gbc, gba, pcengine, mastersystem e n64

[APENAS PARA RETROPIE] Criar um "custom collections" para EmulationStation (para cada console) com todos os jogos que possuem cheevos.

Observações:

  • Este recurso só é utilizável em um sistema RetroPie.
  • O recurso "custom collection" foi implementado no EmulationStation 2.6.0.
  • Informações sobre como usar "custom collections" no ES podem ser encontradas aqui.

O comando abaixo cria "custom collections" para todos os sistemas suportados, populando-os com os seus jogos que possuem cheevos.

hascheevos.sh --collection --system all

Dependendo de quantas ROMs você possui este commando pode levar alguns minutos.

Depois que o script terminar, reinicie o EmulationStation, pressione Start para acessar o MAIN MENU e então vá em GAME COLLECTIONS SETTING -> CUSTOM GAME COLLECTIONS e habilite os "achievements collections" que você vê.

Agora você tem um custom collection para cada sistema que suporta RetroAchievements e populado apenas com os seus jogos que possuem achievements.


What's the point of creating this tool?!

Links to the answer: