Having access to engine function, thinking about camera angles/pos hooking for making VR mods in C++/Lua would be nice, it would also allow cinematic mods (anything related to custom camera for specs/movies cameras) would be useful.
LuaJIT is going to be required if we want to make mods with LuaFFI (so with external binary modules), LuaJIT also give really nice performances compared to Lua 5.1/5.2/5.3.*
About mods, if we really want to mod it we're going to need an external x64 malloc-ator (i know it's not a word) using VirtualAllocEx->WriteProcessMemory (As far as i remember, BF3 is not a x64 build, right ?)
That's why a native binary module support is maybe going to be required (Or just a D3D9 proxy if we just want an external malloc-ator), because even LuaFFI has limits.
Something with custom dll entry and exit
A way to start a Lua thread (so using a new lua state) would also be useful, or at least make the Lua engine using it's own thread, maybe BF3's Lua integration already has it's own thread, idk.
A way to acces to some basic draw function (images, shapes (maybe poly draw)) would be nice, with some gfx function like stencils. Or just Scaleform .gfx support