AGS editor and engine source code
ivan-mogilko Merge branch 'ags3'
# Conflicts:
#	Common/core/def_version.h
#	Editor/AGS.Editor/app.manifest
#	Editor/AGS.Types/Properties/AssemblyInfo.cs
#	version.json
Latest commit 624e5c9 Sep 21, 2018
Failed to load latest commit information.
Android Updated program version to pre-4.0.0 (3.99.99) Sep 14, 2018
Common Updated program version to pre-4.0.0 (3.99.99) Sep 14, 2018
Compiler Merge remote-tracking branch 'upstream/master' into ags4 Oct 5, 2017
Editor Merge branch 'ags3' Sep 21, 2018
Engine Engine: update managed pool serialization index to reflect AGS4 changes Sep 14, 2018
Manual Updated program version to pre-4.0.0 (3.99.99) Sep 14, 2018
OSX Fix environment checks Sep 17, 2018
PSP Fixed header formating in multiple README files Apr 3, 2017
Plugins SnowRain plugin: use script API instead of internal engine data Jun 22, 2018
Script Script: added Editor's manifest to push_version targets May 21, 2017
Solutions Merge branch 'ags3' Aug 30, 2018
Windows Windows: updated Readme to reflect upgrade to .NET 4.5 Aug 25, 2018
debian Update compat level for Debian package May 17, 2018
iOS Fixed header formating in multiple README files Apr 3, 2017
libsrc osx: add +x for new scripts Jul 3, 2016
.gitignore Added NuGet to gitignore Feb 15, 2018
.gitmodules Revert "Added game templates as submodule" Aug 20, 2016
Changes.txt Updated build version ( Sep 19, 2018
Copyright.txt Updated Copyright.txt Apr 8, 2018
License.txt Move License.txt to the top level and create Copyright.txt listing th… Oct 6, 2012 Engine: separate game scale styles for fullscreen and windowed modes Dec 8, 2017 Merge branch 'ags3' Jul 31, 2018
version.json Updated program version to pre-4.0.0 (3.99.99) Sep 14, 2018

Adventure Game Studio

Adventure Game Studio (AGS) - is the IDE and the engine meant for creating and running videogames of adventure (aka "quest") genre. It has potential, although limited, support for other genres as well.

Originally created by Chris Jones back in 1999, AGS was opensourced in 2011 and since continued to be developed by contributors.

An official homepage of AGS is:

Both Editor and Engine are licensed under the Artistic License 2.0; for more details see License.txt.

Engine instructions

To get started building the AGS engine, see the platform specific instructions or forum threads:

When running the engine on you may configure it by modifying acsetup.cfg or using several command line arguments. On Windows you may also invoke a setup dialog by running executable with "--setup" argument, or executing winsetup.exe, if it is present. For the list of available config options and command line arguments, please refer to


We welcome any contributor who wishes to help the project.

The usual workflow is this: you fork our repository (unless you already did that), create a feauture/fix branch, commit your changes to that branch, and then create a pull request. We will review your commits, and sometimes may ask to change something before merging into ours.

For bug fixing and general code improvements that may be enough, however, for significant changes, completely new features or changes in program design, it is advised to first open an issue in the tracker and discuss it with development team, to make sure it does not break anything, nor contradict to existing program behavior or concepts.

The master branch should be kept in a working state and compilable on all targeted platforms. The "release-X.X.X" branch is created to prepare the code for respected release, and continue making patches to that release. If you've found a critical issue in the latest release, it should be fixed in the release-X.X.X branch when possible (latter will be then merged to master). Because of the low number of active developers we only maintain one latest release branch along with master. If bugs were found in the much older version, we advise to update to the latest one first.

We've made a big split, separating fully backwards compatible Editor and Engine into ags3 branch. That branch acts as a "master" for AGS 3.x.x generation. We do not normally accept any feature additions to that branch anymore, except for bug fixes, compatibility updates and perfomance improvements. For more information about this split and reasons it was made for please refer to #448.

We have a coding convention, please check it before writing the code:

AGS game compatibility:

This repository now holds two generations of AGS program: AGS 3 and AGS 4.

Master branch contains AGS 4.x, which is currently undergoing refactoring/rewrite and may not be very stable. It is intended to support games made with AGS 3.4.1 - 3.4.2, but only if these do not use any legacy features. The 4.x engine should be reading savegames made with the 3.4.2 engine and above.

The 3rd generation of AGS may be found in "ags3" branch. It's specifics are:

  • Supports (imports into editor and runs by the engine) all versions of AGS starting from 2.50 and until latest 3.x release, but there may be unknown compatibility issues with the very old games.
  • If you try to run an unsupported game, you will receive an error message, reporting original version of AGS it was made in, and data format index, which may be used for reference.
  • Savegames are compatible between the different platforms if they are created with the same engine version. Engine should normally read savegames made by version 3.2.0 of runtime and above, but that has not been tested for a while.
  • Games that depend on plugins for which there is no platform-independent replacement will not load.

Changes from Chris Jones' version of AGS

This version of AGS contains changes from the version published by Chris Jones. The run-time engine was ported to Android, iOS, Linux, Mac OS X and PSP and a refactoring effort is under way. A detailed documentation of the changes is provided in the form of the git log of this git repository (