OpenLF2
An open source clone of Little Fighter 2 built by decompiling the original game one bit at a time.
1. 1 Introduction
LF2 was written by Visual C++, and compiled to assembly code.
We want to decompile assembly into C which allowed for the addition of thousands of features to the game.
1.2 Decompiling the game
We use patched lf2.exe to load openlf2.dll. When openlf2.dll is loaded, the patched lf2.exe will call certain procedure in openlf2.dll. This procedure changes origin function call in lf2.exe.
When patched lf2.exe runs, it will jump new procedure in openlf2.dll instead of original one in patched lf2.exe.
1.3 Progress
All decompiled functions are here: [documented] Functions decompiled.
Once any function are decompiled and documented in that project, we will implement it in this project.
Eg. func_403270_teleport
2.1 Getted starting
Project home page
Linux:
Please copy openlf2.dll and openlf2.exe to directory contains normal lf2.exe, and run openlf2.exe.
An open source clone of Little Fighter 2 built by decompiling the original game one bit at a time.
1. 1 Introduction
LF2 was written by Visual C++, and compiled to assembly code.
We want to decompile assembly into C which allowed for the addition of thousands of features to the game.
1.2 Decompiling the game
We use patched lf2.exe to load openlf2.dll. When openlf2.dll is loaded, the patched lf2.exe will call certain procedure in openlf2.dll. This procedure changes origin function call in lf2.exe.
When patched lf2.exe runs, it will jump new procedure in openlf2.dll instead of original one in patched lf2.exe.
1.3 Progress
All decompiled functions are here: [documented] Functions decompiled.
Once any function are decompiled and documented in that project, we will implement it in this project.
Eg. func_403270_teleport
2.1 Getted starting
Project home page
Linux:
Code:
$ sudo apt-get install cmake gcc-mingw-w64-i686 binutils-mingw-w64-i686
$ cmake .
$ make
Please copy openlf2.dll and openlf2.exe to directory contains normal lf2.exe, and run openlf2.exe.
Decompiled functions: [documented] Functions decompiled
Decompile lf2.exe project for documentation: https://github.com/xsoameix/lf2
Decompile lf2.exe project for implementation: https://github.com/xsoameix/openlf2
Once any function fully engineer reversed in documentation project, then we implement it in implementation project.
lf2 data structure: Updated spreadsheet, many changes made by o_g349/xsoameix, I have two different nick names.
A old project: lf2-MS
Decompile lf2.exe project for documentation: https://github.com/xsoameix/lf2
Decompile lf2.exe project for implementation: https://github.com/xsoameix/openlf2
Once any function fully engineer reversed in documentation project, then we implement it in implementation project.
lf2 data structure: Updated spreadsheet, many changes made by o_g349/xsoameix, I have two different nick names.
A old project: lf2-MS