Compiling MTASA

From Multi Theft Auto: Wiki
Revision as of 21:22, 1 August 2016 by Necktrox (talk | contribs) (Fix URL to VS Community 2013)
Jump to navigation Jump to search

In order to successfully build Multi Theft Auto from source, it is necessary to perform a number of steps, which we will explain below. You should be using Windows 7 or above to build.

Prerequisites

Before you can build Multi Theft Auto, make sure you have the following software and SDKs installed:

If you haven't already done so, install a client such as SourceTree or GitHub for Windows, which can be used to download and manage the code.

Getting the latest source code

To get the latest code, you will have to download the latest copy of our Git repository - you can get it here (zip|tar.gz)

Before building the software

To ensure the target directories have the correct permissions it is vital to install the latest unstable nightly Windows full installer into this exact directory:

   C:\Program Files\MTA San Andreas 1.6\

If you have 64 bit windows, be sure to remove (x86) from the path.

Building the software

In order to build the source, you will need Microsoft Visual Studio. Open the project file in Shared/Core 2013.sln and build using one of the project configurations Debug or Release. Note that everything will run significantly slower in Debug mode.

Target directory and permissions

By default, the current version compiles the binaries into C:\Program Files\MTA San Andreas 1.6\. To ensure the correct permissions, registry entries and support files are present, you should install the latest unstable nightly Windows full installer into that directory. Also make sure to add write permissions for your user to that directory.

Getting the latest network module

Since the netc.dll/net.dll network modules for the client are covered by a different license, you will have to use the binary files that get installed with the latest nightly. If you want to run a debug version of MTA, MTA expects a debug version of the net dll. As we don't provide this, you can append '_d' to the filename of a release dll.

Furthermore, it is advisable to create an empty "timeout.longtime" file in your MTA server/ directory. This will extend the time before players are kicked from your server for unresponsiveness to 120 seconds. This is useful when in Debug mode on the client and the process is halted.

Running the software

You are almost ready to run your build of the Multi Theft Auto software.

Running the game client

Double check you have installed the latest unstable nightly Windows full installer.

Running the dedicated server

If you want to run the Multi Theft Auto dedicated server, you will have to install the required resources. These are required because they implement the most basic functionality (e.g. spawning players) in order to play.

Our official resources repository is hosted on GitHub: [1]. It's recommended that you check out the latest resources from there or download a zipped revision from here. Make sure that you are not using any of our resources from any previous versions of Multi Theft Auto, as this will cause issues.

If you have any problems with missing DLL files (e.g. libcurl.dll), then you didn't install the Windows full installer properly.

Getting involved

Please see our Coding guidelines for information on coding practice.

Additional information

If you need more information, try our bug tracker, IRC channel.