Shipping Console
Shipping Console
The plugin streamlines the process of enabling the game console by allowing you to specify a command-line parameter like -Console
.
With this, you can easily activate the console even when building in Shipping configurations.
Additionally, you have the option to disable the console in Development builds if needed.
Getting Started
Acquire
Install
- Launch Epic Game Launcher
- Open Unreal Engine > Marketplace tab
- Find Shipping Console plugin
- Click Install to Engine button
- Open you project, go Edit > Plugins
- Find and activate Shipping Console plugin
- Restart Unreal Engine
- Launch Epic Game Launcher
- Open Unreal Engine > Marketplace tab
- Find Shipping Console plugin
- Click Install to Engine button
- Copy
ShippingConsole
plugin from[Unreal Engine]\Engine\Plugins\Marketplace\
to[Your Project]\Plugins\
Configure
Configure the ShippingConsole plugin in Project Settings
ℹ️
No Blueprint or C++ code required
Validate
Build a game and run it with/without the -Console
command-line argument.
MyGame.exe -Console
Configuration
To configure the Shipping Console plugin, follow these steps:
- Open the project settings by going to Edit > Project Settings.
- Scroll down to the Plugins category and select Shipping Console.
- Console Argument - The command-line parameter (e.g.,
-Console
) that enables the console in Shipping builds. - Remove Console Non Shipping - When enabled, this option removes the console from Debug and Development builds unless the specified command-line argument is provided.
ℹ️
Console Argument is case-insensitive
Source Code
If you want to extend ShippingConsole functionality, you always can derive your Subsystem
from UShippingConsoleSubsystem
and override methods
MyShippingConsoleSubsystem.h
#pragma once
#include "CoreMinimal.h"
#include "ShippingConsoleSubsystem.h"
#include "MyShippingConsoleSubsystem.generated.h"
UCLASS()
class MYGAME_API UMyShippingConsoleSubsystem : public UShippingConsoleSubsystem
{
GENERATED_BODY()
public:
bool ShouldCreateSubsystem(UObject* Outer) const override
{
return !WITH_EDITOR && !UE_SERVER;
}
// Override methods for your needs
bool ShouldAddConsole(const UGameInstance* GameInstance) const override;
bool ShouldRemoveConsole(const UGameInstance* GameInstance) const override;
};
ℹ️
Don’t forget to update your
.Build.cs
MyGame.Build.cs
using UnrealBuildTool;
public class MyGame : ModuleRules
{
public MyGame(ReadOnlyTargetRules Target) : base(Target)
{
// ... other staff ...
PublicDependencyModuleNames.Add("ShippingConsole");
}
}