← All guides

Roleplay · Server guide

How to host a Multi Theft Auto server: mtaserver.conf, resources and setup

How to run a Multi Theft Auto: San Andreas server: mtaserver.conf, ACL admin rights, Lua resources, databases, performance, and setup on GGHOST Cloud.

GGHOST Cloud team26 October 20266 min read

Multi Theft Auto
  • Starts at On request
  • Recommended RAM Sized for you
  • Ready in A few days
  • Control panel Pterodactyl

Multi Theft Auto: San Andreas (MTA) is one of the longest-running multiplayer platforms for GTA San Andreas. It gives server owners a full Lua scripting engine, custom models and a resource system that powers everything from race and deathmatch servers to deep roleplay communities. Running one well comes down to understanding resources, getting admin rights right, and keeping what players download under control. This guide covers all three, then explains how we set a server up for you on GGHOST Cloud.

How an MTA server works

An MTA server runs resources. A resource is a folder (or a .zip) containing a meta.xml file plus Lua scripts, maps, models and other files. The meta.xml declares which scripts run on the server, which run on the player’s client, and which files the client needs to download.

Gamemodes, maps, admin panels, scoreboards and anything else on your server are all resources. MTA ships with a set of default ones, including an admin panel, a scoreboard and gamemodes such as race and freeroam, so you can have something running before you write a line of code.

The main settings live in mods/deathmatch/mtaserver.conf, an XML file where each setting is explained inline. The ones you will change first:

  • <servername>: the name shown in the server browser.
  • <maxplayers>: how many players can join.
  • <password>: set it to keep a private or testing server locked.
  • <resource> lines: which resources start automatically when the server boots, using startup="1".

Admin rights and the ACL

MTA controls permissions with an access control list in acl.xml. Groups such as Admin, SuperModerator and Moderator are linked to ACLs that grant or deny specific rights, and both player accounts and resources can be members of a group.

To make yourself an admin:

  1. Type addaccount <name> <password> in the server console.
  2. Add user.<name> as an object in the Admin group in acl.xml.
  3. Restart, then log in in-game with /login.

Resources need rights too. Some admin and anti-cheat resources ask for elevated access and will print a warning in the console until you grant it. Only give those rights to resources you trust, because a resource in the Admin group can do anything an admin can.

MTA also has a built-in web server for resources that serve web pages, including web-based admin tools. It uses the same accounts and ACL.

How much RAM and CPU does it need?

MTA servers are relatively light. What drives memory and CPU is your resource stack: how many scripts run, how many elements (vehicles, objects, peds, markers) exist at once, how often timers and events fire, and how much your gamemode queries its database. A race server with a few dozen players needs much less than a roleplay server with hundreds of custom vehicles, interiors and jobs.

Because of that, we do not publish a fixed table for MTA. Tell us your gamemode, resources and expected player count, and we size it with you.

On GGHOST Cloud you pay for memory, not player slots. <maxplayers> is a value you set in mtaserver.conf, not something we bill for.

Databases

Most persistent servers store accounts, vehicles, houses and inventories in a database. MTA’s dbConnect function supports two types:

  • SQLite, stored as a file inside the server folder. Simple, quick and fine for small and medium servers.
  • MySQL or MariaDB, for larger servers or when a website or forum also reads the data. On our Pterodactyl panel you have database access next to the server.

Use the asynchronous query functions (dbQuery with a callback) for anything that might be slow, so a heavy query does not stall the server for everyone.

Performance tips for MTA

  • Profile with the performance browser. The built-in ipb resource and the performancebrowser show which resources use the most CPU time. Fix the worst offender before anything else.
  • Destroy what you create. Elements, timers and event handlers that are never cleaned up build up over hours and slowly drag the server down.
  • Limit client downloads. Every model, texture and sound in a running resource is sent to each player on join. Compress textures, remove unused files, and only mark files for download when the client actually needs them.
  • Avoid tight timers. Many timers firing every few milliseconds are a common cause of lag in older gamemodes. Use events where you can.
  • Set a sensible frame limit. <fpslimit> in mtaserver.conf caps client frame rate on the server; leave it at a value that suits your gamemode rather than unlimited.
  • Restart on a schedule. A daily restart with a warning to players keeps long-running servers tidy. Set it as a scheduled task in our panel.

Adding resources safely

Upload resources into mods/deathmatch/resources through the panel’s file manager or over SFTP. Then type refresh in the console so the server sees them, and start <name> to run one. If it works, add it to mtaserver.conf so it starts on boot.

  • Get resources from places you trust. The MTA community resource site is the usual source. Be careful with scripts passed around privately; a malicious resource with admin rights can damage your server.
  • Check dependencies. Many resources need another one running first, and say so in their meta.xml or readme.
  • Read the console after starting. Script errors and missing ACL rights are printed straight away.
  • Back up first. Take a backup from the panel before replacing your gamemode or a core resource.

Backups and migrations

On GGHOST Cloud, backups run on a schedule you set and restore from the panel without opening a ticket. Back up the whole mods/deathmatch folder, which holds your resources, acl.xml, accounts and SQLite databases, and export MySQL as well if you use it.

Moving from another host? Bring that mods/deathmatch folder and any database dump. Because everything an MTA server needs lives there, most migrations are a straightforward copy.

Getting your MTA server on GGHOST Cloud

Multi Theft Auto is set up on request at the moment, rather than ordered through checkout.

  1. Ask us on Discord (or open a ticket) with your gamemode, resources and expected player count.
  2. We size it and quote a monthly price based on what you are running.
  3. We set it up on our Pterodactyl panel, usually within a few days. Singapore and Europe (France–Germany border) are live today; the United States (East, Central and West), the United Kingdom, India, Japan and Australia are available on demand.
  4. Connect. Your server address and port are shown in the panel; players join from the MTA server browser or by entering the address directly.

You get the full panel: live console, file manager, SFTP, scheduled tasks, sub-users for your staff and database access. Every node is behind DDoS protection from our network providers, on every plan, and you can change the server build or startup flags from the panel and restart. No setup fee, no contract; billing is at app.gghost.cloud, and support comes from the people who run the servers, on Discord and at hello@gghost.cloud.

The short version

Configure the server in mtaserver.conf, set up admin rights in acl.xml, and build your server from resources you trust. Keep client downloads small, clean up elements and timers, use asynchronous database queries, and back up mods/deathmatch before every big change.

How it works at GGHOST Cloud

From request to running server.

  1. 01 Ask on Discord Tell us the Multi Theft Auto build, mods and player count you need.
  2. 02 We size it We recommend the RAM and region, and quote a monthly price.
  3. 03 We set it up Installed on our Pterodactyl panel, usually within a few days.
  4. 04 Invite your players Console, file manager, SFTP and backups, all in one panel.

Included on every server

The platform behind your Multi Theft Auto server.

Full Pterodactyl panel

Console, file manager, SFTP, scheduled tasks, sub-users and database access. Not a cut-down skin over it.

Backups on a schedule

Set the cadence you want and restore to a point in time from the panel, without opening a ticket.

DDoS protection included

Every node sits behind DDoS protection from our network providers, on every plan — not an upsell on the checkout page.

Switch version or build anytime

Change the server build, game version or startup flags from the panel and restart. No reinstall, no ticket.

Move region once per cycle

If your players move, the server can follow. We handle the world and config transfer.

No player-slot billing

You pay for memory. Slots are a config value you set, not a line item we charge for.

Multi Theft Auto server FAQ

Questions players ask us.

How do I make myself an admin on my MTA server?

Create an account with addaccount in the server console, then add it to the Admin group in acl.xml as a user object, for example user.yourname. Restart or reload the ACL and log in in-game with /login.

Do players need to download my resources before they can play?

Yes. When a player joins, the server sends them the client-side files of every running resource. Keeping models, textures and sounds lean makes joining much faster, especially for players far from the server.

Want a Multi Theft Auto server?

Tell us what you need on Discord and we will size it and set it up on our Pterodactyl panel.