Recent Profile Visitors

You can already do this with Lua coroutines.
function pausableFunction(co)
if not co then
co = coroutine.create(pausableFunction)
coroutine.resume(co, co)
return
end
local function resume()
coroutine.resume(co)
end
local function wait(time)
setTimer(resume, time, 1)
end
outputChatBox("Countdown!")
outputChatBox("3...")
wait(1000)
outputChatBox("2...")
wait(1000)
outputChatBox("1...")
wait(1000)
outputChatBox("Go!")
end

The MTA codebase is entirely written in C++ with some parts written in inline assembly. The modelinfo array is referenced all across the game_sa and multiplayer_sa code, but Lua does not have direct access to any memory locations. All you can do from Lua is to call C++ functions, which then do something.

It'll generally be slower, due to the additional overhead of calling a php script, which then needs to do the same work as MTA would do using dbQuery. Also allowing the client to save data via a web request is a terrible idea, because you're opening your server to allowing any client to store any information in the database (as I could just go ahead and use my Browser to store data, rather than the MTA client).

Metatables cannot be shared across resources right now. If you pass a table with a metatable across a resource boundary, the metatable is removed. There are basically two options to solve this.
A) Move the database class into your resource
B) Construct a wrapper class around exports which forwards all metatable calls to the database resource.

You cannot load 32-bit modules with a 64-bit server. Multiarch only allows you to run 32-bit applications (e.g. the 32-bit MTA Server). Modules (Shared Objects (.so Files) and .dlls) can only be loaded into a server with matching bitness.
To fix this you need to get the 64-bit ml_sockets from this page and put it into your server's modules folder.

Moving it to Client since it's clients crashing.
The first crash info is related to a failure loading a sound for a specific ped (CAEPedSpeechAudioEntity::LoadAndPlaySpeech). All your MTA Diag logs indicate that the players are using a pirated version of gta, where some sounds were removed to reduce file size, so I suspect that the game attempts to load a specific ped related sound which doesn't exist in this ripped version.

The files you found on Github are mostly in the Vendor subfolder of the MTA source. The Vendor subfolder is used for third party components (Libraries/Code not written by us) like Lua and in this case especially Google Breakpad (used for Crashdumps on Linux). These libraries sometimes use other programming languages for build environments or support for other languages.
There are no plans to add another scripting language.

There have been some events of people using serial changers as well as players with the same serial. Therefore I'd suggest to avoid using the serial as an account login. My personal solution for auto-logins would be similar to the following:
Upon registration ask the user to provide username and password. Store the name and the hashed password in some database. Also create a random hash and store it in the database. Also send this hash to the client and store it there together with the username.
On subsequent logins the user has two options:
a) Login via Username and Password
b) Login via Username and random hash

Even with a non-genuine Windows 7/8/8.1 install you get the update notification. However you'll be upgraded to a non-geniune Windows 10.
But if you really need a new Windows license the Insider builds were mostly stable for me during the preview phase. However keep in mind that new Windows 10 bugs may interfer with MTA and we're probably not fixing them unless the issue also appears in the stable release.