Skip to content
lowlevelmetalPublic

About

Battlefront classic collection multiplayer conquest mod

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

conquest

Galactic Conquest multiplayer mod for STAR WARS Battlefront II in the Battlefront Classic Collection (Steam app 2446550).

Install

Download the latest release. On Windows, run OnlineGalacticConquest-Setup-<version>.exe; it finds the game through Steam and installs, updates or removes the mod. On Linux, unzip the release and run ./install.sh /path/to/steamapps/common/Battle. dist/README.txt is the player guide (hosting, ports, play).

Building

make -C native cross-compiles the loader (dle_crashpad.dll) and the Windows setup program with mingw-w64. tools/package.sh writes the release files to native/build/release/. The version number lives in native/version.h, and tools/make_icon.sh redraws the setup icon (needs ImageMagick).

make -C native test checks the network code under Wine. native/test/ also holds checks that run against the game: reload_test.c (back to game select), crash_test.c (the crash log) and lobby_peer.py (strangers and old versions at a host's lobby). Two local copies of the game play each other with tools/run_pair.sh and the cgc_play autotest (mod/lua/tests/cgc_play.lua lists its options).

Tooling

The Classic Collection's shell (data2/_lvl_common/shell.lvl) holds the Galactic Conquest UI as Lua 5.0 bytecode inside ucfb containers. The game's Lua build differs from stock Lua 5.0 in three ways: 32-bit size_t, float numbers, and MAXSTACK = 128, so RK constant operands start at 128 rather than 250. Bytecode from a stock compiler reads the wrong constants in-game.

Tool Purpose
tools/build_luac.sh Fetches Lua 5.0.3 and builds a luac that emits game-compatible bytecode (verified byte-identical code against 40 unchanged stock scripts).
tools/ucfb.py Lists and extracts scr_ chunks from .lvl / .script files.
tools/lua50chunk.py Parses Lua 5.0 binary chunks.
tools/decompile.py Rewrites RK operands to stock encoding and decompiles with unluac (place unluac.jar in tools/).

Extracted game scripts and third-party reference sources are gitignored and must not be committed.

About

Battlefront classic collection multiplayer conquest mod

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages