Skip to content

README.md (draft)

Konstantin edited this page Jun 21, 2020 · 13 revisions

amx - MTA AMX compatibility layer

Introduction

amx is a software package that allows the execution of unmodified San Andreas: MultiPlayer 0.2.2 0.3.7 gamemodes, filterscripts and plugins on Multi Theft Auto: San Andreas 1.0 and higher servers. It is open source, and a prebuilt binary for Windows is available.

It must be on different WIKI-PAGES

License

amx is free and open source. You are allowed to use and modify it free of charge in any way you please.

You are allowed to redistribute (modified) versions of amx, provided that you:

  • do not charge for them,
  • keep the original credits and licence intact,
  • clearly list any modifications you made, and
  • do not present them as an official version.

Compatibility

Compatibility is quite high:

  • Almost all SA-MP scripting functions and callbacks are implemented.
  • Database functions (db_*) are implemented.
  • SA-MP server plugins work unmodified.
  • SA-MP style rcon commands are available from the server console and the ingame console.

See Limitations for a list of features that are currently missing.

Extra features

Apart from being compatible, amx also offers a number of extra features:

  • Scriptfiles of a gamemode can not only be placed in a central folder like in SA-MP, they will also be detected when placed in the gamemode's folder. This means that files of different gamemodes are kept apart and can no longer conflict: you can have several gamemodes that use the same file names, and be assured they won't overwrite each other's files.

  • New native scripting functions (add it later)

  • In addition to these new native functions, gamemodes run in amx can also call Lua scripts. Lua scripts can in turn call public Pawn functions.

    Using Lua not only gives you access to the wide range of MTA functions that offer a lot of functionality that SA-MP doesn't have, but also allows you to write code in a much more comfortable and efficient fashion than Pawn. For example, while Pawn is a subset of C and requires you to create a temporary buffer and call one or more functions to concatenate strings, you can simply do str1 = str2 .. str3 in Lua.

  • You can load plugins dynamically, while the server is running. Use the loadplugin console command for this.

Installation

INSTALLING AND PORTING FROM SAMP NEED TO WRITE FROM START BTW PORTING DON'T WORK. WE CAN DELETE IT

Credits

amx was developed by arc_. Special thanks go out to:

  • Everyone who tested or participated in group tests during development, especially MeKorea who quite literally tried out every mode and filterscript he could find. His testing brought a large number of minor and not so minor flaws to light which could then be fixed.

  • The MTA team, for providing such a tremendous platform to develop on. Thanks to MTA I got to know the amazingly fast yet powerful scripting language Lua, and got a good bunch of C++ practice as well.

  • PUT IT HERE

Clone this wiki locally