The next gen Maniaplanet server controller using symfony2 components


Build Status Scrutinizer Code Quality Code Coverage

This is the new eXpansion 2 controllers framework, that uses symfony components.

User documentation & documentation to write you own Bundles(plugins) can be foind on our website : http://mp-expansion.com/

You will find documentation for core developers on this page.

Install local development environment.

You wish to to help us to make the must awsome server controller for Maniapanet ever?

You can do so with ease.


  1. Have docker installed on your development computer
  2. Have basic knowledge of Symfony service containers & autowiring

Getting started

  1. Clone this repository
  2. Copy the docker-compose.yml.dist file to docker-compose.yml
  3. Start the dockers for the first time :
docker-compose up
  1. Run a composer install
docker-compose exec php composer install
  1. Update database
docker-compose exec php bin/console doctrine:schema:update
  1. Start eXpansion
docker-compose exec php bin/console eXpansion:run
  1. eXpansion will crash saying game mode is not scripts or it can't connect (go figure it out, Nadeo tells us not to use legacy but default match setting files still have legacy)
  2. Goto docker/data/UserData/Maps/MatchSettings
  3. Rename the eXpanion-mode-fail......txt file to `TMCanyonA.txt
  4. Edit content and change mode to script mode and proper script filename.
  5. Copy the docker/default.config.xml file into docker/data/UserData/Config
  6. Restart eXpansion
docker-compose exec php bin/console eXpansion:run


  • Remove unused symfony components (used full stack to get something fast)
  • Separate into 3 repositories
    • Application for installation
    • Core for the core
    • base plugins