Code Monkey home page Code Monkey logo

fa's Introduction

About Forged Alliance Forever

Impression of the game

Forged Alliance Forever is a vibrant, community-driven project designed to enhance the gameplay of Supreme Commander: Forged Alliance. Our active community has developed a custom client, backend and website. We provide a rich gaming experience with an extensive library of community-made maps, mods and co-op scenarios. The project can be financially supported through Patreon.

Getting started playing

  • Register through our website and verify through either Steam or GOG your ownership of a copy of Supreme Commander: Forged Alliance.
  • Download the client from our website.
  • Log in using the account you registered and host a game with AIs and/or players, queue up for matchmaker or upload your own content to our vaults for other players to enjoy.
  • Engage with the community through the forums using the account you registered or join us on the official Discord server.

Changelog

The changelog is split across multiple files. Each file represents a release. You can find them in the changelog folder. Some changes are also described in an alternative format that makes them easier to read for the community.

Contributing

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.

There's an extensive guide to help you setup a debug environment. Everyone that contributes must adhere to the rules and apply the contribution guidelines as they discuss issues with other community members.

Deployment

There are three branches branches that deployable and are available for players to play on. The deployment procedure is automated. Pushing commits to one of these branches is sufficient to trigger the deployment.

  • (1) deploy/faf is the production branch that maps to the FAF gametype.
  • (2) deploy/fafdevelop is a development branch that maps to the FAF Develop gametype.
  • (3) deploy/fafbeta is a development branch that maps to the FAF Beta Balance gametype.

Deployment of a development branch

There are no requirements to a deployment to a development branch. A push of a commit is sufficient to trigger a deployment. The development branches are unaware of history. For example, A replay will always start using the last deployment. All replays that used a previous deployment when the game was played is guaranteed to desync.

Deployment of the production branch

There are various requirements when deploying to production:

  • (1) Update the game version in mod_info.lua and version.lua.
  • (2) Update the game executable. This needs to be done by a server administrator. This is only required when there are changes to the executable.
  • (3) Update the changelog in changelog.md and changelogData.lua.
  • (4) Update the game version in changelogData.lua.
  • (5) Create a new release with the changelog that points to a commit on the develop branch

Specifically steps (1), (2) and (5) are required to create a functioning deployment where even replays can retrieve the proper configuration to prevent desyncs.

Related repositories

Campaign or co-op content

Lua plugin

Assembly patches

fa's People

Contributors

garanas avatar aeoncleanse avatar chriskitching avatar crotalus avatar shalkya avatar sheeo avatar uveso avatar hussar-mtrela avatar mrrowey avatar jaggedappliance avatar tagada14 avatar cookienoob avatar kionx avatar philipjfryfaf avatar mrnukealizer avatar petricpwnz avatar hdt80bro avatar ppipp avatar strogoo avatar thekeyblue avatar 4z0t avatar relent0r avatar ll1l1 avatar blackyps avatar basilisk3 avatar brute51 avatar exotic-retard avatar xinnony avatar duk3luk3 avatar codingsquirrel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.