Scripting Language extensions via plugins

Ok, it seems there are no blog post for this, but I made a question & answer to extract helpful tips from this thread.

Hi guys, I’ve been banging my head against the wall trying to get LUA to work with my UE4 project, thankfully I found this thread and I’m now ready to re-build the UE4 Editor with the LUA Source (still downloading some stuff first).

My question is though, will this plugin give me access to the complete LUA library while I’m coding in VS2013? (I’m porting a lot of Game Logic from a C++ build from an earlier project from a homebrew engine that never got anywhere :stuck_out_tongue: )

Is there any information available about how to build the plugin with LUA support into my game project’s Plugins, instead of rebuilding the entire engine with the WITH_LUA define set to true?

It appears as if it is designed in such a way that I really don’t need any of the WITH_LUA stuff and can subclass the existing plugins that are included with the engine to create my own version then add the code that is in the WITH_LUA blocks to my subclassed versions of what is in the engine to make it do the right thing. Is my assumption correct? I really don’t want to have to rebuild the whole engine, and would rather deliver the Lua support via a submodule into each and every projects plugin folder.

Are my assumptions correct? Any pointers or tips to lead me down this path would be appreciated. Never building a UI plugin from scratch is also compounding this process, but that’s my plight, not the creators.

I made some small changes to get it to work with 4.10.0: http://puu.sh/kUA6O/7b1e6eed6b.diff(it should work on any previous engine version down to 4.8 or even 4.7 as well)

PS: WITH_PLUGIN_SUPPORT seems to be only set to 1 when building a game and not the engine itself, that’s why I used it there. Seems kind of hacky though, but it works so whatever…

This is still supported? Can’t believe this feature is so old and no-one make a good use of it!

Trying to compile with unreal 4.11 however I’m getting some errors and I’m not sure how to fix

Tried to integrate lua, using instructions and put the lua-5.3.0 folder in the lua folder for scriptPlugins, I compiled lua for 32 and 64 under release, regenerated unreal project files and got the errors above, any help would be appreciated!

Hi guys, Have you tried Unreal.js? This is really promising!

I really really wish we could get a full-fledged officially-supported scripting language for UE4. I don’t feel like learning any third-party solutions because you never know if the project will be abandoned and if it’s gonna be compatible with future versions.

There are tons of situations where a scripting language would be great to use instead of either blueprints or c++ (making editor tools, fast prototyping, or general gameplay programming for example)

you never know if the project will be abandoned and if it’s gonna be compatible with future versions.
[/QUOTE]

We will never abandon ! :smiley:

(Sk UE4 page, Sk UE4 thread) is not a side project - it is what our whole company is based around.

As of the 2016 Game Developers Conference there are about ten AAA games (we will announce them when we can) and around 200 smaller projects (in more than 50 countries) using or about to use .

gets tremendous support from Epic Games and we work with Epic engineers on an almost daily basis. Manuszewski (who created the example Lua plugin on this thread) has been particularly helpful and awesome!

Epic Games also gave so that should indicate their confidence in the project.

We will promptly update the UE4 Plugin for each version of UE4 (usually even the prereleases and the Master branch for Epic staff). For extra security, all source for the UE4 Plugin is available on GitHub so you can tweak it yourself if needed.

There are tons of situations where a scripting language would be great to use instead of either blueprints or c++ (making editor tools, fast prototyping, or general gameplay programming for example)
[/QUOTE]

Couldn’t agree more. :cool:

The standard version is free and not crippleware. I think you will find it to be awesome and we are continually improving it.

So… This happened a few days ago, and it would make the full integration of C# without any licensing issues possible:

http://www.mono-project.com/news/2016/03/31/mono-relicensed-mit/

Wouldn’t integrating a scripting language into UE4 just cause the same issues that made epic abandon UnrealScript in the first place?

The UE4 Plugin is now available through the Unreal Marketplace as one of the very first code plugins!

/images/blog/2016-04-26_Marketplace_plugins.png

We think a lot of people on this thread will love it and should check it out. It’s free!

Also see [our blog post]( about the launch on the Marketplace.

hi,I I met same problem with you.How did you solve it?

hi,I I met same problem with you.How did you solve it?

hi,i met the same error in ue4.12.how did you solve it?

Yeah, i get this error too
LNK2019 unresolved external symbol “void __cdecl LuaRegisterExportedClasses(struct lua_State *)” (?LuaRegisterExportedClasses@@YAXPEAUlua_State@@@Z) referenced in function “public: virtual bool __cdecl FLuaContext::Initialize(class FString const &,class UObject *)” (?Initialize@FLuaContext@@UEAA_NAEBVFString@@PEAVUObject@@@Z) UE4 C:\UnrealEngine\Engine\Intermediate\ProjectFiles\Module.ScriptPlugin.cpp.obj 1

I think support for it has been dropped, which is sad

bad news to see unrealua dead

https://answers.unrealengine.com/questions/85573/master-branch-error-c-c-pch-clash.html

according to this answer, the ScriptPlugin could even not compile now.

For the record, at least the following ScriptPlugin-based projects seem to be alive:

Started a project and wanted to use lua. Sad to see no support for it or see anyone already put the work in to export engine API to lua considering how powerful and fast lua is. I’ve used lua for the last 10 years and it is by far one of the best scripting languages out there for gaming, especially when when using luaJIT in it’s place.

No third-party script plugin is going to have the power and effortlessness lua offers. You can practically write an entire game before you get a grasp of the syntax of one of these.