- An open-sourced tool-chain for indie game developers to create a CI pipeline for their projects
- Building game assets takes time and resources. When building them, development cannot occur on the same project directory. It is costly to run local build farms for multiple platforms, and environments
- Server and client deployment is very manual
- Project collaboration is difficult
- There is no standard client updating method
- Building clients and servers for various platforms in the cloud
- Environment variable injection at build time
- Server and Client deployment
- run server map/port (locally and production)
- Large binary file collaboration. How can many developers work on the same blueprints and merge them into the main branch?
- Client updating
- Unreal Engine does not support environment variables. Instead, it uses config files (
project/Config/*.ini
).
Create:
projectPath/Config/development.json
projectPath/Config/production.json
Example
{
"GAME_URL": "127.0.0.1",
"API_URL": "127.0.0.1",
"CLIENT_VERSION": "0.7.0"
}
GameCI setup
- populate the fields for a given platform
GameCI inject
- injects a config into
DefaultGame.ini
GameCI deploy
- Build local client and server
- deploys to s3
- Pulls and setups server to a server