Skip to content

Releases: Invictus-potens/smt4-recomp

v0.1.8 beta

v0.1.8 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 30 Oct 02:16

English | Português abaixo

See the hidden Law/Chaos alignment. Everything from v0.1.7 still applies; start from v0.1.1's notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

New

  • Show Alignment (cheat): the hero's alignment in the bottom right corner, "Alignment: Law (+12)". The sides follow the endings: +9 and up is Law, -9 and down is Chaos, Neutral between (#9).
  • Alignment Notices (cheat): a notice each time a choice changes it, "Alignment +5 toward Law: Neutral (+8)".
  • Both need a small addition to Zakuro, merged upstream (fearkov/zakuro#24); this release updates to that Zakuro. How it works: ALIGNMENT.md.
  • Upscaled portraits: how to redraw the game's portraits at 4x with an AI upscaler as a texture pack, made on your own PC (UPSCALE.md). A tool to do it in one step is planned.

Fixed

  • A game that closed right away gave no reason (#12). The launcher now shows the exit code and what the game printed, so Copy the log and Report a problem include it. It also puts the C compiler's folder on the game's PATH.
  • The builder linked with the first x86_64-w64-mingw32-gcc on PATH instead of the one it picked (#10, #11).

Updating

Open the launcher and press Update and rebuild in step 3. Only the program is rebuilt. Then turn the alignment cheats on from the cheat menu.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. Still a beta: if something fails, use Report a problem in the launcher.


Português

Veja o alinhamento Law/Chaos, que o jogo esconde. Tudo da v0.1.7 continua valendo; se você é novo, comece pelas notas da v0.1.1.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Novidades

  • Show Alignment (cheat): o alinhamento do herói no canto inferior direito, "Alignment: Law (+12)". Os lados seguem os finais: +9 ou mais é Law, -9 ou menos é Chaos, Neutral entre os dois (#9).
  • Alignment Notices (cheat): um aviso a cada escolha que muda o alinhamento, "Alignment +5 toward Law: Neutral (+8)".
  • Os dois precisam de um recurso pequeno no Zakuro, que já foi aceito (fearkov/zakuro#24); esta versão atualiza para esse Zakuro. Como funciona: ALIGNMENT.md.
  • Retratos em alta resolução: como redesenhar os retratos do jogo em 4x com um upscaler de IA, como texture pack, feito no seu próprio PC (UPSCALE.md). Uma ferramenta para fazer isso num passo só está planejada.

Corrigido

  • Um jogo que fechava na hora não dizia por quê (#12). Agora o launcher mostra o código de saída e o que o jogo escreveu, e Copy the log e Report a problem incluem isso. Ele também coloca a pasta do compilador C no PATH do jogo.
  • O builder linkava com o primeiro x86_64-w64-mingw32-gcc do PATH em vez do que ele escolheu (#10, #11).

Atualizando

Abra o launcher e clique em Update and rebuild no passo 3. Só o programa é recompilado. Depois ligue os cheats de alinhamento no menu de cheats.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Ainda é beta: se algo falhar, use Report a problem no launcher.

v0.1.7 beta

v0.1.7 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 28 Oct 05:00

English | Português abaixo

A launcher fix release. Everything from v0.1.6 still applies; start from v0.1.1's notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

Fixed

  • Tools installed while the launcher was open stayed "missing" until it was reopened, and Switch to the GNU toolchain could fail with "program not found" (#8). The launcher now reads the current PATH each time it checks, and looks in Git's and Rust's install folders too.
  • The launcher reported its version as 0.1.0; it now says 0.1.7.

Good to know

  • Linux: a player has built and played the game natively on Linux (#6); see Building on Linux in the README.
  • Keep the update CIA away from the ROM. This project is made from the game's v1.0 code. If Zakuro finds the v1.2.0 update next to your ROM, it applies it, the recompiled code can't be used, and the whole game runs much slower (#4). DLC is fine.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. Still a beta: if something fails, use Report a problem in the launcher.


Português

Uma versão de correção do launcher. Tudo da v0.1.6 continua valendo; se você é novo, comece pelas notas da v0.1.1.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Corrigido

  • Ferramentas instaladas com o launcher aberto continuavam "missing" até ele ser reaberto, e Switch to the GNU toolchain podia falhar com "program not found" (#8). Agora o launcher lê o PATH atual a cada verificação e também procura nas pastas de instalação do Git e do Rust.
  • O launcher dizia ser a versão 0.1.0; agora diz 0.1.7.

Bom saber

  • Linux: um jogador já compilou e jogou nativamente no Linux (#6); veja Compilando no Linux no README.
  • Deixe o CIA de update longe da ROM. Este projeto é feito a partir do código da v1.0 do jogo. Se o Zakuro achar o update v1.2.0 ao lado da ROM, ele aplica o update, o código recompilado não pode ser usado e o jogo inteiro fica bem mais lento (#4). As DLCs não têm problema.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Ainda é beta: se algo falhar, use Report a problem no launcher.

v0.1.6 beta

v0.1.6 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 25 Oct 23:19

English | Português abaixo

AMD GPUs now draw the game on the GPU, and the launcher explains what to do under Wine. Everything from v0.1.5 still applies; start from v0.1.1's notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

Fixed

  • AMD GPUs ran the game slowly (choppy sound, frame rate in the teens), whatever the settings (#4). The Zakuro version we used needed a depth format AMD cards don't have, so the 3D was drawn in software. This release updates to Zakuro 0.2.29, where fearkov fixed it: AMD cards get the hardware renderer.
  • Under Wine, the launcher offered tool installs that can't work there. It now detects Wine and explains the two ways that do work: build on Linux itself, or build on Windows and copy the folder over (#6). The README has a new Building on Linux section; Linux builds haven't been tested yet, reports are welcome.

Updating

Already built the game? Open the launcher and press Update and rebuild in step 3. Only the program is rebuilt, not the whole game, so it takes a few minutes.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. Still a beta: if something fails, use Report a problem in the launcher.


Português

As GPUs AMD agora desenham o jogo na GPU, e o launcher explica o que fazer no Wine. Tudo da v0.1.5 continua valendo; se você é novo, comece pelas notas da v0.1.1.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Corrigido

  • Nas GPUs AMD o jogo rodava lento (som picotando, FPS na casa dos 10), com qualquer configuração (#4). A versão do Zakuro que usávamos precisava de um formato de profundidade que as placas AMD não têm, então o 3D era desenhado por software. Esta versão atualiza para o Zakuro 0.2.29, onde o fearkov corrigiu isso: as placas AMD passam a usar o renderizador por hardware.
  • No Wine, o launcher oferecia instalar ferramentas que não funcionam lá. Agora ele detecta o Wine e explica os dois caminhos que funcionam: compilar no próprio Linux, ou compilar no Windows e copiar a pasta (#6). O README tem uma seção nova, Compilando no Linux; a compilação no Linux ainda não foi testada, relatos são bem-vindos.

Atualizando

Já compilou o jogo? Abra o launcher e clique em Update and rebuild no passo 3. Só o programa é recompilado, não o jogo inteiro, então leva poucos minutos.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Ainda é beta: se algo falhar, use Report a problem no launcher.

v0.1.5 beta

v0.1.5 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 23 Oct 01:58

English | Português abaixo

A launcher release. Everything from v0.1.4 still applies (the build is all Rust, no Python); start from v0.1.1's notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

What's new

  • Updates from the launcher. When it opens, the launcher checks this project on GitHub and lists what's new. One click updates the project and, if the game is already built, rebuilds it. You can turn the check off, or run it by hand with Check for updates. This needs a project folder downloaded by the launcher (Download in step 3), not from a zip.
  • Report a problem opens a new issue already filled in with your setup (launcher version, tools found) and the end of the log, with your user folder hidden. The whole log is also copied, in case more of it helps.
  • An icon for the launcher, on the .exe and the window.

Fixed

  • Copy the log didn't copy anything, so the log couldn't be pasted into an issue. It works now.
  • Project page and Report a problem didn't open. They open in your browser now.

The launcher itself doesn't update yet: for a newer launcher, download it from the latest release.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. Still a beta: if something fails, press Copy the log and paste it into an issue.


Português

Uma release do launcher. Tudo da v0.1.4 continua valendo (a compilação é toda em Rust, sem Python); se você é novo, comece pelas notas da v0.1.1.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Novidades

  • Atualizações pelo launcher. Ao abrir, o launcher confere este projeto no GitHub e lista o que há de novo. Um clique atualiza o projeto e, se o jogo já estiver compilado, compila de novo. Dá para desligar a verificação, ou rodar na mão com Check for updates. Precisa de uma pasta do projeto baixada pelo launcher (Download no passo 3), não de um zip.
  • Report a problem abre uma issue nova já preenchida com a sua configuração (versão do launcher, ferramentas encontradas) e o final do log, com a sua pasta de usuário escondida. O log inteiro também é copiado, caso ajude mais.
  • Um ícone para o launcher, no .exe e na janela.

Corrigido

  • Copy the log não copiava nada, então o log não podia ser colado numa issue. Agora funciona.
  • Project page e Report a problem não abriam. Agora abrem no navegador.

O launcher em si ainda não se atualiza: para um launcher mais novo, baixe da release mais recente.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Ainda é beta: se algo falhar, aperte Copy the log e cole numa issue.

v0.1.4 beta

v0.1.4 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 22 Oct 23:25

English | Português abaixo

The build is now all Rust: Python is no longer needed or supported. Everything else from v0.1.1 still applies; start from its notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

What's new

  • No more Python. build.py and the Python scripts are replaced by Rust tools: cargo build-game <rom> builds the game, and cargo fit-texture makes texture pack pictures (no FFmpeg needed). The launcher uses them, and its tools list no longer asks for Python. The Python install problems from #1 are gone with it.
  • The right C compiler is picked on its own. The build skips an old 32-bit MinGW first on PATH, and the gcc that comes with Strawberry Perl, whose linker is too old for current Rust (the .drectve ... unrecognized warnings followed by a link error). It uses the first suitable 64-bit gcc, including ones installed by winget (WinLibs) or MSYS2.
  • A project folder from an older, Python-based release gets a message saying to download a newer release.

Already built with an earlier release? Your code/ is reused, so rebuilding doesn't redo the slow step.

Known limitations

  • Still a beta, tested on one Windows PC. Linux hasn't been tried.
  • The Project page and Report a problem links in the launcher are placeholders for now.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. If something fails, press Copy the log in the launcher and paste it into an issue.


Português

A compilação agora é toda em Rust: o Python não é mais necessário nem suportado. Todo o resto da v0.1.1 continua valendo; se você é novo, comece pelas notas dela.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Novidades

  • Sem Python. O build.py e os scripts em Python foram trocados por ferramentas em Rust: cargo build-game <rom> compila o jogo, e cargo fit-texture gera as imagens dos texture packs (sem precisar de FFmpeg). O launcher usa essas ferramentas, e a lista de ferramentas não pede mais Python. Os problemas de instalação do Python da #1 somem junto.
  • O compilador C certo é escolhido sozinho. A compilação pula um MinGW antigo de 32 bits que venha primeiro no PATH, e o gcc que vem com o Strawberry Perl, cujo linker é antigo demais para o Rust atual (os avisos .drectve ... unrecognized seguidos de um erro de link). Ela usa o primeiro gcc de 64 bits adequado, inclusive os instalados pelo winget (WinLibs) ou pelo MSYS2.
  • Uma pasta do projeto de uma release antiga, baseada em Python, mostra uma mensagem pedindo para baixar uma release mais nova.

Já compilou com uma release anterior? O seu code/ é reaproveitado, então recompilar não refaz a etapa lenta.

Limitações conhecidas

  • Ainda é beta, testado em um único PC com Windows. Linux não foi testado.
  • Os links Project page e Report a problem do launcher ainda são placeholders.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Se algo falhar, aperte Copy the log no launcher e cole numa issue.

v0.1.3 beta

v0.1.3 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 22 Oct 13:24
be2a800

English | Português abaixo

A fix release for #1. Everything from v0.1.1 still applies; start from its notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

Fixed

  • "Module use of python36.dll conflicts with this version of Python": after installing a new Python, a PYTHONPATH or PYTHONHOME setting left by an older one made the new Python load the old one's files, and the build stopped. The launcher now ignores those two settings when it builds.
  • Copy the log: a new button next to Show the log copies the whole log, ready to paste into an issue.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. Still a beta: if something fails, press Copy the log in the launcher and paste it into an issue.


Português

Uma versão de correção para a #1. Tudo da v0.1.1 continua valendo; se você é novo, comece pelas notas dela.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Corrigido

  • "Module use of python36.dll conflicts with this version of Python": depois de instalar um Python novo, uma configuração PYTHONPATH ou PYTHONHOME deixada por um antigo fazia o Python novo carregar os arquivos do antigo, e a compilação parava. O launcher agora ignora essas duas configurações ao compilar.
  • Copiar o log: um botão novo ao lado de Show the log copia o log inteiro, pronto para colar numa issue.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Ainda é beta: se algo falhar, aperte Copy the log no launcher e cole numa issue.

v0.1.2 beta

v0.1.2 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 22 Oct 03:03

English | Português abaixo

A fix release for the first issue (#1). Everything from v0.1.1 still applies; start from its notes if you're new.

The download here is the launcher, not the game. The game is built on your PC from your own dump; the launcher does that for you.

Fixed

  • The build needs Python 3.8 or newer, and nothing said so: on an older one, build.py stopped with an error that didn't explain it. Now it says which version you have and where to get a current one.
  • The launcher checks the Python version. It uses the newest Python it finds and marks an older one in red, with an Install button.
  • Update no longer shows for a project folder downloaded as a zip, where it couldn't work; download a newer release instead.

This project only exists thanks to fearkov's 3dsrecomp and Zakuro. Still a beta: if something fails, tick Show the log in the launcher and include it in an issue.


Português

Uma versão de correção para a primeira issue (#1). Tudo da v0.1.1 continua valendo; se você é novo, comece pelas notas dela.

O download aqui é o launcher, não o jogo. O jogo é compilado no seu PC a partir do seu próprio dump; o launcher faz isso por você.

Corrigido

  • A compilação precisa do Python 3.8 ou mais novo, e nada avisava: com um mais antigo, o build.py parava com um erro que não explicava isso. Agora ele diz qual versão você tem e onde pegar uma atual.
  • O launcher confere a versão do Python. Ele usa o Python mais novo que encontrar e marca um antigo em vermelho, com um botão de instalar.
  • O botão Update não aparece mais numa pasta do projeto baixada como zip, onde ele não funcionaria; baixe uma release mais nova em vez disso.

Este projeto só existe graças ao 3dsrecomp e ao Zakuro, do fearkov. Ainda é beta: se algo falhar, marque Show the log no launcher e inclua o log numa issue.

v0.1.1 beta

v0.1.1 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 20 Oct 04:42

English | Português abaixo

Second beta of smt4-recomp: Shin Megami Tensei IV (3DS, USA) as a native Windows program, made by static recompilation. This project only exists thanks to fearkov's 3dsrecomp (the recompiler) and Zakuro (the runtime).

The download here is the launcher, not the game. The game program holds the game's code, so it's built on your PC from your own dump. The launcher does that for you.

What's new

  • Launcher (smt4-launcher.exe, attached): choose the folder with your game and it finds the ROM, checks the tools (and installs missing ones with winget), downloads this project, builds the game with a progress bar and starts it with a Play button. It holds no game code.
  • Easy Recruit cheat: every demon negotiation goes your way. Answers work, refusing or not having what the demon asks for still works, and it doesn't run off or take your gift and leave. It still asks for things. Turn it on or off from the cheat menu.
  • Asset extractor (tools/extract): textures to PNG, models, text, audio and video from your own copy, for modding.
  • Image mods: texture pack support documented in MODDING.md, with scripts/fit_texture.py to fit a new picture where the original one sits.
  • More than 10 hours played from a new game with no crash.

Getting started

  1. Download smt4-launcher.exe below and run it.
  2. Choose the folder with your decrypted Shin Megami Tensei IV (USA) .3ds (title ID 00040000000E5C00).
  3. Install whatever the launcher marks as missing (Git, Rust, 64-bit GCC, Python 3), then press Check again.
  4. Press Download, then Build the game. The first build takes 20 to 35 minutes; the PC stays usable.
  5. Press Play.

Prefer the command line? build.py still works as in v0.1.0; see the README.

Known limitations

  • Still a beta. I'm playing it through to the end and testing every feature along the way, so expect rough edges.
  • Built and tested on one Windows PC only. Linux hasn't been tried.
  • The launcher is new: if a step fails, tick Show the log and include it in your report.
  • Turning off 60 FPS doesn't bring the normal speed back: turn on 30 FPS (Enhancements) (fearkov/zakuro#17).
  • Widescreen shows at the next area change, and 2D elements are slightly stretched with it.
  • Texture packs need Vulkan with Draw the 3D on the GPU; if Zakuro falls back to software drawing, they're left out.

Please report problems in Issues, with what you were doing, your PC and %APPDATA%\zakuro\zakuro.log.

Credits

fearkov for 3dsrecomp and Zakuro, which do the heavy lifting; lucky for the 60/30 FPS codes; JourneyOver and the original authors for the community cheats; vgmstream for audio and video decoding in the extractor. Shin Megami Tensei IV is by Atlus. Not affiliated with Atlus, SEGA or Nintendo.


Português

Segundo beta do smt4-recomp: Shin Megami Tensei IV (3DS, EUA) como um programa nativo para Windows, feito por recompilação estática. Este projeto só existe graças ao 3dsrecomp (o recompilador) e ao Zakuro (o runtime), do fearkov.

O download aqui é o launcher, não o jogo. O programa do jogo contém o código do jogo, então ele é compilado no seu PC a partir do seu próprio dump. O launcher faz isso por você.

Novidades

  • Launcher (smt4-launcher.exe, anexado): escolha a pasta com o seu jogo e ele acha a ROM, confere as ferramentas (e instala as que faltam pelo winget), baixa este projeto, compila o jogo com barra de progresso e abre o jogo com o botão Play. Não contém código do jogo.
  • Cheat Easy Recruit: toda negociação com demônios dá certo. As respostas funcionam, recusar ou não ter o que o demônio pede ainda funciona, e ele não foge nem pega o presente e vai embora. Ele ainda pede coisas. Liga e desliga pelo menu de cheats.
  • Extrator de assets (tools/extract): texturas em PNG, modelos, texto, áudio e vídeo da sua própria cópia, para mods.
  • Mods de imagem: suporte a texture packs documentado no MODDING.md, com o scripts/fit_texture.py para encaixar uma imagem nova onde ficava a original.
  • Mais de 10 horas jogadas de um jogo novo, sem travamentos.

Como começar

  1. Baixe o smt4-launcher.exe abaixo e abra.
  2. Escolha a pasta com o seu .3ds descriptografado de Shin Megami Tensei IV (EUA) (title ID 00040000000E5C00).
  3. Instale o que o launcher marcar como faltando (Git, Rust, GCC de 64 bits, Python 3) e clique em Check again.
  4. Clique em Download e depois em Build the game. A primeira compilação leva de 20 a 35 minutos; o PC continua usável.
  5. Clique em Play.

Prefere a linha de comando? O build.py continua funcionando como na v0.1.0; veja o README em português.

Limitações conhecidas

  • Ainda é beta. Estou jogando até o final e testando cada recurso pelo caminho, então espere arestas.
  • Compilado e testado em um único PC com Windows. Linux não foi testado.
  • O launcher é novo: se algum passo falhar, marque Show the log e inclua o log no relato.
  • Desligar o 60 FPS não volta a velocidade normal: ligue o 30 FPS (Enhancements) (fearkov/zakuro#17).
  • O widescreen aparece na próxima troca de área, e os elementos 2D ficam levemente esticados com ele.
  • Texture packs precisam de Vulkan com Draw the 3D on the GPU; se o Zakuro cair para o desenho por software, eles ficam de fora.

Relate problemas em Issues, com o que você estava fazendo, seu PC e o %APPDATA%\zakuro\zakuro.log.

Créditos

fearkov pelo 3dsrecomp e pelo Zakuro, que fazem o trabalho pesado; lucky pelos códigos de 60/30 FPS; JourneyOver e os autores originais pelos cheats da comunidade; vgmstream pela decodificação de áudio e vídeo no extrator. Shin Megami Tensei IV é da Atlus. Sem ligação com a Atlus, a SEGA ou a Nintendo.

v0.1.0 beta

v0.1.0 beta Pre-release
Pre-release

Choose a tag to compare

@Invictus-potens Invictus-potens released this 16 Oct 04:11

English | Português abaixo

First public beta of smt4-recomp: Shin Megami Tensei IV (3DS, USA) as a native Windows program, made by static recompilation with 3dsrecomp and Zakuro.

There is no download here, on purpose. The program holds the game's code, so you build it yourself from your own dump of the game. The build takes one command; see below.

What's in it

  • The game's ARM code recompiled to C and running natively, with Zakuro as the runtime.
  • Widescreen 16:9 and 21:9: a wider 3D scene, not a stretched picture (needs Zakuro's Top screen shape setting to match).
  • Multipliers x2, x3 and x5 for Macca, hero EXP, demon EXP and App Points, picked from the cheat menu while playing.
  • Community cheats (max Macca, App Points, items, hero stats), plus Zakuro's built-in 60 FPS and 30 FPS enhancements.
  • build.py: one command from your ROM to the program. It checks your tools and ROM, recompiles the game, builds the program and adds the cheats to Zakuro's cheats file without touching the ones already there.

Building

You need Windows 10/11 64-bit, Rust (GNU toolchain), 64-bit MinGW-w64 GCC, git, Python 3 and your own decrypted dump of Shin Megami Tensei IV (USA), title ID 00040000000E5C00.

git clone --branch v0.1.0 https://github.com/Invictus-potens/smt4-recomp
cd smt4-recomp
python build.py "C:\path\to\Shin Megami Tensei IV (USA).3ds"

The first build takes 20 minutes or more (--low-priority keeps the PC usable meanwhile). Full instructions, recommended settings and controls are in the README.

Known limitations

  • Beta: played from a new game through the opening hours with no crash. The rest of the game hasn't been played on it yet.
  • Built and tested on one Windows PC only. Linux should work but hasn't been tried.
  • On a new machine, a little more code runs in Zakuro's interpreter on the first build than on one where Zakuro has run the game before. It works; it's just slightly less optimized.
  • Turning off 60 FPS doesn't bring the normal speed back: turn on 30 FPS (Enhancements). Zakuro leaves a cheat's writes in place when it's turned off (fearkov/zakuro#17).
  • Widescreen shows at the next area change, and 2D elements (HUD, menus) are slightly stretched with it.

Please report problems in Issues, with what you were doing, your PC and %APPDATA%\zakuro\zakuro.log (zakuro.previous.log if you've opened it again since).

Credits

fearkov for 3dsrecomp and Zakuro; lucky for the 60/30 FPS codes; JourneyOver and the original authors for the community cheats. Shin Megami Tensei IV is by Atlus. Not affiliated with Atlus, SEGA or Nintendo.


Português

Primeiro beta público do smt4-recomp: Shin Megami Tensei IV (3DS, EUA) como um programa nativo para Windows, feito por recompilação estática com o 3dsrecomp e o Zakuro.

Não há download aqui, de propósito. O programa contém o código do jogo, então você compila a partir do seu próprio dump. A compilação é um comando só; veja abaixo.

O que tem

  • O código ARM do jogo recompilado para C e rodando nativamente, com o Zakuro como runtime.
  • Widescreen 16:9 e 21:9: uma cena 3D mais larga, não uma imagem esticada (precisa da opção Top screen shape do Zakuro no mesmo formato).
  • Multiplicadores x2, x3 e x5 de Macca, EXP do herói, EXP dos demônios e App Points, escolhidos no menu de cheats durante o jogo.
  • Cheats da comunidade (Macca no máximo, App Points, itens, atributos do herói), além dos enhancements de 60 FPS e 30 FPS embutidos no Zakuro.
  • build.py: um comando da ROM até o programa. Confere as ferramentas e a ROM, recompila o jogo, compila o programa e acrescenta os cheats ao arquivo de cheats do Zakuro sem mexer nos que já estão lá.

Compilando

Você precisa de Windows 10/11 64 bits, Rust (toolchain GNU), MinGW-w64 GCC de 64 bits, git, Python 3 e seu próprio dump descriptografado de Shin Megami Tensei IV (EUA), title ID 00040000000E5C00.

git clone --branch v0.1.0 https://github.com/Invictus-potens/smt4-recomp
cd smt4-recomp
python build.py "C:\caminho\para\Shin Megami Tensei IV (USA).3ds"

A primeira compilação leva 20 minutos ou mais (--low-priority deixa o PC usável enquanto isso). Instruções completas, configurações recomendadas e controles estão no README em português.

Limitações conhecidas

  • Beta: jogado de um jogo novo até as primeiras horas, sem travamentos. O resto do jogo ainda não foi jogado nele.
  • Compilado e testado em um único PC com Windows. No Linux deve funcionar, mas não foi testado.
  • Numa máquina nova, um pouco mais de código roda no interpretador do Zakuro no primeiro build do que numa em que o Zakuro já rodou o jogo. Funciona; só fica um pouco menos otimizado.
  • Desligar o 60 FPS não volta a velocidade normal: ligue o 30 FPS (Enhancements). O Zakuro deixa na memória o que um cheat escreveu quando ele é desligado (fearkov/zakuro#17).
  • O widescreen aparece na próxima troca de área, e os elementos 2D (HUD, menus) ficam levemente esticados com ele.

Relate problemas em Issues, com o que você estava fazendo, seu PC e o %APPDATA%\zakuro\zakuro.log (o zakuro.previous.log, se você abriu o jogo de novo depois).

Créditos

fearkov pelo 3dsrecomp e pelo Zakuro; lucky pelos códigos de 60/30 FPS; JourneyOver e os autores originais pelos cheats da comunidade. Shin Megami Tensei IV é da Atlus. Sem ligação com a Atlus, a SEGA ou a Nintendo.