Files
iss_pc/docs/QT_PACKAGING.md
4d92696a31 Docs: README, player guide and docs updated for the new launcher, saves, fixes and acknowledgements (#86)
* Docs: README for the next release (Qt launcher, saves, BP fixes, occlusion, logs, known problems)

Both halves (pt-BR and en): new What's new items, status table, requirements, launcher section, BP01-BP12 table, occlusion modes, keyboard map, controller guides, saves recipe, logs and reports, known problems by GPU, credits and acknowledgements.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: experimental fixes (occlusion mode, log lines, sources) and VENDOR credits for BP01-BP12

EXPERIMENTAL_FIXES.md mentions the Qt Fixes screen, the occlusion_mode switch, the Config/Backports log lines and the origin of each fix; VENDOR.txt lists the backport origins.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: player guide in the package is no longer 'does not boot yet'

README-player.md (pt-BR and en): playable status, Qt launcher screens and classic fallback, game language, saves and updating, lights, experimental fixes, updates screen, logs/report, known problems by GPU, repo link fixed.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: Qt launcher is the default (LAUNCHER_QT, QT_PACKAGING)

Drop the 'phase 1 / Tk is the default / coming soon' wording, list the eight screens, add the occlusion selector, mouse status and the VERSION file.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: roadmap updated (done and open items)

ROADMAP.md: what shipped (Qt launcher, saves, BP01-BP12, occlusion, mouse, guides, F16C) and what is open (real occlusion, on-disk pipeline cache, RX 580, 4 GB VRAM, auto updater, mouse and Windows validation).

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: required files (game versions, languages, PC requirements)

ARQUIVOS_NECESSARIOS.md: tested versions, Turkish/Russian caveat, PC requirements, launcher art note (pt-BR and en).

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: Windows packaging README is about inFAMOUS, not God of War III

Names, paths and commands now match this port (Qt and classic launchers, CUSA00223, --selftest); drops the unused TLG launcher texts; notes that the DLSS/FSR4 code is not used; adds a Windows status section.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Launcher script: comment says Qt is the default

Only the header comment of infamous_launcher_qt.sh changes.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Docs: README lights section without unverified scene details

Drops 'night scenes / car' wording that was not backed by the sources.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* CI release notes: drop "Windows not yet tested in game"

Players have been running the Windows package for days (logs, issues and the occlusion fix were
confirmed on Windows), so the line in every release body was wrong.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Fix: the classic (Tk) launcher did not open ('Launcher' has no attribute 'play_button')

show_game_language() runs while the window is still being built and called refresh_status(), which
uses the play button created at the end of build(). Behind it, the note text used str.format on
a string that self.t() had already formatted (KeyError: 'name'). Both fixed, and a test now builds
the real window when a display is available. Introduced by the game language "Automatic" option.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

* Fix: the Qt launcher did not detect Xbox/XInput controllers on Windows

detect_pad only read /proc/bus/input/devices (Linux). It now asks tlg-probe --gamepad
(SDL3, cross-platform) first and keeps /proc as the fallback; XInput, Microsoft, Switch
and DualShock names are recognised and the guide follows the detected pad.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BGrrT8Atu6mshYBUh1H1Mm

---------

Co-authored-by: HayatoG <[email protected]>
Co-authored-by: Claude Sonnet 5.5 <[email protected]>
2026-10-15 17:34:11 -03:00

3.5 KiB

Pacotes com o launcher Qt

A partir desta versão os pacotes (infamous-linux-x86_64.tar.gz, infamous-windows-x86_64.zip) abrem o launcher novo (Qt Quick) por padrão. O launcher antigo (Tk) continua no pacote como reserva.

Executável Launcher
inFAMOUS Second Son (.exe no Windows) Qt Quick, o padrão (atalho do menu, install_desktop.sh)
inFAMOUS Second Son (classic) Tk, a reserva: use se o novo não abrir na sua máquina

Os dois compartilham as bibliotecas (uma pasta só), as mesmas configurações, os mesmos saves e o mesmo caminho de início do jogo (infamous_run). --play, --script e --clear-shader-cache funcionam nos dois.

Como é gerado

  • port/packaging/launcher.spec (PyInstaller) congela os dois launchers; packaging/linux/package.sh e packaging/windows/package.sh só instalam as dependências no out/pyenv (PyInstaller, iced-x86 e PORT_QT_PACKAGE, hoje PySide6-Essentials==6.12.0) e chamam o spec. Variáveis em packaging/port.env: PORT_LAUNCHER (Qt), PORT_LAUNCHER_CLASSIC (Tk), PORT_QT_PACKAGE.
  • Dados do Qt (QML, fonts/, i18n/, e qualquer pasta nova de arquivos que não sejam código em launcher/qt/, como assets/) entram sozinhos em qt/... dentro do pacote; qt/app.py os acha por Path(__file__).parent, que no executável congelado aponta para esse mesmo lugar. O ícone da janela vai em infamous.png na raiz.
  • O pacote leva um arquivo VERSION (vAAAA.MM.DD-<commit>), escrito por package.sh quando GITHUB_SHA existe (o CI); é com ele que a tela Atualizações sabe a versão instalada.
  • Redução de tamanho: módulos PySide6 que o launcher não usa são excluídos (WebEngine, Multimedia, 3D, Quick3D, Pdf, Sql, Charts, Widgets, ...) e o spec descarta arquivos que o launcher nunca carrega: estilos do Qt Quick Controls que não são o Basic, traduções do Qt, plugins de depuração QML, plataformas para dispositivos embarcados, o tema GTK3 (e as dezenas de bibliotecas GTK que ele arrasta no Linux), Wayland compositor, QtTest. Permanecem as plataformas xcb/wayland/offscreen/minimal (Linux) e windows/offscreen/minimal (Windows) e os formatos de imagem PNG/JPEG/SVG/GIF/ICO.

Autoteste

"inFAMOUS Second Son" --selftest (Qt) sobe o QML na plataforma offscreen com o renderizador de software, confere QML, fontes, ícone e traduções (pt-BR e en-US completas), visita todas as telas, renderiza um quadro e imprime selftest ok (código 0). Se faltar algo, imprime selftest FAILED: ... e sai com código diferente de 0. Não lê as configurações nem os saves do jogador (usa uma pasta temporária), não inicia o jogo. Como o .exe do Windows é "windowed" (sem console), o resultado também é gravado no arquivo indicado por ISS_SELFTEST_OUT.

O CI roda esse teste logo depois do passo Package nos jobs linux e windows (passo "Smoke test"); um launcher que não abre derruba o job antes da release.

Tamanho (medido no Linux, Python 3.14, PySide6-Essentials 6.12.0)

pasta do launcher tar.gz da pasta
só o Tk (antes) 38 MB 17 MB
Qt + Tk, sem enxugar 251 MB n/d
Qt + Tk, como entra no pacote 186 MB 75 MB

O libicudata (31 MB) e as bibliotecas Qt Core/Gui/Quick/Qml/Widgets (~45 MB) são o piso. O pacote final soma a isso o jogo nativo (out/), então espere cerca de 55 MB a mais no download por causa do Qt. Windows (estimado, não medido): pasta do launcher ~140-170 MB, zip ~55-70 MB a mais que o launcher Tk.