build.yml is on main, so its Run workflow button already exists; on another
branch GitHub runs that branch's build.yml, whose new beta input calls
beta.yml (now also a reusable workflow). The stable jobs are unchanged.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- gpu_v2 builds on Windows (MSYS2 CLANG64): a static issgpu linked into
out/tlg-probe-v2.exe with this port's runtime, as port/gpu does for
tlg-probe.exe; the Win32 compat headers are Linux only
(compat/linux/), compat/mingw.h covers MSVC intrinsics MinGW lacks
- build.sh: TLG_RENDERER_V2=1 also on Windows
- CI: both jobs build renderer v2 (Linux installs clang, libssl-dev)
- packages: tlg-probe-v2(.exe), out/gpu_v2/libissgpu.so with its
libraries (Linux), gpu_v2/defaults.env for the launcher
Not tested on a Windows machine.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Reproduce SIGSEGV with REP string operations, then verify SSE4A native/model and 78,868,960 F16C comparisons after clearing DF. Show periodic build progress in Actions.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd
Resolve GPU conflicts while preserving performance diagnostics, RX 580 controls, support links and manual-only release policy. Keep batch GC eviction single-pass with its original diagnostic reasons. Local validation and gameplay testing follow this integration.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd
Keep PR and main builds, require a manual main dispatch with publish_release enabled, and preserve CI history through artifact retention. Document publication in Portuguese and English.
Validation: YAML parsing, 18 event/ref/input combinations and Bash syntax passed. Linux/Windows Actions and current remote main validation remain pending because GitHub connectivity is unavailable.
Co-Authored-By: Codex <[email protected]>
Claude-Session: not-applicable (Codex)
C tests through build.sh --test-only, Python tests with the pinned PySide6 and iced-x86 in
out/pyenv (reused by package.sh), and every GPU *-test target from a fresh directory. A failing
suite fails the Linux job; the Windows job is unchanged.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
The packages were built with TLG_LTO=OFF since the first packaging commit, with no reason
recorded; the local build defaults to ON. bbport measured ~5% CPU from LTO. This PR checks that
both CI builds link with it and how long they take before the default changes.
Claude-Session: https://claude.ai/code/session_01Usr5H3NSPjFmG1SRvJmJUA
Co-authored-by: HayatoG <[email protected]>
Co-authored-by: Claude Fable 5.1 <[email protected]>
* 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]>
inFAMOUS asks to press both ends of the touchpad to lift the car off Reggie.
Pads without a touchpad now send two fingers at the left and right ends, then
the click CLICK_LEAD_US later, while View/Select + R1 is held (R1 hidden from the
game), or both click sources (keyboard Tab + Backspace, scripted touchpad_left +
touchpad_right). Pad tests cover both; docs and the launcher hint in pt-BR/en-US.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01KHxhRF717FsAPVntc7R6zU
The Discord post now carries the release's own notes (tables turned into
bullets, split into several posts to fit Discord's 4096-character embed
limit) instead of only the last commit message.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V3kivziPV4FYKrhhcPXnWU
Each release lists the PRs merged since the previous one, using the
notes:pt-BR / notes:en-US blocks of each PR body (title as fallback), and
credits whoever opened the issues they fix. A PR template carries the blocks.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01KHxhRF717FsAPVntc7R6zU
Each push to main publishes vYYYY.MM.DD-<commit> as the latest release, and
older releases stay as version history. The rolling nightly release is
removed; the README links to releases/latest.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01KHxhRF717FsAPVntc7R6zU
Turning the controller sideways with a square tap felt odd: on the console the
can is held on its side through the whole graffiti, and that is the only scene
that asks for motion. Sensor mode now holds it on its side by itself, so the
player only shakes (cross), sprays (R2) and aims (left stick, or the right);
square goes back to the game. Aiming grows with the square of the push past
the dead zone, up to ~70 degrees/s, so small pushes trace the stencil. On the
keyboard the arrow keys aim while T or G hold the can sideways (and leave the
camera alone meanwhile). Notice, launcher hint, READMEs and release notes.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01KHxhRF717FsAPVntc7R6zU
Bilingual section with the sensor-mode toggle (L3+R3, or misc1: Share on
Xbox Series, Capture on Switch Pro, mic on DualSense), the touchpad click
and swipe on View/Select and Tab/Backspace, the keyboard T/G/Y keys and a
table mapping the game's graffiti, drain and swipe actions to each input.
Share/Create on DualShock 4/DualSense is the touchpad click, not the
sensor toggle, so the old "tap Share" wording is corrected.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd
Same workflow as tlg_pc/gr2_pc with the artifacts renamed to
infamous-linux-x86_64.tar.gz / infamous-windows-x86_64.zip. It only runs once
the GitHub repository exists.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd
- packaging/port.env: per-port profile (name, package slug, launcher, icon)
read by the Linux and Windows package scripts; same keys for every port
- package names gr2-linux-x86_64.tar.gz / gr2-windows-x86_64.zip, frozen
launcher 'Gravity Rush 2', the GR2 player README (pt + en, required files),
install_desktop.sh from the profile
- Play <Game>.exe derives the game executable from its own name
- original placeholder icon (packaging/icon/gr2-icon-1024.png, launcher
gr2.png/.ico); TLG's icon and launcher left this repo
- sceFiber on Windows with Win32 fibers (CreateFiber/SwitchToFiber)
- CI: the current TLG workflow (PR builds without publishing, safe nightly
swap, old-build cleanup, required files in the release notes), FreeType on
Ubuntu and MSYS2, xbyak submodule fallback
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd
- runtime_tlg.c: portable local time (localtime_s + _mkgmtime on Windows) instead
of a localtime_r shim that clashed with MinGW's macro
- Linux CI: robin-map and VMA built from source (not packaged in Ubuntu 24.04)
- Port icon: original artwork (packaging/icon/tlg-icon-1024.png) for the window,
the menu entry and the Windows executables
- Paths: docs and helper scripts no longer assume ~/decomp (repo now lives in
~/decomp/tlg_pc)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd
- .github/workflows/build.yml: Ubuntu 24.04 and MSYS2 CLANG64 builds, the nightly
pre-release replaced on every push to main, versioned releases on v* tags
- packaging/linux: dependency build (SDL3, Zydis 5, fmt 11, minimal FFmpeg),
tarball with the frozen launcher and the bundled libraries
- packaging/windows/package.sh adapted to TLG; play.c renamed
- packaging/README-player.md (pt_BR/en_US), check_package.sh
- launcher: frozen mode (--script, --play), port icon (a feather, drawn by
make_icon.py) when the dump has no icon0.png
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01JyWhQUvUQf2YSf8HJWnAtd