Modules: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (→How to write modules?: removing useless parts that does not exist and rename the reference) |
||
(31 intermediate revisions by 16 users not shown) | |||
Line 1: | Line 1: | ||
Modules are extensions for | Modules are extensions for Multi Theft Auto's Lua core, allowing the integration and use of custom Lua functions that have been written in C++, and compiled as a DLL or SO file. Modules are commonly used to create functions for such purposes that Multi Theft Auto lacks, such as sockets. All modules listed here are not distributed with Multi Theft Auto, and must be manually installed. | ||
== | ==Modules list== | ||
You can | <!-- You can view a list of all the documented modules in this wiki [[:Category:Modules|here]]. --> | ||
You can view a list of all the documented modules here: | |||
{{ModulesList}} | |||
<!-- | |||
==Modules SDK== | ==Modules SDK== | ||
To be able to create your own | To be able to create your own modules, you must use the Modules SDK. You can download it from one of the links below - choose a link in accordance with your server's operating system. | ||
===SDK | * Linux | ||
** [http://files.mtasa.com/apps/1.0/dm/ml_devkit.tar.gz Official] | |||
*** (Delete the .d files, and add #include <cstring> to Common.h) | |||
**** (On 64bit add -m32 to CPPFLAGS and LDFLAGS lines in Makefile) | |||
* Microsoft Windows | |||
** [http://www.mediafire.com/?b8b3asgegn0xkm4 Mirror (Mediafire)] | |||
** [https://mega.co.nz/#!nBNGUCgQ!3AHEJt684Heu9bN5de8xwAQ3h-qq5-V6fjUeU7rj5hI Mirror (MEGA)] | |||
===SDK Functions=== | |||
*Currently in there: | |||
**Base: | |||
***HelloWorld | |||
**MySQL | |||
***MySQLCreate | |||
***MySQLOpen | |||
***MySQLDestroy | |||
***MySQLQuery | |||
***MySQLSafeString | |||
===Using Lua inside of Linux Modules=== | |||
If you want to make use of Lua functions as exported by the MTA Server you have to link against the official deathmatch.so file. Then the export resolution during dlopen of your module will respect the symbol table of deathmatch.so which contains all of the Lua exports. '''Do NOT link against a static version of a freshly-compiled Lua library because that will create code conflicts and potentially crashes in the long run.''' | |||
--> | |||
==How to write modules?== | |||
* [[Modules_Introduction|Modules Introduction]] | |||
[[Category:Scripting Concepts]] | [[Category:Scripting Concepts]] | ||
[[Category:Modules]] | [[Category:Modules]] | ||
[[hu:Modules]] | |||
[[pl:Modules]] | |||
[[pt-br:Módulos]] | |||
[[ru:Modules]] | |||
[[ro:Module]] |
Latest revision as of 19:17, 28 September 2024
Modules are extensions for Multi Theft Auto's Lua core, allowing the integration and use of custom Lua functions that have been written in C++, and compiled as a DLL or SO file. Modules are commonly used to create functions for such purposes that Multi Theft Auto lacks, such as sockets. All modules listed here are not distributed with Multi Theft Auto, and must be manually installed.
Modules list
You can view a list of all the documented modules here:
- cURL
- FileSystem
- hashing [OUTDATED]
- MTA-MySQL [DEPRECATED]
- MySQL [OUTDATED]
- Pathfinding [OUTDATED]
- SHA [OUTDATED]
- Sockets
- Texturizer
- CMR Protected