Modifying / Creating a Local Version of a Built-in Plugin. (Wave Function Collapse)

Hi there,

ISSUE

Currently struggling to modify the code within a built-in engine plugin to meet the needs of my project. The plugin in questions is “Wave Function Collapse” within the experimental folder:

WHAT I HAVE TRIED

I originally followed the UE4 guide on overriding a built-in plugin. Copying the engine version of my plugin folder to my local project files at the base of my project and then changing the file names respectively:

Old UE4 Method for Modifying Built-in Plugins

For my example I simply modified the files with the updated plugin name “WaveFunctionCollapseX”. There are a few notable differences between the example plugin shown in the UE4 tutorial and “Wave Function Collapse”. That being the lack of a plugin specific header file and no PrivateIncludePaths method within the plugin’s build.cs file.

A Visual representation of this is found through this Youtube video (Doesn’t include the file changes):

Manually Updating Plugins

I follow the tutorial as closely as possible copying the files over and modifying them, but when it comes to compiling Rider I get the following error:

Expecting to find a type to be declared in a module rules named 'WaveFunctionCollapseX' in 'TestProjectModuleRules, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.  This type must derive from the 'ModuleRules' type defined by UnrealBuildTool.

I would note that I have the original Wave Function Collapse plugin enabled and that works on my current unreal version (5.4). I’m not sure why my local one won’t, can anyone help me?

I’ve looked at other posts with issues like this and they all suggest a similar solution of creating a local version of the plugin folder:

Modifying Plugin Code Manually

Copying Plugin Folders Over Locally (Unfortunately the OP’s read link has changed)

Hi there,

For those reading this Manually Renaming and “Overriding” your plugin didn’t work for me. Instead I copied over an up to date version of my plugin from Epic’s engine plugin folder to my project’s local plugin folder. Making sure to delete the intermediates and Binary folders within your newly created local version. I then just built the solution as normal without any name changes. After this I had a local version of my plugin which I could edit freely.

Below is an example tutorial video that goes over how to create local versions of your plugins. Albeit updating the plugin version as well but this method worked for me regardless:

Example Through Manually Updating Plugin Files

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.