God of War Launcher v0.3.2
100+ FPS in combat. At the 120 FPS limit, ship combat on the test PC now averages 105 FPS with Early FINISH, now
on by default, and 113 FPS once the freeze on every hit is gone, with the game running at its normal speed. 120 FPS
is no longer experimental. This release also adds image adjustment (brightness, contrast, gamma and saturation), an
overlay with GPU, CPU and RAM, and gamepad vibration on Linux.
Updating from 0.3.1? The game's runtime changes, so the launcher asks you to rebuild once. Your saves are kept.
Details in Updating.
English
100+ FPS
-
How to get it. Open Performance → FPS limit and choose 120 FPS. Early FINISH is on by default, VSync stays
off, and the window follows your monitor's refresh rate, so a 120 or 144 Hz display is what lets you see it. Your
CPU decides how many frames you get; the graphics card matters much less. -
Early FINISH, on by default. The graphics worker tells the game a frame is done as soon as its commands are handed
over, instead of waiting for them to be drawn, so the game starts the next frame sooner. The loader hang that kept it
opt-in in 0.3.0 did not come back in about 40 level loads nor in the measurement sessions. If you see a hang while
loading, turn it off in Performance → Early FINISH and tell us the scene. -
No more freeze on every hit. The game asks for vibration on every hit given or taken. On Windows that call
searched for gamepads on the game's own thread: about 100 ms each time, and the picture froze. Vibration now runs on a
thread of its own. In the same combat, frames slower than 50 ms went from about 27 per 150 s to 0. The timing was
measured without a gamepad; vibration with a gamepad connected was checked afterwards on Windows and works. -
Measured on the test PC (Core i5-12400F, Radeon RX 6600, ship combat, 2× internal resolution, 120 FPS limit, VSync
off, 150 s per run):Early FINISH, before the freeze fix (3 alternating pairs) Off On Frames per second (average) 90.2 105.5 Worst 5-second window 74.9 89.5 95th percentile frame time 13.5 ms 11.3 ms Frames slower than 16.7 ms 59 43 Early FINISH, with the freeze fix (1 pair) Off On Frames per second (average) 99.5 113.3 Worst 5-second window 77.0 103.8 95th percentile frame time 12.2 ms 10.5 ms Frames slower than 50 ms 0 0 At the 60 FPS limit, also with the game held to 4 CPU cores to stand in for a weaker PC, both stay at 60. The 120 limit
was not measured on 4 cores, so a weaker CPU may not reach 100. -
120 FPS is no longer experimental. 240 still is.
Picture and overlay
- Image adjustment: brightness, contrast, gamma and saturation, like PCSX2's Shade Boost. God of War is a dark
game, and many PC monitors crush its shadows. Find it in Graphics → Image adjustment: four sliders, 50 changes
nothing, plus a Reset button. It is applied in the shader that already draws the final picture, so it costs
practically nothing. - Overlay with FPS, GPU, CPU and RAM, each one with its own switch in Performance. The system values are only
sampled while one of them is shown. If you had the FPS counter on, all four are turned on once. - Render resolution up to 8×. 7× and 8× need a powerful graphics card, like 4× to 6×.
- VSync is not recommended. It stays off by default. Turning it on now shows a warning: a frame that misses the
monitor's refresh waits for the next one, which shows as stutter and input lag. Use it only if tearing bothers you
and your monitor has no FreeSync or G-Sync.
Linux (experimental)
Thanks to @wardhanisukoco, who sent both changes below: the first contributions from outside this project, merged
with their commits so the authorship is kept.
- Gamepad vibration on Linux, through the kernel's force feedback (
evdev), with no extra library. The code covers
pads whose driver offers it: Xbox, DualShock 4 / DualSense, Nintendo, 8BitDo and the Steam virtual pad. Like on
Windows, it runs on a thread of its own. install.sh:- optional clang (
--compiler clang, orGOW_COMPILER=clang); g++ stays the default; - no more silent exit on a fresh install;
- the VU1 generator is limited to 4 GB of RAM by default (
--vu1-memory-limit-gb N, 0 for no limit), so it no longer
runs out of memory on 8 to 16 GB PCs; run_gow.shfinds the game whereinstall.shbuilt it.
- optional clang (
- The compiler only counts as changed when you move between g++ and clang, so an existing install is not rebuilt in
full. - The contributor built and ran the game on CachyOS (x86_64, 16 GB). Linux remains experimental, and none of this was
tested here.
Updating
After the launcher updates, a notice says the build is from an older version: press Delete and rebuild (in the
notice or in Performance), or Not now to keep playing the old build for the moment. Your saves
(game/Mcd001.ps2) are not touched. Then choose the 120 FPS limit if you want it.
| You are on | What to do |
|---|---|
| 0.3.0 or 0.3.1 | The launcher updates itself (Windows setup and AppImage) and asks for the rebuild: press Delete and rebuild. |
| 0.2.5 to 0.2.9 | The launcher updates itself and asks for the rebuild: press Delete and rebuild. This also moves you from Visual Studio to the clang build, and then Optimize now adds the speed profile. |
| 0.2.4 or older | Install the setup or unzip the portable ZIP over the old one, then press Delete and rebuild (your saves stay). |
| A new install | Install and play. Visual Studio is not needed. |
Downloads: Windows installer or portable ZIP; Linux .deb or AppImage (experimental). Files ending in .sig and
latest.json are for the self-update; you do not need them.
No game files are included. You need your own original USA God of War disc image (SCUS-97399), a CHD of it, or a
translation of it.
Known issues
- The numbers come from one PC. At 120 the CPU decides how many frames you get, so yours will differ. 100 FPS is
what a 6-core Core i5-12400F reached in ship combat, not a promise for every PC. - Linux vibration was not tested here. The Windows one was checked with a gamepad connected.
- 240 FPS is experimental. Actions timed in frames (quick-time events, combo windows, some jumps) were not all
checked above 60. - Some players hear crackling audio in every session, at any FPS limit. It is still being investigated.
- 32:9 and 21:9 are experimental. Linux remains experimental.
Contributors
- @danielalves96: the 100+ FPS work (Early FINISH on by default, the vibration freeze fix, 120 FPS no longer
experimental), image adjustment, the split overlay, render resolution up to 8×, the VSync warning, and this release. - @wardhanisukoco: Linux gamepad vibration (#27) and the
optional clang with theinstall.shandrun_gow.shfixes
(#26).
Full changelog: v0.3.1...v0.3.2.
Checksums are in SHA256SUMS-*.txt.
Português (Brasil)
100+ FPS no combate. No limite de 120 FPS, o combate do navio no PC de teste agora fica em média em 105 FPS com
o Early FINISH, agora ligado por padrão, e em 113 FPS depois que a travadinha a cada golpe foi corrigida, com o
jogo na velocidade normal. O 120 FPS deixa de ser experimental. A release também traz ajuste de imagem (brilho,
contraste, gama e saturação), informações na tela com GPU, CPU e RAM, e vibração do controle no Linux.
Vindo da 0.3.1? O runtime do jogo muda, então o launcher pede uma recompilação, uma vez. Seus saves são mantidos.
Detalhes em Como atualizar.
100+ FPS
-
Como conseguir. Abra Desempenho → Limite de FPS e escolha 120 FPS. O Early FINISH vem ligado, o VSync
continua desligado, e a janela acompanha a taxa de atualização do seu monitor, então um monitor de 120 ou 144 Hz é o
que deixa você ver isso. O seu processador decide quantos quadros você tem; a placa de vídeo pesa bem menos. -
Early FINISH, ligado por padrão. O processamento gráfico avisa o jogo que o quadro terminou assim que recebe os
comandos, sem esperar o desenho, e o jogo começa o próximo quadro mais cedo. O travamento no carregamento que o deixou
opcional na 0.3.0 não voltou em uns 40 carregamentos de fase nem nas sessões de medição. Se travar ao carregar,
desligue em Desempenho → Early FINISH e conte qual foi a cena. -
Acabou a travadinha a cada golpe. O jogo pede vibração a cada golpe dado ou recebido. No Windows, esse pedido
procurava controles na própria thread do jogo: uns 100 ms a cada vez, e a imagem congelava. A vibração agora roda numa
thread própria. No mesmo combate, os quadros acima de 50 ms caíram de uns 27 a cada 150 s para 0. O tempo foi medido
sem controle; a vibração com um controle conectado foi conferida depois no Windows e funciona. -
Medido no PC de teste (Core i5-12400F, Radeon RX 6600, combate do navio, resolução interna 2×, limite de 120 FPS,
VSync desligado, 150 s por execução):Early FINISH, antes da correção da travadinha (3 pares alternados) Desligado Ligado Quadros por segundo (média) 90,2 105,5 Pior janela de 5 segundos 74,9 89,5 Tempo de quadro no percentil 95 13,5 ms 11,3 ms Quadros acima de 16,7 ms 59 43 Early FINISH, com a correção da travadinha (1 par) Desligado Ligado Quadros por segundo (média) 99,5 113,3 Pior janela de 5 segundos 77,0 103,8 Tempo de quadro no percentil 95 12,2 ms 10,5 ms Quadros acima de 50 ms 0 0 No limite de 60 FPS, também com o jogo preso a 4 núcleos para simular um PC mais fraco, os dois ficam em 60. O limite
de 120 não foi medido com 4 núcleos, então um processador mais fraco pode não chegar a 100. -
120 FPS deixa de ser experimental. O 240 continua.
Imagem e informações na tela
- Ajuste de imagem: brilho, contraste, gama e saturação, como o Shade Boost do PCSX2. God of War é um jogo escuro,
e muitos monitores de PC esmagam as sombras. Fica em Gráficos → Ajuste de imagem: quatro controles, 50 não muda
nada, e um botão Restaurar. É aplicado no shader que já desenha a imagem final, então praticamente não custa nada. - Informações na tela com FPS, GPU, CPU e RAM, cada uma com sua chave em Desempenho. Os valores do sistema só são
lidos enquanto algum deles aparece. Quem estava com o contador de FPS ligado fica com os quatro ligados, uma vez. - Resolução de render até 8×. O 7× e o 8× pedem uma placa de vídeo potente, como o 4× a 6×.
- VSync não é recomendado. Continua desligado por padrão. Ao ligar, agora aparece um aviso: um quadro que perde a
atualização do monitor espera a próxima, e isso aparece como travadinha e atraso nos comandos. Use só se o corte na
imagem incomodar e o seu monitor não tiver FreeSync ou G-Sync.
Linux (experimental)
Obrigado a @wardhanisukoco, que enviou as duas mudanças abaixo: as primeiras contribuições de fora do projeto,
mescladas com os commits dele, então a autoria fica mantida.
- Vibração do controle no Linux, pelo force feedback do kernel (
evdev), sem biblioteca extra. O código cobre os
controles cujo driver oferece isso: Xbox, DualShock 4 / DualSense, Nintendo, 8BitDo e o controle virtual do Steam. Como
no Windows, roda numa thread própria. install.sh:- clang opcional (
--compiler clang, ouGOW_COMPILER=clang); o g++ continua o padrão; - não sai mais em silêncio numa instalação nova;
- o gerador da VU1 fica limitado a 4 GB de RAM por padrão (
--vu1-memory-limit-gb N, 0 para sem limite), então não
estoura mais a memória em PCs de 8 a 16 GB; - o
run_gow.shacha o jogo onde oinstall.sho compilou.
- clang opcional (
- O compilador só conta como trocado quando você passa entre g++ e clang, então uma instalação existente não é
recompilada inteira. - O colaborador compilou e rodou o jogo no CachyOS (x86_64, 16 GB). O Linux continua experimental, e nada disso foi
testado aqui.
Como atualizar
Depois que o launcher atualizar, um aviso diz que a compilação é de uma versão anterior: aperte Apagar e recompilar
(no aviso ou em Desempenho), ou Agora não para seguir com a compilação antiga por enquanto. Seus saves
(game/Mcd001.ps2) não são tocados. Depois escolha o limite de 120 FPS, se quiser.
| Você está na | O que fazer |
|---|---|
| 0.3.0 ou 0.3.1 | O launcher se atualiza sozinho (setup do Windows e AppImage) e pede a recompilação: aperte Apagar e recompilar. |
| 0.2.5 a 0.2.9 | O launcher se atualiza sozinho e pede a recompilação: aperte Apagar e recompilar. Isso também tira você do Visual Studio e leva para a compilação com clang; depois, Otimizar agora acrescenta o perfil de velocidade. |
| 0.2.4 ou anterior | Instale o setup ou descompacte o ZIP portátil por cima do antigo e aperte Apagar e recompilar (seus saves ficam). |
| Instalação nova | Instale e jogue. O Visual Studio não é necessário. |
Downloads: instalador ou ZIP portátil para Windows; .deb ou AppImage para Linux (experimental). Os arquivos .sig
e o latest.json são da atualização automática; você não precisa deles.
Nenhum arquivo do jogo está incluído. Você precisa da sua própria imagem do disco original americano de God of War
(SCUS-97399), de um CHD dele ou de uma tradução dele.
Problemas conhecidos
- Os números vêm de um PC só. A 120 é o processador que decide quantos quadros você tem, então o seu vai diferir.
100 FPS é o que um Core i5-12400F de 6 núcleos alcançou no combate do navio, não uma promessa para todo PC. - A vibração no Linux não foi testada aqui. A do Windows foi conferida com um controle conectado.
- 240 FPS é experimental. Ações contadas em quadros (QTEs, janelas de combo, alguns pulos) não foram todas conferidas
acima de 60. - Alguns jogadores ouvem estalos no áudio em todas as sessões, em qualquer limite de FPS. Isso continua em investigação.
- 32:9 e 21:9 são experimentais. O Linux continua experimental.
Contribuidores
- @danielalves96: o trabalho de 100+ FPS (Early FINISH ligado por padrão, a correção da travadinha da vibração, 120
FPS deixando de ser experimental), o ajuste de imagem, as informações na tela separadas, a resolução de render até 8×,
o aviso do VSync e esta release. - @wardhanisukoco: a vibração do controle no Linux (#27) e o
clang opcional com as correções doinstall.she dorun_gow.sh
(#26).
Histórico completo: v0.3.1...v0.3.2.
Os checksums estão em SHA256SUMS-*.txt.