FAF | FAF Develop | FAF Beta balance |
---|---|---|
Read this in other languages: English, Russian
Forged Alliance Forever is a community-driven project designed to facilitate online play for Supreme Commander: Forged Alliance. We are a thriving community with a self-made client, backend and website. We have an extensive library of community made maps, mods and co-op scenarios. We introduced a rating system based on TrueSkill to provide a competitive environment with automated matchmaking. To see all that we have added it is best to experience it yourself by playing the game through the client.
You can download the client on our website. In order to play you will need to sync your account with Steam to prove you own a copy of Supreme Commander: Forged Aliance. You can get in touch with the community through the forums and the official Discord server. The developers chat can be found on Zulip - you can ask for access from the admin of this repository. The project is kept alive by donations to our Patreon.
This repository contains the changes to the Lua side of the game, such as balance changes, performance improvements, and additional features. The repository mimics the organization of the base game. A quick reference guide:
Folder | Description |
---|---|
effects |
Blueprints, textures and meshes of effects and HLSL shaders that are used to render the game |
engine* |
Engine documentation: all objects and their functions are documented |
env |
Props, decals, splats, stratum layer and environmental effects |
etc* |
Legacy - a rudimentary implementation of versioning control |
loc |
Localization files for the game, see the translation guidelines |
lua |
Lua files that control all the behavior outside of the physics simulation |
meshes |
Meshes that do not belong to props, units or projectiles. E.g. the world border |
projectiles |
Blueprint files, textures and meshes of projectiles |
props |
Blueprint files, textures and meshes of props |
schook |
Legacy - the supreme commander hook folder that was used due to licensing issues |
testmaps* |
Test maps. E.g. the benchmark map shipped with the game |
tests* |
Unit tests that run on engine-oblivion functions. E.g. Testing string operations |
textures |
Textures used by the engine (as fallback) and UI |
units |
Blueprint files, textures and meshes of units |
Files that are unchanged are retrieved from the base game. Folders with an asterisk (*) are not shipped to the user with the client. See the installation instructions in the contribution section for more information.
Repositories that are directly related to the game:
- A Lua profiler
- A Lua benchmark tool
- The executable patcher
- The executable patches
- A debugger to help with exceptions
Here is the complete changelog. There is an alternative changelog for balance patches in a user-friendly format.
There are instructions in English and in Russian to help you set up a development environment. It is important that you discuss your contributions beforehand. You can do this by making a comment on an existing issue or, if it doesn't exist yet, by opening a new issue. Not all pull requests are merged by default. It is important that the changes align with the vision of the project.
In general, before contributing, please read the contribution guidelines and the translation guidelines