Unreal Build Tool Failed, ModuleRules

Hi, I’ve been trying to set up the Steamworks SDK for a bit now, and am struggling setting it up to work with packaging. I’ve been using the UE4 Steam Connection program to set UE4 up for use with the SDK but after doing so I’m still getting an error, despite having looked into it, following all instructions, double checking filenames etc. Note that I’m using the program as I can’t find any thorough enough. documentation on manually setting up the Steamworks SDK.

The key error within my log appears to be this:

error CS1729:
‘UnrealBuildTool.ModuleRules’ does not
contain a constructor that takes 0
arguments UATHelper: Packaging
(Windows (64-bit)): ERROR: Unable to
compile source files.

Here’s the pointed-to log file:

what are the content of your Build.cs and Target.cs?

Thanks, this fixed this error. Upon rebuilding I got an error about not including projectname.h at the top of all my project C++ files which I fixed, which then ran me into this error I don’t understand in projectcharacter.cpp:

2> [13/21] UE4Editor-Boing4.dll2> Creating library F:\UnrealProjects\Boin - Pastebin.com (some of the parts are too long to post in a comment).

Here’s my character.h which has the error now: // Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.#include "Boing4 - Pastebin.com

you need to add "HeadMountedDisplay" to your publicDependencyModuleNames in your Build.cs

Here’s my build.cs

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;

public class Boing4 : ModuleRules
{
    public Boing4(TargetInfo Target)
    {
        
        MinFilesUsingPrecompiledHeaderOverride = 1;
        bFasterWithoutUnity = true;
        
        PublicDependencyModuleNames.AddRange(
            new string[] { 
                "Core",
                "CoreUObject",
                "Engine",
                "InputCore",
                "RHI",
                "UMG", "Slate", "SlateCore"
            }
        );
        
        PublicDependencyModuleNames.AddRange(new string[] { 
            "OnlineSubsystem",
            "OnlineSubsystemUtils"
        });
        
        DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam");
    }
}

And here’s my target.cs:

// Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.

using UnrealBuildTool;
using System.Collections.Generic;

public class Boing4Target : TargetRules
{
	public Boing4Target(TargetInfo Target) : base(Target)
	{
        Type = TargetType.Game;
        bUsesSteam = true;
		ExtraModuleNames.Add("Boing4");
	}
}

Thanks :slight_smile:

In your Build.cs it should be like this `public Boing4(ReadOnlyTargetRules Target) : base(Target)``