Scripting Language extensions via plugins

Looking into it, in PluginManager.cpp lines 228 -> 237.



#if (WITH_ENGINE && !IS_PROGRAM) || WITH_PLUGIN_SUPPORT
		// Find "built-in" plugins.  That is, plugins situated right within the Engine directory.
		Local::FindPluginsIn( FPaths::EnginePluginsDir(), EPluginLoadedFrom::Engine, Plugins );

		// Find plugins in the game project directory (<MyGameProject>/Plugins)
		if( FApp::HasGameName() )
		{
			Local::FindPluginsIn( FPaths::GamePluginsDir(), EPluginLoadedFrom::GameProject, Plugins );
		}
#endif		// (WITH_ENGINE && !IS_PROGRAM) || WITH_PLUGIN_SUPPORT


Since the UHT is building the include scripts during the execution of UnrealHeaderTool (MyGameProject = UnrealBuildTool) instead of the execution of the build of the Game, it seems it cannot find game plugin directory during build.

There seems to be two options at this point:

  1. Build something like the UHT for their game project and inject it into the tool chain
  2. Move any plugins into the engine plugin folder instead of keeping it in the game folder.

Both of these options aren’t ideal, but the second one at least follows the plugin pattern they are using.

Unless I’m totally off and someone at Epic can correct me. That would certainly make my day :smiley: