Skip to content

An unofficial PC port of the Xbox 360 version of Grand Theft Auto IV created through the process of static recompilation

License

Notifications You must be signed in to change notification settings

OZORDI/LibertyRecomp

 
 

Repository files navigation

Liberty Recompiled

GTA IV Xbox 360 Static Recompilation Project


Caution

This recompilation is in early development and is NOT meant for public use. This is a work-in-progress fork based on the MarathonRecomp framework.

Liberty Recompiled is an unofficial PC port of the Xbox 360 version of Grand Theft Auto IV created through the process of static recompilation. The port aims to offer Windows, Linux, and macOS support.

This project does not include any game assets. You must provide the files from your own legally acquired copy of the game to install or build Liberty Recompiled.

XenonRecomp and XenosRecomp are the main recompilers used for converting the game's original PowerPC code and Xenos shaders into compatible C++ and HLSL code respectively. The development of these recompilers was directly inspired by N64: Recompiled, which was used to create Zelda 64: Recompiled.

Table of Contents

Project Status

This project is in early development. Current progress:

Completed

  • XenonRecomp integration for PowerPC → C++ translation
  • XenosRecomp integration for Xenos → HLSL shader conversion
  • Cross-platform build system (Windows, Linux, macOS)
  • Installer wizard with ISO/folder/XContent support
  • Shader extraction pipeline (RAGE FXC → Xbox 360 → platform-native)
  • Platform-specific install directory support

In Progress

  • RAGE engine structure reverse engineering
  • GPU/rendering pipeline implementation
  • Game-specific patches and fixes

Completed (Previously TODO)

  • Audio system implementation (XMA decoder, SDL2 driver)
  • Save data handling (full save system with GTA IV format support)
  • Input remapping for GTA IV controls (SDL HID driver, GTA4 input patches)
  • Network/multiplayer stubs (NetDll_XNetStartup, XLive stubs)
  • Online multiplayer via GameNetworkingSockets (P2P with NAT traversal, no VPN required)
  • File system and RPF archive handling (VFS)

Installation

Platform Install Directories

Platform Install Directory
Windows %LOCALAPPDATA%\LibertyRecomp\
Linux ~/.local/share/LibertyRecomp/
macOS ~/Library/Application Support/LibertyRecomp/

Game Files Required

You need a legal copy of GTA IV for Xbox 360. Supported formats:

  • Xbox 360 disc images (.iso)
  • Extracted game folders
  • XContent packages

See Dumping Guide for detailed extraction instructions.

Launch Arguments

Argument Description
--install Force reinstallation (useful if game files were modified)
--install-dlc Force DLC installation only
--install-check Verify file integrity

Building

Check out the building instructions here.

Quick Start

# Clone with submodules
git clone --recurse-submodules https://github.com/OZORDI/LibertyRecomp.git
cd LibertyRecomp

# Add game files to LibertyRecompLib/private/
# - default.xex
# - xbox360.rpf

# Configure and build (macOS example)
cmake . --preset macos-release
cmake --build ./out/build/macos-release --target LibertyRecomp

Documentation

Document Description
Building Guide Build instructions for all platforms
Dumping Guide How to extract game files from Xbox 360
Shader Pipeline RAGE FXC → platform shader conversion
Installation Architecture Platform paths and install flow
Online Multiplayer Guide Setup guide for online play

Performance Comparison

Performance comparison of GTA IV running on macOS using different methods:

Method Screenshot
Crossover (Wine) Crossover Performance
Xenia (Xbox 360 Emulator) Xenia Performance
RPCS3 (PS3 Emulator) RPCS3 Performance

About

An unofficial PC port of the Xbox 360 version of Grand Theft Auto IV created through the process of static recompilation

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 77.7%
  • Makefile 11.0%
  • TypeScript 4.3%
  • CMake 2.4%
  • C 1.2%
  • JavaScript 1.1%
  • Other 2.3%