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, usingstartup="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:
- Type
addaccount <name> <password>in the server console. - Add
user.<name>as an object in the Admin group inacl.xml. - 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 inmtaserver.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
ipbresource and theperformancebrowsershow 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>inmtaserver.confcaps 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.xmlor 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.
- Ask us on Discord (or open a ticket) with your gamemode, resources and expected player count.
- We size it and quote a monthly price based on what you are running.
- 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.
- 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.